@charset "UTF-8";

/* -----------------------------------------
- common
----------------------------------------- */
body {
  color: #323232;
  background: #fff;
  line-height: 1;
}

body,
input,
button,
select,
textarea {
  font-family: 游ゴシック体, "Yu Gothic", YuGothic, "ヒラギノ角ゴシック Pro", "Hiragino Kaku Gothic Pro", メイリオ, Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
  font-size: 1.4rem;
  font-size: 14px;
}

p {
  font-size: 1.4rem;
  font-size: 14px;
}

object {
  pointer-events: none;
}

a {
  color: #323232;
  text-decoration: none;
  /*transition: all .3s ease;*/
}

img {
  -webkit-tap-highlight-color: transparent;
  max-width: 100%;
  height: auto;
}

a:active,
a:hover {
  opacity: .7;
  outline-width: 0;
  color: #eb6900;
}

select {
  line-height: 1;
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  outline: none;
  border-radius: 0;
  font-size: 16px;
}
select::-ms-expand {
  display: none;
}

/* :focus !important */
input[type="text"]:focus,
input[type="email"]:focus,
input[type="tel"]:focus,
select:focus,
textarea:focus {
  outline: 0;
  border: 1px solid #eb6900!important;
}

input[type="text"] {
  padding: .25em .75em 0;
  font-size: 16px;
  background: #fff;
}

input[type="radio"] {
  display: none;
}

/* placeholder */
input::placeholder,
textarea::placeholder {
  color: #b4b4b4;
}
input::-ms-input-placeholder,
textarea::-ms-input-placeholder {
  color: #b4b4b4;
}
input:-ms-input-placeholder,
textarea:-ms-input-placeholder {
  color: #b4b4b4;
}

/* -----------------------------------------
- btn btn-eff
----------------------------------------- */
.btn {
  cursor: pointer;
  position: relative;
  overflow: hidden;
  color: #fff;
  background: #323232;
}

.more.btn {
  display: block;
  margin: 0 auto 60px;
  width: 320px;
  height: 44px;
  line-height: 44px;
  text-align: center;
  font-size: 14px;
  font-weight: bold;
}

.btn a {
  position: relative;
  display: block;
  height: 100%;
  color: #fff;
  transition: all .5s ease;
  z-index: 2;
}

.btn:hover .btn-eff {
  left: 0;
}

.btn:hover a {
  color: #fff;
}

.btn::after {
  position: absolute;
  right: 13px;
  top: 50%;
  transform: translate(0, -50%);
  content: "";
  display: inline-block;
  width: 20px;
  height: 12px;
  background: url(../img/common/ico_right.svg) no-repeat;
  background-size: cover;
  z-index: 10;
  transition: ease .5s;
}

.btn:hover::after {
  right: 10px;
}

.btn a:active,
.btn a:hover {
  opacity: 1;
}

.btn input[type="submit"] {
  position: relative;
  width: 100%;
  height: 100%;
  font-size: 14px;
  font-weight: bold;
  color: #fff;
  z-index: 20;
}

.btn-eff {
  position: absolute;
  width: 100%;
  height: 100%;
  left: -100%;
  top: 0;
  color: #fff;
  background: #eb6900;
  transition: all .5s ease;
  z-index: 1;
}

/* .input.btn */
.input.btn {
  display: block;
  margin: 0 auto 60px;
  width: 320px;
  height: 44px;
  line-height: 44px;
  text-align: center;
  font-size: 14px;
  font-weight: bold;
}

/* .return.btn */
.return.btn {
  display: block;
  margin: 0 auto 60px;
  width: 320px;
  height: 44px;
  line-height: 44px;
  text-align: center;
  font-size: 14px;
  font-weight: bold;
  transition: .2s;
}
.return.btn::after {
  position: absolute;
  left: 20px;
  top: 50%;
  transform: translate(0, -50%);
  content: "";
  display: inline-block;
  width: 20px;
  height: 12px;
  background: url(../img/common/ico_left.svg) no-repeat;
  background-size: cover;
  z-index: 10;
}

/* -----------------------------------------
- animation
----------------------------------------- */
@keyframes fadeDown {
  0% {
    opacity: 0;
    margin-top: -10px;
  }
  100% {
    opacity: 1;
  }
}

@keyframes fadeUp {
  0% {
    opacity: 1;
  }
  100% {
    opacity: 0;
    margin-top: -10px;
  }
}

/* -----------------------------------------
- scrollbar
----------------------------------------- */
::-webkit-scrollbar {
  width: 8px;
  height: 8px;
}

::-webkit-scrollbar-track {
  background: #f5f5f5;
}

::-webkit-scrollbar-thumb {
  border-radius: 5px;
  background: #323232;
}

/* -----------------------------------------
- common
----------------------------------------- */
.container {
  width: 100%;
  margin: 0 auto;
  background: #fff;
}

.cnt_w {
  width: 1100px;
  margin: 0 auto;
  padding: 40px 0 0;
}

.cnt_w::after {
  content: "";
  clear: both;
  display: block;
}

#main {
  display: inline-block;
  position: relative;
  width: 820px;
  padding-right: 40px;
  background: #fff;
}

#main .mb-0 {
  margin-bottom: 0;
}

#main article {
  padding-bottom: 112px;
}

#main article h2 {
  line-height: 1.45;
  margin-top: -2px;
  /*padding-bottom: 12px;*/
  border-bottom: 1px solid #323232;
}

#main article h2::before {
  top: 4px;
}

#main article .img_box {
  margin: 10px 0 12px;
}

#main article img {
  max-width: 100%;
}

#main article p {
  font-size: 14px;
  line-height: 26px;
}

#main article a {
  font-weight: bold;
  color: #eb6900;
}

aside#sidebar {
  display: block;
  float: right;
  width: 280px;
  padding-bottom: 120px;
  overflow: hidden;
}

.inner {
  width: 1100px;
  margin: 0 auto;
}

.lt {
  text-align: left;
}

.rt {
  text-align: right;
}

.plus {
  color: #e60012;
}

.minus {
  color: #00a0e9;
}

.up {
  color: #e60012;
}

.down {
  color: #00a0e9;
}


/* table.table-common */
table.table-list a {
    color: #eb6900;
}

table.table-common {
  table-layout: fixed;
  width: 100%;
  margin-bottom: 20px;
  font-size: 14px;
  text-align: center;
}

table.table-common th {
  position: relative;
  height: 43px;
  font-size: 14px;
  font-weight: bold;
  color: #fff;
  background: #323232;
  white-space: nowrap;
}

table.table-common td {
  height: 34px;
  padding: 0 5px;
}

table.table-common tr:nth-of-type(odd) {
  background: #f5f5f5;
}

/* .button-common */
.button-common {
  display: inline-block;
  height: 30px;
  padding: 8px 15px;
  font-size: 14px;
  font-weight: bold;
  text-align: center;
  color: #ffffff;
  background: #323232;
  transition: ease .2s all;
}

.button-common:hover {
  background: #eb6900;
  color: #ffffff;
  opacity: initial;
}

.flex-end {
  display: flex;
  justify-content: flex-end;
  margin-bottom: 20px;
}

/* -----------------------------------------
- header
----------------------------------------- */
header {
  width: 100%;
  margin: 0 auto;
  background: #fff;
}

header .box {
  display: table;
  table-layout: fixed;
}

header .box > * {
  display: table-cell;
  vertical-align: bottom;
}

header .toplogo {
  padding: 10px 0;
  width: 120px;
  vertical-align: middle;
}

header .toplogo a {
  display: inline-block;
}

header .toplogo img {
  width: 100%;
}

.header__side {
  padding: 5px 0;
  vertical-align: middle;
}

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

.header__sideInner > * {
  display: table-cell;
}

header .advertising_w {
  width: 794px;
  text-align: center;
  vertical-align: middle;
}

header .advertising_w a {
  display: block;
}

/*
.header__sideLink {
  overflow: hidden;
  background: #eb6900;
  vertical-align: bottom;
}

.header__sideLink::before {
  content: "";
  position: absolute;
  width: 100%;
  height: 100%;
  left: -100%;
  top: 0;
  z-index: 0;
  background: #323232;
  transition: all .5s ease;
}

.header__sideLink:hover::before {
  left: 0;
}
*/

.header__sideLink {
  text-align: right;
  vertical-align: bottom;
}

.header__sideLink a {
  position: relative;
  z-index: 10;
  padding: 0.6em 40px 0.6em 20px;
  display: inline-block;
  color: #fff;
  background: #eb6900;
  font-weight: bold;
}

.header__sideLink a::after {
  content: "";
  position: absolute;
  right: 13px;
  top: 50%;
  transform: translate(0, -50%);
  display: inline-block;
  width: 20px;
  height: 12px;
  background: url(../img/common/ico_right.svg) no-repeat;
  background-size: cover;
  transition: ease .5s;
}

.header__sideLink a:hover {
  opacity: 1;
}

.header__sideLink a:hover::after {
  right: 10px;
}



/*
header .box::after {
  content: "";
  clear: both;
  display: block;
}
*/

header .ttl {
  display: block;
  width: 100%;
  height: 100px;
  margin: 0 auto;
  color: #fff;
  background: #323232;
}

header h1 {
  display: inline-block;
  line-height: 100px;
  font-size: 2.6rem;
  font-size: 25px;
  vertical-align: middle;
}

header h1 .txt {
  display: inline-block;
  line-height: 1.2;
  vertical-align: middle;
}

header h1::before {
  content: "";
  display: inline-block;
  margin-right: 9px;
  width: 46px;
  height: 46px;
  display: inline-block;
  background: url(../img/common/menu_news.svg) no-repeat;
  background-size: cover;
  vertical-align: middle;
}

.g_nav {
  position: relative;
  display: block;
  width: calc(110px * 6);
  float: right;
}

.g_nav li.menu {
  position: relative;
  display: inline-block;
  width: 110px;
  height: 100px;
  font-size: 14px;
  font-weight: bold;
  text-align: center;
  white-space: nowrap;
  color: #fff;
  cursor: pointer;
}

.g_nav li.menu a {
  position: relative;
  display: block;
  height: 100px;
  font-size: 14px;
  font-weight: bold;
  text-align: center;
  white-space: nowrap;
  color: #fff;
}

.g_nav li.menu::after,
.g_nav li.menu>a::after {
  position: absolute;
  transition: all .3s ease;
  content: "";
  width: 0;
  left: 0;
  bottom: 0;
  height: 4px;
  background: #e60012;
}

.g_nav li.menu.current::after {
  width: 100%;
  left: 0;
  opacity: 1;
}

.g_nav li.menu:hover::after,
.g_nav li.menu:active::after {
  width: 100%;
  left: 0;
  opacity: 1;
}

.g_nav li.menu ul::before {
  position: absolute;
  content: "";
  width: 110px;
  height: 4px;
  top: -4px;
  left: 50%;
  transform: translate(-50%, 0);
  background: #e60012;
  opacity: 0;
}

.g_nav li.menu ul:hover::before {
  opacity: 1;
}

.g_nav li a:hover,
.g_nav li a:active {
  color: #fff;
  opacity: 1;
}

.g_nav li.menu img {
  display: block;
  width: 46px;
  margin: 0 auto;
  padding: 15px 0 16px;
}

.g_nav ul li ul {
  position: absolute;
  top: 90%;
  left: -75px;
  width: 260px;
  opacity: 0;
  display: none;
  /*transition: opacity .3s ease-in;*/
  z-index: 99;
}

.g_nav ul li ul li {
  width: 100%;
  height: 59px;
  line-height: 1.5;
  text-align: center;
  background: #323232;
  border-bottom: 1px solid #fff;
}

.g_nav ul li ul li:last-of-type {
  border-bottom: 0;
}

.g_nav ul li ul li:hover>a {
  color: #eb6900;
}

.g_nav ul li ul li .txt {
  display: block;
  width: 100%;
  height: 59px;
  display: flex;
  justify-content: center;
  align-items: center;
}

.g_nav ul li:hover ul {
  top: 100%;
  display: block;
  opacity: 1;
}

.g_nav ul li.menu_portfolio img {
  padding-bottom: 5px;
}

.g_nav ul li.menu_portfolio .flag-container {
  display: inline;
  position: relative;
}

.g_nav ul li.menu_portfolio .flag-container img {
  position: absolute;
  left: -20px;
  top: 1px;
  height: 12px;
  width: auto;
  padding: 0;
}

.g_nav ul li.menu_portfolio_2 img.flag {
  display: inline;
  margin: 0;
  margin-right: 8px;
  padding: 0;
  height: 16px;
  width: auto;
}

/* -- h2 -- */
h2 {
  position: relative;
  display: block;
  line-height: 1;
  padding-left: 14px;
  margin-top: 4px;
  margin-bottom: 11px;
  font-size: 22px;
  font-weight: bold;
}

h2::before {
  position: absolute;
  left: 0;
  content: "";
  display: inline-block;
  width: 4px;
  height: 1em;
  background: #e60012;
}

#sidebar h2 {
  margin-bottom: 7px;
  font-size: 18px;
}

/* -----------------------------------------
- breadcrumb
----------------------------------------- */
.breadcrumb {
  height: 34px;
  line-height: 34px;
  color: #969696;
  border-bottom: 1px solid #ebebeb;
}

.breadcrumb ol {
  font-size: 12px;
}

.breadcrumb li {
  display: inline;
  font-size: 12px;
}

.breadcrumb li a {
  color: #969696;
}

.breadcrumb li a:hover {
  color: #eb6900;
}

.breadcrumb li::after {
  display: inline-block;
  content: ">";
  padding: 0 1px 0 .25em;
  vertical-align: top;
}

.breadcrumb li:last-of-type::after {
  display: none;
}

/* -----------------------------------------
- div#market-page
----------------------------------------- */
#timeline {
  padding-bottom: 60px;
  background: #fff;
  font-size: 14px;
}

#timeline .small {
  font-size: 12px;
  font-weight: normal;
}

.timeline_cnt::after {
  content: "";
  clear: both;
  display: block;
}

.timeline-brand {
  display: block;
  float: left;
  width: 156px;
  height: 338px;
  overflow: hidden;
  white-space: nowrap;
}

.timeline-brand li {
  width: 100%;
  height: 38px;
  line-height: 38px;
  padding-left: 10px;
  font-size: 14px;
  font-weight: bold;
}

li.country-head {
  height: 72px;
  background: url(../img/news/timeline-table_head.svg) no-repeat;
  background-position: bottom 27px right 7px;
}

li.country-head .txt {
  display: none;
}

.timeline-brand li:nth-of-type(even) {
  background-color: #f5f5f5;
}

#timeline .timeline_cnt {
  width: 780px;
  height: 100%;
  margin-bottom: 40px;
}

.timeline-graph {
  width: 624px;
  height: 368px;
  padding-bottom: 20px;
  float: right;
  overflow-y: hidden;
  overflow-x: scroll;
}

.timeline-graph .timeline-dating {
  width: 1248px;
  height: 18px;
  line-height: 18px;
  font-size: 12px;
  font-weight: bold;
}

.timeline-date {
  display: inline-block;
  width: 30px;
  margin-left: 10px;
}

.timeline-nextdate {
  display: inline-block;
  width: 30px;
  margin-left: 370px;
  text-align: center;
}

.timeline-after-nextdate {
  display: inline-block;
  width: 30px;
  margin-left: 592px;
  text-align: center;
}

.timeline-country {
  width: 1248px;
  height: 320px;
  background: url(../img/news/timeline-table_bg_pattern.svg) repeat;
  background-size: auto;
  background-position: top -22px left;
}

.timeline-country::before {
  content: "";
  display: block;
  width: 1248px;
  height: 54px;
  background: url(../img/news/timeline-table_clock.svg) repeat-x;
  background-size: 624px 100%;
  background-position: top left 1px;
}

.timeline-country .date-01 {
  float: left;
  width: 624px;
}

.timeline-country .date-02 {
  float: right;
  width: 624px;
}

.timeline-country .date-01::after {
  content: "";
  clear: both;
  display: block;
}

.timeline-graph .graph {
  position: relative;
  width: 100%;
  height: 38px;
}

.timeline-graph .graph div {
  position: absolute;
  height: 14px;
  background: #eb6900;
}

.timeline-graph .graph .orange {
  background: #eb6900!important;
}

.timeline-graph .graph .red {
  background: #e60012!important;
}

.timeline-graph .graph .blue {
  background: #00a0e9!important;
}

.timeline-graph .graph .summertime {
  height: 8px!important;
  background: #00a0e9!important;
}

#timeline .timeline-graph::after {
  content: "";
  clear: both;
  display: block;
}

#index_number .link {
  display: flex;
  max-width: 660px;
  margin: 0 auto;
}

.link .schedule.btn {
  width: 320px;
  height: 44px;
  line-height: 44px;
  text-align: center;
  font-size: 14px;
  font-weight: bold;
}

