@charset "UTF-8";
/* ===========================================================

  Title: top.css
  Created: 2018-05-02
  TOP専用スタイル

=========================================================== */
/*
  Common
  General
    banner

=========================================================== */



/* ===========================================================

  General

=========================================================== */

/* -----------------------------------------------------------
  Jumbotron
----------------------------------------------------------- */
.jumbotron,
.jumbotron-slick__cell {
  display: block; padding: 0; margin: 0;
  position: relative;
}
.jumbotron-slick__cell {
  display: block; padding: 0; margin: 0;
  position: relative;
}

.jumbotron-slick__padding {
  display: block; padding: 40% 0 0 0; margin: 0;
  overflow: hidden; width: 100%; height: 0;
  position: relative;
}
.jumbotron { padding: 0 0 30px 0;
  position: relative; }
.jumbotron-slick { }

.jumbotron-slick  { opacity: 0.0; transition: all 0.5s; }
.jumbotron-slick.slick-initialized { opacity: 1.0;; }



.jumbotron-slick__cell {
  display: block; padding: 0;
  width: 100%;
}

.jumbotron-slick__cell {
  background-repeat: no-repeat;
  background-position: center center;
  background-size: cover;
}
.jumbotron-slick {
  display: block; padding: 0; margin: 0;
  width: 100%;
}

.jumbotron .slick-arrow {
  background-color: transparent;
  border: none; cursor: pointer;
  outline: none; appearance: none;
}
.jumbotron .slick-arrow {
  display: block; padding: 0; margin: 0;
  position: absolute; top: 0; z-index: 50;
  width: 30px; height: 100%;
  background-color: rgba(0,0,0,0.50);
  overflow: hidden; text-indent: 100%;
  transition: all 0.5s;
  color: rgba(255,255,255,0.6);
}
.jumbotron .slick-arrow:hover {
  background-color: rgba(255,255,255,0.50);
  color: rgba(25,71,156,1.0);
}
.jumbotron .slick-arrow::before {
  display: block; margin: auto; padding: 0;
  width: 10px; height: 10px;
  position: absolute; top: 0; left: 0; bottom: 0; right: 0;
  transform: rotate(45deg);
  content: "";
}

.jumbotron .slick-prev { left: 0; }
.jumbotron .slick-next { right: 0; }
.jumbotron .slick-prev::before {
  border-left: solid 4px currentColor;
  border-bottom: solid 4px currentColor;
}
.jumbotron .slick-next::before {
  border-top: solid 4px currentColor;
  border-right: solid 4px currentColor;
}



.jumbotron-slick__cell .jumbotron-slick__padding.separate-link { }
.jumbotron-slick__cell .jumbotron-slick__padding.separate-link a {
  display: block; padding: 0; margin: 0;
  height: 100%; outline: none;
  position: absolute; top: 0;
}
.jumbotron-slick__cell .jumbotron-slick__padding.separate-link a:first-child {
  left: 0; width: 47.5%;
}

.jumbotron-slick__cell .jumbotron-slick__padding.separate-link a:last-child {
  right: 0; width: 52.5%;
}


@media print, screen and (min-width: 576px) {
  .jumbotron .slick-arrow { width: 40px; }
}
@media print, screen and (min-width: 768px) {
  .jumbotron .slick-arrow { width: 50px; }
  .jumbotron .slick-arrow::before { width: 20px; height: 20px; }
}
@media print, screen and (min-width: 992px) {
  .jumbotron .slick-arrow { width: 60px; }
}
@media print, screen and (min-width: 1260px) {
  .jumbotron .slick-arrow { width: calc((100% - 1200px) / 2); }
  .jumbotron .slick-arrow::before { width: 30px; height: 30px; }
  
  .jumbotron .slick-prev::before { margin: auto 0 auto auto; }
  .jumbotron .slick-next::before { margin: auto auto auto 0; }
}





