@charset "utf-8";

/* ===================================================================
白 #FFF (白背景)
藍 #005377 (藍背景)
黒 #333 (黒背景)
薄灰 #E7E7EA (背景固定部分)
薄灰 rgba(176, 176, 179, .3) (背景透過部分)
濃灰 #646464 (白背景時の文字色)
濃灰 #9B9B9B (藍背景・黒背景の文字色)
橙 #F29600 (コーポレートカラー)
黄 #FFC435 (1箇所のみ 警報・注意報)
赤 #E30000 (1箇所のみ LIVEアイコン)
=================================================================== */

/* ===================================================================
RESET
=================================================================== */

html, body, div, span, applet, object, iframe,
h1, h2, h3, h4, h5, h6, p, blockquote, pre,
a, abbr, acronym, address, big, cite, code,
del, dfn, em, img, ins, kbd, q, s, samp,
small, strike, strong, sub, sup, tt, var,
b, u, i, center,
dl, dt, dd, ol, ul, li,
fieldset, form, label, legend,
table, caption, tbody, tfoot, thead, tr, th, td,
article, aside, canvas, details, embed,
figure, figcaption, footer, header, hgroup,
menu, nav, output, ruby, section, summary,
time, mark, audio, video {
	margin: 0;
	padding: 0;
	border: 0;
	font-size: 100%;
	font-family: inherit;
	background: transparent;
	vertical-align: baseline;
}

article, aside, details, figcaption, figure,
footer, header, hgroup, menu, nav, section {
	display: block;
}

body * {
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	box-sizing: border-box;
}

ol, ul {
	list-style: none;
}

blockquote, q {
	quotes: none;
}

blockquote:before,
blockquote:after,
q:before, q:after {
	content: '';
	content: none;
}

table {
	border-collapse: collapse;
	border-spacing: 0;
}

input[type="text"],
input[type="password"],
input[type="submit"],
input[type="button"],
input[type="email"],
input[type="tel"],
input[type="date"],
button, 
textarea, 
select {
	-webkit-appearance: none;
	-moz-appearance: none; 
	appearance: none; 
	text-overflow: '';
	border-radius: 0;
	border: none; 
	outline: none;
	resize: none;
}

input[type="number"]::-webkit-outer-spin-button,
input[type="number"]::-webkit-inner-spin-button {
	-webkit-appearance: none;
	margin: 0;
}

input[type="number"] {
	-moz-appearance: textfield;
}

input[type="submit"]::-webkit-search-decoration,
input[type="button"]::-webkit-search-decoration {
	display: none;
}

select::-ms-expand {
	display: none;
}

* a {
	text-decoration: none;
	color: inherit;
	font-size: inherit; 
	font-weight: inherit;
	font-family: inherit;
	text-align: inherit;
	line-height: inherit;
	cursor: pointer;
	outline: none;
}

* a img {
	border-style: none;
	outline: none;
	cursor: pointer;
}

img {
	width: 100%;
	height: auto;
	vertical-align: middle;
}

/* HTML, BODY
--------------------*/

html {
	position: relative;
	overflow-x: hidden;
	transition: opacity .3s ease-out 0s;
}

html.fixed {
    overflow: hidden;
}

body {
	position: relative;
	display: flex;
	flex-direction: column;
	min-height: 100vh;
	color: #333;
	font-size: 1.6rem;
    line-height: 1.5;
	font-family: 'ヒラギノ角ゴ ProN', sans-serif;
	overflow-x: hidden;
}

/* WRAPPER
--------------------*/

.wrapper {
	position: relative;
	display: flex;
	flex-direction: column;
	min-height: 100vh;
	width: 100%;
}

/* MAIN
--------------------*/

main {
	position: relative;
	display: block;
}

/* CONTAINER
--------------------*/

.container {
	width: 100%;
	max-width: 1030px;
	margin: 0 auto;
	padding: 0 15px;
}

/* DISPLAY
--------------------*/

.sp { display: none !important; }
.pc { display: block !important; }
.in-sp { display: none !important; }
.in-pc { display: inline !important; }

/* ===================================================================
HEADER
=================================================================== */

/* HEADER BASIC
--------------------*/

header {
    position: relative;
	width: 100%;
	padding: 0 0 60px;
	z-index: 100; /* ヘッダー系 */
}

header.upper-both { height: 120px; }
header.upper-alert { height: 120px; }
header.upper-home { height: 120px; }
header.upper-none { height: 60px; }

/* HEADER UPPER
--------------------*/

.h-upper {
	position: relative;
	width: 100%;
	height: 100%;
	background: #333;
}

.h-upper-inner {
	display: flex;
	justify-content: space-between;
	align-items: center;
	width: 100%;
	max-width: 1030px;
	margin: 0 auto;
	padding: 0 15px;
}

/* HEADER UPPER ALERT
--------------------*/

.alert-inner {
	position: relative;
	display: flex;
	justify-content: center;
	align-items: center;
	height: 60px;
	margin: 0 auto 0 0;
}

header.upper-both .alert-inner { width: calc(100% - 160px); }
header.upper-alert .alert-inner { width: 100%; }
header.upper-home .alert-inner { display: none; }
header.upper-none .alert-inner { display: none; }

.alert-inner .alert-title {
	position: relative;
	display: flex;
	justify-content: center;
	align-items: center;
	width: 64px;
	height: 100%;
	padding: 0 10px;
	color: #333;
	font-size: 14px; /* 固定 */
	font-weight: 700;
	word-break: break-all;
	z-index: 1; /* タイトル */
}

.alert-inner .alert-title:before {
	content: '';
    position: absolute;
    top: 0;
    bottom: 0;
    left: 50%;
    width: 64px;
    transform: translate(-50%, 0);
    background: #FFC435;
	clip-path: polygon(0 0, 85% 0, 100% 100%, 15% 100%);
    z-index: -1; /* タイトル擬似要素 */
}

.alert-inner .alert-list {
	position: relative;
	width: calc(100% - 64px);
	color: #FFF;
	overflow: hidden;
}

.alert-inner .alert-list ul {
	white-space: nowrap;
}

.alert-inner .alert-list ul li {
    font-size: 1.6rem;
    font-weight: 400;
	line-height: 30px; /* 固定 */
}

/* HEADER UPPER HOME
--------------------*/

.home-inner {
	position: relative;
	display: flex;
	justify-content: center;
	align-items: center;
	height: 60px;
	margin: 0 0 0 auto;
}

header.upper-both .home-inner { width: 150px; }
header.upper-alert .home-inner { display: none; }
header.upper-home .home-inner { width: 150px; }
header.upper-none .home-inner { display: none; }

.home-button {
	width: 100%;
}