.link .attendance_time.btn {
  width: 320px;
  height: 44px;
  line-height: 44px;
  text-align: center;
  font-size: 14px;
  font-weight: bold;
}

.attendance_time.btn {
  margin-right: 20px;
}

/* #index_number */
#index_number {
  padding-bottom: 20px;
}

.index-table {
  background: #fff;
}

.index-table tr {
  height: 44px;
}

.index-table tr:nth-of-type(odd) {
  background: #f5f5f5;
}

.index-table thead th {
  text-align: center;
  color: #fff;
  background: #323232;
}

.index-table tbody th {
  text-align: left;
  font-weight: bold;
  padding-left: 20px;
}

.index-table tbody td {
  text-align: right;
  padding-right: 15px;
}

.index-table tbody td:last-of-type {
  padding-right: 20px;
}

.index-table .sorting_indicator {
  display: inline-block;
  width: 100%;
  text-decoration: underline;
  cursor: pointer;
}

.index-table .sorting_indicator.sort_up::after {
  content: "";
  display: inline-block;
  width: 0;
  height: 0;
  margin-left: .25em;
  border-style: solid;
  border-width: 0 4px 8px 4px;
  border-color: transparent transparent #ffffff transparent;
}

.index-table .sorting_indicator.sort_down::after {
  content: "";
  display: inline-block;
  width: 0;
  height: 0;
  margin-left: .25em;
  border-style: solid;
  border-width: 8px 4px 0 4px;
  border-color: #ffffff transparent transparent transparent;
}

.index-table .tab-group_03 li.tab_03 {
  position: relative;
  display: inline-block;
  width: 180px;
  height: 34px;
  margin-right: 10px;
  margin-bottom: 21px;
  text-align: center;
  background: #fff;
  border: 1px solid #323232;
  vertical-align: bottom;
  transition: ease .2s;
  cursor: pointer;
  overflow: hidden;
}

.index-table .tab-group_03 .txt {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  display: block;
  width: 100%;
  font-size: 14px;
  font-weight: bold;
}

.index-table .tab-group_03 li.tab_03:last-of-type {
  margin-right: 0;
}

.index-table .tab-group_03 li.tab_03:hover {
  color: #fff;
  background: #eb6900;
  border: 0;
}

.index-table .tab-group_03 li.is-active {
  color: #fff;
  background: #eb6900;
  border: 0;
}

/* #market_conditions */
#market_conditions {
  padding-bottom: 60px;
}

.market-table {
  table-layout: fixed;
  background: #fff;
  margin-bottom: 40px;
  border-top: 1px solid #323232;
  border-bottom: 1px solid #323232;
}

.market-table tr {
  height: 49px;
  line-height: 49px;
  border-bottom: 1px solid #ebebeb;
}

.market-table tr td:nth-of-type(1) {
  max-width: 140px;
}

.market-table .category {
  height: 18px;
  margin-right: 10px;
  padding: .15em .5em;
  font-size: 12px;
  font-weight: bold;
  color: #fff;
  background: #eb6900;
}

.market-table .ttl {
  font-weight: bold;
  line-height: 1.25;
}

/* #indicators */
#indicators {
  padding-bottom: 60px;
}

.indicators-table {
  background: #fff;
}

.indicators-table tr {
  height: 44px;
}

.indicators-table tbody:nth-of-type(even) {
  background: #f5f5f5;
}

.indicators-table thead th {
  text-align: center;
  color: #fff;
  background: #323232;
}

.indicators-table tbody th {
  width: 130px;
  line-height: 1;
  text-align: left;
  font-weight: bold;
  /*padding: 1em 20px 0;*/
  padding: 1em;
  border-bottom: 0;
  white-space: nowrap;
  vertical-align: top;
}

.indicators-table tbody td {
  padding: 1em;
  border-bottom: 1px solid #ebebeb;
  vertical-align: top;
}

/*.indicators-table tbody td:nth-of-type(1) {
  padding: 0 30px 0 10px;
}*/

/*.indicators-table tbody td:nth-of-type(2) {
  padding: 0 30px 0 0;
}*/

.indicators-table tbody td:nth-of-type(4),
.indicators-table tbody td:nth-of-type(5) {
  /*padding: 0 20px 0 0;
  padding: 0 15px 0 0;*/
  text-align: right;
}

.indicators-table div.item {
  display: -webkit-flex;
  display:    -moz-flex;
  display:     -ms-flex;
  display:      -o-flex;
  display:         flex;
  justify-content: flex-start;
  -ms-align-items: flex-start;
      align-items: flex-start;
}

.indicators-table .txt {
  /*width: 84%;
  margin-bottom: 3px;
  font-size: 12px;*/
  width: -webkit-calc( 100% - ( 18px + 2px ) );
  width:         calc( 100% - ( 18px + 2px ) );
  min-width: 3em;
  padding-left: 2px;
}

/* -----------------------------------------
- div#schedule-page
----------------------------------------- */
#schedule-country {
  padding-bottom: 36px;
}

.schedule_cnt .cnt {
  display: flex;
  text-align: center;
}

.schedule_cnt .cnt>div {
  width: 180px;
  margin: 0 20px 20px 0;
  background: #f5f5f5;
}

.schedule_cnt .cnt-01 div:last-of-type,
.schedule_cnt .cnt-02 div:last-of-type {
  margin-right: 0;
}

.schedule_cnt img {
  margin: 15px 0;
}

.schedule_cnt .country {
  width: 100%;
  height: 26px;
  line-height: 26px;
  font-size: 16px;
  font-weight: bold;
  text-align: center;
  color: #fff;
  background: #000;
}

.schedule_cnt .country_cnt {
  padding: 0 10px 10px;
}

.schedule_cnt .country_cnt img {
  width: 75px;
  height: 50px;
}

.schedule_cnt .mtg {
  position: relative;
  width: 100%;
  margin-bottom: 10px;
  text-align: left;
  font-size: 14px;
  font-weight: bold;
}

.schedule_cnt .mtg::before {
  content: "";
  display: inline-block;
  width: 4px;
  height: 1em;
  margin: 0 6px -2px 0;
  background: #e60012;
}

.schedule_cnt li {
  display: block;
  width: 100%;
  height: 34px;
  padding: 10px;
  font-size: 14px;
  text-align: left;
  background: #fff;
}

.schedule_cnt li:nth-of-type(even) {
  background: #f5f5f5;
}

.schedule_cnt .country_cnt a {
  text-decoration: underline;
  color: #eb6900;
}

/* #schedule-sq */
#schedule-sq {
  padding-bottom: 230px;
}

.schedule-sq_cnt .country {
  width: 100%;
  height: 26px;
  line-height: 26px;
  font-size: 16px;
  font-weight: bold;
  text-align: center;
  color: #fff;
  background: #eb6900;
}

/* -----------------------------------------
- div#portfolio-page
----------------------------------------- */
#portfolio-page header h1::before {
  background: url(../img/common/menu_portfolio.svg) no-repeat;
  background-size: cover;
}

/* #brand-search */
#brand-search {
  margin-top: -7px;
}

#brand-search .cnt {
  padding-bottom: 20px;
}

#brand-search .cnt::after {
  content: "";
  clear: both;
  display: block;
}

/* .search */
.search_cnt {
  width: 50%;
  float: left;
}

.search_cnt .cnt {
  display: flex;
}

.search_cnt h2 {
  display: inline-block;
  float: left;
  margin: 0 9px 0 0;
  padding: .5em 0 0;
  font-size: 15px;
}

.search_cnt h2::before {
  display: none;
}

.search_cnt .input {
  width: 170px;
  height: 30px;
}

.search_cnt [type="search"] {
  width: 100%;
  height: 30px;
  padding: 0 0 0 .25em;
  border-top: 1px solid #323232;
  border-left: 1px solid #323232;
  border-bottom: 1px solid #323232;
}

.search_cnt .input_box {
  display: flex;
  height: 30px;
}

.search_cnt .search_btn {
  width: 30px;
  height: 30px;
  text-align: center;
  background: #323232;
}

.search_cnt .search_btn img {
  width: 15px;
  height: 15px;
  line-height: 15px;
}

/* sort_cnt */
.sort_cnt {
  float: right;
}

.sort_btn {
  width: 90px;
  height: 30px;
  font-size: 14px;
  font-weight: bold;
  text-align: center;
  color: #fff;
  background: #323232;
  transition: ease .2s all;
}

.sort_btn:hover {
  background: #eb6900;
}

/* tbl */
.portfolio-page_tbl .lt {
  text-align: left;
}

.portfolio-page_tbl .rt {
  text-align: right;
}

/* #brand-tbl */
#brand-tbl {
  padding-bottom: 40px;
}

.brand-tbl_cnt {
  /*width: 780px;*/
  /*overflow: hidden;*/
}

.brand-tbl_cnt .brand-tbl_01 {
  padding-bottom: 20px;
}

.brand-tbl_cnt .brand-tbl_01::after {
  content: "";
  clear: both;
  display: block;
}

.brand-tbl_cnt .brand-tbl_01 table {
  table-layout: fixed;
  width: 100%;
  height: 100%;
  margin-bottom: 20px;
  background: #fff;
}

.brand-tbl_cnt .brand-tbl_01 table th {
  position: relative;
  height: 44px;
  font-weight: bold;
  text-align: center;
  color: #fff;
  background: #323232;
}

.brand-tbl_cnt .brand-tbl_01-01 th:nth-of-type(1) ,
.brand-tbl_cnt .brand-tbl_01-01 th:nth-of-type(n+2) {
  width: auto;
}

.brand-tbl_cnt table tr {
  text-align: center;
  background: #fff;
}

.brand-tbl_cnt table tr:nth-of-type(odd) {
  background: #f5f5f5;
}

.brand-tbl_cnt td {
  height: 34px;
  padding: 0 5px;
}

/* sort */
.brand-tbl_cnt .sorting_indicator {
  display: inline-block;
  width: 100%;
  text-decoration: underline;
  cursor: pointer;
}

.brand-tbl_cnt .sorting_indicator.sort_up::after {
  content: "";
  display: inline-block;
  width: 0;
  height: 0;
  margin-left: .25em;
  border-style: solid;
  border-width: 0 4px 8px 4px;
  border-color: transparent transparent #ffffff transparent;
}

.brand-tbl_cnt .sorting_indicator.sort_down::after {
  content: "";
  display: inline-block;
  width: 0;
  height: 0;
  margin-left: .25em;
  border-style: solid;
  border-width: 8px 4px 0 4px;
  border-color: #ffffff transparent transparent transparent;
}

.brand-tbl_cnt th:nth-of-type(1) {
  width: 30px;
}

.brand-tbl_cnt th:nth-of-type(2) {
  width: 70px;
}

.brand-tbl_cnt th:nth-of-type(3) {
  width: 120px;
}

.brand-tbl_cnt th:nth-of-type(4) {
  width: 50px;
}

.brand-tbl_cnt th:nth-of-type(5) {
  width: 50px;
}

.brand-tbl_cnt th:nth-of-type(6) {
  width: 80px;
}

.brand-tbl_cnt th:nth-of-type(7) {
  width: 60px;
}

.brand-tbl_cnt th:nth-of-type(8) {
  width: 100px;
}

.brand-tbl_cnt th:nth-of-type(9) {
  width: 70px;
}

.brand-tbl_cnt th:nth-of-type(10) {
  width: 80px;
}

.brand-tbl_cnt th:nth-of-type(11) {
  width: 100px;
}

.brand-tbl_cnt th:nth-of-type(12) {
  width: 70px;
}

.brand-tbl_cnt th:nth-of-type(13) {
  width: 100px;
}

.brand-tbl_cnt th:nth-of-type(14) {
  width: 70px;
}

.brand-tbl_cnt th:nth-of-type(15) {
  width: 28px;
}

.brand-tbl_cnt .icoFlag img {
  display: block;
  width: 2em;
  margin: 0 auto;
  -webkit-transition: all .2s;
       -o-transition: all .2s;
          transition: all .2s;
}

.brand-tbl_cnt .icoFlag a:hover img {
  opacity: .7;
}

.brand-tbl_cnt tfoot {
  font-weight: bold;
  color: #eb6900;
  background: #fff;
  border-bottom: 1px solid #eb6900;
}

/* .select-box */
.select-box select {
  position: relative;
  width: 100%;
  height: 24px;
  padding: 2px;
  font-size: 14px;
  color: #323232;
  background: #fff;
  border: 1px solid #ebebeb;
}
.select-box select option {
  color: #323232;
  background: #fff;
}
.select-box label {
  position: relative;
  width: 100%;
  color: #323232;
}
.select-box label:after {
  display: block;
  content: "";
  position: absolute;
  top: 50%;
  transform: translate(0,-50%);
  right: 5px;
  width: 8px;
  height: 8px;
  background: url(../img/common/ico_select_down.svg) no-repeat;
  background-size: contain;
  background-position: center;
  pointer-events: none;
}

/* .input-box */
.input-box {
  width: 100%;
  font-size: 14px;
  color: #323232;
}
.input-box input {
  width: 100%;
  padding: 0 .25em;
  text-align: right;
  background: #fff;
  border: 1px solid #ebebeb;
}

.input-box.price input {
  width: 70px;
  height: 24px;
}
.input-box.amount input {
  width: 50px;
  height: 24px;
}

/* .tbl-total .brand-tbl_02 */
.brand-tbl_cnt .brand-tbl_02 table {
  table-layout: fixed;
  width: 100%;
  height: 68px;
  margin-bottom: 0;
  background: #fff;
}

.brand-tbl_cnt .brand-tbl_02 table tr {
  background: #fff;
}

.brand-tbl_cnt .brand-tbl_02 table th {
  text-align: center;
  color: #fff;
  background: #323232;
}

.brand-tbl_cnt .brand-tbl_02 table th,
.brand-tbl_cnt .brand-tbl_02 table td {
  width: 130px;
  height: 34px;
  font-size: 14px;
  font-weight: bold;
}

.brand-tbl_cnt .brand-tbl_02 table th.ttl {
  background: #eb6900;
}

.brand-tbl_cnt .brand-tbl_02 table td {
  /*color: #eb6900;*/
  text-align: right;
  font-weight: bold;
  border-bottom: 1px solid #ebebeb;
}

/* .save_delete_cnt */
.save_delete_cnt {
  display: flex;
  justify-content: center;
  width: 100%;
  margin: -48px auto 40px;
}
.save_delete_cnt input {
  width: 100%;
  height: 100%;
  font-size: 14px;
  font-weight: bold;
}
.save_delete_cnt div {
  position: relative;
  width: 320px;
  height: 44px;
  color: #fff;
  cursor: pointer;
  transition: .2s;
}
.save_delete_cnt div::after {
  content: "";
  position: absolute;
  top: 50%;
  transform: translate(0,-50%);
  right: 14px;
  display: inline-block;
}
.save_delete_cnt div:hover {
 opacity: .7;
}
.save_delete_cnt .save_btn {
  margin-right: 20px;
  background: #eb6900;
}
.save_delete_cnt .save_btn::after {
  width: 14px;
  height: 16px;
  background: url(../img/common/ico_arrow_down-save.svg) no-repeat;
  background-size: contain;
  background-position: center;
}
.save_delete_cnt .delete_btn {
  background: #e60012;
}
.save_delete_cnt .delete_btn::after {
  width: 14px;
  height: 14px;
  background: url(../img/common/ico_close-delete.svg) no-repeat;
  background-size: contain;
  background-position: center;
}

/* #benchmark-tbl */
.benchmark-tbl_cnt {
  width: calc(429px + 19px);
  float: left;
  margin-right: 31px;
}

.benchmark-tbl_cnt::after {
  content: "";
  clear: both;
  display: block;
}

.benchmark-tbl_cnt table {
  table-layout: fixed;
  width: 429px;
  background: #fff;
}

.benchmark-tbl_cnt .tbl-tp th {
  height: 44px;
  text-align: center;
  font-size: 14px;
  font-weight: bold;
  color: #fff;
  background: #323232;
  white-space: nowrap;
}

.benchmark-tbl_cnt table td:nth-of-type(1) {
  width: 66px;
}

.benchmark-tbl_cnt table th:nth-of-type(3),
.benchmark-tbl_cnt table td:nth-of-type(5) {
  width: 130px;
}

.benchmark-tbl_cnt .tbl-bt {
  width: 100%;
  height: calc(44px * 6);
  overflow-x: hidden;
  overflow-y: scroll;
}

.benchmark-tbl_cnt .tbl-bt td {
  height: 44px;
  text-align: center;
}

.benchmark-tbl_cnt .tbl-bt tr:nth-of-type(even) {
  background: #f5f5f5;
}

/* -----------------------------------------
- div#attendance_time-page
----------------------------------------- */
#attendance_time-page #timeline h2 {
  margin-bottom: 17px;
}

