@charset "UTF-8";

/*! normalize.css v3.0.2 | MIT License | git.io/normalize */
img,legend{border:0}legend,td,th{padding:0}html{-ms-text-size-adjust:100%;-webkit-text-size-adjust:100%;overflow-y:scroll}body{margin:0}*,:after,:before{-webkit-box-sizing:border-box;-moz-box-sizing:border-box;-o-box-sizing:border-box;-ms-box-sizing:border-box;box-sizing:border-box}article,aside,details,figcaption,figure,footer,header,hgroup,main,menu,nav,section,summary{display:block}audio,canvas,progress,video{display:inline-block;vertical-align:baseline}audio:not([controls]){display:none;height:0}a{background-color:transparent}a:focus{outline:dotted thin}a:active,a:hover{outline:0}b,optgroup,strong{font-weight:700}h1,h2,h3,h4,h5,h6{font-size:1em;margin:0}small{font-size:80%}sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline}sup{top:-.5em}sub{bottom:-.25em}br{letter-spacing:0}img{-ms-interpolation-mode:bicubic;vertical-align:bottom}svg:not(:root){overflow:hidden}figure{margin:1em 40px}hr{-moz-box-sizing:content-box;box-sizing:content-box;height:0}pre,textarea{overflow:auto}code,kbd,pre,samp{font-family:monospace,monospace;font-size:1em}button,input,optgroup,select,textarea{color:inherit;font:inherit;margin:0}button{overflow:visible}button,select{text-transform:none}button,html input[type=button],input[type=reset],input[type=submit]{-webkit-appearance:button;cursor:pointer}button[disabled],html input[disabled]{cursor:default}button::-moz-focus-inner,input::-moz-focus-inner{border:0;padding:0}input{line-height:normal}input[type=checkbox],input[type=radio]{box-sizing:border-box;padding:0}input[type=number]::-webkit-inner-spin-button,input[type=number]::-webkit-outer-spin-button{height:auto}input[type=search]{-webkit-appearance:textfield;-moz-box-sizing:content-box;-webkit-box-sizing:content-box;box-sizing:content-box}input[type=search]::-webkit-search-cancel-button,input[type=search]::-webkit-search-decoration{-webkit-appearance:none}fieldset{border:1px solid silver;margin:0 2px;padding:.35em .625em .75em}table{border-collapse:collapse;border-spacing:0}
/*! normalize.css end */

/*━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
	検証用
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━*/

.debug {
	background: rgba(255, 0, 0, 0.1);
	opacity: .6;
}


/*━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
	汎用スタイル
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━*/

/* 色・サイズ
─────────────────────────────────────────────────────────*/

.green {
	color: #4faf00;
}
.blue {
	color: #0099d6;
}
.red {
	color: #f00;
}

small,
.small {
	font-size: .88em;
}
p.small {
	margin-bottom: 3em;
}
.en p.small {
	margin-bottom: 2em;
}
.large {
	font-size: 1.2em;
}
p.caption {
	margin: 1.6rem 0 0;
	font-size: .88em;
	text-align: center;
	letter-spacing: normal;
}
.bold {
	font-weight: bold !important;
}

/* 並び
─────────────────────────────────────────────────────────*/
.inline-block {
	letter-spacing: -.40em;
}
.inline-block > div {
	letter-spacing: normal;
	display: inline-block;
	vertical-align: top;
}

.left {
	text-align: left !important;
}
.center {
	text-align: center !important;
}
.boxcenter {
	margin-left: auto;
	margin-right: auto;
}
.right {
	text-align: right !important;
}

.ijou {
	text-align: right !important;
}

dl.float dt,
dl.float dd {
	display: inline-block;
}
.indent-1 {
	padding-left:2em;
	text-indent:-2em;
}
.indent-2 {
	padding-left:3em;
	text-indent:-3em;
}
.indent-3 {
	padding-left:4em;
	text-indent:-4em;
}

/* 横幅はみ出し部分のスクロール（主にスマホのtable用）
─────────────────────────────────────────────────────────*/
.h-scroll {
	overflow-y: auto;
}
/*spのみ*/
.sp .sp-h-scroll {
	overflow-y: auto;
}
.sp .sp-h-scroll .sp-h-scroll-object-w150per {
	width: 150%;
}
.sp .sp-h-scroll .sp-h-scroll-object-w200per {
	width: 200%;
}


/* 下線
─────────────────────────────────────────────────────────*/
.underline {
	text-decoration:underline;
}

/* リスト
─────────────────────────────────────────────────────────*/
ul.nodisc {
	margin: 0;
	padding: 0;
	list-style: none;
}
ul.line-spacing > li:nth-child(n+2) {
	margin-top: .5em;
}

/* 余白無し
─────────────────────────────────────────────────────────*/
.nomargin {
	margin: 0 !important;
}

/* 線囲みコンテンツ
─────────────────────────────────────────────────────────*/
.border-cnt {
	overflow: hidden;
	border: 3px solid #e6e6e6;
	border-radius: 4px;
	margin-bottom: 1em;
	padding: 1em;
}

/* 今年度の発表は(まだ)ありません
─────────────────────────────────────────────────────────*/

.notyet {
	text-align: center !important;
	min-height: 200px;
}

/* YouTube動画埋め込み
─────────────────────────────────────────────────────────*/

.youtube {
	position: relative;
	/*padding-top: 30px;
	padding-bottom: 30%;*/
	padding-top: 0;
	/*padding-bottom: 28.125%;*/
	padding-bottom: 56.25%;
	height: 0;
	overflow: hidden;
	/*display: inline-block;*/
}
@media only screen and (max-width: 480px) {
	.youtube {
		padding-bottom: 56.25%;
	}
}
.youtube iframe {
	position: absolute;
	top: 0;
	left: 0;
	width: 100% !important;
	height: 100% !important;
}
.youtube-aspect {
	width: 100%;
	height: auto;
	aspect-ratio: 16 / 9;
}
.youtube-aspect iframe {
	width: 100% !important;
	height: 100% !important;
}
/*1カラム用*/
.one-full .youtube {
	margin-bottom: 1em;
    padding-bottom: 56.2%;
	display: block;
}
/*2カラム用*/
.one-half .youtube {
    padding-bottom: 27.77%;
}
@media only screen and (max-width: 768px) {
	.one-half .youtube {
		padding-bottom: 27.8%;
	}
}
@media only screen and (max-width: 480px) {
	.one-half .youtube {
		padding-bottom: 56.25%;
	}
}
/*3カラム用（16：9）*/
.one-third .youtube {
    padding-top: 0px;
    padding-bottom: 17.7%;
}
@media only screen and (max-width: 768px) {
	.one-third .youtube {
		padding-top: 0px;
		padding-bottom: 27.1%;
	}
}
@media only screen and (max-width: 480px) {
	.one-third .youtube {
		padding-top: 0px;
		padding-bottom: 56.25%;
	}
}
/*3カラム用*/
.one-third .iframeBox.youtube {
    padding-top: 0px;
    padding-bottom: 27.6%;
	/*padding-bottom: 28.5%;*/
}
@media only screen and (max-width: 768px) {
	.one-third .iframeBox.youtube {
		padding-top: 0px;
		padding-bottom: 42.2%;
		/*padding-bottom: 42.5%;*/
	}
}
@media only screen and (max-width: 480px) {
	.one-third .iframeBox.youtube {
		padding-top: 0px;
		padding-bottom: 90.5%;
	}
}


/*動画：日本原燃 安全対策について*/
.safety-movie {
	position:relative;
	width:100%;
	padding-top: 56.25%;
}
.safety-movie iframe {
	position:absolute;
	top:0;
	left:0;
	width:100% !important;
	height:100% !important;
}

/* 本棚風デザイン
─────────────────────────────────────────────────────────*/

.books {
	letter-spacing: -.4em;
}
.book {
	letter-spacing: normal;
	display: inline-block;
	vertical-align: top;
	width: 100%;
	margin-bottom: 2.6em;
	text-align: center;
}

/*=== 表紙 ===*/
.book .cover {
	background: #eee;
	margin-bottom: 1em;
	padding-top: 30px;
	line-height: 0;
}
.book .cover a {
	display: inline-block;
	border: none;
}
.book .cover a:hover {
	background: none;
	opacity: .9;
}