.home-button a {
	display: flex;
	justify-content: center;
	align-items: center;
	width: 100%;
	height: 38px;
	padding: 7px;
	color: #FFF;
	font-size: 14px; /* 固定 */
	font-weight: 700;
	line-height: 1;
	background: #F29600;
	border-radius: 10px;
	word-break: break-all;
	transition: opacity .3s ease-out 0s;
}

.home-button a:hover {
	opacity: .7;
}

/* HEADER LOWER
--------------------*/

.h-lower {
	position: absolute;
	bottom: 0;
	left: 0;
	right: 0;
	width: 100%;
	height: 60px;
	background: #F29600;
	transition: top .2s ease 0s; /* 翻訳対策 */
}

.h-lower.fixed {
	position: fixed;
	top: 0;
}

.h-l-inner {
    position: relative;
    display: flex;
    justify-content: space-between;
    align-items: center;
	height: 60px;
}

/* HEADER LOWER LOGO
--------------------*/

.h-l-left {
	position: relative;
	width: 150px;
	height: 60px;
	padding: 5px;
}

.h-l-left a {
	position: relative;
	display: block;
    width: 100%;
    height: 100%;
}

.h-l-left a img {
    position: absolute;
    width: auto;
    max-height: 100%;
    max-width: 100%;
    vertical-align: middle;
    right: 0;
    left: 0;
    top: 0;
    bottom: 0;
    margin: auto;
}

/* HEADER LOWER H1
--------------------*/

h1 {
    position: relative;
    display: flex;
    justify-content: center;
    align-items: center;
    width: 700px;
    height: 60px;
	padding: 0 20px;
    color: #FFF;
    font-size: 2.4rem;
    line-height: 1.2; /* 固定 */
}

/* HEADER LOWER HAMBURGER
--------------------*/

.h-l-right {
	position: relative;
	display: flex;
	justify-content: flex-end;
	align-items: center;
	width: 150px;
	height: 60px;
}

.h-l-right-inner {
	display: flex;
	align-items: center;
	cursor: pointer;
}

.h-l-right-menu-title {
	color: #FFF;
	font-size: 14px; /* 固定 */
	font-weight: 700;
	margin: 0 10px 0 0;
}

.h-l-right-menu {
	position: relative;
	width: 28px;
	height: 23px;
}

.h-l-right-menu span {
	position: absolute;
	left: 50%;
	transform: translate(-50%, 0);
	display: block;
	width: 28px;
	height: 3px;
	background: #FFF;
	border-radius: 2px;
}

.h-l-right-menu span:nth-child(1) { top: 0; }
.h-l-right-menu span:nth-child(2) { top: 10px; }
.h-l-right-menu span:nth-child(3) { top: 20px; }

.h-l-right.active span:nth-child(1) {
    top: 10px;
	transform: translate(-50%, 0) rotate(45deg);
}

.h-l-right.active span:nth-child(2) {
	opacity: 0;
}

.h-l-right.active span:nth-child(3) {
    top: 10px;
	transform: translate(-50%, 0) rotate(-45deg);
}

/* ===================================================================
FOOTER
=================================================================== */

/* FOOTER BASIC
--------------------*/

footer {
	position: relative;
	display: flex;
	justify-content: center;
	align-items: center;
	width: 100%;
	margin: auto 0 0;
	text-align: center;
	color: #FFF;
	background: #333;
}

.footer-inner {
	position: relative;
	display: flex;
	justify-content: center;
	align-items: center;
	width: 100%;
	min-height: 50px;
	padding: 10px 0;
}

/* ===================================================================
SITE MENU
=================================================================== */

/* SITE MENU BASIC
--------------------*/

.site-menu {
	display: none;
	position: absolute;
    top: 0;
	right: 0;
	width: calc((100vw - 1000px) / 2 + 375px);
	padding: 5px 0 50px;
	background: #FFF;
	box-shadow: -10px 10px 20px -10px #33300029;
	z-index: 100; /* ヘッダー系 */
	transition: height .2s ease 0s, top .2s ease 0s; /* 翻訳対策 */
}

.site-menu.upper-both { height: calc(100vh - 120px); }
.site-menu.upper-alert { height: calc(100vh - 120px); }
.site-menu.upper-home { height: calc(100vh - 120px); }
.site-menu.upper-none { height: calc(100vh - 60px); }

.site-menu.upper-both.fixed,
.site-menu.upper-alert.fixed,
.site-menu.upper-home.fixed,
.site-menu.upper-none.fixed {
	position: fixed;
	top: 60px;
	height: calc(100vh - 60px);
}

.site-menu.active {
	display: block;
}

/* SITE MENU BACK
--------------------*/

.site-menu-back {
	display: none;
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 100vh;
    background: rgba(0, 0, 0, .75);
    z-index: 50;
}

.site-menu-back.active {
	display: block;
}

/* SITE MENU INNER
--------------------*/

.site-menu-inner {
	position: relative;
    width: 372px;
    margin: 0 auto 0 0;
	padding: 0 12px 0 15px;
    height: 100%;
}

.site-menu-list > ul > li {
	padding: 15px 0;
	border-top: 2px solid rgba(176, 176, 179, .3);
	word-break: break-all;
}

.site-menu-list > ul > li:first-of-type {
	border-top: none;
}

/* SITE MENU LIST MAIN
--------------------*/

.site-menu-list > ul > li > dl > dt {
	position: relative;
	padding: 0 50px 0 0;
}

.site-menu-list > ul > li > dl > dt > [class^=site-menu-] {
	display: block;
	font-size: 1.8rem;
	font-weight: 700;
}

.site-menu-list > ul > li > dl > dt > .site-menu-main-title,
.site-menu-list > ul > li > dl > dt > [accessibility-id=translation],
.site-menu-list > ul > li > dl > dt > .site-menu-form {
	cursor: pointer;
	transition: color .3s ease-out 0s;
}

.site-menu-list > ul > li > dl > dt > .site-menu-main-title:hover,
.site-menu-list > ul > li > dl > dt > [accessibility-id=translation]:hover,
.site-menu-list > ul > li > dl > dt > .site-menu-form:hover {
	color: #F29600;
}

.site-menu-list > ul > li > dl > dt > .site-menu-accessibility,
.site-menu-list > ul > li > dl > dt > .site-menu-place,
.site-menu-list > ul > li > dl > dt > .site-menu-form {
	padding: 0 0 0 45px;
}

.site-menu-list > ul > li > dl > dt > .site-menu-accessibility i[class^=fa-],
.site-menu-list > ul > li > dl > dt > .site-menu-place i[class^=fa-],
.site-menu-list > ul > li > dl > dt > .site-menu-form i[class^=fa-] {
	position: absolute;
    top: 50%;
    transform: translate(0, -50%);
    left: 0;
	width: 40px;
    font-size: 25px; /* 固定 */
	text-align: center;
}

