/* 基本設定 */
* {
  /* サイズ計算で輪郭線の幅を参入する */
  box-sizing: border-box;-webkit-box-sizing: border-box;-moz-box-sizing: border-box;
  margin:0;padding:0;
  overflow-anchor: none;
}
html {
  font-size: 22px;
  font-family: "游明朝", "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HGS明朝E", "Sawarabi Mincho", Meiryo, georgia,"times new roman", serif;
  box-sizing: border-box;-webkit-box-sizing: border-box;-moz-box-sizing: border-box;
  margin: 0;padding:0;
  vertical-align: baseline;
  -webkit-text-size-adjust: 100%;
}

strong, b {font-weight: bold;}
a, a:visited, a:active {
  /* text-decoration:none; */
  text-decoration:underline;
  color:#666;cursor:pointer;
}

p {
  -webkit-margin-before: 0;-webkit-margin-after: 0;-webkit-margin-start: 0;-webkit-margin-end: 0;
  font-size: 22px;line-height: 36px;
  text-indent: 1rem;
  letter-spacing: -0.05rem;
  _vertical-align:baseline; /* pやdivには無関係 */
  word-wrap: break-word;
  word-break: break-word;-ms-word-break: break-all;
  hyphens: auto;-ms-hyphens: auto;-moz-hyphens: auto;-webkit-hyphens: auto;
  text-align:justify;
  text-justify:auto;
}

strong, b {font-weight: bold;font-family: sans-serif;}
rt {font-size: 0.45rem;}
@media (max-width: 414px) {rt {display:none;}}　/* Chromeは10px以下の小さな文字を許可しないから */
sup {font-size: 0.65em;}

@media screen and (min-width: 415px) and (max-width: 768px) {
  html {font-size: 18px;}
  p {font-size:18px;line-height: 30px;}
}
@media screen and (max-width: 414px) {
  html {font-size: 16px;}
  p {font-size:16px;line-height: 26px;}
}
/*
OpenTypeフォントであることとプロポーショナルメトリクス情報が含まれていることの2点です。
有名なフォントでいうと「ヒラギノ角ゴシック体」や「ヒラギノ明朝体」「游ゴシック体」「游明朝体」
「Noto Sans CJK JP」で利用できます。

Windows環境で馴染みある「メイリオ」は日本語部分が等幅として設計されているため、
プロポーショナルメトリクスの情報は含まれていません。
そのため、「メイリオ」に対してはプロポーショナルメトリクスで字間が詰まりません。
*/
h1, h2, h3, h4, h5, h6 {
  line-height: 1;  /* 原則はフォントの1倍。見出しの改行を想定していない */
  -webkit-margin-before: 0;-webkit-margin-after: 0;-webkit-margin-start: 0;-webkit-margin-end: 0;
  font-feature-settings: "palt" on;　/* font-feature-settings : "pkna" on; */
}
/*
  H要素の基本方針
  兄弟隣接ノードの場合だけ、h2はh1の袖見出し、h4はh3の袖見出し、h6はh5の袖見出しとして使える
*/
h1 {
	font-family: "游明朝", "ヒラギノ明朝 ProN", "Hiragino Mincho ProN W6", "HGS明朝E", Meiryo, "Times New Roman", serif;
	font-size: 2.35rem;
	margin:1rem 1rem;
	font-weight: 700;
	letter-spacing: -0.1rem;
}
h2 {
	font-family: "ヒラギノ角ゴ Pro W3","Hiragino Kaku Gothic Pro","メイリオ",Meiryo,"ＭＳ Ｐゴシック",sans-serif;
	font-size: 2.0rem;
	margin:1rem 1rem;
	font-weight: 600;
	letter-spacing: -0.05rem;
}
h3 {
	font-family: "游明朝", "ヒラギノ明朝 ProN", "Hiragino Mincho ProN W6", "HGS明朝E", Meiryo,"Times New Roman", serif;
	font-size: 1.5rem;
	margin: 1rem 1rem;
	font-weight: 700;
	letter-spacing: 0rem;
}
h4 {
	font-family: "ヒラギノ角ゴ Pro W3","Hiragino Kaku Gothic Pro","メイリオ",Meiryo,"ＭＳ Ｐゴシック",sans-serif;
	font-size: 1.25rem;
	margin:0.5rem 1rem;
	font-weight: 500;
	letter-spacing: 0rem;
}
h5 {
	font-family: "ヒラギノ角ゴ Pro W3","Hiragino Kaku Gothic Pro","メイリオ",Meiryo,"ＭＳ Ｐゴシック",sans-serif;
	font-size: 1.2rem;
	margin: 1rem 1rem;
	font-weight: 500;
	letter-spacing: 0rem;
}
h6 {
	font-family: "ヒラギノ角ゴ Pro W3","Hiragino Kaku Gothic Pro","メイリオ",Meiryo,"ＭＳ Ｐゴシック",sans-serif;
	font-size: 1rem;
	margin: 0.5rem 1rem;
	letter-spacing: 0rem;
}