#attendance_time-page h2 .small {
  margin-left: 1.25em;
  font-size: 12px;
}

#attendance_time-page #schedule-country {
  padding-bottom: calc(117px - 20px);
}

#attendance_time-page #timeline .timeline_cnt {
  width: 780px;
  height: 100%/*548px;*/
  ;
  margin-bottom: 10px;
}

#attendance_time-page .timeline-brand {
  display: block;
  float: left;
  width: 156px;
  height: 100%;
  overflow: hidden;
}

#attendance_time-page li.country-head {
  height: 54px;
  background: url(../img/news/timeline-table_head.svg) no-repeat;
  background-position: bottom 27px right 6.5px;
}

#attendance_time-page .timeline-graph {
  width: 624px;
  height: 100%;
  padding-bottom: 0;
  float: right;
  overflow-y: hidden;
  overflow-x: hidden;
}

#attendance_time-page .timeline-graph::after {
  content: "";
  clear: both;
  display: block;
}

#attendance_time-page .timeline-country {
  position: relative;
  width: 626px;
  height: 548px;
  background: url(../img/news/timeline-table_bg_pattern.svg) repeat;
  background-size: auto;
  background-position: top -22px left;
}

#attendance_time-page .timeline-country::before {
  content: "";
  display: block;
  width: 626px;
  height: 54px;
  background: url(../img/news/timeline-table_clock.svg) no-repeat;
  background-size: 624px 100%;
  background-position: top left;
  background-color: #fff;
}

#attendance_time-page .timeline-country .date-01 {
  float: none;
  width: 100%;
}

/* .timezone */
.timezone {
  position: absolute;
  top: 61px;
  right: 31px;
  width: 280px;
  height: 174px;
  padding: 20px;
  font-size: 12px;
  background: #fff;
  z-index: 10;
}

.timezone .normal_time {
  padding-bottom: 10px;
}

.timezone .normal_time::before {
  content: "";
  display: inline-block;
  width: 28px;
  height: 14px;
  margin-right: 5px;
  padding-top: 1px;
  background: #eb6900;
}

.timezone .summer_time {
  padding-bottom: 20px;
}

.timezone .summer_time::before {
  content: "";
  display: inline-block;
  width: 28px;
  height: 8px;
  margin-right: 5px;
  background: #00a0e9;
}

.timezone .summertime p {
  padding-bottom: 10px;
  font-weight: bold;
  color: #00a0e9;
}

.timezone .summertime table {
  text-align: left;
  table-layout: fixed;
}

.timezone .summertime table tr {
  padding-bottom: 10px;
  white-space: nowrap;
}

.timezone .summertime table th {
  width: 40px;
  padding-bottom: 10px;
}

.timezone .summertime table td {
  width: 200px;
  padding-bottom: 10px;
}

/* .timeline-footer */
.timeline-footer {
  margin-top: 10px;
}

.timeline-footer ul {
  display: flex;
  height: 32px;
  background: #f5f5f5;
}

.timeline-footer li.footer_utc {
  width: 153px;
  height: 100%;
  background: url(../img/news/timeline-table_footer.svg) no-repeat;
  background-position: right 4.5px center;
}

.timeline-footer li.footer_utc .txt {
  display: none;
}

.timeline-footer li.footer_clock {
  width: 620px;
  height: 100%;
  background: url(../img/news/timeline-table_clock-footer.svg) no-repeat;
  background-size: 611px 10px;
  background-position: left 8px center;
}

/* -----------------------------------------
- div#brand_list-page
----------------------------------------- */
#brand_list-page header h1::before {
  background: url(../img/common/menu_portfolio.svg) no-repeat;
  background-size: cover;
}

/* #brand-tbl */
#brand_list-page #brand-tbl {
  padding-bottom: 144px;
}

#brand_list-page .brand-tbl_cnt {
  width: 100%;
  overflow: hidden;
}

#brand_list-page .brand-tbl_cnt table {
  table-layout: fixed;
  width: 100%;
  height: 100%;
  margin-bottom: 20px;
  background: #fff;
}

#brand_list-page .brand-tbl_cnt th:nth-of-type(1) {
  width: 30px;
}

#brand_list-page .brand-tbl_cnt th:nth-of-type(2) {
  width: 70px;
}

#brand_list-page .brand-tbl_cnt th:nth-of-type(3) {
  width: 120px;
}

#brand_list-page .brand-tbl_cnt th:nth-of-type(4) {
  width: 70px;
}

#brand_list-page .brand-tbl_cnt th:nth-of-type(5) {
  width: 70px;
}

#brand_list-page .brand-tbl_cnt th:nth-of-type(6) {
  width: 70px;
}

#brand_list-page .brand-tbl_cnt th:nth-of-type(7) {
  width: 70px;
}

#brand_list-page .brand-tbl_cnt th:nth-of-type(8) {
  width: 70px;
}

#brand_list-page .brand-tbl_cnt th:nth-of-type(9) {
  width: 70px;
}

#brand_list-page .brand-tbl_cnt th:nth-of-type(10) {
  width: 70px;
}

#brand_list-page .brand-tbl_cnt th:nth-of-type(11) {
  width: 95px;
}

#brand_list-page .brand-tbl_cnt th:nth-of-type(12) {
  width: 30px;
}

/* -----------------------------------------
- div#brand_details-page
----------------------------------------- */
#brand_details-page header h1::before {
  background: url(../img/common/menu_portfolio.svg) no-repeat;
  background-size: cover;
}

/* .register_cnt */
.register_cnt {
  display: flex;
  justify-content: flex-end;
  width: 100%;
  margin-bottom: 20px;
}
.register_cnt input {
  width: 100%;
  height: 100%;
  font-size: 14px;
  font-weight: bold;
}
.register_cnt div {
  height: 30px;
  color: #fff;
  background: #323232;
  cursor: pointer;
  transition: .2s;
}
.register_cnt div:hover {
  background: #eb6900;
}
.register_cnt .brand_register_btn {
  width: 100px;
  /*margin-right: 20px;*/
}
.register_cnt .portfolio_register_btn {
  width: 160px;
  margin-left: 30px;
}

/* #brand-details */
.change_box {
  /*height: 145px;*/
  margin-bottom: 24px;
  padding: 20px;
  background: #f5f5f5;
}

.details_name {
  /*display: table;
  width: 100%;
  table-layout: fixed;*/
  display: -webkit-flex;
  display:    -moz-flex;
  display:     -ms-flex;
  display:      -o-flex;
  display:         flex;
  justify-content: space-between;
  -ms-align-items: flex-end;
      align-items: flex-end;
  margin: 0 0 12px 0;
}

/*.details_name > * {
  display: table-cell;
  vertical-align: bottom;
}*/

.details_name > h2 {
  -webkit-flex: 1;
     -moz-flex: 1;
      -ms-flex: 1;
       -o-flex: 1;
          flex: 1;
  width: -webkit-calc( 100% - 430px );
  width:         calc( 100% - 430px );
  margin: 0;
  padding: 3px 0 0 0;
  font-size: 26px;
}

.details_name > h2::before {
  display: none;
}

.details_name > h2 .code {
  margin-right: 10px;
}

.details_name > div {
  -webkit-flex: none;
     -moz-flex: none;
      -ms-flex: none;
       -o-flex: none;
          flex: none;
  width: 430px;
}

.details_name .settlement {
  /*width: 210px;*/
  padding: 6px .5em;
  background-color: #fff;
  font-size: 14px;
  line-height: 1.3;
}

/*.details_name .settlement .txt {
  display: inline-block;
}*/

.details_name .settlementHead {
  display: -webkit-flex;
  display:    -moz-flex;
  display:     -ms-flex;
  display:      -o-flex;
  display:         flex;
  justify-content: flex-start;
  -ms-align-items: stretch;
      align-items: stretch;
}

.details_name .settlementHead > div {
  -webkit-flex: none;
     -moz-flex: none;
      -ms-flex: none;
       -o-flex: none;
          flex: none;
  width: 2.6em;
}

.details_name .settlementHead > div + div {
  display: -webkit-flex;
  display:    -moz-flex;
  display:     -ms-flex;
  display:      -o-flex;
  display:         flex;
  justify-content: space-between;
  -ms-align-items: center;
      align-items: center;
  -webkit-flex: 1;
     -moz-flex: 1;
      -ms-flex: 1;
       -o-flex: 1;
          flex: 1;
  width: -webkit-calc( 100% - ( 2.6em + .5em ) );
  width:         calc( 100% - ( 2.6em + .5em ) );
  margin-left: .5em;
}

.details_name .settlementHead img {
  /*margin-right: 0.5em;
  width: 2.6em;
  height: 2.6em;
  vertical-align: top;*/
  display: block;
  width: 100%;
  max-width: 100%;
}

.details_name .settlementList {
  margin-top: 7px;
}

.details_name .settlementList > p + p {
  margin-top: 5px;
}

.details_name .settlementList > p a {
  display: block;
  position: relative;
  z-index: 0;
  padding-left: 1.25em;
  overflow: hidden;
  -ms-text-overflow: ellipsis;
      text-overflow: ellipsis;
  white-space: nowrap;
}

.details_name .settlementList > p a:before {
  display: block;
  position: absolute;
  top: 0;
  left: 0;
  width: .9em;
  height: 1.3em;
  background-image: url("/assets/img/common/ico_pdf.svg");
  background-position: 50%;
  -webkit-background-size: contain;
          background-size: contain;
  background-repeat: no-repeat;
  content: " ";
}

.details_name .update {
  /*width: 220px;*/
  margin-top: 7px;
  font-size: 14px;
  text-align: right;
}

/* .value_cnt */
.value_cnt {
  position: relative;
  display: flex;
  justify-content: space-between;
}

/* .details_value */
.details_value .arrow_ico {
  display: inline-block;
  width: 20px;
  margin: 0 9px 0 2px;
}

.details_value .arrow_ico img {
  position: absolute;
  top: 2px;
  left: 2px;
}

/* .details_value .arrow_ico.arrow_flat */
.details_value .arrow_ico.arrow_flat {
  margin: 0 14px 0 2px;
}

.details_value .arrow_ico.arrow_flat img {
  top: 7px;
  left: 1px;
}

.details_value .value {
  display: inline-block;
  font-size: 34px;
  font-weight: bold;
  vertical-align: middle;
}

/* .details_sign */
.details_sign {
  margin-top: 17px;
  font-size: 22px;
  font-weight: bold;
}

.details_sign span:nth-of-type(1) {
  display: inline-block;
  min-width: 84px;
  padding-right: 4px;
}

/* .details_value_tbl */
.details_value_tbl {
  background: #fff;
}

.details_value_tbl table {
  table-layout: fixed;
  width: 430px;
  height: calc(34px * 2);
  text-align: center;
  font-size: 14px;
}

.details_value_tbl table th {
  color: #fff;
  background: #323232;
}

.details_value_tbl table td {
  text-align: right;
}

.details_value_tbl table th,
.details_value_tbl table td {
  height: 34px;
  padding: 4px 4px 0;
}

/* #details_datearea */
#details_datearea {
  /*margin-bottom: 60px;*/
}

/* #details_datearea label */
#details_datearea > label {
  position: relative;
  display: inline-block;
  width: 110px;
  height: 32px;
  text-align: center;
  background: #fff;
  border-left: 1px solid #323232;
  border-top: 1px solid #323232;
  border-right: 1px solid #323232;
  vertical-align: bottom;
  transition: ease .2s;
  cursor: pointer;
  overflow: hidden;
}

#details_datearea > label:hover {
  color: #fff;
  background: #323232;
}

#details_datearea input:checked+label {
  color: #fff;
  background-color: #323232;
}

#details_datearea > label .txt {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  display: block;
  width: 100%;
  font-size: 12px;
  font-weight: bold;
}

#details_datearea input[type="radio"] {
  display: none;
}

/* .date-area */
#details_datearea .date-area div {
  height: 0;
  box-sizing: border-box;
  overflow: hidden;
  opacity: 0;
  transition: opacity .2s;
}

#date-chart:checked~.date-area #area-chart,
#date-results:checked~.date-area #area-results,
#date-linkagelist:checked~.date-area #area-linkagelist,
#date-tdnet:checked~.date-area #area-tdnet,
#date-overview:checked~.date-area #area-overview,
#date-finance:checked~.date-area #area-finance {
  width: 100%;
  height: 100%;
  padding: 30px 0;
  border-top: 1px solid #323232;
  border-bottom: 1px solid #323232;
  opacity: 1;
}

/* -----------------------------------------
- div#myview-page
----------------------------------------- */
#myview-page header h1::before {
  background: url(../img/common/menu_analysis.svg) no-repeat;
  background-size: cover;
}

#myview {
  margin-top: -20px;
  padding-bottom: 60px;
}

.myview-table table {
  table-layout: fixed;
}

.myview-table tr {
  border-bottom: 1px solid #ebebeb;
}

.myview-table td {
  padding: 15px 0 15px;
}

.myview-table tr td:nth-of-type(1) {
  width: 140px;
  vertical-align: text-top;
}

.myview-table .ttl {
  font-weight: bold;
  line-height: 1.75;
  vertical-align: text-top;
}

.myview-table .ttl a span {
  color: #969696;
}
.myview-table .ttl a:hover span {
  color: #eb6900;
}

.myview-table a:hover {
  opacity: 1;
}

/* -----------------------------------------
- div#ranking_search-page
----------------------------------------- */
#ranking_search-page header h1::before {
  background: url(../img/common/menu_analysis.svg) no-repeat;
  background-size: cover;
}

/* -- section#ranking_01 -- */
/* #ranking_search-tab */
#ranking_01 ul.tab-group_01 {
  display: flex;
}

#ranking_01 ul.tab-group_01 .txt {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  display: block;
  width: 100%;
  font-size: 18px;
  font-weight: bold;
}

#ranking_01 li.tab_01 {
  position: relative;
  display: inline-block;
  width: 380px;
  height: 48px;
  margin-right: 20px;
  text-align: center;
  background: #fff;
  border-left: 1px solid #323232;
  border-top: 1px solid #323232;
  border-right: 1px solid #323232;
  vertical-align: bottom;
  transition: ease .2s;
  cursor: pointer;
  overflow: hidden;
}

#ranking_01 li.tab_01:last-of-type {
  margin-right: 0;
}

#ranking_01 li.tab_01:hover {
  border-top: 4px solid #e60012;
}

#ranking_01 li.tab_01.is-active {
  border-top: 4px solid #e60012;
}

/* section.panel-group_01 */
#ranking_01 .panel-group_01 {
  position: relative;
  width: 100%;
  height: 100%;
  padding: 41px 0;
}

#ranking_01 .panel-group_01 .panel_01 {
  display: flex;
  width: 780px;
}

#ranking_01 .panel_01-ranking::before {
  position: absolute;
  top: 0;
  right: 0;
  content: "";
  display: block;
  width: 401px;
  height: 1px;
  background: #323232;
}

#ranking_01 .panel_01-search::before {
  position: absolute;
  top: 0;
  left: 0;
  content: "";
  display: block;
  width: 401px;
  height: 1px;
  background: #323232;
}

/* -- section#ranking_02 -- */
#ranking_02 {
  display: flex;
  align-items: flex-start;
}

/* section.panel-group_02 */
#ranking_02 .panel-group_02 .panel_02 {
  display: block;
  position: relative;
  width: 560px;
}

/* .ranking_02-menu */
#ranking_02 .ranking_02-menu {
  width: 180px;
  margin-right: 40px;
  text-align: center;
  color: #fff;
  background: #323232;
}

#ranking_02 .ranking_02-menu .ttl {
  margin-bottom: 5px;
  font-size: 16px;
  font-weight: bold;
}

#ranking_02 .ranking_02-menu .ttl::before {
  content: "";
  display: block;
  width: 46px;
  height: 46px;
  margin: 10px auto 13px;
  background: url(../img/analysis/ico_ranking-menu.svg) no-repeat;
  background-size: cover;
}

#ranking_02 .ranking_02-menu ul {
  padding: 0 5px;
  font-size: 14px;
  font-weight: bold;
  line-height: 1;
}

#ranking_02 .ranking_02-menu li {
  position: relative;
  display: block;
  width: 170px;
  min-height: 44px;
  margin-bottom: 5px;
  padding: 13.5px 5px;
  color: #323232;
  background: #fff;
  cursor: pointer;
  transition: all .2s ease;
}

#ranking_02 .ranking_02-menu li .txt {
  display: block;
  width: 100%;
  line-height: 1.25;
}

#ranking_02 .ranking_02-menu li:hover {
  color: #fff;
  background: #eb6900;
}

#ranking_02 .ranking_02-menu li.is-active {
  color: #fff;
  background: #eb6900;
}

