@charset "UTF-8";
/* =======================================
  FAST FACTS ELEMENTS
======================================= */
/*-----------------------------------------
  ffField
-----------------------------------------*/
.ffField .imgBox {
  margin-top: 40px;
}
.ffField .headingGroup {
  margin-bottom: 56px;
}
@media (max-width: 767px) {
  .ffField .headingGroup {
    margin-bottom: 24px;
  }
}

/*-----------------------------------------
  ffKeyVisual
-----------------------------------------*/
.ffKeyVisualTtl {
  margin: 0;
}

/*-----------------------------------------
  ivLocalNav
-----------------------------------------*/
@media only screen and (max-width: 767px) {
  .ivLocalNav {
    padding: 40px 0 20px;
  }
}
.ivLocalNav .ivLocalNavList {
  width: -moz-fit-content;
  width: fit-content;
}
@media only screen and (max-width: 767px) {
  .ivLocalNav .ivLocalNavList {
    width: 100%;
  }
}
@media only screen and (max-width: 767px) {
  .ivLocalNav .ivLocalNavitem {
    width: 33.3333333333%;
  }
}
.ivLocalNav .ivLocalNavitem a {
  width: 320px;
  padding: 16px 0;
  font-size: var(--font-24);
}
@media only screen and (max-width: 767px) {
  .ivLocalNav .ivLocalNavitem a {
    width: auto;
    font-size: var(--font-16);
  }
}

