@charset "UTF-8";
.hero_type_groups {
  background-image: url(/groups/images/hero_img.jpg);
  background-size: cover;
  background-position-y: 30%;
  width: 100%;
  border-bottom: none;
}
.hero-lead__title {
  font-family: "游明朝", "Yu Mincho", "Hiragino Mincho ProN", NotoSerifJapanese, serif;
  -webkit-font-feature-settings: "palt";
  font-feature-settings: "palt";
  letter-spacing: 0.06em;
  font-weight: 500;
  line-height: 1.3;
  color: #fff;
  font-size: 60px;
  font-weight: normal;
  text-shadow: 0px 3px 10px rgba(0,0,0,.3);
}
.hero-lead__title .font-l{ 
  font-size: 90px;
}
.hero-lead__title .font-m{ 
  font-size: 80px;
}
.hero { height: 720px; }
.hero_type_ir { height: 560px; }
.header-nav__item{
  margin-bottom: 0;
  padding-bottom: 20px;
}
.header__inner_type_under a { 
  color: #fff !important; 
  padding-bottom: 20px;
  display: inline-block;
}
.header__inner_type_under a::after{
  bottom:0;
}
.header__inner_type_under{
  padding-bottom: 0;
}
.header-logo-mark {
  margin-right: 40px;
}
.hero_type_groups{
  position: relative;
}
.hero-lead {
  transform: translateY(-50%);
  min-width: 1104px;
  max-width: 1280px;
  padding: 0 40px;
  margin:0 auto;
  position: absolute;
  top:50%;
  left:0;
  right:0;
  box-sizing: border-box;
}
.hero_type_ir > .hero__inner > .hero-lead { transform: none;}
.read_text{
  padding-bottom: 15px;
  position: relative;
}
.read_text:before{
  content:"";
  display: block;
  min-width: 1104px;
  max-width: 1280px;
  height: 75px;
  margin:0 auto;
  box-sizing: border-box;
  background: #fff;
  position: absolute;
  top:-75px;
  left:0;
  right:0;
}
.read_text-inner{
  transform: translateY(-35px);
}
.read_text p:nth-child(1){
  font-size: 30px;
  margin-bottom: 30px;
}
.read_text p:nth-child(2){
  font-size: 26px;
  font-family: "游明朝", "Yu Mincho", "Hiragino Mincho ProN", NotoSerifJapanese, serif;
  font-weight: normal;
  margin-bottom: 30px;
  font-weight: 600;
  line-height: 1.6;
}
.read_text p:nth-child(3){
  font-size: 16px;
}
.ir_links{
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  border-top:0;
}
.ir_category_link{
  width: calc(25% - 5px);
  box-sizing: border-box;
  margin-bottom: 5px;
}
.ir_category_link a{
  display: flex;
  justify-content: space-between;
  align-items: center;
  position: relative;
  padding: 10px;
  border: 2px solid #e9e9e9;
  background-color: #fff;
  color: #45494b;
  transition: .2s;
  box-sizing: border-box;
  font-weight: bold;
}
.ir_category_link a:hover{
  border: 2px solid  #005c55;
  color:#005c55;
}
.ir_category_link a:hover path{
  fill: #005c55;
}
.ir_category_link a.current{
  border: 2px solid  #005c55;
  color:#005c55;
}
.ir_category_link a.current path{
  fill: #005c55;
}

.archive_link{
  text-align: right;
}
.privacy .H02-001-02 a{
  padding-bottom: 2px;
  border-bottom: 1px solid;
  color: #3286d9;
}
.privacy .H02-001-02 a:hover{
  border-bottom: 0;
}

.H05-003-01.groupcompany {
  margin-bottom: 43px;
}

.H05-003-01.groupcompany .H05-003-01-description {
  margin-right: 30px;
  padding: 0;
}

.H05-003-01.groupcompany .H05-001-01__image {
  width: 290px;
  height: auto;
}

.H01-001-02 > span {
  font-weight: bold;
  font-size: 14px;
  padding: 8px;
  margin-left: 8px;
  vertical-align: middle;
  color: #ffffff;
}

.H01-001-02 > span.only-sp {
  display: none;
}