.jumbotron .slick-dots {
  width: 100%; padding: 12px calc(50% - 600px); margin: 0;
  position: absolute; bottom: -30px; left: 0;
  justify-content: center;
  z-index: 10;
  background:url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAMAAAADCAYAAABWKLW/AAAAAXNSR0IArs4c6QAAABJJREFUCB1jYDWfaMyADLAKAAA5UQMB2uULrQAAAABJRU5ErkJggg==);
}
.jumbotron .slick-dots li { padding: 0 5px; margin: 0; }
.jumbotron-slick__text{
  position: absolute;
    color: #ffffff;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -80%);
    white-space: nowrap;
    font-family: "游ゴシック", "YuGothic", "メイリオ", Meiryo, sans-serif;
    z-index: 5;
    font-size: 1.3rem;
    line-height: 2rem;
    letter-spacing: 0;
    text-shadow: 0px 0px 4px rgba(100, 100, 100, 0.4);
  }

  @media print, screen and (min-width: 768px) {
    .jumbotron-slick__text{
      font-size: 2.3rem;
      line-height: 4.5rem;
      letter-spacing: .2rem;
      }
  }

  @media print, screen and (min-width: 992px) {
    .jumbotron-slick__text{
      font-size: 3rem;
      line-height: 5rem;
      letter-spacing: .4rem;
      }
  }

/* -----------------------------------------------------------
  summary data
----------------------------------------------------------- */


.function-title__links {
  display: flex; padding: 0; margin: 2.0em 0 0 0;
  font-size: 1.4rem; justify-content: center;
  flex-direction: column;
}
.function-title__links li {
  display: block; padding: 15px 0; margin: 0;
}
.function-title__links a {
  display: block; padding: 0; margin: 0;
  text-align: center; text-decoration: none;
}

.function-title__links a::before {
  display: inline-block; padding: 0 0.5em 0 0; margin: 0; content: "\f054";
  font-family: FontAwesome; color: rgba(25,71,156,1.00)
}


.function-title__links-rss a::before {
  content: "\f09e"; color: rgba(255,153,0,1.00);
  font-size: 1.25em;
}


@media print, screen and (min-width: 992px) {
  .function-title__links {
    position: absolute; top: 0; right: 0;
    margin: 18px 20px 0 0;
    flex-direction: row;
    font-size: 1.2rem;
  }
  .function-title__links li {
    display: block; padding: 0 1.0em; margin: 0;
    border-left: solid 1px #ddd;
  }
  .function-title__links li:first-child {
    border-left: none;
  }
  .function-title__links li:last-child {
    padding: 0 0 0 1.0em;
  }
}


.top-link {
  display: block;
  padding: 0;
  margin: 0 auto;
  width: 100%;
  max-width: 1200px;
  margin: 15px auto;
}

.top-link ul li {
  padding-bottom: 15px;
}
.top-link ul li:last-child{
  padding-bottom: 0;
}

.top-link ul li a{
  position: relative;
  color: #000;
  text-decoration: none;
  padding-left: 20px;
  text-decoration: none;
}

.top-link ul li a::after {
  display: block;
  margin: 0;
  content: "\f054";
  font-family: FontAwesome;
  position: absolute;
  top: 50%;
  left: 0;
  transform: translate(0%, -50%);
}
.top-link ul li a:hover {
  color: rgba(0,175,236,1.00);
}



/* ===========================================================

  data-report

=========================================================== */
.data-report {
  display: block; padding: 20px 15px; margin: 0 0;
}
.data-report a { text-decoration: underline; }
.data-report a:hover { }


.data-report__inner {
  display: block; padding: 0; margin: 0 auto;
  width: 100%; max-width: 1200px;
}



.data-report-row {
  display: flex; padding: 0; margin: 0 -15px;
  justify-content: center;
  flex-direction: column;
}
.data-report-row__cell {
  display: block; padding: 15px; margin: 0 auto;
  width: 100%; position: relative;
}

@media print, screen and (min-width: 992px) {
  .data-report-row {
    flex-direction: row;
  }
}


.data-report-box {
  display: flex; padding: 0; margin: 0 auto;
  width: 100%; height: 100%; max-width: 600px; position: relative;
  flex-direction: row; flex-wrap: wrap; align-content: flex-start;
}

.data-report-box__title,
.data-report-box__body {
  display: block; padding: 0; margin: 0 auto; width: 100%; max-width: 600px;
}