/*
Device  Native Resolution (Pixels)  UIKit Size (Points) Native Scale factor UIKit Scale factor
iPhone X  1125 x 2436 375 x 812 3 3
iPhone 8 Plus 1080 x 1920 414 x 736 2.608 3
iPhone 8  750 x 1334  375 x 667 2 2
iPhone 7 Plus 1080 x 1920 414 x 736 2.608 3
iPhone 6s Plus  1080 x 1920 375 x 667 2.608 3
iPhone 6 Plus 1080 x 1920 375 x 667 2.608 3
iPhone 7  750 x 1334  375 x 667 2 2
iPhone 6s 750 x 1334  375 x 667 2 2
iPhone 6  750 x 1334  375 x 667 2 2
iPhone SE 640 x 1136  320 x 568 2 2
iPad Pro 12.9-inch (2nd generation) 2048 x 2732 1024 x 1366 2 2
iPad Pro 10.5-inch  2224 x 1668 1112 x 834  2 2
iPad Pro (12.9-inch)  2048 x 2732 1024 x 1366 2 2
iPad Pro (9.7-inch) 1536 x 2048 768 x 1024  2 2
iPad Air 2  1536 x 2048 768 x 1024  2 2
iPad Mini 4 1536 x 2048 768 x 1024  2 2
*/

@media screen and (min-width: 415px) and (max-width: 768px) {
  h1 {font-size: 2.0rem;margin:1rem 2rem;}
  h2 {font-size: 1.5rem;margin:1rem 2rem;}
  h3 {font-size: 1.35rem;margin:1.0rem 2rem;}
  h4 {font-size: 1.2rem;margin:0.5rem 2rem;}
  h5 {font-size: 1.1rem;margin:0.5rem 2rem;}
  h6 {font-size: 0.85rem;margin:0.5rem 2rem;}
}
@media (max-width: 414px) {
  h1 {font-size: 1.7rem;margin:1rem 1.5rem;}
  h2 {font-size: 1.35rem;margin:1rem 1.5rem;}
  h3 {font-size: 1.2rem;margin:1.0rem 1.5rem;}
  h4 {font-size: 1.1rem;margin:0.4rem 1.5rem;}
  h5 {font-size: 1.1rem;margin:0.5rem 1.5rem;}
  h6 {font-size: 0.85rem;margin:0.5rem 1.5rem;}
}

blockquote {margin:0.5rem 0rem;}
blockquote > p {
  margin:0rem 2rem 0rem 2rem;
  font-family: sans-serif;
  font-size: 0.85rem;
  line-height: 1.65;
  text-indent: 0rem;
  word-wrap: break-word;
  word-break: break-word;-ms-word-break: break-all;
  hyphens: auto;-ms-hyphens: auto;-moz-hyphens: auto;-webkit-hyphens: auto;
  text-align:justify;
  text-justify:auto;
}
@media (max-width: 414px) {blockquote > p {margin:0rem 1rem 0rem 1rem;}}

aside {
	display:block;
  font-family: "ヒラギノ角ゴ Pro W3","Hiragino Kaku Gothic Pro","メイリオ",Meiryo,"ＭＳ Ｐゴシック",sans-serif;
	font-size:0.75rem;
	margin: 0.5rem 0;
	padding:0rem 2rem;
}
ul, ol {
  -webkit-margin-before: 1em;-webkit-margin-after: 1em;
  -webkit-margin-start: 0px;-webkit-margin-end: 0px;
  -webkit-padding-start: 0px;
  padding-left: 2rem;
  list-style-type: disc; /* circle/square/decimal */
}