/*-----------------------------------------
  glanceField
-----------------------------------------*/
.glanceField {
  padding: 140px 0 300px;
  background: #f4f4f4;
}
@media only screen and (max-width: 767px) {
  .glanceField {
    padding: 80px 0 132px;
  }
}
.glanceField .glanceNote {
  text-align: right;
  font-size: var(--font-14);
  letter-spacing: 0.1em;
}
.glanceField .glanceList {
  margin-top: 16px;
  display: flex;
  flex-wrap: wrap;
  gap: 30px;
}
@media only screen and (max-width: 767px) {
  .glanceField .glanceList {
    gap: 12px;
  }
}
.glanceField .glanceItem {
  width: calc((100% - 60px) / 3);
  text-align: center;
}
@media only screen and (max-width: 767px) {
  .glanceField .glanceItem {
    width: 100%;
  }
}
.glanceField .glanceItem:nth-child(3n+2) {
  transform: translateY(30px);
}
@media only screen and (max-width: 767px) {
  .glanceField .glanceItem:nth-child(3n+2) {
    transform: none;
  }
}
.glanceField .glanceItem.sales {
  background: #fff url(/english/company/financial/individual/library/fast_facts/img/glance_sales_img.png) bottom 11px left 13px no-repeat;
  background-size: 141px;
}
.glanceField .glanceItem.sales .glanceIcon {
  background: rgb(238, 242, 247) url(/english/company/financial/individual/library/fast_facts/img/glance_sales_icon.svg) center center no-repeat;
}
.glanceField .glanceItem.profit {
  background: #fff url(/english/company/financial/individual/library/fast_facts/img/glance_profit_img.png) bottom left 15px no-repeat;
  background-size: 156px;
}
.glanceField .glanceItem.profit .glanceIcon {
  background: rgba(67, 157, 132, 0.1) url(/english/company/financial/individual/library/fast_facts/img/glance_profit_icon.svg) center center no-repeat;
}
.glanceField .glanceItem.dividend {
  background: #fff url(/english/company/financial/individual/library/fast_facts/img/glance_dividend_img.png) bottom left 5px no-repeat;
  background-size: 129px;
}
.glanceField .glanceItem.dividend .glanceIcon {
  background: rgba(192, 63, 63, 0.1) url(/english/company/financial/individual/library/fast_facts/img/glance_dividend_icon.svg) center center no-repeat;
}
.glanceField .glanceItem.growth {
  background: #fff url(/english/company/financial/individual/library/fast_facts/img/glance_growth_img.png) bottom left no-repeat;
  background-size: 209px;
}
.glanceField .glanceItem.growth .glanceIcon {
  background: rgba(220, 190, 93, 0.1) url(/english/company/financial/individual/library/fast_facts/img/glance_growth_icon.svg) center center no-repeat;
}
.glanceField .glanceItem.international {
  background: #fff url(/english/company/financial/individual/library/fast_facts/img/glance_international_img.png) bottom 14px center no-repeat;
  background-size: 100%;
}
.glanceField .glanceItem.international .glanceIcon {
  background: rgb(238, 242, 247) url(/english/company/financial/individual/library/fast_facts/img/glance_international_icon.svg) center center no-repeat;
}
.glanceField .glanceItem.build {
  background: #fff url(/english/company/financial/individual/library/fast_facts/img/glance_build_img.png) bottom left no-repeat;
  background-size: 100%;
}
.glanceField .glanceItem.build .glanceIcon {
  background: rgb(236, 245, 243) url(/english/company/financial/individual/library/fast_facts/img/glance_build_icon.svg) center center no-repeat;
}
.glanceField .glanceItem .glanceInner {
  height: 100%;
  padding: 20px 16px 64px;
  position: relative;
  display: block;
}
@media only screen and (max-width: 767px) {
  .glanceField .glanceItem .glanceInner {
    min-height: 310px;
    padding: 20px 16px 56px;
  }
}
@media (any-hover: hover) {
  .glanceField .glanceItem a.glanceInner:hover {
    background-size: 100% var(--line-size), var(--line-size) 100%, 100% var(--line-size), var(--line-size) 100%, 100% var(--line-size), var(--line-size) 100%, 100% var(--line-size), var(--line-size) 100%;
  }
}
.glanceField .glanceItem .glanceIcon {
  width: 88px;
  height: 88px;
  display: block;
  margin-inline: auto;
  border-radius: 100vmax;
}
@media only screen and (max-width: 767px) {
  .glanceField .glanceItem .glanceIcon {
    width: 84px;
    height: 84px;
  }
}
.glanceField .glanceItem .glanceIcon.sales {
  background: #eef2f7 url(/english/company/financial/individual/library/fast_facts/img/glance_sales_icon.svg) center center no-repeat;
}
.glanceField .glanceItem .glanceTtl {
  margin-top: 12px;
  padding-bottom: 8px;
  font-size: var(--font-22);
  font-weight: 700;
  line-height: 1.4;
  letter-spacing: 0;
}
@media only screen and (max-width: 767px) {
  .glanceField .glanceItem .glanceTtl {
    margin-top: 16px;
  }
}
.glanceField .glanceItem .glanceTtl .smallTtl {
  font-size: var(--font-14);
  line-height: 1;
}
.glanceField .glanceItem .glanceResult {
  margin-top: 10px;
  font-size: 4rem;
  font-weight: 700;
  font-family: "arial", sans-serif;
  line-height: 1;
}
.glanceField .glanceItem .glanceResult .unit {
  margin-inline: 4px;
  font-size: var(--font-18);
  font-weight: 500;
  font-family: "游ゴシック体", "YuGothic", "游ゴシック", "Yu Gothic", "Hiragino Kaku Gothic ProN", "Hiragino Sans", "meiryo", "Helvetica Neue", "arial", sans-serif;
  letter-spacing: 0;
}
.glanceField .glanceItem .glanceResult .unit.symbol {
  font-size: var(--font-26);
}
.glanceField .glanceItem .glanceResult .resultNote {
  margin-top: 4px;
  font-size: var(--font-14);
  letter-spacing: 0;
}
.glanceField .glanceItem .glanceLink {
  position: absolute;
  right: 16px;
  bottom: 8px;
  padding-left: 28px;
  font-size: var(--font-14);
  letter-spacing: 0.1em;
}
.glanceField .glanceItem .glanceLink .iconGlance {
  width: 20px;
  height: 20px;
  position: absolute;
  top: 50%;
  left: 0;
  translate: 0 -50%;
}
.glanceField .glanceItem .glanceLink .iconGlance::before {
  content: "";
  width: 20px;
  height: 20px;
  display: block;
  background: #242424 url(/english/company/financial/individual/library/common/img/arrow_r.svg) center center no-repeat;
}

/*-----------------------------------------
  ffImg
-----------------------------------------*/
.ffImg {
  display: block;
  margin-top: -154px;
}
@media only screen and (max-width: 767px) {
  .ffImg {
    margin-top: -72px;
  }
}