/* SITE MENU LIST SUB
--------------------*/

.site-menu-list > ul > li > dl > dd {
	display: none;
	margin: 15px 0 0;
}

.site-menu-sub-title {
	display: block;
	margin: 15px 0 0;
	padding: 0 0 0 20px;
	font-size: 1.8rem;
	font-weight: 700;
	line-height: 1.2; /* 固定 */
	transition: color .3s ease-out 0s;
	cursor: pointer;
}

.site-menu-sub-title:first-of-type {
	margin: 0;
}

.site-menu-sub-title:hover {
	color: #F29600;
}

/* SITE MENU BUTTON
--------------------*/

.site-menu-btn {
	position: absolute;
	top: 0;
	right: 0;
	width: 25px;
	height: 25px;
	cursor: pointer;
}

.site-menu-btn:before,
.site-menu-btn:after {
	content: '';
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%, -50%);
	background: #333;
	border-radius: 2px;
	transition: background-color .3s ease-out 0s;
}

.site-menu-btn:before {
	width: 25px;
	height: 4px;
}

.site-menu-btn:after {
	width: 4px;
	height: 25px;
}

.site-menu-btn.show:after {
	content: none;
}

.site-menu-btn:hover:before,
.site-menu-btn:hover:after {
	background: #F29600;
}

/* ===================================================================
STATIC
=================================================================== */

/* STATIC HOVER OPACITY
--------------------*/

.s-hover-opacity { display: block; transition: opacity .3s ease-out 0s; }
.s-hover-opacity:hover { opacity: .7; }

/* STATIC FONT SIZE
--------------------*/

.s-font-size-largest { font-size: 100%; }
.s-font-size-large   { font-size: 80%; }
.s-font-size-normal	 { font-size: 62.5%; }

/* STATIC BACKGROUND
--------------------*/