.H01-001-02 > span.service {
  background-color: #017C36;
}

.H01-001-02 > span.companyvalue {
  background-color: #00004C;
}

.H01-001-02 > span.pmisupport {
  background-color: #6BA72A;
}

.H01-001-02 > span.media {
  background-color: #C61022;
}

.H01-001-02 > span.smallscale {
  background-color: #0090C9;
}

.H01-001-02 > span.marketresearch {
  background-color: #820979;
}

.H01-001-02 > span.fund {
  background-color: #DD4D05;
}

.H01-001-02 > span.afterconsulting {
  background-color: #EAC300;
}

.H01-001-02 > span.dxhr {
  background-color: #C44995;
}

.footer__section_type_gray {
  background-color: #f2f2f2
}

.footer__inner {
  box-sizing: border-box;
  width: 100%
}

.footer-search__input {
  position: relative
}

.footer-search__input::before {
  position: absolute;
  top: 50%;
  left: 0;
  width: 22px;
  height: 22px;
  margin-top: -11px;
  background-image: url("/common/image/footer/icon-search-01@2x.png") !important;
  background-size: 22px 22px;
  content: ""
}

.footer-search__input input {
  box-sizing: border-box;
  border: 0;
  border-bottom: 2px solid #dadada;
  background-color: #fff !important;
  color: #45494b
}

.footer-search__input input:focus {
  outline: 0
}

.footer-search__button {
  border: 0;
  border-radius: 24px;
  background-color: #343d45;
  box-shadow: 0 6px 10px 0 rgba(0, 0, 0, .1);
  color: #fff
}

.footer-search__button:focus {
  outline: 0
}

input:-webkit-autofill {
  -webkit-box-shadow: 0 0 0 1000px #fff inset
}

.footer-nav__title {
  font-weight: 700;
  line-height: 1
}

.footer-nav__title a {
  color: #293337
}

.footer-nav__item {
  line-height: 1
}

.footer-nav__item a {
  color: #45494b
}

.footer-util {
  border-top: 1px solid #e8e9ec
}

.footer-util__item {
  border-bottom: 1px solid #e8e9ec
}

.footer-util__item a {
  display: inline;
  color: #45494b
}

.footer-info {
  display: flex
}

.footer-info a {
  color: #45494b
}

.footer-info__item_type_blank {
  background-repeat: no-repeat
}

.footer-sns {
  display: flex;
  align-items: center;
  margin: 0;
}

.footer-sns__item {
  width: 24px;
  height: 24px
}

.footer-sns__item--youtube a rect,
.footer-sns__item--youtube a polygon {
  fill: red
}

.footer-sns__item--youtube a path {
  fill: #fff
}

.footer-sns__item--facebook a path {
  fill: #3c5a99
}

.footer-sns__item--twitter a path {
  fill: #000
}

.footer-sns__item svg {
  width: 24px;
  height: 24px
}

.footer-logo img {
  vertical-align: text-top
}

.footer-rule,
.footer-aboutma {
  display: flex
}

.footer-rule__item a,
.footer-aboutma__item a {
  color: #65676a
}

.footer-mark {
  display: flex
}

.footer-copyright {
  color: #65676a;
  font-family: "Roboto", sans-serif;
  letter-spacing: .8px
}


.footer {
  background-color: #fff !important
}

.footer-nav__title a {
  color: #293337 !important;
  text-decoration: none !important
}

.footer-nav__item a {
  color: #45494b !important;
  text-decoration: none !important
}

.footer-util__item a {
  color: #45494b !important;
  text-decoration: none !important
}

.footer-info a {
  color: #45494b !important;
  text-decoration: none !important
}

.footer-rule__item a {
  color: #65676a !important;
  text-decoration: none !important
}

.footer,
.cv,
.aside {
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  line-height: 1.6;
  font-family: YakuHanJP, "NotoSansJapanese", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", Meiryo, メイリオ, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif
}

.footer-nav__title a {
  font-weight: 700
}