/*-----------------------------------------
  businessField
-----------------------------------------*/
.businessField {
  padding: 140px 0 80px;
  background: #ffffff;
  overflow: hidden;
}
@media only screen and (max-width: 767px) {
  .businessField {
    padding: 80px 0 80px;
  }
}
.businessField .businessTtl {
  margin-top: 64px;
  font-weight: 700;
  font-size: var(--font-22);
}
.businessField .btnList {
  margin-top: 64px;
}

/*-----------------------------------------
  shareholderField
-----------------------------------------*/
.shareholderField {
  padding: 140px 0 96px;
  background: #f4f4f4;
}
@media only screen and (max-width: 767px) {
  .shareholderField {
    padding: 80px 0 88px;
  }
}
.shareholderField .shareholderTtl {
  margin-top: 56px;
  font-weight: 700;
  font-size: var(--font-26);
}
@media only screen and (max-width: 767px) {
  .shareholderField .shareholderTtl {
    margin-top: 24px;
    font-size: var(--font-22);
  }
}
.shareholderField .textImgSet {
  margin-top: 16px;
  display: flex;
  gap: 24px 40px;
}
@media only screen and (max-width: 767px) {
  .shareholderField .textImgSet {
    flex-direction: column;
  }
}
.shareholderField .textImgSet + .textImgSet {
  margin-top: 30px;
}
.shareholderField .textImgSet > .pbNested {
  display: flex;
}
@media only screen and (max-width: 767px) {
  .shareholderField .textImgSet.spReverse {
    flex-direction: column-reverse;
  }
}
.shareholderField .textImgSet .textArea .plainText {
  margin-top: 0;
  line-height: 1.8;
}
@media only screen and (max-width: 767px) {
  .shareholderField .textImgSet .textArea .plainText {
    line-height: 1.9;
  }
}
.shareholderField .textImgSet .textArea .plainText + .plainText {
  margin-top: 32px;
}
@media only screen and (max-width: 767px) {
  .shareholderField .textImgSet .textArea .btnArea {
    text-align: center;
  }
}
.shareholderField .boxContent {
  margin-top: 64px;
  padding: 40px 40px 60px;
  background-color: #fff;
}
@media only screen and (max-width: 767px) {
  .shareholderField .boxContent {
    margin-top: 24px;
    padding: 32px 16px 40px;
  }
}
.shareholderField .boxContent .boxContentTtl {
  width: -moz-fit-content;
  width: fit-content;
  margin-inline: auto;
  font-size: var(--font-22);
  font-weight: 700;
}
.shareholderField .boxContent .btnArea.businessReport {
  margin-top: 24px;
  text-align: center;
}
.shareholderField .eventWrap {
  margin-top: 24px;
  display: flex;
  gap: 24px 80px;
}
@media only screen and (max-width: 767px) {
  .shareholderField .eventWrap {
    margin-top: 16px;
    gap: 32px;
    flex-direction: column;
  }
}
.shareholderField .eventWrap .eventArea {
  width: calc(100% - 440px - 80px);
}
@media (max-width: 767px) {
  .shareholderField .eventWrap .eventArea {
    width: 100%;
  }
}
.shareholderField .eventWrap .eventArea .eventList {
  margin-top: -16px;
}
.shareholderField .eventWrap .eventArea .eventList li {
  padding: 12px 0;
  display: flex;
  gap: 16px;
  border-bottom: 1px solid #242424;
}
@media (max-width: 767px) {
  .shareholderField .eventWrap .eventArea .eventList li {
    flex-direction: column;
    gap: 0;
  }
}
.shareholderField .eventWrap .eventArea .date {
  width: 150px;
  margin-top: 2px;
  flex-shrink: 0;
  font-family: "arial", sans-serif;
  font-weight: 400;
  font-size: var(--font-14);
  letter-spacing: 0.04em;
}
@media (max-width: 767px) {
  .shareholderField .eventWrap .eventArea .date {
    width: auto;
  }
}
.shareholderField .eventWrap .eventArea .eventTtl {
  font-size: var(--font-18);
  line-height: 1.8;
}
@media only screen and (max-width: 767px) {
  .shareholderField .eventWrap .eventArea .btnArea {
    text-align: center;
  }
}

/*-----------------------------------------
  tab
-----------------------------------------*/
[hidden]:not([hidden=until-found]) {
  display: none;
}