/* -- section#ranking_03 -- */
#ranking_03 {
  width: 560px;
  margin: -4px 0 0;
  /*border-bottom: 1px solid #323232;*/
}

#ranking_03 h2 {
  margin-bottom: 20px;
  padding-bottom: 17px;
  border-bottom: 1px solid #323232;
}

/* section.panel-group_03 */
#ranking_03 .panel-group_03 .panel_03 {
  display: block;
  position: relative;
  width: 560px;
}

/* ul.tab-group_03 */
#ranking_03 .tab-group_03 li.tab_03 {
  position: relative;
  display: inline-block;
  width: 180px;
  height: 34px;
  margin-right: 10px;
  margin-bottom: 21px;
  text-align: center;
  background: #fff;
  border: 1px solid #323232;
  vertical-align: bottom;
  transition: ease .2s;
  cursor: pointer;
  overflow: hidden;
}

#ranking_03 .tab-group_03 .txt {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  display: block;
  width: 100%;
  font-size: 14px;
  font-weight: bold;
}

#ranking_03 .tab-group_03 li.tab_03:last-of-type {
  margin-right: 0;
}

#ranking_03 .tab-group_03 li.tab_03:hover {
  color: #fff;
  background: #eb6900;
  border: 0;
}

#ranking_03 .tab-group_03 li.is-active {
  color: #fff;
  background: #eb6900;
  border: 0;
}

/* .panel_03 */
#ranking_03 .panel_03 table {
  table-layout: initial;
  width: 100%;
  margin-bottom: 20px;
  font-size: 14px;
  text-align: center;
}

#ranking_03 .panel_03 table a:hover {
  opacity: 1;
}

#ranking_03 .panel_03 th {
  height: 43px;
  font-size: 14px;
  font-weight: bold;
  color: #fff;
  background: #323232;
  white-space: nowrap;
}

/*
#ranking_03 .panel_03 table th:nth-of-type(1) {
  width: 30px;
}

#ranking_03 .panel_03 table th:nth-of-type(2) {
  width: 70px;
}

#ranking_03 .panel_03 table th:nth-of-type(3) {
  width: 150px;
}

#ranking_03 .panel_03 table th:nth-of-type(4) {
  width: 50px;
}

#ranking_03 .panel_03 table th:nth-of-type(5) {
  width: 260px;
}
*/

#ranking_03 .panel_03 table td {
  height: 34px;
  padding: 0 5px;
}

#ranking_03 .panel_03 table tr:nth-of-type(odd) {
  background: #f5f5f5;
}

/* -- section#search_01 -- */
#search_01 {
  position: relative;
  display: flex;
  align-items: flex-start;
  width: 780px;
}

/* section.panel-group_s01 */
#search_01 .panel-group_s01 {
  width: 560px;
  margin: -4px 0 0;
  /*border-bottom: 1px solid #323232;*/
}

#search_01 .panel-group_s01 h2 {
  margin-bottom: 20px;
  padding-bottom: 17px;
  border-bottom: 1px solid #323232;
}

#search_01 .panel-group_s01 .panel_s01 {
  display: block;
  position: relative;
  width: 560px;
}

#search_01 .panel-group_s01 .description {
  margin-bottom: 19px;
}

#search_01 .panel-group_s01 .description p {
  font-size: 14px;
  line-height: 1.5;
}

/* .search_01-menu */
#search_01 .search_01-menu {
  width: 180px;
  margin-right: 40px;
  text-align: center;
  color: #fff;
  background: #323232;
}

#search_01 .search_01-menu .ttl {
  margin-bottom: 5px;
  font-size: 16px;
  font-weight: bold;
}

#search_01 .search_01-menu .ttl::before {
  content: "";
  display: block;
  width: 46px;
  height: 46px;
  margin: 10px auto 13px;
  background: url(../img/analysis/ico_search-menu.svg) no-repeat;
  background-size: cover;
}

#search_01 .search_01-menu ul {
  padding: 0 5px;
  font-size: 12px;
  font-weight: bold;
  line-height: 1;
  text-align: left;
}

#search_01 .search_01-menu li.tab_s01 {
  position: relative;
  display: block;
  width: 170px;
  min-height: 50.5px;
  margin-bottom: 5px;
  padding: 10px 5px;
  color: #323232;
  background: #fff;
  cursor: pointer;
  transition: all .2s ease;
}

#search_01 .search_01-menu .txt {
  display: block;
  width: 100%;
  line-height: 1.25;
}

#search_01 .search_01-menu li:hover {
  color: #fff;
  background: #eb6900;
}

/* ul.tab-group_s01 */
#search_01 .tab-group_s01 li.is-active {
  color: #fff;
  background: #eb6900;
  border: 0;
}

/* div.search-tbl_01 */
#search_01 .search-tbl_01 {
  /*width: 780px;*/
  /*padding-bottom: 20px;*/
}

#search_01 .search-tbl_01::after {
  content: "";
  clear: both;
  display: block;
}

/* -----------------------------------------
- div#technical_datascience-page
----------------------------------------- */
#strategy_01 {
  display: flex;
  align-items: flex-start;
}

#strategy_01 h2 {
  margin-bottom: 20px;
  padding-bottom: 17px;
  border-bottom: 1px solid #323232;
}

#strategy_01 h3 {
  font-size: 18px;
  font-weight: bold;
  margin-bottom: 15px;
}

#strategy_01 p.comment {
  font-size: 14px;
  line-height: 1.5;
  margin: 15px 0 35px;
  text-align: left;
}

/* section.panel-group_01 */
#strategy_01 .panel_01 {
  display: block;
  position: relative;
  width: 560px;
}

#strategy_01 .panel_01>section {
  /*border-bottom: 1px solid #323232;*/
}

#strategy_01 div.date_01 {
  margin-bottom: 15px;
}

#strategy_01 div.date_02 {
  margin-bottom: 15px;
}

#strategy_01 div.date_03 {
  margin-bottom: 20px;
}

/* #gcv_screening */
#gcv_screening div.date_01 {
  margin-bottom: 40px;
}

#gcv_screening div.date_02 {
  margin-bottom: 20px;
  text-align: center;
}

#gcv_screening .tab-group_02 li.tab_02 {
  position: relative;
  display: inline-block;
  width: 275px;
  height: 34px;
  margin-right: 10px;
  margin-bottom: 21px;
  text-align: center;
  background: #fff;
  border: 1px solid #323232;
  vertical-align: bottom;
  transition: ease .2s;
  cursor: pointer;
  overflow: hidden;
}

#gcv_screening .tab-group_02 .txt {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  display: block;
  width: 100%;
  font-size: 14px;
  font-weight: bold;
}

#gcv_screening .tab-group_02 li.tab_02:last-of-type {
  margin-right: 0;
}

#gcv_screening .tab-group_02 li.tab_02:hover {
  color: #fff;
  background: #eb6900;
  border: 0;
}

#gcv_screening .tab-group_02 li.is-active {
  color: #fff;
  background: #eb6900;
  border: 0;
}

.pair_trade-tbl tbody:nth-of-type(even) td {
  background: #ebebeb !important;
}
.pair_trade-tbl tbody:nth-of-type(odd) td {
  background: #f5f5f5 !important;
}
.pair_trade-tbl th {
   height: 34px !important;
}

/* .strategy_01-menu */
.strategy_01-menu {
  width: 180px;
  margin-right: 40px;
  margin-bottom: 20px;
  padding-bottom: 1px;
  text-align: center;
  color: #fff;
  background: #323232;
}

.strategy_01-menu .ttl {
  margin-bottom: 5px;
  padding: 2px 0 0;
  font-size: 16px;
  font-weight: bold;
}

.strategy_01-menu .ttl::before {
  content: "";
  display: block;
  width: 46px;
  height: 46px;
  margin: 10px auto 13px;
  background: url(../img/analysis/ico_strategy-menu.svg) no-repeat;
  background-size: cover;
}

.strategy_01-menu ul {
  padding: 0 5px;
  font-size: 14px;
  font-weight: bold;
  line-height: 1;
}

.strategy_01-menu li {
  position: relative;
  display: block;
  width: 170px;
  min-height: 44px;
  margin-bottom: 5px;
  padding: 13.5px 5px;
  color: #323232;
  background: #fff;
  cursor: pointer;
  transition: all .2s ease;
}

.strategy_01-menu li .txt {
  display: block;
  width: 100%;
  line-height: 1.25;
}

.strategy_01-menu li:hover {
  color: #fff;
  background: #eb6900;
}

.strategy_01-menu li.is-active {
  color: #fff;
  background: #eb6900;
}
.strategy_01-menu li.is-active a {
  color: #fff;
}
.strategy_01-menu li:hover,
.strategy_01-menu li:hover a {
  color: #fff;
}

/* .pipeline-menu */
.pipeline-menu {
  width: 180px;
  margin-right: 40px;
  padding-bottom: 1px;
  text-align: left;
  color: #fff;
  background: #323232;
}

.pipeline-menu .ttl {
  margin-bottom: 5px;
  padding: 1px 0 0;
  text-align: center;
  font-size: 16px;
  font-weight: bold;
}

.pipeline-menu .ttl .small {
  font-size: 12px;
}

.pipeline-menu .ttl::before {
  content: "";
  display: block;
  width: 46px;
  height: 46px;
  margin: 10px auto 13px;
  background: url(../img/analysis/ico_pipeline-menu.svg) no-repeat;
  background-size: cover;
}

.pipeline-menu ul {
  padding: 0 5px;
  font-size: 12px;
  font-weight: bold;
  line-height: 1;
}

.pipeline-menu li a {
  position: relative;
  display: block;
  width: 170px;
  min-height: 50px;
  margin-bottom: 5px;
  padding: 10px 5px;
  color: #323232;
  background: #fff;
  cursor: pointer;
  transition: all .2s ease;
}

.pipeline-menu li .txt {
  display: block;
  width: 100%;
  line-height: 1.25;
}

.pipeline-menu li:hover,
.pipeline-menu li a:hover {
  opacity: 1;
  color: #fff;
  background: #eb6900;
}

.pipeline-menu li.is-active {
  color: #fff;
  background: #eb6900;
}

/* -----------------------------------------
- div#fed_boj-page
----------------------------------------- */
#fed_boj-page header h1::before {
  background: url(../img/common/menu_analysis.svg) no-repeat;
  background-size: cover;
}

#fed_cnt,
#boj_cnt {
  margin-bottom: 61px;
}

.fed-table,
.boj-table {
  margin-bottom: 40px;
  border-top: 1px solid #323232;
  border-bottom: 1px solid #323232;
}

.fed-table table,
.boj-table table {
  table-layout: fixed;
}

.fed-table tr,
.boj-table tr {
  height: 55px;
  border-bottom: 1px solid #ebebeb;
}

.fed-table tr td:nth-of-type(1),
.boj-table tr td:nth-of-type(1) {
  width: 140px;
}

.fed-table .ttl,
.boj-table .ttl {
  font-weight: bold;
  line-height: 1.25;
  vertical-align: middle;
}

.fed-table a:hover,
.boj-table a:hover {
  opacity: 1;
}

/* -----------------------------------------
- div#overseas_economy-page
----------------------------------------- */
#overseas_economy-page header h1::before {
  background: url(../img/common/menu_analysis.svg) no-repeat;
  background-size: cover;
}

.overseas_economy-table {
  margin-bottom: 40px;
  border-top: 1px solid #323232;
  border-bottom: 1px solid #323232;
}

.overseas_economy-table table {
  table-layout: fixed;
}

.overseas_economy-table tr {
  height: 55px;
  border-bottom: 1px solid #ebebeb;
}

.overseas_economy-table tr td:nth-of-type(1) {
  width: 140px;
}

.overseas_economy-table .ttl {
  font-weight: bold;
  line-height: 1.25;
  vertical-align: middle;
}

.overseas_economy-table a:hover {
  opacity: 1;
}

/* pager */
.pager {
  display: block;
  margin: 0 auto 40px;
}

.pager ul.pagination {
  text-align: center;
  margin: 0;
  padding: 0;
}

.pager .pagination li {
  position: relative;
  display: inline;
  margin-right: 5px;
  padding: 0;
  display: inline-block;
  width: 44px;
  height: 44px;
  font-size: 14px;
  font-weight: bold;
  text-align: center;
  color: #323232;
}

.pager .pagination li:last-of-type {
  margin-right: 0;
}

.pager .pagination li.number {
  background: #f5f5f5;
}

.pager .pagination .pre.notlink img,
.pager .pagination .next.notlink img {
  display: none;
}

.pager .pagination .pre.notlink::before {
  content: "";
  display: block;
  width: 44px;
  height: 44px;
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%,-50%);
  background: url(../img/common/ico_pager_left_notlink.svg) no-repeat;
  background-position: center;
}

.pager .pagination .next.notlink::before {
  content: "";
  display: block;
  width: 44px;
  height: 44px;
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%,-50%);
  background: url(../img/common/ico_pager_right_notlink.svg) no-repeat;
  background-position: center;
}

.pager .pagination li a {
  display: block;
  width: 100%;
  height: 100%;
}

.pager .pagination li span {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%,-50%);
}

.pager .pagination li.number a:hover,
.pager .pagination li.active {
  opacity: 1;
  color: #fff;
  background: #eb6900;
}


/* -----------------------------------------
- div#calendar-page
----------------------------------------- */
#calendar-page header h1::before {
  background: url(../img/common/menu_analysis.svg) no-repeat;
  background-size: cover;
}

#calendar {
  padding-bottom: 70px;
}

#calendar h2.date {
  position: relative;
  display: block;
  width: 248px;
  text-align: center;
  padding-left: 0;
  margin: 0 auto 16px;
}

h2.date::before {
  display: none;
}

h2.date .calendar_prev {
  position: absolute;
  left: 0;
  top: -1px;
  display: inline-block;
  width: 24px;
  height: 24px;
  background: url(../img/analysis/ico_calendar_prev.svg) no-repeat;
  background-size: 100%;
  cursor: pointer;
}

h2.date .calendar_next {
  position: absolute;
  right: 0;
  top: -1px;
  display: inline-block;
  width: 24px;
  height: 24px;
  background: url(../img/analysis/ico_calendar_next.svg) no-repeat;
  background-size: 100%;
  cursor: pointer;
}

table.calendar-tbl {
  table-layout: fixed;
}

.calendar-tbl th {
  height: 22px;
  font-size: 12px;
  font-weight: normal;
  text-align: center;
  background: #f5f5f5;
  border: 1px solid #ebebeb;
}

.calendar-tbl td {
  position: relative;
  width: 125px;
  max-width: 125px;
  height: 125px;
  max-height: 125px;
  vertical-align: top;
  border: 1px solid #ebebeb;
}

.calendar-tbl th.sun,
.calendar-tbl th.sat {
  width: 40px;
}

.calendar-tbl td.sun .day {
  color: #e60012;
}

.calendar-tbl td.sat .day {
  color: #00a0e9;
}

.calendar-tbl td .day {
  margin-top: 5px;
}

.calendar-tbl td p {
  line-height: 1.25;
  font-size: 12px;
}

.calendar-tbl .date-box {
  padding: 0 4px;
  font-size: 12px;
  font-weight: normal;
  text-align: left;
}

.calendar-tbl span.item {
  display: flex;
  -webkit-flex-wrap: wrap;
  flex-wrap: wrap;
  align-items: flex-start;
  width: 100%;
}

img.frag {
  display: inline-block;
  max-width: 18px;
}

.calendar-tbl .txt {
  width: 84%;
  margin-bottom: 3px;
  padding-left: 2px;
  font-size: 12px;
}

.calendar-tbl .date-box .schedule {
  overflow: hidden;
}

/* .more-box */
.calendar-tbl .more-txt {
  position: absolute;
  bottom: 4px;
  left: 50%;
  transform: translate(-50%, 0);
  display: block;
  margin: 0 auto;
  text-align: center;
  cursor: pointer;
}

.calendar-tbl .more-txt:hover {
  color: #eb6900;
}
/* .calendar-modal */
.calendar-modal {
  display: none;
  width: 100%;
  height: 100vh;
  position: fixed;
  top: 0;
  left: 0;
  z-index: 99;
}

.calendar-bg {
  position: absolute;
  width: 100%;
  height: 100vh;
  background: rgba(0, 0, 0, 0.78);
}

.calendar-content {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  width: 820px;
  max-height: 100%;
  padding: 20px 20px;
  background: #fff;
}

.calendar-content .img_box {
  text-align: center;
}

.calendar-close-btn:hover::before {
  cursor: pointer;
}

.calendar-close-btn {
  content: "";
  position: absolute;
  top: -44px;
  right: 0;
  display: inline-block;
  width: 30px;
  height: 30px;
  background: url(../img/analysis/more-close.svg) no-repeat;
  background-size: contain;
  transition: .3s;
  cursor: pointer;
  z-index: 9;
}

.calendar-close-btn .txt {
  display: none;
}