/*=== 影 ===*/
.book .outside {
	display: inline-block;
	max-width: 420px;
	margin: 0 auto;
	position: relative;
}
/*表紙画像を影より手前に表示する*/
.book .outside img {
	position: relative;
	z-index: 2;
}
.book .outside:after {
	content: "";
	display: block;
	width: 54px;
	height: 205px;
	position: absolute;
	right: -54px;
	bottom: 0;
	background: url(https://www.jnfl.co.jp/ja/assets/common/images/cover_shadow.png) left bottom no-repeat;
}
/*パンフレットが横長の場合の影*/
.book .outside.low-height:after {
	height: 120px;
	right: -30px;
}
/*幅が狭い環境では影を表示しない*/
@media only screen and (max-width: 700px) {
	.book .outside:after {
		display: none;
	}
}

/*=== タイトル、説明文など ===*/
.book .title,
.book .description,
.book .version,
.book .user {
	padding: 0 5%;
	margin: 0 auto 1em;
}
.book .title {
	font-size: 1.6em;
	font-weight: bold;
}
.book .description {
	text-align: justify;
	text-justify: inter-ideograph;
}
.book .version {
	text-align: left;
}
/*=== 対象ユーザー ===*/
.book .user {
	letter-spacing: -.4em;
}
.book .user li {
	display: inline-block;
	letter-spacing: normal;
	padding: 4px;
	color: #fff;
	background: #362e2b;
	width: 48%;
	margin-right: 2%;
}
.book .user li:nth-child(2n) {
	margin-right: 0;
}
.book .user li.engineer {
	background: #00736d;
}
.book .user li.english {
	background: #00a1e9;
}
.book .user a {
	color: #fff;
	display: block;
	border: none;
}
.book .user a:hover,
.book .user a:active,
.book .user a:focus {
	background-color: #007eb6;
	border: none;
}

/*=== 2冊並び ===*/
.books2 {
	letter-spacing: -.4em;
}
.books2 .book {
	width: 50%;
}
@media only screen and (max-width: 480px) {
	.books2 .book {
		width: 100%;
	}
}
.books2 .outside {
	max-width: 280px;
}
.books2 .outside img {
}
.books2 .outside:after {
	right: -54px;
}

/*=== 3冊並び ===*/
.books3 {
	letter-spacing: -.4em;
}
.books3 .book {
	width: 33.3%;
}
@media only screen and (max-width: 480px) {
	.books3 .book {
		width: 100%;
	}
}

.books3 .title {
	font-size: 1.333em;
}


.books3 .outside {
	max-width: 211px;
}
.books3 .outside:after {
	right: -40px;
}
@media only screen and (max-width: 950px) {
	.books3 .outside:after {
		display: none;
	}
}


/*━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
	リンク
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━*/
/*
「.touchhover」はスクリプトで付与。SPでタップ時、SPのOSがPCのfocus等をエミュレートしてくれるが、これがタップ終了してもが外れない。このため、タップ中のみ付くクラスとしてtouchhoverを設定中。
→hover/active/focusの見た目を定義する場合、「.pc a:hover, a.touchhover」等とすればSPのエミュレートでは見た目が変化せず、touchhoverで変化する。
*/

a {
	color: #1b1b1b;
	text-decoration: none;
}
.pc a:hover,
.pc a:active,
.pc a:focus,
a.touchhover,
.hover a {
	text-decoration: underline;
}
.pc .hover:not(.no-anchor) {
	cursor: pointer;
}

/*外部リンクアイコン付与*/
a[target="_blank"]:after {
	content: "";
	display: inline-block;
	margin-left: .5em;
	background-image: url(https://www.jnfl.co.jp/ja/assets/common/images/sprite/sprite.png);
	background-position: -58px 0px;
	width: 10px;
	height: 10px;
	background-size: 1405px 44px;
}
a.noicon-external:after {
	content: none;
}

article a,
section a {
	-webkit-transition: background-color 0.3s linear;
	transition: background-color 0.3s linear;
}

article p a:link,
article p a:visited,
section p a:link,
section p a:visited,
article table a:link,
article table a:visited,
a.pdf:link,
a.pdf:visited,
.attachment a:link,
.attachment a:visited {
	color: #438b08;
	border-bottom: 1px dotted #4faf00;
	text-decoration: none;
}

.pc article p a:hover,
.pc article p a:active,
.pc article p a:focus,
article p a.touchhover,
.pc section p a:hover,
.pc section p a:active,
.pc section p a:focus,
section p a.touchhover,
.pc article table a:hover,
.pc article table a:active,
.pc article table a:focus,
article table a.touchhover,
.pc a.pdf:hover,
.pc a.pdf:active,
.pc a.pdf:focus,
a.pdf.touchhover,
.pc .attachment a:hover,
.pc .attachment a:active,
.pc .attachment a:focus,
.attachment a.touchhover {
	color: #fff;
	background-color: #4faf00;
	text-decoration: none;
}

.logo a:link,
.logo a:visited {
	border-bottom: none;
}
.logo a:hover,
.logo a:active,
.logo a:focus {
	background-color: transparent;
}
.logo a:after {
	content: none;
}

/* カテゴリラベル
─────────────────────────────────────────────────────────*/

.list .category li {
	text-shadow: 0 0 2px #646464;
	background: #6a6;
}

.再処理 .category li:first-child {
	background: #2f9964;
}

.廃棄物管理 .category li:first-child {
	background: #2f9964;
}

.濃縮 .category li:first-child {
	background: #2f9964;
}

.埋設 .category li:first-child {
	background: #2f9964;
}

.MOX .category li:first-child {
	background: #2f9964;
}

.報告 .category li:first-child {
	background: #166db0;
}

.記者懇談会等 .category li:first-child {
	background: #7bcb0a;
}

.イベント .category li:first-child {
	background: #22aee3;
}

.その他 .category li:first-child {
	background: #795548;
}


/*━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
	フォント
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━*/

html {
	font-size: 62.5%;
	width: 100%;
	overflow-x: hidden;
}

body.ja {
	font-family: Meryo, "メイリオ", "Hiragino Sans", "ヒラギノ角ゴ ProN W2", "Hiragino Kaku Gothic ProN", Osaka, "ＭＳ Ｐゴシック", "MS P Gothic", sans-serif;
	font-weight: 200;
	font-size: 16px;
	/*font-size: 1.6rem;*/
	line-height: 1.8;
}
body.en {
	font-family: Helvetica, Arial, sans-serif;
	font-size: 18px;
	font-size: 1.8rem;
	line-height: 1.41;
}
body.en article,
body.en section {
	font-family: robotolight, Helvetica, Arial, sans-serif;
}
body.en article h1,
body.en article h2,
body.en article h3,
body.en article h4,
body.en article h5,
body.en article h6,
body.en section h1,
body.en section h2,
body.en section h3,
body.en section h4,
body.en section h5,
body.en section h6 {
	font-family: "Times New Roman", serif;
}
body.en article .title,
body.en section .title {
	font-family: robotomedium, sans-serif;
	font-weight: normal !important;
}
body.en.index .title {
	font-family: "Times New Roman", serif;
}


/*━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
	セクション
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━*/

/*=== 標準のアキ ===*/

.container article,
.container section {
	margin-bottom: 70px;
}
.container article:last-child,
.container section:last-child {
	margin-bottom: 0;
}
.ja .container p,
.ja .container table,
.ja .container ul,
.ja .container ol,
.ja .container .images {
	margin-bottom: 2.6em;
}
@media only screen and (min-width: 681px) {
div#main {
	padding-top: 20px;
}
}
@media only screen and (max-width: 480px) {
	.container article,
	.container section {
		margin-bottom: 30px;
	}
	.container article:last-child,
	.container section:last-child {
		margin-bottom: 0;
	}
	.ja .container p,
	.ja .container table,
	.ja .container ul,
	.ja .container ol,
	.ja .container .images {
		margin-bottom: 2em;
	}
}

/*=== セクションが連続した場合のアキ ===*/

/*日本語*/
.ja .container article + article,
.ja .container article + section,
.ja .container section + section,
.ja .container section + article {
	margin-top: 70px;
}

/*英語*/
.en .container article + article {
	margin-top: 8em;
}
.en .container article + section,
.en .container section + section,
.en .container section + article {
	margin-top: 70px;/*2em*/
}
@media only screen and (max-width: 480px) {
	.ja .container article + article,
	.ja .container article + section,
	.ja .container section + section,
	.ja .container section + article {
		margin-top: 30px;
	}

	/*英語*/
	.en .container article + section,
	.en .container section + section,
	.en .container section + article {
		margin-top: 30px;
	}
}

/*=== セクション内項目のアキ ===*/

.ja .container article p:first-child,
.ja .container section p:first-child {
	margin-top: 0;
}
.ja .container article p:last-child,
.ja .container section p:last-child,
.ja .container article table:last-child,
.ja .container section table:last-child,
.ja .container article ul:last-child,
.ja .container section ul:last-child,
.ja .container article ol:last-child,
.ja .container section ol:last-child,
.ja .container article .images:last-child,
.ja .container section .images:last-child {
	margin-bottom: 0;
}

/*=== 孫セクションのアキ ===*/

.container article section:last-child,
.container section section:last-child {
	margin-bottom: 0;
}
/*英語では、セクションが連続した場合のアキを上書き*/
.en .container article section + section,
.en .container section section + section {
	margin-top: 50px;
}

/* テーブルの中身のアキ
─────────────────────────────────────────────────────────*/

.ja .container table p:first-child,
.ja .container table ul:first-child,
.ja .container table ol:first-child {
	margin-top: 0;
}
.ja .container table table:last-child,
.ja .container table p:last-child,
.ja .container table ul:last-child,
.ja .container table ol:last-child,
.ja .container table .images:last-child {
	margin-bottom: 0;
}
.en .container table p:first-child,
.en .container table ul:first-child,
.en .container table ol:first-child {
	margin-top: 0;
}
.en .container table table,
.en .container table p,
.en .container table ul,
.en .container table ol,
.en .container table .images {
	margin-bottom: 1em;
}
.en .container table table:last-child,
.en .container table p:last-child,
.en .container table ul:last-child,
.en .container table ol:last-child,
.en .container table .images:last-child {
	margin-bottom: 0;
}

/* リストのアキ
─────────────────────────────────────────────────────────*/

.en:not(.home) .container li + li {
	margin-top: .3em;
}
.en:not(.home) .container li li + li {
	margin-top: 0;
}

/*━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
	コンテナ設定
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━*/

header > .inner,
.container,
footer > .inner {
	position: relative;
	-webkit-box-sizing: content-box;
	-moz-box-sizing: content-box;
	-o-box-sizing: content-box;
	-ms-box-sizing: content-box;
	box-sizing: content-box;
	margin: 0 auto;
	padding: 0 8.33333%;
	width: 83.33333%;
	max-width: 1000px;
}
@media only screen and (min-width: 769px) and (max-width: 1000px) {
	header > .inner,
	.container,
	footer > .inner {
		width: 95%;
		padding: 0;
	}
}
@media only screen and (min-width: 481px) and (max-width: 768px) {
	header > .inner,
	.container,
	footer > .inner {
		width: 97%;
		padding: 0;
	}
}
@media only screen and (max-width: 480px) {
	header > .inner,
	.container,
	footer > .inner {
		width: 95%;
		padding: 0;
	}
}

.container {
	width: 95%;
	padding: 0;
	background: #fff;
}

.container {
	min-height: 500px;
}

.flex-side {
	width: 100%;
	padding: 0;
	float: right;
	margin-left: -240px;
}
.home .flex-side {
	float: left;
	margin-left: 0;
	margin-right: -280px;
}
@media only screen and (min-width: 481px) and (max-width: 768px) {
	.home .flex-side {
		float: none;
	}
}
.flex-side section,
.flex-side article {
	z-index: 10000;
	margin-left: 280px;
}
.home .flex-side section,
.home .flex-side article {
	margin-left: 0;
	margin-right: 320px;
}
@media only screen and (min-width: 481px) and (max-width: 768px) {
	.home .flex-side section,
	.home .flex-side article {
		margin-right: 0;
	}
}
.flex-side p {
	margin-left: 0.5em;
	margin-right: 0.5em;
}
.ja .flex-side p,
.ja .flex-side li,
.ja .flex-side dt,
.ja .flex-side dd {
	text-align: justify;
	text-justify: inter-ideograph;
}
@media only screen and (min-width: 769px) and (max-width: 1000px) {
	.home .flex-side section,
	.home .flex-side article {
		margin-right: 300px;
	}
}
@media only screen and (min-width: 481px) and (max-width: 768px) {
	.flex-side {
		float: none;
		margin: 0 auto;
	}
	.flex-side section,
	.flex-side article {
		margin-left: 0;
		margin-right: 0;
	}
}
@media only screen and (max-width: 480px) {
	.flex-side {
		float: none;
		margin: 0 auto !important;
	}
	.flex-side section,
	.flex-side article {
		margin-left: 0 !important;
		margin-right: 0 !important;
	}
}

.fixed-side {
	width: 240px;
	float: left;
}
.home .fixed-side {
	width: 280px;
}
@media only screen and (min-width: 481px) and (max-width: 768px) {
	.home .fixed-side {
		width: 100%;
	}
}
@media only screen and (max-width: 480px) {
	.home .fixed-side {
		width: 100%;
	}
}
@media only screen and (min-width: 481px) and (max-width: 768px) {
	.fixed-side {
		float: none;
		width: 100%;
		padding: 0;
	}
}
@media only screen and (max-width: 480px) {
	.fixed-side {
		float: none;
		width: 100%;
		padding: 0;
	}
}

.no-sidebar .flex-side {
	margin-left: 0;
	margin-right: 0;
}
.no-sidebar .flex-side section,
.no-sidebar .flex-side article {
	margin-left: 0;
	margin-right: 0;
}
.no-sidebar .sidebar {
	display: none;
}


/*━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
	画像
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━*/

img {
	max-width: 100%;
	height: auto !important;
}

.images {
	overflow: hidden;
	border: 3px solid #e6e6e6;
	border-radius: 4px;
	margin-bottom: 1em;
	padding: 1em;
	text-align: center;
}
.images > div {
	display: inline-block;
	vertical-align: bottom;
	margin: 0 5px;
}
.images a {
	transition: opacity 0.3s ease-out;
}
.pc .images a:hover,
.pc .images a:active,
.pc .images a:focus,
.images a.touchhover {
	background: transparent;
	color: #438b08;
	border-bottom: none;
}
.pc .images a:hover img,
.images a.touchhover img {
	opacity: .7;
}


/*━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
	PC/SP出し分け,skip関連
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━*/

/*表示位置(画面サイズが十分広いSPは、PCと同じにする)*/
@media only screen and (min-width: 481px) {
	.pc-left {
		text-align: left;
	}
	.pc-center {
		text-align: center;
	}
	.pc-right {
		text-align: right;
	}
}
@media only screen and (max-width: 480px) {
	.sp-left {
		text-align: left;
	}
}
@media only screen and (max-width: 480px) {
	.sp-center {
		text-align: center;
	}
}
@media only screen and (max-width: 480px) {
	.sp-right {
		text-align: right;
	}
}

/*最大幅で表示*/
.max {
	width: 100%;
}
.sp .sp-max {
	width: 100%;
}
.pc .pc-max,
.tablet .pc-max {
	width: 100%;
}

/*SPだけ改行*/
br.sp {
	display: none;
}
@media only screen and (max-width: 480px) {
	br.sp {
		display: inline;
	}
}

/*block要素にする*/
.block {
	display: block;
}
@media only screen and (max-width: 480px) {
	.sp-block {
		display: block;
	}
}
.pc-block {
	display: block;
}
@media only screen and (max-width: 480px) {
	.pc-block {
		display: inline;
	}
}

/*=== PCだけで見せる、SPだけで見せる ===*/
.show-pc {
	display: none !important;
}
.pc .show-pc,
.tablet .show-pc {
	display: block !important;
}
.show-sp {
	display: none !important;
}
.sp .show-sp {
	display: block !important;
}

/*=== PCだけで改行する、SPだけで改行する ===*/
@media only screen and (max-width: 480px) {
	/*SPでも幅が十分あれば改行するため、media queryで指定*/
	.pc-br,
	.pc-br br {
		display: none;
	}
}
.sp-br,
.sp-br br {
	display: none;
}
@media only screen and (max-width: 480px) {
	/*SPでも幅が十分あれば改行しないため、media queryで指定*/
	.sp-br,
	.sp-br br {
		display: inline;
	}
}

/*=== スキップ ===*/

/*スクリーンリーダーでは読み上げられる*/
.skip {
	position: absolute !important;
	left: -9000px;
	clip: rect(1px 1px 1px 1px);
	clip: rect(1px, 1px, 1px, 1px);
}
/*スクリーンリーダーでも読み飛ばされる*/
.skipall {
	display: none;
	visibility: hidden;
}
/*スキップはされないが表示されない*/
.pc .pc-transparent {
	color: transparent;
}
.sp .sp-transparent {
	color: transparent;
}
.sp .sp-js-table tbody .sp-js-header .th.sp-transparent {
	display: none;
}
.sp .sp-js-table tbody .sp-js-header .th.sp-transparent + .td {
	border-left: 1px solid #ddd;
}
.sp .sp-js-table tbody .sp-js-header.has-sp-transparent + td > .th {
	border-top: 1px solid #ddd;
}
/*スキップされ、表示もされない*/
.pc .pc-none {
	display: none;
}
.sp .sp-none {
	display: none;
}

/*=== どうしてもの場合 ===*/

@media only screen and (min-width: 681px) {
	.pc .pc-1em { width: 1em; }
	.pc .pc-2em { width: 2em; }
	.pc .pc-3em { width: 3em; }
	.pc .pc-4em { width: 4em; }
	.pc .pc-5em { width: 5em; }
	.pc .pc-6em { width: 6em; }
	.pc .pc-7em { width: 7em; }
	.pc .pc-8em { width: 8em; }
	.pc .pc-9em { width: 9em; }
	.pc .pc-10em { width: 10em; }
	.pc .pc-11em { width: 11em; }
	.pc .pc-12em { width: 12em; }
	.pc .pc-13em { width: 13em; }
	.pc .pc-14em { width: 14em; }
	.pc .pc-15em { width: 15em; }
	.pc .pc-16em { width: 16em; }
	.pc .pc-17em { width: 17em; }
	.pc .pc-18em { width: 18em; }
	.pc .pc-19em { width: 19em; }
	.pc .pc-20em { width: 20em; }
	.pc .pc-21em { width: 21em; }
	.pc .pc-22em { width: 22em; }
	.pc .pc-23em { width: 23em; }
	.pc .pc-24em { width: 24em; }
	.pc .pc-25em { width: 25em; }
	.pc .pc-26em { width: 26em; }
	.pc .pc-27em { width: 27em; }
	.pc .pc-28em { width: 28em; }
	.pc .pc-29em { width: 29em; }
	.pc .pc-30em { width: 30em; }
}

.w50 { width: 50px; }
.w100 { width: 100px; }
.w150 { width: 150px; }
.w200 { width: 200px; }
.w250 { width: 250px; }
.w300 { width: 300px; }
.w350 { width: 350px; }
.w400 { width: 400px; }
@media only screen and (min-width: 681px) {
	.pc .pc-w50 { width: 50px; }
	.pc .pc-w100 { width: 100px; }
	.pc .pc-w150 { width: 150px; }
	.pc .pc-w200 { width: 200px; }
	.pc .pc-w250 { width: 250px; }
	.pc .pc-w300 { width: 300px; }
	.pc .pc-w350 { width: 350px; }
	.pc .pc-w400 { width: 400px; }
	.pc .pc-w450 { width: 450px; }
	.pc .pc-w500 { width: 500px; }
	.pc .pc-w550 { width: 550px; }
	.pc .pc-w600 { width: 600px; }
	.pc .pc-w650 { width: 650px; }
	.pc .pc-w700 { width: 700px; }
	.pc .pc-w750 { width: 750px; }
	.pc .pc-w800 { width: 800px; }
	.pc .pc-w850 { width: 850px; }
	.pc .pc-w900 { width: 900px; }
	.pc .pc-w950 { width: 950px; }
	.pc .pc-w1000 { width: 1000px; }
	.pc .pc-w1050 { width: 1050px; }
	.pc .pc-w1100 { width: 1100px; }
	.pc .pc-w1150 { width: 1150px; }
	.pc .pc-w1200 { width: 1200px; }
	.pc .pc-w1250 { width: 1250px; }
	.pc .pc-w1300 { width: 1300px; }
	.pc .pc-w1350 { width: 1350px; }
	.pc .pc-w1400 { width: 1400px; }
	.pc .pc-w1450 { width: 1450px; }
	.pc .pc-w1500 { width: 1500px; }
}
/* 余白 ------- */
.u-mt00 {margin-top: 0 !important;}
.u-mr00 {margin-right: 0 !important;}
.u-mb00 {margin-bottom: 0 !important;}
.u-ml00 {margin-left: 0 !important;}
.u-pt00 {padding-top: 0 !important;}
.u-pr00 {padding-right: 0 !important;}
.u-pb00 {padding-bottom: 0 !important;}
.u-pl00 {padding-left: 0 !important;}

.u-mt05 {margin-top: 0.7vw !important;}
.u-mr05 {margin-right: 0.7vw !important;}
.u-mb05 {margin-bottom: 0.7vw !important;}
.u-ml05 {margin-left: 0.7vw !important;}
.u-pt05 {padding-top: 0.7vw !important;}
.u-pr05 {padding-right: 0.7vw !important;}
.u-pb05 {padding-bottom: 0.7vw !important;}
.u-pl05 {padding-left: 0.7vw !important;}
@media (min-width: 681px) {
	.u-mt05 {margin-top: 5px !important;}
	.u-mr05 {margin-right: 5px !important;	}
	.u-mb05 {margin-bottom: 5px !important;}
	.u-ml05 {margin-left: 5px !important;	}
	.u-pt05 {padding-top: 5px !important;}
	.u-pr05 {padding-right: 5px !important;	}
	.u-pb05 {padding-bottom: 5px !important;}
	.u-pl05 {padding-left: 5px !important;}
}
.u-mt10 {margin-top: 1.3vw !important;}
.u-mr10 {margin-right: 1.3vw !important;}
.u-mb10 {margin-bottom: 1.3vw !important;}
.u-ml10 {margin-left: 1.3vw !important;}
.u-pt10 {padding-top: 1.3vw !important;}
.u-pr10 {padding-right: 1.3vw !important;}
.u-pb10 {padding-bottom: 1.3vw !important;}
.u-pl10 {padding-left: 1.3vw !important;}
@media (min-width: 681px) {
	.u-mt10 {margin-top: 10px !important;}
	.u-mr10 {margin-right: 10px !important;}
	.u-mb10 {margin-bottom: 10px !important;}
	.u-ml10 {margin-left: 10px !important;}
	.u-pt10 {padding-top: 10px !important;}
	.u-pr10 {padding-right: 10px !important;}
	.u-pb10 {padding-bottom: 10px !important;}
	.u-pl10 {padding-left: 10px !important;}
}
.u-mt15 {margin-top: 2vw !important;}
.u-mr15 {margin-right: 2vw !important;}
.u-mb15 {margin-bottom: 2vw !important;}
.u-ml15 {margin-left: 2vw !important;}
.u-pt15 {padding-top: 2vw !important;}
.u-pr15 {padding-right: 2vw !important;}
.u-pb15 {padding-bottom: 2vw !important;}
.u-pl15 {padding-left: 2vw !important;}
@media (min-width: 681px) {
	.u-mt15 {margin-top: 15px !important;}
	.u-mr15 {margin-right: 15px !important;}
	.u-mb15 {margin-bottom: 15px !important;}
	.u-ml15 {margin-left: 15px !important;}
	.u-pt15 {padding-top: 15px !important;}
	.u-pr15 {padding-right: 15px !important;}
	.u-pb15 {padding-bottom: 15px !important;}
	.u-pl15 {padding-left: 15px !important;}
}
.u-mt20 {margin-top: 2.7vw !important;}
.u-mr20 {margin-right: 2.7vw !important;}
.u-mb20 {margin-bottom: 2.7vw !important;}
.u-ml20 {margin-left: 2.7vw !important;}
.u-pt20 {padding-top: 2.7vw !important;}
.u-pr20 {padding-right: 2.7vw !important;}
.u-pb20 {padding-bottom: 2.7vw !important;}
.u-pl20 {padding-left: 2.7vw !important;}
@media (min-width: 681px) {
	.u-mt20 {margin-top: 20px !important;}
	.u-mr20 {margin-right: 20px !important;}
	.u-mb20 {margin-bottom: 20px !important;}
	.u-ml20 {margin-left: 20px !important;}
	.u-pt20 {padding-top: 20px !important;}
	.u-pr20 {padding-right: 20px !important;}
	.u-pb20 {padding-bottom: 20px !important;}
	.u-pl20 {padding-left: 20px !important;}
}
.u-mt25 {margin-top: 3.3vw !important;}
.u-mr25 {margin-right: 3.3vw !important;}
.u-mb25 {margin-bottom: 3.3vw !important;}
.u-ml25 {margin-left: 3.3vw !important;}
.u-pt25 {padding-top: 3.3vw !important;}
.u-pr25 {padding-right: 3.3vw !important;}
.u-pb25 {padding-bottom: 3.3vw !important;}
.u-pl25 {padding-left: 3.3vw !important;}
@media (min-width: 681px) {
	.u-mt25 {margin-top: 25px !important;}
	.u-mr25 {margin-right: 25px !important;}
	.u-mb25 {margin-bottom: 25px !important;}
	.u-ml25 {margin-left: 25px !important;}
	.u-pt25 {padding-top: 25px !important;}
	.u-pr25 {padding-right: 25px !important;}
	.u-pb25 {padding-bottom: 25px !important;}
	.u-pl25 {padding-left: 25px !important;}
}
.u-mt30 {margin-top: 4vw !important;}
.u-mr30 {margin-right: 4vw !important;}
.u-mb30 {margin-bottom: 4vw !important;}
.u-ml30 {margin-left: 4vw !important;}
.u-pt30 {padding-top: 4vw !important;}
.u-pr30 {padding-right: 4vw !important;}
.u-pb30 {padding-bottom: 4vw !important;}
.u-pl30 {padding-left: 4vw !important;}
@media (min-width: 681px) {
	.u-mt30 {margin-top: 30px !important;}
	.u-mr30 {margin-right: 30px !important;}
	.u-mb30 {margin-bottom: 30px !important;}
	.u-ml30 {margin-left: 30px !important;}
	.u-pt30 {padding-top: 30px !important;}
	.u-pr30 {padding-right: 30px !important;}
	.u-pb30 {padding-bottom: 30px !important;}
	.u-pl30 {padding-left: 30px !important;}
}
.u-mt35 {margin-top: 4.7vw !important;}
.u-mr35 {margin-right: 4.7vw !important;}
.u-mb35 {margin-bottom: 4.7vw !important;}
.u-ml35 {margin-left: 4.7vw !important;}
.u-pt35 {padding-top: 4.7vw !important;}
.u-pr35 {padding-right: 4.7vw !important;}
.u-pb35 {padding-bottom: 4.7vw !important;}
.u-pl35 {padding-left: 4.7vw !important;}
@media (min-width: 681px) {
	.u-mt35 {margin-top: 35px !important;}
	.u-mr35 {margin-right: 35px !important;}
	.u-mb35 {margin-bottom: 35px !important;}
	.u-ml35 {margin-left: 35px !important;}
	.u-pt35 {padding-top: 35px !important;}
	.u-pr35 {padding-right: 35px !important;}
	.u-pb35 {padding-bottom: 35px !important;}
	.u-pl35 {padding-left: 35px !important;}
}
.u-mt40 {margin-top: 5.3vw !important;}
.u-mr40 {margin-right: 5.3vw !important;}
.u-mb40 {margin-bottom: 5.3vw !important;}
.u-ml40 {margin-left: 5.3vw !important;}
.u-pt40 {padding-top: 5.3vw !important;}
.u-pr40 {padding-right: 5.3vw !important;}
.u-pb40 {padding-bottom: 5.3vw !important;}
.u-pl40 {padding-left: 5.3vw !important;}
@media (min-width: 681px) {
	.u-mt40 {margin-top: 40px !important;}
	.u-mr40 {margin-right: 40px !important;}
	.u-mb40 {margin-bottom: 40px !important;}
	.u-ml40 {margin-left: 40px !important;}
	.u-pt40 {padding-top: 40px !important;}
	.u-pr40 {padding-right: 40px !important;}
	.u-pb40 {padding-bottom: 40px !important;}
	.u-pl40 {padding-left: 40px !important;}
}
.u-mt45 {margin-top: 6vw !important;}
.u-mr45 {margin-right: 6vw !important;}
.u-mb45 {margin-bottom: 6vw !important;}
.u-ml45 {margin-left: 6vw !important;}
.u-pt45 {padding-top: 6vw !important;}
.u-pr45 {padding-right: 6vw !important;}
.u-pb45 {padding-bottom: 6vw !important;}
.u-pl45 {padding-left: 6vw !important;}
@media (min-width: 681px) {
	.u-mt45 {margin-top: 45px !important;}
	.u-mr45 {margin-right: 45px !important;}
	.u-mb45 {margin-bottom: 45px !important;}
	.u-ml45 {margin-left: 45px !important;}
	.u-pt45 {padding-top: 45px !important;}
	.u-pr45 {padding-right: 45px !important;}
	.u-pb45 {padding-bottom: 45px !important;}
	.u-pl45 {padding-left: 45px !important;}
}
.u-mt50 {margin-top: 6.7vw !important;}
.u-mr50 {margin-right: 6.7vw !important;}
.u-mb50 {margin-bottom: 6.7vw !important;}
.u-ml50 {margin-left: 6.7vw !important;}
.u-pt50 {padding-top: 6.7vw !important;}
.u-pr50 {padding-right: 6.7vw !important;}
.u-pb50 {padding-bottom: 6.7vw !important;}
.u-pl50 {padding-left: 6.7vw !important;}
@media (min-width: 681px) {
	.u-mt50 {margin-top: 50px !important;}
	.u-mr50 {margin-right: 50px !important;}
	.u-mb50 {margin-bottom: 50px !important;}
	.u-ml50 {margin-left: 50px !important;}
	.u-pt50 {padding-top: 50px !important;}
	.u-pr50 {padding-right: 50px !important;}
	.u-pb50 {padding-bottom: 50px !important;}
	.u-pl50 {padding-left: 50px !important;}
}

/*━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
	clearfix
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━*/

header > .inner,
.container,
footer > .inner,
section {
	*zoom: 1;
}
header > .inner:before,
.container:before,
footer > .inner:before,
section:before,
header > .inner:after,
.container:after,
footer > .inner:after,
section:after {
	content: "";
	display: table;
}
header > .inner:after,
.container:after,
footer > .inner:after,
section:after {
	clear: both;
}


/*━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
	テーブル
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━*/

/*=== 初期設定 ===*/

th {
	font-weight: normal;
}
caption {
	font-weight: bold;
}
table {
	border-collapse: collapse;
}

thead th,
thead td {
	text-align: center;
	background: #d9f1b5;
}
tfoot p:first-child {
	margin-top: 0;
}
tfoot p:last-child {
	margin-bottom: 0;
}

/* 改行しないセル
─────────────────────────────────────────────────────────*/
th.nowrap,
td.nowrap {
	white-space: nowrap !important;
}
@media only screen and (max-width: 800px) {
	th.nowrap,
	td.nowrap {
		white-space: normal !important;
	}
	.thnowrap th br {
		display: none;
	}
}

/*日付のセルは改行しない*/
body:not(.home) td.date {
	white-space: nowrap;
	width: 9em;
}

/* 中身の文字に合わせた最小幅にするセル（PCのth）
─────────────────────────────────────────────────────────*/
th.fit,
.pc th.pc-fit, 
.sp th.sp-fit {
	width: 1px !important;
	white-space: nowrap !important;
}

/* theadの罫線/背景色（標準で緑背景＆白ボーダー）
─────────────────────────────────────────────────────────*/

thead {
	background: #d9f1b5;
}
thead th:not(:last-child),
thead td:not(:last-child) {
	border-right-color: #fff !important;
}
thead tr:not(:last-child) th,
thead tr:not(:last-child) td {
	border-bottom-color: #fff !important;
}

/* 罫線を引くテーブル
─────────────────────────────────────────────────────────*/

table.border,
table.border th,
table.border td {
	border: 1px solid #ddd;
}

table.noborder {
	border: none;
}
table.noborder > thead > tr > th,
table.noborder > thead > tr > td,
table.noborder > tbody > tr > th,
table.noborder > tbody > tr > td,
table.noborder > tfoot > tr > th,
table.noborder > tfoot > tr > td {
	border: none;
}
tfoot.noborder td {
	border-left-color: transparent !important;
	border-right-color: transparent !important;
	border-bottom-color: transparent !important;
}

/* tbody内のthや個々のthに背景色を設定する/削除する
─────────────────────────────────────────────────────────*/

th.bg,
.thbg > thead > tr > th,
.thbg > tbody > tr > th {
	background: #d9f1b5;
}
.thbg > thead > tr > th {
	border-bottom-color: #fff !important;
}
.thbg > tbody > tr:not(:last-child) > th {
	border-bottom-color: #fff !important;
}

.nothbg > thead,
.nothbg > thead > tr > th,
.nothbg > tbody > tr > th,
.nothbg > tfoot > tr > th {
	background: transparent !important;
}
.nobg,
.nobg > th {
	background: transparent !important;
}

/* 全セル同じ幅(fixed)のテーブル
─────────────────────────────────────────────────────────*/

table.fixed {
	table-layout: fixed;
	width: 100%;
}

/* 幅80%～100%のテーブル（列幅は中身によって成り行き）
─────────────────────────────────────────────────────────*/

table.w100per {	width: 100%; }
table.w90per {	width: 90%; }
table.w90per {	width: 80%; }

/* SPのみ適用 */
.sp table.sp-w100per { width: 100%; }
.sp table.sp-w90per { width: 90%; }
.sp table.sp-w80per { width: 80%; }

/* 中身の並び
─────────────────────────────────────────────────────────*/

table.center tr {
	text-align: center !important;
}
table.center tr.left {
	text-align: left !important;
}
table.center tr.right {
	text-align: right !important;
}

.thleft th,
.tdleft td {
	text-align: left !important;
}
.thcenter th,
.tdcenter td {
	text-align: center !important;
}
.thright th,
.tdright td {
	text-align: right !important;
}

.top tbody th,
.top tbody td {
	vertical-align: top;
}
.middle tbody th,
.middle tbody td {
	vertical-align: middle;
}
.bottom tbody th,
.bottom tbody td {
	vertical-align: bottom;
}

th.top,
td.top {
	vertical-align: top !important;
}
th.middle,
td.middle {
	vertical-align: middle !important;
}
th.bottom,
td.bottom {
	vertical-align: bottom !important;
}

/* 中身のアキ
─────────────────────────────────────────────────────────*/

.cellpadding th,
.cellpadding td {
	padding-left: 20px;
	padding-right: 20px;
}

.verticalpadding th,
.verticalpadding td {
	padding-top: 20px;
	padding-bottom: 20px;
}

.lesscellpadding th,
.lesscellpadding td {
	padding-left: 5px;
	padding-right: 5px;
}

.padding > th,
.padding > td,
.padding > thead > tr > th,
.padding > thead > tr > td,
.padding > tbody > tr > th,
.padding > tbody > tr > td {
	padding: 20px;
}

.lesspadding > th,
.lesspadding > td,
.lesspadding > thead > tr > th,
.lesspadding > thead > tr > td,
.lesspadding > tbody > tr > th,
.lesspadding > tbody > tr > td {
	padding: 5px;
}

.thnowrap th {
	white-space: nowrap;
}
@media only screen and (max-width: 800px) {
	.thnowrap th {
		white-space: normal;
	}
	.thnowrap th br {
		display: none;
	}
}

/* フロートテーブル
─────────────────────────────────────────────────────────*/

table[style*="float:left"],
table[style*="float: left"] {
	margin-right: 1em;
}

table[style*="float:right"],
table[style*="float: right"] {
	margin-left: 1em;
}

/* テーブルの幅を狭くし周りに色を敷く
─────────────────────────────────────────────────────────*/

.table-cover {
	background: #f7f7f7;
	margin-bottom: 2.6em;
	padding: 5%;
}
.table-cover table {
	width: 100%;
	margin-bottom: 0;
}
.table-cover table tbody th,
.table-cover table tbody td,
.table-cover table tfoot th,
.table-cover table tfoot td {
	background: #fff;
}

/*SP時は狭くしない&色を敷かない*/
@media only screen and (max-width: 480px) {
	.table-cover {
		background: transparent !important;
		padding: 0;
	}
}


/*───────────────────────────────────────────────────────
	リストテーブル（プレス一覧など）
─────────────────────────────────────────────────────────*/

.ja table.list,
.ja.home table.info-contents {
	text-align: justify;
	text-justify: inter-ideograph;
}

table.list td,
.home table.info-contents td {
	vertical-align: top;
}

table.list td:first-child,
table.list td:nth-child(2),
table.list td:nth-child(3),
.home table.info-contents td:first-child,
.home table.info-contents td:nth-child(2),
.home table.info-contents td:nth-child(3) {
	white-space: nowrap;
	text-align: right;
}
.home section.coronavirus table.list td:first-child {
	width: 100%;
    text-align: left;
	white-space: normal;
}

table.list .category,
.home table.info-contents .category {
	text-align: left;
	padding-right: .8em;
}
table.list .category li,
.home table.info-contents .category li {
	margin: 0 5px 0 0;
	color: #fff;
	display: inline-block;
	min-width: 8em;
	text-align: center;
}
table.list .category li:last-child,
.home table.info-contents .category li:last-child {
	margin-right: 0;
}

table.list ul,
.home table.info-contents ul {
	margin: 0;
	padding: 0;
}

table.list td:not(.category) li,
.home table.info-contents td:not(.category) li {
	list-style: none;
	margin-left: .8em;
	text-indent: -.8em;
}
.en table.list td:not(.category) li,
.en.home table.info-contents td:not(.category) li {
	text-indent: -.6em;
}
table.list td:not(.category) li:before,
.home table.info-contents td:not(.category) li:before {
	content: "\2022 \0020";
}

.ja table.list td:first-child,
.ja.home table.info-contents td:first-child {
	width: 4.4em;
}

.ja table.list td:nth-child(2),
.ja.home table.info-contents td:nth-child(2) {
	width: 2.3em;
	text-align: right;
}

.ja table.list td:nth-child(3),
.ja.home table.info-contents td:nth-child(3) {
	width: 3.2em;
	text-align: right;
	padding-right: .8em;
}

.en table.list td:first-child,
.en.home table.info-contents td:first-child {
	width: 2.2em;
	text-align: left;
	padding-left: .8em !important;
}
@media only screen and (max-width: 480px) {
	.en.home table.list td:first-child,
	.en.home table.info-contents td:first-child {
		padding-left: 0 !important;
	}
	.en.home table.list td:last-child {
		padding-left: .8em;
	}
}

.en table.list td:nth-child(2),
.en.home table.info-contents td:nth-child(2) {
	width: 1.5em;
}

.en table.list td:nth-child(3),
.en.home table.info-contents td:nth-child(3) {
	width: 3.5em;
}

@media only screen and (max-width: 480px) {
	table.list td:first-child,
	table.list td:nth-child(2),
	table.list td:nth-child(3),
	.home table.info-contents td:first-child,
	.home table.info-contents td:nth-child(2),
	.home table.info-contents td:nth-child(3) {
		width: auto !important;
		text-align: left !important;
	}
}

.ja.home section:not(.coronavirus) > table td:first-child {
	display: none;
}

body.home section > table td.category {
	width: 8em;
}
body.home section > table td.category ul {
	transition: opacity 0.3s ease-out;
}
body.home section > table td.category ul:hover {
	opacity: .7;
}


body:not(.home) table.list {
	width: 100%;
	border: 1px solid #ddd;
}
body:not(.home) table.list tr {
	-webkit-transition: background-color 0.3s linear;
	transition: background-color 0.3s linear;
}
body:not(.home) table.list tr.has-anchor.hover {
	background: #4faf00;
	color: #fff;
}
body:not(.home) table.list tr.has-anchor.hover a {
	color: #fff;
}
body:not(.home) table.list td {
	border-bottom: 1px solid #ddd;
}
body:not(.home) table.list td:first-child {
	padding: .8em 0;
}
body:not(.home) table.list td:nth-child(2) {
	padding: .8em 0;
}
body:not(.home) table.list td:nth-child(3) {
	padding: 0.8em 0.8em 0 0;
}
body:not(.home) table.list td:last-child {
	padding: 0.8em 0.8em 0.8em 0;
}
body:not(.home) table.list.has-category td {
	display: inline-block;
	border-bottom: 0;
}
body:not(.home) table.list.has-category td:first-child {
	padding: .8em 0 0;
}
body:not(.home) table.list.has-category td:nth-child(2) {
	padding: .8em 0 0;
}
body:not(.home) table.list.has-category td:nth-child(3) {
	padding: 0.8em 0.8em 0 0;
}
body:not(.home) table.list.has-category td.category {
	padding: 0.8em 0.8em 0 0;
	width: calc(100% - 10em);
}
body:not(.home) table.list.has-category td:last-child {
	padding: 0.4em 0.8em 0.8em 10em;
	width: 100%;
	border-bottom: 1px solid #ddd;
}
body:not(.home) table.list.has-category tr:last-child td:last-child {
	border-bottom: none;
}

@media only screen and (max-width: 480px) {
	body:not(.home) table.list {
		line-height: 1.6;
	}
	body:not(.home) table.list td {
		display: inline-block;
		border-bottom: 0;
	}
	body:not(.home) table.list td:first-child {
		padding: .8em 0 0;
	}
	body:not(.home) table.list td:nth-child(2) {
		padding: .8em 0 0;
	}
	body:not(.home) table.list td:nth-child(3) {
		padding: 0.8em 0.8em 0 0;
	}
	body:not(.home) table.list td.category {
		padding: 0.8em 0.8em 0 0;
		width: calc(100% - 10em);
	}
	body:not(.home) table.list td:last-child {
		padding: 0.4em 0.8em 0.8em 0.8em;
		width: 100%;
		border-bottom: 1px solid #ddd;
	}
	body:not(.home) table.list tr:last-child td:last-child {
		border-bottom: none;
	}
	body:not(.home) table.list td:first-child,
	body:not(.home) table.list.has-category td:first-child {
		padding: 0.8em 0 0 0.8em;
	}
	body:not(.home) table.list.has-category td.category {
		display: block;
		width: 100%;
		padding: 0.2em 1em 0;
		text-align: left;
		font-size: .875em;
	}
	body:not(.home) table.list.has-category td.category li {
		width: 8em;
		text-align: center;
		margin: 0 0.4em 0.5em 0;
		padding: 0.15em 0.8em 0.1em;
	}
	body:not(.home) table.list.has-category td.category li:last-child {
		margin-right: 0;
	}
	body:not(.home) table.list.has-category td:last-child {
		padding: 0 0.8em 0.8em;
	}
}

.en table.list td:nth-child(3):before {
	content: ", ";
}

.en.home table.list td:nth-child(2) {
	padding-right: .7em;
}

.en.home table.list td:nth-child(3) {
	display: none;
}

body:not(.home).en table.list .hover td:nth-child(3) {
	border-right-color: #fff;
}


/*───────────────────────────────────────────────────────
	SP時にJSで加工するテーブル
─────────────────────────────────────────────────────────*/

body.sp .sp-js-table {
	border: 0;
	border-collapse: separate;
	border-bottom: 1px solid #ddd;
}
body.sp .sp-js-table thead {
	display: none;
}
body.sp .sp-js-table tbody .sp-js-header {
	background: #f7f7f7;
}
body.sp .sp-js-table tbody th,
body.sp .sp-js-table tbody td {
	display: table;
	table-layout: fixed;
	width: 100%;
	border: 0 !important;
	border-collapse: separate;
	padding: 0 !important;
}
body.sp .sp-js-table tbody .th,
body.sp .sp-js-table tbody .td {
	display: table-cell;
	vertical-align: middle;
	padding: 5px;
	position: relative;
}
body.sp .sp-js-table tbody .th {
	background: #d9f1b5;
	border-left: 1px solid #ddd;
	border-right: 1px solid #ddd;
	border-top: 1px solid #fff;
}
body.sp .sp-js-table tbody .th:empty {
	display: none;
}
body.sp .sp-js-table tbody .th:empty + .td {
	border-left: 1px solid #ddd;
}
body.sp .sp-js-table tbody .th br {
	display: none;
}
body.sp .sp-js-table tbody .td {
	border-right: 1px solid #ddd;
	border-top: 1px solid #ddd;
}
body.sp .sp-js-table tbody tr:first-child .sp-js-header .th {
	border-top-color: #ddd;
}
body.sp .sp-js-table tfoot {
	display: table;
	width: 100%;
}
body.sp .sp-js-table tfoot > tr:first-child > * {
	border-top-width: 3px;
	border-color: #ddd;
}
body.sp .sp-js-table tfoot th,
body.sp .sp-js-table tfoot td {
	display: table-cell;
	border: 0;
}
body.sp .sp-js-table tfoot th {
	white-space: nowrap;
	width: 50%;
	background: #d9f1b5;
	border-left: 1px solid #ddd;
	border-right: 1px solid #ddd;
	border-top: 1px solid #fff;
}
body.sp .sp-js-table tfoot td {
	text-align: left;
	padding: 5px;
	border-right: 1px solid #ddd;
	border-top: 1px solid #ddd;
}
body.sp .sp-js-table tfoot td:first-child {
	border-left: 1px solid #ddd;
}

/* .sp-js-table内ではrowspanを使えないため、代わりの似た要素 */

.rowspan {
	margin: 0 !important;
	padding: 0 !important;
}
.rowspan li {
	list-style: none;
	padding-bottom: 1.3em;
}
.rowspan li + li {
	padding-top: 1.3em;
	border-top: 1px solid #ddd;
}
.rowspan li:last-child {
	padding-bottom: 0;
}
.sp .rowspan li {
	padding-bottom: 5px;
}
.sp .rowspan li + li {
	padding-top: 5px;
}

thead .rowspan li + li,
tbody .th .rowspan li + li {
	border-top-color: #fff;
}


/*───────────────────────────────────────────────────────
	SP時に(JSは使わないが)加工するテーブル
─────────────────────────────────────────────────────────*/

@media only screen and (max-width: 480px) {
	.sp-table {
		border: none;
		margin: auto;
	}
	.sp-table > thead {
		display: none;
	}
	.sp-table > tbody > tr > th,
	.sp-table > tbody > tr > td,
	.sp-table > tfoot > tr > th,
	.sp-table > tfoot > tr > td {
		display: block;
		width: 100%;
	}
	.sp-table > tbody > tr > th,
	.sp-table > tfoot > tr > th {
		border: none;
		background: #d9f1b5;
		padding: .4em;
	}
	.sp-table > tbody > tr.nobg > th,
	.sp-table > tfoot > tr.nobg > th {
		border-top: 1px solid #ddd;
		border-left: 1px solid #ddd;
		border-right: 1px solid #ddd;
	}
	.sp-table > tbody > tr > td,
	.sp-table > tfoot > tr > td {
		padding: 0.4em 0.4em 1em;
		border: 1px solid #ddd;
		border-top: none;
		border: none;
	}
	.sp-table.nothbg > tbody > tr > th,
	.sp-table.nothbg > tbody > tr > td,
	.sp-table.nothbg > tfoot > tr > th,
	.sp-table.nothbg > tfoot > tr > td {
		background: transparent;
		border: none;
	}
}

@media only screen and (max-width: 480px) {
	.sp-table.col2 > thead {
		display: none;
	}
	.sp-table.col2 > tbody > tr > th,
	.sp-table.col2 > tfoot > tr > th {
		letter-spacing: -.4em;
		letter-spacing: normal;
		font-size: 1.2em;
		margin-top: 1em;
		padding: 0;
	}
	.sp-table.col2 > tbody > tr > td,
	.sp-table.col2 > tfoot > tr > td {
		letter-spacing: normal;
		display: inline-block;
		width: 50%;
		padding: 0;
	}
	.sp-table.col2 > tbody > tr:first-child > th,
	.sp-table.col2 > tfoot > tr:first-child > th {
		margin-top: 0;
	}
}

@media only screen and (max-width: 480px) {
	.sp-table.col3 {
		border: none;
	}
	.sp-table.col3 > thead {
		display: none;
	}
	.sp-table.col3 > tbody > tr > th,
	.sp-table.col3 > tfoot > tr > th {
		letter-spacing: -.4em;
	}
	.sp-table.col3 > tbody > tr > td,
	.sp-table.col3 > tfoot > tr > td {
		letter-spacing: normal;
		display: inline-block;
		width: 33.3333333333%;
	}
}

/*━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
	テーブルを使わない記事の枠付リスト表示
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━*/

.archives-list {
	border-bottom: 1px solid #ddd;
}
.archives-list .archive {
	padding: 15px;
	border: 1px solid #ddd;
	border-bottom: none;
}
.archives-list .archive-detail ul {
	margin: 0;
	padding: 0;
}
.archives-list .archive-detail ul + ul {
	margin-top: 15px;
}
.archives-list .archive-detail .pdf-parent {
	list-style: none;
}
.link-to-archives {
	margin: 40px 0;
}

@media only screen and (min-width: 481px) {
	.archives-list .archive {
		display: flex;
		padding: 20px;
		border: 1px solid #ddd;
		border-bottom: none;
	}
	.archives-list .archive-date {
		flex-basis: 9em;
	}
	.archives-list .archive-detail {
		flex-basis: calc(100% - 9em);
	}
}
@media only screen and (max-width: 480px) {
	.archives-list .archive-detail ul {
		margin-top: 10px;
	}
}



/*───────────────────────────────────────────────────────
	PC/SPで出し分けるテーブル
.table-wrapper {}
.only-table {}
.pc-only-table {}
.sp-only-table {}
─────────────────────────────────────────────────────────*/
.table-wrapper {
	border: 1px solid #ddd;
	border-bottom: none;
	border-right: none;
	width: 100%;
}
body .container .table-wrapper table {
	border: none;
}
body .container .table-wrapper table th,
body .container .table-wrapper table td {
	border: none;
}
body .container .table-wrapper table thead th:not(:last-child) {
	border-right: 1px solid #fff;
}
body .container .table-wrapper table tr > * {
	border-right: 1px solid #ddd;
	border-bottom: 1px solid #ddd;
}
body .container .table-wrapper table.thbg tr:not(:last-child) > th {
	border-bottom: 1px solid #fff;
}
body .container .table-wrapper table:not(:last-child) {
	margin-bottom: 0;
}
.only-table .row-header {
	background-color: #f7f7f7;
}
.only-table tfoot > tr:first-child > * {
	border-top: 3px solid #ddd !important;
}
.only-table.thbg tfoot > tr:first-child > th {
	border-top: 3px solid #fff !important;
}
.only-table .rowspan > li {
	padding: 0;
}
.only-table .rowspan > li:not(:first-child) {
	padding-top: 5px;
}
.only-table .rowspan > li + li {
	border-top: 1px dashed #ddd;
}

/* スマホのみの指定 */
/* .sp-only-table-wrapper {
	max-width: 375px;
} */
.sp-only-table tr > th:first-child {
	width: 7em
}
.sp-only-table tfoot th {
	background: #d9f1b5;
}
.sp-only-table th,
.sp-only-table td {
	padding: 5px !important;
}
.sp-only-table .rowspan p {
	margin: 0;
}

/* 出し分け */
.pc-only-table-wrapper {
	display: block;
}
.pc-only-table {
	display: table;
}
.sp-only-table-wrapper,
.sp-only-table {
	display: none;
}
@media all and (max-width: 600px) {
	.pc-only-table-wrapper,
	.pc-only-table {
		display: none;
	}
	.sp-only-table-wrapper {
		display: block;
	}
	.sp-only-table {
		display: table;
	}
}

/*━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
	左右振り分け(floatで並べる＝画像の下への回り込み有り)
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━*/

.float-right {
	float: right;
	margin-left: 20px;
}
.float-right.last {
	margin-left: 0;
}
.float-right .small {
	line-height: 1.2;
}
.float-right div + .small {
	margin-top: .5em;
}
@media only screen and (max-width: 750px) {
	.float-right {
		float: none;
		margin-left: auto;
		margin-right: auto;
		text-align: center;
	}
}

.float-left {
	float: left;
	margin-right: 20px;
}
.float-left.last {
	margin-right: 0;
}
@media only screen and (max-width: 750px) {
	.float-left {
		float: none;
		margin-left: auto;
		margin-right: auto;
		text-align: center;
	}
}
.float-left .small {
	line-height: 1.2;
}
.float-left div + .small {
	margin-top: .5em;
}

.float-none {
	clear: both;
	margin-top: 1em;
}

.float-parent {
	margin-bottom: 1em;
}
.float-parent > p {
	margin-top: 0;
}
.float-parent + h2,
.float-parent + h3,
.float-parent + h4,
.float-parent + h5,
.float-parent + h6 {
	margin-top: 0 !important;
}

/*━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
	段組(画像の下への回り込み無し)
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━*/

/*=== 単純な2分割(ウィンドウサイズに合わせてどんどん縮小) ===*/
/*非推奨*/
.full {
	margin: 0 -2.5% 2.6em;
}
@media only screen and (min-width: 1001px) {
	.full {
		margin: 0 -100px 2.6em;
	}
}
@media only screen and (max-width: 480px) {
	.full {
		margin-bottom: 0;
	}
}
.full img {
	width: 100%;/*強制的に100%表示*/
	height: auto;
}
.half {
	letter-spacing: -.4em;
	margin-bottom: 2.6em;
}
.half > div {
	letter-spacing: normal;
	display: inline-block;
	vertical-align: top;
	width: 50%;
}
@media only screen and (max-width: 480px) {
	.half > div {
		width: 100%;
	}
}

/*=== PCは画像を左右にばらけさせ、スマホでは画像を本文の下に ===*/

/*PCではテキストが左*/
.pc-txt-left {
	overflow: hidden;
}
.pc-txt-left *[class^="txt"] {
	float: left;
}
.pc-txt-left .txt {
	width: 43%;
}
/*txt:img = 2:1*/
.pc-txt-left .txt3-2 {
	width: 65%;
}
.pc-txt-left *[class^="txt"] > p {
	margin-top: 0;
}
.pc-txt-left *[class^="txt"] > p:last-child {
	margin-bottom: 0 !important;
}
.pc-txt-left *[class^="img"] {
	float: right;
	padding-left: 4%;
/*	margin-bottom: 2.6em;*/
}
.pc-txt-left .img {
	width: 57%;
}
.pc-txt-left .img3-1 {
	width: 35%;
}
.pc-txt-left .img > img + img {
	margin-top: 7px;
}

@media only screen and (max-width: 480px) {
	.pc-txt-left *[class^="txt"] {
		margin-bottom: 3em !important;
		float: none !important;
		width: 100% !important;
	}
	.pc-txt-left *[class^="img"] {
		padding-left: 0 !important;
		float: none !important;
		width: 100% !important;
	}
}

/*PCではテキストが右*/
.pc-txt-right {
	overflow: hidden;
}
.pc-txt-right *[class^="txt"] {
	float: right;
}
.pc-txt-right .txt {
	width: 43%;
}
/*txt:img = 2:1*/
.pc-txt-right .txt3-2 {
	width: 65%;
}
.pc-txt-right *[class^="txt"] > p {
	margin-top: 0;
}
.pc-txt-right *[class^="txt"] > p:last-child {
	margin-bottom: 0 !important;
}
.pc-txt-right *[class^="img"] {
	float: left;
	padding-right: 4%;
}
.pc-txt-right .img {
	width: 57%;
}
.pc-txt-right .img3-1 {
	width: 35%;
}
@media only screen and (max-width: 480px) {
	.pc-txt-right *[class^="txt"] {
		float: none;
		width: 100%;
	}
	.pc-txt-right *[class^="txt"]:not(:last-child) {
		margin-bottom: 3em;
	}
	.pc-txt-right *[class^="img"] {
		padding-right: 0;
		float: none;
		width: 100%;
	}
}

/*=== 2段～4段組み ===*/
.one-half,
.one-third,
.quarter {
	letter-spacing: -.4em;
}
.one-half > div,
.one-third > div,
.quarter > div {
	display: inline-block;
	letter-spacing: normal;
	margin-bottom: 1em;
	vertical-align: top;
}

.one-half > div {
	width: 49.5%;
	margin-right: 1%;
}
.one-half > div:nth-child(2n) {
	margin-right: 0;
}
@media only screen and (max-width: 480px) {
	.one-half > div {
		display: block;
		width: 100%;
		margin-right: 0;
	}
}
.one-half > div h2 + img,
.one-half > div h3 + img,
.one-third > div h2 + img,
.one-third > div h3 + img,
.quarter > div h2 + img,
.quarter > div h3 + img {
	margin-top: -15px;
}

/*3分割（100%を、33%,1%,33%,1%,32%に分割）*/
@media only screen and (min-width: 769px) {
	.one-third > div {
		width: 32%;
		margin-right: 2%;
	}
	.one-third > div:nth-child(3n) {
		width: 32%;
		margin-right: 0;
	}
}
@media only screen and (max-width: 768px) and (min-width: 481px) {
	.one-third > div {
		width: 49%;
		margin-right: 2%;
	}
	.one-third > div:nth-child(2n) {
		width: 49%;
		margin-right: 0;
	}
}
@media only screen and (max-width: 480px) {
	.one-third > div {
		display: block;
		width: 100%;
		margin-right: 0;
	}
}
/*@media only screen and (min-width: 769px) {
	.one-third > div {
		width: 33%;
		margin-right: 1%;
	}
	.one-third > div:nth-child(3n) {
		width: 32%;
		margin-right: 0;
	}
}
@media only screen and (max-width: 768px) and (min-width: 481px) {
	.one-third > div {
		width: 49%;
		margin-right: 2%;
	}
	.one-third > div:nth-child(2n) {
		width: 49%;
		margin-right: 0;
	}
}
@media only screen and (max-width: 480px) {
	.one-third > div {
		display: block;
		width: 100%;
		margin-right: 0;
	}
}*/

/*3分割（101%を、33%,1%,33%,1%,33%に分割）*/
/*@media only screen and (min-width: 769px) {
	.one-third.fixed > div:nth-child(3n) {
		width: 33%;
		margin-right: -1%;
	}
}
@media only screen and (max-width: 480px) {
	.one-third.fixed > div:nth-child(3n) {
		margin-right: 0;
	}
	.one-third.fixed > div:nth-child(3n) > div:nth-child(3n) {
		width: 100%;
		margin-right: 0%;
	}
}*/

/*4分割*/
.quarter > div {
	width: calc((100% - 3%) / 4);
	margin-right: 1%;
	text-align: center;
}
.quarter > div:nth-child(4n) {
	margin-right: 0;
}
@media only screen and (max-width: 480px) {
	.quarter > div {
		display: block;
		width: 100%;
		margin-right: 0;
	}
	.quarter > div:nth-child(4n) {
		width: 100%;
	}
}

.center + .one-half,
.center + .one-third,
.center + .quarter {
	margin-top: 1%;
}
@media only screen and (max-width: 480px) {
	.center + .one-half,
	.center + .one-third,
	.center + .quarter {
		margin-top: 1em;
	}
}
.one-half > p.caption,
.one-third > p.caption,
.quarter > p.caption {
	margin: 0;
}

/*=== サイドバー ===*/
.sidebar {
	font-size: 14px;
	/*font-size: 1.4rem;*/
	line-height: 1.41;
	text-align: right;
}
.sidebar > div {
	background: url(https://www.jnfl.co.jp/ja/assets/common/images/sidebar/bottom-to-right.png) right bottom no-repeat;
	padding-bottom: 35px;
}
.pc .sidebar > div.pickup {
	margin-top: 24px;
}
.sidebar ul {
	margin: 0 !important;
	padding: 0;
	list-style: none;
}
.sidebar a {
	display: block;
	width: 100%;
	-webkit-transform: translateZ(0);
	transform: translateZ(0);
	box-shadow: 0 0 1px transparent;
	-webkit-backface-visibility: hidden;
	backface-visibility: hidden;
	-moz-osx-font-smoothing: grayscale;
	position: relative;
}
.sidebar a:link,
.sidebar a:visited,
.pc .sidebar a:hover,
.pc .sidebar a:active,
.pc .sidebar a:focus,
.sidebar a.touchhover {
	color: #1b1b1b;
}
.sidebar a:before {
	content: "";
	position: absolute;
	z-index: -1;
	top: 0;
	left: 0;
	right: 0;
	bottom: 0;
	background: #4faf00;
	-webkit-transform: scaleX(0);
	transform: scaleX(0);
	-webkit-transform-origin: 0 50%;
	transform-origin: 0 50%;
	-webkit-transition-property: transform;
	transition-property: transform;
	-webkit-transition-duration: 0.3s;
	transition-duration: 0.3s;
	-webkit-transition-timing-function: ease-out;
	transition-timing-function: ease-out;
}
.home .sidebar a:before {
	background: #eee;
}
.pc .sidebar a:hover:before,
.pc .sidebar a:focus:before,
.pc .sidebar a:active:before,
.sidebar a.touchhover:before {
	-webkit-transform: scaleX(1);
	transform: scaleX(1);
}
.sidebar ul > li a {
	border-left: 7px solid #4faf00;
}
body.pc:not(.home) .sidebar ul > li a:hover,
body.pc:not(.home) .sidebar ul > li a:focus,
body.pc:not(.home) .sidebar ul > li a:active,
body:not(.home)	 .sidebar ul > li a.touchhover {
	border-left-color: #4faf00;
}
.sidebar .contact {
	border-left: 7px solid #959595;
	padding: 10px 12px;
}
.sidebar .sidebar-social-icons {
	letter-spacing: -.4em;
	text-align: right;
}
.sidebar .sidebar-social-icons a {
	display: inline-block;
	letter-spacing: normal;
	margin-left: 8px;
	-webkit-transition: all 0.3s linear;
	transition: all 0.3s linear;
}
.sidebar .sidebar-social-icons a:hover {
	opacity: .7;
}
.sidebar .sidebar-social-icons a:before {
	content: none !important;
}
.sidebar .sidebar-social-icons a span {
	width: auto !important;
	padding: 0 !important;
}
.sidebar li.inquiry a {
	border-left: 7px solid #0099d6;
}
.sidebar > div > ul {
	border-bottom: 1px solid #d3d3d3;
}
.sidebar > div > ul > li {
	border-top: 1px solid #d3d3d3;
}
.sidebar > div > ul > li {
	position: relative;
}
.sidebar > div > ul > li > a:after {
	content: "";
	display: block;
	background-image: url(https://www.jnfl.co.jp/ja/assets/common/images/sprite/sprite.png);
	background-position: -207.5px 0px;
	width: 12px;
	height: 20px;
	background-size: 1405px 44px;
	width: 13px;
	height: 20px;
	position: absolute;
	top: 35%;
	right: 8px;
}
.pc .sidebar > div > ul > li > a:hover:after,
.pc .sidebar > div > ul > li > a:focus:after,
.pc .sidebar > div > ul > li > a:active:after,
.sidebar > div > ul > li > a.touchhover:after {
	background-image: url(https://www.jnfl.co.jp/ja/assets/common/images/sprite/sprite.png);
	background-position: -88.5px 0px;
	width: 12px;
	height: 20px;
	background-size: 1405px 44px;
}
.sidebar a {
	margin: 1px 0;
	padding: 0;
}
.sidebar .title {
	font-size: 12px;
	/*font-size: 1.2rem;*/
	line-height: 1.8;
	margin: 0 0 0 auto;
	padding: 0 0 0 7px;
	text-align: center;
	display: inline-block;
	min-width: 130px;
	color: #fff;
	background: #4faf00 url(https://www.jnfl.co.jp/ja/assets/home/images/sidebar-title-bg.png) left bottom no-repeat;
}
.sidebar .title a:link,
.sidebar .title a:visited,
.sidebar .title a:hover,
.sidebar .title a:active,
.sidebar .title a:focus {
	color: inherit;
	text-decoration: none;
	margin: 0;
	padding: 0;
}
.sidebar ul {
	text-align: left;
}
.sidebar li.inquiry:hover:after {
	background-image: url(https://www.jnfl.co.jp/ja/assets/common/images/sprite/sprite.png);
	background-position: -224.5px 0px;
	width: 12px;
	height: 20px;
	background-size: 1405px 44px;
}
.sidebar .inquiry .title {
	background-color: #0099d6;
}

.sidebar .inquiry .contact:after {
	content: none;
}
.sidebar .inquiry .contact,
.sidebar .inquiry .social {
	background: #fff;
}
.sidebar br {
	display: none;
}
.pc .sidebar br {
	display: inline;
}

@media only screen and (max-width: 768px) {
	.pc .sidebar br {
		display: none;
	}
}

.sidebar .text a,
.sidebar .contact a {
	display: inline;
	border: none;
}

.home .sidebar a span {
	display: inline-block;
	vertical-align: middle;
	width: 234px;
	width: calc(100% - 60px);
	padding: 0 3em 0 1em;
}

.home .sidebar .icon {
	width: 80px;
	height: auto;
	display: inline-block;
	vertical-align: middle;
	background: #eee;
}
.home .sidebar .icon + span {
	display: inline-block;
	vertical-align: middle;
	width: 200px;
	width: calc(100% - 80px);
}

.home .sidebar .noicon {
	display: block;
	min-height: 60px;
	background: #fff;
	padding: 1.2em 0;
	text-align: right;
}
.home .sidebar .noicon span {
	width: 100%;
}

.home .sidebar .noicon.center {
	text-align: center;
}

.home .sidebar li {
	min-height: 60px;
}


/*=== 余談的な表示 ===*/
.aside,
.addition,
.detail-data {
	background: #eee;
	margin: auto;
	padding: 5%;
}
.aside h1,
.addition h1,
.detail-data h1 {
	font-size: 30px;
	font-size: 3rem;
	text-align: center;
}
@media only screen and (max-width: 480px) {
	.aside h1,
	.addition h1,
	.detail-data h1 {
		text-align: left;
	}
}
.aside .images,
.addition .images,
.detail-data .images {
	background: #fff;
}
.aside-line {
	border: solid 1px #000;
	padding: 5%;
}

/*━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
	カルーセル
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━*/

.carousel_block {
	margin: 0 auto 150px;
}
@media only screen and (max-width: 650px) {
	.carousel_block {
		margin: 0 auto 40px;
	}
}
.carousel_banner {
	margin: 0 auto;
	overflow: hidden;
}
.carousel_banner ul {
	overflow: hidden;
	position: relative;
	left: 0;
	margin: 0 !important;
	padding: 0;
}
.carousel_banner li {
	overflow: hidden;
	float: left;
}
.carousel_banner a {
	display: block;
}
.carousel_banner a:after {
	content: none;
}

.crsl_btn {
	margin: 0 auto;
	position: relative;
	top: -72px;
}
.crsl_btn.few {
	visibility:hidden;
}
@media only screen and (max-width: 650px) {
	.crsl_btn.few {
		visibility:visible;
	}
}
.crsl_btn .prevbtn {
	background-image: url(https://www.jnfl.co.jp/ja/assets/common/images/sprite/sprite.png);
	background-position: -122.5px 0px;
	width: 12px;
	height: 20px;
	background-size: 1405px 44px;
	position: absolute;
	left: -27px;
	cursor: pointer;
}
.crsl_btn .nextbtn {
	background-image: url(https://www.jnfl.co.jp/ja/assets/common/images/sprite/sprite.png);
	background-position: -88.5px 0px;
	width: 12px;
	height: 20px;
	background-size: 1405px 44px;
	position: absolute;
	right: -27px;
	cursor: pointer;
}


/*━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
	装飾パーツ
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━*/

/*=== 注釈 ===*/

ul.note li {
	list-style: none;
}

.note {
	margin-left: 1em;
	text-indent: -1em;
	text-align: left;
	line-height: 1.41 !important;
	list-style: none;
	margin-bottom: 1em !important;
}

.note + p:not(.note),
.note + div:not(.note),
.note + table {
	margin-top: 2.6em;
}
/*脚注*/
.footnote {
	font-size: .95em;
	margin: 4em 2.5em;
}
.footnote li {
	margin-bottom: .8em;
}
.footnote .count {
	padding: 0;
	counter-reset: counter;
}
.footnote .count li {
	margin-bottom: .5em;
	padding-left: 3em;
	position: relative;
	list-style: none;
	line-height: 1.41;
}
.footnote .count li:before {
	counter-increment: counter;
	content: "※" counter(counter);
	position: absolute;
	left: 0;
}
.footnote .tyuu {
	padding: 0;
	counter-reset: tyuu;
}
.footnote .tyuu li {
	margin: 0 0 0.5em;
	padding-left: 3em;
	position: relative;
	list-style: none;
	line-height: 1.41;
}
.footnote .tyuu li:before {
	counter-increment: tyuu;
	content: "注" counter(tyuu);
	position: absolute;
	left: 0;
}
.footnote ul.em,
.footnote li.em {
	padding-left: 0;
	list-style: none;
}
@media only screen and (max-width: 480px) {
	.footnote {
		margin: 4em 1em;
	}
}

/*ぶら下げ*/
.em1 {
	padding-left: 0;
	list-style: none;
	margin-left: 1em;
	text-indent: -1em;
}
.em1h {
	padding-left: 0;
	list-style: none;
	margin-left: 1.5em;
	text-indent: -1.5em;
}
.em2 {
	padding-left: 0;
	list-style: none;
	margin-left: 2em;
	text-indent: -2em;
}
.em2h {
	padding-left: 0;
	list-style: none;
	margin-left: 2.5em;
	text-indent: -2.5em;
}
.em3 {
	padding-left: 0;
	list-style: none;
	margin-left: 3em;
	text-indent: -3em;
}
.em3h {
	padding-left: 0;
	list-style: none;
	margin-left: 3.5em;
	text-indent: -3.5em;
}
.em4 {
	padding-left: 0;
	list-style: none;
	margin-left: 4em;
	text-indent: -4em;
}
.em4h {
	padding-left: 0;
	list-style: none;
	margin-left: 4.5em;
	text-indent: -4.5em;
}
.em5 {
	padding-left: 0;
	list-style: none;
	margin-left: 5em;
	text-indent: -5em;
}
.em5h {
	padding-left: 0;
	list-style: none;
	margin-left: 5.5em;
	text-indent: -5.5em;
}
.em6 {
	padding-left: 0;
	list-style: none;
	margin-left: 6em;
	text-indent: -6em;
}
.em7 {
	padding-left: 0;
	list-style: none;
	margin-left: 7em;
	text-indent: -7em;
}
.em8 {
	padding-left: 0;
	list-style: none;
	margin-left: 8em;
	text-indent: -8em;
}
.em9 {
	padding-left: 0;
	list-style: none;
	margin-left: 9em;
	text-indent: -9em;
}
.em10 {
	padding-left: 0;
	list-style: none;
	margin-left: 10em;
	text-indent: -10em;
}
.em11 {
	padding-left: 0;
	list-style: none;
	margin-left: 11em;
	text-indent: -11em;
}
.em12 {
	padding-left: 0;
	list-style: none;
	margin-left: 12em;
	text-indent: -12em;
}
.em13 {
	padding-left: 0;
	list-style: none;
	margin-left: 13em;
	text-indent: -13em;
}
.em14 {
	padding-left: 0;
	list-style: none;
	margin-left: 14em;
	text-indent: -14em;
}
.em15 {
	padding-left: 0;
	list-style: none;
	margin-left: 15em;
	text-indent: -15em;
}
.em16 {
	padding-left: 0;
	list-style: none;
	margin-left: 16em;
	text-indent: -16em;
}
.em17 {
	padding-left: 0;
	list-style: none;
	margin-left: 17em;
	text-indent: -17em;
}
.em18 {
	padding-left: 0;
	list-style: none;
	margin-left: 18em;
	text-indent: -18em;
}
.em19 {
	padding-left: 0;
	list-style: none;
	margin-left: 19em;
	text-indent: -19em;
}
.em20 {
	padding-left: 0;
	list-style: none;
	margin-left: 20em;
	text-indent: -20em;
}

/*=== 添付 ===*/

.attachment {
	margin-bottom: 2.6em;
}
	.attachment ul {
		font-size: .95em;
		margin: auto 2.2em;
		padding-left: 0;
	}
	.attachment li {
		margin-left: 1.5em;
	}
		.attachment li.pdf-parent {
			list-style: none;
		}
		.attachment li .pdf {
			margin-left: -1.5em;
			text-indent: 1.5em;
		}

.attach-title {
	font-size: 1.2em;
	padding: .5em 0;
}

.attach-title:empty {
	display: none;
}

.attachment ul + .attach-title {
	margin-top: -1em;
}

/*=== 添付（余白無し） ===*/
.attachment-nostyle ul {
	list-style: none;
	margin: 0;
	padding: 0;
}
	.attachment-nostyle li.pdf-parent:nth-child(n+2) {
		margin-top: .5em;
	}

/*=== 出典 ===*/

.cite {
	text-align: right;
	margin-top: -2em;
	font-size: .95em;
}

@media only screen and (max-width: 480px) {
	.cite {
		text-align: left;
		margin-top: -2em;
		margin-left: 3em;/*「出典：」で3文字*/
		text-indent: -3em;/*「出典：」で3文字*/
	}
}

/*=== 画像サムネイルクリックでメイン画像変更 ===*/

/*共通部分*/
ul.thumbs li {
	transition: opacity 0.3s ease-out;
}
ul.thumbs li:hover {
	opacity: .7;
	cursor: pointer;
}
ul.thumbs li img {
	width: 100%;
	display: block;
}
ul.thumbs .active {
	border-bottom: 4px solid #4faf00;
}

/*サムネイルの幅20%で5個まで1行に並べる版*/
ul.thumbs.block {
	list-style: none;
	letter-spacing: -.4em;
	margin-top: 1em;
	padding: 0;
}
ul.thumbs.block li {
	letter-spacing: normal;
	display: inline-block;
	vertical-align: top;
	width: 20%;
}

/*サムネイルの幅不定で1行に全て並べる版*/
ul.thumbs.table {
	display: table;
	width: 100%;
	table-layout: fixed;
	margin-top: 0;
	padding: 0;
}
ul.thumbs.table li {
	display: table-cell;
	vertical-align: top;
}


/*━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
	施設選択
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━*/

.facility-selector {
	display: flex;
	gap: 1px;
	width: 100%;
	padding: 0 0 1px;
	font-size: 16px;
	font-size: 1.6rem;
	list-style: none;
	letter-spacing: -.4em;
	border-bottom: 1px solid #ddd;
}
.facility-selector li {
	flex: 1;
	letter-spacing: normal;
	display: inline-block;
	vertical-align: bottom;
	text-align: center;
	background: #eee;
	position: relative;
}
.facility-selector li:before {
	content: "";
	width: calc(100% + 2px);
	height: 6px;
	background: #fff;
	position: absolute;
	top: -2px;
	left: -1px;
}
.facility-selector li.active {
	padding-top: 2px;
	margin-bottom: -2px;
	background: #fff;
	border-left: 1px solid #ddd;
	border-right: 1px solid #ddd;
}
.facility-selector li.active:before {
	content: "";
	width: calc(100% + 2px);
	height: 6px;
	border-bottom: 0;
	background: #4faf00;
	position: absolute;
	top: -2px;
	left: -1px;
}

.facility-selector a {
	display: block;
	padding: 1.65em 0 1.4em;
}
.facility-selector a:link,
.facility-selector a:visited {
	color: #1b1b1b;
	border-bottom: 0;
}
.pc .facility-selector a:hover,
.pc .facility-selector a:active,
.pc .facility-selector a:focus,
.facility-selector a.touchhover {
	background: #e6e6e6;
}
.facility-selector li.active a {
	color: #1b1b1b;
	cursor: text;
}
.pc .facility-selector li.active a:hover,
.facility-selector li.active a.touchhover {
	background: transparent;
	text-decoration: none;
}

.facility-selector br {
	display: none;
}

@media only screen and (max-width: 480px) {
	.facility-selector a {
		padding: 1.4em 0 1em;
		font-size: 1.5rem;
		line-height: 1.5em;
		position: relative;
		top: 50%;
		-webkit-transform: translateY(-50%);
		-ms-transform: translateY(-50%);
		transform: translateY(-50%);
	}
	.facility-selector br {
		display: inline;
	}
}


/*━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
	オーバーレイ
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━*/

.overlay-open.block {
	position: relative;
	display: block;
	text-align: center;
}
.overlay-open.block:before {
	content: "";
	display: block;
	position: absolute;
	left: 10px;
	top: 15px;
	background-image: url(https://www.jnfl.co.jp/ja/assets/common/images/sprite/sprite.png);
	background-position: -417px 0px;
	width: 33px;
	height: 33px;
	background-size: 1405px 44px;
	border-radius: 50%;
	box-shadow: 2px 2px 2px rgba(0, 0, 0, 0.8);
}
.overlay-open.block:hover:before {
	box-shadow: 1px 1px 2px rgba(0, 0, 0, 0.8);
}
.overlay-open.block:hover:after {
	content: "Click to View Large Size";
	font-size: 8px;
	font-size: 0.8rem;
	position: absolute;
	left: 0;
	right: 0;
	bottom: 0;
	background: rgba(0, 0, 0, 0.6);
	color: #fff;
	padding: .2em;
}
.overlay-open.block:link,
.overlay-open.block:visited,
.overlay-open.block:hover,
.overlay-open.block:active,
.overlay-open.block:focus {
	border-bottom: none;
	background: transparent;
}

#overlay {
	z-index: 9999999;
	display: none;
	position: fixed;
	top: 0;
	left: 0;
	width: 100%;
	height: 120%;
	background-color: rgba(0, 0, 0, 0.75);
}

#overlay-contents {
	z-index: 10000000;
	display: none;
	position: absolute;
	top: 0;
	left: 0;
	height: 0;
	width: 100%;
}

#overlay-contents > div {
	background-color: #FFFFFF;
	width: 85%;
	max-width: 980px;
	margin: 0 auto;
	padding: 3.5%;
	position: relative;
	display: none;
}

#overlay-contents > div div.contents {
	width: 95%;
	margin: 0 auto;
	padding: 0;
	overflow: hidden;
}

#overlay-contents > div h2 {
	font-size: 1.5rem;
	text-indent: 1rem;
	margin-bottom: 0.5rem;
}

#overlay-contents > div div.h2-border {
	width: 100%;
	height: 1px;
	display: block;
}

#overlay-contents > div div.h2-border:before {
	content: "";
	display: block;
	width: 25%;
	border-bottom: 2px #4faf00 solid;
	float: left;
}

#overlay-contents > div div.h2-border:after {
	content: "";
	display: block;
	width: 75%;
	border-bottom: 2px #bfbfbf solid;
	float: right;
}