.aside,
.cv,
.footer {
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  -webkit-font-feature-settings: "palt";
  font-feature-settings: "palt";
  font-weight: 500;
  line-height: 1.6;
  font-family: "Helvetica Neue", Arial, "BIZ UDPGothic", "æ¸¸ã‚´ã‚·ãƒƒã‚¯", "Yu Gothic", "Hiragino Kaku Gothic ProN", "Hiragino Sans W3", Meiryo, NotoSansJapanese, sans-serif
}

.footer-nav__title a {
  font-weight: 700
}

a {
  text-decoration: none
}

#footer-banner .aside-item>a:not([target=_blank])>.aside-item__text::after {
  display: none
}

.footer-util__item img {
  vertical-align: bottom
}

.H09-004-01 .H09-004-01__media{
  width: auto;
  min-width: 100px;
  padding: 3px 10px;
}
.youtube_link{
  overflow-wrap: break-word;
}

@media screen and (min-width: 769px) {
  .footer {
    min-width: 1104px;
    padding-top: 90px
  }

  .footer__inner {
    min-width: 1104px;
    max-width: 1280px;
    margin: 0 auto;
    padding: 0 40px
  }

  .footer-search {
    display: flex;
    align-items: center;
    justify-content: center;
    margin: 0 auto 88px
  }

  .footer-search__input input {
    width: 400px;
    height: 64px;
    margin-right: 40px;
    padding-left: 42px;
    font-size: 23px
  }

  .footer-search__button {
    width: 180px;
    height: 48px;
    font-size: 18px;
    cursor: pointer;
    transition: all .2s ease
  }

  .footer-search__button:hover {
    -webkit-transform: translateY(-2px);
    transform: translateY(-2px);
    background-color: #0a847b;
    box-shadow: 0 10px 20px 0 rgba(0, 0, 0, .1)
  }

  .footer-nav-wrapper {
    display: flex;
    justify-content: space-between;
    margin-bottom: 60px;
    padding-bottom: 67px;
    border-bottom: 1px solid #dedede
  }

  .footer-nav {
    display: flex;
    justify-content: space-between;
    width: 79.4%;
    margin-right: 110px
  }

  .footer-nav__title a {
    padding-bottom: 2px;
    border-bottom: 1px solid rgba(0, 0, 0, 0);
    transition: all .2s ease
  }

  .footer-nav__title a:hover {
    border-color: #293337
  }

  .footer-nav__title {
    margin-bottom: 33px;
    font-size: 17px
  }

  .footer-nav__item a {
    display: inline-block;
    padding-bottom: 2px;
    border-bottom: 1px solid rgba(0, 0, 0, 0);
    transition: all .2s ease
  }

  .footer-nav__item a:hover {
    border-color: #45494b
  }

  .footer-nav__item {
    font-size: 13px
  }

  .footer-nav__item:not(:last-child) {
    margin-bottom: 18px
  }

  .footer-util {
    width: 17.8%;
    max-width: 200px
  }

  .footer-util__item a {
    padding: 0 0 2px 0;
    border-bottom: 1px solid rgba(0, 0, 0, 0);
    transition: all .2s ease
  }

  .footer-util__item a:hover {
    border-color: #45494b
  }

  .footer-util__item img {
    margin-right: 15px
  }

  .footer-util__item {
    padding: 20px 0 20px 12px;
    font-size: 14px
  }

  .footer-info-wrapper {
    display: flex;
    justify-content: space-between;
    padding-bottom: 50px
  }

  .footer-info a {
    padding-bottom: 2px;
    border-bottom: 1px solid rgba(0, 0, 0, 0);
    transition: all .2s ease
  }

  .footer-info a:hover {
    border-color: #45494b
  }

  .footer-info {
    margin-left: auto;
    font-size: 17px
  }

  .footer-info__item {
    margin-right: 50px
  }

  .footer-info__item_type_blank {
    padding-right: 20px;
    background-image: url("/common/image/footer/icon-blank-01@2x.png");
    background-position: top 50% right 0;
    background-size: 11px 11px
  }

  .footer-sns__item a:hover svg path {
    fill: #343d45
  }

  .footer-sns__item--youtube a:hover svg path {
    fill: #fff
  }

  .footer-sns__item--youtube a:hover svg rect,
  .footer-sns__item--youtube a:hover svg polygon {
    fill: #343d45
  }

  .footer-sns__item svg path,
  .footer-sns__item svg rect,
  .footer-sns__item svg polygon {
    transition: all .2s ease
  }

  .footer-sns__item svg {
    vertical-align: middle
  }

  .footer-sns__item:not(:last-child) {
    margin-right: 12px
  }

  .footer-logo img {
    width: 212px;
    height: 24px
  }

  .footer-logo {
    height: 24px
  }

  .footer-link ul:not(:last-child) {
    margin-bottom: 18px
  }

  .footer-rule__item a,
  .footer-aboutma__item a {
    padding-bottom: 2px;
    border-bottom: 1px solid rgba(0, 0, 0, 0);
    transition: all .2s ease
  }

  .footer-rule__item a:hover,
  .footer-aboutma__item a:hover {
    border-color: #65676a
  }

  .footer-rule__item,
  .footer-aboutma__item {
    font-size: 14px
  }

  .footer-rule__item:not(:last-child),
  .footer-aboutma__item:not(:last-child) {
    margin-right: 25px
  }

  .footer-copyright-wrapper {
    display: flex;
    align-items: center;
    height: 160px
  }

  .footer-mark {
    margin-right: 40px
  }

  .footer-mark__item:not(:last-child) {
    margin-right: 15px
  }

  .footer-copyright {
    margin-left: auto;
    padding-bottom: 60px;
    font-size: 11px
  }

  .footer-util__item img {
    vertical-align: bottom
  }
}