.data-report-box__title {
  display: block; align-items: center; padding: 0 0;
  position: relative; margin: 0 auto 15px auto;
}
.data-report-box__title .box-title {
  border-left: none; border-top: solid 2px rgba(4,54,147,1.00);
  padding: 15px;
}
.data-report-box__title span {
  display: block; padding: 0; margin: 0;
}

.data-report-box__title span.box-title--en { margin: 0 0 0.25em 0; }
.data-report-box__title span.box-title--ja { }
.data-report-box__title p {
  display: flex; width: 2.0em; height: 100%;
  position: absolute; top: 0; right: 0;
  
}
.data-report-box__title p a {
  display: block; width: 100%; height: 100%;
  position: relative; color: rgba(4,54,147,1.00);
  text-decoration: none;
}

.data-report-box__title p a::before {
  display: block; padding: 0; margin: auto;
  content: "\f054"; font-family: FontAwesome; font-size: 1.2rem;
  position: absolute; top: 0; left: 0; bottom: 0; right: 0;
  width: 1.0em; height: 1.0em; line-height: 1.0em;
}




.data-report-box__body { padding: 0; margin: 10px 0; border-bottom: solid 1px #ddd; position: relative; }
.data-report-box__body:last-child { border-bottom: none; margin-bottom: 10px; }

.data-report-box--portfolio .data-report-box__body,
.data-report-box--portfolio .data-report-box__body:last-child {
  border: solid 1px #ddd; padding: 10px; margin: 0 0 5px 0;
}



@media print, screen and (min-width: 576px) {
  .data-report-box--portfolio .data-report-box__body,
  .data-report-box--portfolio .data-report-box__body:last-child {
    padding: 10px 40px 10px 10px;
  }
}
@media print, screen and (min-width: 768px) {
  .data-report-box__body { padding: 0; margin: 0; }
}
@media print, screen and (min-width: 992px) {
  .data-report-box__body { padding: 0; margin: 0; }
}



.data-report-box__body h2 {
  display: table; padding: 0; margin: 0;
  font-size: 1.4rem; line-height: 1.1;
  width: 100%;
}
.data-report-box__body h2 span {
  display: table-cell; padding: 0; margin: 0;
  vertical-align: middle;
}
.data-report-box__body h2 > span:first-child {
  width: 1%; white-space: nowrap; padding: 0 1.0em 0 0;
}
.data-report-box__body h2 > span:last-child { position: relative; }
.data-report-box__body h2 > span:last-child::before {
  display: block; padding: 0; margin: auto;
  position: absolute; top: 0; left: 0; bottom: 0; right: 0;
  width: 100%; height: 1px; background-color: #ddd;
  content: "";
}




.summary-data__link {
  display: block; padding: 1.0em 0;
  text-align: center;
  font-size: 1.4rem;
}
.summary-data__link a {
  display: block; padding: 1.0em 1.0em; margin: 0 auto;
  max-width: 200px; background-color: rgba(23,71,158,0.50);
  color: #fff; font-weight: bold; border-radius: 2px;
  text-decoration: none;
}
.summary-data__link a:hover {
  background-color: rgba(23,71,158,1.00);
}
.summary-data__link a::before {
  display: inline-block; padding: 0; margin: 0 0.5em 0 0;
  content: "\f054"; font-family: FontAwesome; font-size: 1.2rem;
}

@media print, screen and (min-width: 576px) {
  .summary-data__link {
    display: block; padding: 0; margin: 0; position: absolute; top: 15px; right: 10px;
    width: 15px; height: calc(100% - 30px);
  }
  .summary-data__link a {
    display: block; padding: 0; margin: 0;
    justify-content: center; align-items: center;
    overflow: hidden; width: 100%; height: 100%;
    text-indent: -9999px; position: relative;
    background-color: rgba(23,71,158,0.00); color: rgba(23,71,158,1.00);
  }
  .summary-data__link a:hover {
    background-color: rgba(23,71,158,1.00); color: #fff;
  }
  .summary-data__link a::before {
    display: block; padding: 0; margin: auto;
    text-indent: 0; position: absolute; top: 0; left: 0; bottom: 0; right: 0;
    width: 100%; height: 2.0em; line-height: 2.0em;
  }
}





.summary-data__payment-date {
  display: block; padding: 10px 0; margin: 0 0 1.5em 0;
  font-size: 1.1rem; line-height: 1.2;
  text-align: right;
}

@media print, screen and (min-width: 992px) {
  .summary-data__payment-date { font-size: 1.2rem; }
}

.summary-data__cell {
  display: table; padding: 0; margin: 0;
  width: 100%;
}
.summary-data__cell dt,
.summary-data__cell dd {
  display: table-cell; padding: 0.25em 0; margin: 0;
  vertical-align: middle;
}

.summary-data__confirm .summary-data__cell dt,
.summary-data__confirm .summary-data__cell dd {
  padding: 1.0em 0 0 0; border-bottom: none;
}

.summary-data__cell:first-child dt,
.summary-data__cell:first-child dd { border-top: none; }

.summary-data__cell dt { font-size: 1.0em; line-height: 1.2; }
.summary-data__cell dd { white-space: nowrap; text-align: right; }


.summary-data__title {
  display: inline-block; padding: 0; margin: 0;
}
.summary-data__date {
  display: block; padding: 0; margin: 0;
  font-size: 1.1rem; line-height: 1.2;
}
.summary-data__title { margin: 0; font-size: 1.4rem; }
.summary-data__date-now {
  display: inline-block; padding: 0; margin: 0;
  font-size: 1.1rem; line-height: 1.2;
}

@media print, screen and (min-width: 992px) {
  .summary-data__title,
  .summary-data__date-now { }
  .summary-data__title { font-size: 1.0em; }
  .summary-data__date-now { font-size: 1.2rem; }
  .summary-data__date { font-size: 1.2rem; }
}


.summary-data__number {
  display: inline-block; padding: 0; margin: 0;
  font-size: 3.2rem; line-height: 1.2;
  font-family: Arial, Helvetica, "sans-serif";
  font-weight: bold; color: #333;
}
.summary-data__confirm .summary-data__number {
  font-size: 4.0rem;
}
.summary-data__lot {
  display: inline-block; padding: 0; margin: 0;
  font-size: 1.2rem; line-height: 1.2;
  min-width: auto; text-align: left;
}

@media print, screen and (min-width: 992px) {
  .summary-data__lot {
    font-size: 1.4rem; min-width: 3.0em; 
  }
}
.summary-data__lot--one { min-width: auto; }

.summary-data__surplus {
  display: block; padding: 0.25em 0; margin: 0;
  text-align: right;
}
.summary-data__surplus .summary-data__number { font-size: 2.2rem; }

.summary-data__surplus .summary-data__title,
.summary-data__surplus .summary-data__lot { font-size: 1.1rem; }


@media print, screen and (min-width: 992px) {
  .summary-data__surplus .summary-data__title,
  .summary-data__surplus .summary-data__lot { font-size: 1.2rem; }
}








/* file */
.file-report-box__body {
  display: block; width: 100%; margin: 0; padding: 0.5em 0;
}
.file-report-box__body > dl {
  display: table; font-size: 1.4rem;
}

.file-report-box__body > dl > dt,
.file-report-box__body > dl > dd {
  display: table-cell; padding: 0;
  position: relative;
}
.file-report-box__body > dl > dt { }
.file-report-box__body > dl > dd {
  padding: 0 0 0 0.5em;
  width: 1%; white-space: nowrap;
}

/************************* 6月14日 ************************/
.file-report-box__body.file-date-list__revied {
/*  transform: translateX(7.0em); */
    padding-left: 5.5em;
}
.file-report-box__body.file-date-list__revied > dl > dt::before {
  display: block;
  padding: 0;
  margin: 0;
  width: 1.0em;
  height: 1.75em;
  position: absolute;
  top: -1.0em;
  left: -1.5em;
  border-left: dotted 1px #848484;
  border-bottom: dotted 1px #848484;
  content: "";
}


/*********************************************************/

.summary-data__file a.data-file__btn {
  display:block; padding: 0.5em 1.0em;
  border: solid 1px #ddd;
  border-radius: 2px; text-align: center;
  font-size: 1.1rem; text-decoration: none;
}
.summary-data__file a.data-file__btn:hover {
  background-color: #fff;
}

.correction {
  display: block; white-space: normal;
  position: absolute; top: 0; right: 0;
  background-color: #fff;
  z-index: 10;
  width: 280px;
}


.summary-data__file {
  display: block; padding: 5px 0; margin: 0;
  position: relative;
}


.summary-data__file .summary-data__date { font-size: 1.4rem; margin: 0 0 1.0em 0; }
@media print, screen and (min-width: 992px) {
  .summary-data__file .summary-data__date { font-size: 1.4rem; }
}







.summary-data__file .data-file__correction {
  display: block; padding: 0; margin: 0;
  position: absolute; top: 40px; left: 0;
  width: 100%;
  background-color: #fff;
  box-shadow: 0 0 10px rgba(0,0,0,0.25);
  border-radius: 6px; overflow: hidden;
  z-index: 10;
}
.summary-data__file p.correction-popup__title {
  display: block; padding: 0.5em 1.0em; margin: 0;
  border-bottom: solid 1px #ddd;

}

.summary-data__file .data-file__list {
  padding: 0 1.0em; margin: 0;
}
.summary-data__file .data-file__list.date-list > dl > dt {
  padding: 0.25em 1.0em;
}
.summary-data__file .data-file__list.date-list > dl > dd {
  padding: 0.25em 1.0em 0.25em 0;
}
.summary-data__file .data-file__list a {
  padding: 0; margin: 0;
}




.summary-data__caption {
  display: block; padding: 1.0em 0; margin: auto 0 0 0;
  font-size: 1.2rem; text-align: right;
  width: 100%; color: #666;
  line-height: 1.0em;
}


.summary-data__dl {
	display: block; padding: 0; margin: 1.0em 0 0 0;
	font-size: 1.2rem;
}
.summary-data__dl a {
	display: block; padding: 1.0em 1.0em; margin: 0 auto;
	text-align: center; border-radius: 4px;
	max-width: 200px; background-color: #fff;
	color: rgba(23,71,158,1.00); border: solid 1px rgba(23,71,158,1.00);
  text-decoration: none;
}
.summary-data__dl a:hover {
	color: #fff; background-color: rgba(23,71,158,1.00);
}
.summary-data__dl span {
	display: block; padding: 0; margin: 0;
}
.summary-data__dl a::after {
	display: inline-block; padding: 0; margin: 0 0 0 0.5em;
	content: "\f019"; font-family: FontAwesome;
}



/* ===========================================================

  portfolio

=========================================================== */
.portfolio-pickup {
  display: block; padding: 0 15px 2.0em 15px; margin: 0 0;
  position: relative;
}
.portfolio-pickup .box-title {
  margin: 0 auto 2.0em auto;
  max-width: 1200px;
}
.portfolio-pickup .function-title__links {
  right: calc(100% - 1200px );
}

@media print, screen and (min-width: 992px) {
  .portfolio-pickup .function-title__links {
    right: 20px;
  }
}
@media print, screen and (min-width: 1200px) {
  .portfolio-pickup .function-title__links {
    right: calc((100% - 1200px) / 2);
  }
}



.portfolio-pickup__slick {
  display: block; padding: 0 0 10px 0; margin: 0 -15px;
}


.pickup-slick {
  display: block; padding: 0; margin: 0 auto;
  position: relative;
}
.pickup-slick .slick-arrow {
  background-color: transparent;
  border: none; cursor: pointer;
  outline: none; appearance: none;
}
.pickup-slick .slick-arrow {
  display: block; padding: 0; margin: 0;
  position: absolute; top: calc((280px / 2) - (100px / 2)); z-index: 50;
  width: 50px; height: 100px;
  background-color: rgba(23,71,158,0.80);
  overflow: hidden; text-indent: 100%;
  transition: all 0.5s;
}
.pickup-slick .slick-arrow:hover {
  background-color: rgba(0,176,236,1.00);
}
.pickup-slick .slick-arrow::before {
  display: block; padding: 0; margin: auto;
  position: absolute; top: 0; left: 0; bottom: 0; right: 0;
  width: 20px; height: 20px; transform: rotate(45deg);
  border: solid 1px #fff;
  content: "";
}
.pickup-slick .slick-prev { left: -15px; border-radius: 0 50px 50px 0; }
.pickup-slick .slick-arrow.slick-prev::before {
  margin-right: 5px;
  border-top: solid 1px transparent; border-right: solid 1px transparent;
}
.pickup-slick .slick-next { right: -15px; border-radius: 50px 0 0 50px; }
.pickup-slick .slick-arrow.slick-next::before {
  margin-left: 5px;
  border-bottom: solid 1px transparent; border-left: solid 1px transparent;
}


.pickup-slick__cell {
  display: block; padding: 0; margin: 0 auto;
}

.pickup-slick-box {
  display: block; padding: 0; margin: 0 auto;
}
.pickup-slick-box a {
  display: block; padding: 0; margin: 0 auto;
}
.pickup-slick-box__photo {
  display: block; padding: 0; margin: 0 auto;
  width: 100%; height: 280px; vertical-align: bottom;
}
.pickup-slick-box__photo {
  background-position: center center;
  background-size: cover;
  background-repeat: no-repeat;
  position: relative;
}
.pickup-slick-box__name {
  display: flex; justify-content: center; align-items: center;
  padding: 0; margin: auto;
  width: 100%; height: 100%;
  color: #fff; background-color: rgba(0,0,0,0.80);
  opacity: 0; transition: all 0.5s;
}
.pickup-slick-box__photo:hover .pickup-slick-box__name {
  opacity: 1.0;
}



/* ===========================================================

  top-data

=========================================================== */
.top-data {
  display: block; padding: 20px 15px; margin: 0;
}

.top-data__inner {
  display: block; padding: 0; margin: 0 auto;
  width: 100%; max-width: 1200px;
}

.top-data-row { display: flex; padding: 0; margin: 0; flex-direction: column; }

.top-data-row__cell {
  display: block; padding: 15px 0;
}
.top-data-row__cell--news { }
.top-data-row__cell--banner { }
@media print, screen and (min-width: 992px) {
  .top-data-row {
    flex-direction: row; flex-wrap: nowrap; margin: 0 -15px;
  }
  .top-data-row__cell {
    display: block; padding: 15px;
  }
  .top-data-row__cell--news { width: 66.6666%; }
  .top-data-row__cell--banner { width: 33.3333%; }
}

/* ===========================================================

  news

=========================================================== */
.top-news { position: relative; }
.top-news .news-list { margin: 2.0em 0 0 0; }



.top-site-banner dl { display: block; padding: 0; max-width: 380px; margin: auto; }
.top-site-banner dt { display: block; padding: 10px 0;  font-size: 1.2rem; }
.top-site-banner dd { display: block; padding: 0; margin: 0 0 10px 0; border: solid 1px #ddd; }
.top-site-banner a { display: block; padding: 20px; position: relative; }
.top-site-banner img { max-width: 100%; height: auto; }

.top-site-banner a::after {
  display: block; padding: 0; margin: 0;
  width: 8px; height: 8px;
  position: absolute; bottom: 10px; right: 10px;
  content: "";
  background: url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAgAAAAICAYAAADED76LAAAAAXNSR0IArs4c6QAAAEZJREFUGBl1jdsNACAIA8U4K0OxrFITSPHBD3ClRdpRqjoZCQMzkxCT5xCK92DonfgeATkpr6GGs5iekI6vF8XtywD4pUBb/Egd9eG6HRQAAAAASUVORK5CYII=);
  background-repeat: no-repeat;
  background-position: right center;
}


/*
a.banner-video,
a.banner-stock {
  background-repeat: no-repeat;
  background-position: right center;
  background-size: cover;
}
a.banner-video { background-image: url(../img/top/banner-video-bg.jpg); }
a.banner-stock { background-image: url(../img/top/banner-stock-bg.jpg); }
*/


/* ===========================================================

  banner

=========================================================== */




/* -----------------------------------------------------------
  relation
----------------------------------------------------------- */

.banner-relation {
  display: block; padding: 2.0em 15px; margin: 0 -15px;
  background-color: rgba(238,240,244,1.00);
}

.style-banner-bottom {
  background-color: rgba(255, 255, 255);
}

.style-banner-bottom .banner-relation__inner {
  background-color: rgba(255, 255, 255);
}

.banner-relation__inner {
  display: flex; padding: 0; margin: 0 auto;
  background-color: rgba(238,240,244,1.00);
  flex-direction: column;
  max-width: 940px;
}
@media print, screen and (min-width: 992px) {
  .banner-relation__inner {
    flex-direction: row; justify-content: center;
    align-items: center;
  }
}
.banner-relation dl {
  display: block; padding: 10px; margin: 0;
}
.banner-relation dt {
  display: block; padding: 0; margin: 0;
  font-size: 1.2rem;
}
.banner-relation .banner-relation__title {
  display: table; padding: 0; margin: 0; width: 100%;
}
.banner-relation .banner-relation__title span {
  display: table-cell;
}
.banner-relation .banner-relation__title-text {
  width: 1%; white-space: nowrap; padding: 0 0.5em 0 0;
}
.banner-relation .banner-relation__title-deco { position: relative; }
.banner-relation .banner-relation__title-deco::before {
  display: block; width: 100%; height: 1px;
  position: absolute; left: 0; top: 50%;
  background-color: #ccc;
  content: "";
}

.banner-relation dd {
  display: block; padding: 0; margin: 0;
}
@media print, screen and (min-width: 992px) {
  .banner-relation dl { padding: 0 10px; }
}




.banner-relation ul {
  display: flex; padding: 0; margin: 0 -10px;
  justify-content: center;
  flex-direction: column;
}
.banner-relation li {
  display: block; padding: 10px; margin: 0 auto;
}
.banner-relation a {
  display: block; padding: 0; margin: 0;
  background-color: #fff; width: 100%;
  position: relative;
}

.banner-relation a::before {
  display: block; padding: 0; margin: 0;
  width: 8px; height: 8px;
  position: absolute; bottom: 10px; right: 10px;
  content: "";
  background: url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAgAAAAICAYAAADED76LAAAAAXNSR0IArs4c6QAAAEZJREFUGBl1jdsNACAIA8U4K0OxrFITSPHBD3ClRdpRqjoZCQMzkxCT5xCK92DonfgeATkpr6GGs5iekI6vF8XtywD4pUBb/Egd9eG6HRQAAAAASUVORK5CYII=);
  background-repeat: no-repeat;
  background-position: right center;
}