/* heightをautoにすると英語/日本語で高さが異なってしまう */
input, textarea, select {
  text-rendering: auto;
  letter-spacing: normal;
  word-spacing: normal;
  text-transform: none;
  text-indent: 0px;
  text-shadow: none;
  display: inline-block;
  text-align: start;
  font-size: 22px;
}
@media screen and (min-width: 415px) and (max-width: 768px) {
  input, textarea, select {font-size: 18px;}
}
@media (max-width: 414px) {
  input, textarea, select {font-size: 16px;}
}
/* selectのバリエーション */
select{
  appearance: none;-webkit-appearance: none;-moz-appearance: none;
  cursor: pointer;
  background: transparent;
  text-overflow: ellipsis;
  position:relative;
  height: auto;
  width: auto;
  padding: 0 2rem 0 1rem;
  margin:0.25rem 1.0rem;
  border: 1px solid #ccc;
  opacity: 1.0;
  outline: none; /* focusを得たときに青い線が出ることを防ぐ */
  box-shadow: 0px 1px 2px rgba(0, 0, 0, 0.1);
  -moz-box-shadow: 0px 1px 2px rgba(0, 0, 0, 0.1);
  -webkit-box-shadow: 0px 2px 2px rgba(0, 0, 0, 0.1);
}
select:not(:-internal-list-box) {
  overflow: visible !important;
}
select::-ms-expand {display: none;}
/*  selct:hoverは危険*/
_select:hover{background-color:white;opacity: 0.7;}
.select01{ /* 背景 */
  display:inline-block;
  overflow: hidden;
  border-radius: 20px;
  background: #da3c41;
  margin:0.25rem 0.5rem;
  height:auto;
  text-align: center;
  position: relative;
}
.select01 > select{
  appearance: none;-webkit-appearance: none;-moz-appearance: none;
  cursor: pointer;
  height: 1.5rem;
  color: white;
  background: transparent;
  padding: 0 2rem 0 0.5rem;
  border: none;outline:none;
  text-overflow: ellipsis;
  position:relative;
  box-shadow: none;
  -moz-box-shadow: none;
  -webkit-box-shadow: none;
}
.select01::before {
  position: absolute;
  top: 0.8em;
  right: 0.8em;
  width: 0;height: 0;
  padding: 0;
  content: '';
  border-left: 6px solid transparent;
  border-right: 6px solid transparent;
  border-top: 6px solid #ffffff;
  pointer-events: none;
}

/* input[text]のバリエーション */

input[type=text] {
  padding:2px 1rem;
  border:solid 1px #ccc;
  margin:0;
  font-size:calc(1rem - 2px);
  height:calc(1rem + 6px);
  box-shadow: inner 0 0 4px rgba(0, 0, 0, 0.2);-webkit-box-shadow: inset 0 0 4px rgba(0, 0, 0, 0.2);-moz-box-shadow: inset 0 0 4px rgba(0,0,0,0.2);
  box-shadow: inset 1px 4px 9px -6px rgba(0,0,0,0.5);-moz-box-shadow: inset 1px 4px 9px -6px rgba(0,0,0,0.5);-webkit-box-shadow: inset 1px 4px 9px -6px rgba(0, 0, 0, 0.5);
}
input[type=text]:focus {
  border:solid 1px #EEA34A;
}

/* input[date]のバリエーション */