@media screen and (max-width: 1365px) {
  .ir_category_link{
    width: calc(50% - 5px);
  }
}

@media screen and (min-width: 769px) {
  .sp2 { display: none; }
  .header_item2 a:hover { color: #ffffff !important; }
  .out_data {
    position: absolute;
    background-color: rgba(0,0,0,0);
    width: 100%;
    border-bottom: none;
    border-bottom: 1px solid #fff;
  }
  
  .posi_up {
    margin: -70px auto 0;
    position: relative;
    z-index: 2;
  }
  .hero_type_groups {
    background-image: url(/groups/images/hero_img.jpg);
  }
  .header_item2>a::after {
    background-color: #ffffff;
  }

  .H05-003-01.groupcompany .H05-003-01-description {
    padding: 0;
  }
}


@media screen and (max-width: 768px) {
  .pc2 { display: none; }
  .header { background-color: transparent; }
  .header-logo { border-bottom: none; }
  .read_text:before{
    max-width: 100%;
    min-width: 100%;
  }
  .hero{
    height: 30vh;
  }
  .hero-lead{
    max-width: 100%;
    min-width: 100%;
    padding: 0 20px;
  }
  .hero-lead__title { 
    font-size: 24px; 
    text-align: center;
    letter-spacing: 3px;
    line-height: 1.5;
  }
  .hero-lead__title .font-l{ 
    font-size: 30px;
  }
  .hero-lead__title .font-m{ 
    font-size: 30px;
  }
  .read_text:before{
    width: calc(100% - 30px);
    max-width: calc(100% - 30px);
    min-width: calc(100% - 30px);
    top:-20px;
    height: 20px;
  }
  .read_text-inner{
    transform: translateY(0);
  }
  .read_text p:nth-child(1){
    font-size: 22px;
    margin-bottom: 20px;
  }
  .read_text p:nth-child(2){
    font-size: 16px;
    margin-bottom: 20px;
    line-height: 1.8;
  }
  .read_text p:nth-child(3){
    font-size: 14px;
  }
  .read_text p:nth-child(3) br{
    display: none;
  }
  .hero_type_ir { height: 250px; }
  .header-nav__item_type_accordion>a::after,
  .header-nav__item_type_accordion>a::before{
    display:none;
  }
  .header-logo { background: rgba(255,255,255,1); }
  .header-logo img {
    width: 170px;
    height: 19px;
    margin: -9px 0px 0 -104px;
  }
  .padd { padding: 0; }
  .posi_up {
    padding: 12px 10px;
    margin: -50px 10px 50px 10px;
    position: relative;
    background: #ffffff;
  }
  .ir_category_link{
    width: 100%;
    margin-bottom: 20px;
  }
  .ir_category_link a{
    font-size: 14px;
  }

  .H05-003-01.groupcompany {
    margin-bottom: 50px;
  }

  .H05-003-01.groupcompany .H05-003-01-item {
    width: fit-content;
  }

  .H01-001-02 > span {
    width: fit-content;
    padding: 4px;
    margin-left: 0px;
    margin-bottom: 10px;
  }

  .H01-001-02 > span.only-pc {
    display: none;
  }

  .H01-001-02 > span.only-sp {
    display: block;
  }

  .footer {
    padding-top: 30px
  }

  .footer__inner {
    padding: 0 15px
  }

  .footer-search {
    display: none
  }

  .footer-nav__title a {
    display: block
  }

  .footer-nav__title {
    margin-bottom: 20px;
    background-image: url("/common/image/footer/icon-arrow-01@2x.png");
    background-position: top 50% right 0;
    background-size: 7px 6px;
    background-repeat: no-repeat;
    font-size: 15px
  }

  .footer-nav__list {
    margin-bottom: 19px;
    padding-bottom: 16px;
    border-bottom: 1px solid #e8e9ec
  }

  .footer-nav__item a {
    display: block
  }

  .footer-nav__item {
    background-image: url("/common/image/footer/icon-arrow-01@2x.png");
    background-position: top 50% right 0;
    background-size: 7px 6px;
    background-repeat: no-repeat;
    font-size: 12px
  }

  .footer-nav__item:not(:last-child) {
    margin-bottom: 16px
  }

  .footer-nav__item.blankLink {
    background-image: none
  }

  .footer-util {
    margin-bottom: 30px
  }

  .footer-util__item a {
    display: block;
    flex: 1;
    margin: -16px 0;
    padding: 16px 0
  }

  .footer-util__item img {
    margin-right: 10px
  }

  .footer-util__item {
    display: flex;
    padding: 16px 0;
    background-image: url("/common/image/footer/icon-arrow-01@2x.png");
    background-position: top 50% right 0;
    background-size: 7px 6px;
    background-repeat: no-repeat;
    font-size: 13px
  }

  .footer-info a {
    display: block
  }

  .footer-info {
    flex-wrap: wrap;
    justify-content: space-between;
    margin-bottom: 30px
  }

  .footer-info__item a {
    margin: -16px 0;
    padding: 16px 0
  }

  .footer-info__item:nth-child(1),
  .footer-info__item:nth-child(2) {
    border-top: 1px solid #e8e9ec
  }

  .footer-info__item {
    width: 48.2%;
    padding: 16px 0;
    border-bottom: 1px solid #e8e9ec;
    background-image: url("/common/image/footer/icon-arrow-01@2x.png");
    background-position: top 50% right 0;
    background-size: 7px 6px;
    background-repeat: no-repeat
  }

  .footer-info__item_type_blank {
    background-image: url("/common/image/footer/icon-blank-01@2x.png");
    background-position: top 50% right 0;
    background-size: 10px 10px
  }

  .footer-sns {
    justify-content: center;
    margin-bottom: 30px
  }

  .footer-sns__item:not(:last-child) {
    margin-right: 42px
  }

  .footer-logo img {
    width: 183px;
    height: 21px
  }

  .footer-logo {
    height: 21px;
    margin-bottom: 30px;
    text-align: center
  }

  .footer-link {
    margin-bottom: 25px
  }

  .footer-link ul:not(:last-child) {
    margin-bottom: 15px
  }

  .footer-rule,
  .footer-aboutma {
    justify-content: center
  }

  .footer-rule__item,
  .footer-aboutma__item {
    text-align: left;
    font-size: 12px
  }

  .footer-rule__item:not(:last-child),
  .footer-aboutma__item:not(:last-child) {
    margin-right: 28px
  }

  .footer-copyright-wrapper {
    padding: 30px 0 40px
  }

  .footer-mark {
    justify-content: center;
    margin-bottom: 25px
  }

  .footer-mark__item:not(:last-child) {
    margin-right: 25px
  }

  .footer-copyright {
    font-size: 10px;
    text-align: center
  }

  .footer-group-nav .footer-nav__item {
    background-image: none;
  }
}