.tabPanels > [role=tabpanel][hidden=until-found] {
  display: revert;
}

.tabBtns[role=tablist] {
  display: flex;
  gap: 2px;
}
@media only screen and (max-width: 767px) {
  .tabBtns[role=tablist] {
    margin-bottom: 24px;
    flex-wrap: wrap;
  }
}

.tabBtn[role=tab] {
  min-height: 120px;
  padding-top: 64px;
  position: relative;
  color: #242424;
  font-size: var(--font-18);
  font-weight: 700;
  line-height: 1.3;
  flex: 1;
  border: none;
  border-top: 3px solid #d8d8d8;
  cursor: pointer;
  background-color: #f4f4f4;
  transition: all 0.3s ease-out;
}
.tabBtn[role=tab]:focus:not(:focus-visible) {
  outline: 0 !important;
}
@media only screen and (max-width: 767px) {
  .tabBtn[role=tab] {
    width: calc((100% - 2px) / 2);
    min-height: 100px;
    padding-top: 48px;
    font-size: var(--font-16);
    flex: auto;
  }
}
@media (any-hover: hover) {
  .tabBtn[role=tab]:hover {
    border-top: 3px solid #242424;
  }
}
.tabBtn[role=tab] .iconBusiness {
  width: 56px;
  height: 48px;
  position: absolute;
  top: 16px;
  left: 50%;
  transform: translateX(-50%);
  -webkit-mask-size: 56px;
          mask-size: 56px;
  -webkit-mask-position: center;
          mask-position: center;
  -webkit-mask-repeat: no-repeat;
          mask-repeat: no-repeat;
  background-color: rgba(36, 36, 36, 0.4);
  transition: background-color 0.3s ease-out;
}
@media only screen and (max-width: 767px) {
  .tabBtn[role=tab] .iconBusiness {
    top: 10px;
    -webkit-mask-size: 40px;
            mask-size: 40px;
  }
}
.tabBtn[role=tab].tabContract .iconBusiness {
  -webkit-mask-image: url(/english/company/financial/individual/library/fast_facts/img/icon_contract.svg);
          mask-image: url(/english/company/financial/individual/library/fast_facts/img/icon_contract.svg);
}
.tabBtn[role=tab].tabStock .iconBusiness {
  -webkit-mask-image: url(/english/company/financial/individual/library/fast_facts/img/icon_stock.svg);
          mask-image: url(/english/company/financial/individual/library/fast_facts/img/icon_stock.svg);
}
.tabBtn[role=tab].tabDevelopment .iconBusiness {
  -webkit-mask-image: url(/english/company/financial/individual/library/fast_facts/img/icon_development.svg);
          mask-image: url(/english/company/financial/individual/library/fast_facts/img/icon_development.svg);
}
.tabBtn[role=tab].tabInternational .iconBusiness {
  -webkit-mask-image: url(/english/company/financial/individual/library/fast_facts/img/icon_international.svg);
          mask-image: url(/english/company/financial/individual/library/fast_facts/img/icon_international.svg);
}

.tabBtn[role=tab][aria-selected=true] {
  background-color: #fff;
  border-top: 3px solid #242424;
}
.tabBtn[role=tab][aria-selected=true].tabContract .iconBusiness {
  background-color: #72CEAE;
}
.tabBtn[role=tab][aria-selected=true].tabStock .iconBusiness {
  background-color: #55AADB;
}
.tabBtn[role=tab][aria-selected=true].tabDevelopment .iconBusiness {
  background-color: #F2968F;
}
.tabBtn[role=tab][aria-selected=true].tabInternational .iconBusiness {
  background-color: #FCC228;
}

