@charset "UTF-8";

/*
メインコンテンツ
*/

/* slick CORE */
.slick-slider { position: relative; display: block; box-sizing: border-box; user-select: none; touch-action: pan-y; -webkit-touch-callout: none; -khtml-user-select: none; -webkit-tap-highlight-color: transparent;}
.slick-list { position: relative; display: block; overflow: hidden; margin: 0; padding: 0;}
.slick-list:focus {outline: none;}
.slick-list.dragging {cursor: pointer;}
.slick-slider .slick-track,.slick-slider .slick-list {transform: translate3d(0, 0, 0);}
.slick-track {position: relative;top: 0;left: 0;display: block;margin-left: auto;margin-right: auto;}
.slick-track:before,.slick-track:after {display: table;content: '';}
.slick-track:after {clear: both;}
.slick-loading .slick-track {visibility: hidden;}
.slick-slide {display: none;float: left;height: 100%;min-height: 1px;}
[dir='rtl'] .slick-slide {float: right;}
.slick-slide img {display: block;}
.slick-slide.slick-loading img {display: none;}
.slick-slide.dragging img {pointer-events: none;}
.slick-initialized .slick-slide {display: block;}
.slick-loading .slick-slide {visibility: hidden;}
.slick-vertical .slick-slide {display: block;height: auto;border: 1px solid transparent;}
.slick-arrow.slick-hidden {display: none;}

/* ドットのCSS */
.slick-dots{position: absolute;display: block;width: 100%;padding: 0;margin: 0;list-style: none;text-align: center;}
.slick-dots li{position: relative;display: inline-block;width: 20px;height: 20px;margin: 0 5px;padding: 0;cursor: pointer;}
.slick-dots li button{font-size: 0;line-height: 0;display: block;width: 20px;height: 20px;padding: 5px;cursor: pointer;color: transparent;border: 0;outline: none;background: transparent;}
.slick-dots li button:hover,.slick-dots li button:focus{outline: none;}
.slick-dots li button:hover:before,.slick-dots li button:focus:before{opacity: 1;}
/* スライドが一枚の時ドットを消す */
.slick-dots > li:first-child:last-child {
  display: none;
}
/* ドットのデザイン */
.JPX-top-slide .slick-dots li button:before{font-family: 'slick';font-size: 6px;line-height: 20px;position: absolute;top: 0;left: 0;width: 8px;height: 8px;content: "";text-align: center;-webkit-font-smoothing: antialiased;-moz-osx-font-smoothing: grayscale;background-color: #E0E0E0;border-radius: 50%;}
.JPX-top-slide .slick-dots li.slick-active button:before{background-color: #E60012;}

.JPX-corporate-slide .slick-dots li button:before{font-family: 'slick';font-size: 6px;line-height: 20px;position: absolute;top: 0;left: 0;width: 8px;height: 8px;content: "";text-align: center;-webkit-font-smoothing: antialiased;-moz-osx-font-smoothing: grayscale;background-color: #E0E0E0;border-radius: 50%;}
.JPX-corporate-slide .slick-dots li.slick-active button:before{background-color: #E60012;}
/* /ドットのデザイン */

/* aタグのポインターイベントの処理 */
.link-window-inline {
  cursor: pointer;
}


/*
緊急メッセージ
*/
.JPX-emergency-wrapper {
  background-color: #F7F733;
  padding: 22px 15px;
  border-radius: 4px;
}

.JPX-emergency {
  color: #000000;
  margin-top: 14px;
}

.JPX-emergency:first-child {
  margin-top: 0px;
}

.JPX-emergency a {
  text-decoration: none;
  color: #000000;
}

.JPX-emergency a.-is-blank .JPX-emergency-title span {
  background: url(../fonts/icn-blank.svg) right center no-repeat;
  padding-right: 16px;
  background-size: 12px;
}

.JPX-emergency-date {
  font-size: 12px;
  color: #666666;
  line-height: 15px;
  margin-bottom: 6px;
}

.JPX-emergency-title {
  font-size: 14px;
  font-weight: 500;
  line-height: 20px;
}

.JPX-emergency-text {
  font-size: 12px;
  line-height: 18px;
  margin-top: 6px;
}

@media screen and (min-width:769px) {
  .JPX-emergency-wrapper {
    padding: 22px 32px;
  }
  
  .JPX-emergency a:hover {
    text-decoration: underline;
    color: #E60012;
  }
  
  .JPX-emergency a:hover .JPX-emergency-date {
    color: #E60012;
  }
  
  .JPX-emergency a.-is-blank .JPX-emergency-title span {
    padding-right: 18px;
    background-size: 14px;
  }
  
  .JPX-emergency a.-is-blank:hover .JPX-emergency-title span {
    background: url("../fonts/icn-blank-hover.svg") right center no-repeat;
    padding-right: 18px;
    background-size: 14px;
  }
  
  .JPX-emergency-date {
    font-size: 14px;
  }
  
  .JPX-emergency-title {
    font-size: 16px;
  }
  
  .JPX-emergency-text {
    font-size: 14px;
    line-height: 21px;
    margin-top: 11px;
  }
}
/* /緊急メッセージ */


/*
メインビジュアル スライド
*/
.JPX-top-slide {
  overflow: hidden;
  padding-bottom: 32px;
  padding-top: 16px;
}

.JPX-top-slide .slick-list {
  margin: 0 24px;
  overflow: visible;
}

.JPX-top-slide .slick-prev.slick-arrow {
  font-size: 16px;
}

.JPX-top-slide-box {
  position: relative;
}

.JPX-top-slide .slick-prev.slick-arrow,.JPX-top-slide .slick-next.slick-arrow {
  position: absolute;
  display: none !important;
  width: 24px;
  height: 24px;
  top: 50%;
  transform: translate(0, -50%);
  z-index: 1;
  border-radius: 50%;
  border: #d1d1d1 solid 1px;
  background: #ffffff;
}

.JPX-top-slide .slick-prev.slick-arrow {
  left: 4px;
}

.JPX-top-slide .slick-next.slick-arrow {
  right: 4px;
}

.JPX-top-slide .slick-prev.slick-arrow::before {
  content: "";
  position: absolute;
  display: block;
  background: url(../fonts/icn-right-arrow_gray.svg) center center no-repeat;
  background-size: 12px 12px;
  width: 12px;
  height: 12px;
  top: 50%;
  right: 50%;
  transform: translate(50%, -50%) rotate(180deg);
}

.JPX-top-slide .slick-next.slick-arrow::before {
  content: "";
  position: absolute;
  display: block;
  background: url(../fonts/icn-right-arrow_gray.svg) center center no-repeat;
  background-size: 12px 12px;
  width: 12px;
  height: 12px;
  top: 50%;
  right: 50%;
  transform: translate(50%, -50%);
}

.JPX-top-slide .slick-arrow span {
  display: none;
}

.JPX-top-slide-data.slick-slide {
  margin: 0 8px;
}

.JPX-top-slide-img {
  border: #d1d1d1 solid 1px;
  border-radius: 4px;
  overflow: hidden;
}

.JPX-top-slide-img img {
  width: 100%;
  vertical-align: bottom;
}

.JPX-top-slide .JPX-dots .slick-active button {
  background-color: #E60012;
}

.JPX-top-slide .slick-dots {
  display: table;
  margin-top: 8px;
}

.JPX-top-slide .slick-dots li {
  vertical-align: top;
  margin: 0 12px 0 0;
  width: 8px;
  height: 8px;
}

.JPX-top-slide .slick-dots li button {
  width: 8px;
  height: 8px;
}

/* コーポレートスライド */
.JPX-corporate-slide {
  overflow: hidden;
  padding-bottom: 32px;
  position: relative;
}

.JPX-corporate-slide .slick-list {
  margin: 0;
  overflow: visible;
}

.JPX-corporate-slide .slick-prev.slick-arrow {
  font-size: 16px;
}

.JPX-corporate-slide-box {
  position: relative;
}

.JPX-corporate-slide .slick-prev.slick-arrow,.JPX-corporate-slide .slick-next.slick-arrow {
  position: absolute;
  display: none !important;
  width: 24px;
  height: 24px;
  top: 50%;
  transform: translate(0, -50%);
  z-index: 1;
  border-radius: 50%;
  border: #d1d1d1 solid 1px;
  background: #ffffff;
}

.JPX-corporate-slide .slick-prev.slick-arrow {
  left: 4px;
}

.JPX-corporate-slide .slick-next.slick-arrow {
  right: 4px;
}

.JPX-corporate-slide .slick-prev.slick-arrow::before {
  content: "";
  position: absolute;
  display: block;
  background: url(../fonts/icn-right-arrow_gray.svg) center center no-repeat;
  background-size: 12px 12px;
  width: 12px;
  height: 12px;
  top: 50%;
  right: 50%;
  transform: translate(50%, -50%) rotate(180deg);
}

.JPX-corporate-slide .slick-next.slick-arrow::before {
  content: "";
  position: absolute;
  display: block;
  background: url(../fonts/icn-right-arrow_gray.svg) center center no-repeat;
  background-size: 12px 12px;
  width: 12px;
  height: 12px;
  top: 50%;
  right: 50%;
  transform: translate(50%, -50%);
}

.JPX-corporate-slide .slick-arrow span {
  display: none;
}

.JPX-corporate-slide-data.slick-slide {
  margin: 0;
}

.JPX-corporate-slide-img {
  overflow: hidden;
}

.JPX-corporate-slide-img img {
  width: 100%;
  vertical-align: bottom;
  object-fit: cover;
}

.JPX-corporate-slide .JPX-dots .slick-active button {
  background-color: #E60012;
}

.JPX-corporate-slide .slick-dots {
  display: table;
  margin-top: 8px;
}

.JPX-corporate-slide .slick-dots li {
  vertical-align: top;
  margin: 0 12px 0 0;
  width: 8px;
  height: 8px;
}

.JPX-corporate-slide .slick-dots li button {
  width: 8px;
  height: 8px;
}

.JPX-corporate-slide-box .JPX-corporate-slide-data {
  display: none;
}
.JPX-corporate-slide-box .JPX-corporate-slide-data:first-child {
  display: block;
}
.JPX-corporate-slide-box.slick-initialized .JPX-corporate-slide-data {
  display: block;
}

.JPX-top-slide-box .JPX-top-slide-data {
  display: none;
}
.JPX-top-slide-box {
  display: flex;
  justify-content: center;
}
.JPX-top-slide-box .JPX-top-slide-data:first-child {
  display: block;
  text-align: center;
  max-width: 1124px;
}
.JPX-top-slide-box.slick-initialized {
  display: block;
}
.JPX-top-slide-box.slick-initialized .JPX-top-slide-data {
  display: block;
}

@media screen and (min-width:769px) {
  .JPX-top-slide {
    margin-bottom: 24px;
    padding-top: 32px;
  }

  .JPX-top-slide-box {
    width: 100%;
  }

  .JPX-top-slide button:hover {
    cursor: pointer;
  }

  .JPX-top-slide .slick-prev.slick-arrow:hover::before,.JPX-top-slide .slick-next.slick-arrow:hover::before {
    background: url(../fonts/icn-right-arrow_hover.svg) center center no-repeat;
    background-size: 12px 12px;
  }

  .JPX-top-slide .slick-list {
    margin: 0 auto;
    max-width: 1164px;
  }

  .JPX-top-slide-data.slick-slide {
    margin: 0 19px;
  }

  .JPX-top-slide .slick-prev.slick-arrow,.JPX-top-slide .slick-next.slick-arrow {
    display: block !important;
    width: 32px;
    height: 32px;
  }

  .JPX-top-slide .slick-prev.slick-arrow {
    left: 22px;
  }
  
  .JPX-top-slide .slick-next.slick-arrow {
    right: 22px;
  }

  .JPX-top-slide .slick-dots {
    margin-top: 16px;
  }

  /* コーポレートスライド */
  .JPX-corporate-slide {
    margin-bottom: 24px;
  }

  .JPX-corporate-slide-box {
    width: 100%;
  }

  .JPX-corporate-slide button:hover {
    cursor: pointer;
  }

  .JPX-corporate-slide .slick-prev.slick-arrow:hover::before,.JPX-corporate-slide .slick-next.slick-arrow:hover::before {
    background: url(../fonts/icn-right-arrow_hover.svg) center center no-repeat;
    background-size: 12px 12px;
  }

  .JPX-corporate-slide .slick-list {
    margin: 0 auto;
    width: 100%;
  }

  .JPX-corporate-slide .slick-prev.slick-arrow,.JPX-corporate-slide .slick-next.slick-arrow {
    display: block !important;
    width: 32px;
    height: 32px;
  }

  .JPX-corporate-slide .slick-prev.slick-arrow {
    left: 22px;
  }
  
  .JPX-corporate-slide .slick-next.slick-arrow {
    right: 22px;
  }

  .JPX-corporate-slide .slick-dots {
    margin-top: 16px;
  }

  .JPX-corporate-slide-img img {
    max-height: 480px;
  }

  .market-slide .JPX-corporate-slide-img img {
    max-height: 372px;
  }
}

@media screen and (min-width:1180px) {

  .JPX-top-slide .slick-prev.slick-arrow {
    left: calc(((100% - 1088px) / 2 ) - 32px);
  }
  
  .JPX-top-slide .slick-next.slick-arrow {
    right: calc(((100% - 1088px) / 2 ) - 32px);
  }
}
/* /メインビジュアル スライド */

/*
株式関連
*/
.JPX-ir-wrapper {
  background-color: #F7F7F7;
  margin: 0 -16px;
}

.JPX-ir-box {
  padding: 10px 16px 24px;
  border-top: #d1d1d1 solid 1px;
}

.JPX-ir-box:first-child {
  border-top: none;
}

.JPX-ir-title {
  position: relative;
  font-size: 14px;
  line-height: 17px;
  padding: 0 0 0 31px;
  margin-bottom: 16px;
  font-weight: 500;
  color: #000;
}

.JPX-ir-title.-is-stock::before {
  content: "";
  position: absolute;
  display: block;
  background: url(../fonts/icn_stock.svg) center center no-repeat;
  background-size: contain;
  width: 24px;
  height: 24px;
  top: 50%;
  left: 0px;
  transform: translate(0, -50%);
}

.JPX-ir-title.-is-feature::before {
  content: "";
  position: absolute;
  display: block;
  background: url(../fonts/icn_stock.svg) center center no-repeat;
  background-size: contain;
  width: 24px;
  height: 24px;
  top: 50%;
  left: 0px;
  transform: translate(0, -50%);
}

.JPX-ir-list {
  display: flex;
  flex-flow: wrap;
  justify-content: flex-start;
  align-items: center;
  margin-bottom: 16px;
}

.JPX-ir-list:nth-child(3) {
  margin-bottom: 0px;
}

.JPX-ir-list-title {
  font-size: 12px;
  line-height: 14px;
  width: 100%;
  margin-bottom: 8px;
  font-weight: 500;
}

.JPX-ir-list-title a {
  position: relative;
  display: inline-block;
  margin-right: 6px;
  width: 14px;
  height: 14px;
  text-indent: -9999px;
  background: url(../fonts/icn_rss.svg) left center no-repeat;
  background-size: 14px 14px;
}

.JPX-ir-list-title img {
  vertical-align: bottom;
  width: 14px;
  height: 14px;
}

.JPX-ir-name {
  background-color: #ffffff;
  border-bottom: #999999 solid 1px;
  width: 78%;
  flex-grow: 1;
  margin-bottom: 5px;
}

.JPX-ir-name li {
  display: flex;
  position: relative;
  padding: 5px 8px 5px 8px;
  font-size: 12px;
  line-height: 14px;
  border-bottom: #cccccc solid 1px;
  box-sizing: border-box;
}

.JPX-ir-name li:last-child {
  border-bottom: none;
}

.JPX-ir-name li a {
  display: block;
  position: relative;
  margin: -5px -8px;
  padding: 5px 20px 5px 8px;
  box-sizing: border-box;
  flex-grow: 1;
}

.JPX-ir-name li a::before {
  content: "";
  display: block;
  position: absolute;
  background: url(../fonts/icn-right-arrow_gray.svg) center center no-repeat;
  background-size: contain;
  width: 10px;
  height: 10px;
  top: 50%;
  transform: translate(0, -50%);
  right: 5px;
}

.JPX-ir-name a {
  display: block;
  text-decoration: none;
  color: #000000;
  width: 100%;
}

.JPX-ir-list-btn {
  margin-left: 8px;
  margin-bottom: 5px;
}

.JPX-ir-list-btn a {
  position: relative;
  display: block;
  font-size: 10px;
  font-weight: 600;
  padding: 5px 28px 5px 11px;
  line-height: 11px;
  text-decoration: none;
  color: #000000;
  border: #d1d1d1 solid 1px;
  border-radius: 14px;
  box-sizing: border-box;
  width: fit-content;
  background: url(../fonts/icn-circle-arw_gray.svg) 36px 5px no-repeat #ffffff;
  background-size: 12px 12px;
}

@media screen and (min-width:769px) {
  .JPX-ir-wrapper {
    margin: 0;
  }
  
  .JPX-ir-box {
    padding: 24px 32px 24px 32px;
    border-top: #d1d1d1 solid 1px;
  }
  
  .JPX-ir-title {
    font-size: 16px;
    line-height: 25px;
    padding: 0 0 0 40px;
    min-width: 224px;
    box-sizing: border-box;
  }
  
  .JPX-ir-title.-is-stock::before {
    width: 32px;
    height: 32px;
  }
  
  .JPX-ir-title.-is-feature::before {
    width: 32px;
    height: 32px;
  }

  .JPX-ir-data {
    display: flex;
    flex-flow: wrap;
    justify-content: flex-start;
    align-items: flex-start;
    margin: 0 auto;
  }

  .JPX-ir-list {
    flex-flow: nowrap;
    align-items: flex-start;
    margin-left: 32px;
    margin-bottom: 16px;
    width: calc(50% - 32px) ;
  }
  
  .JPX-ir-list-title {
    position: relative;
    font-size: 14px;
    width: 72px;
    line-height: 15px;
    margin-top: 6px;
    margin-bottom: 0;
    flex-shrink: 0;
  }

  .JPX-ir-list-title a {
    position: absolute;
    left: -22px;
    background-size: 16px 16px;
  }

  .JPX-ir-list-title a:hover {
    background: url(../fonts/icn_rss_hover.svg) left center no-repeat;
    background-size: 16px 16px;
  }
  
  .JPX-ir-list-title img {
    position: absolute;
    top: 0px;
    left: -24px;
    width: 16px;
    height: 16px;
  }

  .JPX-ir-name {
    width: auto;
  }

  .JPX-ir-name li {
    font-size: 14px;
    line-height: 15px;
  }

  .JPX-ir-name li a::before {
    width: 12px;
    height: 12px;
  }

  .JPX-ir-name a:hover {
    color: #e60012;
  }

  .JPX-ir-name a:hover::before {
    background: url(../fonts/icn-right-arrow_hover.svg) center center no-repeat;
    background-size: contain;
  }

  .JPX-ir-list-btn {
    flex-shrink: 0;
  }

  .JPX-ir-list-btn a {
    font-size: 12px;
    padding: 6px 33px 6px 15px;
    line-height: 13px;
    background: url(../fonts/icn-circle-arw_gray.svg) 45px 7px no-repeat #ffffff;
    background-size: 12px 12px;
  }

  .JPX-ir-list-btn a:hover {
    background: url(../fonts/button-hover.svg) 45px 7px no-repeat #ffffff;
    border: #e60012 solid 1px;
    color: #e60012;
  }
}
/* /株式関連 */

/*
注意リスト
*/
.JPX-caution-wrapper {
  background: rgba(230, 0, 18, 0.05);
}

.JPX-caution-label {
  font-size: 10px;
  width: fit-content;
  text-align: center;
  background-color: #E60012;
  border-radius: 12px;
  padding: 0px 10px;
  margin-right: 7px;
  margin-bottom: 5px;
  color: #ffffff;
  flex-shrink: 0;
}

.JPX-caution-title {
  font-size: 14px;
  line-height: 17px;
}

.-is-new::after {
  content: "NEW";
  color: #ffffff;
  background-color: #E60012;
  font-size: 10px;
  padding: 0px 4px 2px;
  border-radius: 4px;
  margin-left: 8px;
  position: relative;
  top: -2px;
}

.JPX-result-contents-title.-is-new::after {
  top: -3px;
}
.JPX-sub-head-title .-is-new::after {
  top: -6px;
}

.JPX-caution {
  margin: -36px -16px 0;
}

.JPX-caution-link {
  border-top: 1px solid #d1d1d1;
}

.JPX-caution-link:first-child {
  border-top: none;
}

.JPX-caution-link a {
  position: relative;
  display: flow;
  flex-flow: nowrap;
  justify-content: flex-start;
  align-items: center;
  padding: 15px 34px 15px 15px;
  text-decoration: none;
  color: #000000;
  background-color: #fef3f3;
}

.JPX-caution-link a::before {
  content: "";
  position: absolute;
  display: block;
  background: url(../fonts/icn-right-arrow_gray.svg) center center no-repeat;
  background-size: contain;
  width: 12px;
  height: 12px;
  top: 50%;
  right: 16px;
  transform: translate(0, -50%);
}

.JPX-caution-link a.-is-blank .JPX-caution-title span {
  background: url(../fonts/icn-blank.svg) right center no-repeat;
  padding-right: 16px;
  background-size: 12px;
}

@media screen and (min-width:769px) {
  .JPX-caution-link {
    margin: 0;
  }

  .JPX-caution-link a {
    padding: 20px 32px;
	display: flex;
  }

  .JPX-caution-link a:hover {
    color: #E60012;
    text-decoration: underline;
    background: rgba(230, 0, 18, 0.04);
  }

  .JPX-caution-link a:hover::before {
    background: url(../fonts/icn-right-arrow_hover.svg) center center no-repeat;
    background-size: contain;
  }

  .JPX-caution-link a.-is-blank .JPX-caution-title span {
    padding-right: 18px;
    background-size: 14px;
  }

  .JPX-caution-link a.-is-blank:hover .JPX-caution-title span {
    background: url(../fonts/icn-blank-hover.svg) right center no-repeat;
    padding-right: 18px;
    background-size: 14px;
  }

  .JPX-caution-title {
    font-size: 16px;
    line-height: 19px;
  }

  .-is-new::after {
    font-size: 12px;
    padding: 0px 4px 2px;
    margin-left: 8px;
  }

  .JPX-caution-label {
    font-size: 12px;
    border-radius: 12px;
    padding: 2px 12px;
    margin-right: 16px;
	margin-bottom: 0;
  }

  .JPX-caution {
    margin: -48px 0 0;
  }

  .JPX-caution-link a:hover {
    background-color: #ffe8ea;
  }
}
/* /注意リスト */

/*
株式関連情報
*/
.JPX-related-info {
  margin: 40px 16px;
}

.JPX-section-title-wrap {
  overflow: hidden;
}

.JPX-section-title {
  position: relative;
  margin-bottom: 24px;
  font-size: 18px;
  font-weight: 700;
  padding-bottom: 8px;
  color: #000000;
  border-bottom: #d1d1d1 solid 4px;
}

.JPX-section-title::before {
  content: "";
  position: absolute;
  display: block;
  width: 167px;
  height: 4px;
  bottom: -4px;
  left: -3px;
  background: linear-gradient(to right, #e60012, #a4000d);
  transform: skewX(-30deg);
}


.JPX-companies-info-data a {
  display: flex;
  flex-flow: nowrap;
  justify-content: flex-start;
  align-items: center;
  padding: 16px 12px 14px 24px;
  border: #E60012 solid 1px;
  border-radius: 4px;
  text-decoration: none;
  color: #000000;
  margin-bottom: 16px;
}

.JPX-companies-info-data::before {
  content: "";
  position: absolute;
  display: block;
  background: url(../fonts/icn-right-arrow_hover.svg) center center no-repeat;
  background-size: 10px 10px;
  width: 10px;
  height: 10px;
  top: 50%;
  right: 12px;
  transform: translate(0, -50%);
}

.JPX-companies-info-data span {
  font-size: 16px;
  font-weight: 500;
}

.JPX-companies-info-data {
  position: relative;
  font-size: 12px;
  box-shadow: 0px 1px 3px rgba(0, 0, 0, 0.08);

}

.JPX-companies-info-img {
  margin-right: 24px;
}

.JPX-companies-info-img img {
  vertical-align: bottom;
  width: 48px;
  height: 48px;
}

.JPX-name-search-box {
  background-color: #F7F7F7;
  border-radius: 4px;
  border: #d1d1d1 solid 1px;
  padding: 13px 16px 19px;
  box-shadow: 0px 1px 3px rgba(0, 0, 0, 0.08);
}

.JPX-name-search-title-img {
  display: flex;
  flex-flow: nowrap;
  justify-content: flex-start;
  align-items: center;
}

.JPX-name-search-img {
  margin-right: 24px;
}

.JPX-name-search-img img {
  width: 48px;
  height: 48px;
}

.JPX-companies-info-img span {
  display: block;
  background: url(../fonts/icn_disclosure.svg) center center no-repeat;
  background-size: 48px 48px;
  width: 48px;
  height: 48px;
}

.JPX-companies-info-img span span {
  display: none;
}

.JPX-companies-info-title {
  font-size: 16px;
  font-weight: 500;
  color: #000;
}

.JPX-companies-info-title span {
  font-size: 12px;
}

.JPX-input-box {
  position: relative;
}

.JPX-input-box .side-search-wrap02 {
  position: relative;
}

.JPX-input-box .side-search-wrap03 {
  margin: 8px 0 9px;
}

.JPX-input-box .side-search-wrap03 input {
  position: relative;
  width: 100%;
  height: 32px;
  box-sizing: border-box;
  padding-left: 12px;
  font-size: 12px;
  border: #d1d1d1 solid 1px;
  border-radius: 4px;
}

.JPX-input-box .side-search-input-btn {
  position: absolute;
  top: 50%;
  right: 8px;
  transform: translate(0, -50%);
  width: 17px;
  height: 17px;
}

.JPX-input-box .side-search-input-btn input {
  width: 17px;
  height: 17px;
}

.JPX-name-search-link-data {
  display: flex;
  flex-flow: wrap;
  justify-content: flex-start;
  align-items: flex-start;
}

.JPX-name-search-data a.-is-blank {
  position: relative;
  font-size: 12px;
  text-decoration: none;
  color: #000000;
  padding-right: 16px;
  margin: 0 14px 7px 0;
  display: block;
}

.JPX-name-search-data a.-is-blank::before {
  content: "";
  display: block;
  position: absolute;
  background: url(../fonts/icn-blank.svg) center center no-repeat;
  background-size: contain;
  width: 10px;
  height: 10px;
  top: 50%;
  right: 0px;
  transform: translate(0, -50%);
}

.JPX-name-search-data a.-is-default {
  position: relative;
  font-size: 12px;
  text-decoration: none;
  color: #000000;
  padding-right: 15px;
  margin: 0 16px 7px 0;
}

.JPX-name-search-data a.link-icon-inline {
  margin-right: 10px;
}

.JPX-name-search-data a.-is-default::after {
  content: "";
  position: absolute;
  display: block;
  background: url(../fonts/button-pc.svg) center center no-repeat;
  background-size: contain;
  width: 10px;
  height: 10px;
  top: 50%;
  right: 0;
  transform: translate(0, -50%);
}

@media screen and (max-width:330px) {
  .JPX-companies-info-img {
    margin-right: 12px;
  }

  .JPX-companies-info-data a {
    padding: 16px 12px 14px 12px;
  }
}

@media screen and (min-width:769px) {
  .JPX-related-info {
    margin: 80px auto;
  }

  .JPX-section-title {
    font-size: 24px;
    padding-bottom: 16px;
    margin-bottom: 40px;
  }

  .JPX-section-title::before {
    width: 414px;
  }

  .JPX-related-info-box {
    max-width: 1312px;
    margin: 0 auto;
  }

  .JPX-companies-info-data {
    position: relative;
    margin-bottom: 24px;
    border: #E60012 solid 1px;
    border-radius: 4px;
    padding-left: 0;
  }

  .JPX-companies-info-data::before {
    width: 12px;
    height: 12px;
  }

  .JPX-companies-info-data a {
    height: 100%;
    margin: 0;
    padding: 0 32px 0;
    border: none;
  }

  .JPX-companies-info-data:hover::before {
    background: url(../fonts/icn-right-arrow_white.svg) center center no-repeat;
  }

  .JPX-companies-info-data a:hover {
    background: linear-gradient(#e60012 0%, #a3000d 100%);
    color: #ffffff;
  }

  .JPX-companies-info-img {
    margin-right: 32px;
  }

  .JPX-companies-info-img span {
    display: block;
    background: url(../fonts/icn_disclosure.svg) center center no-repeat;
    background-size: 64px 64px;
    width: 64px;
    height: 64px;
  }

  .JPX-companies-info-data a:hover .JPX-companies-info-img span {
    background: url(../fonts/icn_disclosure_w.svg) center center no-repeat;
    background-size: 64px 64px;
  }

  .JPX-companies-info-title {
    padding-right: 16px;
    font-size: 14px;
  }

  .JPX-companies-info-data a:hover .JPX-companies-info-title {
    color: #ffffff;
  }

  .JPX-name-search-box {
    display: flex;
    flex-flow: nowrap;
    justify-content: flex-start;
    align-items: center;
    padding: 23px 16px;
    flex-grow: 1;
  }

  .JPX-name-search-img img {
    width: 64px;
    height: 64px;
  }

  .JPX-name-search-title-img {
    margin-right: 8px;
    flex-shrink: 0;
  }

  .JPX-name-search-data {
    flex-grow: 1;
  }

  .JPX-companies-info-title {
    font-size: 20px;
  }

  .JPX-companies-info-title span {
    font-size: 14px;
    padding-right: 0;
  }

  .JPX-name-search-img {
    margin-right: 16px;
    flex-shrink: 0;
  }

  .JPX-name-search-img img {
    width: 64px;
    height: 64px;
  }

  .JPX-input-box {
    position: relative;
  }
  
  .JPX-input-box .side-search-wrap02 {
    position: relative;
  }
  
  .JPX-input-box .side-search-wrap03 {
    margin: 0 0 9px;
  }
  
  .JPX-input-box .side-search-wrap03 input {
    position: relative;
    width: 100%;
    height: 32px;
    padding: 19px 0;
    padding-left: 16px;
    font-size: 14px;
  }
  
  .JPX-input-box .side-search-input-btn {
    right: 14px;
    width: 20px;
    height: 20px;
  }
  
  .JPX-input-box .side-search-input-btn input {
    width: 22px;
    height: 22px;
  }

  .JPX-name-search-link-data a:hover {
    color: #E60012;
    text-decoration: underline;
  }

  .JPX-name-search-link-data a.-is-blank:hover::before {
    background: url(../fonts/icn-blank-hover.svg) center center no-repeat;
  }

  .JPX-name-search-link-data a.-is-default:hover::after {
    background: url(../fonts/button-pc-hover.svg) center center no-repeat;
  }

  .JPX-name-search-data a.-is-blank {
    font-size: 14px;
    margin: 0 24px 7px 0;
  }

  .JPX-name-search-data a.link-icon-inline {
    font-size: 14px;
  }

  .JPX-name-search-data a.-is-blank::before {
    width: 12px;
    height: 12px;
    right: -2px;
  }

  .JPX-name-search-data a.-is-default {
    font-size: 14px;
    margin: 0 24px 7px 0;
  }

  .JPX-name-search-data a.-is-default::after {
    width: 12px;
    height: 12px;
    right: -6px;
  }
}

@media screen and (min-width:990px) {
  .JPX-related-info-box {
    display: flex;
    flex-flow: nowrap;
    justify-content: space-between;
    align-items: stretch;
    margin: 0 0 0 0;
  }
  .JPX-companies-info-data {
    margin-bottom: 0;
    width: calc((40%));
    margin-left: 0;
    flex-shrink: 0;
  }
  .JPX-name-search-box {
    padding: 24px 32px;
    width: calc(( 60% ) - 32px);
    flex-grow: 0;
    margin-right: 0;
    box-sizing: border-box;
    flex-shrink: 0;
  }
  .JPX-name-search-title-img {
    margin-right: 32px;
  }
  .JPX-name-search-img img {
    width: 64px;
    height: 64px;
  }
}
/* /株式関連情報 */

/* ボタン */
.JPX-sitelist-btn {
  margin: 16px auto;
  width: fit-content;
}
.JPX-sitelist-btn.middle {
  margin: 16px auto 40px;
}

.JPX-btn {
  position: relative;
  display: inline-block;
  font-size: 14px;
  text-decoration: none;
  color: #333;
  line-height: 14px;
  padding: 7px 30px 7px 12px;
  border: #d1d1d1 solid 1px;
  border-radius: 16px;
  background-color: #ffffff;
  box-sizing: border-box;
  font-weight: 500;
  width: 100%;
}

.JPX-btn.-is-red {
  background-color: #e60012;
  color: #ffffff!important;
  padding: 10px 16px;
  border: none;
}

.JPX-btn.-is-red::before {
  display: none;
}

.JPX-btn.-is-noevent {
  pointer-events: none;
  background-color: #E0E0E0;
  padding: 7px 0;
}

.JPX-btn.-is-noevent::before {
  display: none;
}

.JPX-btn.-is-ready {
  pointer-events: none;
  background-color: inherit;
  color: #e60012!important;
  border: none;
  padding: 7px 0;
}

.JPX-btn.-is-ready::before {
  display: none;
}

.JPX-btn.-is-main-title {
  position: absolute;
  width: fit-content;
  top: 0;
  right: 0;
  font-size: 12px;
  line-height: 12px;
  padding: 5px 30px 5px 12px;
  margin-top: 3px;
}

.headline-title-wrap:has(.-is-main-title) {
  padding-top: 30px!important;
}

.JPX-btn::before {
  position: absolute;
  content: "";
  background: url(../fonts/icn-circle-arw_gray.svg) center center no-repeat;
  background-size: contain;
  width: 12px;
  height: 12px;
  top: 50%;
  transform: translate(0, -50%);
  right: 13px;
}

.JPX-ms-wrapper-subitem:nth-child(3) .JPX-sitelist-btn:first-child {
  margin: 0 auto;
}

.JPX-ms-wrapper-subitem .JPX-sitelist-btn {
  margin: 8px auto 0;
  width: 218px;
  text-align: center;
}

@media screen and (min-width:769px) {
  .JPX-sitelist-btn,
  .JPX-sitelist-btn.middle {
    margin: 32px 0 0 auto;
  }

  .JPX-btn.-is-noevent {
    padding: 7px 0;
    width: fit-content;
    font-size: 14px;
    padding: 10px 16px;
  }

  .JPX-btn.-is-main-title {
    top: 0;
    padding: 10px 37px 10px 16px;
    font-size: 14px;
    line-height: 14px;
    margin-top: 0;
  }

  .headline-title-wrap:has(.-is-main-title) {
    padding-top: 0px!important;
  }

  .JPX-heading-h1-inner:has(.-is-main-title) {
    padding-top: 0;
  }

  .JPX-btn {
    line-height: 14px;
    padding: 10px 37px 10px 16px;
    border-radius: 20px;
  }

  .JPX-btn:hover {
    color: #e60012;
    border: #e60012 solid 1px;
  }

  .JPX-btn.-is-red:hover {
    color: #ffffff;
    border: none;
    opacity: 0.5;
  }

  .JPX-btn:hover::before {
    background: url(../fonts/button-hover.svg) center center no-repeat;
    background-size: contain;
    width: 14px;
    height: 14px;
  }

  .JPX-btn::before {
    width: 14px;
    height: 14px;
  }

  .JPX-ms-wrapper .JPX-sitelist-btn {
    margin: 16px 0 0 auto;
  }

  .JPX-ms-wrapper-subitem:nth-child(3) .JPX-sitelist-btn:first-child {
    margin: 16px 0 0 auto;
  }

  .JPX-ms-wrapper-subitem .JPX-sitelist-btn {
    margin: 16px 0 0 auto;
    width: fit-content;
  }

  .JPX-ms-wrapper-subitem .JPX-sitelist-btn:nth-child(n+2) {
    margin-top: 10px;
  }
}

@media screen and (min-width:1025px) {
  .JPX-btn.-is-main-title {
    z-index: 1;
    top: 16px;
  }
}
/* /ボタン */

/*
マーケットサマリー
*/
.JPX-ms-wrapper {
  margin-bottom: 24px;
}

.JPX-ms-container-item.-is-large .JPX-ms-wrapper {
  margin-bottom: 0;
}

.JPX-ms-container-item.-is-large .JPX-ms-wrapper-subitem:first-child .JPX-ms-box {
  border-bottom: none;
  border-radius: 0;
}

.JPX-ms-container-item .JPX-ms-wrapper-subitem {
  margin-top: 16px;
}

.JPX-ms-container-item.-is-large .JPX-ms-wrapper-subitem {
  margin-top: 0;
}

.JPX-ms-container-item.-is-large .JPX-ms-wrapper-subitem:nth-child(3) {
  margin-top: 16px;
}
.JPX-ms-title {
  position: relative;
  font-size: 14px;
  line-height: 17px;
  padding: 10px 16px;
  font-weight: 500;
  border-top: #d1d1d1 solid 1px;
  border-right: #d1d1d1 solid 1px;
  border-bottom: #d1d1d1 solid 1px;
  border-left: #d1d1d1 solid 2px;
  border-radius: 4px 4px 0 0;
  background-color: #ffffff;
}

.JPX-ms-title::before {
  content: "";
  position: absolute;
  display: block;
  width: 2px;
  height: 100%;
  top: 0px;
  left: -1px;
  background: linear-gradient(to bottom ,#e60012 0%, #a3000d 100%);
  transform: skewY(-26deg);
}

.JPX-ms-box {
  display: flex;
  flex-flow: column;
  border-top: none;
  border-right: #d1d1d1 solid 1px;
  border-bottom: #d1d1d1 solid 1px;
  border-left: #d1d1d1 solid 2px;
  border-radius: 0 0 4px 4px;
  background-color: #ffffff;
  box-shadow: 0px 1px 3px rgba(0, 0, 0, 0.08);
}

.JPX-ms-data,.JPX-ms-data-label {
  display: flex;
  flex-flow: nowrap;
  justify-content: flex-end;
  align-items: center;
  font-size: 12px;
  font-weight: 500;
  line-height: 14px;
  color: #666666;
  text-align: right;
  min-height: 40px;
  padding: 5px 16px;
  box-sizing: border-box;
}

.JPX-ms-data.-is-even {
  background-color: rgba(230, 0, 18, 0.05);
}

.JPX-ms-data a {
  text-decoration: none;
  color: #666666;
}

.JPX-ms-container-item.-is-large .JPX-ms-data.-is-even {
  background-color: rgba(0, 57, 200, 0.05);
}

.JPX-ms-amount {
  margin-right: 12px;
}

.JPX-ms-price span,.JPX-ms-amount span {
  display: block;
  width: 50px;
  margin: 0 0 0 auto;
}

.JPX-ms-price .-is-inbox,.JPX-ms-amount .-is-inbox {
  font-size: 10px;
  text-align: center;
}

.JPX-ms-price.-is-minus {
  color: #00cf6f;
}

.JPX-ms-price.-is-plus {
  color: #e4001e;
}


.JPX-ms-data-label .JPX-ms-amount,.JPX-ms-data-label .JPX-ms-price {
  text-align: center;
}

.JPX-ms-name {
  flex-grow: 1;
  text-align: left;
}

.JPX-ms-amount {
  min-width: 80px;
}

.JPX-ms-price {
  min-width: 80px;
}

@media screen and (min-width:769px) {
  .JPX-ms-container {
    display: flex;
    flex-flow: wrap;
    justify-content: flex-start;
    align-items: flex-start;
    margin-left: -32px;
  }

  .JPX-ms-container-item {
    width: calc(50% - 32px);
    margin-left: 32px;
  }

  .JPX-ms-container-item.-is-large {
    width: calc(100% - 32px);
    margin-left: 32px;
    margin-top: 24px;
  }

  .JPX-ms-wrapper {
    margin-bottom: 0;
  }

  .JPX-ms-title {
    position: relative;
    font-size: 16px;
    line-height: 18px;
    padding: 13px 16px;
  }

  .JPX-ms-data,.JPX-ms-data-label {
    font-size: 14px;
    line-height: 15px;
    min-height: 48px;
  }

  .JPX-ms-data a:hover {
    text-decoration: underline;
    color: #E60012;
  }

  .JPX-ms-amount {
    margin-right: 16px;
    min-width: 64px;
  }
  
  .JPX-ms-price {
    min-width: 44px;
  }

  .JPX-ms-price span,.JPX-ms-amount span {
    width: 60px;
  }

  .JPX-ms-price .-is-inbox,.JPX-ms-amount .-is-inbox {
    font-size: 12px;
  }

  .JPX-ms-box.-is-price .JPX-ms-price {
    min-width: 64px;
  }

  .JPX-ms-container-item.-is-large .JPX-ms-wrapper-subitem:nth-child(2) .JPX-ms-box {
    margin-left: -1px;
  }

  .JPX-ms-wrapper-sub {
    display: flex;
    flex-flow: wrap;
    justify-content: flex-start;
    align-items: flex-start;
  }

  .JPX-ms-container-item.-is-large .JPX-ms-wrapper-subitem {
    width: 50%;
  }

  .JPX-ms-container-item .JPX-ms-wrapper-subitem {
    margin-top: 0;
  }

  .JPX-ms-container-item.-is-large .JPX-ms-wrapper-subitem:nth-child(3) {
    margin-top: 0;
  }

}

@media screen and (min-width:1100px) {
  .JPX-ms-container-item {
    width: calc(25% - 32px);
  }

  .JPX-ms-container-item.-is-large {
    width: calc(50% - 32px);
    margin-top: 0px;
  }
}
/* /マーケットサマリー */

/*
情報受付窓口
*/
.JPX-section-inner .JPX-heading-title {
  font-weight: bold;
  font-size: 18px;
  color: #000000;
  margin-bottom: 24px;
}

.JPX-reception li {
  margin-top: 8px;
}

.JPX-reception li:first-child {
  margin-top: 0;
}

.JPX-reception li.-is-large .JPX-reception-btn {
  min-height: 64px;
  padding: 10px 35px 10px 10px;
}

.JPX-reception li.-is-blank .JPX-reception-btn {
  background: url(../fonts/icn-blank.svg) right 16px center no-repeat;
  background-size: 10px 10px;
}

.JPX-reception li.-is-wideimg .JPX-reception-btn-img img {
  width: 58px;
}

.JPX-reception-btn {
  display: flex;
  flex-flow: nowrap;
  justify-content: flex-start;
  align-items: center;
  padding: 0 34px 0 0;
  border: #d1d1d1 solid 1px;
  border-radius: 4px;
  text-decoration: none;
  color: #000000;
  background: url(../fonts/icn-right-arrow_gray.svg) right 16px center no-repeat;
  background-size: 10px 10px;
  line-height: 16.8px;
  min-height: 64px;
  box-sizing: border-box;
}

.JPX-reception-btn-img {
  width: 80px;
  flex-shrink: 0;
  text-align: center;
}

.JPX-reception-btn-img img {
  vertical-align: bottom;
  width: 32px;
  height: 32px;
}

.JPX-reception-btn-heading {
  font-weight: 500;
  font-size: 10px;
  margin-bottom: 2px;
}

.JPX-reception-btn-title {
  font-size: 14px;
  font-weight: 500;
}

.JPX-reception-btn-subtitle {
  font-size: 10px;
  color: #666666;
  margin-top: 8px;
  line-height: 15px;
}

@media screen and (min-width:1025px) {
  .JPX-section-inner .JPX-heading-title {
    font-size: 24px;
    margin-bottom: 32px;
    line-height: 24px;
  }

  .JPX-reception ul {
    display: flex;
    flex-flow: wrap;
    justify-content: flex-start;
    margin: -16px 0 0 -16px;
  }

  .JPX-reception li:first-child {
    margin-top: 16px;
  }

  .JPX-reception li {
    width: calc((100% / 4) - 16px);
    margin: 16px 0 0 16px;
    align-items: stretch;
  }

  .JPX-reception li.-is-large {
    width: calc((100% / 3) - 17px);
    margin: 16px 0 0 17px;
  }

  .JPX-reception li.-is-large .JPX-reception-btn {
    min-height: 120px;
    padding: 10px 36px 10px 0;
  }
  
  .JPX-reception li.-is-wideimg .JPX-reception-btn-img img {
    width: 72px;
  }

  .JPX-reception li.-is-blank .JPX-reception-btn {
    background-size: 12px 12px;
  }

  .JPX-reception-btn {
    padding: 10px 36px 10px 0;
    background-size: 12px 12px;
    line-height: 19.2px;
    min-height: 80px;
    height: 100%;
    box-sizing: border-box;
  }

  .JPX-reception-btn-img {
    width: 80px;
    flex-shrink: 0;
  }

  .JPX-reception li.-is-wideimg .JPX-reception-btn-img {
    width: 112px;
  }

  .JPX-reception-btn-img img {
    width: 40px;
    height: 40px;
  }

  .JPX-reception-btn-heading {
    font-size: 12px;
    margin-bottom: 4px;
  }

  .JPX-reception-btn-title {
    font-size: 16px;
  }

  .JPX-reception-btn-subtitle {
    font-size: 12px;
    margin-top: 12px;
    line-height: 18px;
  }

  .JPX-reception-btn:hover .JPX-reception-btn-title,.JPX-reception-btn:hover .JPX-reception-btn-heading {
    color: #E60012;
    text-decoration: underline;
  }

  .JPX-reception li:hover .JPX-reception-btn {
    background: url(../fonts/icn-right-arrow_hover.svg) right 16px center no-repeat;
    background-size: 12px 12px;
  }

  .JPX-reception li.-is-blank:hover .JPX-reception-btn  {
    background: url(../fonts/icn-blank-hover.svg) right 16px center no-repeat;
    background-size: 12px 12px;
  }
}
/* /情報受付窓口 */

/*
JPX提供サイト一覧
*/
.JPX-sitelist {
  display: flex;
  flex-flow: wrap;
  justify-content: flex-start;
  align-items: flex-start;
  margin: -8px 0 0 -9px;
}

.JPX-sitelist-data {
  display: flex;
  flex-flow: column;
  width: calc((100% / 2) - 9px);
  margin: 8px 0 0 9px;
  text-decoration: none;
  border: #d1d1d1 solid 1px;
  border-radius: 4px;
  box-sizing: border-box;
  align-self: stretch;
  box-shadow: 0px 1px 3px rgba(0, 0, 0, 0.08);
}

.JPX-sitelist-img img {
  vertical-align: bottom;
  width: 100%;
}

.JPX-sitelist-title {
  display: flex;
  flex-grow: 1;
  align-items: center;
  line-height: 14px;
  font-size: 12px;
  border-top: #d1d1d1 solid 1px;
  color: #000000;
  padding: 12px 32px 12px 12px;
  font-weight: 500;
  box-sizing: border-box;
  background: url(../fonts/icn-blank.svg) right 12px center no-repeat #ffffff;
  background-size: 12px 12px;
}

.JPX-sitelist-data.-is-noblank .JPX-sitelist-title {
  background: none;
}

@media screen and (min-width:769px) {
  .JPX-sitelist {
    margin: -16px 0 0 -15px;
  }
	
  .JPX-sitelist a:hover img {
	  opacity: 0.7;
  }

  .JPX-sitelist-data {
    width: calc((100% / 5) - 15px);
    margin: 16px 0 0 15px;
  }

  .JPX-sitelist-img {
    overflow: hidden;
  }

  .JPX-sitelist-title {
    line-height: 17px;
    font-size: 14px;
    min-height: 64px;
    padding: 5px 36px 5px 16px;
    background: url(../fonts/icn-blank.svg) right 16px center no-repeat #ffffff;
  }

  .JPX-sitelist-data:hover .JPX-sitelist-title {
    color: #E60012;
    text-decoration: underline;
    background: url(../fonts/icn-blank-hover.svg) right 16px center no-repeat #ffffff;
  }

  .JPX-sitelist-data.-is-noblank:hover .JPX-sitelist-title {
    background: none;
  }
}
/* /JPX提供サイト一覧 */

/*
ピックアップ スライダー
*/
.JPX-pickup.-is-slider {
  display: block;
  margin: 0;
}

.JPX-pickup-data {
  box-shadow: 0px 1px 3px rgba(0, 0, 0, 0.08);
  overflow: hidden;
  box-sizing: border-box;
  border: #d1d1d1 solid 1px;
  border-radius: 3px;
}

.JPX-pickup-data a {
  text-decoration: none;
  color: black;
  display: block;
  height: 100%;
}

.JPX-pickup-img img {
  vertical-align: bottom;
  width: 100%;
}

.JPX-pickup-title {
  font-size: 16px;
  font-weight: 500;
  line-height: 19px;
  padding: 10px 12px 5px;
}

.JPX-pickup-title.-is-blank span {
  background: url(../fonts/icn-blank.svg) right 6px no-repeat;
  background-size: 12px;
  padding-right: 16px;
}

.JPX-pickup-text {
  font-size: 12px;
  line-height: 18px;
  color: #666666;
  padding: 0 12px 10px;
}

/* ピックアップのslick.js */
/* slick.js ドットのデザイン */
.JPX-pickup .slick-dots li button:before{font-family: 'slick';font-size: 6px;line-height: 20px;position: absolute;top: 0;left: 0;width: 8px;height: 8px;content: "";text-align: center;-webkit-font-smoothing: antialiased;-moz-osx-font-smoothing: grayscale;background-color: #E0E0E0;border-radius: 50%;}
.JPX-pickup .slick-dots li.slick-active button:before{background-color: #E60012;}
.JPX-pickup .slick-dots li{width: 8px;height: 8px;margin: 0 6px;}.JPX-pickup .slick-dots li button {width: 8px;height: 8px;}
/* /slick.js ドットのデザイン */

.JPX-pickup-wrapper.-is-slider { /* 親要素のpaddingから要素をはみ出させる */
  margin: 0 -16px;
}

.JPX-pickup.-is-slider {
  position: relative;
  overflow: hidden;
  padding-bottom: 20px;
}

.JPX-pickup .slick-track {
  display: flex;
}

.JPX-pickup .slick-slide {
  float: none;
  height: auto;
}

.JPX-pickup .slick-list {
  margin: 0 56px;
  overflow: visible;
}

.JPX-pickup-data.slick-slide { /* 画像両端の余白 */
  margin: 0 4px;
}

.JPX-pickup .slick-prev.slick-arrow {
  position: absolute;
  display: none !important;
  width: 24px;
  height: 24px;
  top: 50%;
  left: 4px;
  transform: translate(0, -50%);
  z-index: 1;
  border-radius: 50%;
  border: #d1d1d1 solid 1px;
  background: #ffffff;
}

.JPX-pickup .slick-next.slick-arrow {
  position: absolute;
  display: none !important;
  width: 24px;
  height: 24px;
  top: 50%;
  right: 4px;
  transform: translate(0, -50%);
  z-index: 1;
  border-radius: 50%;
  border: #d1d1d1 solid 1px;
  background: #ffffff;
}

.JPX-pickup .slick-prev.slick-arrow::before {
  content: "";
  position: absolute;
  display: block;
  background: url(../fonts/icn-right-arrow_gray.svg) center center no-repeat;
  background-size: 12px 12px;
  width: 12px;
  height: 12px;
  top: 50%;
  right: 50%;
  transform: translate(50%, -50%) rotate(180deg);
}

.JPX-pickup .slick-next.slick-arrow::before {
  content: "";
  position: absolute;
  display: block;
  background: url(../fonts/icn-right-arrow_gray.svg) center center no-repeat;
  background-size: 12px 12px;
  width: 12px;
  height: 12px;
  top: 50%;
  right: 50%;
  transform: translate(50%, -50%);
}

.JPX-pickup.-is-slider .slick-arrow span {
  display: none;
}

.JPX-pickup.-is-slider .JPX-pickup-data {
  display: none;
}
.JPX-pickup.-is-slider .JPX-pickup-data:first-child {
  display: block;
}
.JPX-pickup.-is-slider.slick-initialized .JPX-pickup-data {
  display: block;
}

/* /ピックアップのslick.js */

@media screen and (min-width:769px) {
  .JPX-pickup-title {
    font-size: 18px;
    font-weight: 500;
    line-height: 24px;
    padding: 16px 19px 13px;
  }

  .JPX-pickup-text {
    font-size: 14px;
    line-height: 21px;
    padding: 0 19px 16px;
  }

  .JPX-pickup-wrapper ~ .JPX-sitelist-btn {
    margin: 0 0 0 auto;
  }

  .JPX-pickup a:hover .JPX-pickup-title {
    color: #E60012;
    text-decoration: underline;
  }

  .JPX-pickup-title.-is-blank span {
    background: url(../fonts/icn-blank.svg) right 8px no-repeat;
    background-size: 14px;
    padding-right: 18px;
}

  .JPX-pickup a:hover .JPX-pickup-title.-is-blank span {
    background: url(../fonts/icn-blank-hover.svg) right 8px no-repeat;
    background-size: 14px;
    padding-right: 18px;
}

  /* ピックアップのslick.js */
  .JPX-pickup .slick-list {
    margin: 0;
    overflow: hidden;
    margin-bottom: 22px;
  }

  .JPX-pickup-data.slick-slide { /* 画像両端の余白 */
    margin: 0 16px;
  }

  .JPX-pickup button:hover {
    cursor: pointer;
  }

  .JPX-pickup .slick-prev.slick-arrow {
    display: block !important;
    top: 39%;
    width: 32px;
    height: 32px;
    left: 0px;
    transform: none;
  }

  .JPX-pickup .slick-next.slick-arrow {
    display: block !important;
    top: 39%;
    width: 32px;
    height: 32px;
    right: 0px;
    transform: none;
  }
  
  .JPX-pickup .slick-prev.slick-disabled,.JPX-pickup .slick-next.slick-disabled {
    display: none !important;
  }

  .JPX-pickup .slick-prev.slick-arrow::before {
    content: "";
    position: absolute;
    display: block;
    width: 14px;
    height: 14px;
    top: 50%;
    right: 50%;
    transform: translate(50%, -50%) rotate(180deg);
  }

  .JPX-pickup .slick-next.slick-arrow::before {
    content: "";
    position: absolute;
    display: block;
    width: 12px;
    height: 12px;
    top: 50%;
    right: 50%;
    transform: translate(50%, -50%);
  }

  .JPX-pickup .slick-prev.slick-arrow:hover::before, .JPX-pickup .slick-next.slick-arrow:hover::before {
    background: url(../fonts/icn-right-arrow_hover.svg) center center no-repeat;
    background-size: 12px 12px;
  }
  /* /ピックアップのslick.js */
}
/* /ピックアップ スライダー */

/*
ニュース
*/
.JPX-section-title a {
  display: inline-block;
  margin-left: 8px;
  text-indent: -9999px;
  background: url(../fonts/icn_rss.svg) center 4px no-repeat;
  background-size: 14px 14px;
  width: 14px;
  height: 20px;
}

.JPX-news {
  margin-top: -14px;
}

.JPX-news a {
  text-decoration: none;
  color: #000000;
}

.JPX-news li {
  padding: 11px 26px 13px 8px;
  text-decoration: none;
  color: #000000;
  display: block;
  border-bottom: #d1d1d1 solid 1px;
  background: url(../fonts/icn-right-arrow_gray.svg) right 8px center no-repeat;
  background-size: 10px 10px;
}

.JPX-news li.news_nolink {
  background: none;
}

.JPX-news li .news-list-date {
  margin-right: 10px;
  font-size: 12px;
  color: #666666;
}

.JPX-news li .news-list-title {
  display: flex;
  margin-top: 4px;
  font-size: 14px;
  overflow: hidden;
  line-height: 17px;
}

.JPX-news.education li .news-list-title {
  display: inline;
  overflow: initial;
}

.JPX-news li .char-limit {
  display: -webkit-box;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 1;
  white-space: normal;
  width: fit-content;
}

.JPX-news li .-is-pdf {
  position: relative;
  width: 18px;
  margin-left: 4px;
}

.JPX-news li .-is-pdf::before {
  content: "　";
  position: absolute;
  background: url(../fonts/icon_pdf_file.svg) center center no-repeat;
  background-size: contain;
  width: 18px;
  height: 18px;
  bottom: 0px;
}

.JPX-news li .-is-zip {
  position: relative;
  width: 18px;
  margin-left: 4px;
}

.JPX-news li .-is-zip::before {
  content: "　";
  position: absolute;
  background: url(../fonts/icon_zip.svg) center center no-repeat;
  background-size: contain;
  width: 18px;
  height: 18px;
  bottom: 0px;
}

.JPX-news li .-is-excel {
  position: relative;
  width: 18px;
  margin-left: 4px;
}

.JPX-news li .-is-excel::before {
  content: "　";
  position: absolute;
  background: url(../fonts/icon_excel.svg) center center no-repeat;
  background-size: contain;
  width: 18px;
  height: 18px;
  bottom: 0px;
}

.JPX-news li .-is-ppt {
  position: relative;
  width: 18px;
  margin-left: 4px;
}

.JPX-news li .-is-ppt::before {
  content: "　";
  position: absolute;
  background: url(../fonts/icon_ppt.svg) center center no-repeat;
  background-size: contain;
  width: 18px;
  height: 18px;
  bottom: 0px;
}

.JPX-news li .-is-word {
  position: relative;
  width: 18px;
  margin-left: 4px;
}

.JPX-news li .-is-word::before {
  content: "　";
  position: absolute;
  background: url(../fonts/icon_word.svg) center center no-repeat;
  background-size: contain;
  width: 18px;
  height: 18px;
  bottom: 0px;
}

.JPX-news li .-is-csv {
  position: relative;
  width: 18px;
  margin-left: 4px;
}

.JPX-news li .-is-csv::before {
  content: "　";
  position: absolute;
  background: url(../fonts/icon_csv.svg) center center no-repeat;
  background-size: contain;
  width: 18px;
  height: 18px;
  bottom: 0px;
}

.JPX-news li .news-list-category {
  display: inline-block;
  color: #ffffff;
  background-color: #FF6702;
  border-radius: 12px;
  padding: 2px 8px;
  font-size: 10px;
  line-height: 12px;
  margin: 0 1px;
  box-sizing: border-box;
}

.JPX-news li .news-list-category.tosyo {
  background-color: #E60012;
}

.JPX-news li .news-list-category.ose {
  background-color: #0039C8;
}

.JPX-news li .news-list-category.tocom {
  background-color: #023B90;
}

.JPX-news li .news-list-category.jpxr {
  background-color: #A70309;
}

.JPX-news li .news-list-category.jpx {
  background-color: #FF6702;
}

.JPX-news li .news-list-category.jpxi {
  background-color: #00A45D;
}

.JPX-news li .news-list-category.jscc {
  background-color: #40658A;
}

.JPX-news li .news-list-category.nlc001 {
  background-color: #7C60D0;
}

.JPX-news li .news-list-category.nlc002 {
  background-color: #58B4C3;
}

.JPX-news li .news-list-category.nlc003 {
  background-color: #93B83C;
}

.JPX-news li .news-list-category.nlc004 {
  background-color: #E49857;
}

.JPX-news li .news-list-category.nlc005 {
  background-color: #F43949;
}




.JPX-news li .news-list-category.pink {
  background-color: #D53B5C;
  color: #ffffff;
}

.JPX-news li .news-list-category.blue {
  background-color: #303EF4;
  color: #ffffff;
}

.JPX-news li .news-list-category.lightblue {
  background-color: #3CAFC8;
  color: #ffffff;
}

.JPX-news li .news-list-category.lightgreen {
  background-color: #94C853;
  color: #ffffff;
}

.JPX-news li .news-list-category.gold {
  background-color: #CABB18;
  color: #ffffff;
}

.JPX-news li .news-list-category.purple {
  background-color: #8162A5;
  color: #ffffff;
}

.JPX-news li .news-list-category.yellow {
  background-color: #FCD702;
  color: #000;
}

.JPX-news li .news-list-category.orange {
  background-color: #DB8616;
  color: #ffffff;
}

.JPX-news li .news-list-category.gray {
  background-color: #E0E0E0;
  color: #000;
}

.JPX-news li .news-list-category.darkgray {
  background-color: #5B5B5B;
  color: #ffffff;
}

.JPX-news li .news-list-category.level {
  background-color: #303EF4;
  color: #ffffff;
}

.JPX-news li .news-list-category.taisho {
  background-color: #FF561E;
  color: #ffffff;
}
.JPX-news li .news-list-category.cat01 {
  background: #5b5b5b;
  color: #ffffff;
}
.JPX-news li .news-list-category.cat02 {
  background: #3f589e;
  color: #ffffff;
}
.JPX-news li .news-list-category.cat03 {
  background: #3cafc8;
  color: #ffffff;
}
.JPX-news li .news-list-category.cat04 {
  background: #cabb18;
  color: #ffffff;
}
.JPX-news li .news-list-category.cat05 {
  background: #db8617;
  color: #ffffff;
}
.JPX-news li .news-list-category.cat06 {
  background: #9b2c20;
  color: #ffffff;
}
.JPX-news li .news-list-category.cat07 {
  background: #d53b5c;
  color: #ffffff;
}
.JPX-news li .news-list-category.cat08 {
  background: #94c852;
  color: #ffffff;
}
.JPX-news li .news-list-category.cat09 {
  background: #4ca05a;
  color: #ffffff;
}
.JPX-news li .news-list-category.cat010 {
  background: #8162a5;
  color: #ffffff;
}
.JPX-news li .news-list-category.step1 {
  background: #E402A9;
  color: #ffffff;
}
.JPX-news li .news-list-category.step2 {
  background: #EDBD0B;
  color: #ffffff;
}
.JPX-news li .news-list-category.step3 {
  background: #0070C0;
  color: #ffffff;
}
.JPX-news li .news-list-category.step4 {
  background: #7030A0;
  color: #ffffff;
}
.JPX-news li .news-list-category.topics {
  background: #009592;
  color: #ffffff;
}

@media screen and (min-width:769px) {
  .JPX-section-title a {
    display: inline-block;
    margin-left: 12px;
    background: url(../fonts/icn_rss.svg) center 4px no-repeat;
    background-size: 16px 16px;
  }

  .JPX-section-title a:hover {
    background: url(../fonts/icn_rss_hover.svg) center 4px no-repeat;
    background-size: 16px 16px;
  }

  .JPX-section-col-02 {
    display: flex;
    flex-flow: wrap;
    align-items: flex-start;
    margin-left: -32px;
  }

  .JPX-section-col-item {
    width: calc((100% / 2) - 32px);
    margin-left: 32px;
    flex-grow: 1;
  }
  
  .JPX-news {
    margin-top: 0;
  }

  .JPX-news li {
    padding: 21px 26px 21px 16px;
    border-bottom: #d1d1d1 solid 1px;
    background: url(../fonts/icn-right-arrow_gray.svg) right 8px center no-repeat;
    background-size: 12px 12px;
  }

  .JPX-news li .news-list-date {
    margin-right: 10px;
    font-size: 14px;
  }
  
  .JPX-news li .news-list-title {
    margin-top: 4px;
    font-size: 16px;
    line-height: 19px;
  }

  .JPX-news li .char-limit {
    display: -webkit-box;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 1;
    white-space: normal;
  }

  .JPX-news li:hover {
    background: url(../fonts/icn-right-arrow_hover.svg) right 8px center no-repeat;
    background-size: 12px 12px;
  }

  .JPX-news li.news_nolink:hover {
    background: none;
  }
  
  .JPX-news li .news-list-category {
    font-size: 12px;
    line-height: 13px;
    margin: 0 3px 4px;
    padding: 2px 8px 4px;
  }

  .JPX-news li:hover .news-list-date,.JPX-news li:hover .news-list-title {
    text-decoration: underline;
    color: #E60012;
  }

  .JPX-news li.news_nolink:hover .news-list-date,.JPX-news li.news_nolink:hover .news-list-title {
    text-decoration: none;
    color: #000000;
  }

}
/* /ニュース */

/*
メインビジュアル
*/
.JPX-mv {
  margin-bottom: 32px;
}

.JPX-mv-img {
  position: relative;
}

.JPX-mv-img img {
  vertical-align: bottom;
  width: 100%;
  height: 250px;
  object-fit: cover;
}

.JPX-mv-title-wrap {
  overflow: hidden;
  position: absolute;
  top: 50%;
  transform: translate(0,-50%);
  left: 16px;
  right: 16px;
}

.JPX-mv-title {
  position: relative;
  width: fit-content;
  font-size: 24px;
  font-weight: 700;
  padding-bottom: 10px;
  border-bottom: #ffffff solid 8px;
  color: #ffffff;
  line-height: 29px;
}

.JPX-mv-title::before {
  content: "";
  position: absolute;
  display: block;
  width: 23%;
  height: 8px;
  bottom: -8px;
  left: -2px;
  background: linear-gradient(to right, #e60012, #a4000d);
  transform: skew(-30deg);
}

@media screen and (min-width:769px) {
  .JPX-mv {
    margin-bottom: 56px;
  }
  
  .JPX-mv-img img {
    width: 100%;
    height: 480px;
  }

  .JPX-mv-title-wrap {
    max-width: 1312px;
    left: 80px;
    right: auto;
    margin: 0;
  }
  
  .JPX-mv-title {
    font-size: 56px;
    padding-bottom: 22px;
    border-bottom: #ffffff solid 12px;
    line-height: 67px;
  }

  .JPX-mv-title::before {
    width: 197px;
    height: 12px;
    bottom: -12px;
    left: -3px;
  }
}

@media screen and (min-width:1490px) {
  .JPX-mv-title-wrap {
    left: 27px;
    right: 27px;
    margin: 0 auto;
  }
}
/* /メインビジュアル */


/*
ピックアップ
*/
.JPX-pickup {
  display: flex;
  flex-flow: wrap;
  justify-content: flex-start;
  align-items: stretch;
  margin: -16px 0 0 -9px;
}

.JPX-pickup-data {
  width: calc((100% / 2) - 9px);
  margin: 16px 0 0 9px;
}

@media screen and (min-width:769px) {
  .JPX-pickup {
    display: flex;
    flex-flow: wrap;
    justify-content: flex-start;
    align-items: stretch;
    margin: 0 0 0 -32px;
  }
  .JPX-pickup-data {
    width: calc((100% / 4) - 32px);
    margin: 32px 0 0 32px;
  }
  .JPX-pickup.-is-three .JPX-pickup-data {
    width: calc((100% / 3) - 32px);
    margin: 32px 0 0 32px;
  }
  .JPX-pickup .JPX-pickup-data:nth-child(-n + 4) {
    margin: 0 0 0 32px;
  }
  .JPX-pickup.-is-three .JPX-pickup-data:nth-child(4) {
    margin: 32px 0 0 32px;
  }
  .JPX-pickup-data a:hover img {
    opacity: 0.7;
  }
}
/* /ピックアップ */

/*
日本取引所グループについて
*/
.JPX-btn-box {
  text-align: center;
  max-width: 168px;
  margin: 0 auto;
}

.JPX-btn-box .JPX-btn {
  padding: 8px 30px 8px 12px;
}

.JPX-section-data {
  margin-bottom: 40px;
}

.JPX-section-data:last-child {
  margin-bottom: 0px;
}

.JPX-stock-img {
  border: #d1d1d1 solid 1px;
  padding: 32px 16px;
  text-align: center;
}

.JPX-stock-img img {
  vertical-align: bottom;
  margin: auto;
  width: 311px;
  height: 332px;
}

@media screen and (min-width:769px) {
  .JPX-section-box {
    display: flex;
    flex-flow: nowrap;
    justify-content: flex-start;
    align-items: flex-start;
  }

  .JPX-section-data:first-child {
    flex-grow: 1;
  }

  .JPX-section-data:last-child {
    margin-left: 32px;
  }

  .JPX-btn-box {
    max-width: 416px;
    margin: 0 auto;
  }
  
  .JPX-btn-box .JPX-btn {
    padding: 10px 30px 10px 12px;
  }

  .JPX-stock-img {
    border: #d1d1d1 solid 1px;
    padding: 29px;
  }

  .JPX-stock-img img {
    width: 337px;
    height: 360px;
  }
}
/* /日本取引所グループについて */

/*
リンクリストカード
*/
.JPX-link-card {
  margin-top: 16px;
  padding: 13px 16px 12px 16px;
  border: #d1d1d1 solid 1px;
  border-radius: 4px;
  box-sizing: border-box;
}

.JPX-link-card:first-child {
  margin-top: 0px;
}

.JPX-link-card-title {
  position: relative;
  padding: 0 0 0 12px;
}

.JPX-link-card-title::before {
  content: "";
  position: absolute;
  display: block;
  background: linear-gradient(to bottom ,#e60012 0%, #a3000d 100%);
  transform: skewY(26deg);
  width: 4px;
  height: 20px;
  top: 2px;
  left: 0px;
}

.JPX-link-card-title a {
  color: #000000;
  font-size: 16px;
  line-height: 24px;
  text-decoration: none;
  font-weight: 500;
  display: block;
  width: 100%;
}

.JPX-link-card-list li {
  margin-top: 6px;
}

.JPX-link-card-list li:first-child {
  margin-top: 11px;
}

.JPX-link-card-list li a {
  color: black;
  font-size: 14px;
  line-height: 21px;
  padding-left: 18px;
  display: inline-block;
  text-decoration: none;
  position: relative;
}
.JPX-link-card-list li a::after {
  position: absolute;
  content: "";
  background: url(../fonts/icn-circle-arw_gray.svg) center center no-repeat;
  background-size: contain;
  width: 14px;
  height: 14px;
  left: 0;
  top: 4px;
}

@media screen and (min-width:769px) {
  .JPX-link-card-box {
    display: flex;
    flex-flow: wrap;
    justify-content: flex-start;
    align-items: stretch;
    margin: -32px 0 0 -32px;
  }
  
  .JPX-link-card {
    width: calc((100% / 3) - 32px);
    margin: 32px 0 0 32px;
    padding: 18px 20px;
  }

  .JPX-link-card-title {
    padding: 0 0 0 18px;
  }

  .JPX-link-card:first-child {
  margin-top: 32px;
  }

  .JPX-link-card-title::before {
    height: 24px;
    top: 0px;
  }

  .JPX-link-card-title a {
    font-size: 20px;
  }

  .JPX-link-card-list li {
    margin-top: 10px;
  }

  .JPX-link-card-list li:first-child {
    margin-top: 18px;
  }

  .JPX-link-card-list li a {
    font-size: 14px;
    line-height: 17px;
  }

  .JPX-link-card-list li a::after{
    top: 2px;
  }

  .JPX-link-card-list li a:hover {
    color: #e60012;
  }

  .JPX-link-card-list li a:hover::after{
    background: url(../fonts/icn-circle-arw_red.svg) center center no-repeat;
    background-size: contain;
  }

  .JPX-link-card-title a:hover {
    color: #e60012;
    text-decoration: underline;
  }
}
/* /リンクリストカード */

/*
メインビジュアル
*/
.JPX-heading-h1-wrap {
  position: relative;
}

.JPX-heading-h1-wrap img {
  width: 100%;
  object-fit: cover;
  height: 226px;
  vertical-align: bottom;
}

.JPX-heading-h1 {
  position: absolute;
  top: 50%;
  transform: translate(0, -50%);
  right: 16px;
  left: 16px;
}

.JPX-heading-h1-inner {
  overflow: hidden;
}

.JPX-heading-h1-title {
  position: relative;
  color: #FFFFFF;
  font-size: 24px;
  font-weight: 700;
  line-height: 29px;
  padding-bottom: 8px;
  border-bottom: #d1d1d1 solid 8px;
}

.JPX-heading-h1-title::before {
  content: "";
  position: absolute;
  display: block;
  background: linear-gradient(to right, #e60012, #a4000d);
  width: 48%;
  height: 8px;
  bottom: -8px;
  left: -2px;
  transform: skew(-26deg);
}

.JPX-heading-h1-text {
  margin-top: 28px;
  color: #FFFFFF;
  font-size: 14px;
  line-height: 25px;
}

@media screen and (min-width:769px) {
  .JPX-heading-h1-wrap {
  }

  .JPX-heading-h1-wrap img {
    height: 260px;
  }

  .JPX-heading-h1 {
    max-width: 1312px;
    right: 27px;
    left: 27px;
    margin: 0 auto;
  }

  .JPX-heading-h1-title {
    max-width: 752px;
    font-size: 36px;
    line-height: 43px;
    padding-bottom: 12px;
    border-bottom: #d1d1d1 solid 12px;
  }

  .JPX-heading-h1-title::before {
    width: 53%;
    height: 12px;
    bottom: -12px;
    left: -3px;
    transform: skew(-26deg);
  }

  .JPX-heading-h1-text {
    max-width: 752px;
    margin-top: 32px;
    font-size: 16px;
    line-height: 29px;
  }
}
/* /メインビジュアル */

/*
サイト内検索
*/
.JPX-search-keyword {
  padding: 24px 16px;
  background-color: #F7F7F7;
}

.JPX-search {
  position: relative;
}

.JPX-search .side-search-wrap02 {
  position: relative;
}

.JPX-search .side-search-wrap03 {
  margin-bottom: 15px;
}

.JPX-search .side-search-wrap03 input {
  position: relative;
  width: 100%;
  height: 32px;
  box-sizing: border-box;
  padding-left: 12px;
  font-size: 12px;
  border: #d1d1d1 solid 1px;
  border-radius: 4px;
}

.JPX-search .side-search-input-btn {
  position: absolute;
  top: 50%;
  right: 8px;
  transform: translate(0, -50%);
  width: 17px;
  height: 17px;
}

.JPX-search .side-search-input-btn input {
  width: 17px;
  height: 17px;
}

.JPX-keyword-heading {
  font-size: 14px;
  font-weight: 500;
  line-height: 17px;
  color: #000000;
  margin-bottom: 12px;
}

.JPX-keyword-tag {
  margin-top: -4px;
}

.JPX-keyword {
  display: inline-block;
  margin-top: 4px;
  word-break: break-all;
}

.JPX-keyword a {
  display: inline-block;
  font-size: 14px;
  line-height: 17px;
  text-decoration: none;
  color: #000000;
  padding: 4px 12px;
  border: #d1d1d1 solid 1px;
  border-radius: 14px;
  box-sizing: border-box;
  background-color: #ffffff;
}

@media screen and (min-width:769px) {
  .JPX-search-keyword {
    max-width: 1088px;
    padding: 48px 64px;
    box-sizing: border-box;
    margin: 0 auto;
    border-radius: 4px;
  }

  .JPX-search .side-search-wrap03 {
    margin-bottom: 22px;
  }

  .JPX-search .side-search-wrap03 input {
    font-size: 16px;
    font-weight: 500;
    padding: 23px 0 23px 12px;
  }

  .JPX-search .side-search-input-btn {
    right: 14px;
    width: 22px;
    height: 22px;
  }

  .JPX-search .side-search-input-btn input {
    width: 22px;
    height: 22px;
  }

  .JPX-keyword-heading {
    font-size: 16px;
    line-height: 19px;
    margin-bottom: 16px;
  }

  .JPX-keyword-tag {
    margin-top: -4px;
    margin-left: -4px;
  }

  .JPX-keyword {
    margin-top: 4px;
    margin-left: 4px;
  }

  .JPX-keyword a {
    font-size: 16px;
    padding: 8px 16px;
    border-radius: 16px;
  }

  .JPX-keyword a:hover {
    border: #e60012 solid 1px;
    color: #e60012;
  }
}
/* /サイト内検索 */

/*
リンクボタン
*/
.JPX-column-list {
  display: inline-block;
  margin-top: -4px;
  width: 100%;
}

.JPX-column-row {
  display: block;
  margin-top: 4px;
  width: 100%;
}

.JPX-link-dw {
  display: block;
  font-size: 12px;
  font-weight: 500;
  line-height: 14px;
  text-decoration: none;
  color: #000000;
  padding: 7px 12px 7px 30px;
  border: #d1d1d1 solid 1px;
  border-radius: 20px;
  background: url(../fonts/icn-arrow_take.svg) 12px center no-repeat #ffffff;
  background-size: 12px 12px;
  box-sizing: border-box;
}

@media screen and (min-width:769px) {
  .JPX-column-list {
    margin-left: -6px;
  }

  .JPX-column-row {
    display: inline-block;
    margin-top: 8px;
    margin-left: 5px;
    width: auto;
  }

  .JPX-link-dw {
    display: inline-block;
    font-size: 14px;
    line-height: 17px;
    padding: 10px 16px 10px 37px;
    background: url(../fonts/icn-arrow_take.svg) 16px center no-repeat #ffffff;
    background-size: 14px 14px;
  }

  .JPX-link-dw:hover {
    background: url(../fonts/icn-arrow_take_open_red.svg) 16px center no-repeat #ffffff;
    background-size: 14px 14px;
    border: #e60012 solid 1px;
    color: #e60012;
  }
}
/* /リンクボタン */


/*
リンクカード
*/
.JPX-lc-box {
  margin-top: -16px;
}

.JPX-lc-data {
  margin-top: 16px;
}

.JPX-lc-data a {
  display: block;
  padding: 11px 16px 13px 16px;
  text-decoration: none;
  color: #000000;
  box-sizing: border-box;
  border: #d1d1d1 solid 1px;
  border-radius: 4px;
  width: 100%;
}

.JPX-lc-name {
  position: relative;
  display: block;
  padding-bottom: 14px;
  border-bottom: #d1d1d1 solid 1px;
  margin-bottom: 13px;
  font-size: 16px;
  font-weight: 500;
  line-height: 24px;
  padding-left: 12px;
}

.JPX-lc-name:before {
  content: "";
  position: absolute;
  display: block;
  background: linear-gradient(to bottom, #e60012, #a4000d);
  width: 4px;
  height: 18px;
  top: 4px;
  left: 0px;
  transform: skewY(26deg);
}

.JPX-lc-text {
  display: block;
  font-size: 12px;
  line-height: 18px;
  color: #666666;
}

@media screen and (min-width:769px) {
  .JPX-lc-box {
    display: flex;
    flex-flow: wrap;
    justify-content: flex-start;
    align-items: stretch;
    margin: -32px 0 0 -32px;
  }

  .JPX-lc-data {
    display: flex;
    width: calc((100% / 4) - 32px);
    margin: 32px 0 0 32px;
  }

  .JPX-lc-data a {
    padding: 20px 20px 16px 20px;
    height: 100%;
  }

  .JPX-lc-data a:hover {
    border: #e60012 solid 1px;
    color: #e60012;
  }

  .JPX-lc-data a:hover .JPX-lc-name {
    border-bottom: #e60012 solid 1px;
  }

  .JPX-lc-name {
    font-size: 20px;
    padding-left: 14px;
    padding-bottom: 18px;
    margin-bottom: 17px;
  }

  .JPX-lc-name:before {
    height: 22px;
    top: 1px;
  }

  .JPX-lc-text {
    display: block;
    font-size: 14px;
    line-height: 21px;
  }
}
/* /リンクカード */

/*
関連コンテンツ
*/
.JPX-cc {
  background-color: #F7F7F7;
  border-radius: 4px;
  padding: 16px;
  margin-top: 24px;
}

.JPX-cc-title {
  margin-bottom: 16px;
}

.JPX-cc-title span {
  display: block;
  font-size: 16px;
  font-weight: 700;
  line-height: 20px;
}

.JPX-cc-box {
  display: flex;
  flex-flow: wrap;
  justify-content: flex-start;
  align-items: stretch;
  margin: -8px 0 0 -8px;
}

.JPX-cc-box .JPX-cc-data {
  width: calc((100% / 2) - 8px);
  margin: 8px 0 0 8px;
  min-height: 44px;
  box-shadow: 0px 1px 3px rgba(0, 0, 0, 0.08);
}

.JPX-cc-box .JPX-cc-data a {
  display: flex;
  align-items: center;
  box-sizing: border-box;
  font-size: 12px;
  font-weight: 500;
  line-height: 14px;
  text-decoration: none;
  color: #000000;
  padding: 7px 29px 7px 12px;
  border: #d1d1d1 solid 1px;
  border-radius: 4px;
  background-color: #ffffff;
  width: 100%;
  height: 100%;
}

.JPX-cc-box .JPX-cc-data a::before {
  display: none;
}

.JPX-cc-box .JPX-cc-data a::after {
  display: none;
}

.JPX-cc-box .JPX-cc-data a.link-window {
  background: url(../fonts/icn-right-arrow_gray.svg) 93% center no-repeat #ffffff;
  background-size: 10px 10px;
}

.JPX-cc-box .JPX-cc-data a.link-blank {
  background: url(../fonts/icn-blank.svg) 93% center no-repeat #ffffff;
  background-size: 10px 10px;
}

@media screen and (min-width:769px) {
  .JPX-cc {
    padding: 20px;
    margin-top: 40px;
  }

  .JPX-cc-title {
    margin-bottom: 21px;
  }
  
  .JPX-cc-title span {
    font-size: 20px;
    line-height: 24px;
  }

  .JPX-cc-box {
    margin: -20px 0 0 -20px;
  }

  .JPX-cc-box .JPX-cc-data {
    width: calc((100% / 4) - 20px);
    margin: 20px 0 0 20px;
    min-height: 38px;
  }

  .JPX-cc-box .JPX-cc-data a {
    font-size: 14px;
    line-height: 17px;
    padding: 9px 28px 9px 16px;
  }

  .JPX-cc-box .JPX-cc-data a:hover {
    color: #e60012;
    border: #e60012 solid 1px;
  }
  
  .JPX-cc-box .JPX-cc-data a.link-window {
    background: url(../fonts/icn-right-arrow_gray.svg) 96% center no-repeat #ffffff;
    background-size: 12px 12px;
  }

  .JPX-cc-box .JPX-cc-data a.link-window:hover {
    background: url(../fonts/icn-right-arrow_hover.svg) 96% center no-repeat #ffffff;
    background-size: 12px 12px;
  }

  .JPX-cc-box .JPX-cc-data a.link-blank {
    background: url(../fonts/icn-blank.svg) 96% center no-repeat #ffffff;
    background-size: 12px 12px;
  }
  .JPX-cc-box .JPX-cc-data a.link-blank:hover {
    background: url(../fonts/icn-blank-hover.svg) 96% center no-repeat #ffffff;
    background-size: 12px 12px;
  }
}
/* /関連コンテンツ */

/*
更新日
*/
.JPX-update-date {
  margin-right: 12px !important;
  font-size: 12px;
  color: #666666;
  line-height: 13px;
}

@media screen and (min-width:769px) {
  .JPX-update-date {
    margin-right: 24px !important;
    font-size: 14px;
    line-height: 15px;
  }
}
/* /更新日 */

/*
サイドコンテンツ
*/
.JPX-sidecontents-title {
  position: relative;
  padding-bottom: 7px;
  border-bottom: #d1d1d1 solid 1px;
  margin-bottom: 14px;
}

.JPX-sidecontents-title::before {
  content: "";
  position: absolute;
  border-image: linear-gradient(to bottom, #e60012, #a4000d);
  border-left: 4px solid #c21500;
  border-image-slice: 1;
  transform: skewY(26deg);
  height: 17px;
  top: 0px;
  left: 0;
}

.JPX-sidecontents-title a {
  display: block;
  font-weight: 500;
  padding-left: 11px;
  font-size: 14px;
  line-height: 17px;
  text-decoration: none;
  color: #000000;
}

.JPX-sidecontents-title span {
  display: block;
  font-weight: 500;
  padding-left: 11px;
  font-size: 14px;
  line-height: 17px;
  color: #000000;
}

select {
  display: block;
}

.JPX-sidemenu-list > li {
  padding-left: 11px;
  margin-top: 8px;
}

.JPX-sidemenu-list li a {
  display: block;
  width: 100%;
  text-decoration: none;
  color: #000000;
  font-weight: 500;
  font-size: 14px;
  line-height: 21px;
}

.JPX-sidemenu-list-sub {
  padding: 16px 0 8px 16px;
}

.JPX-sidemenu-list-sub li {
  margin-top: 13px;
}

.JPX-sidemenu-list-sub li:first-child {
  margin-top: 0px;
}

.JPX-sidemenu-list-sub li a {
  display: block;
  font-weight: 400;
}

.JPX-sidemenu-list > li:first-child {
  margin-top: 0;
}

.JPX-date-box .date-select {
  float: none;
  display: flex;
  justify-content: flex-start;
  align-items: flex-start;
}

@media screen and (min-width:1025px) {
  .JPX-sidecontents-box {
    width: 264px;
    margin-top: 10px;
  }

  .JPX-sidecontents-title {
    position: relative;
    padding-bottom: 7px;
    border-bottom: #d1d1d1 solid 1px;
    margin-bottom: 24px;
  }

  .JPX-sidecontents-title::before {
    height: 19px;
  }

  .JPX-sidecontents-title a {
    padding-left: 12px;
    font-size: 16px;
    line-height: 19px;
  }

  .JPX-sidecontents-title a:hover {
    color: #e60012;
    text-decoration: underline;
  }

  .JPX-sidecontents-title span {
    padding-left: 12px;
    font-size: 16px;
    line-height: 19px;
  }

  .JPX-sidemenu-list > li {
    padding-left: 12px;
    margin-top: 18px;
  }
  
  .JPX-sidemenu-list li a {
    font-weight: 400;
  }

  .JPX-sidemenu-list > li > a {
    line-height: 19px;
  }

  .JPX-sidemenu-list li a.-is-active {
    color: #e60012!important;
    text-decoration: underline;
    font-weight: 500;
  }

  .JPX-sidemenu-list li a.-is-active-parent {
    font-weight: 500;
  }

  .JPX-sidemenu-list a:hover {
    color: #e60012;
    text-decoration: underline;
  }

  .JPX-sidemenu-list-sub {
    background-color: #F7F7F7;
    padding: 16px;
    margin: 14px 0 24px;
  }
	
  .JPX-sidemenu-list-sub.level05,
  .JPX-sidemenu-list-sub.level06 {
    padding: 0 16px;
    margin: 0;
  }

  .JPX-sidemenu-list-sub.level05 li:first-child,
  .JPX-sidemenu-list-sub.level06 li:first-child {
    margin-top: 13px;
  }

  .JPX-sidemenu-list-sub li {
    margin-top: 13px;
  }
}
/* /サイドコンテンツ */

/*
テーブル
*/

.JPX-component-table {
  overflow: hidden;
  margin: 0 -16px;
  background-color: #f7f7f7;
  padding: 24px 0;
}

.JPX-component-table-inner {
  position: relative;
  padding-bottom: 40px;
}

.JPX-component-table-box {
  border: #d1d1d1 solid 1px;
  border-radius: 4px;
  overflow: hidden;
  margin: 0 8px;
  background-color: #ffffff;
}

.JPX-component-table-item {
  background-color: #ffffff;
}

.JPX-component-table-title {
  background-color: #333333;
  font-size: 12px;
  font-weight: 500;
  line-height: 14px;
  padding: 11px 16px;
  color: #ffffff;
}

.JPX-component-table-content {
  font-size: 12px;
  line-height: 18px;
  padding: 16px 16px;
}

.JPX-component-table-item:last-child .JPX-component-table-content .JPX-btn {
  max-width: 168px;
  font-size: 12px;
  display: block;
  margin: 0 auto;
  text-align: center;
}

/* スリック処理 */
.JPX-component-table .slick-list.draggable {
  margin: 0 24px -4px;
  overflow: visible;
}

.JPX-component-table .slick-track {
  display: flex;
}

.JPX-component-table .slick-slide {
  height: auto !important;
}

/* 前後ボタンデザイン */
.JPX-component-table .slick-prev.slick-arrow,.JPX-component-table .slick-next.slick-arrow {
  display: block;
  position: absolute;
  width: 36px;
  height: 36px;
  top: 50%;
  transform: translate(0, -50%);
  z-index: 1;
  background-color: #ffffff;
  border: #d1d1d1 solid 1px;
  border-radius: 50%;
}

.JPX-component-table .slick-prev.slick-arrow::before {
  content: "";
  position: absolute;
  display: block;
  background: url(../fonts/icn-right-arrow_gray.svg) center center no-repeat;
  background-size: 12px 12px;
  width: 12px;
  height: 12px;
  top: 50%;
  right: 50%;
  transform: translate(50%, -50%) rotate(180deg);
}

.JPX-component-table .slick-next.slick-arrow::before {
  content: "";
  position: absolute;
  display: block;
  background: url(../fonts/icn-right-arrow_gray.svg) center center no-repeat;
  background-size: 12px 12px;
  width: 12px;
  height: 12px;
  top: 50%;
  right: 50%;
  transform: translate(50%, -50%);
}

.JPX-component-table .slick-prev.slick-arrow span,.JPX-component-table .slick-next.slick-arrow span {
  display: none;
}

.JPX-component-table .slick-prev.slick-arrow {
  left: 4px;
  cursor: pointer;
}

.JPX-component-table .slick-next.slick-arrow {
  right: 4px;
  cursor: pointer;
}

.JPX-component-table .slick-prev.slick-arrow.slick-disabled,.slick-next.slick-arrow.slick-disabled {
  opacity: 0.5;
  cursor: default;
}
/* /前後ボタンデザイン */

/* ドットのデザイン */
.JPX-component-table .slick-dots li button:before{font-family: 'slick';font-size: 6px;line-height: 20px;position: absolute;top: 0;left: 0;width: 8px;height: 8px;content: "";text-align: center;-webkit-font-smoothing: antialiased;-moz-osx-font-smoothing: grayscale;background-color: #E0E0E0;border-radius: 50%;}
.JPX-component-table .slick-dots li.slick-active button:before{background-color: #E60012;}
.JPX-component-table .slick-dots li {
  width: 8px;
  height: 8px;
  margin: 0 6px;
}
.JPX-component-table .slick-dots li button {
  width: 8px;
  height: 8px;
}

.JPX-component-table .slick-dots > li:only-child {
  display: none;
}
/* /ドットのデザイン */
/* /スリック処理 */

.JPX-annotation {
  margin: 0 16px;
  counter-reset: item;
}

.JPX-annotation li {
  margin-top: 10px;
  font-size: 12px;
  display: flex;
  line-height: 15px;
}

.JPX-annotation li:first-child {
  margin-top: 0;
}

.JPX-annotation li::before {
  display: block;
  content: '（注'counter(item)'）';
  counter-increment: item 1;
  flex-shrink: 0;
}

.JPX-component-table-item:nth-child(4) .JPX-component-table-content {
  display: flex;
  }

@media screen and (min-width:769px) {
  .JPX-component-table {
    margin: 0 0 40px;
    background-color: transparent;
    padding: 0;
  }
  
  .JPX-component-table-inner {
    margin-bottom: 20px;
    padding-bottom: 0;
    border-radius: 4px;
    overflow: hidden;
    border: #d1d1d1 solid 1px;
  }

  .JPX-component-table-box {
    margin: 0;
    display: flex;
    flex-flow: nowrap;
    justify-content: space-around;
    align-items: stretch;
    border-radius: 0;
    border-top: #d1d1d1 solid 1px;
    border-right: none;
    border-left: none;
    border-bottom: none;
  }

  .JPX-component-table-box:nth-child(1) {
    border: none;
  }

  .JPX-component-table-box:nth-child(even) .JPX-component-table-item {
    background-color: #F7F7F7;
  }

  .JPX-component-table-box:nth-child(1) .JPX-component-table-item:nth-child(4) .JPX-component-table-content {
    height: calc(100% - 49px);
  }

  .JPX-component-table-box:nth-child(1) .JPX-component-table-title {
    display: block;
  }

  .JPX-component-table-box .JPX-component-table-title {
    display: none;
  }

  .JPX-component-table-item {
    border: #d1d1d1 solid 1px;
    border-left: none;
    border-top: none;border-bottom: none;
  }

  .JPX-component-table-item:nth-child(1),
  .JPX-component-table-item:nth-child(4){
    width: 15%;
    flex-shrink: 0;
  }

  .JPX-component-table-item:nth-child(1) .JPX-component-table-content {
    text-align: center;
  }

  .JPX-component-table-item:nth-child(2) {
    width: 20%;
    flex-shrink: 0;
  }

  .JPX-component-table-item:nth-child(3) {
    width: 50%;
    flex-shrink: 0;
  }

  .JPX-component-table-item:nth-child(4) .JPX-component-table-content {
    padding: 0 16px;
    height: 100%;
  }

  .JPX-component-table-item:nth-child(4) .JPX-component-table-content a {
    align-self: center;
  }

  .JPX-component-table-title {
    font-size: 14px;
    font-weight: 600;
    line-height: 17px;
    padding: 16px 0px;
    text-align: center;
  }

  .JPX-component-table-content {
    line-height: 21px;
    padding: 12px;
    font-size: 14px;
  }

  .JPX-component-table-item:last-child .JPX-component-table-content .JPX-btn {
    width: fit-content;
    font-size: 14px;
  }

  .JPX-annotation {
    margin: 0;
  }

  .JPX-annotation li {
    margin-top: 8px;
    line-height: 18px;
    font-size: 14px;
  }
}
/* /テーブル */

/*
タグ
*/

.JPX-share-btn {
  display: flex;
  align-items: baseline;
}

.JPX-share-btn .fb-share-button {
  margin-right: 8px;
}

.JPX-icon-label-box{
  margin-top: 10px;
}

.JPX-icon-label-data{
  margin-bottom: 10px;
}

.JPX-icon-label {
  display: inline-block;
  background-color: #f7f7f7;
  padding: 3px 12px 5px;
  font-size: 10px;
  line-height: 11px;
  border-radius: 12px;
  box-sizing: border-box;
  color: #000000;
  margin-right: 2px;
  margin-bottom: 4px;
}

.JPX-icon-label.seminar {
  background-color: #D53B5C;
  color: #ffffff;
}
.JPX-icon-label.cat01 {
  background: #5b5b5b;
  color: #ffffff;
}
.JPX-icon-label.cat02 {
  background: #3f589e;
  color: #ffffff;
}
.JPX-icon-label.cat03 {
  background: #3cafc8;
  color: #ffffff;
}
.JPX-icon-label.cat04 {
  background: #cabb18;
  color: #ffffff;
}
.JPX-icon-label.cat05 {
  background: #db8617;
  color: #ffffff;
}
.JPX-icon-label.cat06 {
  background: #9b2c20;
  color: #ffffff;
}
.JPX-icon-label.cat07 {
  background: #d53b5c;
  color: #ffffff;
}
.JPX-icon-label.cat08 {
  background: #94c852;
  color: #ffffff;
}
.JPX-icon-label.cat09 {
  background: #4ca05a;
  color: #ffffff;
}
.JPX-icon-label.cat010 {
  background: #8162a5;
  color: #ffffff;
}

.JPX-icon-label.level {
  background-color: #303EF4;
  color: #ffffff;
}

.JPX-icon-label.onair {
  background-color: #FCD702;
}

.JPX-icon-label-target {
  font-size: 10px;
  line-height: 11px;
  margin: 12px 0 16px;
  color: #000000;
}

.JPX-sub-head-title {
  font-size: 24px;
  font-weight: 500;
  color: #000000;
  line-height: 36px;
}
/* /タグ */

.JPX-head-img {
  margin: 32px auto 22px;
  text-align: center;
}

.JPX-head-img img {
  vertical-align: bottom;
  max-width: 100%;
}

@media screen and (min-width:769px) {
  .JPX-icon-label-box{
    margin-top: 0;
  }

  .JPX-icon-label {
    font-size: 12px;
    line-height: 13px;
    margin-right: 2px;
    margin-bottom: 4px;
  }

  .JPX-sub-head-title {
    font-size: 36px;
    line-height: 48px;
    margin: 17px 0 22px;
  }

  .JPX-icon-label-subbox {
    display: flex;
    align-items: center;
    justify-content: space-between;
  }
  
  .JPX-icon-label-target {
    font-size: 12px;
    line-height: 13px;
    display: inline;
    margin-left: 12px;
  }

  .JPX-head-img {
    margin: 40px auto;
  }
}

/*
講師情報
*/
.JPX-lecturer-box {
  margin-bottom: 40px;
}

.JPX-lecturer-box:last-child {
  margin-bottom: 0px;
}

.JPX-lecturer-img img {
  display: block;
  max-width: 100%;
  margin: 0 auto;
}

.JPX-lecturer-name {
  font-size: 16px;
  font-weight: 500;
  line-height: 20px;
  margin: 22px 0 14px; 
  color: #000000;
}

@media screen and (min-width:769px) {
  .JPX-lecturer-box {
    display: flex;
    flex-flow: nowrap;
    justify-content: center;
    align-items: flex-start;
    margin: 0 auto 60px;
  }

  .JPX-lecturer-img {
    margin-right: 32px;
    flex-shrink: 0;
  }

  .JPX-lecturer-img img {
    margin: 0 auto 0 0;
  }

  .JPX-lecturer-name {
    font-size: 20px;
    line-height: 24px;
    margin: 0 0 12px;
  }
}
/* /講師情報 */

/*
参考リンク
*/
.JPX-reference-data {
  display: flex;
  flex-flow: nowrap;
  justify-content: flex-start;
  align-items: center;
  text-decoration: none;
  padding: 16px 28px 16px 8px;
  box-sizing: border-box;
}

.JPX-reference-data a {
  display: block;
}

.JPX-reference-img {
  object-fit: cover;
  margin-right: 16px;
}

.JPX-reference-img img {
  vertical-align: bottom;
  width: 100px;
  height: 100%;
}

.JPX-reference-title {
  font-size: 14px;
  line-height: 19px;
  color: #000000;
}

@media screen and (min-width:769px) {
  .JPX-reference-data {
    padding: 24px 35px 24px 16px;
  }

  .JPX-reference-img {
    margin-right: 32px;
  }

  .JPX-reference-img img {
    width: 192px;
    height: 100%;
  }

  .JPX-reference-title {
    font-size: 16px;
  }
}
/* /参考リンク */

/* 過去分 */
.JPX-history-file-box {
  margin-bottom: 12px;
}

.JPX-history-file-box .JPX-history-file:last-child {
  margin-bottom: 0;
}

.JPX-history-file {
  background: #F7F7F7;
  border-radius: 4px;
  padding: 16px;
  margin-bottom: 24px;
}

.JPX-history-file a {
  text-decoration: none;
  color: #000;
  font-size: 12px;
  font-weight: 500;
  line-height: 14px;
  padding: 9px 37px 9px 12px;
  box-sizing: border-box;
  border: #d1d1d1 solid 1px;
  border-radius: 4px;
  display: block;
  background-size: 16px 16px;
}

.JPX-history-file.-is-pdf a {
  background: url(../fonts/icon_pdf_file.svg) right 12px center no-repeat #fff;
}
.JPX-history-file.-is-zip a {
  background: url(../fonts/icon_zip.svg) right 12px center no-repeat #fff;
}
.JPX-history-file.-is-excel a {
  background: url(../fonts/icon_excel.svg) right 12px center no-repeat #fff;
}
.JPX-history-file.-is-ppt a {
  background: url(../fonts/icon_ppt.svg) right 12px center no-repeat #fff;
}
.JPX-history-file.-is-word a {
  background: url(../fonts/icon_word.svg) right 12px center no-repeat #fff;
}
.JPX-history-file.-is-csv a {
  background: url(../fonts/icon_csv.svg) right 12px center no-repeat #fff;
}

@media screen and (min-width:769px) {
  .JPX-history-file-box {
    margin-bottom: 16px;
  }

  .JPX-history-file {
    padding: 20px;
    margin-bottom: 32px;
  }

  .JPX-history-file a {
    font-size: 14px;
    line-height: 17px;
    padding: 9px 39px 9px 16px;
  }

  .JPX-history-file a:hover {
    text-decoration: underline;
    color: #e60012;
    border: #e60012 solid 1px;
  }

  .JPX-history-file.-is-pdf a {
    background: url(../fonts/icon_pdf_file.svg) right 16px center no-repeat #fff;
  }
  .JPX-history-file.-is-zip a {
    background: url(../fonts/icon_zip.svg) right 16px center no-repeat #fff;
  }
  .JPX-history-file.-is-excel a {
    background: url(../fonts/icon_excel.svg) right 16px center no-repeat #fff;
  }
  .JPX-history-file.-is-ppt a {
    background: url(../fonts/icon_ppt.svg) right 16px center no-repeat #fff;
  }
  .JPX-history-file.-is-word a {
    background: url(../fonts/icon_word.svg) right 16px center no-repeat #fff;
  }
  .JPX-history-file.-is-csv a {
    background: url(../fonts/icon_csv.svg) right 16px center no-repeat #fff;
  }
}
/* /過去分 */

/*
タブコンポーネント
*/
.JPX-tab-menu .JPX-shadow-bar.-is-right-shadow {
 border-radius: 0px;
}

.JPX-tab-menu .JPX-shadow-bar.-is-left-shadow {
  border-radius: 0px;
 }

.JPX-tab-menu-inner {
  position: relative;
  overflow-x: scroll;
  margin-bottom: 30px;
  background-attachment: scroll;
  background-repeat: no-repeat;
}

.JPX-tab-menu-box ul {
  display: flex;
  flex-flow: nowrap;
  justify-content: flex-start;
  align-items: stretch;
  width: fit-content;
}

.JPX-tab-menu-box ul li {
  align-self: stretch;
  flex-shrink: 0;
  background: #efefef;
  border-right: #d1d1d1 solid 1px;
}

.JPX-tab-menu-box ul li:last-child {
  border-right: none;
}

.JPX-tab-menu-box ul li a {
  display: flex;
  justify-content: center;
  align-items: center;
  height: 100%;
  text-decoration: none;
  color: #333;
  font-weight: 500;
  text-align: center;
  font-size: 12px;
  line-height: 14px;
  padding: 0px 16px;
  box-sizing: border-box;
  min-height: 40px;
}

.JPX-tab-menu-box ul li.-is-active {
  background: #e60012;
}

.JPX-tab-menu-box ul li.-is-active a {
  color: #ffffff;
}

@media screen and (min-width:769px) {
.JPX-tab-menu li.-is-active {
  position: relative;
}

.JPX-tab-menu li.-is-active::before {
  content: "";
  position: absolute;
  display: block;
  width: 16px;
  height: 8px;
  background: url(../fonts/tab-arrow.svg) center center no-repeat;
  background-size: contain;
  bottom: -8px;
  right: 50%;
  transform: translate(50%, 0);
  z-index: 1;
}

  .JPX-tab-menu-inner {
    position: relative;
    overflow: visible;
    margin-bottom: 80px;
    background-attachment: scroll;
    background-repeat: no-repeat;
  }

  .JPX-tab-menu-box {
    overflow-x: visible;
  }

  .JPX-tab-menu-box ul {
    overflow-x: visible;
    width: auto;
  }

  .JPX-tab-menu-box ul li {
    flex-shrink: 1;
    flex: 1;
    box-sizing: border-box;
  }

  .JPX-tab-menu-box ul li a:hover {
    background: #a3010c;
    color: #fff;
  }

  .JPX-tab-menu-box ul li.-is-active a {
    pointer-events: none;
  }

  .JPX-tab-menu-box ul li a {
    font-size: 14px;
    font-weight: 500;
    line-height: 17px;
    padding: 15px 8px;
    color: #666666;
  }
}
/* /タブコンポーネント */

/* テーブルコンポーネント */
.JPX-table-caption {
  font-size: 12px;
  line-height: 14px;
  margin-bottom: 10px;
  text-align: right;
}

.JPX-component-normal-table {
  position: relative;
	overflow: auto;
  margin-bottom: 24px;
  background-attachment: scroll;
  background-repeat: no-repeat;
}

.JPX-shadow-bar {
  z-index: 1;
  border-radius: 4px;
}

.JPX-shadow-bar.-is-left-shadow {
  content: "";
  position: absolute;
  display: block;
  width: 20px;
  height: 100%;
  background: linear-gradient(to left, rgba(255, 255, 255, 0), rgba(0, 0, 0, 0.2)) 0 0/20px 100%;
  background-repeat: no-repeat;
  background-attachment: scroll;
  top: 0;
  left: 0;
  z-index: 1;
  border-radius: 4px;
}

.JPX-shadow-bar.-is-right-shadow {
  content: "";
  position: absolute;
  display: block;
  width: 20px;
  height: 100%;
  background: linear-gradient(to right, rgba(255, 255, 255, 0), rgba(0, 0, 0, 0.2)) right/20px 100%;
  background-repeat: no-repeat;
  background-attachment: scroll;
  top: 0;
  right: 0;
  z-index: 1;
  border-radius: 4px;
}

.JPX-component-normal-table table {
  border-collapse: separate;
  width: 100%;
}

.JPX-component-normal-table tr.-is-even {
  background: #f7f7f7;
}
.JPX-component-normal-table tr.-is-even td {
  border-top: #d1d1d1 solid 1px;
}

.JPX-component-normal-table th {
  padding: 15px 16px;
  background: #333333;
  color: #ffffff;
  border-top: #d1d1d1 solid 1px;
  border-right: #d1d1d1 solid 1px;
  text-align: center;
  font-size: 12px;
  line-height: 13px;
  font-weight: 500;
  box-sizing: border-box;
}

.JPX-component-normal-table th:first-child {
  border-radius: 4px 0 0 0;
  border-left: #d1d1d1 solid 1px;
}

.JPX-component-normal-table th:last-child {
  border-radius: 0 4px 0 0;
  border-right: #d1d1d1 solid 1px;
}

.JPX-component-normal-table tr:last-child td:first-child {
  border-radius: 0 0 0 4px;
}

.JPX-component-normal-table tr:last-child td:last-child {
  border-radius: 0 0 4px 0;
}

.JPX-component-normal-table table td {
	word-break: initial;
  text-align: right;
  padding: 13px 16px;
  border-right: #d1d1d1 solid 1px;
  box-sizing: border-box;
  font-size: 12px;
  font-weight: 500;
  line-height: 13px;
}

.JPX-component-normal-table table td:first-child {
  text-align: center;
  border-left: #d1d1d1 solid 1px;
}

.JPX-component-normal-table table tr:last-child td {
  border-bottom: #d1d1d1 solid 1px;
}

@media screen and (min-width:769px) {
  .JPX-table-caption {
    font-size: 14px;
    line-height: 15px;
    margin-bottom: 8px;
  }

.JPX-component-normal-table {
  margin-bottom: 32px;
}
  
  .JPX-component-normal-table table {
    table-layout: fixed;
  }

  .JPX-component-normal-table th {
    padding: 17px 10px;
    font-size: 14px;
    line-height: 17px;
  }

  .JPX-component-normal-table table td {
    padding: 17px 18px;
    font-size: 14px;
    line-height: 17px;
  }
}

/* /テーブルコンポーネント */

/* ボタンカラム */
.JPX-btn-column a {
  margin-top: 16px;
}

.JPX-btn-column a:first-child {
  margin-top: 0;
}

.JPX-btn-column-item {
  display: block;
  position: relative;
  font-size: 14px;
  color: #000;
  font-weight: 500;
  box-sizing: border-box;
  padding: 21px 34px 21px 80px;
  border: #d1d1d1 solid 1px;
  border-radius: 4px;
  text-decoration: none;
  box-shadow: 0px 1px 3px rgba(0, 0, 0, 0.08);
}

.JPX-btn-column-item::before {
  content: "";
  position: absolute;
  display: block;
  width: 32px;
  height: 32px;
  background: url(../fonts/icn_mail.svg) center center no-repeat;
  background-size: contain;
  top: 50%;
  left: 24px;
  transform: translate(0, -50%);
}

.JPX-btn-column-item::after {
  content: "";
  position: absolute;
  display: block;
  width: 10px;
  height: 10px;
  background: url(../fonts/icn-arrow_take_open.svg) center center no-repeat;
  background-size: contain;
  top: 50%;
  right: 16px;
  transform: translate(0, -50%) rotate(-90deg);
}

.JPX-btn-column-item.-is-contact::before {
  background: url(../fonts/icn_pen.svg) center center no-repeat;
  background-size: contain;
}

.JPX-btn-column-item.-is-faq::before {
  background: url(../fonts/icn_faq.svg) center center no-repeat;
  background-size: contain;
}

.JPX-btn-column-item.-is-sns::before {
  background: url(../fonts/icn_sns.svg) center center no-repeat;
  background-size: contain;
}

.JPX-btn-column-item.-is-glossary::before {
  background: url(../fonts/icn_glossary.svg) center center no-repeat;
  background-size: contain;
}

@media screen and (min-width:769px) {
  .JPX-btn-column {
    display: flex;
    flex-flow: wrap;
    justify-content: flex-start;
    align-items: flex-start;
    margin: -16px 0 0 -16px;
  }

  .JPX-btn-column-item {
    width: calc((100% / 2) - 16px) !important;
    margin: 16px 0 0 16px !important;
    font-size: 16px;
  }

  .JPX-btn-column-item::before {
    width: 40px;
    height: 40px;
    left: 20px;
  }

  .JPX-btn-column-item::after {
    width: 12px;
    height: 12px;
  }

  .JPX-btn-column-item:hover {
    opacity: .7;
  }
}
/* /ボタンカラム */

/* 資料リスト */
.JPX-document-list {
  margin-bottom: 32px;
}

.JPX-document-list ul li {
  border-bottom: 1px solid #d1d1d1;
}

.JPX-document-list ul li a {
  display: block;
  position: relative;
  padding: 10px 32px 10px 12px;
  text-decoration: none;
  word-break: break-all;
  font-size: 14px;
  color: #333;
  line-height: 24px;
}

.JPX-document-list ul li a::after {
  position: absolute;
  content: "";
  width: 12px;
  height: 12px;
  background: url(../fonts/icn-right-arrow_gray.svg) center center no-repeat;
  background-size: contain;
  top: 50%;
  right: 12px;
  transform: translate(0, -50%);
  display: block;
}

.JPX-document-list ul li.-is-pdf span::after {
  content: "";
  display: inline-block;
  background: url(../fonts/icon_pdf_file.svg) center center no-repeat;
  background-size: contain;
  width: 18px;
  height: 18px;
  left: auto;
  top: 50%;
  transform: translate(0, 20%);
  margin-left: 5px;
}

.JPX-document-list ul li.-is-excel span::after {
  content: "";
  display: inline-block;
  background: url(../fonts/icon_excel.svg) center center no-repeat;
  background-size: contain;
  width: 18px;
  height: 18px;
  left: auto;
  top: 50%;
  transform: translate(0, 20%);
  margin-left: 5px;
}

.JPX-document-list ul li.-is-word span::after {
  content: "";
  display: inline-block;
  background: url(../fonts/icon_word.svg) center center no-repeat;
  background-size: contain;
  width: 18px;
  height: 18px;
  left: auto;
  top: 50%;
  transform: translate(0, 20%);
  margin-left: 5px;
}

.JPX-document-list ul li.-is-csv span::after {
  content: "";
  display: inline-block;
  background: url(../fonts/icon_csv.svg) center center no-repeat;
  background-size: contain;
  width: 18px;
  height: 18px;
  left: auto;
  top: 50%;
  transform: translate(0, 20%);
  margin-left: 5px;
}

.JPX-document-list ul li.-is-zip span::after {
  content: "";
  display: inline-block;
  background: url(../fonts/icon_zip.svg) center center no-repeat;
  background-size: contain;
  width: 18px;
  height: 18px;
  left: auto;
  top: 50%;
  transform: translate(0, 20%);
  margin-left: 5px;
}

.JPX-document-list ul li.-is-ppt span::after {
  content: "";
  display: inline-block;
  background: url(../fonts/icon_ppt.svg) center center no-repeat;
  background-size: contain;
  width: 18px;
  height: 18px;
  left: auto;
  top: 50%;
  transform: translate(0, 20%);
  margin-left: 5px;
}


@media screen and (min-width:769px) {
  .JPX-document-list ul li a {
    font-size: 16px;
    padding: 20px 32px 20px 12px;
  }

  .JPX-document-list ul li a:hover:after {
    background: url(../fonts/icn-right-arrow_hover.svg) center center no-repeat;
    background-size: contain;
  }

  .JPX-document-list ul li a:hover {
    color: #e60012;
  }
}
/* /資料リスト */

/* ---------------------------------------------------

NOTE 2024/04/03 新規パーツ

-----------------------------------------------------*/

/* 緊急告知 */
.JPX-urgent-notice {
  background-color: #fef3f3;
  padding: 20px 16px;
  margin-bottom: 40px;
}

.JPX-urgent-notice-title {
  color: #E60012;
  font-size: 16px;
  line-height: 19px;
  font-weight: 600;
}

.JPX-urgent-notice-text {
  font-size: 14px;
  line-height: 25px;
  margin-top: 20px;
}

.JPX-urgent-notice-text a {
  color: #000;
  position: relative;
  font-size: 14px;
  line-height: 17px;
  display: block;
  width: fit-content;
  margin-top: 20px;
}

.JPX-urgent-notice-text a::after {
  content: url(../fonts/icn-blank.svg);
  background-size: contain;
  width: 12px;
  height: 12px;
  right: auto;
  bottom: 3px;
  margin-left: 5px;
}

@media screen and (min-width:769px) {
  .JPX-urgent-notice {
    padding: 28px 32px;
    margin-bottom: 80px;
  }
  
  .JPX-urgent-notice-title {
    font-size: 20px;
    line-height: 24px;
  }
  
  .JPX-urgent-notice-text {
    font-size: 16px;
    line-height: 29px;
    margin-top: 28px;
  }
  
  .JPX-urgent-notice-text a {
    font-size: 16px;
    line-height: 29px;
    margin-top: 26px;
  }

  .JPX-urgent-notice-text a:hover {
    text-decoration: none;
    color: #e60012;
  }

  .JPX-urgent-notice-text a:hover::after {
    content: url(../fonts/icn-blank-hover.svg);
    background-size: contain;
  }
}

/* 条件絞り込み */
.JPX-narrow-search {
  margin-bottom: 40px;
}

.JPX-narrow-search-title {
  position: relative;
  background: linear-gradient(to right, #e60012, #a4000d);
  border-radius: 4px;
  color: #fff;
  font-size: 12px;
  font-weight: 500;
  padding: 8px 30px 8px 16px;
}

.JPX-narrow-search-title::before {
  content: "";
  position: absolute;
  background: #fff;
  width: 12px;
  height: 2px;
  right: 16px;
  top: 50%;
  transform: translate(0, -50%);
}

.JPX-narrow-search-title::after {
  content: "";
  position: absolute;
  background: #fff;
  width: 12px;
  height: 2px;
  right: 16px;
  top: 50%;
  transform: translate(0, -50%) rotate(90deg);
}

.JPX-narrow-search-title.-is-open::after {
  display: none;
}

.JPX-narrow-search-title:hover {
  opacity: .7;
}

.JPX-narrow-search-box {
  background: #F7F7F7;
  padding: 20px 14px;
  display: none;
}

.JPX-narrow-search-box.-is-open {
  display: block;
}

.JPX-narrow-search-box li:first-child .JPX-narrow-search-subtitle {
  margin-top: 0;
}

.JPX-narrow-search-subtitle {
  margin-top: 8px;
}

.JPX-narrow-search-subtitle span {
  position: relative;
  padding-left: 12px;
  font-size: 14px;
  font-weight: 500;
  line-height: 24px;
  display: block;
  margin-bottom: 14px;
}

.JPX-narrow-search-subtitle span::before {
  content: "";
  position: absolute;
  display: block;
  background: linear-gradient(to bottom, #e60012, #a4000d);
  width: 4px;
  height: 20px;
  top: 2px;
  left: 0px;
  transform: skewY(26deg);
}

.JPX-checkbox-item {
  margin-right: 10px;
  display: inline-block;
  margin-bottom: 16px;
}

.JPX-narrow-search-box input[type=checkbox] {
  position: relative;
  width: 20px;
  height: 20px;
  margin-right: 6px;
  background: #fff;
  border-radius: 4px;
  border: solid 1px #DDDDDD;
  vertical-align: bottom;
  appearance: none;
}

.JPX-narrow-search-box input[type=checkbox]:checked {
  background: url(../fonts/icn_checkbox_check.svg) center center no-repeat #fff;
  background-size: 10px 10px;
}

.JPX-narrow-search-box label.checkbox {
  font-size: 12px;
}

.JPX-sort {
  display: flex;
  flex-flow: nowrap;
  justify-content: flex-end;
  align-items: center;
  margin-left: 16px;
  margin-bottom: 24px;
}

.JPX-sort .sort {
  flex-grow: 1;
  display: block;
  margin-right: 16px;
  position: relative;
}

.JPX-sort .sort select {
  display: block;
  width: 100%;
  padding: 6px 12px;
  border: solid 1px #ddd;
  appearance: none;
  border-radius: 4px;
  filter: drop-shadow(0px 1px 3px rgba(0, 0, 0, 0.08));
  background-color: #fff;
}

.JPX-sort .sort::after {
  content: "";
  display: block;
  position: absolute;
  background: url(../fonts/icn-arrow_take_open.svg) center center no-repeat;
  background-size: contain;
  width: 10px;
  height: 10px;
  top: 50%;
  transform: translate(0, -50%);
  right: 12px;
  pointer-events: none;
}

.JPX-sort .pages {
  position: relative;
  font-size: 12px;
  display: flex;
  justify-content: flex-start;
  align-items: center;
}

.JPX-sort .pages::after {
  content: "";
  display: block;
  position: absolute;
  background: url(../fonts/icn-arrow_take_open.svg) center center no-repeat;
  background-size: contain;
  width: 10px;
  height: 10px;
  top: 50%;
  transform: translate(0, -50%);
  right: 32px;
  pointer-events: none;
}

.JPX-sort .pages select {
  margin: 0 6px;
  padding: 6px 0 6px 12px;
  width: 72px;
  border: solid 1px #ddd;
  appearance: none;
  border-radius: 4px;
  filter: drop-shadow(0px 1px 3px rgba(0, 0, 0, 0.08));
  background-color: #fff;
}

.application_status {
  margin-right: 22px;
  display: inline-block;
  margin-bottom: 16px;
}

.application_status input[type=checkbox] {
  width: 20px;
  height: 20px;
  margin-right: 6px;
  background: #fff;
  border-radius: 4px;
  border: solid 1px #DDDDDD;
  vertical-align: bottom;
}

.hold_status input[type=checkbox] {
  width: 20px;
  height: 20px;
  margin-right: 6px;
  background: #fff;
  border-radius: 4px;
  border: solid 1px #DDDDDD;
  vertical-align: bottom;
}

.hold_status {
  margin-right: 10px;
  display: inline-block;
  margin-bottom: 16px;
}

.JPX-narrow-search-box li .btn-wrap {
  display: flex;
  justify-content: flex-start;
  align-items: stretch;
  margin-right: -8px;
  margin-top: 8px;
}

.JPX-narrow-search-box li .btn-wrap input {
  display: block;
  width: calc((100% / 2) - 8px);
  margin-right: 8px;
  border: solid 1px #DDDDDD;
  border-radius: 20px;
  font-size: 12px;
  font-weight: 500;
  min-height: 36px;
  display: flex;
  justify-content: center;
  align-items: center;
  padding: 0;
}

.JPX-narrow-search-box li .btn-wrap input.submit-btn {
  background: #EEEEEE;
}

.JPX-narrow-search-box li .btn-wrap input.submit-btn.search-btn {
  background: #fff;
}

@media screen and (min-width:769px) {
  .JPX-narrow-search {
    margin-bottom: 48px;
  }
  
  .JPX-narrow-search-title {
    font-size: 14px;
    padding: 9px 58px 9px 16px;
    cursor: pointer;
  }
  
  .JPX-narrow-search-box {
    padding: 32px;
  }
  
  .JPX-narrow-search-box li:first-child .JPX-narrow-search-subtitle {
    margin-top: 0;
  }
  
  .JPX-narrow-search-subtitle {
    margin-top: 8px;
  }
  
  .JPX-narrow-search-subtitle span {
    padding-left: 12px;
    font-size: 16px;
    line-height: 19px;
    margin-bottom: 14px;
  }
  
  .JPX-narrow-search-subtitle span::before {
    top: 0;
  }
  
  .JPX-checkbox-item {
    margin-right: 25px;
  }
  
  .JPX-narrow-search-box input[type=checkbox] {
    margin-right: 7px;
  }
  
  .JPX-narrow-search-box label.checkbox {
    font-size: 14px;
  }

  .JPX-narrow-search-box li .btn-wrap input.submit-btn.search-btn:hover {
    border: solid 1px #E60012;
    color: #E60012;
  }
  
  .JPX-sort {
    margin-left: 0;
    margin-bottom: 32px;
  }
  
  .JPX-sort .sort {
    flex-grow: 0;
    margin-right: 32px;
    width: 198px;
  }
  
  .JPX-sort .sort select {
    width: 100%;
    padding: 10px 16px;
    font-size: 14px;
    cursor: pointer;
  }
  
  .JPX-sort .sort::after {
    right: 18px;
  }
  
  .JPX-sort .pages {
    font-size: 14px;
  }
  
  .JPX-sort .pages::after {
    right: 36px;
  }
  
  .JPX-sort .pages select {
    margin: 0 7px;
    padding: 10px 16px;
    width: 76px;
    font-size: 14px;
    cursor: pointer;
  }
  
  .application_status {
    margin-right: 22px;
    display: inline-block;
    margin-top: 16px;
    margin-bottom: 16px;
  }
  
  .application_status input[type=checkbox] {
    margin-right: 7px;
  }
  
  .hold_status input[type=checkbox] {
    margin-right: 7px;
  }
  
  .hold_status {
    margin-right: 0;
    margin-top: 16px;
    margin-bottom: 32px;
  }
  
  .JPX-narrow-search-box li .btn-wrap {
    margin-right: -16px;
    margin-top: 16px;
    justify-content: center;
  }
  
  .JPX-narrow-search-box li .btn-wrap input {
    width: calc((100% / 2) - 16px);
    margin-right: 16px;
    font-size: 14px;
    line-height: 17px;
    min-height: 38px;
    width: fit-content;
    min-width: 192px;
    cursor: pointer;
  }

  .JPX-narrow-search-box li .btn-wrap input:hover {
    color: inherit;
    opacity: .7;
  }
}

/* 絞り込みコンテンツ */
.JPX-result-contents-box {
  border-radius: 4px;
  background: #fff;
  border: 1px solid #ddd;
  box-shadow: 0px 1px 3px rgba(0, 0, 0, 0.08);
  padding: 24px 16px;
  margin-bottom: 16px;
  display: block;
  text-decoration: none;
  color: #000;
}

.JPX-result-contents-box:hover {
  opacity: .7;
}

.JPX-result-contents-box:hover .JPX-result-contents-title{
  color: #000;
}

.JPX-result-contents-box:last-child {
  margin-bottom: 0;
}

.JPX-result-contents-data:nth-child(1) {
  flex-grow: 1;
}

.JPX-result-contents-label {
  display: flex;
  justify-content: flex-start;
  align-items: stretch;
  flex-flow: wrap;
}

.JPX-result-contents-icon-label {
  display: inline-block;
  background-color: #f7f7f7;
  padding: 3px 12px 5px;
  font-size: 10px;
  line-height: 11px;
  border-radius: 12px;
  box-sizing: border-box;
  color: #000000;
  margin-right: 4px;
  margin-bottom: 13px;
}

.JPX-result-contents-icon-label.pink {
  background-color: #D53B5C;
  color: #ffffff;
}

.JPX-result-contents-icon-label.blue {
  background-color: #303EF4;
  color: #ffffff;
}

.JPX-result-contents-icon-label.lightblue {
  background-color: #3CAFC8;
  color: #ffffff;
}

.JPX-result-contents-icon-label.lightgreen {
  background-color: #94C853;
  color: #ffffff;
}

.JPX-result-contents-icon-label.gold {
  background-color: #CABB18;
  color: #ffffff;
}

.JPX-result-contents-icon-label.purple {
  background-color: #8162A5;
  color: #ffffff;
}

.JPX-result-contents-icon-label.yellow {
  background-color: #FCD702;
  color: #000;
}

.JPX-result-contents-icon-label.orange {
  background-color: #DB8616;
  color: #ffffff;
}

.JPX-result-contents-icon-label.gray {
  background-color: #E0E0E0;
  color: #000;
}

.JPX-result-contents-icon-label.darkgray {
  background-color: #5B5B5B;
  color: #ffffff;
}

.JPX-result-contents-icon-label.level {
  background-color: #303EF4;
  color: #ffffff;
}
.JPX-result-contents-icon-label.cat01 {
  background: #5b5b5b;
  color: #ffffff;
}
.JPX-result-contents-icon-label.cat02 {
  background: #3f589e;
  color: #ffffff;
}
.JPX-result-contents-icon-label.cat03 {
  background: #3cafc8;
  color: #ffffff;
}
.JPX-result-contents-icon-label.cat04 {
  background: #cabb18;
  color: #ffffff;
}
.JPX-result-contents-icon-label.cat05 {
  background: #db8617;
  color: #ffffff;
}
.JPX-result-contents-icon-label.cat06 {
  background: #9b2c20;
  color: #ffffff;
}
.JPX-result-contents-icon-label.cat07 {
  background: #d53b5c;
  color: #ffffff;
}
.JPX-result-contents-icon-label.cat08 {
  background: #94c852;
  color: #ffffff;
}
.JPX-result-contents-icon-label.cat09 {
  background: #4ca05a;
  color: #ffffff;
}
.JPX-result-contents-icon-label.cat010 {
  background: #8162a5;
  color: #ffffff;
}
.JPX-result-contents-icon-label.cat011 {
  background: #e60012;
  color: #ffffff;
}
.JPX-result-contents-icon-label.cat012 {
  background: #0039c8;
  color: #ffffff;
}
.JPX-result-contents-icon-label.step1 {
  background: #E402A9;
  color: #ffffff;
}
.JPX-result-contents-icon-label.step2 {
  background: #EDBD0B;
  color: #ffffff;
}
.JPX-result-contents-icon-label.step3 {
  background: #0070C0;
  color: #ffffff;
}
.JPX-result-contents-icon-label.step4 {
  background: #7030A0;
  color: #ffffff;
}
.JPX-result-contents-icon-label.topics {
  background: #009592;
  color: #ffffff;
}

.JPX-result-contents-icon-label.icon-list-category {
  background-color: #e60012;
  color: #fff
}

.JPX-result-contents-icon-label.icon-list-category.ilc003 {
  background-color: #0039c8 !important;
}

.JPX-result-contents-icon-label.icon-list-category.ilc002 {
  background-color: #93b83c !important;
}

.JPX-result-contents-title {
  position: relative;
  padding-left: 13px;
  margin-bottom: 20px;
  font-size: 16px;
  font-weight: 500;
  margin-bottom: 14px;
  word-break: break-word;
}

.JPX-result-contents-title::before {
  content: "";
  position: absolute;
  display: block;
  background: linear-gradient(to bottom, #e60012, #a4000d);
  width: 4px;
  height: 100%;
  top: 0px;
  left: 0px;
  transform: skewY(26deg);
}

.JPX-result-contents-text {
  font-size: 14px;
  margin-bottom: 14px;
  word-break: break-word;
  line-height: 24px;
}

.JPX-result-contents-text.sub {
  font-size: 12px;
}

.JPX-result-contents-tag {
  display: inline-block;
  background-color: #f7f7f7;
  padding: 3px 12px 5px;
  font-size: 10px;
  line-height: 11px;
  border-radius: 12px;
  box-sizing: border-box;
  color: #000000;
  margin-right: 4px;
  margin-bottom: 4px;
}

.JPX-result-contents-group .JPX-result-contents-title {
  margin-top: 20px;
  margin-bottom: 8px;
}

.JPX-result-contents-group .JPX-result-contents-text {
  color: #000;
}

.JPX-result-contents-group:last-child .JPX-result-contents-text {
  margin-bottom: 0;
}

@media screen and (min-width:769px) {
  .JPX-result-contents-box {
    padding: 32px;
    margin-bottom: 32px;
    justify-content: flex-start;
    align-items: flex-start;
  }

  .JPX-result-contents-innerbox {
    display: flex;
  }

  .JPX-result-contents-data:nth-child(2) {
    flex-shrink: 0;
    margin-left: 64px;
    min-width: 240px;
  }
  
  .JPX-result-contents-icon-label {
    font-size: 12px;
    line-height: 13px;
  }
  
  .JPX-result-contents-title {
    padding-left: 10px;
    margin-bottom: 18px;
    font-size: 20px;
    line-height: 28px;
  }
  
  .JPX-result-contents-text {
    font-size: 16px;
    margin-bottom: 20px;
    line-height: 26px;
  }
  
  .JPX-result-contents-text.sub {
    font-size: 14px;
  }

  .JPX-result-contents-box:hover .JPX-result-contents-data:first-child .JPX-result-contents-title {
    color: #e60012;
  }
  
  .JPX-result-contents-tag {
    font-size: 12px;
    line-height: 13px;
  }
  
  .JPX-result-contents-group .JPX-result-contents-title {
    margin-top: 0;
    font-size: 16px;
  }

  .JPX-result-contents-group .JPX-result-contents-text{
    font-size: 14px;
    line-height: 15px;
  }
}

/* ページャー */
.JPX-news-paging {
  margin-top: 40px;
}

.JPX-news-paging ul {
  display: flex;
  justify-content: center;
  align-items: center;
  flex-wrap: wrap;
}

.JPX-news-paging ul li span {
  padding: 0 8px;
  color: #e60012;
  position: relative;
  font-size: 16px;
}

.JPX-news-paging ul li span::before {
  content: "";
  position: absolute;
  display: block;
  width: 50%;
  height: 1px;
  bottom: 0;
  left: 51%;
  transform: translate(-50%, 0);
  background: #e60012;
  background-size: contain;
}

.JPX-news-paging ul li a {
  padding: 0 8px;
  text-decoration: none;
  color: #666666;
  font-size: 16px;
}

.JPX-news-paging ul li .JPX-btn-prev {
  position: relative;
  display: block;
  width: 24px;
  height: 24px;
  border-radius: 50%;
  border: #d1d1d1 solid 1px;
  background: #ffffff;
  text-indent: -9999px;
  padding: 0;
  margin-right: 15px;
}

.JPX-news-paging ul li .JPX-btn-prev::before {
  content: "";
  position: absolute;
  display: block;
  background: url(../fonts/icn-right-arrow_gray.svg) center center no-repeat;
  background-size: 12px 12px;
  width: 12px;
  height: 12px;
  top: 50%;
  right: 50%;
  transform: translate(50%, -50%) rotate(180deg);
}

.JPX-news-paging ul li .JPX-btn-prev.-is-active {
  pointer-events: none;
  cursor: pointer;
}

.JPX-news-paging ul li .JPX-btn-prev.-is-active::before {
  opacity: .5;
}

.JPX-news-paging ul li .JPX-btn-next {
  position: relative;
  display: block;
  width: 24px;
  height: 24px;
  border-radius: 50%;
  border: #d1d1d1 solid 1px;
  background: #ffffff;
  text-indent: -9999px;
  padding: 0;
  margin-left: 15px;
}

.JPX-news-paging ul li .JPX-btn-next::before {
  content: "";
  position: absolute;
  display: block;
  background: url(../fonts/icn-right-arrow_gray.svg) center center no-repeat;
  background-size: 12px 12px;
  width: 12px;
  height: 12px;
  top: 50%;
  right: 50%;
  transform: translate(50%, -50%);
}

.JPX-news-paging ul li .JPX-btn-next.-is-active {
  pointer-events: none;
  cursor: pointer;
}

.JPX-news-paging ul li .JPX-btn-next.-is-active::before {
  opacity: .5;
}


@media screen and (min-width:769px) {
  .JPX-news-paging {
    margin-top: 48px;
  }
  
  .JPX-news-paging ul li span {
    font-size: 20px;
  }
  
  .JPX-news-paging ul li a {
    font-size: 20px;
  }

  .JPX-news-paging ul li a:hover {
    color: #e60012;
  }
  
  .JPX-news-paging ul li .JPX-btn-prev {
    width: 32px;
    height: 32px;
    margin-right: 24px;
  }

  .JPX-news-paging ul li .JPX-btn-prev:hover {
    border: solid 1px #e60012;
  }

  .JPX-news-paging ul li .JPX-btn-prev:hover::before {
    background: url(../fonts/icn-arrow_take_open_red.svg) center center no-repeat;
    transform: translate(50%, -50%) rotate(90deg);
  }
  
  .JPX-news-paging ul li .JPX-btn-next {
    width: 32px;
    height: 32px;
    margin-left: 24px;
  }

  .JPX-news-paging ul li .JPX-btn-next:hover {
    border: solid 1px #e60012;
  }

  .JPX-news-paging ul li .JPX-btn-next:hover::before {
    background: url(../fonts/icn-arrow_take_open_red.svg) center center no-repeat;
    transform: translate(50%, -50%) rotate(-90deg);
  }
}

/* 個別ページ汎用テキスト */
.JPX-common-text-wrapper {
  margin-bottom: 40px;
}
.JPX-common-text-wrapper > *:first-child {
  margin-top: 0;
}
.JPX-common-text-wrapper > *:last-child {
  margin-bottom: 0;
}

.JPX-common-text {
  font-size: 14px;
  line-height: 25px;
  margin: 8px 0 7px;
}

@media screen and (min-width:769px) {
  .JPX-common-text-wrapper {
    margin-bottom: 48px;
  }
  .JPX-common-text {
    font-size: 16px;
    line-height: 29px;
  }
}

.JPX-sort-wrapper {
  text-align: center;
  background: #F7F7F7;
  padding: 16px;
}

.JPX-sort-text {
  margin-bottom: 10px;
}

.JPX-sort-text > span {
  font-weight: bold;
  color: #E60012;
}

.JPX-sort-wrapper .pages {
  position: relative;
  display: flex;
  align-items: center;
  width: fit-content;
  margin: 0 auto;
}

.JPX-sort-wrapper .pages::after {
  content: "";
  display: block;
  position: absolute;
  background: url(../fonts/icn-arrow_take_open.svg) center center no-repeat;
  background-size: contain;
  width: 10px;
  height: 10px;
  top: 50%;
  transform: translate(0, -50%);
  right: 32px;
  pointer-events: none;
}

.JPX-sort-wrapper .pages select {
  margin: 0 6px;
  padding: 6px 12px;
  width: 72px;
  border: solid 1px #ddd;
  appearance: none;
  border-radius: 4px;
  filter: drop-shadow(0px 1px 3px rgba(0, 0, 0, 0.08));
  background-color: #fff;
  cursor: pointer;
}

.JPX-news-list {
  margin-top: 46px;
}

.JPX-news-list a {
  display: block;
  padding: 15px 26px 15px 6px;
  border-bottom: solid #DDDDDD 1px;
  text-decoration: none;
  background: url(../fonts/icn-right-arrow_gray.svg) right 8px center no-repeat;
  background-size: 10px 10px;
}

.JPX-news-list .JPX-news-list-date-box {
  display: block;
}

.JPX-news-list .JPX-news-list-date {
  color: #666666;
  font-size: 12px;
  margin-right: 12px;
}

.JPX-news-list li .-is-pdf {
  position: relative;
  width: 18px;
  margin-left: 4px;
}

.JPX-news-list li .-is-pdf::before {
  content: "　";
  position: absolute;
  background: url(../fonts/icon_pdf_file.svg) center center no-repeat;
  background-size: contain;
  width: 18px;
  height: 18px;
  bottom: 2px;
}

.JPX-news-list li .-is-zip {
  position: relative;
  width: 18px;
  margin-left: 4px;
}

.JPX-news-list li .-is-zip::before {
  content: "　";
  position: absolute;
  background: url(../fonts/icon_zip.svg) center center no-repeat;
  background-size: contain;
  width: 18px;
  height: 18px;
  bottom: 2px;
}

.JPX-news-list li .-is-excel {
  position: relative;
  width: 18px;
  margin-left: 4px;
}

.JPX-news-list li .-is-excel::before {
  content: "　";
  position: absolute;
  background: url(../fonts/icon_excel.svg) center center no-repeat;
  background-size: contain;
  width: 18px;
  height: 18px;
  bottom: 2px;
}

.JPX-news-list li .-is-ppt {
  position: relative;
  width: 18px;
  margin-left: 4px;
}

.JPX-news-list li .-is-ppt::before {
  content: "　";
  position: absolute;
  background: url(../fonts/icon_ppt.svg) center center no-repeat;
  background-size: contain;
  width: 18px;
  height: 18px;
  bottom: 2px;
}

.JPX-news-list li .-is-word {
  position: relative;
  width: 18px;
  margin-left: 4px;
}

.JPX-news-list li .-is-word::before {
  content: "　";
  position: absolute;
  background: url(../fonts/icon_word.svg) center center no-repeat;
  background-size: contain;
  width: 18px;
  height: 18px;
  bottom: 2px;
}

.JPX-news-list li .-is-csv {
  position: relative;
  width: 18px;
  margin-left: 4px;
}

.JPX-news-list li .-is-csv::before {
  content: "　";
  position: absolute;
  background: url(../fonts/icon_csv.svg) center center no-repeat;
  background-size: contain;
  width: 18px;
  height: 18px;
  bottom: 2px;
}

.JPX-news-list .JPX-news-list-category {
  display: inline-block;
  background-color: #ff6700;
  margin-right: 4px;
  padding: 2px 8px 4px;
  text-align: center;
  color: #FFFFFF;
  line-height: 13px;
  border-radius: 12px;
  width: fit-content;
  font-size: 10px;
}

.JPX-news-list .JPX-news-list-category.ose {
  background-color: #0039C8;
}

.JPX-news-list .JPX-news-list-category.tosyo {
  background-color: #E60012;
}

.JPX-news-list .JPX-news-list-category.tocom {
  background-color: #023B90;
}

.JPX-news-list .JPX-news-list-category.jpxr {
  background-color: #A70309;
}

.JPX-news-list .JPX-news-list-category.jpx {
  background-color: #FF6702;
}

.JPX-news-list .JPX-news-list-category.jpxi {
  background-color: #00A45D;
}

.JPX-news-list .JPX-news-list-category.jscc {
  background-color: #40658A;
}

.JPX-news-list .JPX-news-list-category.nlc001 {
  background-color: #7C60D0;
}

.JPX-news-list .JPX-news-list-category.nlc002 {
  background-color: #58B4C3;
}

.JPX-news-list .JPX-news-list-category.nlc003 {
  background-color: #93B83C;
}

.JPX-news-list .JPX-news-list-category.nlc004 {
  background-color: #E49857;
}

.JPX-news-list .JPX-news-list-category.nlc005 {
  background-color: #F43949;
}

.JPX-news-list .JPX-news-list-title {
  color: #000;
  margin-top: 6px;
  display: block;
  line-height: 1.4;
}
.JPX-contents-wrapper {
  margin-top: 40px;
}
.JPX-contents-wrapper > *:first-child {
  margin-top: 0 !important;
}
.JPX-contents-wrapper .link-window {
  margin-top: 10px;
}
.JPX-sidecontents-search-data > *:first-child {
  margin-top: 0 !important;
}
.JPX-sidecontents-search-title {
  font-size: 12px;
  margin-top: 20px;
}
.JPX-search-select {
  position: relative;
  margin-top: 3px;
}
.JPX-search-select select {
  width: 100%;
  margin: 0;
  padding: 6px 12px;
  border: solid 1px #ddd;
  appearance: none;
  border-radius: 4px;
  filter: drop-shadow(0px 1px 3px rgba(0, 0, 0, 0.08));
  background-color: #fff;
  cursor: pointer;
}
.JPX-search-select::after {
  content: "";
  display: block;
  position: absolute;
  background: url(../fonts/icn-arrow_take_open.svg) center center no-repeat;
  background-size: auto;
  background-size: contain;
  width: 10px;
  height: 10px;
  top: 50%;
  transform: translate(0, -50%);
  right: 12px;
  pointer-events: none;
}
.JPX-date-select {
  display: flex;
  flex-wrap: nowrap;
  justify-content: flex-start;
  align-items: center;
  margin-top: 3px;
}
.JPX-date-select .JPX-date-select-sub {
  position: relative;
}
.JPX-date-select .JPX-date-select-sub.-is-year,
.JPX-date-select .JPX-date-select-sub.-is-month,
.JPX-date-select .JPX-date-select-sub.-is-day {
  padding: 0 10px 0 3px;
}
.JPX-date-select .JPX-date-select-sub.-is-year::after,
.JPX-date-select .JPX-date-select-sub.-is-month::after,
.JPX-date-select .JPX-date-select-sub.-is-day::after {
  display: none;
}
.JPX-date-select .JPX-date-select-sub.-is-year-select {
  width: 114px;
}
.JPX-date-select .JPX-date-select-sub.-is-month-select,
.JPX-date-select .JPX-date-select-sub.-is-day-select {
  width: 70px;
  margin-left: 5px;
}
.JPX-date-select .JPX-date-select-sub::after {
  content: "";
  display: block;
  position: absolute;
  background: url(../fonts/icn-arrow_take_open.svg) center center no-repeat;
  background-size: auto;
  background-size: contain;
  width: 10px;
  height: 10px;
  top: 50%;
  transform: translate(0, -50%);
  right: 12px;
  pointer-events: none;
}
.JPX-date-select .JPX-date-select-sub select {
  width: 100%;
  margin: 0;
  padding: 6px 12px;
  border: solid 1px #ddd;
  appearance: none;
  border-radius: 4px;
  filter: drop-shadow(0px 1px 3px rgba(0, 0, 0, 0.08));
  background-color: #fff;
  cursor: pointer;
}
.JPX-date-btn {
  margin-top: 24px;
  display: flex;
  flex-wrap: nowrap;
  justify-content: space-between;
  align-items: center;
}
.JPX-date-btn > div {
  width: 48%;
}
.JPX-date-btn .-is-clear {
  width: 100%;
  font-size: 12px;
  background-color: #EEEEEE;
  border: 1px solid #DDDDDD;
  border-radius: 100px;
  padding: 7px;
  cursor: pointer;
}
.JPX-date-btn .-is-search {
  width: 100%;
  font-size: 12px;
  background-color: #FFFFFF;
  border: 1px solid #DDDDDD;
  border-radius: 100px;
  padding: 7px;
  cursor: pointer;
}
.JPX-keyword-box {
  margin-top: 33px;
}
.JPX-keyword-title {
  font-size: 12px;
  margin-bottom: 3px;
}
.JPX-keyword-list .JPX-keyword {
  margin-top: 8px;
}
.JPX-keyword-list .JPX-keyword a {
  font-size: 10px;
}
.JPX-sidecontents-title.-is-multiple {
  margin-top: 33px;
}
.JPX-sidecontents-linklistItem {
  margin-top: 8px;
}
.JPX-sidecontents-linklistItem a {
  display: block;
  width: 100%;
  margin: 0;
  padding: 6px 24px 6px 12px;
  box-sizing: border-box;
  border: solid 1px #ddd;
  appearance: none;
  border-radius: 4px;
  color: #000;
  text-decoration: none;
  filter: drop-shadow(0px 1px 3px rgba(0, 0, 0, 0.08));
  background: url(../fonts/icn-right-arrow_gray.svg) right 11px center no-repeat #fff;
  background-size: 10px 10px;
}

@media screen and (min-width:769px) {
  .JPX-sidecontents-search-title {
    font-size: 14px;
    margin-top: 24px;
  }
  .JPX-date-btn .-is-clear:hover {
    opacity: 0.7;
  }
  .JPX-date-btn .-is-search:hover {
    color: #E60012;
    border: 1px solid #E60012;
  }
  .JPX-keyword-box .JPX-search .side-search-wrap03 {
    margin-bottom: 12px;
  }
  .JPX-keyword-box .JPX-search .side-search-wrap03 input {
    font-size: 12px;
    padding: 15px 0 15px 12px;
  }
  .JPX-keyword-box .JPX-search .side-search-input-btn input {
    width: 17px;
    height: 17px;
  }
  .JPX-keyword-box .JPX-search .side-search-input-btn {
    right: 10px;
    width: 17px;
    height: 17px;
  }
  .JPX-keyword-list .JPX-keyword a {
    font-size: 12px;
  }
  .JPX-sidecontents-title.-is-multiple {
    margin-top: 44px;
  }
  .JPX-sidecontents-linklistItem a {
    font-size: 14px;
  }
  .JPX-sidecontents-linklistItem a:hover {
    color: #E60012;
    background: url(../fonts/icn-right-arrow_hover.svg) right 11px center no-repeat #fff;
    background-size: 10px 10px;
    border: 1px solid #E60012;
  }

  .JPX-news-list a {
    padding: 24px 26px 24px 12px;
    background: url(../fonts/icn-right-arrow_gray.svg) right 8px center no-repeat;
    background-size: 12px 12px;
  }
  .JPX-news-list a:hover {
    background: url(../fonts/icn-right-arrow_hover.svg) right 8px center no-repeat;
    background-size: 12px 12px;
  }
  .JPX-news-list a:hover .JPX-news-list-date {
    color: #E60012;
    text-decoration: underline;
  }
  .JPX-news-list a:hover .JPX-news-list-title {
    color: #E60012;
    text-decoration: underline;
  }
  .JPX-sort-wrapper {
    display: flex;
    flex-wrap: nowrap;
    justify-content: space-between;
    align-items: center;
    padding: 32px;
  }
  .JPX-sort-wrapper::before,
  .JPX-sort-wrapper::after {
    display: none !important;
  }
  .JPX-sort-text {
    font-size: 16px;
    text-align: left;
  }
  .JPX-sort-text:last-child {
    margin-bottom: 0;
  }
  .JPX-sort-wrapper .pages select {
    padding: 10px 12px;
    width: 112px;
  }
  .JPX-news-list .JPX-news-list-title {
    font-size: 16px;
  }
  .JPX-news-list .JPX-news-list-date {
    font-size: 14px;
  }
  .JPX-news-list .JPX-news-list-category {
    font-size: 12px;
  }

}

/* ---------------------------------------------------

カレンダー調整

-----------------------------------------------------*/
.cal-note01 img {
	display: block;
}
@media screen and (min-width:769px) {
.cal-note01 img {
	display: inline;
	margin-right: 10px;
}
}
.cal-note02 {
  display: inline-block;
  padding: 0 0 0 39px;
  background: url(../images/icon-cal-note02.png) 0 7px no-repeat;
}
.tab-submenu ul li.tsm-title {
  padding: 0;
  background: #fff;
  font-size: 14px;
  padding: 0;
  line-height: 29px;
  border-right: none;
  width: 100%;
  text-align: left;
}
.tab-submenu ul li.tsm-title ~ li > a {
  padding: 5px;
  background: none!important;
}
.cal-table-sub .cal-icon01,
.cal-table-sub .cal-icon02,
.cal-table-sub .cal-icon03,
.cal-table-sub .cal-icon04 {
  margin: 0 0 5px;
  width: 50%;
  padding: 0 0 2px;
}

@media screen and (min-width:769px) {
.cal-table-sub .cal-icon01,
.cal-table-sub .cal-icon02,
.cal-table-sub .cal-icon03,
.cal-table-sub .cal-icon04 {
  margin: 0 0 5px;
  width: 170px;
}
}
#calendar {
  max-width: 100%;
  margin: 0 auto;
}
#calendar .fc-center h2 {
  font-size: 26px;
}
#calendar th.fc-sat, td.fc-sat, th.fc-sun, td.fc-sun {
  color: #e4001e;
  background-color: #efefef;
}
#calendar th.fc-day-header {
  color: #ffffff;
  background-color: #000;
  padding: 8px 12px;
  font-size: 12px;
}
#calendar .fc-ltr .fc-basic-view .fc-day-number {
  text-align: left;
}
.cal-table table th,
.cal-table-sub table th {
	color: #fff;
	background: #000;
	text-align: center;
	border-top: 1px solid #d1d1d1;
	border-left: 1px solid #d1d1d1;
  font-size: 12px;
}
.cal-table table td {
	vertical-align: top;
	border-top: 1px solid #d1d1d1;
	border-left: 1px solid #d1d1d1;
	height: 74px;
  font-size: 12px;
}
.cal-table-sub table td {
	vertical-align: middle;
	border-top: 1px solid #d1d1d1;
	border-left: 1px solid #d1d1d1;
}
.cal-table-sub table td {
  font-size: 12px;
}
.cal-table-sub table td a.link-window {
  font-size: 12px;
}

@media screen and (min-width:769px) {
  .tab-submenu ul li.tsm-title {
    width: auto;
    text-align: right;
  }
  .cal-note02 {
    background: url(../images/icon-cal-note02.png) 0 10px no-repeat;
  }
  .tab-submenu ul li.tsm-title {
    font-size: 16px;
    padding: 0;
    line-height: 29px;
    border-right: none;
  }
  .tab-submenu ul li.tsm-title ~ li > a {
    padding: 12px;
  }
  #calendar th.fc-day-header {
    font-size: 14px;
  }
  .cal-table table th,
  .cal-table-sub table th {
    font-size: 14px;
  }
  .cal-table table td {
    font-size: 14px;
  }
  .cal-table-sub table td {
    font-size: 14px;
  }
  .cal-table-sub table td a.link-window {
    font-size: 14px;
  }
}
/* ---------------------------------------------------

既存パーツのスタイル対応

-----------------------------------------------------*/
/*
コンポーネントテキスト
*/
.JPX-section-inner .component-text {
  font-size: 14px;
  line-height: 25px;
  margin-bottom: 23px;
}

.JPX-section-inner .component-text:last-child {
  margin-bottom: 0;
}

@media screen and (min-width:769px) {
  .JPX-section-inner .component-text {
    font-size: 16px;
    line-height: 29px;
    margin-bottom:21px;
  }
}
/* /コンポーネントテキスト */

/*
H2見出し
*/
.JPX-section-inner .heading-title,.JPX-section-inner .heading-title-mu {
  overflow: hidden;
  color: #000000;
}

.JPX-section-inner .heading-title span,.JPX-section-inner .heading-title-mu span {
  position: relative;
  display: block;
  font-size: 18px;
  font-weight: 700;
  line-height: 22px;
  padding-bottom: 6px;
  border-bottom: #d1d1d1 solid 4px;
  margin-bottom: 24px;
}

.JPX-section-inner .heading-title span::before,.JPX-section-inner .heading-title-mu span::before {
  content: "";
  position: absolute;
  display: block;
  background: linear-gradient(to right, #e60012, #a4000d);
  width: 48%;
  height: 4px;
  bottom: -4px;
  left: -2px;
  transform: skew(-26deg);
}

@media screen and (min-width:769px) {
  .JPX-section-inner .heading-title span,.JPX-section-inner .heading-title-mu span {
    font-size: 24px;
    line-height: 36px;
    padding-bottom: 12px;
    margin-bottom: 40px;
  }

  .JPX-section-inner .heading-title span::before,.JPX-section-inner .heading-title-mu span::before {
    width: 416px;
    left: -2px;
  }
}
/* /H2見出し */

/*
H3見出し
*/
.JPX-section-inner .subhead-title {
  position: relative;
  padding-left: 13px;
  margin-bottom: 20px;
}

.JPX-section-inner .subhead-title:before {
  content: "";
  position: absolute;
  display: block;
  background: linear-gradient(to bottom, #e60012, #a4000d);
  width: 4px;
  height: 22px;
  top: 0px;
  left: 0px;
  transform: skewY(26deg);
}

.JPX-section-inner .subhead-title span {
  font-size: 18px;
  font-weight: 700;
  line-height: 20px;
  color: #000000;
}

@media screen and (min-width:769px) {
  .JPX-section-inner .subhead-title {
    position: relative;
    padding-left: 12px;
    margin-bottom: 32px;
  }

  .JPX-section-inner .subhead-title:before {
    top: -3px;
    height: 28px;
  }

  .JPX-section-inner .subhead-title span {
    font-size: 24px;
  }
}
/* /H3見出し */

/*
パンくずリスト
*/

.bread-crumb {
  display: flex;
  flex-flow: nowrap;
  justify-content: space-between;
  align-items: center;
  height: 100%;
}

.bread-crumb-box {
  display: block;
  padding: 0;
  margin: 0 16px;
}

.bread-crumb ol {
  display: none;
}

.bread-crumb-data {
  flex-grow: 1;
}

.JPX-site-update {
  font-size: 12px;
  display: flex;
  min-height: 40px;
  height: 40px;
  align-items: center;
}

@media screen and (min-width:769px) {

  .bread-crumb-box {
    padding: 14px 0;
    border-bottom: #d1d1d1 solid 1px;
    height: auto;
    min-height: auto;
  }

  .bread-crumb ol {
    display: inherit;
    /*flex-flow: wrap;
    justify-content: flex-start;
    align-items: flex-start;*/
  }

  .bread-crumb ol li {
    padding-right: 18px;
	display: inline;
	background: url(../images/icn-right-arrow_gray.svg) top 10px right no-repeat;
	margin-right: 5px;
  }

  .bread-crumb ol li:last-child {
    background: none;
  }

  .bread-crumb ol li:last-child:before {
    background: none;
  }

  .bread-crumb ol li a {
    text-decoration: none;
    color: #000000;
    font-size: 12px;
    line-height: 13px;
  }

  .bread-crumb ol li a:hover {
    text-decoration: underline;
    color: #e60012;
  }

  .JPX-site-update {
    font-size: 14px;
    margin-left: 20px;
    flex-shrink: 0;
    min-height: auto;
    height: auto;
  }
}

@media screen and (min-width:1360px) {
  .bread-crumb-box {
    margin: 0 auto;
  }

  .bread-crumb {
    margin: 0 calc((100% - 1312px) / 2) 0;
  }

}

/*
聴くボタン・印刷ボタン
*/
#read-area {
  max-width: 1312px;
  margin: 0 16px 0 auto;
  padding: 8px 0;
  top: -54px;
  right: 0;
  z-index: 1;
}

#read-area ul {
  display: flex;
  flex-flow: nowrap;
  justify-content: flex-end;
  align-items: center;
}

#read-area ul .icon-print {
  display: none;
}

#read-area ul .icon-read {
  display: block;
}

#read-area a {
  width: 24px;
  height: 24px;
  display: block;
  font-size: 14px;
  font-weight: 500;
  text-decoration: none;
  color: #000000;
  line-height: 17px;
  border: #d1d1d1 solid 1px;
  border-radius: 50%;
  box-sizing: border-box;
  text-indent: -9999px;
}

#read-area .icon-read a {
  background: url(../fonts/icn_sound.svg) center center no-repeat #ffffff;
  background-size: 12px 12px;
}

@media screen and (min-width:769px) {
  #read-area {
    max-width: 1312px;
    margin: 0 auto 0 0;
    padding: 0;
    right: 0px;
    left: 0px;
    position: absolute;
  }

  #read-area ul {
    display: flex;
    flex-flow: nowrap;
    justify-content: flex-end;
    align-items: center;
  }

  #read-area ul .icon-print {
    display: block;
    margin-left: 8px;
  }

  #read-area ul li:last-child {
    margin-right: 0;
  }

  #read-area a {
    display: block;
    font-size: 14px;
    font-weight: 500;
    text-decoration: none;
    color: #000000;
    line-height: 17px;
    border: #d1d1d1 solid 1px;
    border-radius: 20px;
    padding: 9px 37px 9px 16px;
    box-sizing: border-box;
    width: fit-content;
    height: auto;
    text-indent: 0;
  }

  #read-area a:hover {
    color: #e60012;
    border: #e60012 solid 1px;
  }

  #read-area .icon-read a {
    background: url(../fonts/icn_sound.svg) 92% center no-repeat #ffffff;
    background-size: 14px 14px;
  }

  #read-area .icon-print a {
    background: url(../fonts/icn_print.svg) 80% center no-repeat #ffffff;
    background-size: 14px 14px;
  }

  #main-areaIn {
    position: relative;
  }
}

@media screen and (min-width:1025px) {
  #read-area {
    right: 15px;
    left: 15px;
  }
}
 
@media screen and (min-width:1360px) {
  #read-area {
    margin: 0 auto;
  }
}
/* /聴くボタン・印刷ボタン */

/*
H1見出し コメントセット
*/
.headline-title-wrap {
  padding: 0;
  margin: 0 auto 24px;
  position: relative;
  overflow: hidden;
}

.headline-title-wrap.-is-single {
  padding: 0;
  margin-bottom: 0;
}

.headline-title {
  position: relative;
  display: block;
  width: 100%;
  font-size: 24px;
  font-weight: 500;
  line-height: 36px;
  padding-bottom: 8px;
  color: #000000;
  border-bottom: #d1d1d1 solid 8px;
}

.headline-title::before {
  content: "";
  position: absolute;
  display: block;
  background: linear-gradient(to right, #e60012, #a4000d);
  width: 48%;
  height: 8px;
  bottom: -8px;
  left: -2px;
  transform: skew(-26deg);
  z-index: 1;
}

.headline-title span {
  display: block;
}

.headline-text {
  margin-top: 26px;
  font-size: 14px;
  line-height: 25px;
  color: #000000;
}

@media screen and (min-width:769px) {
  .headline-title-wrap .JPX-btn.-is-main-title + .headline-title > span {
    padding-right: 220px;
  }

  .headline-title-wrap {
    padding: 50px 0 0;
  }

  .-is-fix .headline-title-wrap {
    padding: 0;
  }
}

@media screen and (min-width:1025px) {
  .headline-title-wrap {
    max-width: 1312px;
    padding: 50px 0 0;
    margin: 0 auto 36px;
  }

  .headline-title {
    font-size: 36px;
    line-height: 48px;
    padding-bottom: 12px;
    border-bottom: #d1d1d1 solid 12px;
  }

  .headline-title::before {
    width: 416px;
    height: 12px;
    bottom: -12px;
    left: -3px;
  }

  .headline-text {
    margin-top: 32px;
    font-size: 16px;
    line-height: 29px;
  }
}
/* /H1見出し コメントセット */


/* ---------------------------------------------------

2024/01/23 パーツ集約

-----------------------------------------------------*/
#readArea > div:before,#readArea > div:after {
  content: "";
  display: table;
}

/* ---------------------------------------------------

大見出し

-----------------------------------------------------*/


/* ---------------------------------------------------

中見出し

-----------------------------------------------------*/
.heading-title,.heading-title-mu {
  overflow: hidden;
  color: #000000;
  margin: 24px 0 18px;
}

.heading-title span,.heading-title-mu span {
  position: relative;
  display: block;
  font-size: 18px;
  font-weight: 500;
  line-height: 27px;
  padding-bottom: 6px;
  border-bottom: #d1d1d1 solid 4px;
}

.heading-title span::before,.heading-title-mu span::before {
  content: "";
  position: absolute;
  display: block;
  background: linear-gradient(to right, #e60012, #a4000d);
  width: 48%;
  height: 4px;
  bottom: -4px;
  left: -2px;
  transform: skew(-26deg);
}

/* ニュースタイトル */

.heading-news-title {
  overflow: hidden;
  color: #000000;
  margin: 24px 0 18px;
  padding-top: 2px;
}

.heading-news-title span:last-child {
  position: relative;
  display: block;
  font-size: 18px;
  font-weight: 500;
  line-height: 27px;
  padding-bottom: 6px;
  border-bottom: #d1d1d1 solid 4px;
}

.heading-news-title span:last-child::before {
  content: "";
  position: absolute;
  display: block;
  background: linear-gradient(to right, #e60012, #a4000d);
  width: 48%;
  height: 4px;
  bottom: -4px;
  left: -2px;
  transform: skew(-26deg);
}

.heading-news-title .date-news {
  font-size: 12px;
  color: #666666;
  display: block;
  margin-right: 12px;
}

.heading-news-title .date-news em {
  display: inline-block;
  background-color: #ff6700;
  margin: 0 1px;
  padding: 2px 8px 4px;
  text-align: center;
  color: #FFFFFF;
  line-height: 13px;
  border-radius: 12px;
  width: fit-content;
  font-size: 10px;
}

.heading-news-title .date-news em:first-child {
  margin-left: 10px;
}

@media screen and (min-width:769px) {
  .heading-title,.heading-title-mu {
    margin: 40px 0 18px;
  }

  .heading-title span,.heading-title-mu span {
    font-size: 24px;
    line-height: 36px;
    padding-bottom: 12px;
  }

  .heading-title span::before,.heading-title-mu span::before {
    width: 416px;
    left: -2px;
  }

  /* ニュースタイトル*/
  .heading-news-title {
    overflow: hidden;
    color: #000000;
    margin: 40px 0 18px;
    padding-top: 2px;
  }

  .heading-news-title span:last-child {
    font-size: 24px;
    line-height: 36px;
    padding-bottom: 6px;
  }
  
  .heading-news-title span:last-child::before {
    content: "";
    position: absolute;
    display: block;
    background: linear-gradient(to right, #e60012, #a4000d);
    width: 416px;
    height: 4px;
    bottom: -4px;
    left: -2px;
    transform: skew(-26deg);
  }
  
  .heading-news-title .date-news {
    font-size: 14px;
    color: #666666;
    margin-bottom: 4px;
  }
  
  .heading-news-title .date-news em {
    font-size: 12px;
    margin: 0 3px 4px;
  }
}


/* ---------------------------------------------------

小見出し

-----------------------------------------------------*/

.subhead-title,.subhead-title-mu {
  position: relative;
  padding-left: 13px;
  margin: 20px 0 1em;
}

.subhead-title::before,.subhead-title-mu::before {
  content: "";
  position: absolute;
  display: block;
  background: linear-gradient(to bottom, #e60012, #a4000d);
  width: 4px;
  height: 100%;
  top: 0px;
  left: 0px;
  transform: skewY(26deg);
}

.subhead-title span,.subhead-title-mu span {
  font-size: 18px;
  font-weight: 500;
  color: #000000;
  line-height: 27px;
  display: block;
}

@media screen and (min-width:769px) {
  .subhead-title,.subhead-title-mu {
    position: relative;
    padding-left: 12px;
    margin: 32px 0 18px;
  }

  .subhead-title span,.subhead-title-mu span {
    font-size: 22px;
    line-height: 34px;
  }
}

@media screen and (max-width:768px) {
  .subhead-title span,.subhead-title-mu span {
    height: auto!important;
  }
}

/* ---------------------------------------------------

小小見出し

-----------------------------------------------------*/

.subsubhead-title,.subsubhead-title-mu {
  position: relative;
  padding-left: 13px;
  margin: 20px 0 1em;
  font-size: 16px;
  font-weight: 500;
  line-height: 24px;
}

.subsubhead-title::before,.subsubhead-title-mu::before {
  content: "";
  position: absolute;
  display: block;
  background: linear-gradient(to bottom, #999, #666);
  width: 4px;
  height: 100%;
  top: 0px;
  left: 0px;
  transform: skewY(26deg);
}


@media screen and (min-width:769px) {
  .subsubhead-title,.subsubhead-title-mu {
    position: relative;
    padding-left: 12px;
    margin: 32px 0 12px;
    font-size: 20px;
    line-height: 32px;
  }

  .subsubhead-title::before,.subsubhead-title-mu::before {
    opacity: .6;
  }
}


/* ---------------------------------------------------

汎用コンポーネント：本文コンポーネント

-----------------------------------------------------*/
.component-text {
  font-size: 14px;
  line-height: 25px;
  margin: 18px 0;
}

/* 文章中リンク */

.link-window-inline {
  display: inline-block;
  position: relative;
  padding-left: 22px;
  margin-right: 10px;
}

.link-window-inline img {
  margin: 0 9px;
}

.link-window-inline::before {
  content: "";
  position: absolute;
  display: block;
  top: 6px;
  left: 5px;
  width: 14px;
  height: 14px;
  background: url(../fonts/icn-circle-arw_gray.svg) center center no-repeat;
  background-size: contain;
}

@media screen and (min-width:769px) {
  .link-window-inline:hover {
  color: #e60012;
  text-decoration: underline;
}
  .link-window-inline:hover::before {
  background: url(../fonts/icn-circle-arw_red.svg) center center no-repeat;
  background-size: contain;
}
}

/* /文章中リンク */

@media screen and (min-width:769px) {
  .component-text {
    font-size: initial;
    line-height: 29px;
  }

  /* 文章中リンク */

  .link-window-inline {
    padding-left: 25px;
  }
  
  .link-window-inline::before {
    top: 7px;
    width: 16px;
    height: 16px;
    left: 5px;
  }

  /* /文章中リンク */
}



/* ---------------------------------------------------

汎用コンポーネント：画像コンポーネント【画像】（配置：中央）（本文：無し）

-----------------------------------------------------*/
.component-img {
  width: 100%;
  margin: 18px 0;
  text-align: center;
}

.component-img img {
  max-width: 100%;
  vertical-align: bottom;
}

.component-img p {
  text-align: center;
  font-size: 12px;
  margin-top: 9px;
  line-height: 21px;
}

@media screen and (min-width:769px) {
  .component-img {
  margin: 18px 0;
  }
  
  .component-img p {
    font-size: 14px;
    margin-top: 14px;
  }
}


/* ---------------------------------------------------

汎用コンポーネント：画像コンポーネント【画像:繰り返し】（配置：左）（本文：無し）

-----------------------------------------------------*/

.component-imgbox {
  margin: 1em 0;
}

.component-imgboxIn {
  width: 100%;
  text-align: center;
  margin-bottom: 18px;
}

.component-imgboxIn p {
  text-align: center;
  font-size: 12px;
  margin-top: 9px;
  line-height: 21px;
}

.component-imgboxIn img {
  vertical-align: bottom;
  max-width: 100%;
}

@media screen and (min-width:769px) {
  .component-imgbox {
    text-align: center;
    margin: 28px 0 1em;
  }

  .component-imgboxIn {
    display: inline-block;
    margin-left: 35px;
    width: auto;
  }

  .component-imgboxIn:first-child {
    margin-left: 0;
  }

  .component-imgboxIn p {
    font-size: 14px;
    margin-top: 20px;
  }
}


/* ---------------------------------------------------

汎用コンポーネント：画像コンポーネント【画像】（配置：左）（本文：有）

-----------------------------------------------------*/

.component-imgbox p {
  text-align: center;
  font-size: 12px;
  margin-top: 9px;
  line-height: 21px;
}

p.component-imgText {
  text-align: left;
  margin-top: 8px;
  font-size: 14px;
  line-height: 25.2px;
}

.component-imgboxL {
  text-align: center;
  width: 100%;
  margin-bottom: 18px;
}

.component-imgboxL p {
  text-align: center;
  font-size: 12px;
  margin-top: 9px;
  line-height: 21px;
}

.component-imgboxL img {
  vertical-align: bottom;
  max-width: 100%;
}

@media screen and (min-width:769px) {
  .component-imgbox p {
    text-align: center;
    font-size: 14px;
    margin-top: 0px;
  }

  .component-imgboxIn p {
    text-align: center;
    font-size: 14px;
    margin-top: 9px;
  }
  
  p.component-imgText {
    text-align: left;
    font-size: 16px;
    line-height: 29px;
  }
  
  .component-imgboxL {
    float: left;
    text-align: center;
    width: auto;
    margin-right: 35px;
    margin-bottom: 42px;
  }

  .component-imgboxL p {
    font-size: 14px;
    margin-top: 16px;
  }
}

/* ---------------------------------------------------

汎用コンポーネント：画像コンポーネント【画像:繰り返し】（配置：左）（本文：有）

-----------------------------------------------------*/
.component-imgbox-table {
  display: block;
  margin: 12px 0 8px;
}

.component-imgbox-img {
  margin-bottom: 18px;
  text-align: center;
}

.component-imgbox-img img {
 vertical-align: bottom;
 max-width: 100%;
}

.component-imgbox-img p {
 text-align: center;
 font-size: 12px;
 margin-top: 9px;
 line-height: 21px;
}

.component-imgbox-textR {
  margin-top: 18px;
  font-size: 14px;
  line-height: 25px;
}

@media screen and (min-width:769px) {
  .component-imgbox-table {
    margin: 28px 0 1em;
  }

  .component-imgbox-img p {
    text-align: center;
    font-size: 14px;
    margin-top: 16px;
   }

  .component-imgbox-imgL {
    float: left;
    margin-right: 35px;
    margin-bottom: 25px;
  }

  .component-imgbox-textR {
    font-size: 16px;
    line-height: 29px;
    margin-top: 0;
  }
}

/* ---------------------------------------------------

汎用コンポーネント：画像コンポーネント【画像】（配置：右）（本文：有）

-----------------------------------------------------*/
.component-imgboxR {
  text-align: center;
  width: 100%;
  margin-bottom: 18px;
}

.component-imgboxR img {
  vertical-align: bottom;
  max-width: 100%;
}

@media screen and (min-width:769px) {
  .component-imgboxR {
    float: right;
    text-align: center;
    width: auto;
    margin-left: 35px;
    margin-bottom: 42px;
  }

  .component-imgboxR p {
    font-size: 14px;
    margin-top: 16px;
  }
}

/* ---------------------------------------------------

汎用コンポーネント：画像コンポーネント【画像:繰り返し】（配置：右）（本文：有）

-----------------------------------------------------*/

.component-imgbox-img {
  margin-bottom: 18px;
  text-align: center;
}

.component-imgbox-img img {
 vertical-align: bottom;
 max-width: 100%;
}

.component-imgbox-textL {
  margin-top: 18px;
  font-size: 14px;
  line-height: 25px;
}

@media screen and (min-width:769px) {
  .component-imgbox-imgR {
    float: right;
    margin-left: 30px;
    margin-bottom: 25px;
  }

  .component-imgbox-textL {
    font-size: 16px;
    line-height: 29px;
    margin-top: 0;
  }
}


/* ---------------------------------------------------

汎用コンポーネント：リンク先指定コンポーネント

-----------------------------------------------------*/

a.link-window {
  font-size: 14px;
  text-decoration: none;
  color: #000;
  position: relative;
  line-height: 21px;
  margin-bottom: 7px;
  display: inline-block;
  width: fit-content;
  padding-left: 20px;
  overflow-wrap: anywhere;
  word-break: break-word;
  margin-right: 10px;
}

a.link-window img {
  margin: 0 5px;
}

a.link-window::after {
  position: absolute;
  content: "";
  background: url(../fonts/icn-circle-arw_gray.svg) center center no-repeat;
  background-size: contain;
  width: 14px;
  height: 14px;
  left: 0;
  top: 4px;
}

a.link-blank {
  font-size: 14px;
  text-decoration: none;
  color: #000;
  position: relative;
  line-height: 21px;
  margin-bottom: 7px;
  display: inline-block;
  width: fit-content;
  padding-left: 20px;
  margin-right: 31px;
}

a.link-blank::before {
  position: absolute;
  content: "";
  background: url(../fonts/icn-circle-arw_gray.svg) center center no-repeat;
  background-size: contain;
  width: 14px;
  height: 14px;
  left: 0;
  top: 4px;
}

a.link-blank::after {
  position: absolute;
  content: "";
  background: url(../fonts/icn-blank.svg) center center no-repeat;
  background-size: contain;
  width: 12px;
  height: 12px;
  right: auto;
  bottom: 3px;
  margin-left: 9px;
}

@media screen and (min-width:769px) {
  a.link-window {
    font-size: initial;
    line-height: 29px;
  }

  a.link-window:hover {
    color: #e60012;
  }
  
  a.link-window::after {
    width: 16px;
    height: 16px;
    top: 7px;
  }

  a.link-window:hover::after {
    background: url(../fonts/icn-circle-arw_red.svg) center center no-repeat;
    background-size: contain;
  }
  
  a.link-blank {
    font-size: initial;
    line-height: 29px;
  }

  a.link-blank::before {
    width: 16px;
    height: 16px;
    top: 6px;
  }

  a.link-blank::after {
    bottom: 7px;
  }

  a.link-blank:hover::before {
    background: url(../fonts/icn-circle-arw_red.svg) center center no-repeat;
    background-size: contain;
  }

  a.link-blank:hover {
    color: #e60012;
  }

  a.link-blank:hover::after {
    background: url(../fonts/icn-blank-hover.svg) center center no-repeat;
    background-size: contain;
  }
}


/* ---------------------------------------------------

汎用コンポーネント：表組コンポーネント

-----------------------------------------------------*/
.component-noline-table {
  margin: 24px 0;
}

.component-noline-table table caption {
  text-align: right;
  font-size: 14px;
  line-height: 29px;
  color: #666666;
}

.component-noline-table table {
  width: 100%;
}

.component-noline-table table th {
  color: #fff;
  background: #333333;
  text-align: center;
  padding: 17px 12px;
  font-size: 12px;
  line-height: 18px;
  font-weight: 500;
}

.component-noline-table table td {
  vertical-align: middle;
  padding: 8px 12px;
  font-size: 12px;
  line-height: 18px;
}

.component-noline-table table .end td {
  padding-bottom: 7px;
}

.new-icon {
  position: relative;
  display: inline-block;
}

.new-icon:before {
  content: "NEW";
  font-size: 10px;
  line-height: 12px;
  padding: 0px 4px 2px;
  top: 2px;
  left: 0px;
  background: #e60012;
  border-radius: 4px;
  color: #fff;
  margin-right: 5px;
}

@media screen and (min-width:769px) {
  .component-noline-table {
    margin: 24px 0;
  }

  .component-noline-table table caption {
    font-size: 14px;
    line-height: 29px;
  }
  
  .component-noline-table table th {
    padding: 19px 30px;
    font-size: 14px;
    line-height: 17px;
  }
  
  .component-noline-table table td {
    padding: 18px 30px;
    font-size: 14px;
    line-height: 21px;
  }
  
  .new-icon:before {
    font-size: 12px;
    line-height: 13px;
    padding: 0px 4px 2px;
    margin-right: 7px;
  }
}

/* スクロール有表組 */
.component-normal-table table, .component-normal-table table th, .component-normal-table table td {
  border: 1px solid #d1d1d1;
}

.component-normal-table {
  margin: 24px 0;
  position: relative;
  overflow: auto;
}

.component-normal-table:has(.nothing_notice) {
  background: none;
}

.component-normal-table .JPX-shadow-bar {
  display: none;
}

.component-normal-table table {
  border-collapse: collapse;
  width: 100%;
  min-width: 700px;
  border-spacing: 0;
  border-radius: 4px;
}

.component-normal-table table caption {
  position: relative;
  top: 0;
  right: 0;
  background: #fff;
  z-index: 1;
  font-size: 14px;
  line-height: 29px;
  color: #666666;
  background: #ffffff;
}

.component-normal-table table th {
  padding: 12px;
  background: #333333;
  color: #ffffff;
  text-align: center;
  font-size: 12px;
  line-height: 18px;
  font-weight: 500;
  box-sizing: border-box;
  min-height: 44px;
  white-space: nowrap;
  word-break: normal;
  overflow-wrap: normal;
}

.component-normal-table table th.a-left {
  text-align: left;
}

.component-normal-table table th.w-space {
  white-space: nowrap;
}

.component-normal-table table td {
  word-break: initial;
  padding: 12px;
  box-sizing: border-box;
  font-size: 12px;
  line-height: 18px;
  word-break: normal;
  overflow-wrap: normal;
}
.component-normal-table table tr:last-child td:last-child {
  border-radius: 0 0 4px 0 ;
}

@media screen and (min-width:769px) {
  .component-normal-table table {
    min-width: auto;
  }
  
  .component-normal-table table th {
    padding: 12px;
    font-size: 14px;
    line-height: 17px;
    white-space: normal;
  }
  
  .component-normal-table table td {
    padding: 12px;
    font-size: 14px;
    line-height: 21px;
  }
  .component-normal-table table caption {
    text-align: right;
  }
}





/* ---------------------------------------------------

汎用コンポーネント：ファイル登録コンポーネント【枠なし】

-----------------------------------------------------*/
a.link-pdf {
  position: relative;
  text-decoration: none;
  color: #000;
  font-size: 14px;
  line-height: 21px;
  margin-bottom: 7px;
  padding-left: 17px;
  display: inline-block;
}

a.link-pdf::before {
  content: "";
  position: absolute;
  display: block;
  background: url(../fonts/icn-circle-arw_gray.svg) center center no-repeat;
  background-size: contain;
  width: 14px;
  height: 14px;
  left: 0;
  top: 4px;
}

a.link-pdf::after {
  content: "";
  position: absolute;
  background: url(../fonts/icon_pdf_file.svg) center center no-repeat;
  background-size: contain;
  width: 18px;
  height: 18px;
  right: auto;
  bottom: 2px;
  margin-left: 5px;
  margin-right: 10px;
}

a.link-xls {
  position: relative;
  text-decoration: none;
  color: #000;
  font-size: 14px;
  line-height: 21px;
  margin-bottom: 7px;
  padding-left: 17px;
  display: inline-block;
}

a.link-xls::before {
  content: "";
  position: absolute;
  display: block;
  background: url(../fonts/icn-circle-arw_gray.svg) center center no-repeat;
  background-size: contain;
  width: 14px;
  height: 14px;
  left: 0;
  top: 4px;
}

a.link-xls::after {
  content: "";
  position: absolute;
  background: url(../fonts/icon_excel.svg) center center no-repeat;
  background-size: contain;
  width: 18px;
  height: 18px;
  right: auto;
  bottom: 2px;
  margin-left: 5px;
  margin-right: 10px;
}

a.link-doc {
  position: relative;
  text-decoration: none;
  color: #000;
  font-size: 14px;
  line-height: 21px;
  margin-bottom: 7px;
  padding-left: 17px;
  display: inline-block;
}

a.link-doc::before {
  content: "";
  position: absolute;
  display: block;
  background: url(../fonts/icn-circle-arw_gray.svg) center center no-repeat;
  background-size: contain;
  width: 14px;
  height: 14px;
  left: 0;
  top: 4px;
}

a.link-doc::after {
  content: "";
  position: absolute;
  background: url(../fonts/icon_word.svg) center center no-repeat;
  background-size: contain;
  width: 18px;
  height: 18px;
  right: auto;
  bottom: 2px;
  margin-left: 5px;
  margin-right: 10px;
}

a.link-ppt {
  position: relative;
  text-decoration: none;
  color: #000;
  font-size: 14px;
  line-height: 21px;
  margin-bottom: 7px;
  padding-left: 17px;
  display: inline-block;
}

a.link-ppt::before {
  content: "";
  position: absolute;
  display: block;
  background: url(../fonts/icn-circle-arw_gray.svg) center center no-repeat;
  background-size: contain;
  width: 14px;
  height: 14px;
  left: 0;
  top: 4px;
}

a.link-ppt::after {
  content: "";
  position: absolute;
  background: url(../fonts/icon_ppt.svg) center center no-repeat;
  background-size: contain;
  width: 18px;
  height: 18px;
  right: auto;
  bottom: 2px;
  margin-left: 5px;
  margin-right: 10px;
}

a.link-csv {
  position: relative;
  text-decoration: none;
  color: #000;
  font-size: 14px;
  line-height: 21px;
  margin-bottom: 7px;
  padding-left: 17px;
  display: inline-block;
}

a.link-csv::before {
  content: "";
  position: absolute;
  display: block;
  background: url(../fonts/icn-circle-arw_gray.svg) center center no-repeat;
  background-size: contain;
  width: 14px;
  height: 14px;
  left: 0;
  top: 4px;
}

a.link-csv::after {
  content: "";
  position: absolute;
  background: url(../fonts/icon_csv.svg) center center no-repeat;
  background-size: contain;
  width: 18px;
  height: 18px;
  right: auto;
  bottom: 2px;
  margin-left: 5px;
  margin-right: 10px;
}

a.link-zip {
  position: relative;
  text-decoration: none;
  color: #000;
  font-size: 14px;
  line-height: 21px;
  margin-bottom: 7px;
  padding-left: 17px;
  display: inline-block;
}

a.link-zip::before {
  content: "";
  position: absolute;
  display: block;
  background: url(../fonts/icn-circle-arw_gray.svg) center center no-repeat;
  background-size: contain;
  width: 14px;
  height: 14px;
  left: 0;
  top: 4px;
}

a.link-zip::after {
  content: "";
  position: absolute;
  background: url(../fonts/icon_zip.svg) center center no-repeat;
  background-size: contain;
  width: 18px;
  height: 18px;
  right: auto;
  bottom: 2px;
  margin-left: 5px;
  margin-right: 10px;
}
a.link-pdf,
a.link-xls,
a.link-doc,
a.link-ppt,
a.link-csv,
a.link-zip {
  margin-right: 23px;
}
@media screen and (min-width:769px) {
  a.link-pdf {
    font-size: initial;
    line-height: 29px;
    padding-left: 21px;
  }
  
  a.link-pdf::before {
    width: 16px;
    height: 16px;
    top: 7px;
  }
  
  a.link-pdf::after {
    bottom: 5px;
  }

  a.link-pdf:hover {
    color: #e60012;
  }
  
  a.link-pdf:hover::before {
    background: url(../fonts/icn-circle-arw_red.svg) center center no-repeat;
    background-size: contain;
  }

  a.link-xls {
    font-size: initial;
    line-height: 29px;
    padding-left: 21px;
  }
  
  a.link-xls::before {
    width: 16px;
    height: 16px;
    top: 7px;
  }
  
  a.link-xls::after {
    bottom: 5px;
  }

  a.link-xls:hover {
    color: #e60012;
  }
  
  a.link-xls:hover::before {
    background: url(../fonts/icn-circle-arw_red.svg) center center no-repeat;
    background-size: contain;
  }

  a.link-doc {
    font-size: initial;
    line-height: 29px;
    padding-left: 21px;
  }
  
  a.link-doc::before {
    width: 16px;
    height: 16px;
    top: 7px;
  }
  
  a.link-doc::after {
    bottom: 5px;
  }

  a.link-doc:hover {
    color: #e60012;
  }
  
  a.link-doc:hover::before {
    background: url(../fonts/icn-circle-arw_red.svg) center center no-repeat;
    background-size: contain;
  }

  a.link-ppt {
    font-size: initial;
    line-height: 29px;
    padding-left: 21px;
  }
  
  a.link-ppt::before {
    width: 16px;
    height: 16px;
    top: 7px;
  }
  
  a.link-ppt::after {
    bottom: 5px;
  }

  a.link-ppt:hover {
    color: #e60012;
  }
  
  a.link-ppt:hover::before {
    background: url(../fonts/icn-circle-arw_red.svg) center center no-repeat;
    background-size: contain;
  }
  
  a.link-csv {
    font-size: initial;
    line-height: 29px;
    padding-left: 21px;
  }
  
  a.link-csv::before {
    width: 16px;
    height: 16px;
    top: 7px;
  }
  
  a.link-csv::after {
    bottom: 5px;
  }

  a.link-csv:hover {
    color: #e60012;
  }
  
  a.link-csv:hover::before {
    background: url(../fonts/icn-circle-arw_red.svg) center center no-repeat;
    background-size: contain;
  }

  a.link-zip {
    font-size: initial;
    line-height: 29px;
    padding-left: 21px;
  }
  
  a.link-zip::before {
    width: 16px;
    height: 16px;
    top: 7px;
  }
  
  a.link-zip::after {
    bottom: 5px;
  }

  a.link-zip:hover {
    color: #e60012;
  }
  
  a.link-zip:hover::before {
    background: url(../fonts/icn-circle-arw_red.svg) center center no-repeat;
    background-size: contain;
  }
}


/* ---------------------------------------------------

汎用コンポーネント：ファイル登録コンポーネント【枠あり】、汎用コンポーネント：ファイル登録コンポーネント【枠あり】（繰り返し）

-----------------------------------------------------*/
.component-file {
  margin: 18px 0;
}

.component-file table th {
  border: 1px solid #d1d1d1;
  border-right: none;
  font-size: 14px;
  line-height: 21px;
  padding: 10px 12px;
}

.component-file table td {
  padding: 9px 22px;
  text-align: center;
  border-top: 1px solid #d1d1d1;
  border-bottom: 1px solid #d1d1d1;
  min-width: 18px;
}

.component-file table td:last-child {
  border-right: 1px solid #d1d1d1;
}

.component-file table td {
  position: relative;
}

.component-file table td::before {
  content: "";
  display: block;
  position: absolute;
  background-color: #d1d1d1;
  width: 1px;
  height: calc(100% - 24px);
  top: 50%;
  left: 0;
  transform: translate(0, -50%);
}

@media screen and (max-width:768px) {
  .component-file table {
    width: 100%;
  }
}

@media screen and (min-width:769px) {

  .component-file table th {
    font-size: 16px;
    line-height: 24px;
    padding: 16px;
  }

  .component-file table td::before {
    height: calc(100% - 32px);
  }
}


/* ---------------------------------------------------

汎用コンポーネント：リストコンポーネント

-----------------------------------------------------*/
/* 番号なしリスト */
.component-list {
  margin: 12px 0;
}

.component-list > ul {
 list-style: none;
 padding-left: 0;
}

.component-list > ul > li {
  position: relative;
  padding-left: 25px;
  font-size: 14px;
  line-height: 25px;
  margin-bottom: 8px;
}

.component-list > ul > li::before {
  position: absolute;
  content: "";
  background: #666666;
  display: block;
  width: 7px;
  height: 7px;
  top: 9px;
  left: 10px;
  border-radius: 50%;
}

.component-list > ul > li:last-child {
  margin-bottom: 0;
}

@media screen and (min-width:769px) {
  .component-list > ul {
    list-style: none;
    padding-left: 0;
   }
   
   .component-list > ul > li {
     padding-left: 25px;
     font-size: initial;
     line-height: 24px;
     margin-bottom: 10px;
   }
   
   .component-list > ul > li::before {
     width: 8px;
     height: 8px;
     left: 7px;
     top: 9px;
   }
}

/* 番号付きリスト */
.component-list-num {
  margin: 12px 0;
}

.component-list-num > ol {
  list-style: none;
  padding-left: 0;
  counter-reset: listnum;
}

.component-list-num > ol > li {
  position: relative;
  padding-left: 25px;
  font-size: 14px;
  line-height: 25px;
  margin-bottom: 8px;
}

.component-list-num > ol > li::before {
  position: absolute;
  counter-increment: listnum; /* counter-resetと同じ文字列 */
	content: counter(listnum) "."; /* カウントした数に応じて番号を表示 */
  top: 0px;
  left: -10px;
  display: block;
  width: 30px;
  text-align: right;
}

@media screen and (min-width:769px) {
  .component-list-num > ol > li {
    font-size: initial;
    line-height: 24px;
    margin-bottom: 10px;
  }
}

/* ()付きテキスト */
.component-list-parentheses {
  margin: 12px 0;
}

.component-list-parentheses > ol {
  list-style: none;
  padding-left: 0;
  counter-reset: listparentheses;
}

.component-list-parentheses > ol > li {
  position: relative;
  padding-left: 25px;
  font-size: 14px;
  line-height: 25px;
  margin-bottom: 8px;
}

.component-list-parentheses > ol > li::before {
  position: absolute;
  counter-increment: listparentheses; /* counter-resetと同じ文字列 */
	content: "(" counter(listparentheses) ")"; /* カウントした数に応じて番号を表示 */
  top: 0px;
  left: -9px;
  display: block;
  width: 31px;
  text-align: right;
}

@media screen and (min-width:769px) {
  .component-list-parentheses > ol > li {
    font-size: initial;
    line-height: 24px;
    margin-bottom: 10px;
  }

  .component-list-parentheses > ol > li::before {
    top: 0px;
    left: -16px;
    width: 34px;
  }
}

/* アルファベット付きリスト */
.component-list-alpha {
  margin: 12px 0;
}

.component-list-alpha > ol {
  list-style: none;
  padding-left: 0;
  counter-reset: listalpha;
}

.component-list-alpha > ol > li {
  position: relative;
  padding-left: 25px;
  font-size: 14px;
  line-height: 25px;
  margin-bottom: 8px;
}

.component-list-alpha > ol > li::before {
  position: absolute;
  counter-increment: listalpha; /* counter-resetと同じ文字列 */
	content: counter(listalpha, lower-alpha) "."; /* カウントした数に応じて番号を表示 */
  top: 0px;
  left: -5px;
  display: block;
  width: 25px;
  text-align: right;
}

@media screen and (min-width:769px) {
  .component-list-alpha > ol > li {
    font-size: initial;
    line-height: 24px;
    margin-bottom: 10px;
  }

  .component-list-alpha > ol > li::before {
    top: 0px;
    left: -16px;
    width: 30px;
  }
}

/* .!マーク付きリスト */
.component-list-point {
  margin: 12px 0;
}

.component-list-point > ul {
 list-style: none;
 padding-left: 0;
}

.component-list-point > ul > li {
  position: relative;
  padding-left: 25px;
  font-size: 14px;
  line-height: 25px;
  margin-bottom: 8px;
}

.component-list-point > ul > li::before {
  position: absolute;
  content: "";
  background: url(../fonts/icon_exclamation.svg) center center no-repeat;
  background-size: contain;
  display: block;
  width: 14px;
  height: 14px;
  top: 6px;
  left: 4px;
}

.component-list-point > ul > li:last-child {
  margin-bottom: 0;
}

@media screen and (min-width:769px) {
  .component-list-point {
    margin: 12px 0;
  }

  .component-list-point > ul {
    list-style: none;
    padding-left: 0;
   }
   
  .component-list-point > ul > li {
    padding-left: 25px;
    font-size: initial;
    line-height: 24px;
    margin-bottom: 10px;
  }
  
  .component-list-point > ul > li::before {
    width: 16px;
    height: 16px;
    top: 4px;
    left: -4px;
  }
}

/* チェックマーク付きリスト */
.component-list-check {
  margin: 12px 0;
}

.component-list-check > ul {
 list-style: none;
 padding-left: 0;
}

.component-list-check > ul > li {
  position: relative;
  padding-left: 25px;
  font-size: 14px;
  line-height: 25px;
  margin-bottom: 8px;
}

.component-list-check > ul > li::before {
  position: absolute;
  content: "";
  background: url(../fonts/icon_check.svg) center center no-repeat;
  background-size: contain;
  display: block;
  width: 14px;
  height: 14px;
  top: 6px;
  left: 4px;
}

.component-list-check li:last-child {
  margin-bottom: 0;
}

@media screen and (min-width:769px) {
  .component-list-check {
    margin: 12px 0;
  }

  .component-list-check > ul {
    list-style: none;
    padding-left: 0;
   }
   
  .component-list-check > ul > li {
    padding-left: 25px;
    font-size: initial;
    line-height: 24px;
    margin-bottom: 10px;
  }
  
  .component-list-check > ul > li::before {
    width: 16px;
    height: 16px;
    top: 4px;
    left: -4px;
  }
}

/* ローマ数字付きリスト */
.component-list-roman {
  margin: 12px 0;
}

.component-list-roman > ol {
  list-style: none;
  padding-left: 0;
  counter-reset: listroman;
}

.component-list-roman > ol > li {
  position: relative;
  padding-left: 25px;
  font-size: 14px;
  line-height: 25px;
  margin-bottom: 8px;
}

.component-list-roman > ol > li::before {
  position: absolute;
  counter-increment: listroman; /* counter-resetと同じ文字列 */
	content: counter(listroman, upper-roman) "."; /* カウントした数に応じて番号を表示 */
  top: 0px;
  left: -5px;
  display: block;
  width: 25px;
  text-align: right;
}

@media screen and (min-width:769px) {
  .component-list-roman > ol > li {
    font-size: initial;
    line-height: 24px;
    margin-bottom: 10px;
  }

  .component-list-roman > ol > li::before {
    top: 0px;
    left: -16px;
    width: 30px;
  }
}

.component-list > ul > li div {
  margin-left: 5px;
}


/* ---------------------------------------------------

汎用コンポーネント：動画コンポーネント

-----------------------------------------------------*/

.component-movie {
  width: 100%;
  margin: 1em 0;
}

.component-movie iframe {
  vertical-align: bottom;
  aspect-ratio: 16 / 9;
  width: 100%;
  height: auto;
}

.component-movie p {
  font-size: 12px;
  line-height: 21px;
  text-align: center;
  margin-top: 10px;
}

@media screen and (min-width:769px) {
  .component-movie {
    text-align: center;
    margin: 6px 0 12px;
  }

  .component-movie iframe {
    max-width: 640px;
  }

  .component-movie p {
    font-size: 14px;
    margin-top: 16px;
  }
}


/* ---------------------------------------------------

汎用コンポーネント：コラムコンポーネント

-----------------------------------------------------*/
.component-column {
  margin: 18px 0;
  border: 1px solid #d1d1d1;
  border-radius: 4px;
  padding: 20px 16px;
}

.column-title {
  font-size: 14px;
  line-height: 21px;
  font-weight: 500;
  margin-bottom: 8px;
}

.column-text {
  font-size: 14px;
  line-height: 25px;
}

.component-column-important {
  background: #fef3f3;
  margin: 12px 0;
  border-radius: 4px;
  padding: 20px 16px;
  border: solid 1px #d1d1d1;
}

.component-column-important .column-title {
  color: #E60012;
}

@media screen and (min-width:769px) {
  .component-column {
    padding: 28px 32px;
  }
  
  .column-title {
    font-size: 16px;
    line-height: 24px;
    margin-bottom: 8px;
  }
  
  .column-text {
    font-size: 16px;
    line-height: 29px;
  }
  
  .component-column-important {
    padding: 28px 32px;
  }
}


/* ---------------------------------------------------

汎用コンポーネント：お問合せコンポーネント

-----------------------------------------------------*/
.component-inquiry {
  padding: 24px 16px 28px 16px;
  border: #d1d1d1 solid 1px;
  border-radius: 4px;
  margin: 12px 0;
}

.inquiry-title {
  position: relative;
  font-size: 16px;
  font-weight: 700;
  line-height: 19px;
  padding-left: 44px;
}

.inquiry-title::before {
  content: "";
  position: absolute;
  background: url(../fonts/icn_mail.svg) center center no-repeat;
  background-size: contain;
  width: 40px;
  height: 40px;
  top: 50%;
  left: 0;
  transform: translate(0, -50%);
  display: block;
}

.inquiry-text {
  margin-top: 18px;
  font-size: 14px;
  line-height: 25px;
}

.inquiry-text a {
  color: #000;
}

@media screen and (min-width:769px) {
  .component-inquiry {
    padding: 30px 32px;
  }

  .inquiry-title {
    font-size: 20px;
    line-height: 24px;
  }

  .inquiry-text {
    margin-top: 14px;
    font-size: 16px;
    line-height: 29px;
  }

  .inquiry-text a:hover {
    text-decoration: none;
    color: #e60012;
  }
}


/* ---------------------------------------------------

汎用コンポーネント：注釈コンポーネント

-----------------------------------------------------*/

/* 番号なし注釈リスト */
.component-annotation {
  margin: 12px 0;
}

.component-annotation > ul > li {
  position: relative;
  font-size: 12px;
  color: #333;
  padding-left: 12px;
  line-height: 18px;
  margin-bottom: 11px;
}

.component-annotation > ul > li:last-child {
  margin-bottom: 0;
}

.component-annotation > ul > li::before {
  content: "※";
  position: absolute;
  top: 0;
  left: 0;
}

@media screen and (min-width:769px) {
  .component-annotation > ul > li {
    padding-left: 14px;
    font-size: 14px;
    line-height: 21px;
  }
}

/* 番号付き注釈リスト */
.component-annotation-num {
  margin: 12px 0;
}

.component-annotation-num > ul {
  list-style: none;
  padding-left: 0;
}

.component-annotation-num > ul > li {
  position: relative;
  font-size: 12px;
  color: #333;
  line-height: 18px;
  padding-left: 35px;
  margin-bottom: 11px;
}

.component-annotation-num > ul > li:last-child {
  margin-bottom: 0;
}

.component-annotation-num > ul > li::before {
  content: "（注）";
  width: 55px;
  text-align: right;
  position: absolute;
  top: 0;
  left: -17px;
}

.component-annotation-num > ul > li.annotation00::before {
  content: "（注）";
}
.component-annotation-num > ul > li.annotation01::before {
  content: "（注1）";
}
.component-annotation-num > ul > li.annotation02::before {
  content: "（注2）";
}
.component-annotation-num > ul > li.annotation03::before {
  content: "（注3）";
}
.component-annotation-num > ul > li.annotation04::before {
  content: "（注4）";
}
.component-annotation-num > ul > li.annotation05::before {
  content: "（注5）";
}
.component-annotation-num > ul > li.annotation06::before {
  content: "（注6）";
}
.component-annotation-num > ul > li.annotation07::before {
  content: "（注7）";
}
.component-annotation-num > ul > li.annotation08::before {
  content: "（注8）";
}
.component-annotation-num > ul > li.annotation09::before {
  content: "（注9）";
}
.component-annotation-num > ul > li.annotation10::before {
  content: "（注10）";
}
.component-annotation-num > ul > li.annotation11::before {
  content: "（注11）";
}
.component-annotation-num > ul > li.annotation12::before {
  content: "（注12）";
}
.component-annotation-num > ul > li.annotation13::before {
  content: "（注13）";
}
.component-annotation-num > ul > li.annotation14::before {
  content: "（注14）";
}
.component-annotation-num > ul > li.annotation15::before {
  content: "（注15）";
}
.component-annotation-num > ul > li.annotation16::before {
  content: "（注16）";
}
.component-annotation-num > ul > li.annotation17::before {
  content: "（注17）";
}
.component-annotation-num > ul > li.annotation18::before {
  content: "（注18）";
}
.component-annotation-num > ul > li.annotation19::before {
  content: "（注19）";
}
.component-annotation-num > ul > li.annotation20::before {
  content: "（注20）";
}

@media screen and (min-width:769px) {
  .component-annotation-num > ul {
    list-style: none;
    padding-left: 0;
  }
  
  .component-annotation-num > ul > li {
    position: relative;
    padding-left: 42px;
    font-size: 14px;
    line-height: 21px;
  }
  
  .component-annotation-num > ul > li::before {
    content: "（注）";
    width: 60px;
    text-align: right;
    position: absolute;
    top: 0;
    left: -12px;
  }
}

/* .*付き注意リスト */
.component-asterisk {
  margin: 12px 0;
}

.component-asterisk > ul > li {
  position: relative;
  font-size: 12px;
  color: #333;
  padding-left: 12px;
  line-height: 18px;
  margin-bottom: 11px;
}

.component-asterisk > ul > li:last-child {
  margin-bottom: 0;
}

.component-asterisk > ul > li::before {
  content: "*";
  position: absolute;
  top: 0;
  left: 0;
}

@media screen and (min-width:769px) {
  .component-asterisk > ul > li {
    padding-left: 14px;
    font-size: 14px;
    line-height: 21px;
  }
}

/* 番号付きアスタリスク注釈リスト */
.component-asterisk-num {
  margin: 12px 0;
}

.component-asterisk-num > ul {
  list-style: none;
  padding-left: 0;
}

.component-asterisk-num > ul > li {
  position: relative;
  font-size: 12px;
  color: #333;
  line-height: 18px;
  padding-left: 20px;
  margin-bottom: 11px;
}

.component-asterisk-num > ul > li:last-child {
  margin-bottom: 0;
}

.component-asterisk-num > ul > li::before {
  content: "*";
  width: 20px;
  text-align: right;
  position: absolute;
  top: 0;
  left: -5px;
}

.component-asterisk-num > ul > li.asterisk00::before {
  content: "*";
}
.component-asterisk-num > ul > li.asterisk01::before {
  content: "1";
}
.component-asterisk-num > ul > li.asterisk02::before {
  content: "2";
}
.component-asterisk-num > ul > li.asterisk03::before {
  content: "3";
}
.component-asterisk-num > ul > li.asterisk04::before {
  content: "4";
}
.component-asterisk-num > ul > li.asterisk05::before {
  content: "5";
}
.component-asterisk-num > ul > li.asterisk06::before {
  content: "6";
}
.component-asterisk-num > ul > li.asterisk07::before {
  content: "7";
}
.component-asterisk-num > ul > li.asterisk08::before {
  content: "8";
}
.component-asterisk-num > ul > li.asterisk09::before {
  content: "9";
}
.component-asterisk-num > ul > li.asterisk10::before {
  content: "10";
}
.component-asterisk-num > ul > li.asterisk11::before {
  content: "11";
}
.component-asterisk-num > ul > li.asterisk12::before {
  content: "12";
}
.component-asterisk-num > ul > li.asterisk13::before {
  content: "13";
}
.component-asterisk-num > ul > li.asterisk14::before {
  content: "14";
}
.component-asterisk-num > ul > li.asterisk15::before {
  content: "15";
}
.component-asterisk-num > ul > li.asterisk16::before {
  content: "16";
}
.component-asterisk-num > ul > li.asterisk17::before {
  content: "17";
}
.component-asterisk-num > ul > li.asterisk18::before {
  content: "18";
}
.component-asterisk-num > ul > li.asterisk19::before {
  content: "19";
}
.component-asterisk-num > ul > li.asterisk20::before {
  content: "20";
}

@media screen and (min-width:769px) {
  .component-asterisk-num > ul {
    list-style: none;
    padding-left: 0;
  }
  
  .component-asterisk-num > ul > li {
    position: relative;
    padding-left: 28px;
    font-size: 14px;
    line-height: 21px;
  }
  
  .component-asterisk-num > ul > li::before {
    content: "*";
    width: 20px;
    text-align: right;
    position: absolute;
    top: 0;
    left: 0px;
  }
}


/* 新規追加コンポーネント: 注釈ポイント */
.component-annotation-point{
  margin: 12px 0;
}

.component-annotation-point > ul {
 list-style: none;
 padding-left: 0;
}

.component-annotation-point > ul > li {
  position: relative;
  font-size: 10px;
  color: #666666;
  line-height: 12px;
  padding-left: 14px;
  margin-bottom: 11px;
}

.component-annotation-point > ul > li:last-child {
  margin-bottom: 0;
}

.component-annotation-point > ul > li::before {
  position: absolute;
  content: "";
  background: url(../fonts/icon_exclamation.svg) center center no-repeat;
  background-size: contain;
  display: block;
  width: 10px;
  height: 10px;
  top: 3px;
  left: 0px;
}

.component-annotation-point > ul > li:last-child {
  margin-bottom: 0;
}

@media screen and (min-width:769px) {
  .component-annotation-point > ul > li {
    font-size: 14px;
    line-height: 21px;
    padding-left: 15px;
  }
  
  .component-annotation-point > ul > li::before {
    width: 12px;
    height: 12px;
    left: 0px;
  }
}


/* 新規追加コンポーネント: 注釈チェック */
.component-annotation-check{
  margin: 12px 0;
}

.component-annotation-check > ul {
 list-style: none;
 padding-left: 0;
}

.component-annotation-check > ul > li {
  position: relative;
  font-size: 10px;
  color: #666666;
  line-height: 12px;
  padding-left: 14px;
  margin-bottom: 11px;
}

.component-annotation-check > ul > li:last-child {
  margin-bottom: 0;
}

.component-annotation-check > ul > li::before {
  position: absolute;
  content: "";
  background: url(../fonts/icon_check.svg) center center no-repeat;
  background-size: contain;
  display: block;
  width: 10px;
  height: 10px;
  top: 3px;
  left: 0px;
}

.component-annotation-check > ul > li:last-child {
  margin-bottom: 0;
}

@media screen and (min-width:769px) {
  .component-annotation-check > ul > li {
    font-size: 14px;
    line-height: 21px;
    padding-left: 15px;
  }
  
  .component-annotation-check > ul > li::before {
    width: 12px;
    height: 12px;
    left: 0px;
  }
}

/* ノートリスト */

.component-note {
  margin: 8px 0 7px 0;
}

.component-note span {
  font-size: 12px;
}

.component-note > ul {
  list-style: none;
  padding-left: 0;
}

.component-note > ul > li {
  position: relative;
  font-size: 12px;
  color: #333;
  line-height: 12px;
  padding-left: 9px;
  margin-bottom: 11px;
  text-indent: -7px;
  margin-left: 8px;
}

.component-note > ul > li:last-child {
  margin-bottom: 0;
}

.component-note > ul > li::before {
  position: absolute;
  content: "";
  background: #666666;
  background-size: contain;
  display: block;
  width: 5px;
  height: 5px;
  top: 3px;
  left: 0px;
  border-radius: 50%;
}

.component-note > ul > li.note00::before {
  display: none;
}

@media screen and (min-width:769px) {
  .component-note {
    margin-left: 34px;
  }

  .component-note span {
    font-size: 14px;
  }

  .component-note > ul > li {
    font-size: 14px;
    line-height: 21px;
    padding-left: 9px;
  }

  .component-note > ul > li::before {
    width: 6px;
    height: 6px;
    top: 7px;
  }
}

/* ---------------------------------------------------

汎用コンポーネント：ラインコンポーネント

-----------------------------------------------------*/

.component-line {
  font-size: 0;
  border-bottom: 1px solid #d1d1d1;
  margin: 12px 0;
  line-height: 1px;
}

/* ---------------------------------------------------

汎用コンポーネント：ラインコンポーネント(破線)

-----------------------------------------------------*/

.component-line-dotted {
  font-size: 0;
  border-bottom: 1px dotted #d1d1d1;
  margin: 12px 0;
  line-height: 1px;
}


/* ---------------------------------------------------

汎用コンポーネント：マージンコンポーネント

-----------------------------------------------------*/
.component-margin6 {
  font-size: 0;
  padding: 6px 0 0;
  line-height: 1;
}

.component-margin12 {
  font-size: 0;
  padding: 12px 0 0;
  line-height: 1;
}

.component-margin24 {
  font-size: 0;
  padding: 24px 0 0;
  line-height: 1;
}

/* ---------------------------------------------------

汎用コンポーネント：タブコンポーネント

-----------------------------------------------------*/
.tab-menu {
  position: relative;
  overflow-x: auto;
  margin: 18px 0;
  background-attachment: scroll;
  background-repeat: no-repeat;
}
.tab-menu > ul {
  display: flex;
  flex-flow: nowrap;
  justify-content: flex-start;
  align-items: stretch;
  width: fit-content;
}

.tab-menu > ul > li {
  align-self: stretch;
  flex-shrink: 0;
  background: #efefef;
  border-right: #d1d1d1 solid 1px;
}

.tab-menu > ul > li:last-child {
  border-right: none;
}

.tab-menu > ul > li a {
  display: flex;
  justify-content: center;
  align-items: center;
  height: 100%;
  text-decoration: none;
  color: #333;
  font-weight: 500;
  text-align: center;
  font-size: 14px;
  line-height: 16px;
  padding: 0px 16px;
  box-sizing: border-box;
  min-height: 40px;
}

.tab-menu > ul > li a.act-tab {
  color: #fff!important;
  background: #e60012;
  pointer-events: none;
}

@media screen and (min-width:769px) {
  .tab-menu {
    overflow-x: visible;
  }

  .tab-menu > ul {
    width: 100%;
  }

  .tab-menu > ul > li {
    flex: 1;
  }

  .tab-menu > ul > li a {
    padding: 14px 10px;
  }

  .tab-menu > ul > li a.act-tab {
    position: relative;
  }

  .tab-menu > ul > li a.act-tab::before {
    content: "";
    position: absolute;
    display: block;
    width: 16px;
    height: 8px;
    background: url(../fonts/tab-arrow.svg) center center no-repeat;
    background-size: contain;
    bottom: -8px;
    right: 50%;
    transform: translate(50%, 0);
    z-index: 1;
  }

  .tab-menu > ul > li a:hover {
    background: #a3010c;
    color: #fff!important;
}
}


/* ---------------------------------------------------

汎用コンポーネント：リンクタブコンポーネント

-----------------------------------------------------*/

.tab-submenu {
  margin: 18px 0;
}

.tab-submenu > ul {
  display: inline-flex;
  flex-flow: wrap;
  justify-content: flex-start;
  align-items: flex-start;
}

.tab-submenu > ul > li {
  width: fit-content;
  border-right: 1px solid #d1d1d1;
}

.tab-submenu > ul > li > a {
  text-decoration: none;
  font-size: 14px;
  font-weight: 500;
  color: #000;
  padding: 14px;
  line-height: 29px;
}

.tab-submenu > ul > li:first-child > a {
  padding-left: 0;
}

.tab-submenu > ul > li:last-child{
  border-right: none;
}

.tab-submenu > ul > li > a.act-tab-sub {
  color: #D31D10!important;
}

@media screen and (min-width:769px) {
  .tab-submenu > ul > li > a:hover {
    color: #D31D10;
  }
}

/* ---------------------------------------------------

汎用コンポーネント：アンカーリンクタブコンポーネント

-----------------------------------------------------*/
.tab-submenu-anchor {
  margin: 18px 0;
}

.component-anchor-link-column .tab-submenu-anchor {
  margin: 18px 0 0;
}

.tab-submenu-anchor > ul {
  display: flex;
  flex-flow: wrap;
  justify-content: flex-start;
  align-items: flex-start;
}

.tab-submenu-anchor > ul > li {
  width: 100%;
  margin-bottom: 8px;
}

.tab-submenu-anchor > ul > li:last-child {
  margin-bottom: 0;
}

.tab-submenu-anchor > ul > li > a {
  position: relative;
  text-decoration: none;
  font-size: 12px;
  font-weight: 500;
  color: #000;
  padding: 5px 33px;
  border: #d1d1d1 solid 1px;
  border-radius: 30px;
  box-sizing: border-box;
  display: block;
  line-height: 17px;
}

.tab-submenu-anchor > ul > li > a::before {
  content: "";
  position: absolute;
  width: 12px;
  height: 12px;
  background: url(../fonts/icn-arrow_take.svg) center center no-repeat;
  background-size: contain;
  top: 50%;
  left: 15px;
  transform: translate(0, -50%);
  display: block;
}

.tab-submenu-anchor > ul > li > a.act-tab-sub::before {
  background: url(../fonts/icn-arrow_take_open_red.svg) center center no-repeat;
  background-size: contain;
}

.tab-submenu-anchor > ul > li > a.act-tab-sub {
  color: #E60012!important;
  border: #E60012 solid 1px;
}

@media screen and (min-width:769px) {
  
  .tab-submenu-anchor > ul > li {
    width: fit-content;
    margin-right: 8px;
  }

  .tab-submenu-anchor > ul > li:last-child {
    margin-right: 0;
    margin-bottom: 8px;
  }
  
  .tab-submenu-anchor > ul > li > a {
    font-size: 14px;
    padding: 10px 30px 10px 37px;
  }

  .tab-submenu-anchor > ul > li > a:hover {
    border: #e60012 solid 1px;
    color: #e60012;
  }

  .tab-submenu-anchor > ul > li > a:hover::before {
    background: url(../fonts/icn-arrow_take_open_red.svg) center center no-repeat;
    background-size: contain;
  }
  
  .tab-submenu-anchor > ul > li > a::before {
    left: 17px;
  }
}


/* ---------------------------------------------------

汎用コンポーネント：ページトップリンク（ページ途中用）

-----------------------------------------------------*/
.page-top-sub {
  margin: 8px 0px;
}

.page-top-sub p a {
  text-decoration: none;
  color: #666666;
  font-size: 14px;
  padding-left: 18px;
  position: relative;
  line-height: 17px;
}

.page-top-sub p a::before {
  content: "";
  position: absolute;
  background: url(../fonts/icn_pagetop.svg) center center no-repeat;
  background-size: contain;
  width: 14px;
  height: 14px;
  top: 11px;
  left: 0;
  transform: translate(0, -50%);
}

.page-top-sub p a.link-window::after {
  display: none;
}

.page-top-sub .a-right {
  text-align: right;
}

@media screen and (min-width:769px) {
  .page-top-sub p a {
    padding-left: 20px;
    font-size: 16px;
  }

  .page-top-sub p a:hover {
    color: #e60012;
  }

  .page-top-sub p a:hover::before {
    background: url(../fonts/icn_pagetop_red.svg) center center no-repeat;
    background-size: contain;
  }
  
  .page-top-sub p a::before {
    width: 16px;
    height: 16px;
    top: 13px;
  }
}




/* ---------------------------------------------------

汎用コンポーネント：ボタン関連

-----------------------------------------------------*/

/* 赤色ボタン */
.input-btn {
  font-size: 12px;
  color: #fff !important;
  padding: 7px 28px 7px 12px;
  position: relative;
  text-decoration: none;
  border-radius: 20px;
  background: #e60012;
  width: 290px;
  display: inline-block;
  border: none;
  margin: 8px 0;
}

.input-btn::after {
  position: absolute;
  content: "";
  width: 12px;
  height: 12px;
  background: url(../fonts/icn-circle-redarw.svg) center center no-repeat;
  background-size: contain;
  top: 50%;
  right: 10px;
  transform: translate(0, -50%);
  display: block;
}

input.input-btn {
  background: url(../fonts/icn-circle-redarw.svg) #e60012 no-repeat;
  background-size: 12px;
  background-position: center right 10px;
  white-space: normal;
  width: 290px;
  margin: 8px 0;
}

@media screen and (min-width:769px) {
  .input-btn {
    font-size: 14px;
    padding: 8px 32px 8px 16px;
    width: 270px;
  }
  
  .input-btn::after {
    right: 16px;
    width: 14px;
    height: 14px;
  }

  input.input-btn {
    background-size: 14px;
    background-position: center right 16px;
    width: 318px;
}

  .input-btn:hover {
    opacity: .7;
  }
}

/* 赤色ボタンハーフサイズ */
.input-btn-sub {
  font-size: 12px;
  color: #fff !important;
  padding: 7px 28px 7px 12px;
  position: relative;
  text-decoration: none;
  border-radius: 20px;
  background: #e60012;
  width: 145px;
  display: inline-block;
  border: none;
  margin: 8px 0;
}

.input-btn-sub::after {
  position: absolute;
  content: "";
  width: 12px;
  height: 12px;
  background: url(../fonts/icn-circle-redarw.svg) center center no-repeat;
  background-size: contain;
  top: 50%;
  right: 10px;
  transform: translate(0, -50%);
  display: block;
}

input.input-btn-sub {
  background: url(../fonts/icn-circle-redarw.svg) #e60012 no-repeat;
  background-size: 12px;
  background-position: center right 10px;
  white-space: normal;
  width: 38%;
}

@media screen and (min-width:769px) {
  .input-btn-sub {
    font-size: 14px;
    padding: 8px 32px 8px 16px;
    width: 135px;
  }
  
  .input-btn-sub::after {
    right: 16px;
    width: 14px;
    height: 14px;
  }

  input.input-btn-sub {
    background-size: 14px;
    background-position: center right 16px;
    width: 183px;
}

  .input-btn-sub:hover {
    opacity: .7;
  }
}

/* 赤色ボタン　アイコンなし */
.input-btn2 {
  font-size: 12px;
  color: #fff !important;
  padding: 7px 21px;
  position: relative;
  text-decoration: none;
  border-radius: 20px;
  background: #e60012;
  width: 290px;
  text-align: center;
  display: inline-block;
  border: none;
  margin: 8px 0;
}

@media screen and (min-width:769px) {
  .input-btn2 {
    font-size: 14px;
    padding: 8px 24px;
    width: 270px;
  }

  .input-btn2:hover {
    opacity: .7;
  }
}

/* 赤色ボタンハーフサイズ　アイコンなし */
.input-btn2-sub {
  font-size: 12px;
  color: #fff !important;
  padding: 7px 21px;
  position: relative;
  text-decoration: none;
  border-radius: 20px;
  background: #e60012;
  width: 145px;
  text-align: center;
  display: inline-block;
  border: none;
  margin: 8px 0;
}
.input-btn2-sub.w-auto {
  width: auto;
  margin: 0 auto;
  white-space: nowrap;
}
@media screen and (min-width:769px) {
  .input-btn2-sub {
    font-size: 14px;
    padding: 8px 24px;
    width: 135px;
  }
  .input-btn2-sub:hover {
    opacity: .7;
  }
}

/* 灰色ボタン */
.submit-btn {
  position: relative;
  font-size: 12px;
  text-decoration: none;
  padding: 7px 28px 7px 12px;
  border: #d1d1d1 solid 1px;
  border-radius: 20px;
  background-color: #ffffff;
  width: 290px;
  display: inline-block;
  margin: 8px 0;
}

.submit-btn::after {
  position: absolute;
  content: "";
  background: url(../fonts/icn-circle-arw_gray.svg) center center no-repeat;
  background-size: contain;
  width: 12px;
  height: 12px;
  top: 50%;
  transform: translate(0, -50%);
  right: 13px;
}

@media screen and (min-width:769px) {
  .submit-btn {
    font-size: 14px;
    padding: 8px 32px 8px 16px;
    width: 270px;
  }
  
  .submit-btn::after {
    right: 16px;
    width: 14px;
    height: 14px;
  }
  
  .submit-btn:hover::after {
    background: url(../fonts/button-hover.svg) center center no-repeat;
    background-size: contain;
    width: 14px;
    height: 14px;
  }

  .submit-btn:hover {
    color: #e60012;
    border: #e60012 solid 1px;
  }
}

/* 灰色ボタンハーフサイズ */
.submit-btn-sub {
  position: relative;
  font-size: 12px;
  text-decoration: none;
  padding: 7px 28px 7px 12px;
  border: #d1d1d1 solid 1px;
  border-radius: 20px;
  background-color: #ffffff;
  width: 145px;
  display: inline-block;
  margin: 8px 0;
}

.submit-btn-sub::after {
  position: absolute;
  content: "";
  background: url(../fonts/icn-circle-arw_gray.svg) center center no-repeat;
  background-size: contain;
  width: 12px;
  height: 12px;
  top: 50%;
  transform: translate(0, -50%);
  right: 13px;
}

@media screen and (min-width:769px) {
  .submit-btn-sub {
    font-size: 14px;
    padding: 8px 32px 8px 16px;
    width: 135px;
  }
  
  .submit-btn-sub::after {
    right: 16px;
    width: 14px;
    height: 14px;
  }
  
  .submit-btn-sub:hover::after {
    background: url(../fonts/button-hover.svg) center center no-repeat;
    background-size: contain;
    width: 14px;
    height: 14px;
  }

  .submit-btn-sub:hover {
    color: #e60012;
    border: #e60012 solid 1px;
  }
}

/* 灰色ボタン　アイコンなし */
.submit-btn2 {
  position: relative;
  font-size: 12px;
  text-decoration: none;
  padding: 7px 21px;
  border: #d1d1d1 solid 1px;
  border-radius: 20px;
  background-color: #ffffff;
  width: 290px;
  text-align: center;
  display: inline-block;
  margin: 8px 0;
}

@media screen and (min-width:769px) {
  .submit-btn2 {
    font-size: 14px;
    padding: 8px 24px;
    width: 270px;
  }

  .submit-btn2:hover {
    color: #e60012;
    border: #e60012 solid 1px;
  }
}

/* 灰色ボタンハーフサイズ　アイコンなし */
.submit-btn2-sub {
  position: relative;
  font-size: 12px;
  text-decoration: none;
  padding: 7px 21px;
  border: #d1d1d1 solid 1px;
  border-radius: 20px;
  background-color: #ffffff;
  width: 145px;
  text-align: center;
  display: inline-block;
  margin: 8px 0;
}

@media screen and (min-width:769px) {
  .submit-btn2-sub {
    font-size: 14px;
    padding: 8px 24px;
    width: 135px;
  }

  .submit-btn2-sub:hover {
    color: #e60012;
    border: #e60012 solid 1px;
  }
}

/* 詳しくはこちらボタン */
.detail-btn {
  position: relative;
  font-size: 12px;
  text-decoration: none;
  padding: 7px 34px 7px 12px;
  border: #d1d1d1 solid 1px;
  border-radius: 20px;
  background-color: #ffffff;
  width: 74px;
  display: inline-block;
  text-align: center;
}

.detail-btn::after {
  position: absolute;
  content: "";
  background: url(../fonts/icn-circle-arw_gray.svg) center center no-repeat;
  background-size: contain;
  width: 12px;
  height: 12px;
  top: 50%;
  transform: translate(0, -50%);
  right: 13px;
}

@media screen and (min-width:769px) {
  .detail-btn {
    font-size: 14px;
    padding: 8px 38px 8px 16px;
    width: 84px;
  }
  
  .detail-btn::after {
    right: 16px;
    width: 14px;
    height: 14px;
  }
  
  .detail-btn:hover::after {
    background: url(../fonts/button-hover.svg) center center no-repeat;
    background-size: contain;
    width: 14px;
    height: 14px;
  }

  .detail-btn:hover {
    color: #e60012;
    border: #e60012 solid 1px;
  }
}

/* 新規追加コンポーネント: メール配信ボタン関連 */
.component-mail-btn {
  display: block;
  position: relative;
  font-size: 14px;
  color: #000;
  font-weight: 500;
  box-sizing: border-box;
  padding: 21px 34px 21px 80px;
  border: #d1d1d1 solid 1px;
  border-radius: 4px;
  text-decoration: none;
  box-shadow: 0px 1px 3px rgba(0, 0, 0, 0.08);
}

.component-mail-btn::before {
  content: "";
  position: absolute;
  display: block;
  width: 32px;
  height: 32px;
  background: url(../fonts/icn_mail.svg) center center no-repeat;
  background-size: contain;
  top: 50%;
  left: 24px;
  transform: translate(0, -50%);
}

.component-mail-btn::after {
  content: "";
  position: absolute;
  display: block;
  width: 10px;
  height: 10px;
  background: url(../fonts/icn-arrow_take_open.svg) center center no-repeat;
  background-size: contain;
  top: 50%;
  right: 16px;
  transform: translate(0, -50%) rotate(-90deg);
}

@media screen and (min-width:769px) {
  .component-mail-btn {
    font-size: 16px;
    line-height: 20px;
    padding: 28px 42px 28px 80px;
    width: 50%;
  }
  
  .component-mail-btn::before {
    width: 40px;
    height: 40px;
    left: 20px;
  }

  .component-mail-btn::after {
    width: 12px;
    height: 12px;
  }

  .component-mail-btn:hover {
    opacity: .7;
    color: #333!important;
  }
}

/* iNAVボタン */
.inav-btn {
  font-size: 10px;
  color: #fff!important;
  padding: 1px 31px 1px 13px;
  position: relative;
  text-decoration: none;
  border-radius: 14px;
  background: #e60012;
  width: fit-content;
  display: inline-block;
  border: none;
  margin: 5px 0 0;
}

.inav-btn::after {
  position: absolute;
  content: "";
  width: 10px;
  height: 10px;
  background: url(../fonts/icn-blank-wh.svg) center center no-repeat;
  background-size: contain;
  top: 50%;
  right: 12px;
  transform: translate(0, -50%);
  display: block;
}

@media screen and (min-width:769px) {
  .inav-btn {
    font-size: 12px;
    padding: 4px 36px 4px 16px;
  }
  
  .inav-btn::after {
    right: 16px;
    width: 12px;
    height: 12px;
  }

  .inav-btn:hover {
    opacity: .7;
  }
}

/* 緑色ボタン */
.gr-btn {
  font-size: 10px;
  color: #fff!important;
  padding: 1px 12px 1px 12px;
  text-decoration: none;
  border-radius: 14px;
  background: #00A35D;
  width: fit-content;
  display: inline-block;
  border: none;
  margin: 5px 0 0;
}

@media screen and (min-width:769px) {
  .gr-btn {
    font-size: 12px;
    padding: 4px 16px 4px 16px;
  }

  .gr-btn:hover {
    opacity: .7;
  }
}

/* 青色ボタン */
.linked-bonds-btn {
  font-size: 10px;
  color: #fff!important;
  padding: 1px 12px 1px 12px;
  text-decoration: none;
  border-radius: 14px;
  background: #234FC6;
  width: fit-content;
  display: inline-block;
  border: none;
  margin: 5px 0 0;
}

@media screen and (min-width:769px) {
  .linked-bonds-btn {
    font-size: 12px;
    padding: 4px 16px 4px 16px;
  }

  .linked-bonds-btn:hover {
    opacity: .7;
  }
}

/* OTCボタン */
.otc-btn {
  font-size: 10px;
  color: #fff!important;
  padding: 1px 12px 1px 12px;
  text-decoration: none;
  border-radius: 14px;
  background: #234FC6;
  width: fit-content;
  display: inline-block;
  border: none;
  margin: 5px 0 0;
}

@media screen and (min-width:769px) {
  .otc-btn {
    font-size: 12px;
    padding: 4px 16px 4px 16px;
  }

  .otc-btn:hover {
    opacity: .7;
  }
}

/* サイト更新情報ボタン(背景色なし灰色) */
a.site-update-submit-sub {
  font-size: 12px;
  color: #000;
  padding: 6px 28px 6px 12px;
  border: #d1d1d1 solid 1px;
  position: relative;
  text-decoration: none;
  border-radius: 20px;
  display: block;
  width: fit-content;
}

a.site-update-submit-sub::after {
  position: absolute;
  content: "";
  width: 12px;
  height: 12px;
  background: url(../fonts/icn-circle-arw_gray.svg) center center no-repeat;
  background-size: contain;
  top: 50%;
  right: 10px;
  transform: translate(0, -50%);
  display: block;
}

@media screen and (min-width:769px) {
  a.site-update-submit-sub {
    font-size: 14px;
    padding: 8px 35px 8px 16px;
    width: fit-content;
  }
  
  a.site-update-submit-sub::after {
    right: 16px;
    width: 12px;
    height: 12px;
  }

  a.site-update-submit-sub:hover {
    opacity: .7;
    color: #333!important;
  }
}

/* サイト更新情報ボタン(背景色なし赤色) */
a.site-update-input-sub {
  font-size: 12px;
  color: #e60012!important;
  padding: 6px 28px 6px 12px;
  border: #e60012 solid 1px;
  position: relative;
  text-decoration: none;
  border-radius: 20px;
  display: block;
  width: fit-content;
}

a.site-update-input-sub::after {
  position: absolute;
  content: "";
  width: 12px;
  height: 12px;
  background: url(../fonts/icn-circle-arw_red.svg) center center no-repeat;
  background-size: contain;
  top: 50%;
  right: 10px;
  transform: translate(0, -50%);
  display: block;
}

@media screen and (min-width:769px) {
  a.site-update-input-sub {
    font-size: 14px;
    padding: 8px 35px 8px 16px;
    width: fit-content;
  }
  
  a.site-update-input-sub::after {
    right: 16px;
    width: 12px;
    height: 12px;
  }

  a.site-update-input-sub:hover {
    opacity: .7;
  }
}

/* サイト更新情報ボタン(赤色) */
a.site-update-input {
  font-size: 12px;
  color: #fff!important;
  padding: 7px 28px 7px 12px;
  position: relative;
  text-decoration: none;
  border-radius: 20px;
  display: block;
  width: fit-content;
  background: #e60012;
}

a.site-update-input::after {
  position: absolute;
  content: "";
  width: 12px;
  height: 12px;
  background: url(../fonts/icn-circle-redarw.svg) center center no-repeat;
  background-size: contain;
  top: 50%;
  right: 10px;
  transform: translate(0, -50%);
  display: block;
}

@media screen and (min-width:769px) {
  a.site-update-input {
    font-size: 14px;
    padding: 8px 35px 8px 16px;
    width: fit-content;
  }
  
  a.site-update-input::after {
    right: 16px;
    width: 12px;
    height: 12px;
  }

  a.site-update-input:hover {
    opacity: .7;
  }
}

/* サイト更新情報ボタン(灰色) */
a.site-update-submit {
  font-size: 12px;
  color: #fff!important;
  padding: 7px 28px 7px 12px;
  position: relative;
  text-decoration: none;
  border-radius: 20px;
  display: block;
  width: fit-content;
  background: #666666;
}

a.site-update-submit::after {
  position: absolute;
  content: "";
  width: 12px;
  height: 12px;
  background: url(../fonts/icn-circle-arw.svg) center center no-repeat;
  background-size: contain;
  top: 50%;
  right: 10px;
  transform: translate(0, -50%);
  display: block;
}

@media screen and (min-width:769px) {
  a.site-update-submit {
    font-size: 14px;
    padding: 8px 35px 8px 16px;
    width: fit-content;
  }
  
  a.site-update-submit::after {
    right: 16px;
    width: 12px;
    height: 12px;
  }

  a.site-update-submit:hover {
    opacity: .7;
  }
}

/* 閉じるボタン(灰色背景色なし) */
a.close-btn-submit-sub {
  font-size: 10px;
  color: #000;
  padding: 3px 27px 3px 12px;
  border: #d1d1d1 solid 1px;
  position: relative;
  text-decoration: none;
  border-radius: 14px;
}

a.close-btn-submit-sub::after {
  position: absolute;
  content: "";
  width: 10px;
  height: 10px;
  background: url(../fonts/button-sp.svg) center center no-repeat;
  background-size: contain;
  top: 50%;
  right: 12px;
  transform: translate(0, -50%);
  display: block;
}

@media screen and (min-width:769px) {
  a.close-btn-submit-sub {
    font-size: 12px;
    padding: 5px 33px 5px 15px;
    width: fit-content;
    display: block;
    border-radius: 30px;
  }
  
  a.close-btn-submit-sub::after {
    right: 16px;
    width: 12px;
    height: 12px;
  }

  a.close-btn-submit-sub:hover {
    opacity: .7;
    color: #333!important;
  }
}

/* 閉じるボタン(灰色) */
a.close-btn-submit {
  font-size: 10px;
  color: #fff!important;
  background: #666666;
  padding: 4px 27px 4px 12px;
  position: relative;
  text-decoration: none;
  border-radius: 14px;
}

a.close-btn-submit::after {
  position: absolute;
  content: "";
  width: 10px;
  height: 10px;
  background: url(../fonts/button-sp-gray.svg) center center no-repeat;
  background-size: contain;
  top: 50%;
  right: 12px;
  transform: translate(0, -50%);
  display: block;
}

@media screen and (min-width:769px) {
  a.close-btn-submit {
    font-size: 12px;
    padding: 5px 33px 5px 15px;
    width: fit-content;
    display: block;
    border-radius: 30px;
  }
  
  a.close-btn-submit::after {
    right: 16px;
    width: 12px;
    height: 12px;
  }

  a.close-btn-submit:hover {
    opacity: .7;
  }
}

/* 関連情報ボタン */
.component-sitelist-data {
  display: flex;
  flex-flow: column;
  width: 167px;
  text-decoration: none;
  border: #d1d1d1 solid 1px;
  border-radius: 4px;
  box-sizing: border-box;
  align-self: stretch;
  box-shadow: 0px 1px 3px rgba(0, 0, 0, 0.08);
  margin: 12px 0;
}

.component-sitelist-img img {
  vertical-align: bottom;
  width: 100%;
}

.component-sitelist-title {
  display: flex;
  flex-grow: 1;
  align-items: center;
  line-height: 14px;
  font-size: 12px;
  border-top: #d1d1d1 solid 1px;
  color: #000000;
  padding: 12px 32px 12px 12px;
  font-weight: 500;
  box-sizing: border-box;
  background: url(../fonts/icn-blank.svg) right 12px center no-repeat #ffffff;
  background-size: 12px 12px;
}

@media screen and (min-width:769px) {
  .component-sitelist-data {
    width: 250px;
  }
  
  .component-sitelist-title {
    line-height: 17px;
    font-size: 14px;
    min-height: 45px;
    padding: 5px 36px 5px 16px;
    background: url(../fonts/icn-blank.svg) right 16px center no-repeat #ffffff;
  }

  .component-sitelist-data:hover .component-sitelist-title {
    color: #E60012;
    text-decoration: underline;
    background: url(../fonts/icn-blank-hover.svg) right 16px center no-repeat #ffffff;
}
  .component-sitelist-data:hover .component-sitelist-img img {
    opacity: 0.7;
}
}

/* ---------------------------------------------------

汎用コンポーネント：3カラムリンクボックス

-----------------------------------------------------*/
.component-link-box {
  margin: -15px 0 0 -9px;
  display: flex;
  flex-flow: wrap;
  justify-content: flex-start;
  align-items: stretch;
}

.component-link-box-data {
  width: calc((100% / 2) - 9px);
  margin: 15px 0 0 9px;
  box-shadow: 0px 1px 3px rgba(0, 0, 0, 0.08);
  overflow: hidden;
  box-sizing: border-box;
  border: #d1d1d1 solid 1px;
  border-radius: 3px;
}

.component-link-box-data a {
  text-decoration: none;
  color: black;
  display: block;
  height: 100%;
}

.component-link-box-img img {
  vertical-align: bottom;
  width: 100%;
}

.component-link-box-title {
  font-size: 16px;
  font-weight: 500;
  line-height: 19px;
  padding: 10px 12px 5px;
}

.component-link-box-text {
  font-size: 10px;
  line-height: 15px;
  color: #666666;
  padding: 0 12px 10px;
}

.component-link-box-title span {
  background: #E60012;
  color: #fff;
  font-size: 10px;
  display: inline-block;
  margin-right: 6px;
  border-radius: 4px;
  line-height: 11px;
  padding: 2px 4px;
}

@media screen and (min-width : 769px) {
  .component-link-box {
    margin: -32px 0 0 -32px;
  }
  
  .component-link-box-data {
    width: calc((100% / 3) - 32px);
    margin: 32px 0 0 32px;
  }

  .component-link-box-data > a:hover .component-link-box-title {
    color: #e60012;
    text-decoration: underline;
  }

  .component-link-box-data > a:hover .component-link-box-img img {
    opacity: 0.7;
  }
  
  .component-link-box-title {
    font-size: 20px;
    line-height: 24px;
    padding: 20px 20px 15px 20px;
  }
  
  .component-link-box-text {
    font-size: 12px;
    line-height: 18px;
    padding: 0 20px 20px 20px;
  }
  
  .component-link-box-title span {
    font-size: 12px;
    line-height: 13px;
    padding: 2px 4px;
  }
}

/* テキストボックス */

.column3-box-subIn {
  margin: 0 0 30px;
  border: #d1d1d1 1px solid;
  border-radius: 4px;
  padding: 21px 16px;
  line-height: 21px;
  font-size: 14px;
}

.column3-box-subIn > a {
  display: block;
  box-sizing: border-box;
  text-decoration: none;
  color: #000;
}

.column-name {
  position: relative;
  padding-left: 12px;
  font-size: 16px;
  font-weight: 500;
  line-height: 24px;
  display: block;
  height: auto!important;
}

.column-name::before {
  content: "";
  position: absolute;
  display: block;
  background: linear-gradient(to bottom, #e60012, #a4000d);
  width: 4px;
  height: 20px;
  top: 2px;
  left: 0px;
  transform: skewY(26deg);
}

.column-text-box {
  display: block;
  margin-top: 11px;
}

.column-note {
  font-size: 14px;
  color: #666;
}

.column-name .new-icon {
  position: relative;
}

.column-name .new-icon::before {
  content: "NEW";
  background: #e60012;
  font-size: 10px;
  line-height: 11px;
  color: #fff;
  top: -3px!important;
  left: 0;
  border-radius: 4px;
  position: relative;
}

.column-arw-link,
.column-link01-text {
  display: block;
  box-sizing: border-box;
}

.column-arw-link a,
.column-link01-text a {
  font-size: 14px;
  line-height: 21px;
  display: inline;
  color: #666;
  padding-left: 18px;
  display: inline-block;
}
.column-arw-link a::after,
.column-link01-text a::after {
  width: 14px;
  height: 14px;
  top: 4px;
}

.column3-box-subIn .column-link-txt01:first-of-type .column-link01-text a:first-child {
  margin-top: 11px;
}


@media screen and (min-width:769px) {
  .column3-boxIn {
    display: flex;
    flex-flow: wrap;
    justify-content: flex-start;
    align-items: stretch;
    margin: -32px 0 0 -32px;
  }

  .column3-box-sub {
    width: calc((100% / 3) - 32px);
    margin: 32px 0 0 32px;
    align-self: stretch;
  }
	
  .column3-box.-is-4th .column3-box-sub {
    width: calc((100% / 4) - 32px);
  }

  .column3-box-subIn > a:hover .column-name {
    color: #e60012;
    text-decoration: underline;
  }

  .column-name {
    padding-left: 14px;
    font-size: 20px;
    line-height: 24px;
  }

  .column-name::before {
    top: 0;
    height: 24px;
  }

  .column-text-box {
    margin-top: 18px;
  }

  .column-name .new-icon::before {
    font-size: 12px;
    line-height: 13.2px;
  }

  .column3-box .column3-box-sub {
    margin-top: 0;
    margin-bottom: 30px;
  }

  .column3-box .column3-boxIn {
    margin-top: 0;
  }

  .column3-box .column3-boxIn .column3-box-subIn {
    margin-bottom: 0;
    height: 100%;
    box-sizing: border-box;
  }
  .column-arw-link a,
  .column-link01-text a{
    font-size: 14px;
    line-height: 21px;
  }
  .column-arw-link a:hover,
  .column-link01-text a:hover, {
    text-decoration: underline;
  }
  .column3-box-subIn .column-link-txt01:first-of-type .column-link01-text a:first-child {
    margin-top: 18px;
  }
}

/* ---------------------------------------------------

第三階層見出し

-----------------------------------------------------*/
.column-link-category-box {
  display: block;
  width: 100%;
  padding-right: 20px;
  box-sizing: border-box;
}

.column-link-category-box span {
  display: inline-block;
}

.column-link01-title {
  position: relative;
}

.column-link-category {
  background: #E50213;
  font-size: 10px;
  line-height: 11px;
  color: #fff;
  border-radius: 12px;
  padding: 6px 12px;
  margin-right: 5px;
  margin-bottom: 5px;
  display: inline-block;
}

.column-link-category.cat02 {
  background: #FF6800;
}

.column-link-category.cat03 {
  background: #0039C8;
}

.column-link-category.cat04 {
  background: #A70409;
}

.column-link-category.cat05 {
  background: #41658A;
}

.column-link-category.cat06 {
  background: #023B90;
}

.column-link-category.cat07 {
  background: #7C60D0;
}

.column-link-category.cat08 {
  background: #58B4C3;
}

.column-link-category.cat09 {
  background: #93B83B;
}

.column-link-category.cat10 {
  background: #E39857;
}

.column-link-category.cat11 {
  background: #F43849;
}

.column-link01-title span {
  position: relative;
  padding-left: 12px;
  font-size: 16px;
  font-weight: 500;
  line-height: 24px;
  display: block;
  height: auto!important;
}

.column-link01-title span::before {
  content: "";
  position: absolute;
  display: block;
  background: linear-gradient(to bottom, #e60012, #a4000d);
  width: 4px;
  height: 20px;
  top: 4px;
  left: 0px;
  transform: skewY(26deg);
}

@media screen and (min-width:769px) {
  .column3-box-subIn > .column-link01-title:hover {
    color: #e60012;
    text-decoration: underline;
  }

  .column-link-category-box {
    padding-right: 0px;
  }
  
  .column-link-category {
    font-size: 12px;
    line-height: 13px;
    padding: 4px 8px;
    border-radius: 50px;
  }

  .column-link01-title span {
    padding-left: 14px;
    font-size: 20px;
    line-height: 24px;
  }

  .column-link01-title span::before {
    top: 3px;
    width: 4px;
    height: 24px;
  }
}

/* ---------------------------------------------------

汎用コンポーネント：2カラムリンクボックス

-----------------------------------------------------*/
@media screen and (max-width:768px) {
  .heightLine-title1 {
    height: auto !important;
  }

  .heightLine-title2 {
    height: auto !important;
  }
}

@media screen and (min-width:769px) {

  .column2-boxsIn {
    display: flex;
    flex-flow: nowrap;
    justify-content: flex-start;
    align-items: stretch;
  }
  
  .column2-boxs-sub {
    width: calc(100% / 2);
    margin-right: 45px;
  }
  
  .column2-boxs-sub:last-child {
    margin-right: 0;
  }

  .column2-boxs-subIn .heading-title-mu span::before, .column2-boxs-subIn .heading-title span::before {
    width: 202px;
  }
}

/* ---------------------------------------------------

汎用コンポーネント：2カラム 見出し記事セット

-----------------------------------------------------*/

@media screen and (min-width:769px) {
  .monthly-boxIn {
    display: flex;
    flex-flow: nowrap;
    justify-content: flex-start;
    align-items: stretch;
  }
  
  .monthly-box-sub {
    width: calc(100% / 2);
    margin-right: 45px;
  }
  
  .monthly-box-sub:last-child {
    margin-right: 0;
  }
}


/* ---------------------------------------------------

ETFボタン

-----------------------------------------------------*/

.column6-box {
	margin: 12px 0 0;
	overflow: hidden;
}

.column6-boxIn {
	display: table;
	margin-bottom: 12px;
	border-collapse: separate;
	border-spacing: 10px;
}
.column6-box .column6-boxIn:first-child {
	margin-bottom: -12px;
}
.column6-box-sub {
	display: table-cell;
	width: 16.666666%;
	vertical-align: top;
}
.column6-box-subIn {
	padding: 0 12px 0 0;
	display: block;
}
ul.input-btn-list li .input-btn2-sub,
ul.input-btn-list li .submit-btn2-sub {
	display: flex;
	vertical-align: middle;
	line-height: 20px;
	padding: 12px;
	justify-content: center;
	align-items: center;
	width: 90%;
}

/* ---------------------------------------------------

新規追加コンポーネント: アンカーリンクにタイトル有りパターン

-----------------------------------------------------*/
.component-anchor-link-column {
  margin: 12px 0;
  border: 1px solid #d1d1d1;
  border-radius: 4px;
  padding: 20px 16px;
}

.column-anchor-link-title {
  font-size: 16px;
  line-height: 24px;
  font-weight: 500;
}

@media screen and (min-width:769px) {
  .component-anchor-link-column {
    padding: 28px 32px 20px;
  }

  .column-anchor-link-title {
    font-size: 20px;
    line-height: 30px;
  }
}

/* ---------------------------------------------------

新規追加コンポーネント: 資料ダウンロード

-----------------------------------------------------*/
.document-download a {
  padding: 10px 40px 10px 16px;
  font-size: 14px;
  border: 1px solid #ddd;
  border-radius: 4px;
  background: #fff;
  box-shadow: 0px 1px 3px rgba(0, 0, 0, 0.08);
  display: block;
  text-decoration: none;
  color: #000;
  position: relative;
}

.document-download a::after {
  content: "";
  position: absolute;
  display: block;
  background: url(../fonts/icon_zip.svg) center center no-repeat;
  background-size: contain;
  width: 18px;
  height: 18px;
  right: 16px;
  top: 50%;
  transform: translate(0, -50%);
}

@media screen and (min-width:769px) {
  .document-download a {
    font-size: 16px;
  }
  .document-download a:hover {
    color: #e60012;
    border: 1px solid #e60012;
  }
}

/* ---------------------------------------------------

旧パーツリスト移行

-----------------------------------------------------*/
.heading-title-sub {
	display: block;
	padding: 4px 0 0;
	border-bottom: 1px solid #d1d1d1;
	font-size: 16px;
	margin: 0 0 0;
}
.heading-title-sub span {
	display: block;
	background: #ffffff;
	padding: 13px 11px 13px;
	line-height: 19px;
	font-weight:bold;
}
.heading-title-subttl {
	margin: 24px 0 12px;
}
.heading-title-blue {
	display: table;
	width: 100%;
	padding: 4px 0 0;
	border-bottom: 1px solid #d1d1d1;
	font-size: 16px;
	margin: 0 0 0;
	background: #0054cb; /* Old browsers */
	background: -moz-linear-gradient(left,  #0054cb 70%, #004197 100%); /* FF3.6+ */
	background: -webkit-gradient(linear, left top, right top, color-stop(70%,#0054cb), color-stop(100%,#004197)); /* Chrome,Safari4+ */
	background: -webkit-linear-gradient(left,  #0054cb 70%,#004197 100%); /* Chrome10+,Safari5.1+ */
	background: -o-linear-gradient(left,  #0054cb 70%,#004197 100%); /* Opera 11.10+ */
	background: -ms-linear-gradient(left,  #0054cb 70%,#004197 100%); /* IE10+ */
	background: linear-gradient(to right,  #0054cb 70%,#004197 100%); /* W3C */
	filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#0054cb', endColorstr='#004197',GradientType=1 ); /* IE6-9 */
}
.heading-title-blue span {
	display: table-cell;
	background: #ffffff;
	padding: 9px 11px 9px;
	line-height: 19px;
	font-weight:bold;
}
/* 小小小見出し(使用しない) */
.subsubsubhead-title {
	line-height: 1;
	font-size: 12px;
	font-weight: bold;
	margin: 16px 0 0;
	padding: 8px;
}
.text-title {
	display: block;
	font-size: 14px;
	padding: 0 0 12px;
	line-height: 15px;
}

/* 汎用コンポーネント：画像コンポーネント説明 */
.component-imgbox-textR p {
	margin: 0 0 0 0;
}
.component-imgbox-textL p {
	margin: 0 0 0 0;
}

/* テーブル自由カスタマイズ */
.component-normal-table table a {
	color: #000;
}
.component-normal-table table.pd_half th,
.component-normal-table table.pd_half td {
	padding: 4px 6px;
}
.component-normal-table table .bg-even td {
	background: #F7F7F7;
}
.component-noline-table table a {
	color: #000;
}
.component-noline-table table .bg-even td {
	background: #F7F7F7;
}

/* テーブル用パーツ */
.table-caption {
	margin: 0 0 4px;
	font-weight: bold;
	font-size: 14px;
}
.table-text {
	margin: 0 0 4px;
	text-align: right;
}
/* 背景色（白）*/
.tb-color001 {
	background: #fff !important;
}
/* 背景色（薄い灰色）*/
.tb-color002 {
	background: #F7F7F7 !important;
}
/* 背景色（濃い灰色）*/
.tb-color003 {
	background: #333333 !important;
	color: #fff!important;
}
/* 背景色（ピンク）*/
.tb-color004 {
	background: #FADFE0 !important;
}
/* 背景色追加分）*/
.tb-color005 {
	background: #F8FBBF !important;
}
.tb-color006 {
	background: #D3E7F7 !important;
}
.tb-color007 {
	background: #D0E9BD !important;
}
/* フォント色（赤） */
.fc-red {
	color: #e4001e !important;
}
.fc-red02 {
	color: #AD002D !important;
}
.fc-red03 {
	color: #E60012 !important;
}
/* フォント色（緑） */
.fc-green {
	color: #00CF6F !important;
}
/* フォント色（青） */
.fc-blue {
	color: #0000cd !important;
}
/* フォント色（白） */
.fc-white {
	color: #fff !important;
}
/* フォントボールド */
.txt-bold {
	font-weight: 700!important;
}
/* フォントサイズ14px*/
.txt-size14 {
	font-size: 14px!important;
}

/* 汎用コンポーネント：ファイル登録コンポーネント説明【枠なし】 */

.link-fr {
	display: inline-block;
	text-decoration: none;
	background: url(../images/icon-linkarw.png) 0 4px no-repeat;
	position: relative;
	margin: 6px 12px;
	padding: 0 18px 0 16px;
	color: #000000;
}
.link-fr:hover {
	background: url(../images/icon-linkarw-on.png) 0 4px no-repeat;
	color: #f30101 !important;
}
.link-fr:after {
	content: "　";
	background: url(../images/icon-fr.png) 0 center no-repeat;
	width: 16px;
	height: 16px;
	position: absolute;
	bottom: 4px;
	right: auto;
    margin-left: 5px;
}
.link-ur {
	display: inline-block;
	text-decoration: none;
	background: url(../images/icon-linkarw.png) 0 4px no-repeat;
	position: relative;
	margin: 6px 12px;
	padding: 0 18px 0 16px;
	color: #000000;
}
.link-ur:hover {
	background: url(../images/icon-linkarw-on.png) 0 4px no-repeat;
	color: #f30101 !important;
}
.link-ur:after {
	content: "　";
	background: url(../images/icon-ur.png) 0 center no-repeat;
	width: 16px;
	height: 16px;
	position: absolute;
	bottom: 4px;
	right: auto;
    margin-left: 5px;
}
.link-br {
	display: inline-block;
	text-decoration: none;
	background: url(../images/icon-linkarw.png) 0 4px no-repeat;
	position: relative;
	margin: 6px 12px;
	padding: 0 18px 0 16px;
	color: #000000;
}
.link-br:hover {
	background: url(../images/icon-linkarw-on.png) 0 4px no-repeat;
	color: #f30101 !important;
}
.link-br:after {
	content: "　";
	background: url(../images/icon-br.png) 0 center no-repeat;
	width: 16px;
	height: 16px;
	position: absolute;
	bottom: 4px;
	right: auto;
    margin-left: 5px;
}
.link-rn {
	display: inline-block;
	text-decoration: none;
	background: url(../images/icon-linkarw.png) 0 4px no-repeat;
	position: relative;
	margin: 6px 12px;
	padding: 0 18px 0 16px;
	color: #000000;
}
.link-rn:hover {
	background: url(../images/icon-linkarw-on.png) 0 4px no-repeat;
	color: #f30101 !important;
}
.link-rn:after {
	content: "　";
	background: url(../images/icon-rn.png) 0 center no-repeat;
	width: 16px;
	height: 16px;
	position: absolute;
	bottom: 4px;
	right: auto;
    margin-left: 5px;
}


/* 汎用コンポーネント：ファイル登録コンポーネント説明【枠あり】 */
.component-file table td.tb-separated {
	border-right: none;
}

/* 汎用コンポーネント：アンカーリンクコンポーネント */
.component-anchor-link {
	margin: 16px 0;
}
.component-anchor-link ul {
	letter-spacing: -.40em;
}
.component-anchor-link ul li {
	display: inline-block;
	letter-spacing: 1px;
	margin: 0 10px 0 0;
}
.component-anchor-link ul li a {
	display: block;
	color: #000;
	border: 1px solid #d1d1d1;
	padding: 5px 10px;
}

/* 汎用コンポーネント：タブコンポーネント */
.tab-title {
	font-size: 14px;
	padding: 0 0 10px 10px;
}
.tab-menu ul li span {
	display: table-cell;
	position: relative;
	vertical-align: middle;
	width: 100%;
	background: #e70111;
	color: #ffffff;
	text-decoration: none;
	padding: 8px 12px;
	box-shadow:rgb(203, 203, 203) 0px 1px 5px 1px;
	-webkit-box-shadow:rgb(203, 203, 203) 0px 1px 5px 1px;
	-moz-box-shadow:rgb(203, 203, 203) 0px 1px 5px 1px;
}
.tab-menu ul li span em {
}
.tab-menu ul li a em {
	display: none;
}
.tab-menu ul li a.act-tab em {
}
.tab-menu ul li a.act-tab:hover em {
}

/* 汎用コンポーネント：アンカーリンクタブコンポーネント */
/*.tab-submenu-anchor ul li:first-child {
	border-left: none;
	padding: 0;
}*/

/* 汎用コンポーネント：ボタン関連 */
/* 汎用コンポーネント：3カラムリンクボックス*/
.column3-box.cb2s {
	margin: 12px 0;
}
.column3-box.cb2s .column3-box-sub {
	display: table-cell;
	width: 50%;
	vertical-align: top;
}

/* 汎用コンポーネント：2カラムリンクボックス*/

/* エラー表記 */
.component-error {
	margin: 21px 0 0;
	background: #efefef;
	padding: 8px 12px 7px;
}
.component-error p {
	color: #e60711;
}

/* ボタン表示用 */
.component-btn-box {
	background: #efefef;
	padding: 12px;
	margin: 12px 0;
	text-align: center;
}
.component-btn-box .input-btn {
	margin: 0 13px;
}
.component-btn-box .input-btn span {
	display: inline-block;
	padding: 0 18px;
	background: url(../images/icon-block-w.png) right center no-repeat;
}
.component-btn-box .submit-btn {
	margin: 0 13px;
}

/* iframe用 */
.component-iframe {
	width: 100%;
}

/* 画像拡大アイコン用 */
.zoom-wrap {
	display: inline-block;
	position: relative;
}
.zoom-icon {
	display: block;
	position: absolute;
	bottom: 4px;
	right: 0;
	width: 24px;
	height: 24px;
	background: url(../images/icon-zoom.png) 0 0 no-repeat;
}
a:hover .zoom-icon {
	background: url(../images/icon-zoom-on.png) 0 0 no-repeat;
}

/* バックナンバー */
.number-select-box {
	margin: 12px 30px 12px 0;
	display: table;
	float: right;
}
.number-title {
	display: table-cell;
	line-height: 30px;
}
.number-select {
	width: auto;
	display: table-cell;
	vertical-align: top;
}
.number-select form {
	overflow: inherit!important;
}

/****** 単独パーツ用 ******/

/* 左寄せ */
.a-left {
	text-align: left !important;
}
/* 右寄せ */
.a-right {
	text-align: right !important;
}
/* 中央寄せ */
.a-center {
	text-align: center !important;
}
/* 上寄せ */
.a-top {
	vertical-align: top !important;
}
/* 縦中央寄せ */
.a-middle {
	vertical-align: middle !important;
}
/* 下寄せ */
.a-bottom {
	vertical-align: bottom !important;
}

/* 改行無効 */
.w-space {
	white-space: nowrap !important;
}

/* フォントサイズ */
.f-size10 {
	font-size: 10px !important;
}
.f-size11 {
	font-size: 11px !important;
}
.f-size12 {
	font-size: 12px !important;
}
.f-size14 {
	font-size: 14px !important;
}
.f-size18 {
	font-size: 18px !important;
}

/* 注意文 */
.caution {
	color: #ff001a !important;
}

/* 隙間調整 */
.mt0 {
	margin-top: 0 !important;
}
.mt12 {
	margin-top: 12px !important;
}
.mt24 {
	margin-top: 24px !important;
}
.mt32 {
	margin-top: 32px !important;
}
.mt36 {
	margin-top: 36px !important;
}
.mb0 {
	margin-bottom: 0 !important;
}
.mb12 {
	margin-bottom: 12px !important;
}
.mb24 {
	margin-bottom: 24px !important;
}
.pb9 {
	padding-bottom: 9px !important;
}

/* 幅調整 */
.w273 {
	width: 273px !important;
}
.w364 {
	width: 364px !important;
}

/****** グリッドパーツ用 ******/
.box-col2 .box-col2-left {
	width: 49%;
	float: left;
}
.box-col2 .box-col2-right {
	width: 49%;
	float: right;
}

/* 追加分b-13 */
.company-box {
	margin: 9px 0 0;
}
.company-box .company-date {
	font-size: 11px;
	line-height: 19px;
	padding: 0 11px;
}
.company-box .company-title {
	font-size: 24px;
	line-height: 26px;
	padding: 7px 9px 3px;
}
.company-box .company-code {
	padding: 0 11px;
}
.company-box .company-logo {
	float: right;
	padding: 0 12px 0 0;
}

/* 追加分b-67 */
.component-company {
	margin: 12px 0;
}
.component-company .component-company-img {
	float: left;
	padding: 0 27px 0 12px;
}
.component-company .link-window {
	margin-left: 0px;
}
.component-company .component-company-title {
	font-size: 16px;
	line-height: 26px;
	margin: -4px 0 -1px;
}

/* 追加分a-51 */
.column-icon-dowm .column-title{
	font-size: 16px;
	border-bottom: 1px solid #d1d1d1;
	padding-bottom: 12px;
	margin-bottom: 18px;
}
.column-icon-dowm .column-list {
	width: 100%;
	display: table;
}
.column-icon-dowm .column-row {
	width: 25%;
	display: table-cell;
}
.column-icon-dowm .link-dw {
  position: relative;
  text-decoration: none;
  font-size: 12px;
  font-weight: 500;
  color: #000;
  padding: 5px 33px;
  border: #d1d1d1 solid 1px;
  border-radius: 30px;
  box-sizing: border-box;
  display: block;
  line-height: 17px;
  margin: 0px 4px 4px 0;
}
.column-icon-dowm .link-dw::before {
  content: "";
  position: absolute;
  width: 12px;
  height: 12px;
  background: url(../images/icn-arrow_take.svg) center center no-repeat;
  background-size: contain;
  top: 50%;
  left: 15px;
  transform: translate(0, -50%);
  display: block;
}

@media screen and (min-width:769px) {
  .column-icon-dowm .link-dw {
    font-size: 14px;
    padding: 10px 30px 10px 37px;
  margin: 0px 8px 8px 0;
  }
  .column-icon-dowm .link-dw:hover {
    border: #e60012 solid 1px;
    color: #e60012;
  }

  .column-icon-dowm .link-dw:hover::before {
    background: url(../fonts/icn-arrow_take_open_red.svg) center center no-repeat;
    background-size: contain;
  }
  
  .column-icon-dowm .link-dw::before {
    left: 17px;
  }
}

/* 追加分k-4 */
.heading-title-mu .term-furigana {
	display: inline;
	border: none;
	padding: 0 9px;
}
.heading-title-mu .term-furigana::before {
	display: none;
}
.component-column-note {
	background: #efefef;
	padding: 5px 12px 6px;
	margin: 20px 0 12px;
}
.term-relevant {
	display: table;
	padding: 3px 0 4px;
}
.term-relevant dt, dd {
	display: inline-block;
}
.term-relevant dd {
	background: url(../images/icon-line-vertical.png) right 0 no-repeat;
	padding: 0 12px;
	color: #000000;
}
.term-relevant dd.term-relevant-end {
	background: none;
}

/* 追加分k-21 */
.column3-box.column3-box-simple {
	margin-top: 5px;
}
.column3-box-simple .column3-box-sub .link-window {
	margin-left: 13px;
	display: block;
}
.column3-box-simple .column3-box-sub .link-blank {
	margin: 0 12px 0 13px;
}
.info-list-box {
	padding: 2px 0 12px;
}
.info-list-box ul li {
	border-bottom: 1px dotted #d1d1d1;
}
.info-list-box ul li a {
	display: block;
	position: relative;
  padding: 10px 32px 10px 12px;
  text-decoration: none;
	word-break: break-all;
	font-size: 14px;
	color: #333;
  line-height: 24px;
}
.info-list-box ul li a:hover {
	color: #e60012;
	opacity: .7;
}
.info-list-box ul li a::after {
	position: absolute;
    content: "";
    width: 12px;
    height: 12px;
    background: url(../images/icn-arrow_take_open.svg) center center no-repeat;
    background-size: contain;
    top: 50%;
    right: 12px;
    transform: translate(0, -50%) rotate(-90deg);
    display: block;
}
.info-list-box ul li a:hover::after {
	position: absolute;
    content: "";
    width: 12px;
    height: 12px;
    background: url(../fonts/icn-arrow_take_open_red.svg) center center no-repeat;
    background-size: contain;
    top: 50%;
    right: 12px;
    transform: translate(0, -50%) rotate(-90deg);
    display: block;
}

/* 追加分c-68 */
.column6-box-subIn {
	padding: 0 12px 0 0;
	display: block;
}
ul.input-btn-list .submit-btn-sub.font-size11 {
	font-size: 11px;
	padding: 12px 5px;
}

/* 追加分i-114 */
.arrows-map-area {
	text-align:center;
	margin:24px 0;
	position:relative;
	overflow:hidden;
}
.arrows-map-area ul{
	position:relative;
	margin:0 auto;
	width:702px;
	top:-517px;
}
.arrows-map-area ul li{
	position:absolute;
}
.arrows-map-area ul li a span{
	display:none;
	position:absolute;
	white-space:nowrap;
	background: url(../images/icon-linkarw.png) 10px center no-repeat #fff;
	padding: 8px 15px;
	color:#000;
	box-shadow:rgb(180, 180, 180) 0px 1px 5px 1px;
	-webkit-box-shadow:rgb(180, 180, 180) 0px 1px 5px 1px;
	-moz-box-shadow:rgb(180, 180, 180) 0px 1px 5px 1px;
	z-index:100;
	border-radius:16px;
	-webkit-border-radius: 16px;
	-moz-border-radius: 16px;
	border:1px solid #CCCCCC;
}
.arrows-map-area ul li.map-on a span{
	display:block;
}
.arrows-map-area ul li a span em{
	background: url(../images/icon-arrows-map-arw.png) center bottom no-repeat;
	padding:0 0 18px 10px;
}
.arrows-map-area ul li a span:hover{
	background: url(../images/icon-linkarw-on.png) 10px center no-repeat #fff;
	color: #f30101 !important;
}
.arrows-map-area ul li.no-01{
	top:397px;
	left:265px;
}
.arrows-map-area ul li.no-02{
	top:307px;
	left:175px;
}
.arrows-map-area ul li.no-03{
	top:147px;
	left:330px;
}
.arrows-map-area ul li.no-04{
	top:102px;
	left:510px;
}
.arrows-map-area ul li.no-05{
	top:122px;
	left:480px;
}
.arrows-map-area ul li.no-06{
	top:107px;
	left:580px;
}
.arrows-map-area ul li.no-07{
	top:207px;
	left:430px;
}
.arrows-map-area ul li.no-08{
	top:222px;
	left:570px;
}
.arrows-map-area ul li.no-09{
	top:207px;
	left:535px;
}
.arrows-map-area ul li.no-10{
	top:297px;
	left:400px;
}
.arrows-map-area ul li.no-01 a span{
	top:-42px;
	left:-51px;
}
.arrows-map-area ul li.no-02 a span{
	top:-42px;
	left:-64px;
}
.arrows-map-area ul li.no-03 a span{
	top:-42px;
	left:-71px;
}
.arrows-map-area ul li.no-04 a span{
	top:-42px;
	left:-31px;
}
.arrows-map-area ul li.no-05 a span{
	top:-42px;
	left:-64px;
}
.arrows-map-area ul li.no-06 a span{
	top:-42px;
	left:-31px;
}
.arrows-map-area ul li.no-07 a span{
	top:-42px;
	left:-84px;
}
.arrows-map-area ul li.no-08 a span{
	top:-42px;
	left:-91px;
}
.arrows-map-area ul li.no-09 a span{
	top:-42px;
	left:-57px;
}
.arrows-map-area ul li.no-10 a span{
	top:-42px;
	left:-90px;
}
.arrows-box h3{
	font-size:14px;
	padding:0 0 12px 13px;
}
.arrows-box a.link-window{
	margin-top:14px;
}
#popup01 ,
#popup02 ,
#popup03 ,
#popup04 ,
#popup05 ,
#popup06 ,
#popup07 ,
#popup08 ,
#popup09 ,
#popup10 {
	display: none;
	width: 660px;
	height:383px;
	padding: 30px;
	background:#fff;
}
.arrows-popup-area {
	padding:20px 10px 0;
}
.arrows-popup-area h3{
	border-bottom:1px solid #d1d1d1;
	padding:15px 0 12px 30px;
	font-size:14px;
	margin:0 0 25px;
}
.arrows-popup-area h3#ttl-h301{
	background: url(../images/icon-arrows-popup01.png) 0 9px no-repeat;
}
.arrows-popup-area h3#ttl-h302{
	background: url(../images/icon-arrows-popup02.png) 0 9px no-repeat;
}
.arrows-popup-area h3#ttl-h303{
	background: url(../images/icon-arrows-popup03.png) 0 9px no-repeat;
}
.arrows-popup-area h3#ttl-h304{
	background: url(../images/icon-arrows-popup04.png) 0 9px no-repeat;
}
.arrows-popup-area h3#ttl-h305{
	background: url(../images/icon-arrows-popup05.png) 0 9px no-repeat;
}
.arrows-popup-area h3#ttl-h306{
	background: url(../images/icon-arrows-popup06.png) 0 9px no-repeat;
}
.arrows-popup-area h3#ttl-h307{
	background: url(../images/icon-arrows-popup07.png) 0 9px no-repeat;
}
.arrows-popup-area h3#ttl-h308{
	background: url(../images/icon-arrows-popup08.png) 0 9px no-repeat;
}
.arrows-popup-area h3#ttl-h309{
	background: url(../images/icon-arrows-popup09.png) 0 9px no-repeat;
}
.arrows-popup-area h3#ttl-h310{
	background: url(../images/icon-arrows-popup10.png) 0 9px no-repeat;
}
.arrows-popup-area .img-area{
	margin:0 0 25px;
	overflow:hidden;
}
.arrows-popup-area .img-area img.fl{
	float:left;
}
.arrows-popup-area .img-area img.fr{
	float:right;
}
.arrows-popup-area p{
	clear:both;
	margin:0 0 10px;
	font-size: 14px;
	line-height: 21px;
}
#pp_full_res .pp_inline .arrows-popup-area p.link{
	margin:0;
}
.arrows-popup-area p.link a.link-window{
	margin:3px 0;
  font-size: 14px;
}
.arrows-popup-area p.link a.link-window:hover{
	color: #f30101 !important;
}
.pp_pic_holder .ppt{
	display:none !important;
}

/* 追加分b-73 */
.component-imgText-sou {
	letter-spacing: 1px;
	text-align: left;
	margin: 0 0 15px 0;
}
.component-text-middle {
	margin: 15px 12px 7px;
}
.component-margin18 {
	font-size: 0;
	margin: 18px 0 0;
	line-height: 1;
}
.img-caption-text {
	margin-top: 20px;
}
.heading-title-sou {
	padding: 0 0 4px;
	background: #e70111; /* Old browsers */
	background: -moz-linear-gradient(left,  #e70111 70%, #990100 100%); /* FF3.6+ */
	background: -webkit-gradient(linear, left top, right top, color-stop(70%,#e70111), color-stop(100%,#990100)); /* Chrome,Safari4+ */
	background: -webkit-linear-gradient(left,  #e70111 70%,#990100 100%); /* Chrome10+,Safari5.1+ */
	background: -o-linear-gradient(left,  #e70111 70%,#990100 100%); /* Opera 11.10+ */
	background: -ms-linear-gradient(left,  #e70111 70%,#990100 100%); /* IE10+ */
	background: linear-gradient(to right,  #e70111 70%,#990100 100%); /* W3C */
	filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#e70111', endColorstr='#990100',GradientType=1 ); /* IE6-9 */
	margin: 24px 0 24px;
}
.heading-title-souIn {
	background: #ffffff;
	display: table;
	width: 100%;
}
.heading-title-sou h2 {
	font-size: 26px;
	padding: 11px 0 18px;
	line-height: 26px;
}
.title-company-name {
	color: #666666;
}
.title-person-name {
	font-size: 16px;
	padding: 4px 0 8px;
}
.heading-title-sou-main {
	display: table-cell;
	padding: 0 9px 0 26px;
}
.heading-title-sou-logo {
	display: table-cell;
	width: 112px;
	vertical-align: top;
	background:url(../images/logo-sou.png) no-repeat 0 top #e60000;
}
.title-vol-number {
	color: #ffffff;
	line-height: 16px;
	text-align: center;
	padding-top: 90px;
}
.component-profile {
	background: #efefef;
	padding: 12px;
	margin: 12px 0 11px;
	overflow: hidden;
}
.component-company-info-imgboxL,
.component-profile-imgboxL {
	float: left;
	margin: 0 27px 0 0;
}
.component-company-info-main,
.component-profile-main {
	overflow: hidden;
}
.component-profile-intro {
	border-bottom: 1px solid #d1d1d1;
	padding-bottom: 7px;
	margin-bottom: 20px;
}
.component-profile .title-person-name {
	padding: 12px 0 5px;
	font-size: 18px;
}
.component-content-size {
	padding: 0 12px;
}
.profile-history {
	float: left;
}
.profile-history {
	display: table;
}
.profile-history dt {
	display: table-cell;
	width: 5em;
}
.profile-history dd {
	display: table-cell;
	padding-bottom: 6px;
}
.back-page-sub {
	margin: 0;
}
.back-page-sub-btm {
	border-top: 1px solid #d1d1d1;
	padding: 18px 0;
}
.back-page-sub p a {
	display: inline-block;
	color: #000;
	padding: 0 12px 0 16px;
	text-decoration: none;
	background: url(../images/icon-linkarw.png) 0 4px no-repeat;
}
.back-page-sub p a:hover {
	background: url(../images/icon-linkarw-on.png) 0 4px no-repeat;
}
.component-company-info {
	overflow: hidden;
	margin: 12px 12px 24px 12px;
}
.component-company-info .company-detail {
	letter-spacing: -.40em;
}
.component-company-info .company-detail li {
	display: inline-block;
	letter-spacing: 1px;
	color: #666666;
	padding-right: 20px;
}
.component-company-info .link-blank {
	margin: 16px 12px 3px 0;
}
.component-company-info .company-info-name {
	font-size: 16px;
	padding: 0 0 6px;
}
.tab-submenu-anchor-sou {
	overflow: hidden;
	margin: 0 2px 0 2px;
}
.tab-submenu-anchor-sou ul {
	letter-spacing: -.40em;
	margin-left: -1px;
}
.tab-submenu-anchor-sou ul li {
	display: inline-block;
	letter-spacing: 1px;
	padding: 0 0 0 10px;
	margin-bottom: 10px;
	border-left: 1px solid #d1d1d1;
}
.tab-submenu-anchor-sou ul li a {
	display: block;
	color: #000;
	padding: 0 12px 0 20px;
	text-decoration: none;
	background: url(../images/icon-anchor.png) 0 2px no-repeat;
}
.tab-submenu-anchor-sou ul li a:hover {
	background: url(../images/icon-anchor-on.png) 0 2px no-repeat;
}
.tab-submenu-anchor-sou ul li a.act-tab-sub {
	color: #e60012 !important;
	text-decoration: none;
	background: url(../images/icon-anchor-on.png) 0 2px no-repeat;
}
.subhead-title.sou-h3-title{
	margin-top: 22px;
}

/* 追加分b-72 */
.sou-feature-title {
	background:url(../images/logo-sou-top.png) no-repeat 0 top #e60000;
	margin: 12px 0 24px 0;
}
.sou-feature-text {
	background: #ffffff;
	margin: 0 0 0 76px;
	padding: 0 0 0 27px;
	min-height:76px;
}
.sou-vol-number span {
	text-align: center;
	color: #ffffff;
	background: #999999;
	padding: 0 18px;
	line-height: 18px;
}
.sou-company-name {
	font-size: 20px;
	padding: 12px 0 3px 0;
	line-height: 24px;
}
.sou-company-name a {
	text-decoration: none;
}
.sou-company-detail {
	letter-spacing: -.40em;
}
.sou-company-detail li {
	display: inline-block;
	letter-spacing: 1px;
	color: #666666;
	padding-right: 20px;
}
.sou-feature-img {
	position: relative;
}
.sou-feature-img-text {
	position: absolute;
	top: 42px;
	left: 0;
	padding: 0 37px;
	color: #ffffff;
}
.sou-feature-img-text p {
	font-size: 20px;
	line-height: 32px;
}
.tab-menu4.sou-feature-menu {
	margin-top: 0;
}
.sou-feature-img-text .person-name {
	font-size: 16px;
	margin: 13px 0 16px 0;
	line-height: 22px;
}
.sou-feature-img.sub2 {
	margin: 12px 0 36px;
}
.sou-feature-img.sub2 .sou-feature-img-text {
	position: absolute;
	top: 36px;
	left: 0;
	padding: 0 26px;
	color: #ffffff;
}
.sou-feature-img-text .person-ttl {
	font-size: 24px;
	font-weight: bold;
	margin: 13px 0 16px 0;
	line-height: 26px;
	text-shadow: 1px 1px 2px #000;
}
.sou-feature-img-text .person-text {
	width: 310px;
	margin: 13px 0 16px 0;
	text-shadow: 1px 1px 2px #000;
}
#main-area .sou-feature-img .link-window {
	background: url(../images/icon-top-slider-link.png) 0 4px no-repeat;
	margin: 3px 12px 3px 0;
	padding: 0 0 0 16px;
	color: #ffffff;
	text-shadow: 1px 1px 2px #000;
}
#main-area .sou-feature-img .link-window:hover {
	color: #e60012;
}
#main-area .sou-feature-img .link-window:hover {
	background: url(../images/icon-linkarw-on.png) 0 4px no-repeat;
}
.sou-top {
	margin: 4px 0 4px;
}
.sou-top-list {
	display: table;
	width: 100%;
}
.sou-top-listIn {
	display: table-cell;
	width: 50%;
	vertical-align: top;
}
.sou-top-itemL {
	margin: 15px 14px 15px 0;
}
.sou-top-itemR {
	margin: 15px 0 15px 14px;
}
.sou-top-list .sou-company-name {
	font-size: 16px;
	padding: 9px 0 2px 0;
	line-height: 24px;
}
.sou-top-item-img {
	margin-top: 18px;
}
.sou-top-list .catch-text {
	font-size: 14px;
	margin: 9px 0 5px;
}
.sou-top-list .person-name{
	color: #4d4d4d;
}
.sou-top-table th.th-title {
	width: 34%;
}
.sou-top-table th.th-name {
	width: 23%;
}
.sou-top-table th.th-interview {
	width: 14%;
}
.sou-top-table th.th-date {
	width: 14%;
}

/* 追加分a-61 */
.column3-box.column-link01 {
	margin-top: 0;
}
.column-link01-title.blank span {
	background: url(../images/icon-block.png) right center no-repeat #EFEFEF;
	padding-right:20px;
	display:inline;
}
.column-link01-title.blank:hover span {
	background: url(../images/icon-block-on.png) right center no-repeat #EFEFEF;
}
.column-link01-text .link-window{
	margin: 3px 12px 4px 0px;
}
.column-link01-text .column-arw-link{
	padding-top: 3px;
}
.column-link01-text .note-text{
	display: inline-block;
	margin: 8px 12px 12px;
}
.column-link01-title span {
	display: table-cell;
	line-height: 29px;
}

/* 追加分a-1 */
.layout-col2 {
	display: table;
	width: 100%;
}
.layout-col2 .layout-col2-sub-left {
	display: table-cell;
	vertical-align: top;
}
.layout-col2 .layout-col2-sub-right {
	display: table-cell;
	vertical-align: top;
	width:337px;
}
#pickup-contents {
	padding: 0 27px 0 0;
}
#pickup-contents .heading-title {
	display: block;
}
#pickup-contents .heading-title span {
	display: block;
}
#relevant-page .heading-title {
	display: block;
}
#relevant-page .heading-title span {
	display: block;
}
.pickup-contents-list {
	margin:0 -27px 0 0;
}
.pickup-contents-list ul li {
	position: relative;
	float: left;
	padding: 0;
	margin: 0 27px 12px 0;
	width: 187px;
}
.pickup-contents-list ul li.pcl-last {
	padding: 0 0 0 0;
	margin-right:0;
}
.pickup-contents-list ul li a {
	display: block;
	text-decoration: none;
}
.pickup-contents-list ul li a:hover {
	text-decoration: none!important;
	color:#ff0000;
}
.pickup-contents-list ul li img {
	width: 100%;
}
.pickup-contents-list .pickup-contents-img {
	display:block;
	border:1px solid #cccccc;
	margin:0 0 5px 0;
}
.pickup-contents-list .pickup-contents-title {
	display: block;
	font-size: 13px;
}
.pickup-contents-list .pickup-contents-title.blank-link {
	padding-right: 20px;
	background: url(../images/icon-block-w.png) right 5px no-repeat;
	display:inline;
}
.pickup-contents-list .pickup-contents-img-gradation {
	display: block;
	width: 187px;
	height: 132px;
	position: absolute;
	top: 0;
	left: 0;
	z-index: 2;
}
.pickup-contents-list ul li a:hover .pickup-contents-img-gradation {
	background: url(../images/bg-pickup-gradation.png) 0 0;
}

.pickup-contents-list.list-sub ul li {
	width: 171px;
}
.pickup-contents-list.list-sub .pickup-contents-img-gradation {
	top: 0 !important;
	left: 0;
	width: 171px;
	height: 171px;
}
.pickup-contents-list.list-sub .pickup-contents-img-gradation-sub {
	display: none;
}
.pickup-contents-list.list-sub .pickup-contents-top {
	display: block;
	position: static;
	bottom: 0;
	left: 0;
	padding: 0 12px 9px;
	z-index: 2;
}
.pickup-contents-list.list-sub .pickup-contents-top {
	padding: 0;
}
.pickup-contents-list.list-sub .pickup-contents-category {
	display: block;
	padding: 9px 0 4px;
	text-shadow: none;
}
.pickup-contents-list.list-sub .pickup-contents-title {
	display: inline-block;
	font-size: 14px;
	color: #000;
	text-shadow: none;
}
.pickup-contents-list.list-sub .pickup-contents-title.blank-link {
	padding-right: 20px;
	background: url(../images/icon-block.png) right 5px no-repeat;
	display:inline;
}

#news-contents {
	margin: 0 0 37px;
	width: 337px;
}
#news-contents .heading-title {
	width: 333px;
}
#news-contents-main {
	padding: 0 27px 0 0;
	margin: 0 0 48px;
}
.layout-col2 .news-list-box {
	margin: 6px 0 0;
}
.layout-col2 .news-list-box.box-close {
	border-top: 1px dotted #d1d1d1;
}
.layout-col2 .news-list-box ul li {
	border-bottom: 1px dotted #d1d1d1;
}
.layout-col2 .news-list-box ul li a {
	display: block;
	padding: 10px 27px 6px 12px;
	text-decoration: none;
	background: url(../images/icon-news-arw.png) right center no-repeat;
}
.layout-col2 .news-list-box ul li a:hover {
	background: url(../images/icon-news-arw-on.png) right center no-repeat #efefef;
	text-decoration: underline;
}
.layout-col2 .news-list-box ul li .news-list-date-box {
	display: block;
	padding: 0 0 5px;
}
.layout-col2 .news-list-box ul li .news-list-date {
	margin-right:12px;
	font-size: 12px;
}
.layout-col2 .news-list-box ul li .news-list-category {
	display: inline-block;
	background:#ff6700;
	margin-left:4px;
	padding:4px 15px 2px;
	font-size:11px;
	text-align:center;
	color:#FFFFFF;
	line-height:13px;
	border-radius: 2px;
	-webkit-border-radius: 2px;
	-moz-border-radius: 2px;
}
.nlc001 {
	background-color: #7c60d0 !important;
}
.nlc002 {
	background-color: #58b4c3 !important;
}
.nlc003 {
	background-color: #93b83c !important;
}
.nlc004 {
	background-color: #e49857 !important;
}
.nlc005 {
	background-color: #f43949 !important;
}
.news-list-category-nlc001 {
	background-color: #7c60d0 !important;
	display: inline-block;
	margin-right:4px;
	padding: 2px 8px 4px;
	text-align:center;
	color:#FFFFFF;
	line-height:13px;
	border-radius: 12px;
	-webkit-border-radius: 12px;
	-moz-border-radius: 12px;
}
a.news-list-category-nlc001:hover {
	background-color: #7c60d0 !important;
}
.news-list-category-nlc002 {
	background-color: #58b4c3 !important;
	display: inline-block;
	margin-right:4px;
	padding: 2px 8px 4px;
	text-align:center;
	color:#FFFFFF;
	line-height:13px;
	border-radius: 12px;
	-webkit-border-radius: 12px;
	-moz-border-radius: 12px;
}
a.news-list-category-nlc002:hover {
	background-color: #58b4c3 !important;
}
.news-list-category-nlc003 {
	background-color: #93b83c !important;
	display: inline-block;
	margin-right:4px;
	padding: 2px 8px 4px;
	text-align:center;
	color:#FFFFFF;
	line-height:13px;
	border-radius: 12px;
	-webkit-border-radius: 12px;
	-moz-border-radius: 12px;
}
a.news-list-category-nlc003:hover {
	background-color: #93b83c !important;
}
.news-list-category-nlc004 {
	background-color: #e49857 !important;
	display: inline-block;
	margin-right:4px;
	padding: 2px 8px 4px;
	text-align:center;
	color:#FFFFFF;
	line-height:13px;
	border-radius: 12px;
	-webkit-border-radius: 12px;
	-moz-border-radius: 12px;
}
a.news-list-category-nlc004:hover {
	background-color: #e49857 !important;
}
.news-list-category-nlc005 {
	background-color: #f43949 !important;
	display: inline-block;
	margin-right:4px;
	padding: 2px 8px 4px;
	text-align:center;
	color:#FFFFFF;
	line-height:13px;
	border-radius: 12px;
	-webkit-border-radius: 12px;
	-moz-border-radius: 12px;
}
a.news-list-category-nlc005:hover {
	background-color: #f43949 !important;
}

.layout-col2 .news-list-box ul li .news-list-title {
	word-break: break-all;
}
.layout-col2 .news-list-box ul li .news-list-title.link-pdf {
	display: inline-block;
	text-decoration: none;
	background: none;
	position: relative;
	margin: 0;
	padding: 0 27px 0 0;
	color: #000000;
}
.layout-col2 .news-list-box ul li .news-list-title.link-pdf:after {
	content: "　";
	background: url(../images/icon-pdf.png) 0 center no-repeat;
	width: 16px;
	height: 16px;
	position: absolute;
	top: 1px;
	right: 0px;
}
.layout-col2 .news-list-box ul li .news-list-title.new-icon {
	position: relative;
	display: inline-block;
	padding: 0 27px 0 50px;
}

.layout-col2 .news-list-box ul li .news-list-title.new-icon:before {
	content: "　";
	background: url(../images/icon-new.png) 0 0 no-repeat;
	width: 40px;
	height: 16px;
	position: absolute;
	top: 2px;
	left: 0px;
}
.layout-col2 .news-list-box ul li a:hover .news-list-title {
	color: #e60012;
}
.layout-col2 .heading-title-sub {
	display: table;
	width: 100%;
	font-size:16px;
}
.layout-col2 .heading-title-sub span {
	display: table-cell;
	background: #ffffff;
	padding: 13px 11px 13px;
	line-height: 19px;
	font-weight:bold;
}

.layout-col2 .heading-title-noboder {
	border-bottom: none;
}

.layout-col2 .heading-title-sub span.link-list {
	padding: 0;
	width: 54px;
	font-size: 12px;
	vertical-align: middle;
	font-weight:normal;
}
.layout-col2 .heading-title-sub span.link-list a {
	padding: 0 0 0 18px;
	text-decoration: none;
/*	background: url(../images/icon-link-list.png) 0 center no-repeat #ffffff;*/
	background: url(../images/icon-linkarw.png) 0 center no-repeat;
}
.layout-col2 .heading-title-sub span.link-list a:hover {
/*	background: url(../images/icon-link-list-on.png) 0 center no-repeat #ffffff;*/
	background: url(../images/icon-linkarw-on.png) 0 center no-repeat;
}
.layout-col2 .heading-title-sub span.link-rss {
	padding: 0;
	width: 18px;
	font-size: 12px;
	vertical-align: middle;
	font-weight:normal;
}
.layout-col2 .heading-title-sub span.link-rss a {
	padding: 0 0 0 12px;
	text-decoration: none;
	background: url(../images/icon-link-rss.png) 0 center no-repeat #ffffff;
	width:18px;
	height:18px;
	display:block;
	text-indent:-4000px;
}
.layout-col2 .heading-title-sub span.link-rss a:hover {
	background: url(../images/icon-link-rss-on.png) 0 center no-repeat #ffffff;
}
.layout-col2 .heading-title-sub span.link-text {
	padding: 0;
	width: 125px;
	font-size: 12px;
	vertical-align: middle;
}
.layout-col2 .heading-title-sub span.link-text a {
	padding: 0 0 0 16px;
	text-decoration: none;
	background: url(../images/icon-link-text.png) 0 center no-repeat #ffffff;
}
.layout-col2 .heading-title-sub span.link-text a:hover {
	background: url(../images/icon-link-text-on.png) 0 center no-repeat #ffffff;
}
#relevant-page {
	padding: 0 27px 0 0;
}
.relate-page-itemWrap .relate-page-item {
	float: left;
	width: 301px;
	margin: 0 0 0 0;
	padding: 24px 0 0;
}
.relate-page-itemWrap .relate-page-item:first-child {
	margin: 0 27px 0 0;
}
.relate-page-itemWrap .rpi-last {
	margin: 0;
}
.relate-page-itemWrap .relate-page-item .relate-page-contents {
	padding: 0 0 0 0;
}
.relate-page-itemWrap .relate-page-item .relate-page-img {
	float: left;
	padding: 0 24px 0 0;
}
.relate-page-itemWrap .relate-page-item .relate-page-img img {
	max-width:155px;
}
.relate-page-itemWrap .relate-page-item .relate-page-title {
	font-weight: bold;
	margin: 0 0 5px;
}
.relate-page-itemWrap .relate-page-item .relate-page-title a {
	text-decoration: none;
}
.news-main-contents .news-count {
	background: #efefef;
}
.news-main-contents .news-countIn {
	display: table;
	width: 100%;
	table-layout: fixed;
}
.news-main-contents .news-count-sub {
	display: table-cell;
	vertical-align: top;
}
.news-main-contents .news-countIn .w-count-title {
	padding: 0 10px 0 0;
}
.news-main-contents .news-countIn .w-count {
	width: 14px;
	padding: 0 0 0 32px;
}
.news-main-contents .news-countIn .number-select-box {
	margin: 5px 10px 1px 0;
}
.news-main-contents .news-countIn .news-count-text {
	padding: 9px 0 9px 11px;
}
.news-main-contents .news-count .news-count-select {
	padding: 0 0 9px 11px;
}
.news-main-contents .news-count .news-count-select span {
	color: #ff6700;
}
.news-main-contents .news-paging {
	padding: 24px 0;
	border-bottom: 1px solid #d1d1d1;
	text-align: center;
}
.news-paging-solo {
	width: 701px;
	margin: -13px 0 0;
	padding: 24px 0;
	border-top: 1px solid #d1d1d1;
	text-align: center;
}
.news-main-contents .news-paging ul,
.news-paging-solo ul {
	letter-spacing: -.40em;
}
.news-main-contents .news-paging ul li,
.news-paging-solo ul li {
	display: inline-block;
	letter-spacing: 1px;
}
.news-main-contents .news-paging ul li a,
.news-paging-solo ul li a {
	text-decoration: none;
	border-left: 1px solid #d1d1d1;
	line-height: 18px;
	padding: 0 9px;
}
.news-main-contents .news-paging ul li span,
.news-paging-solo ul li span {
	padding: 0 9px;
	border-left: 1px solid #d1d1d1;
	color: #e60012;
	line-height: 18px;
}
.news-main-contents .news-paging ul li.news-prev + li a,
.news-main-contents .news-paging ul li.news-prev + li span,
.news-paging-solo ul li.news-prev + li a,
.news-paging-solo ul li.news-prev + li span {
	border: none;
}
.news-main-contents .news-paging ul li.news-prev a,
.news-paging-solo ul li.news-prev a {
	border: none;
	padding: 0;
	margin: 0 9px 0 0;
	display: block;
	width: 24px;
	height: 24px;
	line-height: 24px;
	text-indent: -9999px;
	background: url(../images/icon-paging-prev.png) 0 0 no-repeat;
}
.news-main-contents .news-paging ul li.news-prev a:hover,
.news-paging-solo ul li.news-prev a:hover {
	background: url(../images/icon-paging-prev-on.png) 0 0 no-repeat;
}
.news-main-contents .news-paging ul li.news-next a,
.news-paging-solo ul li.news-next a {
	border: none;
	padding: 0;
	margin: 0 0 0 9px;
	display: block;
	width: 24px;
	height: 24px;
	line-height: 24px;
	text-indent: -9999px;
	background: url(../images/icon-paging-next.png) 0 0 no-repeat;
}
.news-main-contents .news-paging ul li.news-next a:hover,
.news-paging-solo ul li.news-next a:hover {
	background: url(../images/icon-paging-next-on.png) 0 0 no-repeat;
}
.news-main-contents .news-paging ul li.news-prev-none,
.news-main-contents .news-paging ul li.news-next-none {
	min-width: 33px;
}

.news-main-contents .news-list-box {
	margin: 0px 0 0;
}
.news-main-contents .news-list-box.solo {
	margin: 8px 0 0;
}
.news-main-contents .news-list-box.box-close {
	border-top: 1px dotted #d1d1d1;
}
.news-main-contents .news-list-box ul li {
	border-bottom: 1px dotted #d1d1d1;
}
.news-main-contents .news-list-box ul li.first {
	border-top: 1px solid #d1d1d1;
}
.news-main-contents .news-list-box ul li.last {
	border-bottom: 1px solid #d1d1d1;
}
.news-main-contents .news-list-box ul li a {
	display: block;
	padding: 15px 26px 15px 6px;
	text-decoration: none;
	background: url(../images/icon-news-arw.png) right center no-repeat;
}
.news-main-contents .news-list-box ul li a:hover {
	background: url(../images/icon-news-arw-on.png) right center no-repeat #efefef;
	text-decoration: underline;
}
.news-main-contents .news-list-box ul li .news-list-date-box {
	display: block;
	font-size: 12px;
	padding: 0 0 5px;
	margin-right:12px;
}
.news-main-contents .news-list-box ul li .news-list-date {
	margin-right:12px;
	font-size: 12px;
}
@media screen and (min-width:769px) {
  .news-main-contents .news-list-box ul li .news-list-date {
    font-size: 14px;
  }
  .news-main-contents .news-list-box ul li a {
    padding: 24px 26px 24px 12px
  }
}
.news-list-category {
	display: inline-block;
	background-color: #ff6700;
	margin-right:4px;
	padding:2px 8px 4px;
	text-align:center;
	color:#FFFFFF;
	line-height:13px;
	border-radius: 12px;
	font-size: 10px;
}
@media screen and (min-width:769px) {
  .news-list-category {
    font-size: 12px;
  }
}

.news-list-category.tosyo {
	background-color: #e60012 !important;
}
.news-list-category.jpx {
	background-color: #ff6800 !important;
}
.news-list-category.ose {
	background-color: #0039c8 !important;
}
.news-list-category.jpxr {
	background-color: #a70309 !important;
}
.news-list-category.jscc{
	background-color: #40658a !important;
}
.news-list-category.tocom {
	background-color: #023b90 !important;
}
.news-list-category.jpxi {
	background-color: #00a45d !important;
}
.news-list-category.ir {
	background-color: #E49857 !important;
}
.news-main-contents .news-list-box ul li .news-list-title {
	word-break: break-all;
}

.news-sub-contents .heading-title-sub {
	margin-bottom: 24px;
}
.news-sub-contents {
	width: 337px;
	padding: 0 0 0 27px;
}
.news-sub-contents .search-select-box {
	background: #efefef;
	padding: 0 0 6px;
	margin: 0 0 48px;
}
.news-sub-contents .search-select-box .submit-btn {
	width: 325px;
	margin: 24px 0 0 6px;
}
.news-sub-contents .search-box {
	padding: 19px 0 0 10px;
}
.news-sub-contents .search-box .search-title {
	padding: 0 0 4px 3px;
}
.news-sub-contents .search-box .search-select .NFSelect {
	width: 315px !important;
}
.news-sub-contents .search-box .search-select .NFSelectOptions {
	width: 311px !important;
}
.news-sub-contents .date-box {
	padding: 21px 0 0 10px;
}
.news-sub-contents .date-box .date-title {
	padding: 0 0 4px 3px;
}
.news-sub-contents .date-box .date-select {
	display: table;
	width: 100%;
}
.news-sub-contents .date-box .date-select-sub {
	display: table-cell;
	vertical-align: top;
}
.news-sub-contents .date-box .w-year-select {
	width: 87px;
}
.news-sub-contents .date-box .w-year-select .NFSelect {
	width: 83px !important;
}
.news-sub-contents .date-box .w-year-select .NFSelectOptions {
	width: 80px !important;
}
.news-sub-contents .date-box .w-year {
	padding: 5px 0 0;
	width: 22px;
}
.news-sub-contents .date-box .w-month-select {
	width: 74px;
}
.news-sub-contents .date-box .w-month-select .NFSelect {
	width: 69px !important;
}
.news-sub-contents .date-box .w-month-select .NFSelectOptions {
	width: 65px !important;
}
.news-sub-contents .date-box .w-month {
	padding: 5px 0 0;
	width: 22px;
}
.news-sub-contents .date-box .w-day-select {
	width: 74px;
}
.news-sub-contents .date-box .w-day-select .NFSelect {
	width: 69px !important;
}
.news-sub-contents .date-box .w-day-select .NFSelectOptions {
	width: 65px !important;
}
.news-sub-contents .date-box .w-day {
	padding: 5px 0 0;
}
.news-sub-contents .date-box .NFSelect {
	z-index: 1 !important;
}
.news-sub-contents #side-searchIn {
	height: 36px;
	background: #efefef;
	padding: 6px 46px 0 6px;
	position: relative;
}
.news-sub-contents #side-searchIn form {
	margin-right: 0;
	white-space: nowrap;
}
.news-sub-contents #side-searchIn fieldset {
	border: medium none;
	display: inline-block;
	margin: 0;
	padding: 0;
	vertical-align: top;
	width: 100%;
}
.news-sub-contents #side-searchIn .side-search-wrap01 {
	display: inline-block;
	width: 100%;
}
.news-sub-contents #side-searchIn .side-search-wrap02 {
	position: relative;
	background: #fff;
	border-color: #d1d1d1;
	border-style: solid;
	border-width: 1px 0 0px 0px;
	height: 35px;
	vertical-align: top;
	border-radius: 2px 0 0 2px;
	-webkit-border-radius: 2px 0 0 2px;
	-moz-border-radius: 2px 0 0 2px;
}
.news-sub-contents #side-searchIn .side-search-wrap03 {
	position: absolute;
	padding: 0 8px;
	height: 100%;
	left: 0;
	right: 0;
}
.news-sub-contents #side-searchIn .side-search-input {
	border: medium none;
	height: 27px;
	line-height: 27px;
	margin-top: 4px;
	padding: 0;
	vertical-align: top;
	width: 100%;
	font-size: 11px;
	font-family: "Meiryo","メイリオ","Hiragino Kaku Gothic ProN W3","Hiragino Kaku Gothic Pro","ヒラギノ角ゴ Pro W3","MS PGothic","ＭＳ Ｐゴシック",Arial,sans-serif;
}
.news-sub-contents #side-searchIn .side-search-input-btn {
	position: absolute;
	top: -1px;
	right: -40px;
}

/* 追加分i-3 */
.seminar-box {
	margin: 48px 0 0;
}
.seminar-box:first-child {
	margin: 24px 0 0;
}
.ondemand-box {
	margin: 48px 0 0;
}
.ondemand-box:first-child {
	margin: 14px 0 0;
}
.seminar-title {
	padding: 4px 0 0;
	border-bottom: 1px solid #d1d1d1;
	font-size: 18px;
	margin: 0 0 0;
	background: #999999; /* Old browsers */
	background: -moz-linear-gradient(left,  #999999 70%, #000000 100%); /* FF3.6+ */
	background: -webkit-gradient(linear, left top, right top, color-stop(70%,#999999), color-stop(100%,#000000)); /* Chrome,Safari4+ */
	background: -webkit-linear-gradient(left,  #999999 70%,#000000 100%); /* Chrome10+,Safari5.1+ */
	background: -o-linear-gradient(left,  #999999 70%,#000000 100%); /* Opera 11.10+ */
	background: -ms-linear-gradient(left,  #999999 70%,#000000 100%); /* IE10+ */
	background: linear-gradient(to right,  #999999 70%,#000000 100%); /* W3C */
	filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#999999', endColorstr='#000000',GradientType=1 ); /* IE6-9 */
}
.seminar-title.st001 {
	background: #e70111; /* Old browsers */
	background: -moz-linear-gradient(left,  #e70111 70%, #990100 100%); /* FF3.6+ */
	background: -webkit-gradient(linear, left top, right top, color-stop(70%,#e70111), color-stop(100%,#990100)); /* Chrome,Safari4+ */
	background: -webkit-linear-gradient(left,  #e70111 70%,#990100 100%); /* Chrome10+,Safari5.1+ */
	background: -o-linear-gradient(left,  #e70111 70%,#990100 100%); /* Opera 11.10+ */
	background: -ms-linear-gradient(left,  #e70111 70%,#990100 100%); /* IE10+ */
	background: linear-gradient(to right,  #e70111 70%,#990100 100%); /* W3C */
	filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#e70111', endColorstr='#990100',GradientType=1 ); /* IE6-9 */
}
.seminar-title.st002 {
	background: #fb6b00; /* Old browsers */
	background: -moz-linear-gradient(left,  #fb6b00 70%, #c14e00 100%); /* FF3.6+ */
	background: -webkit-gradient(linear, left top, right top, color-stop(70%,#fb6b00), color-stop(100%,#c14e00)); /* Chrome,Safari4+ */
	background: -webkit-linear-gradient(left,  #fb6b00 70%,#c14e00 100%); /* Chrome10+,Safari5.1+ */
	background: -o-linear-gradient(left,  #fb6b00 70%,#c14e00 100%); /* Opera 11.10+ */
	background: -ms-linear-gradient(left,  #fb6b00 70%,#c14e00 100%); /* IE10+ */
	background: linear-gradient(to right,  #fb6b00 70%,#c14e00 100%); /* W3C */
	filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#fb6b00', endColorstr='#c14e00',GradientType=1 ); /* IE6-9 */
}
.seminar-title.st003 {
	background: #0054cb; /* Old browsers */
	background: -moz-linear-gradient(left,  #0054cb 70%, #004197 100%); /* FF3.6+ */
	background: -webkit-gradient(linear, left top, right top, color-stop(70%,#0054cb), color-stop(100%,#004197)); /* Chrome,Safari4+ */
	background: -webkit-linear-gradient(left,  #0054cb 70%,#004197 100%); /* Chrome10+,Safari5.1+ */
	background: -o-linear-gradient(left,  #0054cb 70%,#004197 100%); /* Opera 11.10+ */
	background: -ms-linear-gradient(left,  #0054cb 70%,#004197 100%); /* IE10+ */
	background: linear-gradient(to right,  #0054cb 70%,#004197 100%); /* W3C */
	filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#0054cb', endColorstr='#004197',GradientType=1 ); /* IE6-9 */
}
.seminar-title span {
	display: block;
	background: #ffffff;
	padding: 12px 11px 9px;
	line-height: 28px;
}
.seminar-title .new-icon {
	display: inline-block !important;
    padding: 0 0 0 50px !important;
}
.seminar-title .new-icon:before {
	top: 6px;
}
.seminar-sub-title {
	width: 155px;
	text-align: center;
	line-height: 28px;
	color: #fff;
	background: #999999;
	margin: 0 0 -4px;
}
.seminar-sub-title.st001 {
	background: #e70111;
}
.seminar-sub-title.st002 {
	background: #fb6b00;
}
.seminar-sub-title.st003 {
	background: #0054cb;
}

.seminar-boxIn {
	display: table;
	margin: 24px 0 0px;
	padding: 0 0 0 12px;
}
.seminar-box-sub-left {
	width: 100%;
	display: table-cell;
	vertical-align: top;
}
.seminar-box-sub-right {
	display: table-cell;
	padding: 0 0 0 27px;
}
.seminar-list-icon {
	width: 272px;
	padding: 0 0 11px;
}
.seminar-list-icon li {
	font-size: 11px;
	width: 90px;
	text-align: center;
	float: left;
	background: #efefef;
	line-height: 24px;
	color: #d1d1d1;
	border-left: 1px solid #fff;
}
.seminar-list-icon li.beginner.sli-act {
	color: #fff;
	background: #3ac2b8;
}
.seminar-list-icon li.experienced.sli-act {
	color: #fff;
	background: #fb9c3e;
}
.seminar-list-icon li.student.sli-act {
	color: #fff;
	background: #276fe7;
}
.seminar-list-icon li:first-child {
	border-left: 0px solid #fff;
}
.seminar-category {
	padding: 5px 0 0;
	font-size: 11px;
	color: #ff6700;
}
.seminar-btn {
	margin: 13px 0 0;
}

/* 追加分k-45 */
.cal-select {
	margin: -27px 0 0;
	padding: 0 12px 0 0;
}
.cal-select .number-select-box {
	margin: 0px 30px 0px 0;
}
.cal-paging {
	margin: 19px 0 0;
	text-align: center;
}
.cal-paging ul {
	letter-spacing: -.40em;
}
.cal-paging ul li {
	letter-spacing: 1px;
	vertical-align: middle;
	display: inline-block;
}
.cal-paging ul li.cp-date {
	font-size: 26px;
	line-height: 28px;
	padding: 0 35px;
}
.cal-paging ul li.cp-prev a {
	width: 34px;
	text-align: right;
	padding: 0 0 0 24px;
	display: block;
	line-height: 24px;
	text-decoration: none;
	background: url(../images/icon-paging-prev.png) 0 0 no-repeat;
}
.cal-paging ul li.cp-prev a:hover {
	background: url(../images/icon-paging-prev-on.png) 0 0 no-repeat;
}
.cal-paging ul li.cp-next a {
	width: 34px;
	text-align: left;
	padding: 0 24px 0 0;
	display: block;
	line-height: 24px;
	text-decoration: none;
	background: url(../images/icon-paging-next.png) top right no-repeat;
}
.cal-paging ul li.cp-next a:hover {
	background: url(../images/icon-paging-next-on.png) top right no-repeat;
}
.cal-paging ul li.cp-prev-none,
.cal-paging ul li.cp-next-none {
	min-width: 58px;
}

.cal-table {
	margin: 17px 0 0;
}
.cal-table table,
.cal-table-sub table {
	width: 100%;
	border: 1px solid #d1d1d1;
}
.cal-table table a,
.cal-table-sub table a {
	color: #000;
}
.cal-table table th,
.cal-table table td,
.cal-table-sub table th,
.cal-table-sub table td {
	padding: 8px 12px;
}
.cal-table-sub {
	margin: 0 0 0;
}
.cal-icon01 {
	display: block;
	margin: 6px 0 0;
	font-size: 11px;
	background: #e70111;
	color: #fff !important;
	text-align: center;
	border-radius: 3px;
	-webkit-border-radius: 3px;
	-moz-border-radius: 3px;
	position: relative;
}
.cal-icon02 {
	display: block;
	margin: 6px 0 0;
	font-size: 11px;
	background: #00A45D;
	color: #fff !important;
	text-align: center;
	border-radius: 3px;
	-webkit-border-radius: 3px;
	-moz-border-radius: 3px;
	position: relative;
}
.cal-icon03 {
	display: block;
	margin: 6px 0 0;
	font-size: 11px;
	background: #999999;
	color: #fff !important;
	text-align: center;
	border-radius: 3px;
	-webkit-border-radius: 3px;
	-moz-border-radius: 3px;
	position: relative;
}
.cal-icon04 {
	display: block;
	margin: 6px 0 0;
	font-size: 11px;
	background: #004fc2;
	color: #fff !important;
	text-align: center;
	border-radius: 3px;
	-webkit-border-radius: 3px;
	-moz-border-radius: 3px;
	position: relative;
}
.fc-title,
.fc-day-number {
	font-size: 10px;
	padding-bottom: 2px;
}
.fc-day-grid-event>.fc-content{
	padding-bottom: 2px;
}
@media screen and (min-width:769px) {
	.fc-title,
	.fc-day-number,
	.cal-icon01,
	.cal-icon02,
	.cal-icon03,
	.cal-icon04 {
	font-size: 14px;
}
}
@media screen and (max-width:1024px) {
.fc-day-grid-event>.fc-content {
	white-space: inherit;
	overflow: hidden;
}
}
/* 追加分k-1 */
.faq-wrapper {
	display: table;
}
.info-list-box ul li span.faq-wrapper span {
	vertical-align: middle;
	display:table-cell;
}
.info-list-box ul li span.faq-wrapper span.faq-cat {
	background-color: #ff6700;
	font-size: 12px;
	width: 135px;
	margin-right:12px;
	color:#FFFFFF;
	text-align:center;
	display:inline-block;
	border-radius: 2px;
	-webkit-border-radius: 2px;
	-moz-border-radius: 2px;
	position: relative;
}
.info-list-box ul li a:hover span.faq-wrapper span.faq-cat {
	background-color: #ff6700!important;
	color: #FFFFFF!important;
}
.more-btn p {
	padding: 24px 0 0;
	text-align: center;
}
.more-btn p a {
  position: relative;
  text-decoration: none;
  font-size: 12px;
  font-weight: 500;
  color: #333;
  padding: 5px 33px;
  border: #d1d1d1 solid 1px;
  border-radius: 30px;
  box-sizing: border-box;
  display: block;
  line-height: 17px;
  width: 155px;
  margin: 0 auto;
}
.more-btn p a::before {
  content: "";
  position: absolute;
  width: 12px;
  height: 12px;
  background: url(../images/icn-arrow_take.svg) center center no-repeat;
  background-size: contain;
  top: 50%;
  left: 15px;
  transform: translate(0, -50%);
  display: block;
}
@media screen and (min-width:769px) {
  .more-btn p a {
    font-size: 14px;
    padding: 10px 30px 10px 37px;
  }

  .more-btn p a:hover {
    border: #e60012 solid 1px;
    color: #e60012;
  }

  .more-btn p a:hover::before {
    background: url(../fonts/icn-arrow_take_open_red.svg) center center no-repeat;
    background-size: contain;
  }
  
  .more-btn p a::before {
    left: 17px;
  }
}
.hidden-area {
	display: none;
}

@media screen and (min-width:769px) {
  .info-list-box ul li a {
    font-size: 16px;
  }
}

/* 追加分k-2 */
.faq-list-box dl dt{
	display: block;
	padding: 0;
	border-bottom: 1px dotted #d1d1d1;
}
.faq-list-box dl dd {
	display: block;
	background-color: #efefef;
	padding: 14px 27px 14px 12px;
}
.faq-list-box dl dd  .link-window {
	margin-left: 0;
}
.faq-list-box dl dd  .link-blank {
	margin-left: 0;
}
.faq-list-box dl dt a {
	display: block;
	padding: 14px 27px 14px 12px;
	text-decoration: none;
	background: url(../images/icon-list-down.png) right center no-repeat;
	word-break: break-all;
}
.faq-list-box dl dt.open {
	background-color: #666;
}
#main-area .faq-list-box dl dt.open a {
	background: url(../images/icon-list-up.png) right center no-repeat;
	color: #fff;
}
.faq-list-box .txt-wrapper {
	display: table;
}
.faq-list-box .txt-wrapper span {
	display: table-cell;
	font-size: 14px;
	line-height: 21px;
}
@media screen and (min-width:769px) {
.faq-list-box .txt-wrapper span {
	font-size: 16px;
	line-height: 24px;
}
}
.faq-list-box .txt-wrapper span.number {
	width: 4em;
}
@media screen and (min-width:1024px) {
.faq-list-box dl a:hover {
	background-color: #efefef;
}
}

/* 追加分j-71 */
#stock-market-sub .chart-box h3 {
	border-bottom: 1px solid #fff;
}
#stock-market-sub .chart-box h3 {
	display: table;
	line-height: 36px;
	width: 100%;
	text-decoration: none;
	color: #fff !important;
	background: #0054cb;
}
#stock-market-sub .chart-box h3 a span {
	display: table-cell;
}
#stock-market-sub .chart-box .chart-title {
	padding: 0 0 0 12px;
}
#stock-market-sub .chart-box .chart-data {
	width: 85px;
	text-align: right;
}
#stock-market-sub .chart-box .chart-advantage {
	/* visibility:hidden; */
	width: 66px;
	text-align: right;
	font-weight: bold;
	padding: 0 39px 0 0;
}
#stock-market-sub .chart-box-sub table {
	width: 100%;
}
#stock-market-sub .chart-box-sub table th {
	text-align: center;
	background: #efefef;
	border: 1px solid #efefef;
	padding: 1px 0;
}
#stock-market-sub .chart-box-sub .ct-date {
	border-bottom: 1px solid #fff;
}
#stock-market-sub .chart-box-sub table td {
	padding: 2px 0;
	text-align: center;
	border: 1px solid  #efefef;
}
#stock-market-sub .chart-box-sub .chart-box-sub-content {
	position: relative;
	padding: 10px 0 19px;
}
#stock-market-sub .chart-box-sub .chart-box-sub-text {
	font-size: 12px;
	position: absolute;
	padding: 0 0 0 12px;
}
#stock-market-sub .chart-box-sub .chart-box-sub-link {
	font-size: 13px;
	text-align: right;
	padding: 0 12px 0 0;
}
#stock-market-sub .chart-box-sub .chart-box-sub-link a {
	display: inline-block;
	text-decoration: none;
	padding: 0 0 0 20px;
	background: url(../images/icon-linkarw.png) left 4px no-repeat;
}
#stock-market-sub .chart-box-sub .chart-box-sub-link a:hover {
	background: url(../images/icon-linkarw-on.png) left 4px no-repeat;
}
.bnr-img-btn {
	margin: 0 0 35px;
}
.bnr-img-btn a {
	display: block;
	width: 325px;
	padding: 0 0 0 12px;
	line-height: 96px;
	font-size: 18px;
	text-decoration: none;
}
.bnr-img-btn a:hover {
	color: #000 !important;
}
.bnr-img-btn.bnr001 a {
	background: url(../images/j71-bnr001.jpg) 0 0 no-repeat;
}
.bnr-img-btn.bnr001 a:hover {
	background: url(../images/j71-bnr001-on.jpg) 0 0 no-repeat;
}
#side-icon-link-sub {
	margin: 24px 0 24px;
}
#side-icon-link-sub a {
	text-decoration: none;
}
#side-icon-link-sub span {
	font-size: 14px;
	display: block;
}
#side-icon-link-sub .side-icon-link-solo {
	position: relative;
	height: 36px;
	margin: 0 0 6px;
}
#side-icon-link-sub .side-icon-link-solo img {
	position: absolute;
	top: 0;
	left: 0;
}
#side-icon-link-sub .side-icon-link-solo a {
	display: block;
	background: #fff;
	padding: 7px 0 7px 62px;
	border: 1px solid #f3f3f3;
	border-radius: 2px;
	-webkit-border-radius: 2px;
	-moz-border-radius: 2px;
}
.notice-ttl {
	background: url(../images/icon-notice.png) 10px 15px no-repeat #fff !important;
	padding-left: 50px !important;
}
.notice-01 {
	background: url(../images/icon-notice-01.png) 0 0 no-repeat !important;
	padding-left: 30px !important;
}
.notice-02 {
	background: url(../images/icon-notice-02.png) 0 0 no-repeat !important;
	padding-left: 30px !important;
}
.notice-03 {
	background: url(../images/icon-notice-03.png) 0 0 no-repeat !important;
	padding-left: 30px !important;
}
.notice-04 {
	background: url(../images/icon-notice-04.png) 0 0 no-repeat !important;
	padding-left: 30px !important;
}
.notice-05 {
	background: url(../images/icon-notice-05.png) 0 0 no-repeat !important;
	padding-left: 30px !important;
}
.topic-news {
	margin: 0 0 30px;
}
.topic-news dl {
	width: 313px;
	margin: 24px auto 0;
}
.up-tab-menu {
	margin: 0 0 36px;
}
.up-tab-menu .tab-menu ul li a.act-tab em {
}
/* 追加分i-43 */
.description-img {
	margin: 12px auto;
	position: relative;
}
.description-img ol li a {
	display: inline-block;
	line-height: 36px;
	text-decoration: none;
	background: #fff;
	padding: 0 12px;
	/* border-radius */
	border-radius: 18px;
	-webkit-border-radius: 18px;
	-moz-border-radius: 18px;
	/* box-shadow */
	border: 1px solid #ededed;
	box-shadow:rgba(87, 87, 87, 0.51) 0px 2px 4px 0px;
	-webkit-box-shadow:rgba(87, 87, 87, 0.51) 0px 2px 4px 0px;
	-moz-box-shadow:rgba(87, 87, 87, 0.51) 0px 2px 4px 0px;
	position: relative;
}
.description-img .dimg-001 a,
.description-img .dimg-002 a,
.description-img .dimg-003 a,
.description-img .dimg-004 a,
.description-img .dimg-005 a,
.description-img .dimg-006 a,
.description-img .dimg-007 a {
	padding: 0 12px 0 38px;
}
.description-img .dimg-001 a:before {
	position: absolute;
	top: 8px;
	left: 12px;
	content: "　";
	display: inline-block;
	width: 20px;
	height: 20px;
	padding: 0 0 0 0;
	text-align: center;
	background: url(../images/icon-dimg-001.png) 0 0 no-repeat;
	color: #fff;
	margin: 0 0 0 0;
}
.description-img .dimg-001 a:hover:before {
	background: url(../images/icon-dimg-001-on.png) 0 0 no-repeat;
}
.description-img .dimg-002 a:before {
	position: absolute;
	top: 8px;
	left: 12px;
	content: "　";
	display: inline-block;
	width: 20px;
	height: 20px;
	padding: 0 0 0 0;
	text-align: center;
	background: url(../images/icon-dimg-002.png) 0 0 no-repeat;
	color: #fff;
	margin: 0 0 0 0;
}
.description-img .dimg-002 a:hover:before {
	background: url(../images/icon-dimg-002-on.png) 0 0 no-repeat;
}
.description-img .dimg-003 a:before {
	position: absolute;
	top: 8px;
	left: 12px;
	content: "　";
	display: inline-block;
	width: 20px;
	height: 20px;
	padding: 0 0 0 0;
	text-align: center;
	background: url(../images/icon-dimg-003.png) 0 0 no-repeat;
	color: #fff;
	margin: 0 0 0 0;
}
.description-img .dimg-003 a:hover:before {
	background: url(../images/icon-dimg-003-on.png) 0 0 no-repeat;
}
.description-img .dimg-004 a:before {
	position: absolute;
	top: 8px;
	left: 12px;
	content: "　";
	display: inline-block;
	width: 20px;
	height: 20px;
	padding: 0 0 0 0;
	text-align: center;
	background: url(../images/icon-dimg-004.png) 0 0 no-repeat;
	color: #fff;
	margin: 0 0 0 0;
}
.description-img .dimg-004 a:hover:before {
	background: url(../images/icon-dimg-004-on.png) 0 0 no-repeat;
}
.description-img .dimg-005 a:before {
	position: absolute;
	top: 8px;
	left: 12px;
	content: "　";
	display: inline-block;
	width: 20px;
	height: 20px;
	padding: 0 0 0 0;
	text-align: center;
	background: url(../images/icon-dimg-005.png) 0 0 no-repeat;
	color: #fff;
	margin: 0 0 0 0;
}
.description-img .dimg-005 a:hover:before {
	background: url(../images/icon-dimg-005-on.png) 0 0 no-repeat;
}
.description-img .dimg-006 a:before {
	position: absolute;
	top: 8px;
	left: 12px;
	content: "　";
	display: inline-block;
	width: 20px;
	height: 20px;
	padding: 0 0 0 0;
	text-align: center;
	background: url(../images/icon-dimg-006.png) 0 0 no-repeat;
	color: #fff;
	margin: 0 0 0 0;
}
.description-img .dimg-006 a:hover:before {
	background: url(../images/icon-dimg-006-on.png) 0 0 no-repeat;
}
.description-img .dimg-007 a:before {
	position: absolute;
	top: 8px;
	left: 12px;
	content: "　";
	display: inline-block;
	width: 20px;
	height: 20px;
	padding: 0 0 0 0;
	text-align: center;
	background: url(../images/icon-dimg-007.png) 0 0 no-repeat;
	color: #fff;
	margin: 0 0 0 0;
}
.description-img .dimg-007 a:hover:before {
	background: url(../images/icon-dimg-007-on.png) 0 0 no-repeat;
}

.description-img .dimg-arw-down a:after {
	content: "　";
	display: block;
	width: 11px;
	height: 11px;
	background: url(../images/icon-dimg-down.png) 0 0 no-repeat;
	position: absolute;
	bottom: -11px;
	left: 48%;
}
.description-img .dimg-arw-up a:after {
	content: "　";
	display: block;
	width: 11px;
	height: 11px;
	background: url(../images/icon-dimg-up.png) 0 0 no-repeat;
	position: absolute;
	top: -11px;
	left: 48%;
}
.description-img .dimg-arw-right a:after {
	content: "　";
	display: block;
	width: 11px;
	height: 11px;
	background: url(../images/icon-dimg-right.png) 0 0 no-repeat;
	position: absolute;
	top: 12px;
	right: -11px;
}
#dimg-i43 {
	width: 700px;
}
#dimg-i43 .dimg-001 {
	position: absolute;
	top: 27px;
	left: 67px;
}
#dimg-i43 .dimg-002 {
	position: absolute;
	top: 235px;
	left: 378px;
}
#dimg-i43 .dimg-003 {
	position: absolute;
	top: 284px;
	left: 327px;
}
#dimg-i43 .dimg-004 {
	position: absolute;
	top: 214px;
	left: 201px;
}
#dimg-i43 .dimg-005 {
	position: absolute;
	top: 192px;
	left: 21px;
}
#dimg-i43 .dimg-006 {
	position: absolute;
	top: 244px;
	left: 21px;
}
#dimg-i43 .dimg-007 {
	position: absolute;
	top: 441px;
	left: 21px;
}

/* 一部例外処理 */
.component-imgbox-textL .link-window {
	margin-left: 0;
}
.component-normal-table .component-list {
	margin: 0;
}
.component-normal-table .link-window,
.cal-table-sub .link-window {
	cursor: pointer;
	margin-left: 0;
	margin-top: 0;
	margin-bottom: 0;
}

/* 追加分a-53 */
.date-select-box {
	background: #efefef;
	padding: 11px 12px 14px 10px;
}
.date-select {
	float: left;
}
.date-select.dt-year {
	width: 83px !important;
}
.date-select.dt-year .NFSelect {
	width: 83px !important;
}
.date-select.dt-year .NFSelectTarget {
	width: 80px !important;
}
.date-select.dt-year .NFSelectOptions {
	width: 79px !important;
}
.date-select.dt-month {
	width: 69px !important;
}
.date-select.dt-month .NFSelect {
	width: 69px !important;
}
.date-select.dt-month .NFSelectTarget {
	width: 67px !important;
}
.date-select.dt-month .NFSelectOptions {
	width: 65px !important;
}
.date-select.dt-month .NFSelectRight span {
	display: inline-block;
	width: 15px;
	text-align: right;
}
.date-select.dt-month .NFSelectOptions li span {
	display: inline-block;
	width: 29px;
	text-align: right;
}
.date-select.dt-day {
	width: 69px !important;
}
.date-select.dt-day .NFSelect {
	width: 69px !important;
}
.date-select.dt-day .NFSelectTarget {
	width: 67px !important;
}
.date-select.dt-day .NFSelectOptions {
	width: 65px !important;
}
.date-select.dt-day .NFSelectRight span {
	display: inline-block;
	width: 15px;
	text-align: right;
}
.date-select.dt-day .NFSelectOptions li span {
	display: inline-block;
	width: 29px;
	text-align: right;
}
.date-select.dt-text {
	padding: 2px 8px 0 0;
}
.date-select.dt-text .NFTextCenter {
	width: 18px;
}
.date-select.dt-radio {
	position: relative;
	padding: 0 8px 0 0;
}
.date-select.dt-radio-end {
	position: relative;
	padding: 0 0 0 0;
}
.date-select.dt-radio label,
.date-select.dt-radio-end label {
	display: inline-block;
	padding: 5px 0 0 8px;
	cursor: pointer;
}
.date-select-text {
	float: left;
	padding: 5px 8px 0 6px;
}
.date-select-text.dt-end {
	padding: 5px 20px 0 6px;
}
.form-checkbox {
	padding: 0 10px;
}
.form-checkbox li {
	float: left;
	width: 50%;
	position: relative;
}
.form-checkbox li input {
	display: none;
}
.form-checkbox li label {
	display: inline-block;
	cursor: pointer;
	padding: 0 0 0 28px;
}

/* 追加分k-42 */
.sitemap-box {
	margin-top: 15px;
	margin-bottom: 33px;	
}

.sitemap-link01-title a {
	display: block;
	background: url(../images/icon-news-arw.png) right center no-repeat #EFEFEF;
	padding: 17px 27px 13px 11px;
	margin-bottom: 19px;
	font-size: 19px;
	line-height:28px;
	text-decoration:none;
}
.sitemap-link01-title a:hover {
	background: url(../images/icon-news-arw-on.png) right center no-repeat #EFEFEF;
}
.sitemap3-boxIn {
	display:table;
	width:100%;
	margin-bottom:21px
}
.sitemap3-box-sub {
	display: table-cell;
	width: 33.333333%;
	vertical-align: top;
}
.sitemap3-box-sub .link-window {
	display: block;
}
.sitemap4th {
	background: url(../images/icon-subtitle.png) 0 3px no-repeat;
	padding: 4px 5px 2px 36px;
}
a.link-window.sitemap4th {
	padding-left: 36px;
}
a.link-window.sitemap4th::after {
	display: none;
}
.sitemap4th:hover {
	background: url(../images/icon-subtitle.png) 0 3px no-repeat;
}
.sitemap4th-last {
	background: url(../images/icon-subtitleend.png) 0 3px no-repeat;
	padding: 4px 5px 2px 36px;
}
a.link-window.sitemap4th-last {
	padding-left: 36px;
}
a.link-window.sitemap4th-last::after {
	display: none;
}
.sitemap4th-last:hover {
	background: url(../images/icon-subtitleend.png) 0 3px no-repeat;
}
.sitemap5th {
	background: url(../images/icon-subtitle.png) 0 3px no-repeat;
	padding: 4px 5px 2px 36px;
	margin-left:32px
}
a.link-window.sitemap5th {
	padding-left: 36px;
}
a.link-window.sitemap5th::after {
	display: none;
}
.sitemap5th:hover {
	background: url(../images/icon-subtitle.png) 0 3px no-repeat;
}
.sitemap5th-last {
	background: url(../images/icon-subtitleend.png) 0 3px no-repeat;
	padding: 4px 5px 2px 36px;
	margin-left:32px
}
a.link-window.sitemap5th-last {
	padding-left: 36px;
}
a.link-window.sitemap5th-last::after {
	display: none;
}
.sitemap5th-last:hover {
	background: url(../images/icon-subtitleend.png) 0 3px no-repeat;
}

/* 検索結果画面調整　*/

.gsc-thumbnail-inside,
.gsc-url-top {
	padding:0!important;
}

/* preview用注記メッセージ */

#preview_urgent {
	width: 640px;
	background: #fff;
	margin:0px auto;
}
#preview_urgent #urgentIn {
	margin: 0 0px 12px;
	border:1px solid #D1D1D1;
	background-color:#FFFDBF;
	padding:19px 23px 18px;
	text-align:center;
}
#preview_urgent #urgentIn span.ttl {
	font-size:15px;
	font-weight:bold;
	margin-bottom:15px;
	display:block;
	color:#e60012;
}
#preview_urgent #urgentIn span.txt {
	font-size:13px;
	margin-bottom:15px;
	display:block;
}
#preview_urgent #urgentIn .component-annotation {
	text-align:left;
}
#preview_urgent #urgentIn .input-btn {
	width:350px!important;
	margin-bottom:15px;
}

/* clearfix */
.component-imgbox:before,
.component-imgbox:after,
.component-imgbox-table:before,
.component-imgbox-table:after,
#readArea > div:before,
#readArea > div:after,
.box-col2:before,
.box-col2:after,
.company-box:before,
.company-box:after,
.component-company:before,
.component-company:after,
.pickup-contents-list ul:before,
.pickup-contents-list ul:after,
.relate-page-itemWrap:before,
.relate-page-itemWrap:after,
.seminar-list-icon:before,
.seminar-list-icon:after,
.date-select-box:before,
.date-select-box:after,
.form-checkbox:before,
.form-checkbox:after {
    content:"";
    display:table;
}
.component-imgbox:after,
.component-imgbox-table:after,
#readArea > div:after,
.box-col2:after,
.company-box:after,
.component-company:after,
.pickup-contents-list ul:after,
.relate-page-itemWrap:after,
.seminar-list-icon:after,
.date-select-box:after,
.form-checkbox:after {
    clear:both;
}
/* 追加20170805 IRムービー用  */
.ir-pickup-movie {
  overflow: hidden;
  display: table;
}
.ir-pickup-movie-player {
  display: table-cell;
  vertical-align:top;
  padding-bottom:4px;
}
.ir-pickup-movie-list {
  height:368px;
  margin-left:24px;
  vertical-align:top;
  overflow-y: auto;
}
.ir-movie-table {
  border-collapse:collapse;
}
.ir-movie-tr {
  border-bottom:1px #eee solid;
}
.ir-movie-tr td {
  align-content: flex-start;
  padding: 5px;
}
.ir-movie-tr td:nth-child(1) {
  width: 20%;
}
.ir-movie-tr td:nth-child(2) {
  width: 80%;
}

.ir-text-link {
  padding-left:12px;
  font-size: 14px;
  line-height: 21px;
}
.movieinner iframe {
  width: 100%;
}
@media screen and (min-width: 769px) {
	.ir-pickup-movie  {
		display: flex;
	}
	.ir-pickup-movie .ir-pickup-movie-player {
		width: 70%;
	}
	.ir-pickup-movie .ir-pickup-movie-list {
		width: 30%;
	}
  .ir-text-link {
    font-size: 14px;
    line-height: 25px;
  }
  .ir-pickup-movie iframe {
    width: 100%;
    height: 100%;
  }
  .column3-box-sub.movie .heading-title span {
    font-size: 20px;
    line-height: 30px;
  }
}
.ir-column3-box-subIn {
	margin: 0 0 12px;
}
.ir-column3-box-subIn a {
	text-decoration: none;
}
/*
.ir-column3-box-subIn .column-name {
	width:314px;
}
*/
.ir-column3-box-subIn-solid-height {
	padding: 0 3px 0 0;
	margin: 0 0 12px;
	overflow-y: auto;
	vertical-align:top;
	height:138px;
	width:auto;
}

/* 追加分c-68 20170907 */

.cl01 a {
	background: #666666;
}
.cl01 a.act ,
.cl01 a:hover {
	background: #333333!important;
}
.cl02 a {
	background: #fc7b84;
}
.cl02 a.act ,
.cl02 a:hover {
	background: #e8001f!important;
}
.cl03 a {
	background: #547ce2;
}
.cl03 a.act ,
.cl03 a:hover {
	background: #1e48b2!important;
}

/* probo改修 */
.searchbox input[type="submit"]{
cursor: pointer;
}
/* 202210 add  新規上場・売買停止・注意喚起 */
#information-reception {
	display: flex;
	margin:0 0 24px 0;
}
#information-reception .information-link-box {
	background:#F7F7F7;
	padding:10px;
}
#information-reception .information-link-box dt {
	float:left;
	width:70px;
	padding:0.5em 0 0 10px;
	font-weight: 500;
}
#information-reception .information-link-box dt .information-link-rss {
	display:block;
	width: 18px;
	padding:8px 0 0 0;
}
#information-reception .information-link-box dt .information-link-rss a {
}
#information-reception .information-link-box dt .information-link-rss a:hover {
}
#information-reception .information-link-box>dd {
	margin-left:80px;
	overflow:hidden;
	display: inherit;
}
#information-reception .information-link-box dd ul {
	float:left;
	width:467px;
}
#information-reception .information-link-box dd ul li {
	background:#ffffff;
	border-bottom:1px solid #cccccc;
	padding:4px 12px;
}
#information-reception .information-link-box dd ul li:last-child {
	border-bottom:1px solid #999999;
}
#information-reception .information-link-box dd ul li a {
	display: block;
	padding: 0 27px 0 0;
	text-decoration: none;
	background: url(../images/icon-news-sub-arw.png) right center no-repeat #fff;
	position: relative;
}
#information-reception .information-link-box dd ul li a::before {
	content: "";
    display: block;
    position: absolute;
    background: url(../fonts/icn-right-arrow_gray.svg) center center no-repeat;
    background-size: contain;
    width: 12px;
    height: 12px;
    top: 50%;
    transform: translate(0, -50%);
    right: 5px;
}
#information-reception .information-link-box dd ul li a:hover {
	background: url(../fonts/2509eebeadec4c998d1e41e00bd52148.svg) center center no-repeat;
    background-size: contain;
}
#information-reception .information-link-box dd .information-link-list {
	float:right;
	font-size:12px;
	text-align:center;
	padding: 0 0 0 0.5em;
}
#information-reception .information-link-box dd .information-link-list a {
  position: relative;
  display: block;
  font-size: 12px;
  font-weight: 600;
  padding: 6px 33px 6px 15px;
  line-height: 13px;
  text-decoration: none;
  color: #000000;
  border: #d1d1d1 solid 1px;
  border-radius: 14px;
  box-sizing: border-box;
  width: fit-content;
  background: url(../fonts/icn-circle-arw_gray.svg) 45px 7px no-repeat #ffffff;
  background-size: 12px 12px;
}
#information-reception .information-link-box dd .information-link-list a:hover {
    background: url(../fonts/button-hover.svg) 45px 7px no-repeat #ffffff;
    border: #e60012 solid 1px;
    color: #e60012;
}
#information-reception .stopping {
	position:relative;
	padding:0 69px 0 0;
}
#information-reception .stopping dd {
	background:#f2f2f2;
	padding:0;
	border-bottom:1px solid #cccccc;
	width:467px;
}
#information-reception .stopping dd .label {
	float:left;
	width:74px;
	padding:0.5em 0 0 10px;
}
#information-reception .stopping dd ul {
	width:383px;
}
#information-reception .stopping dd ul li {
	border:none;
	border-bottom:1px solid #f2f2f2;
}
#information-reception .stopping dd .information-link-list {
	position:absolute;
	right:0;
}
#information-reception .situation {
	overflow:hidden;
	float:right;
	padding:9px 0 0 0;
}
#information-reception .situation li {
	float:left;
	padding:0 0 0 12px;
}
#information-reception .situation li a {
	padding: 0 0 0 16px;
	text-decoration: none;
	background: url(../fonts/2f5231c813144d5d8b9232eae32da669.svg) 36px 5px no-repeat #ffffff;
    background-size: 12px 12px;
}
#information-reception .information-link-box dd ul li a:hover {
	background: none;
}
#information-reception .information-link-box dd ul li a:hover::before {
    background: url(../fonts/icn-right-arrow_gray.svg) center center no-repeat;
    background-size: contain;
}
#information-reception .information-link-box dd .information-link-list a:hover {
	background: url(../images/icon-link-text.png) 0 center no-repeat;
}
#information-reception .information-link-box dd .information-link-list {
	float: none;
	margin-left: 8px;
	padding: 0;
}
#information-reception .stopping {
	padding: 0;
}
#information-reception .stopping dd {
	background-color: transparent;
	border-bottom: 0;
}
#information-reception .stopping dd:last-child {
	padding-top: 1em;
}
#information-reception .stopping dd .label {
	float: none;
	padding: 0.5em 0;
	width: 100%;
	background-color: #f2f2f2;
	font-size: 14px;
	text-align: center;
}
#information-reception .stopping dd ul li {
	border-bottom: 1px solid #cccccc;
}
#information-reception .stopping dd .information-link-list {
	position: relative;
}
}

/* 202309Issue Name調整追加 */
.issuename-word-break {
	overflow-wrap: anywhere;
	min-width: 148px;
}

/* 202312 テーブル上線破線追加 */
.dashed-top{
	border-top: 1px dashed #d1d1d1 !important;
}

/* バックナンバープルダウン調整 */
.number-select-box {
  float: none;
  display: flex;
  justify-content: flex-end;
}
.number-select {
  position: relative;
  width: auto;
}
.number-select::after {
  content: "";
  display: block;
  position: absolute;
  background: url(../images/icn-arrow_take_open.svg) center center no-repeat;
  background-size: contain;
  width: 10px;
  height: 10px;
  top: 50%;
  transform: translate(0, -50%);
  right: 16px;
  pointer-events: none;
}
select.backnumber {
  margin: 0 6px;
  padding: 6px 28px 6px 12px;
  width: auto;
  border: solid 1px #ddd;
  appearance: none;
  border-radius: 4px;
  filter: drop-shadow(0px 1px 3px rgba(0, 0, 0, 0.08));
  background-color: #fff;
  cursor: pointer;
}
/* 3カラムリンクボックスの画像対応 */
.column3-box-subIn img {
  max-width: 100%;
  height: auto;
}

/* 見学マップの調整 */
.arrows-map-area img {
  max-width: 100%;
  height: auto;
}

@media screen and (max-width: 768px) {
  #popup01, #popup02, #popup03, #popup04, #popup05, #popup06, #popup07, #popup08, #popup09, #popup10 {
      display: block;
      width: 100%;
      height: auto;
      margin-bottom: 2em;
      padding: 0;
  }

  #ttl-h301, #ttl-h302, #ttl-h303, #ttl-h304, #ttl-h305, #ttl-h306, #ttl-h307, #ttl-h308, #ttl-h309, #ttl-h310 {
    font-size: 14px;
    padding: 12px 0 12px 30px;
  }

  .arrows-popup-area .img-area img.fr, .arrows-popup-area .img-area img.fl {
    float: none;
    margin: 0 auto 1em;
    display: block;
  }

  .arrows-map-area {
    text-align: left;
  }
}

@media screen and (min-width:769px) {
  #ttl-h301, #ttl-h302, #ttl-h303, #ttl-h304, #ttl-h305, #ttl-h306, #ttl-h307, #ttl-h308, #ttl-h309, #ttl-h310 {
    font-size: 16px;
    line-height: 29px;
    padding: 12px 0 12px 30px;
  }
.arrows-popup-area {
	padding: 20px 10px;
}
.arrows-popup-area h3#ttl-h301{
	background: url(../images/icon-arrows-popup01.png) 0 14px no-repeat;
}
.arrows-popup-area h3#ttl-h302{
	background: url(../images/icon-arrows-popup02.png) 0 14px no-repeat;
}
.arrows-popup-area h3#ttl-h303{
	background: url(../images/icon-arrows-popup03.png) 0 14px no-repeat;
}
.arrows-popup-area h3#ttl-h304{
	background: url(../images/icon-arrows-popup04.png) 0 14px no-repeat;
}
.arrows-popup-area h3#ttl-h305{
	background: url(../images/icon-arrows-popup05.png) 0 14px no-repeat;
}
.arrows-popup-area h3#ttl-h306{
	background: url(../images/icon-arrows-popup06.png) 0 14px no-repeat;
}
.arrows-popup-area h3#ttl-h307{
	background: url(../images/icon-arrows-popup07.png) 0 14px no-repeat;
}
.arrows-popup-area h3#ttl-h308{
	background: url(../images/icon-arrows-popup08.png) 0 14px no-repeat;
}
.arrows-popup-area h3#ttl-h309{
	background: url(../images/icon-arrows-popup09.png) 0 14px no-repeat;
}
.arrows-popup-area h3#ttl-h310{
	background: url(../images/icon-arrows-popup10.png) 0 14px no-repeat;
}
  
  .arrows-map-area img.onlypc {
    display: inline !important;
  }
.arrows-popup-area p{
	font-size: 16px;
	line-height: 29px;
}
.arrows-popup-area p.link a.link-window{
  font-size: 16px;
}
.pp_content{
  height: auto!important;
}
}

/* リストの調整 */
@media screen and (max-width: 768px) {
  .component-list {
    margin: 12px 0px;
  }
}

/* 個人投資家の皆様へ メインビジュアルの調整 */
#individual-main img {
  width: 100%;
}

/* 金融経済教育 セミナー・イベントの調整 */
.JPX-section-newslist ul {
  display: block;
}

@media screen and (min-width: 768px) {
  .JPX-section-newslist {
    margin-left: -32px;
  }
  
  .JPX-section-newslist ul li {
    box-sizing: border-box;
    margin-left: 32px;
  }
}

/* FBボタン調整 */
.fb-share-button > span {
  vertical-align: inherit!important;
}

/* リスト単独使用調整 */
.component-list-parentheses ol li.parentheses00:before {
	content: "(注)";
}
.component-list-parentheses ol li.parentheses01:before {
	content: "(1)";
}
.component-list-parentheses ol li.parentheses02:before {
	content: "(2)";
}
.component-list-parentheses ol li.parentheses03:before {
	content: "(3)";
}
.component-list-parentheses ol li.parentheses04:before {
	content: "(4)";
}
.component-list-parentheses ol li.parentheses05:before {
	content: "(5)";
}
.component-list-parentheses ol li.parentheses06:before {
	content: "(6)";
}
.component-list-parentheses ol li.parentheses07:before {
	content: "(7)";
}
.component-list-parentheses ol li.parentheses08:before {
	content: "(8)";
}
.component-list-parentheses ol li.parentheses09:before {
	content: "(9)";
}
.component-list-parentheses ol li.parentheses10:before {
	content: "(10)";
}
.component-list-parentheses ol li.parentheses11:before {
	content: "(11)";
}
.component-list-parentheses ol li.parentheses12:before {
	content: "(12)";
}
.component-list-parentheses ol li.parentheses13:before {
	content: "(13)";
}
.component-list-parentheses ol li.parentheses14:before {
	content: "(14)";
}
.component-list-parentheses ol li.parentheses15:before {
	content: "(15)";
}
.component-list-parentheses ol li.parentheses16:before {
	content: "(16)";
}
.component-list-parentheses ol li.parentheses17:before {
	content: "(17)";
}
.component-list-parentheses ol li.parentheses18:before {
	content: "(18)";
}
.component-list-parentheses ol li.parentheses19:before {
	content: "(19)";
}
.component-list-parentheses ol li.parentheses20:before {
	content: "(20)";
}

/*旧セミナースライドレイアウト調整*/
.component-normal-table.sp-slide-table p.onlysp {
  margin: -12px -12px 16px;
  background-color: #333333;
  font-size: 12px;
  font-weight: 500;
  line-height: 14px;
  padding: 11px 16px;
  color: #ffffff;
}
@media screen and (max-width:768px) {
.component-normal-table.sp-slide-table .bx-wrapper {
  background-color: #fff;
  border: #d1d1d1 solid 1px;
  border-radius: 4px;
}
.component-normal-table.sp-slide-table .JPX-btn.-is-noevent {
  max-width: 168px;
  font-size: 12px;
}
}
.component-normal-table.sp-slide-table table .bx-wrapper .bx-controls-direction a.bx-prev,
.component-normal-table.sp-slide-table table .bx-wrapper .bx-controls-direction a.bx-next {
display: block;
  position: absolute;
  width: 36px;
  height: 36px;
  top: 50%;
  transform: translate(0, -50%);
  z-index: 1;
  background-color: #ffffff;
  border: #d1d1d1 solid 1px;
  border-radius: 50%;
}
.component-normal-table.sp-slide-table table .bx-wrapper .bx-controls-direction a.bx-prev.disabled,
.component-normal-table.sp-slide-table table .bx-wrapper .bx-controls-direction a.bx-next.disabled {
	opacity: 0.5;
    cursor: default;
}
.component-normal-table.sp-slide-table table .bx-wrapper .bx-controls-direction a.bx-prev {
	left: 4px;
	cursor: pointer;
	text-indent: -9999px;
	background: #fff;
}
.component-normal-table.sp-slide-table table .bx-wrapper .bx-controls-direction a.bx-prev::before {
	content: "";
    position: absolute;
    display: block;
    background: url(../images/icn-right-arrow_gray.svg) center center no-repeat;
    background-size: 12px 12px;
    width: 12px;
    height: 12px;
    top: 50%;
    right: 50%;
    transform: translate(50%, -50%) rotate(180deg);
}
.component-normal-table.sp-slide-table table .bx-wrapper .bx-controls-direction a.bx-next {
	right: 4px;
	cursor: pointer;
	text-indent: -9999px;
	background: #fff;
}
.component-normal-table.sp-slide-table table .bx-wrapper .bx-controls-direction a.bx-next::before {
	content: "";
    position: absolute;
    display: block;
    background: url(../images/icn-right-arrow_gray.svg) center center no-repeat;
    background-size: 12px 12px;
    width: 12px;
    height: 12px;
    top: 50%;
    right: 50%;
    transform: translate(50%, -50%);
}
.component-normal-table.sp-slide-table .input-btn2-sub::before {
  display: none;
}
@media screen and (min-width:769px) {
  .component-normal-table.sp-slide-table tr.onlypc {
    display: contents;
  }
}
/*　表組み調整　*/
@media screen and (max-width:768px) {
.component-normal-table {
  background: linear-gradient(to left, rgba(255, 255, 255, 0), rgba(0, 0, 0, 0.2)) 0 0/20px 100%, linear-gradient(to right, rgba(255, 255, 255, 0), rgba(0, 0, 0, 0.2)) right/20px 100%;
  background-attachment: scroll;
  background-repeat: no-repeat;
}
.component-normal-table:has(table.overtable) {
  background: none;
}
.component-normal-table table {
  background: linear-gradient(to left, hsla(0,0%,100%,0), white 15px) 0 0 / 50px 100%, linear-gradient(to right, hsla(0,0%,100%,0), white 15px) right / 50px 100%;
  background-repeat: no-repeat;
  background-attachment: local;
}
/* faq table*/
.faq-list-box .component-normal-table table {
  background: none;
}
/* アイコン幅*/
.component-normal-table table th.icon,
.component-normal-table table td.icon {
white-space: nowrap;
}
.component-normal-table table .bg-even td {
	background: none;
}
/* 背景色（白）*/
.tb-color001 {
	background: none !important;
}
/* 背景色（薄い灰色）*/
.tb-color002 {
	background: none !important;
}
/* 背景色（濃い灰色）*/
.tb-color003 {
white-space: nowrap;
}
/* 背景色（ピンク）*/
.tb-color004 {
	background: none !important;
}
/* 背景色追加分）*/
.tb-color005 {
	background: none !important;
}
.tb-color006 {
	background: none !important;
}
.tb-color007 {
	background: none !important;
}
}
/*　表組み/注釈文字サイズ調整　*/
td .component-text,
td .link-window,
td .link-blank,
td .link-pdf,
td .link-xls,
td .link-doc,
td .link-ppt,
td .link-csv,
td .link-zip,
td .component-list > ul > li,
td .component-list-num > ol > li,
td .component-list-parentheses > ol > li,
td .component-list-alpha > ol > li,
td .component-list-point > ul > li,
td .component-list-check > ul > li,
td .component-list-roman > ol > li,
.component-annotation > ul > li .link-window,
.component-annotation > ul > li .link-blank,
.component-annotation > ul > li .link-pdf,
.component-annotation > ul > li .link-xls,
.component-annotation > ul > li .link-doc,
.component-annotation > ul > li .link-ppt,
.component-annotation > ul > li .link-csv,
.component-annotation > ul > li .link-zip,
.component-annotation-num > ul > li .link-window,
.component-annotation-num > ul > li .link-blank,
.component-annotation-num > ul > li .link-pdf,
.component-annotation-num > ul > li .link-xls,
.component-annotation-num > ul > li .link-doc,
.component-annotation-num > ul > li .link-ppt,
.component-annotation-num > ul > li .link-csv,
.component-annotation-num > ul > li .link-zip,
.component-asterisk > ul > li .link-window,
.component-asterisk > ul > li .link-blank,
.component-asterisk > ul > li .link-pdf,
.component-asterisk > ul > li .link-xls,
.component-asterisk > ul > li .link-doc,
.component-asterisk > ul > li .link-ppt,
.component-asterisk > ul > li .link-csv,
.component-asterisk > ul > li .link-zip,
.component-asterisk-num > ul > li .link-window,
.component-asterisk-num > ul > li .link-blank,
.component-asterisk-num > ul > li .link-pdf,
.component-asterisk-num > ul > li .link-xls,
.component-asterisk-num > ul > li .link-doc,
.component-asterisk-num > ul > li .link-ppt,
.component-asterisk-num > ul > li .link-csv,
.component-asterisk-num > ul > li .link-zip,
.component-note > ul > li .link-window,
.component-note > ul > li .link-blank,
.component-note > ul > li .link-pdf,
.component-note > ul > li .link-xls,
.component-note > ul > li .link-doc,
.component-note > ul > li .link-ppt,
.component-note > ul > li .link-csv,
.component-note > ul > li .link-zip {
	font-size: 12px;
	line-height: 18px;
	margin-bottom: 7px!important;
}
td .link-window-inline,
.component-annotation > ul > li .link-window-inline,
.component-annotation-num > ul > li .link-window-inline,
.component-asterisk > ul > li .link-window-inline,
.component-asterisk-num > ul > li .link-window-inline,
.component-note > ul > li .link-window-inline {
	font-size: 12px;
	line-height: 18px;
}
td .link-window,
td .link-blank,
td .link-pdf,
td .link-xls,
td .link-doc,
td .link-ppt,
td .link-csv,
td .link-zip,
.component-annotation > ul > li .link-window,
.component-annotation > ul > li .link-blank,
.component-annotation > ul > li .link-pdf,
.component-annotation > ul > li .link-xls,
.component-annotation > ul > li .link-doc,
.component-annotation > ul > li .link-ppt,
.component-annotation > ul > li .link-csv,
.component-annotation > ul > li .link-zip,
.component-annotation-num > ul > li .link-window,
.component-annotation-num > ul > li .link-blank,
.component-annotation-num > ul > li .link-pdf,
.component-annotation-num > ul > li .link-xls,
.component-annotation-num > ul > li .link-doc,
.component-annotation-num > ul > li .link-ppt,
.component-annotation-num > ul > li .link-csv,
.component-annotation-num > ul > li .link-zip,
.component-asterisk > ul > li .link-window,
.component-asterisk > ul > li .link-blank,
.component-asterisk > ul > li .link-pdf,
.component-asterisk > ul > li .link-xls,
.component-asterisk > ul > li .link-doc,
.component-asterisk > ul > li .link-ppt,
.component-asterisk > ul > li .link-csv,
.component-asterisk > ul > li .link-zip,
.component-asterisk-num > ul > li .link-window,
.component-asterisk-num > ul > li .link-blank,
.component-asterisk-num > ul > li .link-pdf,
.component-asterisk-num > ul > li .link-xls,
.component-asterisk-num > ul > li .link-doc,
.component-asterisk-num > ul > li .link-ppt,
.component-asterisk-num > ul > li .link-csv,
.component-asterisk-num > ul > li .link-zip {
	    padding-left: 14px;
}
.component-note > ul > li .link-window,
.component-note > ul > li .link-blank,
.component-note > ul > li .link-pdf,
.component-note > ul > li .link-xls,
.component-note > ul > li .link-doc,
.component-note > ul > li .link-ppt,
.component-note > ul > li .link-csv,
.component-note > ul > li .link-zip {
	    padding-left: 22px;
}
td .link-window-inline::before {
	top: 4px;
	width: 12px;
    height: 12px;
}
td .link-window::after,
td .link-blank::before,
td .link-pdf::before,
td .link-xls::before,
td .link-doc::before,
td .link-ppt::before,
td .link-csv::before,
td .link-zip::before,
.component-annotation > ul > li .link-window::after,
.component-annotation > ul > li .link-blank::before,
.component-annotation > ul > li .link-pdf::before,
.component-annotation > ul > li .link-xls::before,
.component-annotation > ul > li .link-doc::before,
.component-annotation > ul > li .link-ppt::before,
.component-annotation > ul > li .link-csv::before,
.component-annotation > ul > li .link-zip::before,
.component-annotation-num > ul > li .link-window::after,
.component-annotation-num > ul > li .link-blank::before,
.component-annotation-num > ul > li .link-pdf::before,
.component-annotation-num > ul > li .link-xls::before,
.component-annotation-num > ul > li .link-doc::before,
.component-annotation-num > ul > li .link-ppt::before,
.component-annotation-num > ul > li .link-csv::before,
.component-annotation-num > ul > li .link-zip::before,
.component-asterisk > ul > li .link-window::after,
.component-asterisk > ul > li .link-blank::before,
.component-asterisk > ul > li .link-pdf::before,
.component-asterisk > ul > li .link-xls::before,
.component-asterisk > ul > li .link-doc::before,
.component-asterisk > ul > li .link-ppt::before,
.component-asterisk > ul > li .link-csv::before,
.component-asterisk > ul > li .link-zip::before,
.component-asterisk-num > ul > li .link-window::after,
.component-asterisk-num > ul > li .link-blank::before,
.component-asterisk-num > ul > li .link-pdf::before,
.component-asterisk-num > ul > li .link-xls::before,
.component-asterisk-num > ul > li .link-doc::before,
.component-asterisk-num > ul > li .link-ppt::before,
.component-asterisk-num > ul > li .link-csv::before,
.component-asterisk-num > ul > li .link-zip::before,
.component-note > ul > li .link-window::after,
.component-note > ul > li .link-blank::before,
.component-note > ul > li .link-pdf::before,
.component-note > ul > li .link-xls::before,
.component-note > ul > li .link-doc::before,
.component-note > ul > li .link-ppt::before,
.component-note > ul > li .link-csv::before,
.component-note > ul > li .link-zip::before {
	top: 4px;
	width: 12px;
    height: 12px;
}
td .link-blank::after,
.component-annotation > ul > li .link-blank::after,
.component-annotation-num > ul > li .link-blank::after,
.component-asterisk > ul > li .link-blank::after,
.component-asterisk-num > ul > li .link-blank::after,
.component-note > ul > li .link-blank::after {
	bottom: 3px;
}
td .link-pdf::after,
td .link-xls::after,
td .link-doc::after,
td .link-ppt::after,
td .link-csv::after,
td .link-zip::after,
.component-annotation > ul > li .link-pdf::after,
.component-annotation > ul > li .link-xls::after,
.component-annotation > ul > li .link-doc::after,
.component-annotation > ul > li .link-ppt::after,
.component-annotation > ul > li .link-csv::after,
.component-annotation > ul > li .link-zip::after,
.component-annotation-num > ul > li .link-pdf::after,
.component-annotation-num > ul > li .link-xls::after,
.component-annotation-num > ul > li .link-doc::after,
.component-annotation-num > ul > li .link-ppt::after,
.component-annotation-num > ul > li .link-csv::after,
.component-annotation-num > ul > li .link-zip::after,
.component-asterisk > ul > li .link-pdf::after,
.component-asterisk > ul > li .link-xls::after,
.component-asterisk > ul > li .link-doc::after,
.component-asterisk > ul > li .link-ppt::after,
.component-asterisk > ul > li .link-csv::after,
.component-asterisk > ul > li .link-zip::after,
.component-asterisk-num > ul > li .link-pdf::after,
.component-asterisk-num > ul > li .link-xls::after,
.component-asterisk-num > ul > li .link-doc::after,
.component-asterisk-num > ul > li .link-ppt::after,
.component-asterisk-num > ul > li .link-csv::after,
.component-asterisk-num > ul > li .link-zip::after,
.component-note > ul > li .link-pdf::after,
.component-note > ul > li .link-xls::after,
.component-note > ul > li .link-doc::after,
.component-note > ul > li .link-ppt::after,
.component-note > ul > li .link-csv::after,
.component-note > ul > li .link-zip::after {
	bottom: 1px;
}
td .component-list > ul > li::before {
	top: 6px;
}

@media screen and (min-width:769px) {
td .component-text,
td .link-window,
td .link-blank,
td .link-pdf,
td .link-xls,
td .link-doc,
td .link-ppt,
td .link-csv,
td .link-zip,
td .component-list > ul > li,
td .component-list-num > ol > li,
td .component-list-parentheses > ol > li,
td .component-list-alpha > ol > li,
td .component-list-point > ul > li,
td .component-list-check > ul > li,
td .component-list-roman > ol > li,
.component-annotation > ul > li .link-window,
.component-annotation > ul > li .link-blank,
.component-annotation > ul > li .link-pdf,
.component-annotation > ul > li .link-xls,
.component-annotation > ul > li .link-doc,
.component-annotation > ul > li .link-ppt,
.component-annotation > ul > li .link-csv,
.component-annotation > ul > li .link-zip,
.component-annotation-num > ul > li .link-window,
.component-annotation-num > ul > li .link-blank,
.component-annotation-num > ul > li .link-pdf,
.component-annotation-num > ul > li .link-xls,
.component-annotation-num > ul > li .link-doc,
.component-annotation-num > ul > li .link-ppt,
.component-annotation-num > ul > li .link-csv,
.component-annotation-num > ul > li .link-zip,
.component-asterisk > ul > li .link-window,
.component-asterisk > ul > li .link-blank,
.component-asterisk > ul > li .link-pdf,
.component-asterisk > ul > li .link-xls,
.component-asterisk > ul > li .link-doc,
.component-asterisk > ul > li .link-ppt,
.component-asterisk > ul > li .link-csv,
.component-asterisk > ul > li .link-zip,
.component-asterisk-num > ul > li .link-window,
.component-asterisk-num > ul > li .link-blank,
.component-asterisk-num > ul > li .link-pdf,
.component-asterisk-num > ul > li .link-xls,
.component-asterisk-num > ul > li .link-doc,
.component-asterisk-num > ul > li .link-ppt,
.component-asterisk-num > ul > li .link-csv,
.component-asterisk-num > ul > li .link-zip,
.component-note > ul > li .link-window,
.component-note > ul > li .link-blank,
.component-note > ul > li .link-pdf,
.component-note > ul > li .link-xls,
.component-note > ul > li .link-doc,
.component-note > ul > li .link-ppt,
.component-note > ul > li .link-csv,
.component-note > ul > li .link-zip {
	font-size: 14px;
	line-height: 21px;
	margin-bottom: 7px!important;
}
td .link-window-inline,
.component-annotation > ul > li .link-window-inline,
.component-annotation-num > ul > li .link-window-inline,
.component-asterisk > ul > li .link-window-inline,
.component-asterisk-num > ul > li .link-window-inline,
.component-note > ul > li .link-window-inline {
	font-size: 14px;
	line-height: 21px;
}
td .link-window,
td .link-blank,
td .link-pdf,
td .link-xls,
td .link-doc,
td .link-ppt,
td .link-csv,
td .link-zip,
.component-annotation > ul > li .link-window,
.component-annotation > ul > li .link-blank,
.component-annotation > ul > li .link-pdf,
.component-annotation > ul > li .link-xls,
.component-annotation > ul > li .link-doc,
.component-annotation > ul > li .link-ppt,
.component-annotation > ul > li .link-csv,
.component-annotation > ul > li .link-zip,
.component-annotation-num > ul > li .link-window,
.component-annotation-num > ul > li .link-blank,
.component-annotation-num > ul > li .link-pdf,
.component-annotation-num > ul > li .link-xls,
.component-annotation-num > ul > li .link-doc,
.component-annotation-num > ul > li .link-ppt,
.component-annotation-num > ul > li .link-csv,
.component-annotation-num > ul > li .link-zip,
.component-asterisk > ul > li .link-window,
.component-asterisk > ul > li .link-blank,
.component-asterisk > ul > li .link-pdf,
.component-asterisk > ul > li .link-xls,
.component-asterisk > ul > li .link-doc,
.component-asterisk > ul > li .link-ppt,
.component-asterisk > ul > li .link-csv,
.component-asterisk > ul > li .link-zip,
.component-asterisk-num > ul > li .link-window,
.component-asterisk-num > ul > li .link-blank,
.component-asterisk-num > ul > li .link-pdf,
.component-asterisk-num > ul > li .link-xls,
.component-asterisk-num > ul > li .link-doc,
.component-asterisk-num > ul > li .link-ppt,
.component-asterisk-num > ul > li .link-csv,
.component-asterisk-num > ul > li .link-zip {
	    padding-left: 16px;
}
.component-note > ul > li .link-window,
.component-note > ul > li .link-blank,
.component-note > ul > li .link-pdf,
.component-note > ul > li .link-xls,
.component-note > ul > li .link-doc,
.component-note > ul > li .link-ppt,
.component-note > ul > li .link-csv,
.component-note > ul > li .link-zip {
	    padding-left: 24px;
}
td .link-window-inline::before {
	width: 14px;
    height: 14px;
	top: 4px;
}
td .link-window::after,
td .link-blank::before,
td .link-pdf::before,
td .link-xls::before,
td .link-doc::before,
td .link-ppt::before,
td .link-csv::before,
td .link-zip::before,
.component-annotation > ul > li .link-window::after,
.component-annotation > ul > li .link-blank::before,
.component-annotation > ul > li .link-pdf::before,
.component-annotation > ul > li .link-xls::before,
.component-annotation > ul > li .link-doc::before,
.component-annotation > ul > li .link-ppt::before,
.component-annotation > ul > li .link-csv::before,
.component-annotation > ul > li .link-zip::before,
.component-annotation-num > ul > li .link-window::after,
.component-annotation-num > ul > li .link-blank::before,
.component-annotation-num > ul > li .link-pdf::before,
.component-annotation-num > ul > li .link-xls::before,
.component-annotation-num > ul > li .link-doc::before,
.component-annotation-num > ul > li .link-ppt::before,
.component-annotation-num > ul > li .link-csv::before,
.component-annotation-num > ul > li .link-zip::before,
.component-asterisk > ul > li .link-window::after,
.component-asterisk > ul > li .link-blank::before,
.component-asterisk > ul > li .link-pdf::before,
.component-asterisk > ul > li .link-xls::before,
.component-asterisk > ul > li .link-doc::before,
.component-asterisk > ul > li .link-ppt::before,
.component-asterisk > ul > li .link-csv::before,
.component-asterisk > ul > li .link-zip::before,
.component-asterisk-num > ul > li .link-window::after,
.component-asterisk-num > ul > li .link-blank::before,
.component-asterisk-num > ul > li .link-pdf::before,
.component-asterisk-num > ul > li .link-xls::before,
.component-asterisk-num > ul > li .link-doc::before,
.component-asterisk-num > ul > li .link-ppt::before,
.component-asterisk-num > ul > li .link-csv::before,
.component-asterisk-num > ul > li .link-zip::before,
.component-note > ul > li .link-window::after,
.component-note > ul > li .link-blank::before,
.component-note > ul > li .link-pdf::before,
.component-note > ul > li .link-xls::before,
.component-note > ul > li .link-doc::before,
.component-note > ul > li .link-ppt::before,
.component-note > ul > li .link-csv::before,
.component-note > ul > li .link-zip::before {
	top: 4px;
	width: 14px;
    height: 14px;
}
td .link-blank::after,
.component-annotation > ul > li .link-blank::after,
.component-annotation-num > ul > li .link-blank::after,
.component-asterisk > ul > li .link-blank::after,
.component-asterisk-num > ul > li .link-blank::after,
.component-note > ul > li .link-blank::after {
	bottom: 4px;
}
td .link-pdf::after,
td .link-xls::after,
td .link-doc::after,
td .link-ppt::after,
td .link-csv::after,
td .link-zip::after,
.component-annotation > ul > li .link-pdf::after,
.component-annotation > ul > li .link-xls::after,
.component-annotation > ul > li .link-doc::after,
.component-annotation > ul > li .link-ppt::after,
.component-annotation > ul > li .link-csv::after,
.component-annotation > ul > li .link-zip::after,
.component-annotation-num > ul > li .link-pdf::after,
.component-annotation-num > ul > li .link-xls::after,
.component-annotation-num > ul > li .link-doc::after,
.component-annotation-num > ul > li .link-ppt::after,
.component-annotation-num > ul > li .link-csv::after,
.component-annotation-num > ul > li .link-zip::after,
.component-asterisk > ul > li .link-pdf::after,
.component-asterisk > ul > li .link-xls::after,
.component-asterisk > ul > li .link-doc::after,
.component-asterisk > ul > li .link-ppt::after,
.component-asterisk > ul > li .link-csv::after,
.component-asterisk > ul > li .link-zip::after,
.component-asterisk-num > ul > li .link-pdf::after,
.component-asterisk-num > ul > li .link-xls::after,
.component-asterisk-num > ul > li .link-doc::after,
.component-asterisk-num > ul > li .link-ppt::after,
.component-asterisk-num > ul > li .link-csv::after,
.component-asterisk-num > ul > li .link-zip::after,
.component-note > ul > li .link-pdf::after,
.component-note > ul > li .link-xls::after,
.component-note > ul > li .link-doc::after,
.component-note > ul > li .link-ppt::after,
.component-note > ul > li .link-csv::after,
.component-note > ul > li .link-zip::after {
	bottom: 1px;
}
td .component-list > ul > li::before {
	top: 7px;
}
}
td .link-window:only-child,
td .link-blank:only-child,
td .link-pdf:only-child,
td .link-xls:only-child,
td .link-doc:only-child,
td .link-ppt:only-child,
td .link-csv:only-child,
td .link-zip:only-child {
	margin-bottom: 0!important;
}

/*　レイアウトfix調整　*/
.-is-fix div:has(> .headline-title-wrap) {
  padding: 0 16px;
}
@media screen and (min-width:769px) {
  .-is-fix #main-areaIn #readArea .JPX-section:first-child > *:first-child > div:first-child,
  .-is-fix #main-areaIn #readArea .JPX-section:first-child > *:first-child > h2,
  .-is-fix #main-areaIn #readArea .JPX-section:first-child > *:first-child > h3 {
    margin-top: 0!important;
  }
  .-is-fix div:has(> .headline-title-wrap) {
    padding: 50px 15px 0;
  }
  .-is-fix .JPX-sidecontents {
    margin-top: 0!important;
  }
}
/*　集計日時フォントサイズ　*/
.update-date {
	font-size: 12px;
	line-height: 18px;
}
@media screen and (min-width:769px) {
.update-date {
	font-size: 14px;
	line-height: 21px;
}
}
/*　第二階層扉h1調整　*/
.JPX-section:has(> .JPX-section-inner > .headline-title-wrap > .JPX-heading-h1-inner ) {
	padding: 0 16px 24px;
}
@media screen and (min-width:769px) {
.JPX-section:has(> .JPX-section-inner > .headline-title-wrap > .JPX-heading-h1-inner ) {
	padding: 0 0 36px;
}
}
/*　JPXカレンダー調整　*/
.fc-ltr .fc-basic-view .fc-day-number {
	text-align: left!important;	
}
.cal-table-sub table th:first-child {
	border-right: 1px solid #fff;
}
.cal-table-sub table td {
	border-right: 1px solid #d1d1d1;
}

/*
js noscriptメッセージ
*/
.JPX-noscript-wrapper {
  background-color: #F7F7F7;
  padding: 22px 15px;
  border-radius: 4px;
}

.JPX-noscript {
  color: #000000;
}

.JPX-noscript-title {
  font-size: 14px;
  font-weight: 500;
  line-height: 20px;
}

.JPX-noscript-text {
  font-size: 12px;
  line-height: 18px;
  margin-top: 6px;
}

@media screen and (min-width:769px) {
  .JPX-noscript-wrapper {
    padding: 22px 32px;
  }
  
  .JPX-noscript-title {
    font-size: 16px;
  }
  
  .JPX-noscript-text {
    font-size: 14px;
    line-height: 21px;
    margin-top: 11px;
  }
}
/* /緊急メッセージ */