﻿:root {
  --color-blue: #0066b5;
  --color-yellow: #f7b403;
  --color-red: #e04c0f;
}
.secDom .contentsTtl, .secDom .innerTtl::before {
  color: var(--color-blue);
  background-color: var(--color-blue);
}
.secAbr .contentsTtl, .secAbr .innerTtl::before {
  color: var(--color-yellow);
  background-color: var(--color-yellow);
}
.secLbs .contentsTtl, .secLbs .innerTtl::before {
  color: var(--color-red);
  background-color: var(--color-red);
}
.pcOnly {
  display: none;
}
.spOnly {
  display: block;
}
@media screen and (min-width: 769px) {
  .pcOnly {
    display: block;
  }
  .spOnly {
    display: none;
  }
}
.note {
  font-size: 80%;
}
.day {
  text-align: right;
  margin-bottom: 20px;
}
.contentsTtl {
  display: flex;
  flex-wrap: wrap;
  align-items: stretch;
}
.contentsTtl, .contentsTtl > dt, .contentsTtl > dd {
  justify-content: center;
  padding: .5em;
  border-radius: 5px;
  line-height: 1;
}
.contentsTtl > dt, .contentsTtl > dd {
  font-size: 80%;
  display: flex;
  align-items: center;
  margin: .1em;
}
.contentsTtl > dt {
  width: 100%;
  color: #FFFFFF;
}
.contentsTtl > dd {
  background-color: #FFFFFF;
  border: 1px #FFFFFF solid;
}
.contentsTtl > .borderSbTtl {
  color: #FFFFFF;
  background-color: transparent;
  border-right: none;
  border-radius: 0;
}
@media screen and (min-width: 769px) {
  .contentsTtl {
    justify-content: inherit;
  }
  .contentsTtl > dt, .contentsTtl > dd {
    justify-content: inherit;
    font-size: 100%;
  }
  .contentsTtl > dt {
    width: auto;
    font-size: 1.2em;
  }
}
.innerTtl {
  font-weight: bold;
}
.innerTtl::before {
  content: '';
  display: inline-block;
  width: 1em;
  height: 1em;
  margin-right: .5em;
}
.bizContent {
  margin: 2em 1em 0;
  border-bottom: solid 2px #d9d9d9;
  padding-bottom: 2em;
}
.bizContent:last-child {
  border: none;
}
figure > figcaption + img {
  display: block;
  width: 95%;
  margin: 1em auto;
}
@media screen and (min-width: 769px) {
  figure > figcaption + img {
    width: 80%;
  }
}
/* ボタン */
.buttonArea {
  text-align: center;
  margin-top: 2em;
  margin-bottom: 3em;
}
.btn {
  display: inline-block;
  position: relative;
  color: var(--color-blue);
  border: solid 1px currentColor;
  min-width: 240px;
  padding: 0 1.5em 0 1em;
  transition: all .5s;
}
.btn:hover {
  color: #FFFFFF;
  background-color: var(--color-blue);
}
.btn:not(.btn.exLink)::after {
  content: "";
  display: block;
  position: absolute;
  top: 0;
  bottom: 0;
  right: .5em;
  margin: auto;
  width: .5em;
  height: .5em;
  border-top: solid 1px var(--color-blue);
  border-right: solid 1px var(--color-blue);
  -webkit-transform: rotate(45deg);
  transform: rotate(45deg);
}
.btn:not(.btn.exLink):hover::after {
  border-top: solid 1px #FFFFFF;
  border-right: solid 1px #FFFFFF;
}
.btn.exLink::after {
  content: url(/files/img/so/common/ico_neww.png);
  margin-left: .5em;
}
/* ============================================================================================================================
    LINK
  */
.secLinkBox {
  padding: 0 30px 40px;
}
.secLinkBox h2 {
  font-size: 2.2rem;
  font-weight: 400;
  color: #000;
  margin-bottom: 25px;
  padding-left: 10px;
  border-left: 5px solid #2466af;
  line-height: 1.3;
}
.secLinkBox .secLinkList {
  display: flex;
  flex-wrap: wrap;
  margin: 0 auto;
}
.secLinkBox .secLinkList li {
  position: relative;
  border: 1px solid #2466af;
  margin: 0 2px 4px 2px;
  width: 100%;
}
.secLinkBox .secLinkList li.icon_win::after {
  font-family: ico;
  content: "\e901";
  font-size: 10px;
  position: absolute;
  top: 86%;
  right: 4px;
  transform: translateY(-50%);
  transition: all .3s;
  color: #2466AF;
  transition: all .3s;
}
.secLinkBox .secLinkList li img {
  width: 100%;
}
.secLinkBox .secLinkList li a:hover {
  opacity: 0.6;
  transition: 0.3s;
}
@media screen and (min-width: 1025px) {
  .secLinkBox {
    padding: 0 0 80px;
    width: 1000px;
    margin: 0 auto;
  }
  .secLinkBox .secLinkList {
    width: 890px;
  }
  .secLinkBox .secLinkList li {
    margin: 0 4px 8px 4px;
    width: 283px;
  }
  .secLinkBox .secLinkList li img {
    width: 280px;
  }
  .secLinkBox .secLinkList li::after {
    top: 51px;
  }
}
/* ============================================================================================================================
    TOPICS
  */