.tabs {
  margin-top: 32px;
  border: 1px solid #d8d8d8;
}
@media only screen and (max-width: 767px) {
  .tabs {
    margin-top: 28px;
  }
}
.tabs .tabPanel[role=tabpanel]:focus:not(:focus-visible) {
  outline: 0 !important;
}
.tabs .tabpanelInner {
  padding: 40px;
  font-size: 1.6rem;
  display: flex;
  gap: 24px 40px;
}
@media only screen and (max-width: 767px) {
  .tabs .tabpanelInner {
    padding: 0;
    gap: 0;
    flex-direction: column-reverse;
  }
}
.tabs .contentArea {
  width: 480px;
}
@media only screen and (max-width: 767px) {
  .tabs .contentArea {
    width: 100%;
    padding: 0 16px;
  }
}
.tabs .businessDetail a {
  display: block;
  padding: 25px 48px 25px 18px;
  border-bottom: 1px solid #d8d8d8;
  position: relative;
}
@media (any-hover: hover) {
  .tabs .businessDetail a:hover .iconDepartmentLink {
    right: -4px;
  }
}
@media only screen and (max-width: 767px) {
  .tabs .businessDetail a {
    padding: 24px 24px 24px 18px;
  }
  .tabs .businessDetail a:first-child {
    margin-top: 24px;
    padding: 0 24px 24px 18px;
  }
  .tabs .businessDetail a:last-child {
    border-bottom: none;
  }
}
.tabs .businessDetail a .iconDepartmentLink {
  position: absolute;
  top: 50%;
  right: 0;
  transform: translateY(-50%);
  transition: right 0.3s ease-out;
}
.tabs .businessDetail a .iconDepartmentLink::before {
  content: "";
  width: 30px;
  height: 30px;
  display: block;
  font-weight: 400;
  background: #242424 url(/english/company/financial/individual/library/common/img/arrow_r.svg) center center no-repeat;
  background-size: 13px;
  transition: background-color 0.3s ease-out;
}
@media only screen and (max-width: 767px) {
  .tabs .businessDetail a .iconDepartmentLink::before {
    width: 20px;
    height: 20px;
    background-size: 10px;
  }
}
.tabs .businessDetail .departmentName {
  font-size: var(--font-18);
  font-weight: 700;
  line-height: 1.5;
  position: relative;
}
.tabs .businessDetail .departmentName::before {
  content: "";
  width: 4px;
  height: 4px;
  display: block;
  position: absolute;
  top: 0.7em;
  left: -12px;
  transform: translateY(-50%);
  border-radius: 100vmax;
}
.tabs .businessDetail .departmentDetail {
  margin-top: 8px;
  font-size: var(--font-16);
  line-height: 1.8;
}
@media only screen and (max-width: 767px) {
  .tabs .businessDetail .departmentDetail {
    margin-top: 10px;
  }
}
.tabs {
  /* panelInternational */
}
.tabs .panelInternational .plainText {
  font-size: var(--font-16);
}
.tabs .panelInternational .plainText + .plainText {
  margin-top: 12px;
}
.tabs .panelInternational .plainText a {
  margin-top: 0;
  display: inline-block;
  padding: 0 48px 0 0;
  border-bottom: 0;
}
.tabs .panelInternational .countryInfoList {
  margin-top: 48px;
  display: flex;
}
@media only screen and (max-width: 767px) {
  .tabs .panelInternational .countryInfoList {
    margin: 24px 0;
    flex-direction: column;
    gap: 16px;
  }
}
.tabs .panelInternational .countryInfoItem {
  flex: 1;
}
.tabs .panelInternational .countryInfo {
  display: flex;
  flex-direction: column;
}
.tabs .panelInternational .countryName {
  display: flex;
  flex-direction: column;
  font-size: var(--font-16);
  font-weight: 700;
}
@media only screen and (max-width: 767px) {
  .tabs .panelInternational .countryName {
    flex-direction: row;
    align-items: center;
    gap: 0 16px;
    line-height: 1.2;
  }
}
.tabs .panelInternational .countryNote {
  font-size: var(--font-12);
  font-weight: 500;
}
@media only screen and (max-width: 767px) {
  .tabs .panelInternational .countryNote {
    display: contents;
  }
}
.tabs .panelInternational .countryFlag {
  width: 64px;
  margin-bottom: 12px;
  border: 1px solid #d8d8d8;
  border-radius: 100vmax;
}
@media only screen and (max-width: 767px) {
  .tabs .panelInternational .countryFlag {
    margin-bottom: 0;
  }
}
.tabs .panelInternational .worksArea {
  margin-top: 8px;
}
.tabs .panelInternational .worksItem {
  margin-top: 6px;
  padding-left: 12px;
  font-size: var(--font-14);
  line-height: 1.7;
  position: relative;
}
.tabs .panelInternational .worksItem::before {
  content: "";
  width: 3px;
  height: 3px;
  display: block;
  position: absolute;
  top: 0.8em;
  left: 4px;
  transform: translateY(-50%);
  background: #FCC228;
  border-radius: 100vmax;
}
.tabs {
  /* department color */
}
@media (any-hover: hover) {
  .tabs .panelContract .businessDetail a:hover .iconDepartmentLink::before {
    background-color: #72CEAE;
  }
}
.tabs .panelContract .businessDetail .departmentName::before {
  background: #72CEAE;
}
@media (any-hover: hover) {
  .tabs .panelStock .businessDetail a:hover .iconDepartmentLink::before {
    background-color: #55AADB;
  }
}
.tabs .panelStock .businessDetail .departmentName::before {
  background: #55AADB;
}
@media (any-hover: hover) {
  .tabs .panelDevelopment .businessDetail a:hover .iconDepartmentLink::before {
    background-color: #F2968F;
  }
}
.tabs .panelDevelopment .businessDetail .departmentName::before {
  background: #F2968F;
}
@media (any-hover: hover) {
  .tabs .panelInternational .businessDetail a:hover .iconDepartmentLink::before {
    background-color: #FCC228;
  }
}
.tabs .panelInternational .businessDetail .departmentName::before {
  background: #FCC228;
}
.tabs .sliderArea {
  width: 560px;
  flex-shrink: 0;
}
@media only screen and (max-width: 767px) {
  .tabs .sliderArea {
    width: 100%;
  }
}