@media print, screen and (max-width: 576px) {
  .style-banner-bottom.banner-relation a { max-width: 300px; width: 100%; }
}

@media print, screen and (min-width: 576px) {
  .banner-relation a { width: 300px; }

  .style-banner-head.banner-relation a {
    width: 100%;
  }

  .style-banner-bottom.banner-relation a {
    width: 100%;
  }
}

@media print, screen and (max-width: 768px) {
  .style-banner-bottom.banner-relation a::before {
    display: none;
  }
}

@media print, screen and (min-width: 768px) {
  .banner-relation ul {
    flex-direction: row;
  }
  .banner-relation li { margin: 0;  width: 320px; }

  .style-banner-bottom.banner-relation ul {
    align-items: center;
  }

  .style-banner-bottom.banner-relation li {
    width: 240px;
    margin: 0;
    padding: 10px;
  }

  .style-banner-bottom.banner-relation a {
    width: 220px;
  }

  .style-banner-bottom.banner-relation a::before {
    display: none;
  }

  .style-banner-head.banner-relation li {
    width: 728px;
  }

  .style-banner-head.banner-relation a {
    width: 728px;
  }
}


  .main-visual__ticker h1 {
    background-color: #00a6e8;
    text-align: center;
    width: 160px;
    margin: 0;
    padding: 0;
    color: #fff;
    font-size: 18px;
    font-weight: bold;
  }

  .main-visual__ticker .main-visual__ticker-frame {
    width: calc(100% - 220px);
    overflow: hidden;
    position: relative;
    height: 45px;
    margin: 0 20px 0 0;
  }

  @media print, screen and (min-width: 1260px) {
  .main-visual__ticker {
    display: flex;
    width: 1200px;
    margin: 0 auto;
    z-index: 90;
    height: 46px;
    line-height: 46px;
    justify-content: space-between;
    font-size: 14px;
  }

    .main-visual__ticker .bx-wrapper {
      display: none!important;
    }

    .main-visual__ticker {
      line-height: 46px;
    }

    .js-slide-ticker {
      display: flex;
      position: absolute;
    }

    .js-slide-ticker li {
      padding-right: 100px;
    }

    .js-slide-ticker dl {
      white-space: nowrap;
    }

    .js-slide-ticker dt {
      position: relative;
      float: left;
      clear: both;
      text-align: left;
      width: 17em;
      margin: 0;
      padding: 0;
    }

    .js-slide-ticker dd {
      margin: 0;
      padding: 0 0 0 17em;
    }
  }

  .date-list-responsive-head > dl > dt {
    padding-right: 1.0em;
  }

  @media print, screen and (max-width: 1260px) {
    .main-visual__ticker {
      position: relative;
      display: block;
      top: inherit;
      left: inherit;
      transform: translateX(0);
      width: auto;
      height: auto;
    }

    .main-visual__ticker dl {
      width: 100%;
      white-space: normal;
      line-height: 2;
      text-align: left;
    }

    .main-visual__ticker dl dt {
      position: relative;
      width: 17em;
      padding: 0;
      margin: 0 0 5px;
    }

    .main-visual__ticker dl dd {
      white-space: normal;
      padding: 0;
      margin: 0;
      position: inherit!important;
    }
/*
    .main-visual__ticker dl dt span.sticker {
      position: absolute;
      top: 3px;
      right: 0;
      margin-top: 0;
    }
*/
    .main-visual__ticker .news-list__date {
      padding: 0;
      margin-right: 1.0em;
    }

    .main-visual__ticker h1 {
      width: 100%;
      margin: 0;
      padding: 2px 0;
      letter-spacing: 0.1em;
      line-height: 46px;
    }

    .js-slide-ticker__wrapinner {
      display: none;
    }

    .main-visual__ticker .main-visual__ticker-frame {
      width: 100%;
      padding: 20px;
      height: auto;
      overflow: auto;
    }

    .date-list-responsive-head > dl > dd {
      line-height: 1.5;
    }

    .main-visual__ticker .bx-wrapper {
      padding: 0 0 20px;
    }

    .main-visual__ticker .bx-wrapper .bx-controls {
      position: absolute;
      bottom: 0;
      width: 100%;
    }

    .main-visual__ticker .bx-wrapper .bx-controls .bx-controls-direction {
      position: relative;
      z-index: 9999999;
    }


    .main-visual__ticker .bx-wrapper .bx-prev {
      left: 50%;
      margin-left: -1px;
      transform: translateX(-100%);
    }

    .main-visual__ticker .bx-wrapper .bx-prev:after {
      margin-top: -4px;
      margin-left: -4px;
      border-bottom: 1px solid #fff;
      border-left: 1px solid #fff;
      -webkit-transform: rotate(45deg);
      transform: rotate(45deg);
    }

    .main-visual__ticker .bx-wrapper .bx-prev:after, .main-visual__ticker .bx-wrapper .bx-next:after {
      position: absolute;
      top: 50%;
      left: 50%;
      content: "";
      display: inline-block;
      width: 8px;
      height: 8px;
    }

    .main-visual__ticker .bx-wrapper .bx-next {
      right: 50%;
      margin-right: -1px;
      transform: translateX(100%);
    }

    .main-visual__ticker .bx-wrapper .bx-next:after {
      margin-top: -4px;
      margin-left: -4px;
      border-top: none;
      border-right: 1px solid #fff;
      border-top: 1px solid #fff;
      -webkit-transform: rotate(45deg);
      transform: rotate(45deg);
    }

    .main-visual__ticker .bx-wrapper .bx-prev:after, .main-visual__ticker .bx-wrapper .bx-next:after {
        position: absolute;
        top: 50%;
        left: 50%;
        content: "";
        display: inline-block;
        width: 8px;
        height: 8px;
    }

    .bx-wrapper .bx-has-controls-direction a {
      position: absolute;
      top: inherit;
      bottom: 0;
      margin-top: 0;
      outline: 0;
      width: 80px!important;
      height: 20px;
      line-height: 20px;
      text-align: center;
      text-indent: -9999px;
      z-index: 9999999;
      opacity: 1.0;
      background-color: #00a6e8;
      background-image: none;
    }

  }