/* .more-calendar-table */
.more-calendar-table {
  background: #fff;
}

.more-calendar-table tr {
  height: 45px;
}
.more-calendar-table tbody:nth-of-type(even) {
  background: #f5f5f5;
}

.more-calendar-table thead th {
  text-align: center;
  color: #fff;
  background: #323232;
}
.more-calendar-table thead th:nth-of-type(3) {
  width: 140px;
}
.more-calendar-table thead th:nth-of-type(4) {
  width: 140px;
}

.more-calendar-table tbody td {
  border-bottom: 1px solid #ebebeb;
}

.more-calendar-table tbody th {
  width: 140px;
  line-height: 1;
  text-align: left;
  font-weight: bold;
  padding: 1.25em 20px 0;
  border-bottom: 0;
  white-space: nowrap;
  vertical-align: top;
}

.more-calendar-table tbody td:nth-of-type(1) {
  width: 70px;
}
.more-calendar-table tbody td:nth-of-type(2) {
  width: 90px;
  text-align: left;
}
.more-calendar-table tbody td:nth-of-type(4),
.more-calendar-table tbody td:nth-of-type(5) {
  padding-right: 20px;
  text-align: right;
}

/* -----------------------------------------
- div#commentary-page
----------------------------------------- */
#commentary-page header h1::before {
  background: url(../img/common/menu_learning.svg) no-repeat;
  background-size: cover;
}

/* .commentary_01-menu */
.commentary_01-menu {
  width: 100%;
  margin-bottom: 40px;
  padding: 20px 15px;
  text-align: center;
  color: #fff;
  background: #f5f5f5;
}

.commentary_01-menu ul.tab-group_01 {
  display: flex;
  font-size: 14px;
  font-weight: bold;
}

.commentary_01-menu li.tab_01 {
  width: 180px;
  height: 34px;
  margin: 0 10px 20px 0;
  padding: 8px 5px;
  text-align: center;
  color: #323232;
  background: #fff;
  border: 1px solid #323232;
  cursor: pointer;
  transition: all .2s ease;
}

.commentary_01-menu li.tab_01:last-of-type {
  margin-right: 0;
}

.commentary_01-menu li.tab_01 .txt {
  display: block;
  width: 100%;
  line-height: 1.25;
}

.commentary_01-menu li.tab_01:hover {
  color: #fff;
  background: #eb6900;
  border: 1px solid #eb6900;
}

.commentary_01-menu li.tab_01.is-active {
  color: #fff;
  background: #eb6900;
  border: 1px solid #eb6900;
}

/* .commentary-search_cnt */
.commentary-search_cnt {
  display: flex;
  width: 100%;
  color: #323232;
}

.commentary-search_cnt .input {
  width: 336px;
  height: 34px;
}

.commentary-search_cnt [type="search"] {
  width: 100%;
  height: 34px;
  padding: 0 0 0 .25em;
  background: #fff;
  border-top: 1px solid #323232;
  border-left: 1px solid #323232;
  border-bottom: 1px solid #323232;
}

.commentary-search_cnt .input_box {
  display: flex;
  height: 34px;
  margin-right: 10px;
}

.commentary-search_cnt .search_btn {
  width: 34px;
  height: 34px;
  text-align: center;
  background: #323232;
}

.commentary-search_cnt .search_btn img {
  width: 17px;
  height: 17px;
  line-height: 17px;
}

/* div.commentary-date */
.commentary-date {
  position: relative;
  width: 370px;
  height: 34px;
  padding: 7.5px 10px;
  color: #323232;
  text-align: left;
  font-size: 14px;
  background: #fff;
}

.commentary-date input {
  width: 90%;
}

.commentary-date img {
  position: absolute;
  right: 4px;
  top: 50%;
  transform: translate(0, -50%);
  width: 26px;
  cursor: pointer;
}

#ui-datepicker-div a {
  cursor: pointer;
  opacity: 1;
  transition: none;
}

#ui-datepicker-div td a {
  padding: 4px 2px;
  transition: ease .2s;
}

/* .panel_01-commentary */
.layout-switch_cnt {
  position: relative;
  display: block;
  width: 100%;
  height: 20px;
}

.layout-switch {
  position: absolute;
  right: 0;
  width: 90px;
  text-align: right;
  font-size: 14px;
  font-weight: bold;
  cursor: pointer;
  transition: .2s;
}

.layout-switch:hover {
  opacity: .7;
}

.layout-switch .txt {
  display: inline-block;
  line-height: 20px;
  margin-right: 10px;
  vertical-align: middle;
}

.layout-switch .layout-btn {
  display: inline-block;
  width: 20px;
  height: 20px;
  margin-bottom: 2px;
  background: url(../img/learning/grid-layout.svg) no-repeat;
  vertical-align: middle;
  transition: .3s;
}

.layout-switch .layout-btn.list-layout {
  display: inline-block;
  width: 20px;
  height: 20px;
  margin-bottom: 2px;
  background: url(../img/learning/list-layout.svg) no-repeat;
  vertical-align: middle;
  transition: .3s;
}

/* .commentary-layout */
.commentary-layout ul {
  font-size: 14px;
}

.commentary-layout ul li {
  position: relative;
  height: 54px;
  border-bottom: 1px solid #ebebeb;
  animation: fadeDown .4s ease;
  -webkit-animation: fadeDown .4s ease;
}

.commentary-layout .date {
  display: inline-block;
  width: 100px;
  line-height: 54px;
}

.commentary-layout .title {
  position: absolute;
  top: 50%;
  transform: translate(0, -50%);
  line-height: 1.25;
  font-weight: bold;
}

.commentary-layout img {
  display: none;
}

.commentary-layout a:hover {
  color: #323232;
}

.commentary-layout a:hover .title {
  color: #eb6900;
  opacity: 1;
}

/* .layout-card */
.commentary-layout.layout-card ul {
  display: flex;
  width: 100%;
  flex-wrap: wrap;
  margin-top: 20px;
}

.commentary-layout.layout-card ul li {
  width: 180px;
  position: relative;
  min-height: 150px;
  height: 100%;
  margin-right: 20px;
  margin-bottom: 13px;
  padding-top: 8px;
  border-top: 2px solid #EB6900;
  border-bottom: 0;
  animation: fadeIn .8s ease;
  -webkit-animation: fadeIn .8s ease;
}

.commentary-layout.layout-card ul li:nth-of-type(4n) {
  margin-right: 0;
}

.commentary-layout.layout-card ul li a {
  display: block;
  height: 100%;
}

.commentary-layout.layout-card .date {
  display: none;
}

.commentary-layout.layout-card .title {
  position: relative;
  top: 0;
  transform: translate(0, 0);
  font-weight: normal;
  line-height: 1.25;
}

.commentary-layout.layout-card .img_box {
  position: relative;
  display: block;
  width: 180px;
  height: 120px;
  margin-bottom: 10px;
  overflow: hidden;
}

.commentary-layout.layout-card img {
  position: absolute;
/*
  top: 50%;
  left: 50%;
  transform: translate(-50%,-50%);
*/
  display: block;
  width: 100%;
}

.commentary-layout.layout-card a:hover {
  color: #eb6900;
}

.commentary-layout.layout-card a:hover .title {
  opacity: 1;
}

/* -----------------------------------------
- div#practice_lesson-page
----------------------------------------- */
#practice_lesson-page header h1::before {
  background: url(../img/common/menu_learning.svg) no-repeat;
  background-size: cover;
}

/* .practice_lesson_01-menu */
.practice_lesson_01-menu {
  width: 100%;
  margin-bottom: 40px;
  padding: 20px 15px 10px;
  text-align: center;
  color: #fff;
  background: #f5f5f5;
}

.practice_lesson_01-menu ul.tab-group_01 {
  display: flex;
  flex-wrap: wrap;
  font-size: 14px;
  font-weight: bold;
}

.practice_lesson_01-menu li.tab_01 {
  width: 180px;
  height: 34px;
  margin: 0 10px 10px 0;
  padding: 10px 5px;
  text-align: center;
  color: #323232;
  background: #fff;
  border: 1px solid #323232;
  cursor: pointer;
  transition: all .2s ease;
}

.practice_lesson_01-menu li.tab_01:nth-of-type(4n) {
  margin-right: 0;
}

.practice_lesson_01-menu li.tab_01 .txt {
  display: block;
  width: 100%;
  line-height: 1.25;
}

.practice_lesson_01-menu li.tab_01:hover {
  color: #fff;
  background: #eb6900;
  border: 1px solid #eb6900;
}

.practice_lesson_01-menu li.tab_01.is-active {
  color: #fff;
  background: #eb6900;
  border: 1px solid #eb6900;
}

/* #practice_lesson_01 */
#practice_lesson_01 .panel_01 ul {
  font-size: 14px;
}

#practice_lesson_01 .panel_01 li {
  position: relative;
  height: 55px;
  line-height: 1.25;
  border-bottom: 1px solid #ebebeb;
  animation: fadeIn .3s ease;
  -webkit-animation: fadeIn .3s ease;
}

#practice_lesson_01 .panel_01 .date {
  display: inline-block;
  line-height: 55px;
  width: 100px;
}

#practice_lesson_01 .panel_01 .title {
  position: absolute;
  top: 50%;
  transform: translate(0, -50%);
  font-weight: bold;
}

#practice_lesson_01 .panel_01 a:hover {
  opacity: 1;
}

/* -----------------------------------------
- div#onepoint_lesson-page
----------------------------------------- */
#onepoint_lesson-page header h1::before {
  background: url(../img/common/menu_learning.svg) no-repeat;
  background-size: cover;
}

/* #sns_box */
#sns_box {
  display: flex;
  margin: 20px 0 14px;
}

#sns_box .twitter-btn {
  display: inline-block;
  width: 70px;
  height: 20px;
  margin-right: 10px;
  padding: 2px 0 7px 9px;
  background: #1da1f2;
  color: #fff;
  border-radius: 2px;
  vertical-align: middle;
}

#sns_box .twitter-btn .txt {
  display: inline-block;
  font-size: 10px;
  font-weight: bold;
}

#sns_box .twitter-btn .txt::before {
  content: "";
  display: inline-block;
  width: 12px;
  height: 10px;
  margin: 0 1.5px 0 0;
  background: url(../img/common/ico_tweet.svg) no-repeat;
  background-size: 100%;
  vertical-align: middle;
}

#sns_box .fb-btn {
  height: 20px;
}

#sns_box .fb-btn iframe {
  width: 70px;
  background: #1877f2;
  border-radius: 2px;
}

/* #main article.lesson */

#main article.lesson {
  font-family: "HiraKakuProN-W3", "Hiragino Kaku Gothic ProN", "ヒラギノ角ゴ ProN W3";
}

#main article.lesson .publish-date {
  font-size: 1.3rem;
  font-weight: normal;
  display: block;
  text-align: right;
  color: #8E8E8B;
  padding-top: 6px;
}

#main article.lesson p {
  font-size: 17px;
}

#main article.lesson .news_caption {
    margin: 0 0 4px 14px;
    padding: 10px;
    border: 1px solid #ddd;
    float: right;
    width: 250px;
    background-color: #eee;
    font-size: 80%;
    color: #1e1e17;
    line-height: 1.5;
}

#main article.lesson .news_caption img {
    width: auto;
    max-width: 100%;
    margin-bottom: 4px;
}

.clearfix:after {
    content: "";
    clear: both;
    display: block;
}

/* -----------------------------------------
- div#terminology-page
----------------------------------------- */
#terminology-page header h1::before {
  background: url(../img/common/menu_learning.svg) no-repeat;
  background-size: cover;
}

#terminology h2 {
  margin-bottom: 22px;
  padding-bottom: 12px;
  border-bottom: 1px solid #323232;
}

.terminology-lst ul {
  display: flex;
  flex-wrap: wrap;
}

.terminology-lst li {
  width: 240px;
  margin-right: 30px;
  margin-bottom: 20px;
  font-size: 14px;
}

.terminology-lst li:nth-of-type(3n) {
  margin-right: 0;
}

.terminology-lst li a:hover {
  opacity: 1;
}

/* -----------------------------------------
- div#terminology_child-page
----------------------------------------- */
#terminology_child-page header h1::before {
  background: url(../img/common/menu_learning.svg) no-repeat;
  background-size: cover;
}

#terminology_child h2 {
  padding-bottom: 12px;
  border-bottom: 1px solid #323232;
}

article.terminology p {
  font-size: 14px;
  line-height: 26px;
}

article.terminology .txt_link {
  font-weight: bold;
  color: #eb6900;
}

/* -----------------------------------------
- div#literacy_map-page
----------------------------------------- */
#literacy_map-page header h1::before {
  background: url(../img/common/menu_learning.svg) no-repeat;
  background-size: cover;
}

#literacy_map-page #main img {
  margin: 6px;
}

#literacy_map h2 {
  margin-bottom: 0;
  padding-bottom: 12px;
  border-bottom: 1px solid #323232;
}

/* #literacy_map */
#literacy_map {
  padding-bottom: 120px;
  counter-reset: part_number toc_number;
}

#literacy_map h3.part_ttl::before {
  counter-increment: part_number;
}

#literacy_map h3 {
  position: relative;
  font-size: 18px;
  font-weight: bold;
  padding: 20px 0px;
  border-bottom: 1px solid #323232;
  cursor: pointer;
}

/* .part_box */
.part_box {
  border-bottom: 1px solid #323232;
}

.part_box .toc_number {
  margin-right: .25em;
}
.part_box .ttl::before {
  counter-increment: toc_number;
  content: counter(toc_number) ".";
}

.part_box li {
  font-size: 14px;
  line-height: 26px;
}

.part_box a:hover {
  opacity: 1;
}

/* .youtube_box */
.youtube_box {
  position: relative;
  width: 100%;
  height: 0;
  padding-bottom: 56.25%;
}
.youtube_box iframe{
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}

/* .toc_cnt */
.toc_cnt {
  display: flex;
  flex-wrap: wrap;
  margin: 20px 0;
}

.part_box .ttl {
  font-size: 16px;
  font-weight: bold;
  margin-bottom: 15px;
}

.toc_cnt .toc_box {
  width: 370px;
  margin-right: 40px;
  padding-bottom: 14px;
}

.part_box ol {
  counter-reset: number;
}

.part_box ol li {
  padding-left: 1.25em;
  text-indent: -1.25em;
}

.part_box ol li.toc_list_number::before {
  counter-increment: number;
  content: counter(number);
  margin-right: .75em;
  font-size: 16px;
}

/*
.part_box ol li.toc_list {
  margin-left: 1.25em;
}

.toc_cnt .toc_box:nth-of-type(2n) {
  margin-right: 0;
}

.toc_cnt .toc_box a {
  text-decoration: underline;
}
*/

.part_box ol {
  margin-left: 20px;
  padding: 10px 10px 10px 0;
  font-size: 16px;
}

.part_box ol a {
  text-decoration: underline;
}

/* -----------------------------------------
- div#past_event-page
----------------------------------------- */
#past_event-page header h1::before {
  background: url(../img/common/menu_learning.svg) no-repeat;
  background-size: cover;
}

/* -----------------------------------------
- div#strategy_commentary-page
----------------------------------------- */
#strategy_commentary-page header h1::before {
  background: url(../img/common/menu_learning.svg) no-repeat;
  background-size: cover;
}

#strategy_commentary h2 {
  margin-top: 4px;
  margin-bottom: 0;
  padding-left: 0;
  padding-bottom: 12px;
  font-size: 18px;
}

#strategy_commentary h2::before {
  display: none;
}

/* #strategy_commentary */
#strategy_commentary {
  display: flex;
}

/* .commentary_cnt */
.commentary_cnt section {
  margin-bottom: 24px;
  border-bottom: 1px solid #ebebeb;
}

.commentary_cnt p {
  font-size: 14px;
  line-height: 26px;
  margin-bottom: 12px;
}

.commentary_cnt img {
  max-width: 100%;
  margin-bottom: 20px;
}

/* .sc_strategy-menu */
.sc_strategy-menu {
  width: 180px;
  margin-right: 40px;
  margin-bottom: 20px;
  padding-bottom: 1px;
  text-align: center;
  color: #fff;
  background: #323232;
}

.sc_strategy-menu .ttl {
  margin-bottom: 5px;
  padding: 2px 0 0;
  font-size: 16px;
  font-weight: bold;
}

.sc_strategy-menu .ttl::before {
  content: "";
  display: block;
  width: 46px;
  height: 46px;
  margin: 10px auto 13px;
  background: url(../img/learning/ico_strategy-menu.svg) no-repeat;
  background-size: cover;
}

.sc_strategy-menu ul {
  padding: 0 5px;
  font-size: 14px;
  font-weight: bold;
  line-height: 1;
}