input[type=date] {
  padding:2px 1rem;
  border:solid 1px #ccc;
  margin:0;
  font-size:calc(1rem - 2px);
  height:calc(1rem + 6px);
  box-shadow: inner 0 0 4px rgba(0, 0, 0, 0.2);-webkit-box-shadow: inset 0 0 4px rgba(0, 0, 0, 0.2);-moz-box-shadow: inset 0 0 4px rgba(0,0,0,0.2);
  box-shadow: inset 1px 4px 9px -6px rgba(0,0,0,0.5);-moz-box-shadow: inset 1px 4px 9px -6px rgba(0,0,0,0.5);-webkit-box-shadow: inset 1px 4px 9px -6px rgba(0, 0, 0, 0.5);
}
input[type=date]:focus {
  border:solid 1px #EEA34A;
}
input[type=date]::-webkit-inner-spin-button {
  _-webkit-appearance: none;/* スピンボタン（上下ボタン）を非表示にするなら */
}
/* 無入力時の 年/月/日 を / / にする */
input[type=date]::-webkit-datetime-edit-year-field:not([aria-valuenow]),
input[type=date]::-webkit-datetime-edit-month-field:not([aria-valuenow]),
input[type=date]::-webkit-datetime-edit-day-field:not([aria-valuenow]) {
  _color: transparent;
}
input[type=date]::-webkit-datetime-edit-text { color: #666; /* /の色を変える */}
input[type=date]::-webkit-clear-button { _-webkit-appearance: none; /* clearボタンの非表示なら */}
_input[type=date]::-webkit-calendar-picker-indicator {
  color: transparent;
  position: relative; /* カレンダーのインジケータ（▼）を非表示なら */
}
/* fontAwesomeのカレンダーアイコンをインジケータにする */
input[type=date]::-webkit-calendar-picker-indicator:before {
  color: #666;
  /*content: "\f073";*/ /* fa-calendar */
  content: "\f133"; /* fa-calendar-o */
  position: absolute;
  left: -5px; /* ここら辺はいい感じの塩梅で */
  top: -5px;  /* ここも */
}


/* input[range]のバリエーション */

input[type=range] {
  appearance: none; -webkit-appearance: none;
  outline: none; /* focusを得たときに青い線が出ることを防ぐ */
  background-color: lightgrey;
  height: 5px;
  width: 90%;
  margin: 15px 15px;
  padding:0;

}
/* 操作ボタン */
input[type=range]::-webkit-slider-thumb {
  -webkit-appearance: none;appearance: none;
  box-sizing: content-box;
	/* your thumb styles */
  cursor: pointer;
  position: relative;
  border: 2px solid rgba(0, 0, 0, .7);
  width: 22px;
  height: 22px;
  display: block;
  background-color: #fff;
  border-radius: 50%;-webkit-border-radius: 50%;
}
input[type=range]::-moz-range-thumb {
	/* again your thumb styles */
}
input[type=range]::-ms-thumb { /* should come after -webkit- */
	/* again your thumb styles */
	/* may require different margins */
}
/* 操作範囲 */
input[type=range]::-webkit-slider-runnable-track {
	/* your track styles */
}
input[type=range]::-moz-range-track {
	/* again your track styles */
}
input[type=range]::-ms-track { /* should come after -webkit- */
	border-color: transparent;
	color: transparent;
	/* again your track styles */
}

/* input[type=radio]の基本スタイル */
/*
	labelは、そこをクリックしてもinputが選べるようにするための要素
	1) for属性がinputのidを指定する
	2) laben内部のinput
*/

/*Radio Check*/
label.radio, label.checkbox {
	position      : relative;
	cursor        : pointer;
	display       : inline-block;
	overflow      : hidden;
	font-family  :  sans-serif;
	padding-left : 22px;
	min-height   : 22px;
	line-height  : 22px;
	margin-right : 22px;
}
/** before after **/


label.radio:before {
	content  : '';
	position : absolute;
	width         : 18px;
	height        : 18px;
	border-radius    : 100%;
	border        : 1px solid #666666;
	left          : 0px;
	top: 0px;bottom: 0px;
	margin: auto 0;
	z-index       : 1;
}
label.radio input[type="radio"] {
	appearance: none;-moz-appearance: none;-webkit-appearance: none;
	position: absolute;
	z-index: 3;
	margin:auto 0px;
	outline: none;
	left: -21px;
	width: 12px;height: 12px;
	top: 0px;bottom: 0px;
	border-radius    : 100%;
	border: 1px solid #666666;
	background-color : #DD6655;
}
/* チェックされていると右にズレる */
label.radio input[type="radio"]:checked{
	left       : 4px;
}
/* 隣接セレクタで */
label.radio input[type="radio"]:checked + span{
	font-weight: 700;
}

label.checkbox:before {
	content  : '';
	position : absolute;
	width         : 18px;
	height        : 18px;
	border-radius    : 0%;
	border        : 1px solid #666666;
	left          : 0px;
	top: 0px;bottom: 0px;
	margin: auto 0;
	z-index       : 1;
}
label.checkbox input[type="checkbox"] {
	appearance: none;-moz-appearance: none;-webkit-appearance: none;
	position: absolute;
	z-index: 3;
	margin:auto 0px;
	outline: none;
	left: -20px;
	width: 12px;height: 12px;
	top: 0px;bottom: 0px;
	border-radius    : 0%;
	border        : 1px solid #666666;
	background-color : #DD6655;
}
/* チェックされていると右にズレる */
label.checkbox input[type="checkbox"]:checked{
	left: 4px;
}
/* buttonの基本スタイル */

button {
  display: inline-block;
  border:solid 1px #ccc;
  background-color: transparent;
  margin:0.25rem 1rem;
  padding: 0 1rem;
  cursor:pointer;
  outline: none; /* focusを得たときに青い線が出ることを防ぐ */
  box-shadow: 0px 1px 2px rgba(0, 0, 0, 0.1);
  -moz-box-shadow: 0px 1px 2px rgba(0, 0, 0, 0.1);
  -webkit-box-shadow: 0px 2px 2px rgba(0, 0, 0, 0.1);
  transition: all 500ms 0s ease;
  opacity: 1;
  font-size: 22px;
  height: 35px;
}
@media screen and (min-width: 415px) and (max-width: 768px) {
  button {
    font-size: 18px;
    height: 29px;
  }
}
@media (max-width: 414px) {
  button {
    font-size: 16px;
    height: 26px;
  }
}

button.selected{
  background-color:darkblue;
  color:white;
}
button:hover{
  background-color:white;
  opacity: 0.7;
}
/* 基本テーブル */
table {
	font-family:Arial, Helvetica, sans-serif;
	width:100%;
	/*font-size:0.9rem;*/
	/*border:#ccc 1px solid;*/
	border-collapse:  collapse;
  margin: 0.5rem 5px;
}
table tr {text-align: center;}
/* table tr:even td {background: #f6f6f6;} */

table th {
	/*padding:0.25rem auto;*/
	border-top:1px solid #fafafa;
	border-bottom:1px solid #e0e0e0;
	background: #ededed;
}
table td {
	/*padding:0.25rem auto;*/
	border-top: 1px solid #ffffff;
	border-bottom:1px solid #e0e0e0;
	border-left: 1px solid #e0e0e0;
	background: #fafafa;
}
table tr:hover td {
	background: #f2f2f2;
}
summary {font-size:0.7rem;} /* captionの中に入るサマリー */
caption { /* 2nd captionはFirefoxは表示しない */
  font-size:0.7rem;
  margin:0.1rem 0.5rem;
  caption-side: top;
  text-align: right;
}

/* クラス指定 */

.page {
	width:100%; margin:0 0 2rem 0;min-height:100vh;
}
.whitepaper {
  color: black;
  background-color: transparent;
}
.whitepaper a, .whitepaper a:visited, .whitepaper a:active {
  text-decoration:none;color:#666666;cursor:pointer;
}
.blackpaper {
  color: white;
  background-color: transparent;
}
.blackpaper a, .blackpaper a:visited, .blackpaper a:active {
  text-decoration:none;color:#d8d8d8;cursor:pointer;
}

.center_container {
  max-width: 1024px; margin:0 auto;
}
.center_container p {
  max-width: 600px;
  margin:0 auto;padding:0rem 1rem;
  user-select: none;-moz-user-select: none;-webkit-user-select: none;-ms-user-select: none;
}
.center_container h4 {
  max-width: 600px;padding:1rem 2rem;margin:0 auto;
  user-select: none;-moz-user-select: none;-webkit-user-select: none;-ms-user-select: none;
}
@media screen and (min-width: 415px) and (max-width: 768px) {
	.center_container p {padding:0rem 1rem;}
  .center_container h4 {padding:1rem 2rem;}
}
@media screen and (max-width: 414px) {
	.center_container p {padding:0rem 0.5rem;}
  .center_container h4 {padding:1rem 1.5rem;}
}

/* SVG chart */
.main_title {
  font-family: "ヒラギノ角ゴ Pro W6","Hiragino Kaku Gothic Pro","メイリオ",Meiryo,"ＭＳ Ｐゴシック",sans-serif;
  font-weight: 800;
  letter-spacing: -0.05rem;
}
.sub_title {
  font-family: "ヒラギノ角ゴ Pro W3","Hiragino Kaku Gothic Pro","メイリオ",Meiryo,"ＭＳ Ｐゴシック",sans-serif;
  font-weight: 300;
  letter-spacing: -0.05rem;
}
.foot_title {
  font-family: "ヒラギノ角ゴ Pro W3","Hiragino Kaku Gothic Pro","メイリオ",Meiryo,"ＭＳ Ｐゴシック",sans-serif;
  font-weight: 300;
  letter-spacing: 0rem;
}
.tick text, .annotation text{
  font-family: "ヒラギノ角ゴ Pro W3","Hiragino Kaku Gothic Pro","メイリオ",Meiryo,"ＭＳ Ｐゴシック",sans-serif;
  letter-spacing: -0.05rem;
  stroke:none;
}
.annotation text{
  font-weight: 500;
}
.tick line, .tick path, .annotation line, .annotation path {
  stroke: #333; stroke-width:1px;
  fill: #333;
}
.xAxis text, .yAxis text{
  font-family: sans-serif;
  font-weight: 500;
  letter-spacing: -0.05rem;
}
.brush_background {fill:white}
.brush_range {fill:lightgray}
.brush_axis .tick line {stroke:white}
.brush_group .selection {stroke:none;}

.round_slider {
  font-family: "Helvetica Neue", Arial, Helvetica, sans-serif;
  font-size: 12px;
  padding: 3px 2px 2px 25px;
  color:black;
  position: absolute;
  cursor: pointer;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  background-color: #ccc;
  transition: .4s;
  -webkit-transition: .4s;
}
.round_slider::before {
  position: absolute;
  content: "";
  height: 16px;
  width: 18px;
  left: 2px;
  top: 2px;
  bottom: 2px;
  background-color: white;
  transition: .4s;
  -webkit-transition: .4s;
}
input:checked + .round_slider {
  padding: 3px 28px 2px 5px;
}
input:checked + .round_slider {
  background-color: #2196F3;
}
input:checked + .round_slider::before {
  transform: translateX(48px);
  -webkit-transform: translateX(48px);
  -ms-transform: translateX(48px);
}
.warning {fill:gray;stroke:none;}
.nerdbox {
  margin: 0.5em;padding: 0.5em;
  border: 1px solid darkgray;
}
.nerdbox p{
  color: gray;
  font-family: "ヒラギノ角ゴ Pro W3","Hiragino Kaku Gothic Pro","メイリオ",Meiryo,"ＭＳ Ｐゴシック",sans-serif;
  font-size: 0.85rem;
  font-weight: 300;
  letter-spacing: -0.05rem;
  line-height: 1.35rem;
}

footer {
  width: 100%;
  font-family: Hiragino Kaku Gothic Pro,メイリオ,Meiryo,Osaka,ＭＳ Ｐゴシック,MS PGothic,sans-serif;
  background-color: #542f8e;
  display: block;overflow: scroll;
  margin:0;padding:0;
}
.footer {
  width: 100%;
  display: -webkit-box;
  display: flex;
  -ms-flex-direction: row;
      flex-direction: row;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  -webkit-box-pack: justify;
     -ms-flex-pack: justify;
  justify-content: space-between;
  margin: 0 0 20px; 
}
.footer-cnt {
  color: #fff;
  -webkit-box-flex: 0 1 25%;
  flex: 0 1 25%;
}
/* デスクトップファーストで指定する */
@media screen and (min-width: 415px) and (max-width: 768px) {
  .footer-cnt {
    -webkit-box-flex: 0 1 50%;
    flex: 0 1 50%;
  }
}
@media screen and (max-width: 414px) {
  .footer-cnt {
    -webkit-box-flex: 0 1 100%;
    flex: 0 1 100%;
  }
}
.footer-cnt .wrp {
  padding: 0;
  height: 100%;
  position: relative;
}
.footer-cnt .hdg {
  font-size: 16px;
  font-weight: 700;
  padding: 20px 0px;
  border-bottom: 1px solid hsla(0,0%,100%,.15);
  border-top: 1px solid hsla(0,0%,100%,.15);
  position: relative;
}
.footer-cnt .list {
  padding: 15px 15px 20px;
  list-style-type: none;
}
.footer-cnt .list a {
  font-size: 14px;
  color: #fff;
  text-decoration: none;
}

.footer-cnt-prt {
  display: block;width:100%;
  text-align: center;
}
.footer-logo {margin:0 auto;}
.footer-logo svg {
  display: block;
  margin:0 auto;
  width: 125px;height: 28px;
  fill: #fff;
}
.footer-copy {
  color:#FFF;
  font-size: 10px;white-space: nowrap;
  text-align: center;
}

.domestic {color: #a685e2;}
.international {color: #ff4646;}
.cargo {color: #fdb827;}

.screen_frame {
  position: relative;
  min-height: 100vh;
}
.fixed_screen_frame {
  position: relative;
  height: 100vh;
}
.half_screen_frame {
  position: relative;
  height: 50vh;
}
.onehalf_screen_frame {
  position: relative;
  height: 150vh;
}
.top_frame {
  position:relative;width:100%;
  text-align:center;
}
.upper_frame {
  margin:3rem 0;
  position:relative;width:100%;
  text-align:right;
  
}
.upper_frame h1, .upper_frame h4 {
  margin:15px 1rem 15px auto;
  max-width: 600px;
  padding: 0 1rem;
}
.lower_frame {
  position:relative;width:100%;top:50%;
  text-align:center;
}
.bottom_frame {
  position:absolute;width:100%;bottom:5%;
  text-align:center;
}
.lower_frame p {
  max-width: 550px;
  margin:0 auto;padding:0rem 1rem;
  background-color: transparent;
}

.coordLabel text{
  stroke: none;
  fill: lightgray; color: lightgray;
  font-size: 12px;
  font-family: "ヒラギノ角ゴ Pro W3","Hiragino Kaku Gothic Pro","メイリオ",Meiryo,"ＭＳ Ｐゴシック",sans-serif;
  font-weight: lighter;
}
.poiLabel text{
  stroke: none;
  fill: white; color:white;
  font-size: 12px;
  font-family: "ヒラギノ角ゴ Pro W3","Hiragino Kaku Gothic Pro","メイリオ",Meiryo,"ＭＳ Ｐゴシック",sans-serif;
  font-weight: lighter;
}
#masthead_holder {text-align: center}
#masthead_holder svg {margin:15px auto;z-index: 1;}
#masthead_holder path {fill:white;stroke:none;fill-rule:evenodd;}
figcaption {
  font-size:0.7rem;
  margin:0 0.7rem 0.5rem 3rem;
  line-height: 1.5;
  text-align: left;
}

.accessibilityHidden {display:none}
#flight_viewer {height:100vh;width:100vw;z-index: -1;position:fixed;top:0px;left:0px;}

.main_title, .sub_title, .foot_title {fill:white;stroke:none;}
.tick text, .chart_title {fill:white;stroke:none;}
.tick line, .tick path, .annotation line, .annotation path {
  stroke: white; stroke-width:1px;
  fill: #white;
}
.svg_background {fill:black; stroke:none;}

.xAxis text, .yAxis text{fill:white;}
.market path {fill:none;stroke-width:1px;}
.current_location {
  color: #cccccc;
  font-size: 12px;
  font-family: "ヒラギノ角ゴ Pro W3","Hiragino Kaku Gothic Pro","メイリオ",Meiryo,"ＭＳ Ｐゴシック",sans-serif;
  font-weight: lighter;
  position: absolute;
  bottom: 0px;
  right: 1rem;
}
.orientation_warning {
  color:#cccccc;font-size:80%;
}
.location_selector {font-family: sans-serif;text-align:center;margin: 0.5rem auto;}
.location_selector select{
  display: inline-block;
  vertical-align: baseline;
  width: 120px; height:1.5em;
  margin: .25em .5em;
  color:white;font-family: sans-serif;font-size:1em;
  padding: 0 .5em 0 .5em;
}
.screen_frame h6 {
  margin:0;padding:0.5rem 0.5rem;
  font-family: "ヒラギノ角ゴ Pro W3","Hiragino Kaku Gothic Pro","メイリオ",Meiryo,"ＭＳ Ｐゴシック",sans-serif;
  font-weight: lighter;
  color: white;
}
.phase_title {
  position: sticky;top: 0.5rem;z-index:5;
}