.s-back-white { color: #333; background: #FFF; }
.s-back-blue { color: #FFF; background: #005377; }
.s-back-black { color: #FFF; background: #333; }

/* STATIC BACKGROUND CHANGE
--------------------*/

.s-back-white .site-menu { color: #333; background: #FFF; }
.s-back-blue .site-menu { color: #FFF; background: #005377; }
.s-back-black .site-menu { color: #FFF; background: #333; }

.s-back-white .site-menu-btn:before,
.s-back-white .site-menu-btn:after { background: #333; }
.s-back-blue .site-menu-btn:before,
.s-back-blue .site-menu-btn:after { background: #FFF; }
.s-back-black .site-menu-btn:before,
.s-back-black .site-menu-btn:after { background: #FFF; }

.s-back-white .site-menu-btn:hover:before,
.s-back-white .site-menu-btn:hover:after { background: #F29600; }
.s-back-blue .site-menu-btn:hover:before,
.s-back-blue .site-menu-btn:hover:after { background: #F29600; }
.s-back-black .site-menu-btn:hover:before,
.s-back-black .site-menu-btn:hover:after { background: #F29600; }

.s-back-white .tab-inner { border-bottom: 3px solid #333; }
.s-back-blue .tab-inner { border-bottom: 3px solid #FFF; }
.s-back-black .tab-inner { border-bottom: 3px solid #FFF; }

.s-back-white .main-list ul li > div[class^='cat-'] { border-bottom: 3px solid #333; }
.s-back-blue .main-list ul li > div[class^='cat-'] { border-bottom: 3px solid #FFF; }
.s-back-black .main-list ul li > div[class^='cat-'] { border-bottom: 3px solid #FFF; }

.s-back-white .iziModal { background: #FFF; }
.s-back-blue .iziModal { background: #005377; }
.s-back-black .iziModal { background: #333; }

.s-back-white .modal-informer,
.s-back-white .timeline-modal-time,
.s-back-white .modal-time,
.s-back-white .article-footer { color: #646464; }
.s-back-blue .modal-informer,
.s-back-blue .timeline-modal-time,
.s-back-blue .modal-time,
.s-back-blue .article-footer { color: #9B9B9B; }
.s-back-black .modal-informer,
.s-back-black .timeline-modal-time,
.s-back-black .modal-time,
.s-back-black .article-footer { color: #9B9B9B; }

.s-back-white .article-live-icon span { background: #FFF; }
.s-back-blue .article-live-icon span { background: #005377; }
.s-back-black .article-live-icon span { background: #333; }

.s-back-white .iziModal .iziModal-wrap .iziModal-content:before { border: 3px solid #333; }
.s-back-blue .iziModal .iziModal-wrap .iziModal-content:before { border: 3px solid #FFF; }
.s-back-black .iziModal .iziModal-wrap .iziModal-content:before { border: 3px solid #FFF; }

.s-back-white .ps__rail-x,
.s-back-white .ps__rail-y,
.s-back-white .ps__thumb-x,
.s-back-white .ps__thumb-y { background-color: #333; }
.s-back-blue .ps__rail-x,
.s-back-blue .ps__rail-y,
.s-back-blue .ps__thumb-x,
.s-back-blue .ps__thumb-y { background-color: #FFF; }
.s-back-black .ps__rail-x,
.s-back-black .ps__rail-y,
.s-back-black .ps__thumb-x,
.s-back-black .ps__thumb-y { background-color: #FFF; }

.s-back-white .tab-list .ps__rail-x,
.s-back-white .tab-list .ps__rail-y,
.s-back-white .tab-list .ps__thumb-x,
.s-back-white .tab-list .ps__thumb-y { background-color: #F29600; }
.s-back-blue .tab-list .ps__rail-x,
.s-back-blue .tab-list .ps__rail-y,
.s-back-blue .tab-list .ps__thumb-x,
.s-back-blue .tab-list .ps__thumb-y { background-color: #F29600; }
.s-back-black .tab-list .ps__rail-x,
.s-back-black .tab-list .ps__rail-y,
.s-back-black .tab-list .ps__thumb-x,
.s-back-black .tab-list .ps__thumb-y { background-color: #F29600; }

.s-back-white .timeline-list { border-top: 3px solid #333; border-bottom: 3px solid #333; }
.s-back-blue .timeline-list { border-top: 3px solid #FFF; border-bottom: 3px solid #FFF; }
.s-back-black .timeline-list { border-top: 3px solid #FFF; border-bottom: 3px solid #FFF; }

.s-back-white .timeline-detail-icon { background: #333; }
.s-back-blue .timeline-detail-icon { background: #FFF; }
.s-back-black .timeline-detail-icon { background: #FFF; }

.s-back-white .timeline-detail-icon:before { background: #333; }
.s-back-blue .timeline-detail-icon:before { background: #FFF; }
.s-back-black .timeline-detail-icon:before { background: #FFF; }

.s-back-white .timeline-detail-icon:after { border-left: 1px dotted #333; }
.s-back-blue .timeline-detail-icon:after { border-left: 1px dotted #FFF; }
.s-back-black .timeline-detail-icon:after { border-left: 1px dotted #FFF; }

/* STATIC THREE DOTS
--------------------*/

.s-threedots-1line { display: -webkit-box; overflow: hidden; -webkit-box-orient: vertical; -webkit-line-clamp: 1; }
.s-threedots-2lines { display: -webkit-box; overflow: hidden; -webkit-box-orient: vertical; -webkit-line-clamp: 2; }
.s-threedots-3lines { display: -webkit-box; overflow: hidden; -webkit-box-orient: vertical; -webkit-line-clamp: 3; }

/* STATIC LINK BUTTON
--------------------*/

.s-link-btn {
	position: relative;
	display: flex;
	justify-content: center;
	align-items: center;
	width: 100%;
	max-width: 345px;
	min-height: 35px;
	margin: 0 auto;
	padding: 5px 15px;
	color: #F29600;
	font-size: 1.4rem;
	font-weight: 700;
	border: 2px solid #F29600;
	border-radius: 10px;
	background: #FFF;
	cursor: pointer;
}

.s-link-btn span {
	position: relative;
	padding: 0 30px 0 0;
}

.s-link-btn span i[class^=fa-] {
	position: absolute;
    top: 50%;
    transform: translate(0, -50%);
	right: 0;
	color: #F29600;
    font-size: 18px; /* 固定 */
	pointer-events: none;
}

/* STATIC MORE BUTTON
--------------------*/

.s-more-btn {
	position: relative;
	display: flex;
	justify-content: flex-start;
	align-items: center;
	width: 100%;
	max-width: 345px;
	min-height: 50px;
	margin: 0 auto;
	padding: 5px 45px 5px 15px;
	color: #FFF;
    font-size: 1.6rem;
	font-weight: 700;
	border: 2px solid #F29600;
	border-radius: 10px;
	background: #F29600;
	cursor: pointer;
}

.s-more-btn i[class^=fa-] {
	position: absolute;
    top: 50%;
    transform: translate(0, -50%);
	right: 15px;
	color: #FFF;
	font-size: 26px; /* 固定 */
	pointer-events: none;
}

/* ===================================================================
KV
=================================================================== */

/* KV BASIC
--------------------*/

.kv-menu {
	position: relative;
	padding: 15px 0;
}

/* KV MENU LIST
--------------------*/

.kv-menu-list {
	padding: 0 20px;
}

.kv-menu-list > ul {
    display: flex;
    justify-content: center;
    align-items: center;
	width: 100%;
}

.kv-menu-list > ul > li {
	margin: 0 15px 0 0;
	word-break: break-all;
}

.kv-menu-list > ul > li:last-of-type {
	margin: 0;
}

.kv-menu-list > ul > li > dl {
	position: relative;
}

/* KV MENU LIST MAIN
--------------------*/

.kv-menu-list > ul > li > dl > dt > [class^=kv-menu-] {
    position: relative;
    display: flex;
    justify-content: center;
    align-items: center;
    height: 38px;
    padding: 7px 7px 7px 40px;
	color: #333;
    font-size: 12px; /* 固定 */
    font-weight: 700;
    text-align: center;
    line-height: 1.2; /* 固定 */
    background: #E7E7EA;
    border-radius: 10px;
	word-break: break-all;
    cursor: pointer;
	transition: opacity .3s ease-out 0s;
}

.kv-menu-list > ul > li > dl > dt > [class^=kv-menu-]:hover {
	opacity: .7;
}

.kv-menu-list > ul > li > dl > dt > [class^=kv-menu-].show {
	color: #FFF;
    background: #F29600;
}

.kv-menu-list > ul > li > dl > dt > [class^=kv-menu-].show:after {
	content: '';
    position: absolute;
    top: 100%;
    left: 50%;
    transform: translate(-50%, 0);
    width: 0;
    height: 0;
    border-style: solid;
	border-width: 0 9px 16px 9px;
    border-color: transparent transparent #333 transparent;
}

.kv-menu-list > ul > li > dl > dt > [class^=kv-menu-] i[class^=fa] {
	position: absolute;
    top: 50%;
    transform: translate(0, -50%);
    left: 5px;
	width: 30px;
    font-size: 20px; /* 固定 */
	text-align: center;
}

/* KV MENU LIST SUB
--------------------*/

.kv-menu-list > ul > li > dl > dd {
	display: none;
    position: absolute;
    top: calc(100% + 15px);
    left: 50%;
    transform: translate(-50%, 0);
    padding: 15px;
    background: #333;
    border-radius: 10px;
}

.kv-menu-list > ul > li > dl > dd.show {
	display: block;
}

/* ===================================================================
PLACE MENU
=================================================================== */

/* PLACE MENU BASIC
--------------------*/

.data-place {
    position: relative;
    width: 345px;
}

.data-place select {
	display: flex;
	justify-content: space-between;
	align-items: center;
    width: 100%;
    min-height: 50px;
	padding: 10px 50px 10px 15px;
    background: #F29600;
	color: #FFF;
    font-size: 16px; /* 固定 */
    font-weight: 700;
	border-radius: 10px;
	word-break: break-all;
	cursor: pointer;
}

@-moz-document url-prefix() {

	.data-place {
		display: flex;
		align-items: stretch;
    }

}

.data-place i[class^=fa-] {
	position: absolute;
	top: 50%;
	transform: translate(0, -50%);
	right: 15px;
	color: #FFF;
	font-size: 26px; /* 固定 */
	pointer-events: none;
}

/* ===================================================================
ACCESSIBILITY MENU
=================================================================== */

/* ACCESSIBILITY MENU BASIC
--------------------*/

.accessibility-menu-list {
	width: 100%;
}

.accessibility-menu-list > ul {
    display: flex;
    justify-content: center;
    align-items: center;
	width: 100%;
}

.accessibility-menu-list > ul > li {
    position: relative;
    display: flex;
    justify-content: center;
    align-items: center;
    height: 40px;
    margin: 0 10px 0 0;
    padding: 7px 7px 7px 40px;
	color: #333;
    font-size: 12px; /* 固定 */
    font-weight: 700;
    text-align: center;
    line-height: 1.2; /* 固定 */
    background: #E7E7EA;
    border-radius: 10px;
	word-break: break-all;
    cursor: pointer;
}

.accessibility-menu-list > ul > li:last-of-type {
	margin: 0;
}

.accessibility-menu-list > ul > li.show {
	color: #FFF;
    background: #F29600;
}

/* ACCESSIBILITY MENU FONT SIZE
--------------------*/

.accessibility-menu-list[accessibility-id=fs] > ul > li {
	width: 84px;
}

.accessibility-menu-list[accessibility-id=fs] > ul > li i[class^=fa] {
    position: absolute;
	top: 50%;
    transform: translate(0, -50%);
}

.accessibility-menu-list[accessibility-id=fs] > ul > li:nth-of-type(1) i[class^=fa] { left: 16px; font-size: 14px; /* 固定 */ }
.accessibility-menu-list[accessibility-id=fs] > ul > li:nth-of-type(2) i[class^=fa] { left: 15px; font-size: 20px; /* 固定 */ }
.accessibility-menu-list[accessibility-id=fs] > ul > li:nth-of-type(3) i[class^=fa] { left: 13px; font-size: 26px; /* 固定 */ }

/* ACCESSIBILITY MENU BACKGROUND
--------------------*/

.accessibility-menu-list[accessibility-id=bg] > ul > li {
	width: 72px;
}

.accessibility-menu-list[accessibility-id=bg] > ul > li:before {
    content: '';
    position: absolute;
	top: 50%;
    transform: translate(0, -50%);
    left: 9px;
    width: 22px;
    height: 22px;
    border-radius: 50%;
}

.accessibility-menu-list[accessibility-id=bg] > ul > li:nth-of-type(1):before { background: #FFF; }
.accessibility-menu-list[accessibility-id=bg] > ul > li:nth-of-type(2):before { background: #005377; }
.accessibility-menu-list[accessibility-id=bg] > ul > li:nth-of-type(3):before { background: #333; }

/* ===================================================================
SUMMARY
=================================================================== */

/* SUMMARY BASIC
--------------------*/

.summary-sec {
	margin: 0 0 40px;
	padding: 15px 0;
	background: rgba(176, 176, 179, .3);
}

.summary-time {
	text-align: right;
}

.summary-detail {
	margin: 15px 0 0;
}

/* ===================================================================
BANNER
=================================================================== */

/* BANNER BASIC
--------------------*/

.banner-sec {
	margin: 0 0 40px;
}

.banner-inner {
	width: 50%;
	margin: 0 auto;
}

.banner-inner a {
	display: block;
}

/* ===================================================================
TAB
=================================================================== */

/* TAB BASIC
--------------------*/

.tab-sec {
	margin: 0 0 40px;
}

.tab-title {
	font-weight: 700;
}

.tab-inner {
	position: relative;
	padding: 0 0 10px;
	border-bottom: 3px solid #333;
}

.tab-select {
	display: none;
}

.tab-list > ul {
	display: flex;
	justify-content: flex-start;
	align-items: center;
	flex-wrap: wrap;
	height: auto;
}

.tab-list > ul > li {
	width: 24%;
	margin: 10px calc(4% / 3) 0 0;
	word-break: break-all;
}

.tab-list > ul > li:nth-of-type(4n) {
	margin: 10px 0 0;
}

.tab-list > ul > li a {
	display: block;
	padding: 10px;
	font-weight: 700;
	text-align: center;
	background: rgba(176, 176, 179, .3);
	border-radius: 10px;
}

.tab-list > ul > li.active a {
	color: #FFF;
	background: #F29600;
}

/* ===================================================================
MAIN
=================================================================== */

/* MAIN TITLE BASIC
--------------------*/

.main-title {
	position: relative;
    display: inline-block;
    margin: 0 0 20px;
    font-size: 3.0rem;
    z-index: 1; /* タイトル系 */
}

.main-title:before {
	content: '';
	position: absolute;
	top: 50%;
	left: 5px;
	width: 100%;
	height: 45%;
	background: rgba(176, 176, 179, .3);
	z-index: -1; /* タイトル擬似要素 */
}

/* MAIN LIST BASIC
--------------------*/

.main-list ul li > div[class^='cat-'] {
	margin: -60px 0 40px;
	padding: 60px 0 40px;
	border-bottom: 3px solid #333;
}

.main-list ul li > div[class^='cat-']:last-of-type {
	padding: 60px 0 0;
	border-bottom: none;
}

/* MAIN ARTICLE INNER BASIC
--------------------*/

.article-inner {
	position: relative;
	display: flex;
	justify-content: space-between;
	flex-wrap: wrap;
}

.article-inner:after {
	content: '';
	display: block;
	width: 30%;
}

/* MAIN ARTICLE BASIC
--------------------*/

.article {
	position: relative;
	display: block;
	width: 30%;
    margin: 0 0 50px;
}

.article-image {
	position: relative;
	width: 100%;
	height: 0;
	padding: 56.25% 0 0;
	overflow: hidden;
}

.article-image img {
	position: absolute;
	top: 0;
	bottom: 0;
	left: 0;
	right: 0;
	width: auto;
	max-width: 100%;
	max-height: 100%;
	margin: auto;
}

.article-title {
	margin: 15px 0 0;
	word-break: break-all;
}

.article-title span {
	display: inline-block;
	margin: 0 5px 0 0;
	padding: 5px;
    color: #FFF;
	font-size: 1.4rem;
	line-height: 1;
	background: #F29600;
	border-radius: 5px;
}

.article-live-icon {
	position: relative;
    margin: 10px 0 0;
    text-align: center;
}

.article-live-icon:before,
.article-live-icon:after {
	content: '';
	position: absolute;
	top: calc(50% - 1px);
	left: 0;
	right: 0;
	width: 100%;
	height: 2px;
	background: #E30000;
	z-index: 1;
}

.article-live-icon:before {
	transform: translate(0, -2px);
}

.article-live-icon:after {
	transform: translate(0, 2px);
}

.article-live-icon span {
	position: relative;
	display: inline-block;
	padding: 0 10px;
	color: #E30000;
	font-size: 16px; /* 固定 */
	font-weight: 700;
	line-height: 1; /* 固定 */
	background: #FFF;
	z-index: 2;
}

.article-body {
	margin: 12px 0 0;
}

.article-body iframe {
	width: 100%;
}

.article-footer {
	margin: 12px 0 0;
	color: #646464;
}

.article-btn-inner {
	margin: 15px 0 0;
}

/* MAIN ARTICLE SNS VER
--------------------*/

.cat-sns .article {
	max-height: 500px;
	overflow-y: auto;
    scrollbar-width: none;
    -ms-overflow-style: none;
}

.cat-sns .article::-webkit-scrollbar {
    display: none;
    -webkit-appearance: none;
}

/* MAIN ARTICLE NEWS VER
--------------------*/

.cat-news .article {
	display: flex;
	justify-content: space-between;
	align-items: center;
	width: 100%;
    margin: 0 0 40px;
}

.cat-news .article-inner:after {
	content: none;
}

.cat-news .article-image-inner {
	width: 30%;
}

.cat-news .article-body-inner {
	width: 67.5%;
}

.cat-news .article-title {
	margin: 0;
}

/* MAIN ARTICLE BIG SIZE
--------------------*/

.article.article-size-big {
    width: 100%;
    max-width: 800px;
    margin: 0 auto 50px;
}

/* MAIN ARTICLE BIG SIZE NEWS VER
--------------------*/

.article.article-news.article-size-big {
    width: 100%;
    max-width: none;
    margin: 0 0 40px;
}

/* MAIN ARTICLE BIG SIZE TIMELINE VER
--------------------*/

.article.article-timeline.article-size-big {
    width: 100%;
    max-width: 950px;
    margin: 0 auto;
}

/* MAIN ARTICLE MP4 CONTENTS
--------------------*/

.article-image > div.video-js,
.article-image > iframe {
	position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
}

/* MAIN ARTICLE YOUTUBE CONTENTS
--------------------*/

.youtube-contents {
	position: relative;
	width: 100%;
	height: 0;
	padding: 56.25% 0 0;
	overflow: hidden;
}

.youtube-contents iframe {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
}

/* MAIN ARTICLE TWITTER CONTENTS
--------------------*/

.twitter-contents {
	max-height: 400px;
	overflow-y: auto;
}

.twitter-contents iframe {
    width: 100% !important;
}

/* ===================================================================
PERFECT SCROLLBAR
=================================================================== */

/* PS BASIC
--------------------*/

.ps {
	overflow: hidden !important;
	overflow-anchor: none;
	-ms-overflow-style: none;
	touch-action: auto;
	-ms-touch-action: auto;
}

/* PS RAIL
--------------------*/

.ps__rail-x {
	display: none;
	opacity: 1;
	transition: background-color .2s linear, opacity .2s linear;
	-webkit-transition: background-color .2s linear, opacity .2s linear;
	height: 2px;
	transform: translate(0, -2px);
	bottom: 0;
	position: absolute;
    background-color: #333;
	border-radius: 1px;
	z-index: 10; /* スクロールバー */
}

.ps__rail-y {
	display: none;
	opacity: 1;
	transition: background-color .2s linear, opacity .2s linear;
	-webkit-transition: background-color .2s linear, opacity .2s linear;
	width: 2px;
	transform: translate(-2px, 0);
	right: 0;
	position: absolute;
    background-color: #333;
	border-radius: 1px;
	z-index: 10; /* スクロールバー */
}

.ps--active-x > .ps__rail-x,
.ps--active-y > .ps__rail-y {
	display: block;
}

.ps:hover > .ps__rail-x,
.ps:hover > .ps__rail-y,
.ps--focus > .ps__rail-x,
.ps--focus > .ps__rail-y,
.ps--scrolling-x > .ps__rail-x,
.ps--scrolling-y > .ps__rail-y {
	opacity: 1;
}

.ps .ps__rail-x:hover,
.ps .ps__rail-y:hover,
.ps .ps__rail-x:focus,
.ps .ps__rail-y:focus,
.ps .ps__rail-x.ps--clicking,
.ps .ps__rail-y.ps--clicking {
	opacity: 1;
}

/* PS THUMB
--------------------*/

.ps__thumb-x {
	transition: background-color .2s linear, height .2s ease-in-out;
	-webkit-transition: background-color .2s linear, height .2s ease-in-out;
	height: 6px;
	transform: translate(0, 2px);
	bottom: 0;
	position: absolute;
    background-color: #333;
	border-radius: 6px;
	z-index: 10; /* スクロールバー */
}

.ps__thumb-y {
	transition: background-color .2s linear, width .2s ease-in-out;
	-webkit-transition: background-color .2s linear, width .2s ease-in-out;
	width: 6px;
	transform: translate(2px, 0);
	right: 0;
	position: absolute;
    background-color: #333;
	border-radius: 6px;
	z-index: 10; /* スクロールバー */
}

.ps__rail-x:hover > .ps__thumb-x,
.ps__rail-x:focus > .ps__thumb-x,
.ps__rail-x.ps--clicking .ps__thumb-x {
	height: 6px;
}

.ps__rail-y:hover > .ps__thumb-y,
.ps__rail-y:focus > .ps__thumb-y,
.ps__rail-y.ps--clicking .ps__thumb-y {
	width: 6px;
}

/* MS SUPPORTS
--------------------*/

@supports (-ms-overflow-style: none) {
	.ps {
		overflow: auto !important;
	}
}

@media screen and (-ms-high-contrast: active), (-ms-high-contrast: none) {
	.ps {
		overflow: auto !important;
	}
}

/* ===================================================================
TIMELINE
=================================================================== */

/* TIMELINE BASIC
--------------------*/

.timeline-list {
	position: relative;
	padding: 20px 0;
	border-top: 3px solid #333;
	border-bottom: 3px solid #333;
}

.timeline-list ul {
	position: relative;
	max-height: 300px;
	padding: 0 32px 0 0;
}

.timeline-list ul li {
    position: relative;
    margin: 0 0 20px 5px;
    padding: 0 0 0 30px;
	transition: color .3s ease-out 0s;
}

.timeline-list ul li:hover {
	color: #F29600;
}

.timeline-detail-icon {
	position: absolute;
	top: 0;
	left: 0;
	display: block;
	width: 2px;
	height: 100%;
	background: #333;
}

.timeline-detail-icon:before {
	content: '';
	position: absolute;
	top: 0;
	left: 50%;
	transform: translate(-50%, 0);
	width: 8px;
	height: 8px;
	background: #333;
	border-radius: 50%;
}

.timeline-detail-icon:after {
    content: '';
    position: absolute;
    top: 100%;
    left: 50%;
    transform: translate(-50%, 0);
    width: .5px;
    height: 20px;
    border-left: 1px dotted #333;
}

.timeline-detail-body > div:not(:last-of-type) {
	margin: 0 0 7.5px;
}

.timeline-detail-date {
	font-size: 2.5rem;
	font-weight: 700;
}

.timeline-detail-date span {
	margin: 0 0 0 10px;
	font-size: 1.6rem;
}

.timeline-detail-title {
	font-size: 1.8rem;
	font-weight: 700;
}

/* TIMELINE MODAL
--------------------*/

.timeline-modal-time {
	position: absolute;
	top: 5px;
	left: 10px;
	color: #646464;
	font-size: 16px; /* 固定 */
}

.timeline-modal-title {
	margin: 0 0 10px;
    font-size: 2.0rem;
    font-weight: 700;
}

/* ===================================================================
IZIMODAL
=================================================================== */

/* IZIMODAL TRIGGER
--------------------*/

.iziModal-trigger {
	cursor: pointer;
}

/* IZIMODAL LAYOUT
--------------------*/

.iziModal {
    width: 1000px;
}

.iziModal .iziModal-wrap .iziModal-content {
    position: relative;
}

.iziModal .iziModal-wrap .iziModal-content:before {
	content: '';
    display: block;
    width: 100%;
    height: 100%;
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    border: 3px solid #333;
	pointer-events: none;
}

/* IZIMODAL INNER
--------------------*/

.iziModal .iziModal-wrap .iziModal-content .iziModal-inner {
	position: relative;
	min-height: 50px;
	max-height: 65vh;
	padding: 0 20px;
	word-break: break-all;
}

/* IZIMODAL CLOSE BUTTON
--------------------*/

.iziModal .iziModal-wrap .iziModal-content .iziModal-close {
    position: absolute;
    top: 0;
    right: 0;
    cursor: pointer;
	z-index: 1; /* 閉じるボタン */
}

.iziModal .iziModal-wrap .iziModal-content .iziModal-close a {
	position: relative;
    display: flex;
    justify-content: center;
    align-items: center;
    background: #333;
    color: #FFF;
    min-width: 100px;
    max-width: 120px;
    height: 30px;
    padding: 5px 10px 5px 30px;
	font-size: 16px; /* 固定 */
    font-weight: 700;
    line-height: 1; /* 固定 */
}

.iziModal .iziModal-wrap .iziModal-content .iziModal-close a:before,
.iziModal .iziModal-wrap .iziModal-content .iziModal-close a:after {
	content: '';
    position: absolute;
    top: 50%;
    left: 10px;
    width: 20px;
    height: 3px;
    background: #FFF;
    border-radius: 2px;
}

.iziModal .iziModal-wrap .iziModal-content .iziModal-close a:before {
	transform: translate(0, -50%) rotate(45deg);
}

.iziModal .iziModal-wrap .iziModal-content .iziModal-close a:after {
	transform: translate(0, -50%) rotate(-45deg);
}

/* IZIMODAL NAVI
--------------------*/

.iziModal-navigate {
	display: none;
}

/* ===================================================================
MODAL INTERNAL
=================================================================== */

/* MODAL INTERNAL BASIC
--------------------*/

.modal-img {
	width: 100%;
	max-width: 500px;
	margin: 0 auto 20px;
}

.modal-time {
	position: absolute;
	top: 5px;
	left: 10px;
	color: #646464;
	font-size: 16px; /* 固定 */
}

.modal-title {
	margin: 0 0 10px;
	font-size: 2.0rem;
	font-weight: 700;
}

.modal-body {
	margin: 0 0 10px;
}

.modal-informer {
	color: #646464;
	text-align: right;
}

/* ===================================================================
NEWSTICKER
=================================================================== */

ul.newsticker {
	display: flex;
}

ul.newsticker li {
	float: none;
}

/* ===================================================================
TRANSLATED
=================================================================== */

.translated-ltr body[style='margin-top: 56px;'] .h-lower.fixed,
.translated-ltr body[style='margin-top: 56px; transition: none 0s ease 0s;'] .h-lower.fixed {
    top: 56px; /* ヘッダーメニューが閲覧できる位置調整 */
}

.translated-ltr body[style='margin-top: 56px;'] .site-menu.upper-both,
.translated-ltr body[style='margin-top: 56px; transition: none 0s ease 0s;'] .site-menu.upper-both { height: calc(100vh - 176px); }
.translated-ltr body[style='margin-top: 56px;'] .site-menu.upper-alert,
.translated-ltr body[style='margin-top: 56px; transition: none 0s ease 0s;'] .site-menu.upper-alert { height: calc(100vh - 176px); }
.translated-ltr body[style='margin-top: 56px;'] .site-menu.upper-home,
.translated-ltr body[style='margin-top: 56px; transition: none 0s ease 0s;'] .site-menu.upper-home { height: calc(100vh - 176px); }
.translated-ltr body[style='margin-top: 56px;'] .site-menu.upper-none,
.translated-ltr body[style='margin-top: 56px; transition: none 0s ease 0s;'] .site-menu.upper-none { height: calc(100vh - 116px); }

.translated-ltr body[style='margin-top: 56px;'] .site-menu.upper-both.fixed,
.translated-ltr body[style='margin-top: 56px; transition: none 0s ease 0s;'] .site-menu.upper-both.fixed,
.translated-ltr body[style='margin-top: 56px;'] .site-menu.upper-alert.fixed,
.translated-ltr body[style='margin-top: 56px; transition: none 0s ease 0s;'] .site-menu.upper-alert.fixed,
.translated-ltr body[style='margin-top: 56px;'] .site-menu.upper-home.fixed,
.translated-ltr body[style='margin-top: 56px; transition: none 0s ease 0s;'] .site-menu.upper-home.fixed,
.translated-ltr body[style='margin-top: 56px;'] .site-menu.upper-none.fixed,
.translated-ltr body[style='margin-top: 56px; transition: none 0s ease 0s;'] .site-menu.upper-none.fixed {
    top: 116px;
    height: calc(100vh - 116px);
}

@media screen and (max-width: 1000px) {

	/* ===================================================================
	RESET
	=================================================================== */

	/* CONTAINER
	--------------------*/

	.container {
		max-width: 480px;
	}

	/* DISPLAY
	--------------------*/

	.sp { display: block !important; }
	.pc { display: none !important; }
	.in-sp { display: inline !important; }
	.in-pc { display: none !important; }

    /* ===================================================================
	HEADER
	=================================================================== */

	/* HEADER BASIC
	--------------------*/

	header.upper-both { height: 180px; }
	header.upper-alert { height: 120px; }
	header.upper-home { height: 120px; }
	header.upper-none { height: 60px; }

	/* HEADER UPPER
	--------------------*/

	.h-upper-inner {
		flex-direction: column;
		max-width: 450px;
		padding: 0;
	}

	/* HEADER UPPER ALERT
	--------------------*/

	.alert-inner {
		order: 2;
		margin: 0;
	}

	header.upper-both .alert-inner { width: 100%; }
	header.upper-alert .alert-inner { width: 100%; }
	header.upper-home .alert-inner { display: none; }
	header.upper-none .alert-inner { display: none; }

	.alert-inner .alert-title:before {
		clip-path: polygon(0 0, 85% 0, 100% 100%, 0 100%);
	}

	/* HEADER UPPER HOME
	--------------------*/

	.home-inner {
		order: 1;
		margin: 0;
	}

	header.upper-both .home-inner { width: 100%; max-width: 200px; }
	header.upper-alert .home-inner { display: none; }
	header.upper-home .home-inner { width: 100%; max-width: 200px; }
	header.upper-none .home-inner { display: none; }

	/* HEADER LOWER H1
	--------------------*/

	h1 {
		width: 100%;
		height: auto;
		margin: 0 0 15px;
		color: #F29600;
	}

	/* ===================================================================
	SITE MENU
	=================================================================== */

	/* SITE MENU BASIC
	--------------------*/

	.site-menu {
		width: 100%;
		padding: 5px 3px 120px 0;
		box-shadow: none;
	}

	.site-menu.upper-both { height: calc(100vh - 180px); }
	.site-menu.upper-alert { height: calc(100vh - 120px); }
	.site-menu.upper-home { height: calc(100vh - 120px); }
	.site-menu.upper-none { height: calc(100vh - 60px); }

	.site-menu-inner {
		width: 100%;
		max-width: 477px;
		margin: 0 auto;
		padding: 0 12px 0 15px;
	}

	/* ===================================================================
	KV
	=================================================================== */

	/* KV BASIC
	--------------------*/

	.kv-sec {
		display: none;
	}

	/* ===================================================================
	PLACE MENU
	=================================================================== */

	/* PLACE MENU BASIC
	--------------------*/

	.data-place {
		width: 100%;
		max-width: 345px;
		margin: 0 auto;
	}

	/* ===================================================================
	SUMMARY
	=================================================================== */

	/* SUMMARY BASIC
	--------------------*/

	.summary-sec {
		margin: 0 0 20px;
	}

	/* ===================================================================
	BANNER
	=================================================================== */

	/* BANNER BASIC
	--------------------*/

	.banner-sec {
		margin: 0 0 20px;
	}

	.banner-inner {
		width: 100%;
		margin: 0;
	}

	/* ===================================================================
	TAB
	=================================================================== */

	/* TAB BASIC
	--------------------*/

	.tab-sec {
		margin: 0 0 40px;
	}

	.tab-inner {
		margin: 10px 0 0;
		padding: 0 0 40px;
	}

	.tab-select {
		position: relative;
		display: flex;
		justify-content: flex-start;
		align-items: center;
		width: 100%;
		min-height: 50px;
		margin: 0 auto;
		padding: 5px 45px 5px 15px;
		color: #FFF;
		font-weight: 700;
		line-height: 1.2;
		word-break: break-all;
		border: 2px solid #F29600;
		border-radius: 10px;
		background: #F29600;
		cursor: pointer;
		z-index: 20;
	}

	.tab-select i[class^=fa-] {
		position: absolute;
		right: 10px;
		color: #FFF;
		font-size: 26px; /* 固定 */
		pointer-events: none;
	}

	.tab-select i[class^=fa-]:nth-of-type(1) {
		top: calc(50% - 8px);
		transform: translate(0, -50%) rotate(180deg);
	}

	.tab-select i[class^=fa-]:nth-of-type(2) {
		top: calc(50% + 8px);
		transform: translate(0, -50%);
	}

	.tab-list {
		display: none;
		position: absolute;
		top: 40px;
		left: 0;
		right: 0;
		width: 100%;
		padding: 20px 5px 10px 15px;
		background: #FFF;
		border: 2px solid #F29600;
		border-radius: 0 0 10px 10px;
		z-index: 10;
	}

	.tab-list > ul {
		position: relative;
		display: block;
		max-height: 200px;
		padding: 0 12px 0 0;
	}
	
	.tab-list > ul > li,
	.tab-list > ul > li:nth-of-type(4n) {
		width: 100%;
		margin: 10px 0 0;
	}

	.tab-list > ul > li:first-of-type {
		margin: 0;
	}
	
	.tab-list > ul > li a {
		color: #333;
		line-height: 1.2;
		background: transparent;
	}

	/* ===================================================================
	MAIN
	=================================================================== */

	/* MAIN ARTICLE BASIC
	--------------------*/

	.article,
	.article:nth-of-type(3n) {
		position: relative;
		display: block;
		width: 100%;
		margin: 0 0 40px;
	}

	.article:last-of-type {
		margin: 0;
	}

	/* MAIN ARTICLE NEWS VER
	--------------------*/

	.cat-news .article {
		display: block;
	}

	.cat-news .article-image-inner {
		width: 100%;
	}

	.cat-news .article-body-inner {
		width: 100%;
	}

	.cat-news .article-title {
		margin: 15px 0 0;
	}

	/* MAIN ARTICLE BIG SIZE
	--------------------*/

	.article.article-size-big {
		max-width: none;
		margin: 0 0 40px;
	}
	
	/* MAIN ARTICLE BIG SIZE TIMELINE VER
	--------------------*/

	.article.article-timeline.article-size-big {
		max-width: none;
	}

	/* ===================================================================
	TIMELINE
	=================================================================== */

	/* TIMELINE MODAL
	--------------------*/

	.timeline-modal-time {
		font-size: 15px; /* 固定 */
	}

	/* ===================================================================
	IZIMODAL
	=================================================================== */

	/* IZIMODAL LAYOUT
	--------------------*/

	.iziModal {
        width: calc(100% - 30px);
		max-width: 450px !important;
    }

	/* IZIMODAL INNER
	--------------------*/

	.iziModal .iziModal-wrap .iziModal-content .iziModal-inner {
		padding: 0 10px;
	}

	/* ===================================================================
	MODAL INTERNAL
	=================================================================== */

	/* MODAL INTERNAL BASIC
	--------------------*/

	.modal-time {
		font-size: 15px; /* 固定 */
    }

	/* ===================================================================
	TRANSLATED
	=================================================================== */

	.translated-ltr body[style='margin-top: 56px;'] .site-menu.upper-both,
	.translated-ltr body[style='margin-top: 56px; transition: none 0s ease 0s;'] .site-menu.upper-both { height: calc(100vh - 236px); }
	.translated-ltr body[style='margin-top: 56px;'] .site-menu.upper-alert,
	.translated-ltr body[style='margin-top: 56px; transition: none 0s ease 0s;'] .site-menu.upper-alert { height: calc(100vh - 176px); }
	.translated-ltr body[style='margin-top: 56px;'] .site-menu.upper-home,
	.translated-ltr body[style='margin-top: 56px; transition: none 0s ease 0s;'] .site-menu.upper-home { height: calc(100vh - 176px); }
	.translated-ltr body[style='margin-top: 56px;'] .site-menu.upper-none,
	.translated-ltr body[style='margin-top: 56px; transition: none 0s ease 0s;'] .site-menu.upper-none { height: calc(100vh - 116px); }

}