.sc_strategy-menu li a {
  position: relative;
  display: block;
  width: 170px;
  min-height: 44px;
  margin-bottom: 5px;
  color: #323232;
  background: #fff;
  transition: all .2s ease;
}

.sc_strategy-menu li .txt {
  position: absolute;
  top: 50%;
  transform: translate(0, -50%);
  display: block;
  width: 100%;
  line-height: 1.25;
}

.sc_strategy-menu li:hover,
.sc_strategy-menu li a:hover {
  opacity: 1;
  color: #fff;
  background: #eb6900;
}

.sc_strategy-menu li.is-active {
  color: #fff;
  background: #eb6900;
}

/* .sc_pipeline-menu */
.sc_pipeline-menu {
  width: 180px;
  margin-right: 40px;
  padding-bottom: 1px;
  text-align: left;
  color: #fff;
  background: #323232;
}

.sc_pipeline-menu .ttl {
  margin-bottom: 5px;
  padding: 1px 0 0;
  text-align: center;
  font-size: 16px;
  font-weight: bold;
}

.sc_pipeline-menu .ttl .small {
  font-size: 12px;
}

.sc_pipeline-menu .ttl::before {
  content: "";
  display: block;
  width: 46px;
  height: 46px;
  margin: 10px auto 13px;
  background: url(../img/learning/ico_pipeline-menu.svg) no-repeat;
  background-size: cover;
}

.sc_pipeline-menu ul {
  padding: 0 5px;
  font-size: 12px;
  font-weight: bold;
  line-height: 1;
}

.sc_pipeline-menu li a {
  position: relative;
  display: block;
  width: 170px;
  height: 100%;
  min-height: 32px;
  margin-bottom: 5px;
  padding: 9px 2%;
  color: #323232;
  background: #fff;
  transition: all .2s ease;
}

.sc_pipeline-menu li .txt {
  display: block;
  width: 96%;
  height: 100%;
  line-height: 1.25;
}

.sc_pipeline-menu li:hover,
.sc_pipeline-menu li a:hover {
  opacity: 1;
  color: #fff;
  background: #eb6900;
}

.sc_pipeline-menu li.is-active {
  color: #fff;
  background: #eb6900;
}

/* -----------------------------------------
- div#workflow-page
----------------------------------------- */
#workflow-page header h1::before {
  background: url(../img/common/menu_learning.svg) no-repeat;
  background-size: cover;
}

#workflow h2 {
  margin-top: -2px;
  margin-bottom: 20px;
  padding-bottom: 17px;
  border-bottom: 1px solid #323232;
}

#workflow h3 {
  margin-bottom: 10px;
  font-size: 18px;
  font-weight: bold;
  text-align: center;
}

#workflow h4 {
  margin-bottom: 10px;
  font-size: 18px;
  font-weight: bold;
  text-align: center;
}

/* #workflow_cnt */
#workflow_cnt {
  margin: 0px auto 65px;
}

#workflow_cnt .workflow-info a,
#workflow_cnt .workflow_01 a,
#workflow_cnt .workflow_02 a,
#workflow_cnt .workflow_03 a {
  display: block;
  width: 100%;
  height: 100%;
}

.workflow-info {
  width: 100%;
  margin: 0 auto 15px;
  padding: 15px 10px 10px;
  background: #f5f5f5;
}

.workflow-info p {
  font-size: 14px;
  line-height: 20px;
  text-align: center;
}

.workflow_box {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%,-50%);
  display: block;
  width: 100%;
}

/* #workflow-cnt */
#workflow-cnt_01 a,
#workflow-cnt_02 a,
#workflow-cnt_03 a {
  color: #fff;
}
#workflow-cnt_01 a:hover,
#workflow-cnt_02 a:hover,
#workflow-cnt_03 a:hover {
  color: #fff;
}

.workflow-info a:hover {
  color: #323232;
  opacity: .7;
}

/* #workflow-cnt_01 */
#workflow-cnt_01 {
  display: flex;
  flex-wrap: wrap;
  margin: 0 auto 15px;
  padding: 15px 10px;
  background: #fdf1e5;
}

.workflow_01 {
  position: relative;
  width: 360px;
  height: 72px;
  margin: 0 auto 30px;
  color: #fff;
  text-align: center;
  background: #eb6900;
  border-radius: 10px;
}

.workflow_01::before,
.workflow_01::after {
  content: "";
  position: absolute;
  display: inline-block;
  width: 40px;
  background-size: contain;
}

.workflow_01-a::before {
  height: 30px;
  bottom: -30px;
  right: 65px;
  background: url(../img/learning/workflow-orange_arrow_01.svg) no-repeat;
}

.workflow_01-b::before {
  height: 30px;
  bottom: -30px;
  left: 65px;
  background: url(../img/learning/workflow-orange_arrow_01.svg) no-repeat;
}

.workflow_01-c::before {
  height: 50px;
  bottom: -45px;
  left: 65px;
  background: url(../img/learning/workflow-orange_arrow_02.svg) no-repeat;
}

.workflow_01-c::after {
  height: 50px;
  bottom: -45px;
  right: 65px;
  background: url(../img/learning/workflow-orange_arrow_02.svg) no-repeat;
}

.workflow_01-c {
  margin-bottom: 0;
}

/* #workflow-cnt_02 */
#workflow-cnt_02 {
  display: flex;
  flex-wrap: wrap;
  margin: 0 auto;
  padding: 15px 10px 0;
  background: #fde5e6;
}

.workflow_02 {
  position: relative;
  width: 360px;
  height: 72px;
  margin: 0 auto 15px;
  color: #fff;
  text-align: center;
  background: #e60012;
  border-radius: 5px;
}

.workflow_02::before,
.workflow_02::after {
  content: "";
  position: absolute;
  display: inline-block;
  width: 40px;
  background-size: contain;
}

.workflow_02-a::before {
  height: 30px;
  bottom: -30px;
  right: 65px;
  background: url(../img/learning/workflow-red_arrow_01.svg) no-repeat;
}

.workflow_02-b::before {
  height: 30px;
  bottom: -30px;
  left: 65px;
  background: url(../img/learning/workflow-red_arrow_01.svg) no-repeat;
}

/* #workflow-cnt_03 */
#workflow-cnt_03 {
  display: flex;
  flex-wrap: wrap;
  margin: 0 auto 15px;
  padding: 15px 15px 0;
}

.workflow_03 {
  position: relative;
  width: 360px;
  height: 72px;
  margin: 0 auto;
  color: #fff;
  text-align: center;
  background: #707070;
  border-radius: 5px;
}

/* .workflow-modal */
.workflow-open {
  cursor: pointer;
  transition: .3s;
}

.workflow-open:hover {
  opacity: .7;
}

.workflow-modal {
  display: none;
  width: 100%;
  height: 100vh;
  position: fixed;
  top: 0;
  left: 0;
  z-index: 99;
}

.workflow-bg {
  position: absolute;
  width: 100%;
  height: 100vh;
  background: rgba(0, 0, 0, 0.78);
}

.workflow-content {
  position: absolute;
  top: 0;
  left: 50%;
  transform: translate(-50%, 0);
  width: 846px;
  height: 80%;
  margin: 100px 0;
  background: #fff;
}

.workflow-content .inner {
  width: 100%;
  height: 100%;
  padding: 20px 30px 0;
  overflow-y: auto;
}

#workflow .workflow-content h3 {
  margin-bottom: 15px;
  text-align: left;
}
.workflow-content p {
  font-size: 14px;
  line-height: 26px;
  margin-bottom: 13px;
}

.workflow-content .img_box {
  margin-bottom: 14px;
  text-align: center;
}

.workflow-content section {
  margin-bottom: 36px;
}
.workflow-content section:last-of-type {
  margin-bottom: 53px;
}

/* .workflow-close_btn */
.workflow-close_btn {
  position: absolute;
  top: -45px;
  right: 4px;
  display: inline-block;
  width: 32px;
  height: 32px;
  background: url(../img/learning/ico_modal_close.svg) no-repeat;
  background-size: contain;
  transition: .3s;
  z-index: 9999;
}
.workflow-close_btn:hover {
  cursor: pointer;
}
.workflow-close_btn .txt {
  display: none;
}

/* #workflow-terminology_cnt */
.terms-index ul {
  display: flex;
  flex-wrap: wrap;
}

.terms-index li {
  margin: 0 20px 20px 0;
  font-size: 14px;
  font-weight: bold;
}

.terms-index li:nth-of-type(5n) {
  margin-right: 0;
}

.terms-index li a {
  position: relative;
  display: block;
  width: 140px;
  height: 44px;
  padding: 0 10px;
  line-height: 44px;
  color: #fff;
  background: #323232;
}

.terms-index li a::after {
  content: "";
  position: absolute;
  right: 10px;
  top: 50%;
  transform: translate(0, -50%);
  display: inline-block;
  width: 6px;
  height: 12px;
  background: url(../img/learning/ico_learning_arrow_right.svg) no-repeat;
  background-size: contain;
}

.terms-index li a:hover {
  opacity: 1;
  background: #fe6900;
}

/* #terms-search */
#terms-search {
  margin: 0 auto;
  padding: 20px 15px;
  background: #f5f5f5;
}

#terms-search h3 {
  margin-bottom: 15px;
}

#terms-search .input {
  width: 100%;
  height: 34px;
}

#terms-search [type="search"] {
  width: 100%;
  height: 34px;
  padding: 0 0 0 .25em;
  background: #fff;
  border-top: 1px solid #323232;
  border-left: 1px solid #323232;
  border-bottom: 1px solid #323232;
}

#terms-search .input_box {
  display: flex;
  width: 370px;
  height: 34px;
  margin: 0 auto;
}

#terms-search .search_btn {
  width: 34px;
  height: 34px;
  text-align: center;
  background: #323232;
}

#terms-search .search_btn img {
  width: 17px;
  height: 17px;
  line-height: 17px;
}

/* -----------------------------------------
- div#login-page
----------------------------------------- */
#login-page header h1::before {
  background: url(../img/common/menu_login.svg) no-repeat;
  background-size: cover;
}

#login-page #sidebar {
  display: none;
}

#login-page #main {
  display: block;
  width: 100%;
  padding: 0;
  margin-bottom: 120px;
}

/* #login */
#login {
  display: flex;
}

/* .login_box */
.login_box {
  width: 530px;
  background: #f5f5f5;
  margin-right: 44px;
  padding: 40px;
}

.login_box .input_box {
  margin-bottom: 20px;
  font-size: 16px;
  font-weight: bold;
}

.login_box .input_box .txt {
  display: block;
  margin-bottom: 10px;
}

.login_box .input_box input {
  width: 450px;
  height: 36px;
  padding: .25em .5em;
  background-color: #fff;
}

/* .login-auto */
.login_box .login-auto {
  padding-left: 1px;
  margin-bottom: 38px;
}

.login-auto input {
  display: none;
}
.login-auto input + span:hover {
  cursor: pointer;
  color: #eb6900;
}
.login-auto input + span {
  position: relative;
  padding-left: 20px;
}
.login-auto input + span::before {
  content: "";
  display: block;
  position: absolute;
  bottom: 2px;
  left: 0;
  width: 14px;
  height: 14px;
  border: 1px solid #323232;
  border-radius: 2px;
}
.login-auto input[type="checkbox"]:checked + span::after {
  content: "";
  display: block;
  position: absolute;
  top: 4px;
  left: 5px;
  width: 4px;
  height: 8px;
  transform: rotate(45deg);
  border-bottom: 1px solid #323232;
  border-right: 1px solid #323232;
}

/* .input.btn */
.input.btn {
  margin-bottom: 22px;
}

/* .login-forgot */
.login_box .login-forgot {
  width: 100%;
  padding-left: 65px;
  text-align: left;
  font-size: 14px;
  font-weight: normal;
}
.login_box .login-forgot a {
  color: #e60012;
}

/* .login_box-register */
.login_box-register {
  width: 530px;
  background: #f5f5f5;
  padding: 40px;
  text-align: center;
}
.login_box-register h2 {
  margin: 0 0 24px;
  padding: 0;
}
.login_box-register h2::before {
  display: none;
}
.login_box-register p {
  font-size: 14px;
  line-height: 26px;
  margin-bottom: 22px;
}

/* -----------------------------------------
- div#register-page
----------------------------------------- */
#register-page header h1::before {
  background: url(../img/common/menu_login.svg) no-repeat;
  background-size: cover;
}

/* .register_box */
.register_box {
  width: 530px;
  margin: 0 auto;
  padding: 40px 40px 20px;
  background: #f5f5f5;
}
.register_box dt {
  font-size: 16px;
  font-weight: bold;
  margin-bottom: 10px;
}

.register_box dd {
  margin-bottom: 20px;
  font-size: 16px;
}

.register_box input[type="text"],
.register_box input[type="password"],
.register_box select {
  height: 36px;
  background: #fff;
  padding: .25em .75em 0;
}

.register_box .required {
  color: #e60012;
}

/* .data */
.data input {
  width: 450px;
}

/* .data-half */
.data-half ul {
  display: flex;
}
.data-half li {
  font-size: 16px;
}
.data-half li input {
  width: 220px;
}
.data-half li:first-of-type {
  margin-right: 10px;
}

/* .data-select */
.data-select dd {
  position: relative;
  width: 100%;
}
.data-select dd::after {
  display: inline-block;
  content: "";
  position: absolute;
  top: 0;
  right: 0;
  width: 36px;
  height: 36px;
  background: url(../img/common/ico_select_down_02.svg) no-repeat;
  background-size: contain;
  background-position: center;
  pointer-events: none;
}
.data-select select {
  width: 100%;
  padding: .25em .75em;
  border: 0;
  color: #323232;
}

/* .data-radio */
.data-radio {
  margin-bottom: 28px;
}
.data-radio dt {
  margin-bottom: 20px;
}
.data-radio label {
  display: inline-block;
  position: relative;
  margin-left: 35px;
  font-size: 16px;
  cursor: pointer;
}
.data-radio label::before {
  position: absolute;
  content: "";
  top: 50%;
  left: -25px;
  width: 20px;
  height: 20px;
  margin-top: -12px;
  background: #fff;
  border-radius: 50%;
}
.data-radio input[type="radio"]:checked + label:after {
  position: absolute;
  content: "";
  top: 50%;
  left: -19px;
  width: 8px;
  height: 8px;
  margin-top: -6px;
  border-radius: 50%;
  background: #eb6900;
}
.data-radio label:first-of-type {
  margin-right: 5px;
}

/* -----------------------------------------
- div#register_cfm-page
----------------------------------------- */
#register_cfm-page header h1::before {
  background: url(../img/common/menu_login.svg) no-repeat;
  background-size: cover;
}

/* .register_box.cfm */
.register_box.cfm {
  width: 530px;
  margin: 0 auto;
  padding: 40px 40px 20px;
  background: #f5f5f5;
}

.register_box.cfm dt {
  font-size: 16px;
  font-weight: bold;
  margin-bottom: 20px;
}
.register_box.cfm dd {
  margin-bottom: 30px;
  margin-left: 10px;
  font-size: 16px;
}

.register_box.cfm .data-name li:first-of-type {
  margin-right: 5px;
}

.register_box.cfm .more.btn {
  margin-bottom: 20px;
}

/* -----------------------------------------
- div#register_done-page
----------------------------------------- */
#register_done-page header h1::before {
  background: url(../img/common/menu_login.svg) no-repeat;
  background-size: cover;
}
.no-sidebar #main {
  display: block;
  width: 100%;
  padding: 0;
  margin-bottom: 120px;
}
.message {
  text-align: center;
  line-height: 26px;
  margin-bottom: 26px;
  font-size: 16px;
}

/* .register_done_box */
.register_done_box {
  text-align: center;
}
.register_done_box h2 {
  margin: 0 0 40px;
  padding: 0;
}
.register_done_box h2::before {
  display: none;
}
.register_done_box p {
  line-height: 26px;
  margin-bottom: 53px;
  font-size: 16px;
}

.register_done_box .more.btn {
  margin-bottom: 20px;
}

/* -----------------------------------------
- div#mypage-page
----------------------------------------- */
#mypage-page header h1::before {
  background: url(../img/common/menu_login.svg) no-repeat;
  background-size: cover;
}
#mypage-page #sidebar {
  display: none;
}
#mypage-page #main {
  display: block;
  width: 100%;
  padding: 0;
  margin-bottom: 120px;
}

/* .mypage_box */
.mypage_box {
  margin-bottom: 31px;
}
.mypage_box h2 {
  width: 70%;
  margin: 0 0 36px;
  padding: 0;
}
.mypage_box h2::before {
  display: none;
}
.mypage_box p {
  clear: both;
  font-size: 16px;
  line-height: 28px;
}