#overlay-contents span.overlay-close {
	position: absolute;
	top: -22px;
	right: -22px;
	cursor: pointer;
}

#overlay-contents img {
	max-width: 100%;
	width: auto;
	height: auto;
}

#overlay-contents p {
	line-height: 28px;
	margin: 0 0 2.5rem;
}

#overlay-contents p.caption {
	font-size: 0.8rem;
	line-height: 1.5rem;
	text-align: center;
	margin: 0;
}

#overlay-contents span.notes {
	display: block;
	font-size: 0.8rem;
	text-align: right;
}

#overlay-contents .arrow {
	position: absolute;
	top: 50%;
	right: -15%;
	text-align: center;
	white-space: nowrap;
}

#overlay-contents .arrow span {
	display: block;
	margin-top: -50%;
	line-height: normal;
	font-size: 0.5rem;
	text-align: left;
}


/*━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
	タイトル
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━*/

/*word-break*/
h1, h2, h3, h4, h5, h6 {
	word-break: break-all;
}
.en h1, .en h2, .en h3, .en h4, .en h5, .en h6 {
	word-break: break-word;
}

/*設定*/
.container h1,
.container h2,
.container h3,
.container h4 {
	line-height: 1.41;
}
.container h5,
.container h6 {
	line-height: 1.41;
	margin-bottom: 15px;
}
.container h1 {
	font-weight: 300;
	font-size: 40px;
	font-size: 4rem;
	margin: 20px 0 35px;
	padding: 16px 0;
}
@media only screen and (max-width: 480px) {
	.container h1 {
		font-size: 30px;
		font-size: 3rem;
		padding: 10px 0;
		margin: 0 0 1.5em;
	}
}
.container h2,
.box .title {
	font-weight: 300;
	font-size: 30px;
	font-size: 3rem;
	position: relative;
	padding: 8px 0 4px;
}
@media only screen and (max-width: 480px) {
	.container h2,
	.box .title {
		font-size: 24px;
		font-size: 2.4rem;
		margin-bottom: 20px;
	}
}
.container h2 {
	border-bottom: 2px solid #e6e6e6;
	margin-bottom: 2em;
}
.container h2:before {
	content: "";
	display: block;
	position: absolute;
	border-bottom: 2px solid #4faf00;
	left: 0;
	bottom: -2px;
	width: 70%;
}
.container h2:after {
	content: "";
	display: block;
	position: absolute;
	background: url(https://www.jnfl.co.jp/ja/assets/common/images/stripe.png);
	left: 0;
	bottom: -14px;
	width: 100%;
	height: 12px;
}

.box .title {
	border-bottom: 1px solid #fff;
}

.container h3,
.month-header {
	font-weight: 300;
	font-size: 26px;
	font-size: 2.6rem;
	padding: 8px 0 8px;
	margin: 30px 0;
	border-bottom: 1px solid #e6e6e6;
}
@media only screen and (max-width: 480px) {
	.container h3,
	.month-header {
		font-size: 22px;
		font-size: 2.2rem;
		margin-bottom: 20px;
	}
}
.container h4 {
	font-weight: 300;
	font-size: 20px;
	font-size: 2rem;
	margin: 16px 0;
}
article h1 {
	font-weight: 300;
	font-size: 26px;
	font-size: 2.6rem;
	padding: 16px 0 16px;
}

.ja .index2:not(.release) .container h1 {
	margin-bottom: 14px;
}
.container h5 {
	font-weight: 300;
	padding: 0.4em 0.8em;
	background-color: #eee;
	border-left: 4px solid #ccc;
}

.month-header {
	margin-top: 2em;
	margin-bottom: 0;
	border: none;
}

.index h3 {
	font-size: 1.6em;
	font-weight: 300;
}


/*━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
	ボタン類
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━*/

.button {
	font-size: 16px;
	font-size: 1.6rem;
	margin: 0 0 2.6em;
	padding: 0;
	letter-spacing: -.4em;
}
.button li {
	letter-spacing: normal;
	list-style: none;
}
.button a {
	display: block;
	-webkit-transition: all 0.3s linear;
	transition: all 0.3s linear;
	text-decoration: none;
	position: relative;
	margin: auto;
	line-height: 1.41;
}
.pc .button a:hover,
.pc .button a:active,
.pc .button a:focus
.button a.touchhover {
	text-decoration: none;
}
.button a:before,
.button a:after {
	position: absolute;
	margin: auto;
}

.button.large {
	width: 490px;
	max-width: 100%;
	display: inline-block;
	margin-right: 20px;
}
.button.large:nth-child(2n) {
	margin-right: 0;
}
.button.large li {
	margin: 0 auto 1em;
	text-align: justify;
	text-justify: inter-ideograph;
}
@media only screen and (max-width: 480px) {
	.button.large li {
		display: block;
		width: 90%;
	}
}

.button.large li > span {
	display: block;
	background: #aaa;
	color: #fff;
	text-align: center;
	padding: 12px 20px;
	line-height: 1.41;
}
.button.large li a {
	text-align: left;
	color: #fff;
	background: #7bcb0a;
	margin: -13px -20px;
	padding: 13px 20px 13px 65px;
	border: none;
}
.button.large li a:before {
	content: "";
	position: absolute;
	left: 16px;
	top: 0;
	bottom: 0;
	margin: auto;
	background-color: #4faf00;
	border-radius: 50%;
	background-image: url(https://www.jnfl.co.jp/ja/assets/common/images/sprite/sprite.png);
	background-position: -341px 0px;
	width: 33px;
	height: 33px;
	background-size: 1405px 44px;
	-webkit-transition: background 0.3s linear;
	transition: background 0.3s linear;
}
.pc .button.large li a:hover,
.button.large li a.touchhover {
	background: #4faf00;
}
.pc .button.large li a:hover:before,
.button.large li a.touchhover:before {
	background-color: transparent;
}
.button.large li.black a {
	/* background: #362e2b; ボタンの色を以下へ変更（20250307） */
	background: #ed6941;
}
.button.large li.black a:before {
	/* background-color: #1b1b1b; ボタンの色を以下へ変更（20250307） */
	background-color: #e55124;
}
.pc .button.large li.black a:hover,
.button.large li.black a.touchhover {
	/* background: #1b1b1b; ボタンの色を以下へ変更（20250307） */
	background: #e55124;
}

.button.large.inline a {
	display: inline-block;
}
@media only screen and (max-width: 480px) {
	.button.large.inline a {
		display: block;
	}
}

.button.large.table {
	width: 100%;
	display: table;
	table-layout: fixed;
}
.button.large.table li {
	display: table-cell;
	vertical-align: middle;
	padding: 0 0.5em 0 0;
}
.button.large.table li:last-child {
	padding: 0 0 0 0.5em;
}
@media only screen and (max-width: 480px) {
	.button.large.table {
		display: block;
	}
	.button.large.table li {
		display: block;
		padding: 0;
	}
	.button.large.table li:last-child {
		padding: 0;
	}
}

.auto {
	width: auto !important;
}

@media only screen and (max-width: 480px) {
	.button.large.auto,
	.button.large.auto li {
		width: 100% !important;
	}
}

.back-to-troublelist {
	display: none;
	text-align: center;
	margin: 70px 0;
	width: 100%;
}
.press  .back-to-troublelist,
.detail .back-to-troublelist {
	display: block;
}
.back-to-troublelist br {
	display: none;
}
.back-to-troublelist a {
	display: block;
	position: relative;
	padding: 5.5px 20px 5.5px 27px;
	color: #000;
	background: #ddd;
	border: 2px solid #ddd;
}
.back-to-troublelist a:before {
	content: "";
	position: relative;
	display: inline-block;
	vertical-align: middle;
	left: -16px;
	width: 33px;
	height: 33px;
	top: 0;
	bottom: 0;
	margin: auto;
	background-color: #f7f7f7;
	border-radius: 50%;
	background-image: url(https://www.jnfl.co.jp/ja/assets/common/images/sprite/sprite.png);
	background-position: -379px 0px;
	width: 33px;
	height: 33px;
	background-size: 1405px 44px;
	-webkit-transition: background 0.3s linear;
	transition: background 0.3s linear;
}
.pc .back-to-troublelist a:hover,
.back-to-troublelist a.touchhover {
	background: #fff;
	text-decoration: none;
}
.back-to-troublelist span {
	display: inline-block;
	vertical-align: middle;
	text-align: left;
}

@media only screen and (max-width: 480px) {
	.back-to-troublelist br {
		display: inline;
	}
}
.back-to-page {
	text-align: center;
	margin: 70px 0;
	width: 100%;
}
.back-to-page a {
	display: block;
	position: relative;
	padding: 5.5px 20px 5.5px 27px;
	color: #000;
	background: #ddd;
	border: 2px solid #ddd;
}
.back-to-page a:before {
	content: "";
	position: relative;
	display: inline-block;
	vertical-align: middle;
	left: -16px;
	width: 33px;
	height: 33px;
	top: 0;
	bottom: 0;
	margin: auto;
	background-color: #f7f7f7;
	border-radius: 50%;
	background-image: url(https://www.jnfl.co.jp/ja/assets/common/images/sprite/sprite.png);
	background-position: -379px 0px;
	width: 33px;
	height: 33px;
	background-size: 1405px 44px;
	-webkit-transition: background 0.3s linear;
	transition: background 0.3s linear;
}
.pc .back-to-page a:hover,
.back-to-page a.touchhover {
	background: #fff;
	text-decoration: none;
}
.back-to-page span {
	display: inline-block;
	vertical-align: middle;
	text-align: left;
}

.button.medium li {
	display: inline-block;
	margin-right: 2%;
}
.button.medium li:first-child {
	margin-bottom: 2%;
}
@media only screen and (min-width: 901px) {
	.button.medium li {
		width: 18.4%;
	}
	.button.medium li:nth-child(5n) {
		margin-right: 0;
		margin-bottom: 2%;
	}
}
@media only screen and (min-width: 721px) and (max-width: 900px) {
	.button.medium li {
		width: 23.5%;
	}
	.button.medium li:nth-child(4n) {
		margin-right: 0;
		margin-bottom: 2%;
	}
}
@media only screen and (min-width: 551px) and (max-width: 720px) {
	.button.medium li {
		width: 32%;
	}
	.button.medium li:nth-child(3n) {
		margin-right: 0;
		margin-bottom: 2%;
	}
}
@media only screen and (min-width: 321px) and (max-width: 550px) {
	.button.medium li {
		width: 49%;
	}
	.button.medium li:nth-child(2n) {
		margin-right: 0;
		margin-bottom: 2%;
	}
}
@media only screen and (max-width: 320px) {
	.button.medium li {
		width: 100%;
		margin-bottom: 2%;
	}
}
.button.medium li a {
	left: 0;
	right: 0;
	top: 0;
	bottom: 0;
	border: 1px solid #ddd;
	padding: 13px 35px 13px 21px;
	background: #f0f8e5;
	color: #1b1b1b;
}
.button.medium li a:before {
	content: "";
	width: 7px;
	top: -1px;
	bottom: -1px;
	left: -1px;
	background: #4faf00;
}
.button.medium li a:after {
	content: "";
	background-image: url(https://www.jnfl.co.jp/ja/assets/common/images/sprite/sprite.png);
	background-position: -105.5px 0px;
	width: 12px;
	height: 20px;
	background-size: 1405px 44px;
	top: 0;
	bottom: 0;
	right: 7px;
}
.pc .button.medium li a:hover,
.button.medium li a .touchhover {
	border: 1px solid #4faf00;
	background: #4faf00;
	color: #fff;
}
.pc .button.medium li a:hover:before,
.button.medium li a .touchhover:before {
	content: none;
}
.pc .button.medium li a:hover:after,
.button.medium li a .touchhover:after {
	background-image: url(https://www.jnfl.co.jp/ja/assets/common/images/sprite/sprite.png);
	background-position: -241.5px 0px;
	width: 12px;
	height: 20px;
	background-size: 1405px 44px;
}

.button.medium.one {
	width: 100%;
    margin: 0 auto;
    padding: 3em 10%;
    background-color: #eee;
}
.button.medium.one li {
	width: 100%;
	display: block;
	margin-right: 0;
	margin-bottom: 1em;
}
.button.medium.one li a {
	background-color: #fff;
}
.button.medium.three li {
	width: 32%;
}
.button.medium.three li:nth-child(3n) {
	margin-right: 0;
}
@media only screen and (max-width: 550px) {
	.button.medium.three li {
		display: block;
		width: 100%;
		margin-right: 0;
	}
	.button.medium.one {
		padding: 0;
		background-color: transparent;
	}
	.button.medium.one li a {
		background-color: #f0f8e5;
	}
}

.button.medium.four li {
	width: 23.5%;
}
.button.medium.four li:nth-child(4n) {
	margin-right: 0;
}
@media only screen and (max-width: 480px) {
	.button.medium.four li {
		display: block;
		width: 100%;
		margin-right: 0;
	}
}

.button.medium.noarrow li a {
	padding-right: 13px;
}
.button.medium.noarrow li a:after {
	content: none;
}

.aside .buttons li a,
.addition .buttons li a,
.detail-data .buttons li a {
	background: #fff;
}
.pc .aside .buttons li a:hover,
.aside .buttons li a.touchhover,
.pc .addition .buttons li a:hover,
.addition .buttons li a.touchhover,
.pc .detail-data .buttons li a:hover,
.detail-data .buttons li a.touchhover {
	background: #4faf00;
}

.btn {
	font-size: 1.143em;
	margin: 2.6em 0;
	clear: both;
}
.btn a {
	display: inline-block;
	position: relative;
	padding: 1.5em;
}
.btn a:link,
.btn a:visited {
	background: #4faf00;
	color: #fff;
}
.pc .btn a:hover,
.pc .btn a:active,
.pc .btn a:focus,
.btn a.touchhover {
	background: #7bcb0a;
}


/*━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
	丸いメニュー
	元は事業のメニューだったが、他でも使うことになった物
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━*/

.cyclemenu {
	line-height: 1.7;
	margin-bottom: 2.6em;
}
.index .cyclemenu {
	margin-bottom: 0;
}
.cyclemenu > a {
	display: inline-block;
	vertical-align: top;
	outline: none;
	position: relative;
	text-decoration: none;
}
.cyclemenu > a:link {
	color: inherit;
}
.cyclemenu > a:hover {
	text-decoration: none;
}
.pc .cyclemenu > a:hover,
.pc .cyclemenu > a:active,
.pc .cyclemenu > a:focus,
.cyclemenu > a.touchhover {
	color: inherit;
}
.pc .cyclemenu > a:hover .titleimg,
.pc .cyclemenu > a:active .titleimg,
.pc .cyclemenu > a:focus .titleimg,
.cyclemenu > a.touchhover .titleimg {
	border: 10px solid #7bcb0a;
}
.pc .cyclemenu > a:hover .title,
.pc .cyclemenu > a:active .title,
.pc .cyclemenu > a:focus .title,
.cyclemenu > a.touchhover .title {
	color: #56b20a;
}
.pc .cyclemenu > a:hover {
	opacity: 1;
}
.pc .cyclemenu > a.active {
	color: inherit;
}
.pc .cyclemenu > a.active:hover {
	cursor: default;
}
.cyclemenu > a.active .titleimg {
	border: 10px solid #4faf00;
}
.cyclemenu > a.active .title {
	color: #1b1b1b;
}
.pc .cyclemenu > a.active .title:hover {
	cursor: text;
}
.cyclemenu .category > a {
	outline: none;
	position: relative;
	text-decoration: none;
}
.cyclemenu .category > a:link {
	color: inherit;
}
.cyclemenu .category > a:hover {
	text-decoration: none;
}
.pc .cyclemenu .category > a:hover,
.pc .cyclemenu .category > a:active,
.pc .cyclemenu .category > a:focus,
.cyclemenu .category > a.touchhover {
	color: inherit;
}
.pc .cyclemenu .category > a:hover .titleimg,
.pc .cyclemenu .category > a:active .titleimg,
.pc .cyclemenu .category > a:focus .titleimg,
.cyclemenu .category > a.touchhover .titleimg {
	border: 10px solid #7bcb0a;
}
.pc .cyclemenu .category > a:hover .title,
.pc .cyclemenu .category > a:active .title,
.pc .cyclemenu .category > a:focus .title,
.cyclemenu .category > a.touchhover .title {
	color: #56b20a;
}
.pc .cyclemenu .category > a:hover {
	opacity: 1;
}
.cyclemenu .category > a.active {
	color: inherit;
}
.cyclemenu .category > a.active:hover {
	cursor: default;
}
.cyclemenu .category > a.active .titleimg {
	border: 10px solid #4faf00;
}
.cyclemenu .category > a.active .title {
	color: #1b1b1b;
}
.cyclemenu .category > a.active .title:hover {
	cursor: text;
}
.cyclemenu > a {
	width: 16%;
	margin-right: 5%;
}
.cyclemenu > a:nth-child(5n) {
	margin-right: 0;
}
@media only screen and (max-width: 480px) {
	.cyclemenu > a {
		display: inline-block;
		margin-right: 0;
		margin-top: 20px;
		width: 40%;
	}
	.cyclemenu > a:nth-child(odd) {
		margin-left: 6%;
		margin-right: 8%;
	}
	.cyclemenu > a:nth-child(even) {
		margin-right: 6%;
	}
	.index2 .cyclemenu > a {
		display: block;
		width: 100%;
	}
	.index2 .cyclemenu > a:nth-child(odd) {
		margin-left: 0;
		margin-right: 0;
	}
}
.cyclemenu .titleimg {
	-webkit-transition: all 0.2s ease;
	transition: all 0.2s ease;
	display: block;
	margin: 0 auto 15px;
	border-radius: 50%;
	border: 10px solid transparent;
}
.cyclemenu .title {
	font-size: 17px;
	font-size: 1.7rem;
	text-align: center;
	margin: 0 auto 0.5em;
}
.cyclemenu .description {
	font-size: 14px;
	font-size: 1.4rem;
	margin: 0 auto 1em;
	text-align: justify;
	text-justify: inter-ideograph;
}
@media only screen and (max-width: 480px) {
	.cyclemenu .description {
		line-height: 1.5;
	}
}
.cyclemenu .ref .titleimg {
	position: relative;
}
.cyclemenu .ref:before {
	content: "参考";
	font-size: 14px;
	font-size: 1.4rem;
	color: #a0a0a0;
	display: inline-block;
	position: absolute;
	z-index: 1;
	text-align: center;
	top: 6%;
	left: 0;
	right: 0;
}
@media only screen and (max-width: 480px) {
	.cyclemenu .ref:before {
		top: 7%;
	}
}
@media only screen and (max-width: 480px) {
	.cyclemenu {
		margin-top: -20px;
	}
}

/*━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
	フッター
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━*/

/*=== 下部メニュー ===*/

.container-footer {
	margin-top: 6em;
	margin-bottom: 6em;
}
@media only screen and (max-width: 480px) {
.container-footer {
	margin-top: 3em;
	margin-bottom: 3em;
}
}

/*=== フッター ===*/

footer {
	font-size: 16px;
	/*font-size: 1.6rem;*/
}
footer ul ul {
	font-size: 14px;
	/*font-size: 1.4rem;*/
}

footer {
	background: #f8fde9;
}
.en footer {
	height: 265px;
	background: url(https://www.jnfl.co.jp/ja/assets/home/images/footer/footer-bg-repeat.png) center top repeat-x;
}
@media only screen and (max-width: 480px) {
	.en footer {
		background: url(https://www.jnfl.co.jp/ja/assets/home/images/footer/footer-bg_sp.png) center 121px no-repeat;
		background-size: contain;
	}
	.sp.en footer {
		height:247px;
	}
}

footer .inner {
	display: table;
	padding-top: 50px;
	padding-bottom: 3em;
}
.en footer .inner {
	padding-top: 0;
	padding-bottom: 0;
	min-height: 238px;
	background: url(https://www.jnfl.co.jp/ja/assets/home/images/footer/footer-bg.png) center top no-repeat;
}
@media only screen and (max-width: 480px) {
	.en footer .inner {
		background: none;
	}
	.sp.en footer .inner {
		padding:0;
		min-height:221px;
	}
}

footer .inner > ul {
	display: table-cell;
	vertical-align: top;
}
footer .inner ul {
	padding: 0;
}
footer .inner ul li {
	list-style: none;
	background: url(https://www.jnfl.co.jp/ja/assets/home/images/footer/footer-li.png) 0.25em 0.45em no-repeat;
	padding: 0 0 0 1.2em;
}
footer .inner ul.mdash li {
	background: none;
	padding: 0 0 0 2.5em;
	background: url(https://www.jnfl.co.jp/ja/assets/home/images/footer/footer-li-mdash.png) 1em 0.75em no-repeat;
}
footer .copyright {
	font-size: 11px;
	font-size: 1.1rem;
	background: #d5f47f;
	margin: 0 auto;
	text-align: center;
	padding: .5em;
}
.sp .parallax .paraillust {
	display: none;
}
.sp footer .inner {
	padding: 1em 0;
}
.sp footer .inner > ul:not(.footer_sp) {
	display: none;
}
.sp footer .inner > .footer_sp > li:not(.footer_sp_list) {
	display: none;
}
.sp footer .inner > .footer_sp li {
	background: none;
	padding: 0;
	text-align: center;
}


/*=== ページ先頭へ ===*/
.totop {
	opacity: 0;
	position: fixed;
	z-index: 10000;
	right: 60px;
	bottom: 60px;
	background: url(https://www.jnfl.co.jp/ja/assets/common/images/to-top.png) left top no-repeat;
	background-size: cover;
	width: 62px;
	height: 62px;
}
@media only screen and (max-width: 480px) {
	.totop {
		right: 1em;
		bottom: 1em;
	}
}
.totop:hover {
	background-position: right top;
}
.totop a {
	outline: none;
	display: block;
	width: 100%;
	height: 62px;
}

/*英語版では吹き出しの中身が英語の画像を使用*/
.en .totop {
	background-image: url(https://www.jnfl.co.jp/en/assets/common/images/to-top.png);
}

/*SP時は常に「トップへ」のメッセージを表示する*/
.sp .totop,
.tablet .totop {
	background-position: right top;
}


/*━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
	パララックス
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━*/

.parallax {
	height: 280px;
	position: relative;
	margin-top: -1px;
}

.paraillust {
	width: 100%;
	height: 280px;
	position: absolute;
}

/*空*/
#paraillust_1 {
	z-index: 10;
	background: url(https://www.jnfl.co.jp/ja/assets/home/images/footer/img_footer_1.png) center top repeat-x;
}
/*雲*/
#paraillust_2 {
	z-index: 11;
	background: url(https://www.jnfl.co.jp/ja/assets/home/images/footer/img_footer_2.png) center top repeat-x;
}
/*地面（薄）*/
#paraillust_3 {
	z-index: 12;
	background: url(https://www.jnfl.co.jp/ja/assets/home/images/footer/img_footer_3.png) center top repeat-x;
}
/*工場*/
#paraillust_4 {
	z-index: 13;
	background: url(https://www.jnfl.co.jp/ja/assets/home/images/footer/img_footer_3_over.png) center top no-repeat;
}
/*地面（濃）*/
#paraillust_5 {
	z-index: 14;
	background: url(https://www.jnfl.co.jp/ja/assets/home/images/footer/img_footer_4.png) center top repeat-x;
}
/*再処理工場*/
#paraillust_6 {
	z-index: 15;
	background: url(https://www.jnfl.co.jp/ja/assets/home/images/footer/img_footer_4_over.png) center top no-repeat;
}
/*地面（明）*/
#paraillust_7 {
	z-index: 16;
	background: url(https://www.jnfl.co.jp/ja/assets/home/images/footer/img_footer_5.png) center top repeat-x;
}
/*ニッコウキスゲ*/
#paraillust_8 {
	z-index: 17;
	background: url(https://www.jnfl.co.jp/ja/assets/home/images/footer/img_footer_5_over.png) center top no-repeat;
}
/*オジロワシ*/
#paraillust_9 {
	z-index: 18;
	background: url(https://www.jnfl.co.jp/ja/assets/home/images/footer/img_footer_6.png) center top no-repeat;
}

/*SP時はパララックスさせない（静止画を表示する）*/
@media only screen and (max-width: 480px) {
	.parallax {
		height: 150px;
		background: url(https://www.jnfl.co.jp/ja/assets/home/images/footer/footer-bg_sp.png) center bottom no-repeat;
		background-size: contain;
		margin-top: -50px;
	}
	.paraillust {
		background: none !important;
	}
}


/*━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
	アイコン
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━*/

/*=== PDFアイコン等 ===*/

.pdf {
	padding-left: 1.5em;
	background: url(https://www.jnfl.co.jp/ja/assets/common/images/icon/pdf.png) left 0em no-repeat;
	background-size: 1.2em auto;
}
.noicon .pdf {
	padding-left: 0;
	background: none;
}
table.report .pdf {
	background-image: none;
}
img.pdf-icon {
	vertical-align: baseline;
}
.mailto {
	padding-left: 1.5em;
	background: url(https://www.jnfl.co.jp/ja/assets/common/images/icon/mailto.png) left 0em no-repeat;
	background-size: 1.2em auto;
}
.noicon .mailto {
	padding-left: 0;
	background: none;
}
.icon-right .pdf,
.icon-right .mailto {
	background-position: right;
	padding-left: 0;
	padding-right: 1.5em;
}
.has-pdf {
	transition: opacity 0.3s ease-out;
}
.has-pdf:hover {
	opacity: .7;
}

.icon-phone {
	padding-left: 1.5em;
	background: url(https://www.jnfl.co.jp/ja/assets/common/images/icon/icon-phone.svg) left 0em no-repeat;
	background-size: 1.4em auto;
}

/*=== 矢印アイコン ===*/

ul.icon {
	margin: 0;
	padding: 0;
}
ul.icon li {
	list-style: none;
	padding: 0.15em 1em 0.2em 20px;
}
ul.icon a,
ul.icon a.pdf {
	padding: 0;
	position: relative;
}
.pc ul.icon a:link,
.pc ul.icon a:visited,
.pc ul.icon a:hover,
ul.icon a.touchhover,
.pc ul.icon a.pdf:link,
.pc ul.icon a.pdf:visited,
.pc ul.icon a.pdf:hover,
ul.icon a.pdf.touchhover {
	color: #1b1b1b;
	background: none;
	border: 0;
}
.pc ul.icon a:hover,
ul.icon a.touchhover,
.pc ul.icon a.pdf:hover,
ul.icon a.pdf.touchhover {
	text-decoration: underline;
}
ul.icon a:before,
ul.icon a.pdf:before {
	content: "";
	display: block;
	background-image: url(https://www.jnfl.co.jp/ja/assets/common/images/sprite/sprite.png);
	background-position: -298px 0px;
	width: 17px;
	height: 17px;
	background-size: 1405px 44px;
	position: absolute;
	left: -20px;
	top: .1em;
}
.mac ul.icon a:before,
.mac ul.icon a.pdf:before {
	top: .02em;
}
ul.icon a[href$=".pdf"]:after {
	content: "";
	display: block;
	background-image: url(https://www.jnfl.co.jp/ja/assets/common/images/sprite/sprite.png);
	background-position: -277px 0px;
	width: 16px;
	height: 16px;
	background-size: 1405px 44px;
	position: absolute;
	right: -20px;
	bottom: .2em;
}
ul.icon .pdf-parent .pdf {
	background-image: none;
}

ul.icon.float {
	margin: 0;
	padding: 0;
}
ul.icon.float li {
	display: inline-block;
	list-style: none;
	padding: 1em 3em 1em 2em;
}
ul.icon.float a {
	display: block;
	font-size: 1.4em;
	position: relative;
}
ul.icon.float a:before {
	content: "";
	display: block;
	background-image: url(https://www.jnfl.co.jp/ja/assets/common/images/sprite/sprite.png);
	background-position: -298px 0px;
	width: 17px;
	height: 17px;
	background-size: 1405px 44px;
	position: absolute;
	left: -18px;
	top: .45em;
}

ul.icon ul, ul.icon ul {
	padding-left: 2px !important;
}
ul.icon ul a:before, ul.icon ul a.pdf:before {
	content: "";
	display: block;
	background-image: url(https://www.jnfl.co.jp/ja/assets/common/images/sprite/sprite.png);
	background-position: -298px 68px;
	width: 17px;
	height: 17px;
	background-size: 1405px 44px;
	position: absolute;
	top: .1em;
}


/*■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■*/
/*===================================================
	グローバルヘッダー
=====================================================*/

/*---------------------------------------------------
	大枠
-----------------------------------------------------*/

/* ベース
//---------------------------------------------------*/

body > header {
	background: #fff;
	z-index: 4;
	position: relative;
}

/* reset */
body > header ul,
body > header li {
	margin: 0;
	padding: 0;
}
body > header li {
	list-style: none;
}

/* fixed */
body.headerFixed > header {
	position: fixed;
    width: 100%;
    top: 0;
    left: 0;
}
@media only screen and (max-width: 834px) {
	body.headerFixed > header.spMenuOpen {
		position: relative;
		z-index: 100000;
	}
}

/* 2段組み */
body > header .inner .logo {
	width: 240px;
	float: left;
	position: relative;
}
body > header .inner .logo a {
	display: block;
}
body > header .inner .misc {
	width: 100%;
	float: left;
	margin-left: -240px;
}

/* 英語版
//---------------------------------------------------*/

/* 2段組みの幅変更 */
body.en > header .inner .logo {
	width: 531px;
}
body.en > header .inner h1,
body.en > header .inner h1 img,
body.en > header .inner h2,
body.en > header .inner h2 img {
	width: 90%;
}
body.en > header .inner .misc {
	margin-left: -531px;
}
@media only screen and (max-width: 480px) {
	body.en > header .inner .logo {
		width: 100%;
	}
	body.en > header .inner .misc {
		margin-left: 0;
	}
}

/*---------------------------------------------------
	中身
-----------------------------------------------------*/

/* ベース
//---------------------------------------------------*/
body > header > .inner {
	padding-top: 20px;
	padding-bottom: 5px;
}
@media only screen and (max-width: 639px) {
	body > header > .inner {
		padding-top: 15px;
		padding-bottom: 10px;
	}
}

/* logo */
body > header h1,
body > header h2 {
	display: inline-block;
	width: 200px;
}
body > header h1 img,
body > header h2 img {
	width: 200px;
	height: auto;
}

/* 右側(.misc) */
body > header .misc > div {
	float: right;
}
body > header .misc ul {
	font-size: 10px;
	font-size: 1rem;
	margin: 0 1.5em 0 1em;
	text-align: center;
	display: inline-block;
}

body > header .misc li {
	text-align: center;
	display: inline-block;
}
body > header .misc li a {
	display: block;
	padding: 0.05em 0.3em;
	border: 1px solid #ccc;
	background: #f3f3f3;
	color: #1b1b1b;
	text-align: center;
	cursor: pointer;
}
body > header .misc li a:hover,
body > header .misc li a:active,
body > header .misc li a.current {
	text-decoration: none;
	border: 1px solid #999;
	background: #7f7f7f;
	color: #fff;
	-webkit-transition: all 0.2s ease;
	transition: all 0.2s ease;
}

/* 英語版
//---------------------------------------------------*/
body.en > header > .inner {
	padding-bottom: 15px;
}

/* logo */
body.en > header h1,
body.en > header h1 img,
body.en > header h2,
body.en > header h2 img {
	width: 531px;
}

@media only screen and (max-width: 480px) {
	body.en > header h1,
	body.en > header h1 img,
	body.en > header h2,
	body.en > header h2 img {
		width: 90%;
	}
}

/* 右側(.misc) */
body.en > header .misc ul {
	font-size: 12px;
	font-size: 1.2rem;
}

body.en > header .misc .inner {
	padding-right: 0;
}

/*===================================================
	グローバルナビ ベース
=====================================================*/

header nav {
	background: #7bcb0a;
}

.gmenu {
	width: 100%;
	max-width: 1000px;
}

/* 大項目・小項目共通
//---------------------------------------------------*/

.gmenu,
.gmenu ul {
	font-size: 14px;
	/*font-size: 1.4rem;*/
	position: relative;
	z-index: 10000;
	margin: 0 auto;
}
.gmenu:before,
.gmenu:after,
.gmenu ul:before,
.gmenu ul:after {
	content: none;
}


/*===================================================
	グローバルナビ for PC and Tablet
=====================================================*/

/*---------------------------------------------------
	装飾
//---------------------------------------------------*/

/* nav全体
//---------------------------------------------------*/
@media only screen and (min-width: 640px) {
	.pc     header nav,
	.tablet header nav {
		position: relative;
		background: #7bcb0a;
		box-shadow: 0 8px 4px -4px #588c0c inset;
		border-bottom: 1px solid #e7f9cb;
	}
}

/* 大項目
//---------------------------------------------------*/

/* 項目間の縦線、画像で表現 */
.pc     .gmenu li.first,
.tablet .gmenu li.first {
	background: url(https://www.jnfl.co.jp/ja/assets/common/images/gnavi-border.png) left top no-repeat;
	background-size: 2px 100%;
}
.pc     .gmenu li.first > a,
.tablet .gmenu li.first > a {
	text-shadow: -1px -1px 0 #aaa;
	box-shadow: 0 8px 4px -4px #588c0c inset;
	background: url(https://www.jnfl.co.jp/ja/assets/common/images/gnavi-border.png) left top no-repeat;
	background-size: 2px 100%;
}
.pc     .gmenu li.first:last-child > a,
.tablet .gmenu li.first:last-child > a {
	background-image:
		url(https://www.jnfl.co.jp/ja/assets/common/images/gnavi-border.png),
		url(https://www.jnfl.co.jp/ja/assets/common/images/gnavi-border.png);
	background-position: left top, right top;
	background-repeat: no-repeat, no-repeat;
}

/* 文字詰め */
.ja .pc     .gmenu li.first > a,
.ja .tablet .gmenu li.first > a {
	letter-spacing: -1px;
}

/* アイコン */
.pc     .gmenu li.first > a:before,
.tablet .gmenu li.first > a:before {
	content: "";
	vertical-align: middle;
	display: inline-block;
	margin-right: .5em;
}
.pc .gmenu li.first > a[href$="/company/"]:before,
.pc .gmenu li.first > a[href$="/about/"]:before,
.tablet .gmenu li.first > a[href$="/company/"]:before,
.tablet .gmenu li.first > a[href$="/about/"]:before {
	background-image: url(https://www.jnfl.co.jp/ja/assets/common/images/sprite/sprite.png);
	background-position: -786px 0px;
	width: 38px;
	height: 38px;
	background-size: 1405px 44px;
}

.pc .gmenu li.first > a[href$="/pr/"]:before,
.tablet .gmenu li.first > a[href$="/pr/"]:before {
	background-image: url(https://www.jnfl.co.jp/ja/assets/common/images/sprite/sprite.png);
	background-position: -743px 0px;
	width: 38px;
	height: 38px;
	background-size: 1405px 44px;
}

.pc .gmenu li.first > a[href$="/business/"]:before,
.tablet .gmenu li.first > a[href$="/business/"]:before {
	background-image: url(https://www.jnfl.co.jp/ja/assets/common/images/sprite/sprite.png);
	background-position: -571px 0px;
	width: 38px;
	height: 38px;
	background-size: 1405px 44px;
}

.pc .gmenu li.first > a[href$="/special/"]:before,
.pc .gmenu li.first > a[href$="/activity/"]:before,
.tablet .gmenu li.first > a[href$="/special/"]:before,
.tablet .gmenu li.first > a[href$="/activity/"]:before {
	background-image: url(https://www.jnfl.co.jp/ja/assets/common/images/sprite/sprite.png);
	background-position: -614px 0px;
	width: 38px;
	height: 38px;
	background-size: 1405px 44px;
}

.pc .gmenu li.first > a[href$="/release/"]:before,
.tablet .gmenu li.first > a[href$="/release/"]:before {
	background-image: url(https://www.jnfl.co.jp/ja/assets/common/images/sprite/sprite.png);
	background-position: -657px 0px;
	width: 38px;
	height: 38px;
	background-size: 1405px 44px;
}

.pc .gmenu li.first > a[href$="/recruit/"]:before,
.tablet .gmenu li.first > a[href$="/recruit/"]:before {
	background-image: url(https://www.jnfl.co.jp/ja/assets/common/images/sprite/sprite.png);
	background-position: -700px 0px;
	width: 38px;
	height: 38px;
	background-size: 1405px 44px;
}


/*---------------------------------------------------
	レイアウト
//---------------------------------------------------*/

.pc     .gmenu,
.tablet .gmenu {
	display: table;
	table-layout: fixed;
}
.pc     .gmenu li.first,
.tablet .gmenu li.first {
	display: table-cell;
	position: relative;
}
.pc     .gmenu li.first > a,
.tablet .gmenu li.first > a {
	vertical-align: middle;
	padding: 0.75em 0 0.75em 0.75em;
}


/*---------------------------------------------------
	プルダウンメニュー
//---------------------------------------------------*/

/* @media only screen and (min-width: 680px) { */
@media only screen and (min-width: 835px) {
	/* ベース（ul） */
	.pc     .gmenu .second,
	.tablet .gmenu .second {
		z-index: 1;
		position: absolute;
		top: 100%;
		left: 3px;
		min-width: 100%;
		white-space: nowrap;
		margin: 0;
		background: #d3ebbf;
		box-shadow: 1px 1px 1px #333;
	}
	.pc     .gmenu > li:last-child .second,
	.tablet .gmenu > li:last-child .second {
		left: auto;
		right: 2px;
	}
	.pc     .gmenu .second li,
	.tablet .gmenu .second li {
		background: #f8ffed;
		box-shadow: 1px 1px 1px rgba(0,0,0,0.5);
		height: 0;
		overflow: hidden;
		opacity:0;
		-moz-transition: all .2s ease;
		-webkit-transition: all .2s ease;
		-o-transition: all .2s ease;
		-ms-transition: all .2s ease;
		transition: all .2s ease;
	}
	.pc     .gmenu .second li a,
	.tablet .gmenu .second li a {
		display: block;
		padding: 0.7em 1.1em 0.7em 1.5em;
		color: #000;
	}
	.pc     .gmenu .second li a:hover,
	.tablet .gmenu .second li a:hover {
		text-decoration: none;
	}

	/* hoverで見せる（PC） */
	.pc .gmenu li.first:hover .second li {
		opacity:1;
		overflow: visible;
			height: 44px;
		border-bottom: 1px solid #7bcb0a;
		margin-top: 1px;
	}
	.pc     .gmenu li.first:hover .second .longer,
	.tablet .gmenu li.first:hover .second .longer {
		height: 71px;
	}
	.en.pc .gmenu li.first:hover .second li {
		height: 41px;
	}
	/* hoverで見せる（TABLET） */
	.tablet .gmenu li.first:hover .second li {
		opacity:1;
		overflow: visible;
			height: auto;
		border-bottom: 1px solid #7bcb0a;
		margin-top: 1px;
	}

}

/*---------------------------------------------------
	リンク
//---------------------------------------------------*/

.gmenu li.first > a {
	font-size: 15px;
	/*font-size: 1.5rem;*/
	color: #fff;
	text-decoration: none;
	display: block;
}

/*---------------------------------------------------
	アクティブ装飾
//---------------------------------------------------*/

.pc     .gmenu li.first.active > a,
.pc     .gmenu li.first > a.hover,
.pc     .gmenu li.first > a:hover,
.tablet .gmenu li.first.active > a,
.tablet .gmenu li.first > a.hover,
.tablet .gmenu li.first > a:hover {
	background-color: #4faf00;
	-webkit-transition: all 0.2s ease;
	transition: all 0.2s ease;
}

@media only screen and (min-width: 681px) {
	.pc     .gmenu li.first > a:focus,
	.tablet .gmenu li.first > a:focus {
		background-color: #4faf00;
		-webkit-transition: all 0.2s ease;
		transition: all 0.2s ease;
	}
}

.pc     .gmenu .second li:hover,
.tablet .gmenu .second li:hover {
	background: #C9F38D;
	-webkit-transition: all 0.2s ease;
	transition: all 0.2s ease;
}

.pc     .gmenu .second li.active,
.tablet .gmenu .second li.active {
	background: rgba(170,230,110,0.8);
}
/* アクディブ項目の左側装飾 */
.pc     .gmenu .second li.active a,
.tablet .gmenu .second li.active a {
	background: url(https://www.jnfl.co.jp/ja/assets/common/images/childmenu-active.png) left center no-repeat;
	background-size: 10px 20px;
}
.pc     .gmenu .second li,
.tablet .gmenu .second li {
	position: relative;
	border-left: 7px solid #4faf00;
}

/*---------------------------------------------------
	メディアクエリ
//---------------------------------------------------*/

/* 文字小さくし、アイコンとの距離を詰める */
/* @media only screen and (min-width: 681px) and (max-width: 950px) { */
@media only screen and (min-width: 835px) and (max-width: 950px) {
	.pc     .gmenu li.first > a,
	.tablet .gmenu li.first > a {
		font-size: 14px;
		font-size: 1.4rem;
	}
	.pc     .gmenu li.first > a:before,
	.tablet .gmenu li.first > a:before {
		margin-right: .2em;
	}
}

/* さらに、paddingを減らす */
/* @media only screen and (min-width: 681px) and (max-width: 900px) { */
@media only screen and (min-width: 835px) and (max-width: 900px) {
	.pc     .gmenu li.first > a,
	.tablet .gmenu li.first > a {
		padding: 0.75em 0 0.75em 0.5em;
	}
}

/* アイコン表示をなくし、中央ぞろえに。高さを縮め、プルダウンの位置も変更 */
/* @media only screen and (min-width: 681px) and (max-width: 880px) { */
@media only screen and (min-width: 835px) and (max-width: 880px) {
	.pc     .gmenu li.first > a,
	.tablet .gmenu li.first > a {
		text-align: center;
		padding: 0.75em 0;
	}
	.pc     .gmenu li.first > a:before,
	.tablet .gmenu li.first > a:before {
		content: none;
	}
	.pc     .gmenu .second,
	.tablet .gmenu .second {
		top: 46px;
		width: 15em;
		white-space: normal;
	}
	.en.pc     .gmenu .second,
	.en.tablet .gmenu .second {
		top: 40px;
		width: 100%;
	}
	.pc     .gmenu li.first:hover .second .long,
	.tablet .gmenu li.first:hover .second .long {
		height: 65px;
	}
	.pc     .gmenu li.first:hover .second .longer,
	.tablet .gmenu li.first:hover .second .longer {
		height: auto;
	}
	.en.pc     .gmenu li.first:hover .second .long,
	.en.tablet .gmenu li.first:hover .second .long {
		height: 53px;
	}
	.pc     .gmenu .second > li a,
	.tablet .gmenu .second > li a {
		padding: .6em .5em .4em;
	}
	.pc     .gmenu .second li.active a,
	.tablet .gmenu .second li.active a {
		background-size: 5px 10px;
	}
}
@media only screen and (max-width: 880px) {
	.gmenu li.first .second .longer br,
	.gmenu li.first .second .longer br {
		display: none;
	}
}

/*===================================================
	グローバルナビ for SP and 幅の狭い画面
=====================================================*/

/*---------------------------------------------------
	十分な横幅のある PC and Tablet
//---------------------------------------------------*/

/*SP用グローバルナビ用に生成した要素を非表示*/
/* @media only screen and (min-width: 681px) { */
@media only screen and (min-width: 835px) {
	body.pc,
	body.tablet {
		width: 100%;
		overflow: hidden;
		position: relative;/*子要素がabsoluteの場合にoverflowが効かないことがあることへの対策*/
	}
	body.pc     > header .second > li.spmenu-top,
	body.pc     > header .spmenu-option,
	body.pc     > header .spmenu-btn,
	body.pc     > header .spmenu-footer,
	body.tablet > header .second > li.spmenu-top,
	body.tablet > header .spmenu-option,
	body.tablet > header .spmenu-btn,
	body.tablet > header .spmenu-footer {
		display: none;
	}
}

/*---------------------------------------------------
	幅の狭い PC and Tablet → スマホ表示に切り替え
//---------------------------------------------------*/

/* @media only screen and (max-width: 680px) { */
@media only screen and (max-width: 834px) {
	body.pc,
	body.tablet {
		width: 100%;
		overflow: hidden;
		position: relative;/*子要素がabsoluteの場合にoverflowが効かないことがあることへの対策*/
		content: "sp";
	}
}

/*---------------------------------------------------
	SP → スマホ表示に切り替え
//---------------------------------------------------*/

body.sp {
	width: 100%;
	overflow: hidden;
	content: "sp";
	position: relative;/*子要素がabsoluteの場合にoverflowが効かないことがあることへの対策*/
}

/*---------------------------------------------------
	スマホ表示に切り替え後の見た目
//---------------------------------------------------*/

/* SP用グローバルナビの開閉ボタン生成
//---------------------------------------------------*/

body.sp header .spmenu-btn {
	width: 40px;
	height: 42px;
	text-align: center;
	position: absolute;
	top: 10px;
	right: 10px;
	display: block;
}
body.sp.en header .spmenu-btn {
	top: 5px;
}

body.sp header .spmenu-btn span.spbtn {
	width: 30px;
	height: 4px;
	margin: 8px auto 0;
	background: #7bcb0a;
	display: block;
	border-radius: 2px;
}

body.sp header .spmenu-btn span.spbtn:before {
	content: "";
	width: 30px;
	height: 4px;
	background: #7bcb0a;
	display: block;
	border-radius: 2px;
	position: relative;
	top: 10px;
}

body.sp header .spmenu-btn span.spbtn:after {
	content: "";
	width: 30px;
	height: 4px;
	background: #7bcb0a;
	display: block;
	border-radius: 2px;
	position: relative;
	top: 16px;
}

body.sp header .spmenu-btn span.sptxt {
	width:100%;
	display: block;
	color: #7bcb0a;
	position: absolute;
	/*left:50%;*/
	bottom:-5px;
	/*margin-left:-1.5em;*/
	text-align:center;
	/*position: relative;*/
	/*top: 15px;*/
	font-size: 7px;
	font-size: .7rem;
}

/* @media only screen and (max-width: 680px) { */
@media only screen and (max-width: 834px) {
	body.pc     header .spmenu-btn,
	body.tablet header .spmenu-btn {
		width: 40px;
		height: 42px;
		text-align: center;
		position: absolute;
		top: 12px;
		right: 10px;
		display: block;
	}
	body.en.pc     header .spmenu-btn,
	body.en.tablet header .spmenu-btn {
		top: 3px;
	}
	body.pc     header .spmenu-btn span.spbtn,
	body.tablet header .spmenu-btn span.spbtn {
		width: 30px;
		height: 4px;
		margin: 8px auto 0;
		background: #7bcb0a;
		display: block;
		border-radius: 2px;
	}
	body.pc     header .spmenu-btn span.spbtn:before,
	body.tablet header .spmenu-btn span.spbtn:before {
		content: "";
		width: 30px;
		height: 4px;
		background: #7bcb0a;
		display: block;
		border-radius: 2px;
		position: relative;
		top: 10px;
	}
	body.pc     header .spmenu-btn span.spbtn:after,
	body.tablet header .spmenu-btn span.spbtn:after {
		content: "";
		width: 30px;
		height: 4px;
		background: #7bcb0a;
		display: block;
		border-radius: 2px;
		position: relative;
		top: 16px;
	}
	body.pc     header .spmenu-btn span.sptxt,
	body.tablet header .spmenu-btn span.sptxt {
		color: #7bcb0a;
		position: relative;
		top: 15px;
		font-size: 7px;
		font-size: .7rem;
	}
}

/* SP用グローバルナビを画面外に配置
//---------------------------------------------------*/

body.sp header nav {
	position: absolute;
	width: 100%;
	z-index: 11000;
	right: -100%;
}

body.sp .gmenu li.first {
	display: block;
}
body.sp .gmenu li.first > a {
	display: block;
	padding: 1em 0.5em 1em 3.7em;
	text-align: left;
	border-bottom: #e6e6e6 1px solid;
	position: relative;
}

/* @media only screen and (max-width: 680px) { */
@media only screen and (max-width: 834px) {
	body.pc     header nav,
	body.tablet header nav {
		position: absolute;
		width: 100%;
		z-index: 11000;
		right: -100%;
		box-shadow: none;
	}
	body.pc     .gmenu li.first,
	body.tablet .gmenu li.first {
		display: block;
	}
	body.pc     .gmenu li.first > a,
	body.tablet .gmenu li.first > a {
		display: block;
		padding: 1em 0.5em 1em 3.7em;
		text-align: left;
		border-bottom: #e6e6e6 1px solid;
		position: relative;
		box-shadow: none;
		text-shadow: none;
	}
}

/* SPでのhover対策
//---------------------------------------------------*/

body.sp .gmenu li.first > a.unTouch {
	background-color: #7bcb0a;
	text-decoration: none;
}

body.sp .gmenu li.first.active > a.unTouch {
	background-color: #4faf00;
	text-decoration: none;
}

/* メニューアイコン
//---------------------------------------------------*/

body.sp .gmenu li.first > a:before {
	content: "";
	margin-top: -15px;
	margin-right: 0.8em;
	position: absolute;
	top: 50%;
	left: 0.75em;
}

body.sp .gmenu li.first > a[href$="/company/"]:before,
body.sp .gmenu li.first > a[href$="/about/"]:before {
	background: url(../images/sprite/parts/gnavi-company.png) no-repeat;
	width: 31px;
	height: 31px;
	background-size: contain;
}

body.sp .gmenu li.first > a[href$="/pr/"]:before {
	background: url(../images/sprite/parts/gnavi-pr.png) no-repeat;
	width: 31px;
	height: 31px;
	background-size: contain;
}

body.sp .gmenu li.first > a[href$="/business/"]:before {
	background: url(../images/sprite/parts/gnavi-business.png) no-repeat;
	width: 31px;
	height: 31px;
	background-size: contain;
}

body.sp .gmenu li.first > a[href$="/special/"]:before,
body.sp .gmenu li.first > a[href$="/activity/"]:before {
	background: url(../images/sprite/parts/gnavi-special.png) no-repeat;
	width: 31px;
	height: 31px;
	background-size: contain;
}

body.sp .gmenu li.first > a[href$="/release/"]:before {
	background: url(../images/sprite/parts/gnavi-release.png) no-repeat;
	width: 31px;
	height: 31px;
	background-size: contain;
}

body.sp .gmenu li.first > a[href$="/recruit/"]:before {
	background: url(../images/sprite/parts/gnavi-recruit.png) no-repeat;
	width: 31px;
	height: 31px;
	background-size: contain;
}

/* @media only screen and (max-width: 680px) { */
@media only screen and (max-width: 834px) {
	body.pc     .gmenu li.first > a:before,
	body.tablet .gmenu li.first > a:before {
		content: "";
		margin-top: -15px;
		margin-right: 0.8em;
		position: absolute;
		top: 50%;
		left: 0.75em;
	}
	body.pc     .gmenu li.first > a[href$="/company/"]:before,
	body.pc     .gmenu li.first > a[href$="/about/"]:before,
	body.tablet .gmenu li.first > a[href$="/company/"]:before,
	body.tablet .gmenu li.first > a[href$="/about/"]:before {
		background: url(../images/sprite/parts/gnavi-company.png) no-repeat;
		width: 31px;
		height: 31px;
		background-size: contain;
	}
	body.pc     .gmenu li.first > a[href$="/pr/"]:before,
	body.tablet .gmenu li.first > a[href$="/pr/"]:before {
		background: url(../images/sprite/parts/gnavi-pr.png) no-repeat;
		width: 31px;
		height: 31px;
		background-size: contain;
	}
	body.pc     .gmenu li.first > a[href$="/business/"]:before,
	body.tablet .gmenu li.first > a[href$="/business/"]:before {
		background: url(../images/sprite/parts/gnavi-business.png) no-repeat;
		width: 31px;
		height: 31px;
		background-size: contain;
	}
	body.pc     .gmenu li.first > a[href$="/special/"]:before,
	body.pc     .gmenu li.first > a[href$="/activity/"]:before,
	body.tablet .gmenu li.first > a[href$="/special/"]:before,
	body.tablet .gmenu li.first > a[href$="/activity/"]:before {
		background: url(../images/sprite/parts/gnavi-special.png) no-repeat;
		width: 31px;
		height: 31px;
		background-size: contain;
	}
	body.pc     .gmenu li.first > a[href$="/release/"]:before,
	body.tablet .gmenu li.first > a[href$="/release/"]:before {
		background: url(../images/sprite/parts/gnavi-release.png) no-repeat;
		width: 31px;
		height: 31px;
		background-size: contain;
	}
	body.pc     .gmenu li.first > a[href$="/recruit/"]:before,
	body.tablet .gmenu li.first > a[href$="/recruit/"]:before {
		background: url(../images/sprite/parts/gnavi-recruit.png) no-repeat;
		width: 31px;
		height: 31px;
		background-size: contain;
	}
}

/* メニュー右側のアイコン
//---------------------------------------------------*/
body.sp .gmenu li.first > a:after {
	content: "";
	width: 20px;
	height: 20px;
	margin-top: -10px;
	background: url(https://www.jnfl.co.jp/ja/assets/common/images/globalmenu_icon.png) no-repeat;
	background-position: -40px 0;
	background-size: 60px auto;
	position: absolute;
	top: 50%;
	right: 1em;
}

body.sp .gmenu li.first > a.has-childmenu:after {
	content: "";
	width: 20px;
	height: 20px;
	margin-top: -10px;
	background: url(https://www.jnfl.co.jp/ja/assets/common/images/globalmenu_icon.png) no-repeat;
	background-position: 0 0;
	background-size: 60px auto;
	position: absolute;
	top: 50%;
	right: 1em;
	-moz-transition: -moz-transform 0.3s linear;
	-webkit-transition: -webkit-transform 0.3s linear;
	-o-transition: -o-transform 0.3s linear;
	-ms-transition: -ms-transform 0.3s linear;
	transition: transform 0.3s linear;
}

body.sp .gmenu li.first > a.open:after {
	-moz-transform: rotate(180deg);
	-webkit-transform: rotate(180deg);
	-o-transform: rotate(180deg);
	-ms-transform: rotate(180deg);
	transform: rotate(180deg);
}

/* @media only screen and (max-width: 680px) { */
@media only screen and (max-width: 834px) {
	body.pc     .gmenu li.first > a:after,
	body.tablet .gmenu li.first > a:after {
		content: "";
		width: 20px;
		height: 20px;
		margin-top: -10px;
		background: url(https://www.jnfl.co.jp/ja/assets/common/images/globalmenu_icon.png) no-repeat;
		background-position: -40px 0;
		background-size: 60px auto;
		position: absolute;
		top: 50%;
		right: 1em;
	}
	body.pc     .gmenu li.first > a.has-childmenu:after,
	body.tablet .gmenu li.first > a.has-childmenu:after {
		content: "";
		width: 20px;
		height: 20px;
		margin-top: -10px;
		background: url(https://www.jnfl.co.jp/ja/assets/common/images/globalmenu_icon.png) no-repeat;
		background-position: 0 0;
		background-size: 60px auto;
		position: absolute;
		top: 50%;
		right: 1em;
		-moz-transition: -moz-transform 0.3s linear;
		-webkit-transition: -webkit-transform 0.3s linear;
		-o-transition: -o-transform 0.3s linear;
		-ms-transition: -ms-transform 0.3s linear;
		transition: transform 0.3s linear;
	}
	body.pc     .gmenu li.first > a.open:after,
	body.tablet .gmenu li.first > a.open:after {
		-moz-transform: rotate(180deg);
		-webkit-transform: rotate(180deg);
		-o-transform: rotate(180deg);
		-ms-transform: rotate(180deg);
		transform: rotate(180deg);
	}
}

/* 「検索」「文字サイズ」「English」部分
//---------------------------------------------------*/

body.sp header .misc {
	display: none;
}

body.sp header .spmenu-option {
	background: #eee;
	display: block;
}

body.sp header .spmenu-option > ul {
	margin: 0 auto;
	padding: 18px 0;
	list-style: none;
	display: table;
}

body.sp header .spmenu-option > ul li {
	display: table-cell;
}

body.sp header .spmenu-option > ul li:before {
	content: "|";
	padding: 0 13px;
	color: #7d7d7d;
	float: left;
}

body.sp header .spmenu-option > ul li:first-child:before {
	content: none;
}

body.sp header .spmenu-option > ul li a {
	color: #7bcb0a;
}

body.sp header .spmenu-option > ul li a.active {
	color: #7d7d7d;
}

body.sp header .spmenu-option .misc.cloned {
	display: flex;
	flex-direction: column-reverse;
	justify-content: flex-end;
	align-items: center;
	gap: 15px;
	height: 160px;
	background: #eee;
	overflow: hidden;
	position: relative;
}

body.sp header .spmenu-option .misc.cloned .localsearch {
	margin: 0 15px;
	float: none;
}
/* ▼新Googleカスタム検索用（202206） */
body.sp header .spmenu-option .misc.cloned .localsearch .gsc-input {
	font-size: 1.6rem;
}
body.sp header .spmenu-option .misc.cloned .localsearch td.gsc-input {
	width: calc(100% - 40px);
}
body.sp header .spmenu-option .misc.cloned .localsearch div.gsc-input-box {
	padding: 0;
	border-radius: 0;
}
body.sp header .spmenu-option .misc.cloned .localsearch td.gsc-search-button {
	width: 40px;
}
body.sp header .spmenu-option .misc.cloned .localsearch .gsib_a {
	width: 100%;
	height: 38px;
}
body.sp header .spmenu-option .misc.cloned .localsearch .gsc-search-button-v2 {
	width: 40px;
	height: 40px;
}
body.sp header .spmenu-option .misc.cloned .localsearch .gsc-search-button-v2 svg {
	width: 25px;
	height: 25px;
}
/* ▼旧Googleカスタム検索用（～202206）
body.sp header .spmenu-option .misc.cloned .g_search_from {
	height: 40px;
	padding: 8px 16px;
	background: #ffffff !important;
	border: none !important;
	border-top: 2px solid #D9D9D9 !important;
	border-left: 2px solid #D9D9D9 !important;
	border-bottom: 2px solid #D9D9D9 !important;
	font-size: 16px;
	font-size: 1.6rem;
}
body.sp header .spmenu-option .misc.cloned .g_search_btn {
	width: 40px;
	height: 40px;
	padding: 0;
	background: #000 url(../images/sp-search-btn.png) top left no-repeat;
	background-size: 40px 40px;
}
*/
body.sp header .spmenu-option .misc.cloned .gmenu-transaction {
	width: 55%;
    height: 50px;
	margin: 0;
	font-size: 1.5rem;
}

body.sp header .spmenu-option .misc.cloned .inner {
	float: none;
	height: 40px;
	background: #fff;
	margin: 0 15px;
	padding: 0 15px;
	display: none;
	position: relative;
}

body.sp.en header .spmenu-option .misc.cloned .inner {
	display: block;
}

body.sp header .spmenu-option .misc.cloned .inner .fontrange {
	display: block;
}

body.sp header .spmenu-option .misc.cloned .inner,
body.sp header .spmenu-option .misc.cloned .inner > ul {
	display: none;
}

body.sp header .spmenu-option .misc.cloned input[type='range'] {
	-webkit-appearance: none;
	height: 5px;
	margin: 17px 0 0;
	background: #313131;
	float: left;
}

body.sp header .spmenu-option .misc.cloned input[type="range"]::-webkit-slider-thumb {
	-webkit-appearance: none;
	background: #7bcb0a;
	width: 20px;
	height: 20px;
	border: none;
	border-radius: 50%;
	box-shadow: none;
}

body.sp header .spmenu-option .misc.cloned .inner .fontrange {
	float: left;
}

body.sp header .spmenu-option .misc.cloned .inner .fontrange dl {
	display: none;
}

body.sp header .spmenu-option .misc.cloned .inner .fontrange .smallsample {
	height: 40px;
	line-height: 40px;
	display: inline-block;
	margin-right: 10px;
	font-size: 10px;
	font-size: 1rem;
	float: left;
}

body.sp header .spmenu-option .misc.cloned .inner .fontrange .largesample {
	height: 40px;
	line-height: 40px;
	display: inline-block;
	margin-left: 10px;
	font-size: 20px;
	font-size: 2rem;
	float: left;
}

body.sp header .spmenu-option .misc.cloned .fontoptions {
	width: 110px;
	height: 40px;
	position: absolute;
	top: 0;
	right: 0;
}

body.sp header .spmenu-option .misc.cloned .fontoptions .fontsample {
	height: 40px;
	padding-left: 20px;
	background: url(https://www.jnfl.co.jp/ja/assets/common/images/spmenu-fontsampleright.png) 0 15px no-repeat;
	background-size: 10px 12px;
	display: table;
	float: left;
	line-height: 40px;
}

body.sp header .spmenu-option .misc.cloned .fontoptions .fontsample span {
	width: 40px;
	text-align: center;
	vertical-align: bottom;
	display: table-cell;
}

body.sp header .spmenu-option .misc.cloned .fontoptions .fontreset {
	width: 40px;
	height: 40px;
	background: url(https://www.jnfl.co.jp/ja/assets/common/images/spmenu-fontreset.png) top left no-repeat;
	background-size: 40px 40px;
	float: right;
}

/* @media only screen and (max-width: 680px) { */
@media only screen and (max-width: 834px) {
	body.pc     header .misc,
	body.tablet header .misc {
		display: none;
	}
	body.pc     header .spmenu-option,
	body.tablet header .spmenu-option {
		background: #eee;
		display: block;
	}
	body.pc     header .spmenu-option > ul,
	body.tablet header .spmenu-option > ul {
		margin: 0 auto;
		padding: 18px 0;
		list-style: none;
		display: table;
	}
	body.pc     header .spmenu-option > ul li,
	body.tablet header .spmenu-option > ul li {
		display: table-cell;
	}
	body.pc     header .spmenu-option > ul li:before,
	body.tablet header .spmenu-option > ul li:before {
		content: "|";
		padding: 0 13px;
		color: #7d7d7d;
		float: left;
	}
	body.pc     header .spmenu-option > ul li:first-child:before,
	body.tablet header .spmenu-option > ul li:first-child:before {
		content: none;
	}
	body.pc     header .spmenu-option > ul li a,
	body.tablet header .spmenu-option > ul li a {
		color: #7bcb0a;
	}
	body.pc     header .spmenu-option > ul li a.active,
	body.tablet header .spmenu-option > ul li a.active {
		color: #7d7d7d;
	}
	body.pc     header .spmenu-option .misc.cloned,
	body.tablet header .spmenu-option .misc.cloned {
		display: flex;
		flex-direction: column-reverse;
		justify-content: flex-end;
		align-items: center;
		gap: 15px;
		height: 160px;
		background: #eee;
		overflow: hidden;
		position: relative;
	}
	body.pc     header .spmenu-option .misc.cloned .localsearch,
	body.tablet header .spmenu-option .misc.cloned .localsearch {
		margin: 0 15px;
		float: none;
	}
	/* ▼新Googleカスタム検索用（202206） */
	body.pc     header .spmenu-option .misc.cloned .gsc-input,
	body.tablet header .spmenu-option .misc.cloned .gsc-input {
		font-size: 1.6rem;
	}
	body.pc     header .spmenu-option .misc.cloned td.gsc-input,
	body.tablet header .spmenu-option .misc.cloned td.gsc-input {
		width: calc(100% - 40px);
	}
	body.pc     header .spmenu-option .misc.cloned div.gsc-input-box,
	body.tablet header .spmenu-option .misc.cloned div.gsc-input-box {
		padding: 0;
		border-radius: 0;
	}
	body.pc     header .spmenu-option .misc.cloned td.gsc-search-button,
	body.tablet header .spmenu-option .misc.cloned td.gsc-search-button {
		width: 40px;
	}
	body.pc     header .spmenu-option .misc.cloned .gsib_a,
	body.tablet header .spmenu-option .misc.cloned .gsib_a {
		width: 100%;
		height: 38px;
	}
	body.pc     header .spmenu-option .misc.cloned .gsc-search-button-v2,
	body.tablet header .spmenu-option .misc.cloned .gsc-search-button-v2 {
		width: 40px;
		height: 40px;
	}
	body.pc     header .spmenu-option .misc.cloned .gsc-search-button-v2 svg,
	body.tablet header .spmenu-option .misc.cloned .gsc-search-button-v2 svg {
		width: 25px;
		height: 25px;
	}
	/* ▼旧Googleカスタム検索用（～202206）
	body.pc     header .spmenu-option .misc.cloned .g_search_from,
	body.tablet header .spmenu-option .misc.cloned .g_search_from {
		height: 40px;
		padding: 8px 16px;
		background: #ffffff !important;
		border: none !important;
		border-top: 2px solid #D9D9D9 !important;
		border-left: 2px solid #D9D9D9 !important;
		border-bottom: 2px solid #D9D9D9 !important;
		font-size: 15px;
		font-size: 1.5rem;
	}
	body.pc     header .spmenu-option .misc.cloned .g_search_btn,
	body.tablet header .spmenu-option .misc.cloned .g_search_btn {
		width: 40px;
		height: 40px;
		padding: 0;
		background: #000 url(../images/sp-search-btn.png) top left no-repeat;
		background-size: 40px 40px;
	}
	body.pc     header .spmenu-option .misc.cloned .g_search_btn:hover,
	body.tablet header .spmenu-option .misc.cloned .g_search_btn:hover {
		opacity: .7;
	}
	*/
	body.pc     header .spmenu-option .misc.cloned .gmenu-transaction,
	body.tablet header .spmenu-option .misc.cloned .gmenu-transaction {
		width: 50%;
		height: 50px;
		margin: 0;
		font-size: 1.5rem;
	}
	body.pc     header .spmenu-option .misc.cloned .inner,
	body.tablet header .spmenu-option .misc.cloned .inner {
		float: none;
		height: 40px;
		background: #fff;
		margin: 0 15px;
		padding: 0 15px;
		display: none;
		position: relative;
	}
	body.pc.en     header .spmenu-option .misc.cloned .inner,
	body.tablet.en header .spmenu-option .misc.cloned .inner {
		display: block;
	}
	body.pc     header .spmenu-option .misc.cloned .inner .fontrange,
	body.tablet header .spmenu-option .misc.cloned .inner .fontrange {
		display: block;
	}
	body.pc     header .spmenu-option .misc.cloned .inner,
	body.pc     header .spmenu-option .misc.cloned .inner > ul,
	body.tablet header .spmenu-option .misc.cloned .inner,
	body.tablet header .spmenu-option .misc.cloned .inner > ul {
		display: none;
	}
	body.pc     header .spmenu-option .misc.cloned input[type='range'],
	body.tablet header .spmenu-option .misc.cloned input[type='range'] {
		-webkit-appearance: none;
		height: 5px;
		margin: 17px 0 0;
		background: #313131;
		float: left;
	}
	body.pc     header .spmenu-option .misc.cloned input[type="range"]::-webkit-slider-thumb,
	body.tablet header .spmenu-option .misc.cloned input[type="range"]::-webkit-slider-thumb {
		-webkit-appearance: none;
		background: #7bcb0a;
		width: 20px;
		height: 20px;
		border: none;
		border-radius: 50%;
		box-shadow: none;
	}
	body.pc     header .spmenu-option .misc.cloned .inner .fontrange,
	body.tablet header .spmenu-option .misc.cloned .inner .fontrange {
		float: left;
	}
	body.pc     header .spmenu-option .misc.cloned .inner .fontrange dl,
	body.tablet header .spmenu-option .misc.cloned .inner .fontrange dl {
		display: none;
	}
	body.pc     header .spmenu-option .misc.cloned .inner .fontrange .smallsample,
	body.tablet header .spmenu-option .misc.cloned .inner .fontrange .smallsample {
		height: 40px;
		line-height: 40px;
		display: inline-block;
		margin-right: 10px;
		font-size: 10px;
		font-size: 1rem;
		float: left;
	}
	body.pc     header .spmenu-option .misc.cloned .inner .fontrange .largesample,
	body.tablet header .spmenu-option .misc.cloned .inner .fontrange .largesample {
		height: 40px;
		line-height: 40px;
		display: inline-block;
		margin-left: 10px;
		font-size: 20px;
		font-size: 2rem;
		float: left;
	}
	body.pc     header .spmenu-option .misc.cloned .fontoptions,
	body.tablet header .spmenu-option .misc.cloned .fontoptions {
		width: 110px;
		height: 40px;
		position: absolute;
		top: 0;
		right: 0;
	}
	body.pc     header .spmenu-option .misc.cloned .fontoptions .fontsample,
	body.tablet header .spmenu-option .misc.cloned .fontoptions .fontsample {
		height: 40px;
		padding-left: 20px;
		background: url(https://www.jnfl.co.jp/ja/assets/common/images/spmenu-fontsampleright.png) 0 15px no-repeat;
		background-size: 10px 12px;
		display: table;
		float: left;
		line-height: 40px;
	}
	body.pc     header .spmenu-option .misc.cloned .fontoptions .fontsample span,
	body.tablet header .spmenu-option .misc.cloned .fontoptions .fontsample span {
		width: 40px;
		text-align: center;
		vertical-align: bottom;
		display: table-cell;
	}
	body.pc     header .spmenu-option .misc.cloned .fontoptions .fontreset,
	body.tablet header .spmenu-option .misc.cloned .fontoptions .fontreset {
		width: 40px;
		height: 40px;
		background: url(https://www.jnfl.co.jp/ja/assets/common/images/spmenu-fontreset.png) top left no-repeat;
		background-size: 40px 40px;
		float: right;
	}
	body.pc     header .spmenu-option .misc.cloned .fontoptions .fontreset:hover,
	body.tablet header .spmenu-option .misc.cloned .fontoptions .fontreset:hover {
		opacity: .7;
	}
}

/* SP用グローバルナビの表示・非表示
//---------------------------------------------------*/
body.sp header .second {
	position: static;
	display: none;
}
body.sp header .active .second {
	visibility: visible;
	opacity: 1;
}

/* @media only screen and (max-width: 680px) { */
@media only screen and (max-width: 834px) {
	body.pc     header .second,
	body.tablet header .second {
		position: static;
		display: none;
	}
	body.pc     header .active .second,
	body.tablet header .active .second {
		visibility: visible;
		opacity: 1;
	}
}

/* SP用グローバルナビの子メニュー
//---------------------------------------------------*/
body.sp .gmenu .second > li {
	background: #d9f1b5;
	border-bottom: #7bcb0a 1px solid;
}

body.sp .gmenu .second > li.active {
	background: rgba(170,230,110,0.8);
}

body.sp .gmenu .second > li a {
	display: block;
	padding: 0.8em 3em 0.8em 3.7em;
	position: relative;
}

body.sp .gmenu .second > li a:after {
	content: "";
	width: 20px;
	height: 20px;
	margin-top: -10px;
	background: url(https://www.jnfl.co.jp/ja/assets/common/images/globalmenu_icon.png) no-repeat;
	background-position: -20px 0;
	background-size: 60px auto;
	position: absolute;
	top: 50%;
	right: 1em;
}

/* @media only screen and (max-width: 680px) { */
@media only screen and (max-width: 834px) {
	body.pc     .gmenu .second > li,
	body.tablet .gmenu .second > li {
		background: #d9f1b5;
		border-bottom: #7bcb0a 1px solid;
	}
	body.pc     .gmenu .second > li.active,
	body.tablet .gmenu .second > li.active {
		background: rgba(170,230,110,0.8);
	}
	body.pc     .gmenu .second > li a,
	body.tablet .gmenu .second > li a {
		display: block;
		padding: 0.8em 0.5em 0.8em 3.7em;
		position: relative;
	}
	body.pc     .gmenu .second > li a:after,
	body.tablet .gmenu .second > li a:after {
		content: "";
		width: 20px;
		height: 20px;
		margin-top: -10px;
		background: url(https://www.jnfl.co.jp/ja/assets/common/images/globalmenu_icon.png) no-repeat;
		background-position: -20px 0;
		background-size: 60px auto;
		position: absolute;
		top: 50%;
		right: 1em;
	}
}

/* SP用グローバルナビのフッター（閉じるボタン）
//---------------------------------------------------*/
body.sp header .spmenu-footer {
	height: 200px;
	background: #7bcb0a;
}

body.sp header .spmenu-footer .spclose-btn {
	content: "";
	width: 80px;
	height: 80px;
	margin: 0 auto;
	background-image: url(https://www.jnfl.co.jp/ja/assets/common/images/spmenu-close.png);
	background-size: 80px auto;
	position: relative;
	top: 35px;
	display: block;
}

/* @media only screen and (max-width: 680px) { */
@media only screen and (max-width: 834px) {
	body.pc     header .spmenu-footer,
	body.tablet header .spmenu-footer {
		height: 200px;
		background: #7bcb0a;
	}
	body.pc     header .spmenu-footer .spclose-btn,
	body.tablet header .spmenu-footer .spclose-btn {
		content: "";
		width: 80px;
		height: 80px;
		margin: 0 auto;
		background-image: url(https://www.jnfl.co.jp/ja/assets/common/images/spmenu-close.png);
		background-size: 80px auto;
		position: relative;
		top: 35px;
		display: block;
	}
}

/* 緑背景のホバーメニュー
//===================================================*/
.submenu .hover-subMenu-block {
	position:relative;
	visibility:hidden;
}
.submenu .hover-subMenu-inner {
    width:1000px;
	margin-left:-500px;
	border-radius:5px;
	position:absolute;
	top:0px;
	left:50%;
}
.submenu .hover-subMenu {
	margin-top:10px;
    padding:10px;
    background:#7BCB0A;
	font-size:.95em;
    border-radius:5px;
    -webkit-border-radius:5px;
    -moz-border-radius:5px;
	box-shadow:0px 5px 6px -2px #999;
    -moz-box-shadow:0px 5px 6px -2px #999;
    -webkit-box-shadow:0px 5px 6px -2px #999;
}
.submenu .hover-subMenu a {
	margin:1px;
	padding:3px 15px;
	color:#ffffff;
	display:inline-block;
	text-decoration:none;
}
.submenu .hover-subMenu a:hover,
.submenu .hover-subMenu a.active {
	background:#4EAF00;
	border-radius:5px;
    -webkit-border-radius:5px;
    -moz-border-radius:5px;
	text-decoration:none;
}

/* 「お取引先様へ」の単独リンク
//===================================================*/
.gmenu-transaction {
	height: 35px;
    margin: 3px 0 0 0;
    padding-left: 15px;
    /* border-left: solid 1px #ccc; */
    font-size: 1.4rem;
}
.gmenu-transaction__btn {
	display: flex;
    align-items: center;
	justify-content: center;
    height: 100%;
    padding: 0 10px;
    background-color: #0099d6;
    border-radius: 3px;
    color: #fff;
	font-size: 13px;
	transition: background-color .2s ease;
}
.gmenu-transaction__btn:hover {
    background-color: #0082b7;
    color: #fff;
}
.pc .gmenu-transaction__btn:hover,
.pc .gmenu-transaction__btn:active {
	text-decoration: none;
    color: #fff;
}
@media only screen and (max-width: 900px){
	.gmenu-transaction__btn {
		padding: 0 .75em;
		font-size: 14px;
	}
}

/* 各公式SNSへのリンク
//===================================================*/
.gmenu-sns {
	display: flex;
	gap: 7px;
	height: 35px;
	margin: 3px 0 0 15px;
    padding-left: 10px;
    border-left: solid 1px #ccc;
}
@media only screen and (max-width: 834px) {
	.misc.cloned .gmenu-sns {
		gap: 10px;
		margin: 0;
		padding: 0;
		border: none;
	}
	.misc.cloned .gmenu-sns a img {
		width: 30px;
	}
}

/* 文字サイズ変更機能
//===================================================*/
.fontchange {
	font-size: 10px;
	font-size: 1rem;
}
.en .fontchange {
	font-size: 12px;
	font-size: 1.2rem;
}

.fontchange,
.fontchange dd {
	margin: 0;
	text-align: center;
	display: inline-block;
	-webkit-touch-callout: none;
					touch-callout: none;
	-webkit-user-select: none;
	 -khtml-user-select: none;
		 -moz-user-select: none;
			-ms-user-select: none;
					user-select: none;
}

.fontchange dd {
	font-size: 11px;
	font-size: 1.1rem;
	padding: 0 0.3em;
	border: 1px solid #ccc;
	background: #f3f3f3;
	text-align: center;
}
.fontchange dd:not(.disable):hover {
	cursor: pointer;
	text-decoration: none;
	border: 1px solid #999;
	background: #7f7f7f;
	color: #fff;
}
.fontchange dd.disable {
	opacity: .5;
}
.en .fontchange dd {
	font-size: 12px;
	font-size: 1.2rem;
	padding: 0.05em 0.3em;
}

form.fontchange,
form.fontchange input,
form.fontchange output {
	display: inline-block;
	vertical-align: middle;
}

form.fontchange output {
	min-width: 1.5em;
}

.fontrange input[type="range"] {
	width: 100px;
	-webkit-appearance: none;
	display: inline-block;
	margin: 0;
	padding: 0;
	position: relative;
	cursor: pointer;
	vertical-align: middle;
	line-height: 28px;
	box-shadow: 0 1px 1px rgba(255, 255, 255, 0.6);
	height: 12px;
	background: #fff;
	margin: 0 10px;
	border-radius: 2px;
	border: 1px solid #333;
	border-bottom: 1px solid #555;
	box-shadow: inset 0 1px 2px rgba(0, 0, 0, 0.2), 0 1px 0 rgba(255, 255, 255, 0.2);
	background: linear-gradient(#666, #999);
	background-color: #6391E5;
	background-repeat: no-repeat;
}
@media only screen and (min-width: 481px) and (max-width: 768px) {
	.fontrange input[type="range"] {
		width: 70px;
	}
}

.fontrange input[type="range"]::-webkit-slider-runnable-track {
	margin: 0 -7px;
}

.fontrange input[type="range"]::-webkit-slider-thumb {
	-webkit-appearance: none;
	cursor: pointer;
	border: 0px solid #000;
	width: 14px;
	height: 20px;
	background: rgba(0, 0, 255, 0.5);
	border-radius: 3px;
	border: 1px solid #777;
	border-top-color: #999;
	background: -webkit-linear-gradient(#ddd, #fff);
	background: -moz-linear-gradient(#ddd, #fff);
	background: linear-gradient(#ddd, #fff);
	box-shadow: 0 1px 1px rgba(0, 0, 0, 0.2), inset 0px 1px 1px #fff;
}

.fontrange dl {
	text-align: center;
}

.fontrange dd {
	width: 25%;
	text-align: center;
	display: none;
}

.fontrange .small {
	text-align: left;
}

.fontrange .large {
	text-align: right;
}

.fontrange {
	display: none;
}

.sp .fontrange {
	display: inline-block;
}

.sp .fontchange {
	display: none;
}

/* @media only screen and (max-width: 680px) { */
@media only screen and (max-width: 834px) {
		.fontchange {
		display: none;
	}
}

/* サイト内検索
//===================================================*/
.report-list-search {
	text-align: center;
}
.search-form-area {
	max-width: 500px;
    margin: auto;
    text-align: center;
}
.search .container .search-form-area {
	margin-bottom: 30px;
}
.header .search-form-area {
	margin-top: 18px;
}
.search-input-area {
    display: flex;
    gap: 1rem;
}
.search-input-area input {
	flex: 1 1 0;
	border: 1px solid #ccc;
	border-radius: 2px 0 0 2px;
	padding: 0.5px 4px;
}
.search-input-area input:focus,
.search-input-area button:focus {
	outline: none;
}
.search-input-area button {
    font-size: 1.6rem;
    min-width: 80px;
    min-height: 40px;
	padding-top: 2px;
	padding-bottom: 2px;
	border: 1px solid #ccc;
	border-radius: 0 2px 2px 0;
	background: #f3f3f3;
	color: #1b1b1b;
}
.search-input-area button:hover {
	background: #7f7f7f;
	color: #fff;
}
.header .search-input-area {
	gap: 0.5rem;
}
.header .search-input-area input {
	font-size: 12px;
	width: 120px;
	height: 22px;
}
.header .search-input-area button {
	font-size: 1.2rem;
    min-width: auto;
    min-height: auto;
	height: 22px;
	padding-top: 0;
	padding-bottom: 0;
}
.search-result-area {
	margin-bottom: 30px;
}
.search-result-area a,
.search-result-area a:link,
.search-result-area a:visited {
	color: #438b08;
	border-bottom: 1px dotted #4faf00;
	text-decoration: none;
}
.pc .search-result-area a:hover,
.pc .search-result-area a:active,
.pc .search-result-area a:focus {
	color: #fff;
	background-color: #4faf00;
	text-decoration: none;
}
.search-result-area ol,
.search-result-area li {
	margin: 0;
	padding: 0;
	list-style: none;
}
.search-result-area .body {
    font-size: 1.4rem;
    color: #333;
}
.search-result-area cite {
	font-style: normal;
    font-size: 1.2rem;
}
.search-result-area .paging {
	display: table;
	margin: 0 auto;
	margin-bottom: 0 !important;
	padding: 0;
	list-style: none;
}
.search-result-area .paging li {
	display: table-cell;
	vertical-align: middle;
	text-align: center;
	width: 33px;
	height: 33px;
}
.search-result-area .paging li.disable a {
	cursor: default;
}
.search-result-area .paging li span {
	display: block;
	width: 33px;
	height: 33px;
	text-indent: 100%;
	white-space: nowrap;
	overflow: hidden;
	font-size: 0;
}
.search-result-area .paging li span:before {
	display: block;
	content: "";
	position: absolute;
	background-image: url(/ja/business/image/year-selector.png);
	width: 33px;
	height: 33px;
	background-size: cover;
	background-color: #4faf00;
	border-radius: 50%;
}
.search-result-area .paging li span:hover:before {
	background-color: #005e15;
}
.search-result-area .paging .prev span:before {
	background-image: url(/ja/business/image/year-selector-before.png);
	width: 33px;
	height: 33px;
	background-size: cover;
}
.search-result-area .paging .current {
	font-size: 28px;
	font-size: 2.8rem;
	width: auto;
	padding: 0.7em 0.6em 0.6em;
}
.search-result-area .paging .disable span:before {
	background-color: #e6e6e6;
	cursor:default;
}
.search-result-area .paging .disable span:hover:before {
	background-color: #e6e6e6;
}

/* サブヘッダー
//===================================================*/
.subhead {
	background: url(https://www.jnfl.co.jp/ja/assets/common/images/head-image.png) repeat-x top center;
	background-color: #fff !important;
	text-align: center;
	position: relative;
	z-index: 3;
	height: 100px;
}
/* @media only screen and (max-width: 680px) { */
@media only screen and (max-width: 834px) {
.subhead {
	height: 120px;
}
}
.subhead a:link, .subhead a:visited {
	color: #4faf00;
}
.subhead a:hover, .subhead a:active, .subhead a:focus {
	color: #7bcb0a;
}
.subhead .parent {
	margin: 0 auto;
	padding: 25px;
	border-radius: 100px 100px 0 0;
	width: 160px;
    height: 80px;
	background: #fff;
	position: relative;
	bottom: -21px;
	left: 0;
	right: 0;
}
.subhead .parent a {
	font-size: 11px;
	font-size: 1.1rem;
	display: block;
	font-weight: normal;
	outline: none;
	position: absolute;
	top: 20px;
	left: 0;
	right: 0;
	line-height: .5;
}
.subhead .parent a:before {
	content: "";
	display: block;
	margin: 0 auto 10px;
}
body:not(.index) .subhead .parent a:after {
	content: "";
	display: block;
	background-image: url(https://www.jnfl.co.jp/ja/assets/common/images/sprite/sprite.png);
	background-position: -44px 0px;
	width: 9px;
	height: 7px;
	background-size: 1405px 44px;
	position: absolute;
	z-index: 2;
	left: 0;
	right: 0;
	margin: auto;
	bottom: -14px;
}

.company .subhead .parent a:before,
.about .subhead .parent a:before {
	background-image: url(../images/sprite/sprite.png);
	background-position: -1165.5px 0px;
	width: 44px;
	height: 44px;
	background-size: 1405px 44px;
}

.business .subhead .parent a:before {
	background-image: url(../images/sprite/sprite.png);
	background-position: -1312.5px 0px;
	width: 44px;
	height: 44px;
	background-size: 1405px 44px;
}

.special .subhead .parent a:before,
.activity .subhead .parent a:before {
	background-image: url(../images/sprite/sprite.png);
	background-position: -969.5px 0px;
	width: 44px;
	height: 44px;
	background-size: 1405px 44px;
}

.release .subhead .parent a:before {
	background-image: url(../images/sprite/sprite.png);
	background-position: -1018.5px 0px;
	width: 44px;
	height: 44px;
	background-size: 1405px 44px;
}

.recruit .subhead .parent a:before {
	background-image: url(../images/sprite/sprite.png);
	background-position: -1067.5px 0px;
	width: 44px;
	height: 44px;
	background-size: 1405px 44px;
}

.pr .subhead .parent a:before {
	background-image: url(../images/sprite/sprite.png);
	background-position: -1116.5px 0px;
	width: 44px;
	height: 44px;
	background-size: 1405px 44px;
}

.transaction .subhead .parent a:before {
	background: url(../images/icon/icon-transaction.png) no-repeat 0 center;
	width: 44px;
	height: 44px;
	background-size: cover;
}

/* サブメニュー
//===================================================*/
.submenu {
	font-size: 15px;
	font-size: 1.5rem;
	position: relative;
	margin: 0;
    background: #fff;
	z-index: 2;
	border-bottom: 1px solid #e6e6e6;
}
.submenu.has-child {
	margin: -20px 0 90px;
}
.submenu ul {
	text-align: center;
	margin: 0 auto;
	padding: 0;
}
.submenu li {
	display: inline-block;
	margin: 0;
	list-style: none;
}
.submenu li a {
	display: inline-block;
	padding: 0.7em 1em 0.65em;
	position: relative;
}
.submenu .parent > li > a {
	padding: 1.45em 1em;
}
.submenu .parent > li:first-child {
	padding-right: 3em;
}
.submenu .parent > li:first-child a:after {
	content: "";
	display: block;
	position: absolute;
	right: -1.5em;
	top: 0;
	bottom: 0;
	margin: auto;
	width: 1px;
	height: 1em;
	border-right: 2px solid #e6e6e6;
}
.submenu .child {
	background: #eee;
	display: none;
}
.submenu .active > a {
	font-weight: bold;
}
.submenu .active > a:hover {
	text-decoration: none;
	cursor: text;
}

/* スクロールでページ上部にサブメニューを残す要素 */
.submenu.scrollView {
	width: 100%;
	margin: 0;
	padding: 0;
	background: #ffffff;
	position: fixed;
	top: 0;
	left: 0;
	display: none;
	z-index: 10000;
}

@media only screen and (min-width: 1000px) {
	.pc .submenu .parent,
	.tablet .submenu .parent {
		display: flex;
		align-items: center;
		justify-content: center;
	}
	.pc .submenu .parent > li a.nowrap,
	.tablet .submenu .parent > li a.nowrap {
		white-space: nowrap;
	}
}
/* 以下のstyleをbody.pc、body.tabletのみに適用をお願いします */
@media only screen and (min-width: 681px) {
/*	.pc .submenu .parent,
	.tablet .submenu .parent {
		display: flex;
		align-items: center;
		justify-content: center;
	}
*/	.pc .submenu .parent > li a,
	.tablet .submenu .parent > li a {
		text-decoration: none;
		border-bottom: 2px transparent solid;
		/*border-bottom: 2px #ffffff solid;
		margin-bottom: 1px;*/
		line-height: 1.4;
	}
	.pc .submenu .parent > li:hover a,
	.pc .submenu .parent > li.active a,
	.tablet .submenu .parent > li:hover a,
	.tablet .submenu .parent > li.active a {
		border-bottom-color: #55b209;
	}
	.pc .submenu .parent > li:first-child a:after,
	.tablet .submenu .parent > li:first-child a:after {
		content: "";
		background: url("https://www.jnfl.co.jp/ja/assets/common/images/submenu-arrow.png");
		right: -2.5em;
		width: 19px;
		height: 45px;
		border-right: none;
	}
	.pc .submenu .child,
	.tablet .submenu .child {
		padding-top: 4px;
		box-shadow: 0 8px 4px -4px #b7b7b7 inset;
	}
	.mac.safari.pc .submenu .child > li a {
		padding: 10px 15px;/*Safariでの位置ずれ解消*/
	}
	.pc .submenu .child > li,
	.tablet .submenu .child > li {
		position: relative;
	}
	.pc .submenu .child > li a,
	.tablet .submenu .child > li a {
		text-decoration: none;
		border-bottom: 2px transparent solid;
		/*border-bottom: 2px #eeeeee solid;*/
	}
	.pc .submenu .child > li:hover a,
	.pc .submenu .child > li.active a,
	.tablet .submenu .child > li:hover a,
	.tablet .submenu .child > li.active a {
		border-bottom-color: #55b209;
	}
	.pc .submenu .child > li a:after,
	.tablet .submenu .child > li a:after {
		content: "";
		display: block;
		position: absolute;
		left: -3px;
		top: 0;
		bottom: 0;
		margin: auto;
		width: 1px;
		height: 2em;
		border-left: 1px solid #dcdcdc;
		border-right: 1px solid #ffffff;
	}
	.pc .submenu .child > li:first-child a:after,
	.tablet .submenu .child > li:first-child a:after {
		content: none;
	}
}

/* サブメニュー(アイコン下の2段メニュー) */
.business-about.cycle .submenu .child.cycle,
.business-about.hlw .submenu .child.hlw,
.business-about.llw .submenu .child.llw,
.business-about.mox .submenu .child.mox,
.business-about.uran .submenu .child.uran,
.business-monitoring.realtime .submenu .child.realtime,
.business-monitoring.periodic .submenu .child.periodic,
.business-monitoring.pa-monitoring .submenu .child.pa-monitoring,
.business-monitoring.faq .submenu .child.faq,
.business-report.quality .submenu .child.quality,
.business-report.transport .submenu .child.transport {
	display: block;
}

.index .submenu {
	display: none;
}

.submenu .parent > li.active ul {
	display: block;
	position: absolute;
	top: 60px;
	margin: auto;
	left: 0;
	right: 0;
}

/* ページ内リンク（目次）
//===================================================*/
.toc {
	font-size: 14px;
	font-size: 1.4rem;
	margin: -35px 0 70px !important;
	padding: 0;
}
@media only screen and (max-width: 480px) {
	.toc {
		display: none;
	}
}

.toc li {
	display: inline-block;
	margin: 0;
	padding: 0;
	list-style: none;
	position: relative;
}
.toc a {
	color: #1b1b1b;
	margin-right: 20px;
	padding: 0.2em 0 0.2em 20px;
	display: block;
}
.toc a:link,
.toc a:visited,
.toc a:hover,
.toc a:active {
	text-decoration: none;
	border-bottom: none;
	background: inherit;
	color: #1b1b1b;
}
.pc .toc a:hover,
.toc a.touchhover {
	text-decoration: underline;
}
.toc a:before {
	content: "";
	display: block;
	background-image: url(https://www.jnfl.co.jp/ja/assets/common/images/sprite/sprite.png);
	background-position: -319.5px 0px;
	width: 17px;
	height: 17px;
	background-size: 1405px 44px;
	background-color: #4faf00;
	border-radius: 50%;
	position: absolute;
	top: .5em;
	left: 0;
}

div.update {
	text-align: right;
	margin: 0 0 2.6em;
	padding: 0;
}

.toc + div.update {
	margin: -35px 0 2.6em;
}
@media only screen and (max-width: 480px) {
	div.update {
		margin-bottom: 1em;
		font-size: .8em;
	}
	.toc + div.update {
		margin: 0 0 1em;
	}
}

@media only screen and (min-width: 681px) {
	body.pc .submenu .submenutitle,
	body.tablet .submenu .submenutitle {
		display: none;
	}
	body.pc .submenu .parent > li ul.submcloned,
	body.tablet .submenu .parent > li ul.submcloned {
		display: none;
	}
}

body.sp .submenu {
	margin: 0 0 20px;
}
body.sp .submenu .submenutitle {
	padding: 0.5rem 0 1rem;
	border-bottom: #dddddd 1px solid;
	text-align: center;
	position: relative;
	cursor: pointer;
}
body.sp .submenu .submenutitle:after {
	content: "";
	width: 20px;
	height: 20px;
	margin-top: -10px;
	background: url("https://www.jnfl.co.jp/ja/assets/common/images/globalmenu_icon.png") no-repeat;
	background-position: 0 0;
	background-size: 60px auto;
	position: absolute;
	top: 50%;
	right: 1em;
	transition: -moz-transform 0.3s linear;
	-moz-transition: -moz-transform 0.3s linear;
	-webkit-transition: -webkit-transform 0.3s linear;
	-o-transition: -o-transform 0.3s linear;
	-ms-transition: -ms-transform 0.3s linear;
}
body.sp .submenu .submenutitle.open:after {
	transform: rotate(180deg);
	-moz-transform: rotate(180deg);
	-webkit-transform: rotate(180deg);
	-o-transform: rotate(180deg);
	-ms-transform: rotate(180deg);
}
body.sp .submenu .parent {
	border-top: #f5f3f3 4px solid;
	display: none;
}
body.sp .submenu .parent > li {
	margin: 0 1em;
	border-top: #dddddd 1px solid;
	text-align: left;
	display: block;
	position: relative;
}
body.sp .submenu .parent > li:first-child {
	padding-right: 0;
	border-top: none;
}
body.sp .submenu .parent > li > a {
	width: 100%;
	padding: 1em 0 1em 1em;
	position: relative;
}
body.sp .submenu .parent > li.active > a:before {
	content: "";
	width: 1em;
	height: 100%;
	background: #7bcb0a;
	position: absolute;
	top: 0;
	left: -1em;
}
body.sp .submenu .parent > li:first-child a {
	border-top: none;
}
body.sp .submenu .parent > li:first-child > a:after,
body.sp .submenu .parent > li > a:after {
	content: "";
	width: 20px;
	height: 20px;
	margin-top: -10px;
	border-right: none;
	background: url("https://www.jnfl.co.jp/ja/assets/common/images/globalmenu_icon.png") no-repeat;
	background-position: -20px 0;
	background-size: 60px auto;
	position: absolute;
	top: 50%;
	right: 0;
}
body.sp .submenu .parent > li > a.has-childmenu:after {
	content: "";
	width: 20px;
	height: 20px;
	margin-top: -10px;
	background: url("https://www.jnfl.co.jp/ja/assets/common/images/globalmenu_icon.png") no-repeat;
	background-position: 0 0;
	background-size: 60px auto;
	position: absolute;
	top: 50%;
	right: 0;
	transition: -moz-transform 0.3s linear;
	-moz-transition: -moz-transform 0.3s linear;
	-webkit-transition: -webkit-transform 0.3s linear;
	-o-transition: -o-transform 0.3s linear;
	-ms-transition: -ms-transform 0.3s linear;
}
body.sp .submenu .parent > li > a.has-childmenu.open:after {
	transform: rotate(180deg);
	-moz-transform: rotate(180deg);
	-webkit-transform: rotate(180deg);
	-o-transform: rotate(180deg);
	-ms-transform: rotate(180deg);
}
body.sp .submenu .parent > li ul.submcloned {
	display: none;
}
body.sp .submenu .parent > li.active ul.submcloned {
	display: block;
	position: static;
}
body.sp .submenu .parent > li ul.submcloned {
	width: 100%;
	padding: 0 1em;
	box-sizing: content-box;
	margin: 0 0 0 -1em;
	background: #eeeeee;
	display: none;
}
body.sp .submenu .parent > li.active ul.submcloned {
	display: block;
	position: static;
}
body.sp .submenu .submcloned li {
	text-align: left;
	display: block;
	position: relative;
}
body.sp .submenu .submcloned li > a {
	width: 100%;
	padding: 16px 30px 16px 36px;
	border-top: #ffffff 1px solid;
	position: relative;
}
body.sp .submenu .submcloned li > a:after {
	content: "";
	width: 20px;
	height: 20px;
	margin-top: -10px;
	border-right: none;
	background: url("https://www.jnfl.co.jp/ja/assets/common/images/globalmenu_icon.png") no-repeat;
	background-position: -20px 0;
	background-size: 60px auto;
	position: absolute;
	top: 50%;
	right: 0;
}
body.sp .submenu .submcloned li:first-child a {
	border-top: none;
}
body.sp .submenu .submcloned li.active > a:before {
	content: "";
	width: 1em;
	height: 100%;
	background: #7bcb0a;
	position: absolute;
	top: 0;
	left: -1em;
}
body.sp .submenu ul.child {
	display: none !important;
}
/* @media only screen and (max-width: 680px) { */
@media only screen and (max-width: 834px) {
	.submenu {
		margin: 0 0 20px;
	}
	.submenu .submenutitle {
		padding: 0.5rem 0 1rem;
		border-bottom: #dddddd 1px solid;
		text-align: center;
		position: relative;
		cursor: pointer;
	}
	.submenu .submenutitle:after {
		content: "";
		width: 20px;
		height: 20px;
		margin-top: -10px;
		background: url("https://www.jnfl.co.jp/ja/assets/common/images/globalmenu_icon.png") no-repeat;
		background-position: 0 0;
		background-size: 60px auto;
		position: absolute;
		top: 50%;
		right: 1em;
		transition: -moz-transform 0.3s linear;
		-moz-transition: -moz-transform 0.3s linear;
		-webkit-transition: -webkit-transform 0.3s linear;
		-o-transition: -o-transform 0.3s linear;
		-ms-transition: -ms-transform 0.3s linear;
	}
	.submenu .submenutitle.open:after {
		transform: rotate(180deg);
		-moz-transform: rotate(180deg);
		-webkit-transform: rotate(180deg);
		-o-transform: rotate(180deg);
		-ms-transform: rotate(180deg);
	}
	.submenu .parent {
		border-top: #f5f3f3 4px solid;
		display: none;
	}
	.submenu .parent > li {
		margin: 0 1em;
		border-top: #dddddd 1px solid;
		text-align: left;
		display: block;
		position: relative;
	}
	.submenu .parent > li:first-child {
		padding-right: 0;
		border-top: none;
	}
	.submenu .parent > li > a {
		width: 100%;
		padding: 1em 1.3em 1em 1em;
		position: relative;
	}
	.submenu .parent > li.active > a:before {
		content: "";
		width: 1em;
		height: 100%;
		background: #7bcb0a;
		position: absolute;
		top: 0;
		left: -1em;
	}
	.submenu .parent > li:first-child a {
		border-top: none;
	}
	.submenu .parent > li:first-child > a:after,
	.submenu .parent > li > a:after {
		content: "";
		width: 20px;
		height: 20px;
		margin-top: -10px;
		border-right: none;
		background: url("https://www.jnfl.co.jp/ja/assets/common/images/globalmenu_icon.png") no-repeat;
		background-position: -20px 0;
		background-size: 60px auto;
		position: absolute;
		top: 50%;
		right: 0;
	}
	.submenu .parent > li > a.has-childmenu:after {
		content: "";
		width: 20px;
		height: 20px;
		margin-top: -10px;
		background: url("https://www.jnfl.co.jp/ja/assets/common/images/globalmenu_icon.png") no-repeat;
		background-position: 0 0;
		background-size: 60px auto;
		position: absolute;
		top: 50%;
		right: 0;
		transition: -moz-transform 0.3s linear;
		-moz-transition: -moz-transform 0.3s linear;
		-webkit-transition: -webkit-transform 0.3s linear;
		-o-transition: -o-transform 0.3s linear;
		-ms-transition: -ms-transform 0.3s linear;
	}
	.submenu .parent > li > a.has-childmenu.open:after {
		transform: rotate(180deg);
		-moz-transform: rotate(180deg);
		-webkit-transform: rotate(180deg);
		-o-transform: rotate(180deg);
		-ms-transform: rotate(180deg);
	}
	.submenu .parent > li ul.submcloned {
		display: none;
	}
	.submenu .parent > li.active ul.submcloned {
		display: block;
		position: static;
	}
	.submenu .parent > li ul.submcloned {
		width: 100%;
		padding: 0 1em;
		box-sizing: content-box;
		margin: 0 0 0 -1em;
		background: #eeeeee;
		display: none;
	}
	.submenu .parent > li.active ul.submcloned {
		display: block;
		position: static;
	}
	.submenu .submcloned li {
		text-align: left;
		display: block;
		position: relative;
	}
	.submenu .submcloned li > a {
		width: 100%;
		padding: 16px 30px 16px 36px;
		border-top: #ffffff 1px solid;
		position: relative;
	}
	.submenu .submcloned li > a:after {
		content: "";
		width: 20px;
		height: 20px;
		margin-top: -10px;
		border-right: none;
		background: url("https://www.jnfl.co.jp/ja/assets/common/images/globalmenu_icon.png") no-repeat;
		background-position: -20px 0;
		background-size: 60px auto;
		position: absolute;
		top: 50%;
		right: 0;
	}
	.submenu .submcloned li:first-child a {
		border-top: none;
	}
	.submenu .submcloned li.active > a:before {
		content: "";
		width: 1em;
		height: 100%;
		background: #7bcb0a;
		position: absolute;
		top: 0;
		left: -1em;
	}
	.submenu ul.child {
		display: none !important;
	}
}
/*■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■*/

/*########################################################
	カテゴリ別スタイル
##########################################################*/


/*━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
	カテゴリトップ
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━*/

/* スライダー */
.index .slider {
	margin-bottom: 8px;
}

/* メニュー */
.index .container {
	max-width: 1000px;
}
.index .cyclemenu .category {
	display: inline-block;
	vertical-align: top;
	width: 30%;
	margin: 0 5% 3em 0;
}
.index .cyclemenu .category:last-child {
	margin-bottom: 0;
}
.index .cyclemenu .category:nth-child(3n) {
	margin-right: 0;
}
@media only screen and (max-width: 480px) {
	.index .cyclemenu .category {
		width: 100%;
		margin: 0 0 30ox 0;
		margin-right: 0;
	}
	.index .cyclemenu .description {
		padding: 24px 10% 0;
	}
	.index .cyclemenu .pages {
		padding: 0 10%;
	}
}
.index .cyclemenu .title {
	font-size: 24px;
	font-size: 2.4rem;
}
.index .cyclemenu .description {
	padding: 24px 0 0;
	border-top: 1px solid #e6e6e6;
	font-size: 15px;
	font-size: 1.5rem;
}
.index .cyclemenu .pages {
	margin: 24px 0 4em;
	padding: 0;
}
.index .cyclemenu .pages li {
	position: relative;
	list-style: none;
	text-align: justify;
	text-justify: inter-ideograph;
	margin-bottom: 5px;
	padding: 0 0 0 20px;
}
.index .cyclemenu .pages a {
	width: 100%;
	margin: 0;
	padding: 0;
}
.index .cyclemenu .pages a:before {
	content: "";
	display: block;
	background-image: url(https://www.jnfl.co.jp/ja/assets/common/images/sprite/sprite.png);
	background-position: -298px 0px;
	width: 17px;
	height: 17px;
	background-size: 1405px 44px;
	position: absolute;
	top: .25em;
	left: 0;
}

/* 更新履歴 */
.index .whatsnew {
	margin: 4em 0;
	text-align: justify;
	text-justify: inter-ideograph;
}
.index .whatsnew .title {
	font-size: 1.857em;
}
.index .whatsnew .list {
	background: #eee;
	width: 100%;
	padding: 36px;
}
.index .whatsnew table {
	width: 100%;
	margin: 0;
}
.index .whatsnew th,
.index .whatsnew td {
	vertical-align: top;
	padding: .2em;
}
.index .whatsnew th {
	white-space: nowrap;
}
.index .whatsnew th:first-child {
	width: 7.5em;
}
.index .whatsnew a {
	text-decoration: none;
}
.index .whatsnew tr {
	border-bottom: 1px solid transparent;
}
.index .whatsnew tr.hover {
	border-bottom: 1px solid #1b1b1b;
}
@media only screen and (max-width: 480px) {
	.index .whatsnew {
		margin: 40px 0;
	}
	.index .whatsnew .title {
		font-size: 1.6em;
	}
	.index .whatsnew .list {
		padding: 15px;
	}
	.index .whatsnew td {
		padding: 0;
		margin-bottom: 1em;
	}
	.index .whatsnew .sp-table tr:last-child td {
		margin-bottom: 0;
	}
}

/*━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
	カテゴリ 第2階層
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━*/

/*=== 長方形の大きな画像でリンクを貼るメニュー ===*/
/*例：世界最高技術への挑戦(/ja/special/highest-technology/)
		 地域と共に（/ja/special/with-community/） など*/

.index2 ol.menu {
	margin: 0;
	padding: 0;
}
.index2 ol.menu li {
	position: relative;
	list-style: none;
	margin-bottom: 46px;
}
.index2 ol.menu .menu-image {
	width: 94%;/*1000pxに対する940px*/
	position: absolute;
	right: 0;
	bottom: 0;
	z-index: 1;
}
.index2 ol.menu a {
	transition: opacity 0.3s ease-out;
}
.index2 ol.menu a:hover,
.index2 ol.menu a:focus {
	opacity: .7;
}

.index2.sp ol.menu .menu-image {
	width: 92.1875%;/*640pxに対する590px*/
	z-index: 1;
}
.index2.sp ol.menu .menu-number {
	width: 20.3125%;/*640pxに対する130px*/
	position: absolute;
	right: 0;
	bottom: 0;
	z-index: 1;
}


/*━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
	サイトトップ(home)
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━*/

.home body {
	font-size: 14px;
	font-size: 1.4rem;
}
.home.pc header nav,
.home.tablet header nav {
	border-bottom: 0;
}

/*=== メインエリア ===:*/

.home .main section > table,
.home .main .info-contents {
	display: block;
	margin-left: 20px;
	margin-bottom: 0;
	/*L字画像と斜線画像。L字はサイズ固定、斜線は端まで表示*/
	background-image: url(../../home/images/main-list-border.png), url(../../home/images/main-list-sprite.png);
	background-repeat: no-repeat,
			repeat-x;
	padding: 33px 0 0 33px;
	border-collapse: separate;
	border-spacing: 0 1em;
}

.home .main section + section {
	margin-top: 74px;
}

@media only screen and (max-width: 480px) {
	.home .main section > table,
	.home .main .info-contents {
		padding: 33px 16px 0 16px;
	}
	.home .main .list td,
	.home .main .info-contents td {
		display: inline-block;
		float: left;
	}
	.home .main section + section {
		margin-top: 30px;
	}
}

.home .main div.title {
	font-size: 16px;
	font-size: 2rem;
	font-weight: bold;
	padding: 0.5em 0.5em 0;
	padding-left: 2.6em;
	position: relative;
}
@media only screen and (max-width: 480px) {
.home .main div.title {
	line-height: 1.4;
}
}
.home .main div.title a:link,
.home .main div.title a:visited,
.home .main div.title a:hover,
.home .main div.title a:active {
	/*押せるが押せるようには見せない*/
	color: #000;
	text-decoration: none;
	cursor: text;
}
.home .main div.title .more {
	font-size: 11px;
	font-size: 1.1rem;
	font-weight: normal;
	position: absolute;
	bottom: 0;
	right: 0;
	padding-left: 16px;/*■→の幅＋アキ*/
}
.home .main div.title .more:hover {
	text-decoration: underline;
	cursor: pointer;
}
.home .main div.title .more:before {/*■→*/
	content: "";
	display: block;
	position: absolute;
	background-image: url(../images/sprite/sprite.png);
	background-position: -72.5px 0px;
	width: 11px;
	height: 11px;
	background-size: 1405px 44px;
	top: 0;
	bottom: 0;
	margin: auto;
	left: 0;
}

/*アイコン(プレス、トピックス、お知らせ)*/
.home .main div.title:after {/*共通部分*/
	content: "";
	display: block;
	width: 44px;
	height: 44px;
	bottom: -22px;
	left: 0;
	position: absolute;
}
.home .main .title:after {/*デフォルト画像*/
	background-image: url(../images/sprite/sprite.png);
	background-position: -1263.5px 0px;
	width: 44px;
	height: 44px;
	background-size: 1405px 44px;
	background-size: 100%;
}
.home .main .press .title:after {/*プレス*/
	background-image: url(../images/sprite/sprite.png);
	background-position: -1262.5px 0px;
	width: 44px;
	height: 44px;
	background-size: 1405px 44px;
}
.home .main .coronavirus .title:after {/*コロナ情報*/
	background-image: url(../images/icon/icon-home-mask.png);
	background-position: 0;
	background-repeat: no-repeat;
	width: 44px;
	height: 44px;
}
.home .main .topics .title:after {/*トピックス*/
	background-image: url(../images/sprite/sprite.png);
	background-position: -919.5px 0px;
	width: 44px;
	height: 44px;
	background-size: 1405px 44px;
}
.home .main .info .title:after {/*お知らせ*/
	background-image: url(../images/sprite/sprite.png);
	background-position: -1213.5px 0px;
	width: 44px;
	height: 44px;
	background-size: 1405px 44px;
}
.home .main .release .title:after {/*発表・お知らせ(2016年3月時点では、英語版の「Monthly Press Conference」のみで使用)*/
	background-image: url(../images/sprite/sprite.png);
	background-position: -1360.5px 0px;
	width: 44px;
	height: 44px;
	background-size: 1405px 44px;
}

/*お知らせ欄*/
.home .info-contents td:last-child {
	padding-left: .8em;
}
.home .info-contents td:last-child a {
	display: inline-block;
	position: relative;
	padding-left: 20px;
}
.home .info-contents td:last-child a:before {
	content: "";
	position: absolute;
	left: 0;
	top: 4px;
	background-image: url(../images/sprite/sprite.png);
	background-position: -298px 0px;
	width: 17px;
	height: 17px;
	background-size: 1405px 44px;
}
@media only screen and (max-width: 480px) {
	.home .info-contents td:last-child {
		padding-left: 0;
	}
}

/*平成29年度第2回保安検査の指摘を踏まえた、当社の取り組み状況について*/
.home .safety-inspector {
	margin-bottom: 1em;
	padding: 1.5em 0;
	background: #eee;
}
.home .safety-inspector .inner {
    width: 90%;
    margin: 0 auto;
}
.home .safety-inspector .title {
	margin: 10px 0;
	font-size: 18px;
	text-align: center;
	font-weight: bold;
}
.home .safety-inspector .txt {
	font-size: 16px;
}
.home .safety-inspector .link-left {
	display: flex;
	justify-content: flex-end;
}
.home .safety-inspector .btn-to-detail {
	margin: 2em 0 1.5em;
    border: solid 1px #4faf00;
	border-left: solid 12px #4faf00;
}
.home .safety-inspector .btn-to-detail a {
	display: block;
	width: 100%;
	height: 100%;
    padding: 1em 2em 1em 1em;
    background: #fff;
	font-size: 16px;
	font-weight: bold;
	line-height: 1.6em;
	position: relative;
}
.home .safety-inspector .btn-to-detail a::after {
    content: "";
    display: block;
    width: 12px;
    height: 20px;
    background-image: url(/ja/assets/common/images/sprite/sprite.png);
    background-position: -207.5px 0px;
    background-size: 1405px 44px;
    position: absolute;
	top: 50%;
    right: 12px;
    margin-top: -10px;
}
.home.pc .safety-inspector .btn-to-detail a:hover {
	background: #C9F38D;
	text-decoration: none;
}
.home.pc .safety-inspector .btn-to-detail a:hover::after {
    background-position: -88.5px 0px;
}
.home .safety-inspector .btn-to-detail a .date {
	color: #f00;
}
@media only screen and (min-width: 860px) {
	.home .safety-inspector .title {
		font-size: 22px;
	}
	.home .safety-inspector .txt {
		font-size: 20px;
	}
	.home .safety-inspector .btn-to-detail {
		margin: 2em 0;
	}
	.home .safety-inspector .btn-to-detail a {
		font-size: 20px;
	}
	.home .safety-inspector .btn-to-detail a::after {
		right: 25px;
	}
}
@media only screen and (min-width: 1020px) {
	.home .safety-inspector .inner {
		width: 100%;
		max-width: 900px;
	}
}

/*再処理工場のしゅん工に向けた進捗状況*/
.home .completion {
	text-align: center;
}
.home .completion .btn-to-detail {
	display: inline-block;
	margin: 1rem 0 2rem;
	box-shadow: 0px 5px 12px 0px rgba(0, 0, 0, 0.4);
	transition: opacity .2s ease-in-out;
}
.home .completion .btn-to-detail:hover {
	opacity: .6;
}

/*───────────────────────────────────────────────────────
	緊急掲載エリア
	記載内容が無いときは背景色などのスタイルを当てたくないため、
	記載内容があるときだけ .home-emergency-visible が付くようにしている
─────────────────────────────────────────────────────────*/

.home-emergency-visible {
	background: #415301;
	padding: 40px 0;
}
.home-emergency-visible > div {
	max-width: 1000px;
	margin: 0 auto;
	padding: 5%;
	background-color: #daf2be;
	background: linear-gradient(45deg, #daf2be 25%, #fff 25%, #fff 38%, #daf2be 38%, #daf2be 75%, #fff 75%, #fff 88%, #daf2be 88%, #daf2be);
	background-size: 6px 6px;
	border: 10px solid #94d539;
	border-radius: 3px;
}
.home-emergency-visible > div > p:first-child {
	margin-top: 0;
}
.home-emergency-visible > div > p:last-child {
	margin-bottom: 0;
}
.level2 .home-emergency-visible {
	margin-bottom: 40px;
}
.level2 .home-emergency-visible > div {
	border-color: #e0c400;
}
.level2 .home-emergency-visible > div > div {
/*	background: url(/ja/assets/home/images/level2.png) center top no-repeat;
	padding-top: 96px;*/
}
.level3 .home-emergency-visible > div {
	background: #fff;
	border-color: #e0c400;
}
.level3 .home-emergency-visible > div > div {
/*	background: url(/ja/assets/home/images/level3.png) center top no-repeat;
	padding-top: 148px;*/
}

.level3 {
	background: #415301;
}
.level3 .container {
	width: 100%;
	height: 100%;
	min-height: 100%;
	position: relative;
}
.level3 .home-emergency {
	padding-bottom: 2em;
}
.level3 footer {
	width: 100%;
	position: fixed;
	bottom: 0;
}

/*───────────────────────────────────────────────────────
	発表・お知らせ(release)
	トラブル情報など、一部はreleaseディレクトリ外にあるため、
	全体のCSS(このファイル)に記載
─────────────────────────────────────────────────────────*/

.release #main:not(.basic_tpl) article,
.detail article {
	line-height: 1.6;
	padding: 1em 5%;
}
.release #main:not(.basic_tpl) article p,
.release #main:not(.basic_tpl) article table,
.release #main:not(.basic_tpl) article ul,
.release #main:not(.basic_tpl) article ol,
.detail article p,
.detail article table,
.detail article ul,
.detail article ol {
	margin-bottom: 1.5em;
}
@media only screen and (max-width: 480px) {
	.release #main:not(.basic_tpl) article,
	.detail article {
		padding: 0;
	}
}
.release #main:not(.basic_tpl) article section + section,
.detail article section + section {
	margin-top: 2.5em;
}
.release #main:not(.basic_tpl) article .segment,
.detail article .segment {
	margin-bottom: 1.5em;
	padding-bottom: 1em;
	font-weight: bold;
	border-bottom: 1px solid #e6e6e6;
	text-align: justify;
	text-justify: inter-ideograph;
}
.release #main:not(.basic_tpl) article .place,
.detail article .place {
	margin: 1em 0;
	font-weight: bold;
}
.release #main:not(.basic_tpl) article .date,
.release #main:not(.basic_tpl) article .by,
.detail article .date,
.detail article .by {
	text-align: right;
}
.release #main:not(.basic_tpl) article .to,
.detail article .to {
	margin-bottom: 1em;
}
.release #main:not(.basic_tpl) article h1,
.detail article h1 {
	font-size: 2em;
	word-break: break-word;
	margin-top: .5em;
	border-bottom: 2px solid #e6e6e6;
}
.release #main:not(.basic_tpl) article h2,
.detail article h2 {
	margin-top: 3em;
	font-size: 1.5em;
	margin-bottom: 1em;
	border-bottom-color: #f5f5f5;
}
.release #main:not(.basic_tpl) article h2:first-child,
.detail article h2:first-child {
	margin-top: 0;
}
.release #main:not(.basic_tpl) article h2:before,
.release #main:not(.basic_tpl) article h2:after,
.detail article h2:before,
.detail article h2:after {
	content: none;
}
.release #main:not(.basic_tpl) article h1 + h2,
.detail article h1 + h2 {
	margin-top: 0;
	padding-top: 0;
}
.release #main:not(.basic_tpl) article h3,
.detail article h3 {
	font-size: 1.2em;
	margin: 0 0 1em;
	border: none;
}

/*以上*/
.container .end/*,
.release .end,
.detail .end*/ {
	padding-top: 2em;
	text-align: right;
}
.release .attachment + .end,
.detail .attachment + .end {
	margin-top: 4em;
}

/*テーブルの基本背景色を緑→グレーに上書き*/
.release #main:not(.basic_tpl) table thead th,
.detail table thead th {
	background: #eee;
}
.release #main:not(.basic_tpl) thead tr:not(:last-child) th,
.release #main:not(.basic_tpl) thead tr:not(:last-child) td
.detail thead tr:not(:last-child) th,
.detail thead tr:not(:last-child) td,
.release #main:not(.basic_tpl) .thbg > tbody > tr:not(:last-child) > th,
.detail .thbg > tbody > tr:not(:last-child) > th {
	/*グレー地になるため線を元の色に戻す*/
	border-bottom-color: #ddd !important;
}
.release #main:not(.basic_tpl) thead th,
.release #main:not(.basic_tpl) thead td
.detail thead th,
.detail thead td {
	/*グレー地になるため線を元の色に戻す*/
	border-right-color: #ddd !important;
}
.release #main:not(.basic_tpl) .thbg > thead > tr > th,
.release #main:not(.basic_tpl) .thbg > tbody > tr > th,
.detail .thbg > thead > tr > th,
.detail .thbg > tbody > tr > th {
	background: #eee;
}
.release #main:not(.basic_tpl) .sp-table > tbody > tr > th,
.release #main:not(.basic_tpl) .sp-table > tfoot > tr > th,
.detail .sp-table > tbody > tr > th,
.detail .sp-table > tfoot > tr > th {
	background: #eee;
}
.release.sp #main:not(.basic_tpl) .sp-js-table tbody .th,
.detail.sp #main:not(.basic_tpl) .sp-js-table tbody .th {
	background: #eee;
}
.release #main:not(.basic_tpl) .quote,
.release #main:not(.basic_tpl) div.border,
.detail .quote,
.detail div.border {
	border: 1px solid #ddd;
	margin: 1em 0 2.6em;
	padding: 2em;
}
@media only screen and (max-width: 480px) {
	.release #main:not(.basic_tpl) .quote,
	.release #main:not(.basic_tpl) div.border,
	.detail .quote,
	.detail div.border {
		padding: 2em 1em 2em;
	}
}
.release #main:not(.basic_tpl) .quote p,
.release #main:not(.basic_tpl) div.border p,
.detail .quote p,
.detail div.border p {
	margin-top: .5em;
	margin-bottom: .5em;
}
.release #main:not(.basic_tpl) .quote p:first-child,
.release #main:not(.basic_tpl) div.border p:first-child,
.detail .quote p:first-child,
.detail div.border p:first-child {
	margin-top: 1em !important;
}
.release #main:not(.basic_tpl) .quote p:last-child,
.release #main:not(.basic_tpl) div.border p:last-child,
.detail .quote p:last-child,
.detail div.border p:last-child {
	margin-bottom: 1em !important;
}

/*.release #main:not(.basic_tpl) h2 + .quote,*/
.release #main:not(.basic_tpl) h2 + div.border,
.release #main:not(.basic_tpl) h3 + .quote,
.release #main:not(.basic_tpl) h3 + div.border,
/*.detail h2 + .quote,*/
.detail h2 + div.border,
.detail h3 + .quote,
.detail h3 + div.border {
	margin-top: -1em;
}

.release .person-list {
	margin: 30px 0 20px;
}
.release .person-list-name {
	margin-bottom: 10px;
	font-size: 1.8rem;
}
.release .person-list-detail {
	display: flex;
	justify-content: space-between;
}
.release .person-list-image {
	width: 150px;
	height: 150px;
	border-radius: 200px;
    overflow: hidden;
}
.release .person-list-text {
	width: calc(100% - 150px - 20px); /* 20px= 要素間の余白 */
}
@media only screen and (max-width: 480px) {
	.release .person-list-detail {
		display: block;
	}
	.release .person-list-image {
		margin: 0 auto;
	}
	.release .person-list-text {
		width: 100%;
		margin-top: 20px;
	}
}

/* プレスリリース */
.release.press article h1 {
	text-align: center;
}

/* トピックス */
.release.topics article h1 {
	text-align: center;
}

/* 記者懇談会挨拶概要 */
.release.president-talk article h1 {
	text-align: center;
	border-bottom: none;
}
.release.president-talk article section + section {
	margin-top: 2.5em;
}
.release.president-talk .attachment {
	margin-top: 4em;
}
.release.president-talk .attach-title {
	font-size: 1.5em;
	border-bottom: 2px solid #e6e6e6;
	margin-bottom: 49px;
	padding: 8px 0 4px;
}

/* 当社関連報道についての見解 */
.release.opinion article h1 {
	text-align: center;
	border-bottom: none;
}
.release.opinion .end {
	border-top: none;
}

@media only screen and (min-width: 681px) {
	.release.opinion.pc .submenu .parent li {
		display: none;
	}
	.release.opinion.pc .submenu .parent li:nth-child(-n+6) {
		display: inline-block;
	}
}


/*━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
	jnfl.co.jpサーバーダウン時のメッセージ
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━*/

[class^="msg-serverdown-"] {
	margin: 0;
    background: #d1e4ed;
    color: #05a8f5;
    text-align: center;
}
/* ▼/ja/assets/common/inc/msg-serverdown-header.inc */
.msg-serverdown-header {
    padding: 10px 10px 8px;
    line-height: 1.2;
	display: none;
}
.msg-serverdown-header:not(:empty) {
	display: block;
}
body:not(.home) .msg-serverdown-header {
    padding: 8px 10px 7px;
	font-size: 12px;
}
body.home .header + .msg-serverdown-header {
	display: none;
}
/* ▼/ja/assets/common/inc/msg-serverdown-main.inc */
.msg-serverdown-main {
	padding: 40px 20px;
	display: none;
}
.msg-serverdown-main:not(:empty) {
	display: block;
}



/*━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
	印刷用
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━*/
@media print {

body.headerFixed {
	margin-top: 0 !important;
}
body.headerFixed > header {
	position: relative;
}

.container {
	font-size: 12px !important;
}

header .misc,
header nav,
.sptxt,
.submenutitle,
.subhead,
.submenu,
.home .sidebar,
#parallax,
footer .inner,
.totop { display: none !important; }

header > .inner {
	width: 100%;
	padding: 10px;
}
.home-emergency-visible {
	padding: 0 0 10px;
	background: transparent;
}
.home-emergency-visible > div {
	padding: 1%;
	background: none;
	border: 0;
}
.home .flex-side,
.home .flex-side section, .home .flex-side article {
	margin-right: auto;
}

.carousel_block {
	margin-bottom: 100px;
}
footer,
.en footer {
	position: relative;
	margin: 0;
	height: 265px !important;
	background: url(https://www.jnfl.co.jp/ja/assets/home/images/footer/footer-bg-repeat.png) center top repeat-x;
	background-image:
		url(https://www.jnfl.co.jp/ja/assets/home/images/footer/footer-bg.png),
		url(https://www.jnfl.co.jp/ja/assets/home/images/footer/footer-bg-repeat.png);
	background-repeat:
		no-repeat,
		repeat-x;
	background-position:
		top center,
		top center;
}

footer .copyright {
	position: absolute;
	bottom: 0;
	width: 100%;
}

div.update {
	margin-bottom: 1em;
}


.release article,
.trouble.detail article {
	padding: 10px 0;
}

.chronology_block .year {
	border-radius: 50% !important;
	width: 66px !important;
	height: 66px !important;
	/*margin-left: -30px !important;*/
}
.chronology_list>li {
	width: 45%;
	padding: 8px 16px;
}
.chronology_list>li dl {
	margin-top: 0;
}


}/*end of print*/