#biz-topics {
  margin-top: 10em;
}
.secDs .secDsInner {
  background: linear-gradient(90deg, #F4F5F7 0%, #F4F5F7 80%, rgba(255, 255, 255, 0) 80%, rgba(255, 255, 255, 0) 100%)
}
@media screen and (min-width: 769px) {
  .secDs .secDsInner {
    background: linear-gradient(90deg, #F4F5F7 0%, #F4F5F7 90%, rgba(255, 255, 255, 0) 90%, rgba(255, 255, 255, 0) 100%)
  }
}
.secDs .secDsTop {
  padding: 0 20px;
  transform: translateY(-65px)
}
.secDs .secDsTop .secDsTopInner {
  width: 100%;
  max-width: 1200px;
  margin: 0 auto;
  display: flex;
  justify-content: space-between;
  align-items: center;
  flex-wrap: wrap
}
@media screen and (min-width: 1025px) {
  .secDs .secDsTop .secDsTopInner {
    flex-wrap: nowrap
  }
}
.secDs .secDsTop .secDsTopInner .secDsTopLogo {
  width: 100%;
  display: flex;
  justify-content: flex-start
}
@media screen and (min-width: 1025px) {
  .secDs .secDsTop .secDsTopInner .secDsTopLogo {
    width: auto
  }
}
@media screen and (min-width: 1025px) {
  .secDs .secDsTop .secDsTopInner .secDsTopList {
    padding-left: 25px
  }
}
.secDs .secDsTop .secDsTopInner .secDsTopList ul {
  display: flex;
  justify-content: flex-start;
  flex-wrap: wrap;
  width: 100%;
  max-width: 630px
}
.secDs .secDsTop .secDsTopInner .secDsTopList ul li {
  margin: 0 10px 10px 10px;
  font-size: 1.5rem;
  letter-spacing: .025em;
  margin-bottom: 15px
}
@media screen and (min-width: 1025px) {
  .secDs .secDsTop .secDsTopInner .secDsTopList ul li {
    margin: 0 25px 10px;
    font-size: 1.7rem
  }
}
.secDs .secDsTop .secDsTopInner .secDsTopList ul li a {
  text-decoration: underline;
  transition: all .3s
}
@media screen and (min-width: 1025px) {
  .secDs .secDsTop .secDsTopInner .secDsTopList ul li a:hover {
    text-decoration: none;
    color: #0066BB
  }
}
.secDs .secDsList {
  transform: translateY(-70px);
  overflow: hidden;
  padding: 0 20px 0;
}
.secDs .secDsList .swiper-container {
  width: 100%;
  max-width: 1200px;
  margin: 20px auto 0;
  overflow: visible !important
}
@media screen and (min-width: 769px) {
  .secDs .secDsList .swiper-container {
    margin-top: 0;
  }
}
.secDs .secDsList .swiper-container .swiper-wrapper {
  padding: 70px 0 30px;
  display: flex;
  justify-content: flex-start
}
.secDs .secDsList .swiper-container .swiper-wrapper .swiper-slide {
  display: flex;
  background: #fff;
  height: auto;
  box-shadow: 10px 10px 40px rgba(0, 0, 0, 0.1);
  width: 320px
}
@media screen and (min-width: 769px) {
  .secDs .secDsList .swiper-container .swiper-wrapper .swiper-slide {
    width: 350px
  }
}
@media screen and (min-width: 1281px) {
  .secDs .secDsList .swiper-container .swiper-wrapper .swiper-slide {
    width: 480px
  }
}
.secDs .secDsList .swiper-container .swiper-wrapper .swiper-slide a {
  height: 100%;
  display: block;
  transition: all .3s
}
.secDs .secDsList .swiper-container .swiper-wrapper .swiper-slide a .secDsListBox .secDsListImg {
  height: 0;
  width: 100%;
  padding-bottom: 60%;
  position: relative;
  overflow: hidden
}
.secDs .secDsList .swiper-container .swiper-wrapper .swiper-slide a .secDsListBox .secDsListImg figure {
  display: block;
  height: 100%;
  width: 100%
}
.secDs .secDsList .swiper-container .swiper-wrapper .swiper-slide a .secDsListBox .secDsListImg figure img {
  width: 100%;
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%) scale(1, 1);
  object-fit: cover;
  font-family: 'object-fit: cover;';
  height: 100%;
  transition: all .2s
}
.secDs .secDsList .swiper-container .swiper-wrapper .swiper-slide a .secDsListBox .secDsListCont {
  padding: 30px
}
.secDs .secDsList .swiper-container .swiper-wrapper .swiper-slide a .secDsListBox .secDsListCont .secDsListContDate {
  color: #8C8D90;
  font-size: 1.2rem;
  font-family: "Roboto", sans-serif;
  margin-bottom: 5px
}
@media screen and (min-width: 769px) {
  .secDs .secDsList .swiper-container .swiper-wrapper .swiper-slide a .secDsListBox .secDsListCont .secDsListContDate {
    font-size: 1.4rem
  }
}
.secDs .secDsList .swiper-container .swiper-wrapper .swiper-slide a .secDsListBox .secDsListCont h2 {
  font-size: 1.5rem;
  margin-bottom: 15px;
  line-height: 1.75
}
@media screen and (min-width: 769px) {
  .secDs .secDsList .swiper-container .swiper-wrapper .swiper-slide a .secDsListBox .secDsListCont h2 {
    font-size: 1.8rem
  }
}
.secDs .secDsList .swiper-container .swiper-wrapper .swiper-slide a .secDsListBox .secDsListCont ul {
  display: flex;
  justify-content: flex-start;
  flex-wrap: wrap;
  width: 260px
}
@media screen and (min-width: 769px) {
  .secDs .secDsList .swiper-container .swiper-wrapper .swiper-slide a .secDsListBox .secDsListCont ul {
    width: 290px
  }
}
@media screen and (min-width: 1281px) {
  .secDs .secDsList .swiper-container .swiper-wrapper .swiper-slide a .secDsListBox .secDsListCont ul {
    width: 420px
  }
}
.secDs .secDsList .swiper-container .swiper-wrapper .swiper-slide a .secDsListBox .secDsListCont ul li {
  margin: 0 2px 2px 0;
  color: #0066BB;
  font-size: 1.2rem;
  letter-spacing: .025em;
  background: #E9F0F5;
  padding: 2px 5px
}
@media screen and (min-width: 1025px) {
  .secDs .secDsList .swiper-container .swiper-wrapper .swiper-slide a:hover {
    color: #0066BB
  }
  .secDs .secDsList .swiper-container .swiper-wrapper .swiper-slide a:hover .secDsListBox .secDsListImg img {
    transform: translate(-50%, -50%) scale(1.1, 1.1)
  }
}
.secDs .secDsTopLogoBox {
  margin-bottom: 30px;
  width: 100%;
  max-width: 1200px;
  margin: 0 auto;
  display: flex;
  justify-content: center
}
@media screen and (min-width: 1025px) {
  .secDs .secDsTopLogoBox {
    margin-bottom: 0
  }
}
.secDs .secDsTopLogoBox h2 a {
  background: none;
  width: inherit;
  height: inherit;
  transition: all .2s
}
.secDs .secDsTopLogoBox h2 a:after {
  content: none
}
.secDs .secDsTopLogoBox h2 a:hover {
  background: none;
  opacity: .7
}
.secDs .secDsTopLogoBox h2 img {
  width: 100%;
  max-width: 300px
}
.secDs .secDsTopLogoBox a {
  transform: translateY(-40px);
  position: relative;
  font-family: "Roboto", sans-serif;
  font-weight: 500;
  width: 260px;
  height: 80px;
  background: #000;
  color: #fff;
  display: flex;
  justify-content: center;
  align-items: center;
  text-align: center;
  flex-wrap: wrap;
  border-radius: 40px;
  line-height: 1.5;
  transition: all .3s
}
@media screen and (min-width: 1025px) {
  .secDs .secDsTopLogoBox a {
    line-height: 1.5
  }
}
.secDs .secDsTopLogoBox a:after {
  content: "→";
  position: absolute;
  top: 50%;
  right: 15px;
  transform: translate(-50%, -50%);
  transition: all .3s;
  font-size: 2rem;
  font-weight: 500
}
@media screen and (min-width: 1025px) {
  .secDs .secDsTopLogoBox a:hover {
    background: #0066BB
  }
  .secDs .secDsTopLogoBox a:hover:after {
    right: 10px
  }
}
.swiper-button-next, .swiper-button-prev {
  position: absolute;
  display: block;
  z-index: 10;
  margin-top: 0;
  width: 52px;
  height: 52px;
  line-height: 48px;
  text-align: center;
  border-radius: 50%;
  border: 2px solid #000;
  background: none;
  top: inherit;
  right: inherit;
  top: 0;
  left: 0;
  transition: all .3s;
  font-weight: 500;
  -webkit-tap-highlight-color: rgba(0, 0, 0, 0);
  cursor: pointer
}
.swiper-button-next {
  left: 60px
}
.swiper-button-next.swiper-button-disabled, .swiper-button-prev.swiper-button-disabled {
  opacity: .35;
  cursor: auto;
  pointer-events: none
}
.swiper-button-prev::after, .swiper-button-next::after {
  position: relative;
  color: #000;
  opacity: 1;
  font-style: normal;
  font-weight: 900;
  font-size: 1.8rem;
  transition: all .3s
}
.swiper-button-prev::after {
  content: "←"
}
.swiper-button-next::after {
  content: "→"
}
@media screen and (min-width: 1025px) {
  .swiper-button-prev:hover, .swiper-button-next:hover {
    border-color: #0066BB
  }
  .swiper-button-prev:hover:after, .swiper-button-next:hover:after {
    color: #0066BB
  }
}
.scrollbarCover {
  padding: 0 0 0 130px
}
@media screen and (min-width: 1025px) {
  .scrollbarCover {
    padding: 0 130px
  }
}
.swiper-container-horizontal .swiper-scrollbar {
  height: 2px;
  background: #fff;
  bottom: -25px;
  border-bottom: 25px
}
.swiper-scrollbar-drag {
  background: #000
}
*:focus {
  outline: none
}
.secDs .secDsList .swiper-container .swiper-wrapper .swiper-slide .secDsListBox a {
  height: auto;
}
.secDs .secDsList .swiper-container .swiper-wrapper .swiper-slide .secDsListBox .secDsListImg {
  height: 0;
  width: 100%;
  padding-bottom: 60%;
  position: relative;
  overflow: hidden
}
.secDs .secDsList .swiper-container .swiper-wrapper .swiper-slide .secDsListBox .secDsListImg figure {
  display: block;
  height: 100%;
  width: 100%
}
.secDs .secDsList .swiper-container .swiper-wrapper .swiper-slide .secDsListBox .secDsListImg figure img {
  width: 100%;
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%) scale(1, 1);
  object-fit: cover;
  font-family: 'object-fit: cover;';
  height: 100%;
  transition: all .2s
}
.secDs .secDsList .swiper-container .swiper-wrapper .swiper-slide .secDsListBox .secDsListCont {
  padding: 30px
}
.secDs .secDsList .swiper-container .swiper-wrapper .swiper-slide .secDsListBox .secDsListCont .secDsListContDate {
  color: #8C8D90;
  font-size: 1.2rem;
  font-family: "Roboto", sans-serif;
  margin-bottom: 5px
}
@media screen and (min-width: 769px) {
  .secDs .secDsList .swiper-container .swiper-wrapper .swiper-slide .secDsListBox .secDsListCont .secDsListContDate {
    font-size: 1.4rem
  }
}
.secDs .secDsList .swiper-container .swiper-wrapper .swiper-slide .secDsListBox .secDsListCont h2 {
  font-size: 1.5rem;
  margin-bottom: 15px;
  line-height: 1.75
}
@media screen and (min-width: 769px) {
  .secDs .secDsList .swiper-container .swiper-wrapper .swiper-slide .secDsListBox .secDsListCont h2 {
    font-size: 1.8rem
  }
}
.secDs .secDsList .swiper-container .swiper-wrapper .swiper-slide .secDsListBox .secDsListCont ul {
  display: flex;
  justify-content: flex-start;
  flex-wrap: wrap;
  width: 260px
}
@media screen and (min-width: 769px) {
  .secDs .secDsList .swiper-container .swiper-wrapper .swiper-slide .secDsListBox .secDsListCont ul {
    width: 290px
  }
}
@media screen and (min-width: 1281px) {
  .secDs .secDsList .swiper-container .swiper-wrapper .swiper-slide .secDsListBox .secDsListCont ul {
    width: 420px
  }
}
.secDs .secDsList .swiper-container .swiper-wrapper .swiper-slide .secDsListBox .secDsListCont ul li {
  margin: 0 2px 2px 0;
  color: #0066BB;
  font-size: 1.2rem;
  letter-spacing: .025em;
  background: #E9F0F5;
  padding: 2px 5px
}
.secDs .secDsList .swiper-container .swiper-wrapper .swiper-slide .secDsListBox .secDsListCont ul li a {
  color: #0066BB;
}
@media screen and (min-width: 1025px) {
  .secDs .secDsList .swiper-container .swiper-wrapper .swiper-slide .secDsListBox:hover .secDsListCont h2 {
    color: #0066BB;
  }
  .secDs .secDsList .swiper-container .swiper-wrapper .swiper-slide .secDsListBox:hover .secDsListImg img {
    transform: translate(-50%, -50%) scale(1.1, 1.1)
  }
}