/* .logout */
.logout {
  float: right;
}
.logout_btn {
  position: relative;
  width: 230px;
  height: 44px;
  line-height: 44px;
  color: #fff;
  text-align: center;
  background-color: #323232;
  background-image: url(../img/common/ico_logout.svg);
  background-size: 27px 27px;
  background-position: left 10px center;
  background-repeat: no-repeat;
  cursor: pointer;
  transition: background-color .2s;
}
.logout_btn input {
  width: 100%;
  height: 100%;
  font-size: 14px;
  font-weight: bold;
}
.logout_btn:hover {
  background-color: #eb6900;
  background-image: url(../img/common/ico_logout_white.svg);
}

/* .mypage_box_02 */
.mypage_box_02 {
  display: flex;
}

/* .mypage_box_02 .account_box */
.mypage_box_02 .account_box {
  width: 530px;
  margin-right: 40px;
  border-top: 1px solid #323232;
}

/* .account_box dl */
.account_box dl {
  padding: 20px 0;
  font-size: 16px;
  border-bottom: 1px solid #ebebeb;
}
.account_box dl::after {
  content: "";
  clear: both;
  display: block;
}
.account_box dl:last-of-type {
  border-bottom: 1px solid #323232;
}

.account_box dt {
  margin-bottom: 20px;
  font-weight: bold;
}

.account_box dd:first-of-type {
  width: 80%;
  float: left;
}

.account_box .data-ps {
  margin-bottom: 0;
}

.account_box .change {
  float: right;
}
.account_box .change a,
.account_box .change .changeBtn {
  font-size: 16px;
  font-weight: bold;
  color: #eb6900;
}

/* .line_box */
.line_box {
  width: 530px;
  padding: 30px 0 20px;
  background: #f5f5f5;
}
.line_box::after {
  clear: both;
  display: block;
  content: "";
}
.line_box p {
  line-height: 26px;
  font-size: 14px;
  text-align: center;
}

/* .line_btn */
.line_btn {
  position: relative;
  width: 370px;
  height: 60px;
  margin: 0 auto 23px;
  line-height: 60px;
  text-align: center;
  background-color: #00b900;
  background-image: url(../img/common/ico_line.svg);
  background-size: 44px 42px;
  background-repeat: no-repeat;
  background-position: left 18px center;
  border-radius: 5px;
  transition: .2s;
}
.line_btn input {
  width: 100%;
  height: 100%;
  font-size: 20px;
  font-weight: bold;
  color: #fff;
}
.line_btn:hover {
  opacity: .7;
}

.line_setting_btn {
  text-align: center;
  margin-bottom: 20px;
}

.line_setting_btn a {
  display: inline-block;
  width: 60%;
  padding: 20px 15px;
  font-size: 14px;
  font-weight: bold;
  text-align: center;
  color: #ffffff;
  background: #323232;
  transition: ease .2s all;
}

.line_setting_btn a:hover {
  background: #eb6900;
  color: #ffffff;
  opacity: initial;
}


/* -----------------------------------------
- div#terms-page
----------------------------------------- */
#terms-page header h1::before {
  display: none;
}
#terms-page #sidebar {
  display: none;
}
#terms-page #main {
  display: block;
  width: 100%;
  padding: 0;
  margin-bottom: 120px;
}

#access_data-page header h1::before {
  display: none;
}
#access_data-page #sidebar {
  display: none;
}
#access_data-page #main {
  display: block;
  width: 100%;
  padding: 0;
  margin-bottom: 120px;
}

#terms h2 {
  margin: 0 0 32px;
  padding: 0;
  font-size: 22px;
  line-height: 26px;
  text-align: center;
}
#terms h2::before {
  display: none;
}

#terms h3 ,
#terms h4 {
  margin-bottom: 14px;
  font-size: 13px;
}
#terms h3 span {
  margin-right: 1em;
}

/* .terms_box */
#terms p {
  line-height: 28px;
  font-size: 16px;
}
#terms .terms_box_01 {
  margin-bottom: 53px;
}
#terms .terms_box_02 {
  margin-bottom: 32px;
}
#terms .terms_box_02 p {
  line-height: 28px;
  margin-left: 20px;
  font-size: 14px;
}
#terms .terms_box_02 p + p {
  margin-top: .75em;
}
#terms .terms_box_02_inner {
  margin-top: 32px;
}
#terms .terms_box_03 p {
  margin-left: 20px;
  font-size: 14px;
  line-height: 28px;
  text-align: right;
}
#terms ul {
  counter-reset: number 0;
}
#terms li ,
#terms .terms_box_list-disc li {
  margin-bottom: 10px;
  margin-left: 21px;
  font-size: 14px;
  line-height: 26px;
  text-indent: -2em;
  padding-left: 2em;
}
#terms ul li::before {
  counter-increment: number 1;
  content: counter(number) ".";
  margin-right: 1.25em;
}
#terms ul.terms_box_list-disc {
  counter-reset: none;
}
#terms .terms_box_list-disc li {
  text-indent: -1.5em;
  padding-left: 1.5em;
}
#terms ul.terms_box_list-disc li::before {
  content: "・";
  margin-right: .5em;
}
#terms p + ul {
  margin-top: .75rem;
}

/* -----------------------------------------
- div#copyright-page
----------------------------------------- */
#copyright-page header h1::before {
  display: none;
}
#copyright-page #sidebar {
  display: none;
}
#copyright-page #main {
  display: block;
  width: 100%;
  padding: 0;
  margin-bottom: 120px;
}

#copyright {
  margin-bottom: 54px;
}
#copyright h2 {
  margin: 0 0 31px;
  padding: 0;
  font-size: 22px;
  line-height: 26px;
  text-align: center;
}
#copyright h2::before {
  display: none;
}

#immunity h2 {
  margin: 0 0 31px;
  padding: 0;
  font-size: 22px;
  line-height: 26px;
  text-align: center;
}
#immunity h2::before {
  display: none;
}

/* .copyright_box */
.copyright_box p {
  margin-bottom: 28px;
  font-size: 14px;
  line-height: 26px;
}
.copyright_box a {
  font-weight: bold;
  color: #EB6900;
}


/* -----------------------------------------
- div#company-page
----------------------------------------- */
#company-page header h1::before {
  display: none;
}
#company-page #sidebar {
  display: none;
}
#company-page #main {
  display: block;
  width: 100%;
  padding: 0;
  margin-bottom: 120px;
}

#company {
  display: flex;
}
#company h2 {
  margin: 0 0 18px;
  padding: 0;
  font-size: 22px;
  line-height: 26px;
}
#company h2::before {
  display: none;
}

/* .company_box */
.company_box {
  width: 530px;
  /*height: 154px;*/
  padding: 30px;
  background: #F5F5F5;
}
.company_box:first-of-type {
  margin-right: 40px;
}
.company_box p {
  margin-top: 20px;
  margin-bottom: 20px;
  font-size: 16px;
}
.company_box p span {
  margin-right: 1em;
}
.company_box a {
  font-size: 16px;
  font-weight: bold;
  color: #EB6900;
}

/* -----------------------------------------
- div#notfound-page
----------------------------------------- */
#notfound-page header h1::before {
  display: none;
}
#notfound-page #sidebar {
  display: none;
}
#notfound-page #main {
  display: block;
  width: 100%;
  padding: 0;
  margin-bottom: 120px;
}

#notfound h2 {
  margin: 0 0 34px;
  padding: 0;
  font-size: 22px;
  text-align: center;
}
#notfound h2::before {
  display: none;
}

#notfound p {
  line-height: 28px;
  margin: 0 0 52px;
  font-size: 16px;
  text-align: center;
}

.error_box {
  border: 2px solid #e60012;
  width: 60%;
  margin: 0 auto 20px auto;
}

.error_box .error-title {
  background: #e60012;
  color: #ffffff;
  height: 44px;
  font-size: 14px;
  display: table;
  width: 100%;
  padding-left: 1em;
}
.error_box .error-title h5 {
  display: table-cell;
  vertical-align: middle;
}

.error_box .error-body {
  padding: 6px;
}

.error_box .error-body ul {
  font-size: 14px;
  line-height: 1.6em;
  list-style: initial;
  margin-left: 2em;
}

/* -----------------------------------------
- aside#sidebar
----------------------------------------- */
#sidebar {
  background: #fff;
}

/* #sidebar-portfolio */
.link .portfolio.btn {
  display: none;
  width: 280px;
  height: 62px;
  margin-bottom: 20px;
  font-size: 18px;
  font-weight: bold;
}

.link .portfolio.btn::after {
  right: 15px;
}

.link .portfolio.btn:hover::after {
  right: 10px;
}

.link .portfolio.btn::before {
  position: relative;
  content: "";
  display: inline-block;
  width: 42px;
  height: 42px;
  margin: 10px 15px 0 15px;
  background: url(../img/common/menu_portfolio_side.svg) no-repeat;
  background-size: 42px;
  transition: all .5s ease;
  z-index: 1;
}

.link .portfolio.btn:hover::before {
  width: 42px;
  height: 42px;
  margin: 10px 15px 0 15px;
  background: url(../img/common/menu_portfolio_side_white.svg) no-repeat;
  background-size: 42px;
  transition: all .5s ease;
  z-index: 10;
}

.link .portfolio.btn a {
  display: inline-block;
}

.link .portfolio.btn .txt {
  display: inline-block;
  line-height: 1.4;
}

/*--  display --*/
#market-page .link .portfolio.btn {
  display: block;
}

/* #sidebar-advertising_s */
#sidebar-advertising_s {
  width: 100%;
  margin-bottom: 30px;
}

#sidebar-advertising_s a {
  display: block;
}

/* twitter */
.twitterTimeline {
  margin-top: 30px;
  border: 1px solid #eee;
  -webkit-border-radius: 5px;
  -moz-border-radius: 5px;
  border-radius: 5px;
}

#sidebar-twitter {
  margin-bottom: 30px;
}
.twitterLink {
  margin: 30px auto 0;
  border: 2px solid #55acee;
  width: 100%;
  -webkit-border-radius: 5px;
  -moz-border-radius: 5px;
  border-radius: 5px;
}

.twitterLink dt,
.twitterLink dd {
  vertical-align: middle;
}

.twitterLink dt {
  padding: 20px 24px;
  background-color: #55acee;
  text-align: center;
}

.twitterLink dt a {
  padding: 6px 10px;
  font-size: 16px;
  -webkit-border-radius: 3px;
  -moz-border-radius: 3px;
  border-radius: 3px;
  background-color: #fff;
  display: block;
  color: #55acee;
  text-decoration: none;
  font-weight: bold;
  -webkit-box-shadow: 3px 3px 0 #3588c7;
  -moz-box-shadow: 3px 3px 0 #3588c7;
  box-shadow: 3px 3px 0 #3588c7;
}

.twitterLink dt a::before {
  content: "";
  display: inline-block;
  vertical-align: middle;
  width: 1em;
  height: 1em;
  margin-right: .2em;
  background: url(/assets/img/common/twitter.png) no-repeat 50% 50%;
  background-size: 100%;
}

.twitterLink dt a:hover {
  margin-top: 1px;
  margin-left: 1px;
  margin-bottom: -1px;
  opacity: 1;
  -webkit-box-shadow: none;
  -moz-box-shadow: none;
  box-shadow: none;
}

.twitterLink dd {
  padding: 10px 18px;
  /*font-size: 0.9em;*/
  line-height: 1.5em;
}

/* aside#sidebar #sidebar-fed */
#sidebar-fed {
  padding-bottom: 40px;
}

#sidebar-fed .update {
  display: block;
  font-size: 12px;
  font-weight: normal;
}

#sidebar-fed ul {
  font-size: 14px;
  font-weight: bold;
  border-top: 1px solid #323232;
  border-bottom: 1px solid #323232;
}

#sidebar-fed li a {
  display: block;
  padding: 7px 0 8px;
  line-height: 20px;
  border-bottom: 1px solid #EBEBEB;
}

#sidebar-fed li a .txt {
  line-height: 21px;
}

#sidebar-fed li a:hover .update {
  color: #323232;
}

#sidebar-fed li a:hover {
  opacity: 1;
}

/* aside#sidebar #sidebar-rank */
#sidebar-rank {
  padding-bottom: 33px;
}

#sidebar-rank .rank-table {
  border-top: 1px solid #323232;
  border-bottom: 1px solid #323232;
}

#sidebar-rank .rank-table tr {
  height: 40px;
  line-height: 40px;
  border-bottom: 1px solid #ebebeb;
}

#sidebar-rank .rank-table tr:nth-child(-n+3) {
  font-weight: bold;
}

#sidebar-rank .rank-table td:last-of-type {
  text-align: right;
}

#sidebar-rank td.rank_number {
  width: 30px;
}

td.rank_number .rank {
  display: block;
  width: 20px;
  height: 20px;
  line-height: 22px;
  font-size: 14px;
  font-weight: bold;
  text-align: center;
  color: #323232;
  background: #ebebeb;
}

td.rank_number .rank.one {
  color: #fff;
  background: linear-gradient(#e5d269 0%, #c9a746 100%);
  border: 1px solid #c9a746;
}

td.rank_number .rank.two {
  color: #fff;
  background: linear-gradient(#d9dee1 0%, #adb5bf 100%);
  border: 1px solid #adb5bf;
}

td.rank_number .rank.three {
  color: #fff;
  background: linear-gradient(#dbab9e 0%, #b3684d 100%);
  border: 1px solid #b3684d;
}

#sidebar-rank td.rank_number img {
  width: 20px;
  margin-top: -4px;
}

#sidebar-rank .rank-date {
  font-size: .9em;
  margin-top: 6px;
  display: block;
  text-align: right;
}

#sidebar-members {
  height: 423px;
  color: #fff;
  background-color: #323232;
}

/*
#sidebar-members a {
  color: #fff;
}

#sidebar-members a:hover {
  color: #eb6900;
}
*/

#sidebar-members h2 {
  text-align: center;
  padding-left: 0;
  margin-bottom: 0;
  font-size: 18px;
  font-weight: bold;
}

#sidebar-members h2 .txt {
  display: block;
  width: 100%;
  padding-top: 66px;
  margin-bottom: 10px;
}

#sidebar-members h2::before {
  content: "";
  display: block;
  width: 100%;
  height: 46px;
  margin: 10px auto;
  background: url(../img/common/menu_login.svg) no-repeat;
  background-size: 46px;
  background-position: center;
}

#sidebar-members ul {
  color: #323232;
  font-size: 16px;
  font-weight: bold;
}

#sidebar-members li a {
  display: block;
  width: 260px;
  height: 56px;
  line-height: 56px;
  margin: 0 auto 10px;
  background: #fff;
}

#sidebar-members li a:hover {
  color: #323232;
}

#sidebar-members li img {
  width: 36px;
  margin: 0 10px;
}

/* -----------------------------------------
- footer
----------------------------------------- */
footer {
  clear: both;
  width: 100%;
  margin: 0 auto;
  padding: 59px 0 15px;
  color: #fff;
  background: #323232;
  font-size: 0;
  overflow: hidden;
}

footer .inner {
  width: 100%;
  max-width: 1100px;
  margin: 0 auto;
}

footer a {
  color: #fff;
}

footer .inner>div {
  display: inline-block;
  vertical-align: top;
  font-size: 12px;
  line-height: 1;
}

footer .inner div.copyright {
  display: block;
  text-align: center;
}

footer .inner div.copyright small {
  font-size: 12px;
}

.ft_menu {
  margin-right: 60px;
}

.ft_logo a {
  display: block;
  width: 230px;
  height: 120px;
  margin-bottom: 20px;
}

.ft_login a {
  position: relative;
  display: block;
  width: 230px;
  height: 44px;
  line-height: 44px;
  font-size: 14px;
  font-weight: bold;
  text-align: center;
  color: #fff;
  border: 1px solid #fff;
}

.ft_login a::before {
  position: absolute;
  top: 4px;
  left: 5px;
  content: "";
  display: inline-block;
  width: 34px;
  height: 34px;
  background: url(../img/common/menu_login.svg) no-repeat;
  background-size: cover;
}

.ft_login::after {
  display: none;
}

footer .ft_nav {
  letter-spacing: -.4em;
  line-height: 1;
  margin-bottom: 46px;
}

footer .ft_nav ul {
  display: inline-block;
  width: 230px;
  margin-right: 60px;
  font-size: 14px;
  vertical-align: top;
}

footer .ft_nav ul:last-of-type {
  margin-right: 0;
}

.ft_nav .ttl {
  margin-bottom: 15px;
  padding-bottom: 4px;
  font-weight: bold;
  border-bottom: 1px solid #e60012;
}

.ft_nav li {
  line-height: 19px;
  margin-bottom: 10px;
}

.ft_nav li a:hover {
  opacity: 1;
}

footer .ft_link {
  display: block;
  width: 100%;
  margin: 0 auto 20px;
}

footer .ft_link ul {
  display: flex;
  justify-content: center;
}
footer .ft_link li {
  margin-right: 20px;
  font-size: 14px;
}