/*-----------------------------------------
  splide
-----------------------------------------*/
.controlArea {
  margin-top: 12px;
  display: flex;
  justify-content: center;
  /* align-items: center; */
  gap: 20px;
}
.controlArea .splide__pagination {
  gap: 12px;
}
.controlArea .splide__pagination li {
  display: flex;
  font-size: 1rem;
}
.controlArea .splide__pagination .splide__pagination__page {
  width: 8px;
  height: 8px;
  padding: 0;
  position: relative;
  background: #d8d8d8;
  border: none;
  border-radius: 100vmax;
  transition: all 0.3s ease-out;
}
.controlArea .splide__pagination .splide__pagination__page::before {
  content: "";
  width: 24px;
  height: 24px;
  position: absolute;
  top: 50%;
  left: 50%;
  translate: -50% -50%;
}
.controlArea .splide__pagination .splide__pagination__page.is-active {
  background: #83838c;
}
@media (any-hover: hover) {
  .controlArea .splide__pagination .splide__pagination__page:hover {
    background: #83838c;
  }
}
.controlArea .splide__toggle {
  width: 28px;
  height: 28px;
  position: relative;
  border: none;
  border-radius: 100vmax;
  transition: opacity 0.3s ease-out;
}
@media (any-hover: hover) {
  .controlArea .splide__toggle:hover {
    opacity: 0.8;
  }
}
.controlArea .splide__toggle .iconPlay,
.controlArea .splide__toggle .iconPause {
  width: 28px;
  height: 28px;
  position: absolute;
  top: 50%;
  left: 50%;
  translate: -50% -50%;
}
.controlArea .splide__toggle .iconPlay::before,
.controlArea .splide__toggle .iconPause::before {
  content: "";
  width: 28px;
  height: 28px;
  position: absolute;
  top: 50%;
  left: 50%;
  translate: -50% -50%;
  background-size: 100%;
}
.controlArea .splide__toggle .iconPlay::before {
  background: url(/english/company/financial/individual/library/fast_facts/img/btn_play.svg) center center no-repeat;
}
.controlArea .splide__toggle .iconPause::before {
  background: url(/english/company/financial/individual/library/fast_facts/img/btn_pause.svg) center center no-repeat;
}

/*-----------------------------------------
  splide for CMS Editor
-----------------------------------------*/
.is-cms-admin .splide {
  visibility: visible;
}
.is-cms-admin .splide__track {
  overflow: visible;
}
.is-cms-admin .splide__list {
  display: block;
  transform: none !important;
}
.is-cms-admin .splide__slide {
  width: auto !important;
  margin-bottom: 16px;
}
.is-cms-admin .controlArea {
  display: none;
}

/*-----------------------------------------
  localSearchNavi
-----------------------------------------*//*# sourceMappingURL=fast_facts.css.map */