footer .ft_link li:last-of-type {
  margin-right: 0;
}

.ft_link a {
  color: #fff;
}

.ft_link a:hover {
  color: #eb6900;
  opacity: 1;
}

/* .cautions */
#market-page .index-table {
  background: #f5f5f5;
}
#market-page .index-table tr:nth-of-type(odd) {
  background: #fff;
}

#brand_list-page .brand-tbl_cnt .brand-tbl_01 {
  padding-bottom: 0;
}

.notice_message {
  text-align: right;
  margin-top: 12px;
  margin-bottom: -10px;
  font-size: 12px;
}
#schedule-country .notice_message,
#schedule-sq .notice_message {
  margin-top: -6px;
}

/* .cautions_btn */
.cautions_btn-box {
  display: flex;
  justify-content: flex-end;
  margin: 20px 0 40px;
  text-align: right;
}
.cautions_btn {
  display: inline-block;
  width: 90px;
  height: 30px;
  line-height: 30px;
  color: #E60012;
  font-size: 14px;
  font-weight: bold;
  text-align: center;
  background: #fff;
  border: 1px solid #E60012;
  cursor: pointer;
  transition: .3s;
}
.offer_btn {
  display: inline-block;
  width: 174px;
  height: 30px;
  margin-left: 10px;
  line-height: 30px;
  color: #323232;
  font-size: 12px;
  font-weight: bold;
  text-align: center;
  background: #F5F5F5;
  cursor: default;
}

.cautions_btn:hover {
  color: #fff;
  background: #E60012;
  opacity: .7;
}

/* .cautions-modal */
.cautions-modal {
  display: none;
  width: 100%;
  height: 100vh;
  position: fixed;
  top: 0;
  left: 0;
  z-index: 99;
}

.modal-bg {
  position: absolute;
  width: 100%;
  height: 100vh;
  background: rgba(0, 0, 0, 0.78);
}

/* .cautions-content */
.cautions-content {
  position: absolute;
  top: 0;
  left: 50%;
  transform: translate(-50%, 0);
  width: 100%;
  max-width: 840px;
  height: 80%;
  margin: 100px 0;
  background: #fff;
  -ms-overflow-style: none;
}
.cautions-content .inner {
  width: 100%;
  height: 100%;
  padding: 29px 30px 0;
  overflow-y: auto;
  scrollbar-width: none;
}
.cautions-content .inner::-webkit-scrollbar {
  display: none;
}

.cautions-content h2 {
  line-height: 30px;
  padding-left: 0px;
  margin-top: 0px;
  margin-bottom: 19px;
  font-size: 20px;
  font-weight: bold;
}
.cautions-content h2::before {
  display: none;
}
.cautions-content h3 {
  margin-bottom: 14px;
  font-size: 16px;
}

.cautions-content section {
  margin-bottom: 22px;
}
.cautions-content section:last-of-type {
  margin-bottom: 53px;
}

.cautions-content .sec02,
.cautions-content .sec04 {
  margin-bottom: 48px;
  padding: 23px 20px 3px;
  background: #F5F5F5;
}
.cautions-content .sec02 p,
.cautions-content .sec04 p {
  margin-bottom: 10px;
  font-size: 12px;
  line-height: 22px;
}
.cautions-content .sec03 {
  margin-bottom: 33px;
}
.cautions-content .sec03 .orange {
  margin-bottom: 12px;
}
.cautions-content .orange div {
  display: block;
  line-height: 25px;
  margin-bottom: 8px;
  padding-left: 1.25em;
  text-indent: -1.4em;
}
.cautions-content .orange span {
  display: inline-block;
  text-indent: 0;
}
.cautions-content .orange div::before {
  content: " ";
  margin-right: 1em;
}
.cautions-content .orange > div::before {
  content: "■";
  margin-right: .4em;
  color: #EB6900;
}
.cautions-content .small {
  font-size: 12px;
  line-height: 18px;
}
.cautions-content p {
  font-size: 14px;
  line-height: 24px;
}

.cautions-content dl {
  display: flex;
  padding: 17px 0px 12px 20px;
  font-size: 14px;
  line-height: 24px;
  border-bottom: 1px solid #EBEBEB;
}
.cautions-content dl:first-of-type {
  border-top: 1px solid #EBEBEB;
}
.cautions-content dt {
  width: 83px;
}
.cautions-content dd {
  width: 677px;
}

.market-timing .filter {
  display: flex;
  justify-content: space-between;
  margin-bottom: 30px;
}

.market-timing .filter button {
  width: 90px;
  height: 36px;
  font-size: 14px;
  font-weight: bold;
  text-align: center;
  background: #fff;
  color: #000;
  border: 1px solid #323232;
  transition: ease .2s all;
}
.market-timing .filter button.is-active,
.market-timing .filter button:hover {
  background: #eb6900;
  color: #fff;
  border: 1px solid #eb6900;
}
.market-timing .filter button.small {
  width: 30px;
}

/* .cautions-close_btn */
.modal-close_btn {
  position: absolute;
  top: -45px;
  right: 0;
  display: inline-block;
  width: 32px;
  height: 32px;
  background: url(../img/common/ico_modal_close.svg) no-repeat;
  background-size: contain;
  transition: .3s;
  z-index: 9999;
}
.modal-close_btn:hover {
  cursor: pointer;
}
.modal-close_btn .txt {
  display: none;
}

.phpdebugbar ul {
  font-size: initial !important;
}

/* selectBox */
.selectBox {
  margin-bottom: 10px;
  height: auto !important;
  overflow: visible !important;
  opacity: 1 !important;
}

.selectBox label {
  position: relative;
  display: inline-block;
  min-width: 300px;
  width: auto;
  color: #323232;
  vertical-align: top;
}

.selectBox select {
  position: relative;
  padding-right: 32px;
  width: 100%;
  height: 32px;
  font-size: 16px;
  color: #323232;
  background: #fff;
  border: 1px solid #323232;
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
  display: block;
}

.selectBox select::-ms-expand {
 display: none;
}

.selectBox select option {
  color: #323232;
  background: #fff;
}

.selectBox label:after {
  display: block;
  content: "";
  margin: auto;
  position: absolute;
  top: 0;
  right: 1px;
  bottom: 0;
  width: 30px;
  height: 30px;
  background: url(/assets/img/analysis/ico_down-arrow.svg) no-repeat;
  background-size: contain;
  background-position: center;
  pointer-events: none;
}

/* brandComment */
.brandComment {
  margin: 24px 0;
  padding: 15px;
  background: #f5f5f5;
  line-height: 1.3;
}

.brandComment > p {
  padding-left: 1em;
  position: relative;
}

.brandComment > p::before {
  content: "";
  display: block;
  width: 0.55em;
  height: 0.55em;
  position: absolute;
  top: 0.3em;
  left: 0;
  background-color: #eb6900;
}

.brandComment > p + p {
  margin-top: 5px;
}

.titleBox {
  margin-top: 4px;
  margin-bottom: 11px;
  display: table;
  width: 100%;
}

.titleBox,
.titleBox div {
  height: auto !important;
  overflow: visible !important;
  opacity: 1 !important;
}

.titleBox > * {
  display: table-cell;
  vertical-align: bottom;
}

.titleBox > *:last-child {
  text-align: right;
  white-space: nowrap;
}
/* -----------------------------------------
- common
----------------------------------------- */
/* textBold */
.textBold {
  font-weight: bold;
}

/* basicList */
.basicList {
  font-size: inherit;
  line-height: 1.25;
}

.basicList li {
  padding: 20px 0;
  position: relative;
  border-bottom: 1px solid #ebebeb;
  -webkit-animation: fadeIn .3s ease;
          animation: fadeIn .3s ease;
}

/* -----------------------------------------
- divideBlock
----------------------------------------- */
.divideBlock {
  display: flex;
  align-items: flex-start;
}

.divideBlock__sub {
  width: 180px;
  margin-right: 40px;
}

.divideBlock__main {
  width: 560px;
}

.sideMenu {
  padding: 10px 0 0;
  color: #fff;
  background: #323232;
}

.sideMenu::before {
  content: "";
  margin: 0 auto 13px;
  display: block;
  width: 46px;
  height: 46px;
  background: url(../img/analysis/ico_strategy-menu.svg) no-repeat;
  background-size: cover;
}

.sideMenuList {
  padding: 0 5px;
  font-size: 14px;
  font-weight: bold;
  line-height: 1.2;
}

.sideMenuList__item {
  display: block;
  padding-bottom: 5px;
}

.sideMenuList__item > a {
  width: 100%;
  line-height: 1.25;
  position: relative;
  display: block;
  width: 170px;
  min-height: 44px;
  padding: 13.5px 5px;
  color: #323232;
  background: #fff;
  cursor: pointer;
  transition: all .2s ease;
}

.sideMenuList__item > a:hover {
  color: #fff;
  background: #eb6900;
}

.sideMenuList__item.active a {
  color: #fff;
  background: #eb6900;
}

/* -----------------------------------------
- editorArea
----------------------------------------- */
.editorArea h1,
.editorArea h2,
.editorArea h3,
.editorArea h4,
.editorArea h5,
.editorArea h6 {
  margin: 0 0 0.5em 0 !important;
  line-height: 1.2 !important;
}

.editorArea h1 {
  font-size: 2em;
}

.editorArea h2 {
  padding: 0 !important;
  border-bottom: none !important;
  font-size: 1.75em;
}

.editorArea h2::before {
  content: none !important;
}

.editorArea h3 {
  font-size: 1.55em;
}

.editorArea h4 {
  font-size: 1.3em;
}

.editorArea h5 {
  font-size: 1.125em;
}

.editorArea p {
  margin-bottom: 1em;
}

.editorArea ul,
.editorArea ol {
  margin-bottom: 1em;
  margin-left: 2.5em;
  font-size: inherit;
  line-height: 1.3;
}

.editorArea ul li,
.editorArea ol li {
  margin-bottom: 0.2em;
  font-size: 17px;
}

.editorArea ul li {
  list-style-type: disc;
}

.editorArea ol li {
  list-style-type: decimal;
}

.editorArea blockquote {
  margin: 0 0 0.5em 0;
}

.editorArea blockquote::before {
  margin-right: 0.3em;
  content: '“';
  font-weight: bold;
}

.editorArea blockquote::after {
  margin-left: 0.3em;
  content: '”';
  font-weight: bold;
}

/* -----------------------------------------
- common
----------------------------------------- */
.comTitle {
  display: -webkit-flex;
  display:    -moz-flex;
  display:     -ms-flex;
  display:      -o-flex;
  display:         flex;
  justify-content: space-between;
  -ms-align-items: stretch;
      align-items: stretch;
  margin: 4px 0;
  margin-bottom: 11px;
}

.comTitle__main {
  margin: 0;
  white-space: nowrap;
}

.comTitle__sub {
  -ms-align-self: center;
      align-self: center;
}

.comTitle--subText .comTitle__sub {
  font-size: 13px;
  margin-left: 1.384615em; /* 18px */
}

.comList {
  font-size: 1em;
  line-height: 1.5;
}

.brand-tbl_cnt.portfolio-page_tbl + .comList {
  margin: 20px 0;
  margin-top: -20px;
}

.comList__item {
  position: relative;
}

.comList__item:before {
  display: block;
  position: absolute;
  top: 0;
  left: 0;
}

.comList__item + .comList__item {
  margin-top: .25em;
}

.comList--typeMarker .comList__item {
  padding-left: 1.5em;
}

.comList--typeMarker .comList__item:before {
  content: "※";
}

.comColor--f00 {
  color: #f00;
}

.comWeight--bold {
  font-weight: bold;
}

/* -----------------------------------------
- fed/boj
----------------------------------------- */
.fedBojTab {
  display: -webkit-flex;
  display:    -moz-flex;
  display:     -ms-flex;
  display:      -o-flex;
  display:         flex;
  justify-content: center;
  -ms-align-items: stretch;
      align-items: stretch;
  margin: 20px 0;
  font-weight: bold;
  font-size: 14px;
}

.fedBojTab__item {
  position: relative;
  z-index: 0;
  -webkit-transition: all .25s;
       -o-transition: all .25s;
          transition: all .25s;
}

.fedBojTab__item:hover {
  cursor: pointer;
  color: #fff;
}

.fedBojTab__item:before {
  display: block;
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  z-index: -1;
  border: 1px solid #323232;
  -webkit-box-sizing: border-box;
     -moz-box-sizing: border-box;
          box-sizing: border-box;
  content: " ";
}

.fedBojTab__item:after {
  display: block;
  position: absolute;
  top: 0;
  bottom: 0;
  left: 0;
  z-index: -1;
  width: 0;
  background-color: #eb6900;
  content: " ";
  -webkit-transition: all .25s;
       -o-transition: all .25s;
          transition: all .25s;
}

.fedBojTab__item:hover:after {
  width: 100%;
}

.fedBojTab__item + .fedBojTab__item {
  margin-left: 15px;
}

.fedBojTab__item span {
  display: block;
  padding: 8px 35px 7px;
}

.fedBojTab__item.JS-tabs__item--isActive:hover {
  cursor: default;
}

.fedBojTab__item.JS-tabs__item--isActive:before ,
.fedBojTab__item.JS-tabs__item--isActive:after {
  display: none;
}

.fedBojTab__item.JS-tabs__item--isActive span {
  background-color: #eb6900;
  color: #fff;
}

.fedBojTabContents .fed-table ,
.fedBojTabContents .boj-table {
  border-top-color: #ebebeb;
}

.fedBojTabContainer h2 ,
.fedBojTabContainer h2 {
  padding-bottom: 11px;
  border-bottom: 1px solid #323232;
}

.JS-tabsContents__item {
  display: none;
}

.JS-tabsContents__item--isActive {
  display: block;
}

/* 配信設定 */
.deliverySettingTbl__th {
  padding: 0 10px;
  white-space: nowrap;
}

.deliverySettingTbl__th input[type="text"]:focus {
  border: 1px solid #fff!important;
  outline: 0;
}

.deliverySettingTbl__th input {
  border: 1px solid #fff;
  width: 40%;
  background-color: #323232;
}

#fileUploadBtn {
  width: 180px;
  background-color: #323232;
  color: #fff;
  height: 30px;
  font-weight: bold;
}

#fileUploadBtn:hover {
  opacity: .7;
}

#csvUploadForm {
  text-align: center;
  width: 70%;
  margin: 10px auto;
  padding: 10px;
  border: 0.5px solid #323232;
}

.flagWithDate {
  display: flex;
  justify-content: center;
  align-items: center;
}

.jgxLinkBtn {
  padding: 5px;
  background-color: #4E67C8;
}

.jgxLinkBtn a {
  color: #fff!important;
  font-weight: bold;
}

.jgxLinkBtnLogo {
  padding: 5px;
}

.jgxLinkBtnLogo img {
  max-width: 100px;
  max-height: 50px;
}

/* J-GXポートフォリオCSVアップロード */
.jgxCsvConfirm__container {
  padding: 25px;
  background-color: #323232;
  color: #fff;
  margin: 25px auto;
  width: 50%;
}

.jgxCsvConfirmForm__container {
  display: flex;
  justify-content: center;
}

.jgxCsvConfirmFormPageSelect__container {
  margin: 5px;
}

.jgxCsvConfirmFormPageSelect__item {
  display: flex;
  justify-content: center;
  margin: 3px;
}

.jgxCsvConfirmForm__submitBtn {
  background-color: #fff;
  width: 100px;
  height: 30px;
  color: #000;
  display: flex;
  justify-content: center;
  align-items: center;
  margin: 5px;
}

.jgxCsvConfirmForm__submitBtn:hover {
  opacity: .7;
  color: #000;
}

/* ポートフォリオ */
.portfolio_form input, .portfolio_form select {
  border: 1px solid #323232;
}

/* 個別銘柄ページ「適時開示情報」のPDFリンク */
.tdnetIndicationTitle {
  text-align: left;
}

.tdnetIndicationTitle span {
  display: inline-block;
}

.tdnetIndicationTitle a {
  display: flex;
  align-items: center;
}

.tdnetIndicationTitle a:before {
  margin-right: 5px;
  width: .9em;
  height: 1.3em;
  background-image: url("/assets/img/common/ico_pdf.svg");
  background-position: 50%;
  -webkit-background-size: contain;
          background-size: contain;
  background-repeat: no-repeat;
  content: " ";
  flex-shrink: 0;
}

.btn-box {
  width: 100px;
  height: 30px;
  line-height: 30px;
  text-align: center;
  font-weight: bold;
  background: #fff;
  border: 1px solid #323232;
  transition: ease .2s;
  cursor: pointer;
  display: inline-block;
}

.btn-box-active {
  background: #000;
  color: #fff;
  cursor: default;
}

.text-center
{
  text-align: center !important;
}