@charset "UTF-8";
/*==============================================================
>>> TABLE OF CONTENTS:
----------------------------------------------------------------
1.0 Common
  1.1 Reset
  1.2 Layout
  1.3 Common
2.0 Header
  2.1 logo
  2.2 nav
  2.3 mv
3.0 Contents
  3.1 top
  3.2 hub page
  3.3 detail page
4.0 Breadcrumb
  4.1
5.0 Footer
  5.1 nav
  5.2 copyright
==============================================================*/
/* 注意
  汎用classは単独で使わないように
  index, top, page, detail, inner
--------------------------------------------------------------*/

/*==============================================================
1.0 Common
--------------------------------------------------------------*/

/* 1.1 Reset
--------------------------------------------------------------*/
* { padding: 0; margin: 0; font-style: normal; position: relative; }
ul,ol { list-style-type: none; }
/*html { scroll-behavior: smooth; }*/
body, div, pre, p, blockquote, form, fieldset, dl, dt, dd, li, table, th, td, embed, object, button { margin: 0; padding: 0; vertical-align: baseline; font-weight: normal; }
body {
  background-attachment: scroll;
  /*  background-color: #fff;*/
  background-color: #FAFBFC;
  color: #262F36;
  /*  font-family: 'Open Sans',"ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;*/
  font-family: 'Noto Sans JP', 'Open Sans',"ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
  font-size: 16px;
  line-height: 1.8;
  letter-spacing: 0.05em;
  overflow-y: scroll;
}
select,input,textarea,option { font-family: 'Noto Sans JP', 'Open Sans',"ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif; }
img { border: 0; margin: 0px; padding: 0px;}
a img { border-style: none; border: 0; }
a { cursor: pointer; outline: medium none; color: #262F36; }
a:link {text-decoration: none;}
a:visited {}
a:hover { text-decoration: none; color: #004482;}
a:active {}
a:focus, *:focus { outline: none; }
*:after { clear: both; }
::selection {
  background:#54b6e8; /* Safari */
  color: #fff;
}
::-moz-selection {
  background:#54b6e8; /* Firefox */
  color: #fff;
}
#wpadminbar {
  position: fixed !important;
}
.nowrap {
  white-space: nowrap; /* 勝手に折り返さない */
}
/* 1.2 Layout
--------------------------------------------------------------*/
.section {
  padding-top: 100px;
/*  padding-bottom: 50px;*/
}
.section.max {
  padding-top: 150px;
/*  padding-bottom: 75px;*/
}
.section.small {
  padding-top: 50px;
/*  padding-bottom: 25px;*/
}
.container {
  max-width: 1000px;
  margin-right: auto;
  margin-left: auto;
  padding-left: 20px;
  padding-right: 20px;
}
.container.middle {
  max-width: calc(100% - 90px);
}
.container.small {
  max-width: 800px;
}
.container.right {
  margin-right: 0;
  padding-left: 0;
  padding-right: 0;
}
.container.left {
  margin-left: 0;
  padding-left: 0;
  padding-right: 0;
}
.container.right_140 {
  margin-right: 140px;
}
.container.left_140 {
  margin-left: 140px;
}
select {
  width: 250px;
  height: 50px;
  padding: 13px 15px;
  appearance: none;
  border-radius: 5px;
  border: 1px solid #EEEEEE;
  background-color: #fff;
  line-height: 1.0;
}
.select-wrap {
  position:relative;
  width: 250px;
}
.select-wrap:after {
  content:'';
  display: inline-block;
  width: 15px;
  height: 15px;
  z-index: 0;
  position: absolute;
  top: calc(25px - 7.5px);
  right: 15px;
  background-image: url(../img/icon_arrow.svg);
  background-repeat: no-repeat;
  background-position: right 0px center;
/*  background-size: 15px 15px;*/
  transform: rotate(90deg);
/*  transform: translateY(-50%);*/
  -ms-transform: rotate(90deg);
  -webkit-transform: rotate(90deg);
  -moz-transform: rotate(90deg);
  -o-transform: rotate(90deg);
/*
  -ms-transform: translateY(-50%);
  -webkit-transform: translateY(-50%);
  -moz-transform: translateY(-50%);
  -o-transform: translateY(-50%);
*/
}
.flex-list {
  display: flex;
}

.top__cont {
  padding-top: 0;
}
.mgt-20 {
  margin-top: 20px;
}
.pdt-20 {
  padding-top: 20px;
}
.pdt-100 {
  padding-top: 100px;
}
.pdt-150 {
  padding-top: 150px;
}
.mgb-0 {
  margin-bottom: 0;
}
.pdb-0 {
  padding-bottom: 0;
}
.auther {
  text-align: right;
  margin-top: 30px;
}
/*bgcolor-box*/
.bgcolor-box.right {
  padding-right: 20px;
}
.bgcolor-box.left {
  padding-left: 20px;
}
.bgcolor-box h2 {
  margin-top: 30px;
}
.bgcolor-box h3 {
  margin-top: 10px;
}
.bgcolor-box h3 {
  display: flex;
  align-items: center; /* 垂直中心 */
  justify-content: flex-start; /* 水平中心 */
  font-size: 13px;
}
.bgcolor-box h3:before {
  border-top: 1px solid;
  content: "";
  width: 1.4em; /* 線の長さ */
}
.bgcolor-box h3:before {
  margin-right: 0.5em; /* 文字の右隣 */
}
.bgcolor-box p {
  margin-top: 20px;
  font-size: 13px;
}
.bgcolor-belt {
  width: calc(100% - 40px);
  padding: 70px 0 50px;
  height: 310px;
  margin-top: -382px;
}
.bgcolor-belt.left {
  margin-left: 40px;
  border-radius: 5px 0px 0px 5px;
}
.bgcolor-belt.right {
  margin-right: 40px;
  border-radius: 0px 5px 5px 0px;
}
.bgcolor-belt.left .container {
  margin-right: 0px;
}
.bgcolor-belt.right .container {
  margin-left: 0px;
}
/*bnr-box*/
.bnr-box .flex-list {
  align-items: center;
}
.bnr-box-bgcolor {
  width: 335px;
  height: 265px;
  cursor: pointer;
  overflow: hidden;
}
.bnr-box-bgcolor::before{
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  transform: translateX(-100%);
  border-radius: 5px;
  display: block;
  background: #262f36;
  z-index: 1;
  transition: .5s;
}
.bnr-box-bgcolor:hover::before {
  transform: translateX(0);
  transition: .5s;
}
.bnr-box-item {
  width: 365px;
  height: 75px;
  background-size: cover;
  background-repeat: no-repeat;
  border-radius: 5px;
}
.bnr-box-item::before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  background-color: rgb(38, 47, 54, 0.7);
  border-radius: 5px;
}
.bnr-box-item .title_label__copy {
  height: 40px;
  z-index: 2;
}
.bnr-box-item .title_label__copy img {
  height: 40px;
}
/* link_box */
.link_box {
  width: 100%;
  max-width: 265px;
  height: 60px;
  border: 3px solid #004482;
/*  background: #004482;*/
  border-radius: 30px;
  text-align: center;
  cursor: pointer;
  position: relative;
  box-sizing: border-box;
  overflow: hidden;
  margin-top: 30px;
  margin-left: auto;
  margin-right: auto;
  transition: all 0.5s ease 0s;
}
.link_box.blue {
  border: none;
  background: #004482;
  color: #fff;
}
.link_box.white {
  border: none;
  background: #fff;
}
.link_box.left {margin-left: 0;}
.link_box.right {margin-right: 0;}

.top__link_box .link_box {
  width: 100%;
  margin-top: 0;
}
.link_box a {
  font-size: 16px;
/*  font-weight: 200;*/
  line-height: 54px;
  position: relative;
  text-decoration: none;
  transition: all 0.5s ease 0s;
  z-index: 2;
  display: block;
  border-radius: 30px;
}
.link_box.blue a,
.link_box.white a {
  line-height: 60px;
}
.link_box a svg {
  width: 74px;
  height: 16px;
}
.link_box.view_more a svg {
  width: 125px;
/*  height: 16px;*/
}

.link_box a svg .icon_fill_01 {fill: none;}
.link_box a svg .icon_fill_02 {fill: #004482;}
.link_box a:hover svg .icon_fill_02 {fill: #fff;}

.link_box.blue a svg .icon_fill_02 {fill: #fff;}

.link_box::after {
  content: "";
  display: block;
  position: absolute;
  width: 25px;
  height: 10px;
  right: 15px;
  top: calc(50% - 7px);
  transition: all 0.5s ease;
  background-image: url(../img/icon_main_arrow.svg);
  background-size: contain;
  background-repeat: no-repeat;
  background-position: center;
}
.link_box.view_more a {
  margin-right: 30px;
}
.link_box.view_more::after {
  width: 25px;
  height: 10px;
  right: 30px;
  top: calc(50% - 7px);
  background-image: url(../img/icon_main_arrow.svg);
}
.link_box.blue.view_more::after {
  background-image: url(../img/icon_main_arrow_white.svg);
}
.link_box.view_more:hover::after {
  background-image: url(../img/icon_main_arrow_white.svg);
}
.link_box:before{
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
/*  width: 0;*/
  transform: translateX(-100%);
  border-radius: 30px;
  display: block;
  background: #004482;
/*  z-index: -1;*/
  transition: .5s;
}
.link_box.blue:before,
.link_box.white:before{
  background: #262F36;
  z-index: 1;
}
.link_box:hover:before{
  transform: translateX(0);
  transition: .5s;
}
.link_box:hover {
  background-color: #004482;
  transition: all 0.5s ease;
}
.link_box.blue:hover,
.link_box.white:hover{
  background-color: #262F36;
  transition: all 0.5s ease;
}
.link_box:hover a {
  color: #fff;
  z-index: 2;
}
.link_box.white:hover a {
  color: #262F36;
  z-index: 2;
}
.link_box:hover::after {
  background-image: url(../img/icon_main_arrow_white.svg);
  z-index: 2;
}
/* link_more */
.link_more {
  width: 100%;
  max-width: 98px;
  height: 74px;
  background-color: #E2E9F1;
  border: 1px solid #E2E9F1;
  border-radius: 0 5px 5px 0;
  text-align: center;
  cursor: pointer;
  position: relative;
  box-sizing: border-box;
  overflow: hidden;
  transition: all 0.5s ease 0s;
}
.link_more::after {
  position: absolute;
  bottom: 0;
  left: 0;
  content: '';
  width: 100%;
  height: 100%;
  background: #262F36;
  transform: scale(0, 1);
  transform-origin: left top;
  transition: transform .3s;
}
.link_more:hover::after {
  transform: scale(1, 1);
}
.link_more a {
  height: 74px;
  justify-content: center;
  align-items: center;
  z-index: 2;
}
.link_more svg#icon_more {
  width: 40px;
  height: 10px;
}
.link_more svg#icon_more .icon_fill_01 {
  fill: none;
}
.link_more svg#icon_more .icon_fill_02 {
  fill: #004482;
}
.link_more:hover svg#icon_more .icon_fill_02 {
  fill: #fff;
}
.link_more svg#icon_arrow_ancer {
  width: 16px;
  height: 16px;
  margin-left: 8px;
}
.link_more svg#icon_arrow_ancer .icon_fill_01 {
  fill: none;
}
.link_more svg#icon_arrow_ancer .icon_fill_02 {
  fill: #004482;
}
.link_more svg#icon_arrow_ancer .icon_fill_03 {
  fill: #fff;
}
.link_more:hover svg#icon_arrow_ancer .icon_fill_02 {
  fill: #fff;
}
.link_more:hover svg#icon_arrow_ancer .icon_fill_03 {
  fill: #262F36;
}
/*外部リンク*/
.ext_link::after {
  content: "";
  display: block;
  position: absolute;
  transition: all 0.5s ease;
  background-size: contain;
  background-repeat: no-repeat;
  background-position: center;
  width: 17px;
  height: 17px;
  right: -25px;
  top: calc(50% - 7.5px);
  background-image: url(../img/icon_link.svg);
}

/*slide_reel*/
.slide_reel {
  width: 100%;
  height: 30px; /* 画像の高さ */
  background-image: url(../img/reel/reel_service.svg);
  background-repeat: repeat-x;
  background-size: auto 30px; /* 画像の高さ */
  animation: loop 50s linear infinite;
}
.slide_reel.reloop {
  animation: reloop 50s linear infinite;
}
@keyframes loop {
  from {
    background-position: 0 0;
  }
  to {
    background-position: -2000px 0; /* 画像のマイナス幅 */
  }
}
@keyframes reloop {
  from {
    background-position: 0 0;
  }
  to {
    background-position: 2000px 0; /* 画像のマイナス幅 */
  }
}

/*news-list*/
.menu__tab .container {
  padding-bottom: 50px;
  padding-left: 0;
  padding-right: 0;
}
.menu__tab {
  margin-top: 50px;
}
.menu__tab ul {
  text-align: center;
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  align-items: flex-start;
  gap: 20px;
}
.menu__tab li {
  width: 41%;
/*  padding: 15px 10px;*/
  border-bottom: 3px solid #EEEEEE;
}
#news-page .menu__tab li a {
  display: block;
  width: 100%;
}

.menu__tab li.active,
.menu__tab li.current {
  border-bottom: 3px solid #004482;
}
@media only screen and (max-width: 1024px) {
  #news-page .menu__tab li a {
    font-size: 13px;
    line-height: 56px;
  }
}
@media only screen and (min-width: 1025px) {
  .menu__tab .container {
    padding-bottom: 50px;
  }
  .menu__tab ul {
    flex-wrap: nowrap;
    gap: 0;
  }
  .menu__tab li {
    width: 33%;
  }
  #news-page .menu__tab li a {
    line-height: 62px;
  }
}
.news-list-item > a {
  padding: 30px 0;
  border-bottom: 1px solid #EEEEEE;
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  align-items: center;
}
.news-list-item > a::after {
  position: absolute;
  bottom: 0;
  left: 0;
  content: '';
  width: 100%;
  height: 1px;
  background: #004482;
  transform: scale(0, 1);
  transform-origin: left top;
  transition: transform .3s;
}
.news-list-item > a:hover {
  border-bottom: 1px solid #fff;
}
.news-list-item > a:hover::after {
  transform: scale(1, 1);
}
.news-list-item-date {
  width: 10.5%;
}
#news-page .news-list-item-date {
  font-size: 13px;
}
@media only screen and (max-width: 480px) {
  #news-page .news-list-item-date {
    width: 40%;
  }
}
.news-list-item-category {
  min-width: 100px;
}
.news-list-item a:hover .news-list-item-category {
  color: #262F36;
}
.news-list-item > a .news-list-item_info {
  margin-top: 20px;
  max-width: 600px;
  overflow: hidden;
  display: -webkit-box;
  text-overflow: ellipsis;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 2;
  /* ブラウザがサポートしていない場合のフェールセーフ */
  max-height: 58px;
}
.news-list-item > a .news-list-item_info .pdfinfo {
  margin-left: 10px;
  padding-left: 15px;
  background: center left / 15px url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 16 16"><path class="cls-2" d="M13.77,3.58L10.9,.71c-.13-.13-.31-.21-.5-.21h-.18v3.75h3.75v-.18c0-.19-.07-.36-.21-.49Z" fill="%23004482"/><path class="cls-2" d="M9.29,4.48V.5H2.73c-.39,0-.7,.31-.7,.7V14.8c0,.39,.31,.7,.7,.7H13.27c.39,0,.7-.31,.7-.7V5.19h-3.98c-.39,0-.7-.31-.7-.7Z" fill="%23004482"/></svg>') no-repeat;
}
.news-list-item-category {
  padding: 5px 6px;
  border: 1px solid #262F36;
  border-radius: 5px;
  text-align: center;
  font-size: 13px;
}

.pagination {
  margin: 50px 0 0;
  display: flex;
  justify-content: center;
  align-items: center;
  gap: 10px;
}
.pagination .page-numbers {
  color: #004482;
  /* border-radius: 90px; */
  font-size: 20px;
  line-height: 40px;
  width: 40px;
  height: 40px;
  text-align: center;
  font-weight: 600;
  opacity: 0.5;
}
.pagination .current {
  /* background: #004482;
  color: #fff; */
  border-bottom: 5px solid #004482;
  top: 2.5px;
  opacity: 1;
}
.pagination .prev,
.pagination .next {
  background: transparent;
  box-shadow: none;
/*  color: #69a4db;*/
opacity: 1;
}
.prev.page-numbers::after,
.next.page-numbers::after {
  content: "";
  display: block;
  position: absolute;
  transition: all 0.5s ease;
  background-size: contain;
  background-repeat: no-repeat;
  background-position: center;
  width: 18px;
  height: 18px;
  /* right: 30px; */
  right: calc(50% - 9px);
  top: calc(50% - 9px);
  background-image: url(../img/icon_arrow.svg);
}
.prev.page-numbers::after {
  transform: scale(-1, 1);
  right: 0;
  left: calc(50% - 9px);
}
.pagination .dots {
  background: transparent;
  box-shadow: none;
}
/* 1.3 Common
--------------------------------------------------------------*/
/* headline */
h1, .h1 {font-size: 20px;line-height: 1.6;letter-spacing: 0.08em;}
h2, .h2 {font-size: 20px;line-height: 1.6;letter-spacing: 0.08em;}
h3, .h3 {font-size: 16px;line-height: 1.8;letter-spacing: 0.08em;}
h1 {
  line-height: 1.5;
  letter-spacing: 1.6px;
}
h1.full.right:after,
h2.full.right:after,
h3.full.right:after {
  position: absolute;
  content: '';
  width: calc(100% - 20px);
  left: 20px;
  bottom: 0;
  padding-bottom: 15px;
  border-bottom: 3px solid #004482;
}
h1 span {
  letter-spacing: 0.65px;
  font-size: 13px;
}
.title_underline .container {
  padding-left: 20px;
  padding-bottom: 15px;
}
.title_underline .head__title {
  padding-bottom: 15px;
}

/* text-sizes */
.title_big {font-size: 35px;line-height: 1.7;letter-spacing: 0.16em;}
.title {font-size: 20px;line-height: 1.6;letter-spacing: 0.08em;}
.text {font-size: 16px;}
.note {font-size: 13px;line-height: 1.7;letter-spacing: 0.05em;}

/* text-weight */
.fw-bold {font-weight: 600;}
.fw-normal {font-weight: normal;}

/* colors */
.txtcolor-gray {
  color: #EEEEEE;
}
.txtcolor-light-gray {
  color: #FAFBFC;
}
.txtcolor-blue {
  color: #004482;
}
.txtcolor-light-blue {
  color: #E2E9F1;
}
.txtcolor-red {
  color: #F03636;
}
.txtcolor-white {
  color: #FFFFFF;
}
.bgcolor-gray {
  background-color: #EEEEEE;
}
.bgcolor-light-gray {
  background-color: #FAFBFC;
}
.bgcolor-blue {
  background-color: #004482;
}
.bgcolor-light-blue {
  background-color: #E2E9F1;
}
.bgcolor-red {
  background-color: #F03636;
}
.bgcolor-white {
  background-color: #FFFFFF;
}

/* img */
.img_model {
  border-radius: 5px;
}
.img-responsive {
  width: 100%;
  margin: auto;
}
.overflow_img {
  z-index: 2;
}
.slick-slide img {
  border-radius: 5px;
}
/* others */
.pc {
  display: none;
}
.sp {
  display: block;
}
.txt-center {
  text-align: center;
}

/*==============================================================
2.0 Header
--------------------------------------------------------------*/
#headerWrap {
/*
  height: 50px;
  margin-top: 20px;
  margin-bottom: 30px;
  margin-left: 20px;
  margin-right: 15px;
*/
}
.headerWrap__inner {
  height: 33px;
  padding-top: 20px;
  padding-bottom: 15px;
  margin-bottom: 30px;
/*  margin-bottom: 45px;*/
  display: flex;
  justify-content: space-between;
  align-items: center;
}
@media only screen and (max-width: 1024px) {
  #headerWrap {
    position: fixed;
    top: 0;
    background-color: #FAFBFC;
    width: 100%;
    height: 68px;
    z-index: 999;
  }
  .headerWrap__inner {
    background-color: #FAFBFC;
  }
}

/* 2.1 logo
--------------------------------------------------------------*/
.logo_link {
  height: 33px;
}
img.logo {
  width: 75px;
  height: 33px;
  margin-left: 20px;
}
img.logo:hover {
  opacity: 0.7;
  transition: all 0.3s ease;
}
@media only screen and (max-width: 1024px) {
  .headerWrap__inner.language__wrap .logo_link {
    z-index: 201;
  }
}
/* 2.2 nav
--------------------------------------------------------------*/
/*言語設定*/
.language-list {
  display: flex;
  justify-content: flex-end;
  align-items: center;
  margin-right: 25px;
}
.language-list li {
  padding: 0 15px;
}
.ja .language-list-item.language_ja a,
.ja .language-list-item.language_ja span {
  color: #004482;
  font-weight: 600;
}
.en-US .language-list-item.language_en-US a,
.en-US .language-list-item.language_en-US span {
  color: #004482;
  font-weight: 600;
}
.language-list li:first-child {
  border-right: 1px solid #262F36;
}
.language-list.hide {
  display: none;
}

.language-wrap.sp {
  position: absolute;
  top: 21px;
  right: 75px;
/*  z-index: 201;*/
}
.language-wrap.sp svg {
  width: 35px;
  height: 35px;
}
.language-wrap.sp svg .cls-1 {
  fill: none;
}
.language-wrap.sp svg .cls-2 {
  fill: #262F36;
}
.language-wrap.sp.active svg .cls-2 {
  fill: #004482;
}
@media only screen and (max-width: 1024px) {
  /*言語切替*/
  .language-wrap.sp #language-switch__menu {
    padding-top: 0;
    height: auto;
    width: 180px;
    display: block;
    background-color: #fff;
    position: fixed;
    top: 68px;
    right: 65px;
    z-index: -10;
    opacity: 0;
    transition: 0.2s;
    transform: translateY(-200%);
  }
  .language-wrap.sp.active #language-switch__menu {
    opacity: 1;
    transform: translateY(0%);
  }
  .language-wrap.sp.hide {
    display: none;
  }
  #language-switch__menu .language-list {
    flex-direction: column;
    justify-content: flex-end;
    align-items: center;
    margin-right: auto;
  }
  #language-switch__menu .language-list li:first-child {
    border-right: none;
    border-bottom: 1px solid #004482;
  }
  #language-switch__menu .language-list li {
    width: calc(100% - 20px);
    padding: 0;
    text-align: center;
  }
  #language-switch__menu .language-list li a,
  #language-switch__menu .language-list li span {
    display: block;
    width: 100%;
    line-height: 64px;
  }
  #body__overlay.overlay {
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: #262F36;
    opacity: 0.8;
    z-index: 998;
  }
}
/*グローバルナビゲーション*/
.menu-trigger,
.menu-trigger span {
  display: inline-block;
  transition: all .4s;
  box-sizing: border-box;
}
.menu-trigger {
/*  position: absolute;*/
  width: 35px;
  height: 16px;
  right: 15px;
/*  top: 6px;*/
  z-index: 200;
}
.menu-trigger:hover {
  opacity: 1;
}
.menu-trigger span {
  position: absolute;
  left: 0;
  width: 100%;
  height: 3px;
  background-color: #262F36;
  border-radius: 3px;
}
.menu-trigger span:nth-of-type(1) {
  top: 0;
}
.menu-trigger span:nth-of-type(2) {
  bottom: 0;
}
.menu-trigger.active span:nth-of-type(1) {
  -webkit-transform: translateY(8px) rotate(-45deg);
  transform: translateY(8px) rotate(-45deg);
  background-color: #004482;
}
.menu-trigger.active span:nth-of-type(2) {
  -webkit-transform: translateY(-5px) rotate(45deg);
  transform: translateY(-5px) rotate(45deg);
  background-color: #004482;
}
.menu-trigger:after{
}
.menu-trigger.active:after{
}
#globalNavi {
  display: none;
}
.menu-global-container {
  margin-top: 20px;
}
.global-menu {
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  align-items: center;
}
.global-menu li {
  padding: 0 20px;
  margin: 0;
  border-bottom: none;
}
.global-menu li a {
  font-weight: 600;
  letter-spacing: 1.6px;
}
.global-menu li a:hover {
  color: #004482;
  transition: all 0.3s ease;
}
/*
.global-menu li a::after {
  position: absolute;
  bottom: -8px;
  left: 0;
  content: '';
  width: 100%;
  height: 3px;
  background: #004482;
  opacity: 0;
  visibility: hidden;
  transition: .3s;
}
*/
.global-menu li.menu-item-37 a::after {
  content: none;
}

.global-menu li a:hover::after {
  opacity: 1;
  visibility: visible;
}
#globalNavi.onanimation {
  display: block !important;
  background: #fff;
  text-align: center;
  height: 100%;
  height: 100vh;
  position: absolute;
  width: 100%;
  top: 0px;
  padding-top: 50px;
  z-index: 100;
}
#globalNavi.onanimation .menu-global-container {
  margin-top: 30px;
  padding-left: 20px;
  padding-right: 20px;
}
#globalNavi.onanimation .global-menu li {
  width: 100%;
  max-width: 295px;
  border-bottom: 1px solid #EEEEEE;
/*  padding: 20px 0;*/
  padding: 0;
  margin: 0px 40px;
  text-align: left;
}
#globalNavi.onanimation .global-menu li.menu-item-155 {
  border-bottom: none;
  padding-bottom: 0;
}
#globalNavi.onanimation .global-menu li.menu-item-37 {
  border-bottom: none;
  padding: 0;
  margin-top: 30px;
  text-align: center;
  width: 295px;
  height: 90px;
  border-radius: 5px;
  background-color: #004482;
}
#globalNavi.onanimation .global-menu li a {
  display: block;
  line-height: 70px;
}
#globalNavi.onanimation .global-menu li.menu-item-37 a {
  overflow: hidden;
  display: block;
  height: 90px;
  border-radius: 5px;
  padding: 32px 0;
  color: #fff;
  opacity: 1;
  z-index: 2;
  box-sizing: border-box;
  line-height: 1.5;
}

/* 2.3 mv
--------------------------------------------------------------*/
#header_title {
/*  margin: 50px 0 30px 20px;*/
  margin: 103px 0 30px 20px;
}
#header_title.security,
#header_title.terms {
  margin: 0 0 30px 0;
}
#header_title.security .title_label__copy,
#header_title.terms .title_label__copy {
  display: none;
}
.title_label img {
  height: 30px;
}
#opv-wrap {
  position: absolute;
  top: 0;
  z-index: 8888;
/*  display: none;*/
}
#opv-wrap .movie__wrap video {
  position: fixed;
  top: 0;
  left: 0;
  object-fit: cover;
  width: 100%;
  height: 100vh;
  vertical-align: bottom;
}

/*page-mv*/
.page_mv {
  margin-left: 20px;
  margin-bottom: 50px;
}
.page_mv img {
  width: 100%;
  height: 250px;
  object-fit: cover;
  object-position: 20%;
  border-radius: 5px 0 0 5px;
}

/* 2.4 p-top__lead
--------------------------------------------------------------*/
.p-top__lead {
/*  background-color: #004482;*/
}
.p-top__lead .container {
  padding-top: 40px;
  padding-bottom: 40px;
}
.p-top__lead.content {
  margin-top: 30px;
}
/*==============================================================
3.0 Contents
--------------------------------------------------------------*/
/* 3.1 top
--------------------------------------------------------------*/
.home .headerWrap__inner {
  opacity: 0;
  transition: .3s;
}
.home .headerWrap__inner.fadein {
  opacity: 1;
}
.top-page {
  padding-bottom: 160px;
}
.top-page .container.middle {
  max-width: 1040px;
}
.top-page .container.middle.right {
  padding-left: 24%;
}
.top-page .container.middle.left {
  padding-right: 24%;
}
.home #header_title {
/*  margin: 20px 0 50px;*/
  margin: 98px 0 50px;
}
@media only screen and (max-width: 480px) {
  .top-page .overflow_img {
    aspect-ratio: 57/40;
  }
}
/*top-MV*/
#top-mv__wrap .mv-reel-list {
  overflow: hidden;
  margin-top: 30px;
}
#top-mv__wrap .mv-reel-list-item {
  margin: 0 10px;
}
#top-mv__wrap .mv-reel-list-item.slick-slide,
#top-mv__wrap .mv-reel-list-item.slick-slide img {
  width: auto;
  height: 320px !important;
}

.mv-reel__wrap {
  opacity: 0;
}
.mv-reel__wrap.fadeInto {
  animation: fadeInto 1s cubic-bezier(0.33, 1, 0.68, 1) 1 forwards;
}
@keyframes fadeInto {
  0% {
    opacity: 0;
  }
  100% {
    opacity: 1;
  }
}
/*top-TypoGraphy*/
.top-typography__wrap {}
.top-typography__inner {
  text-align: center;
}
.top-typography__wrap img {
  height: 20px;
  opacity: 0;
}
.top-typography__wrap {
  overflow: hidden;
}
.top-typography__wrap img.fadeUp {
  animation: fadeup 1s cubic-bezier(0.33, 1, 0.68, 1) 1 forwards;
}
@keyframes fadeup {
  0% {
    transform: translateY(30px);
    opacity: 0;
  }
  80% {
    opacity: 1;
  }
  100% {
    opacity: 1;
    transform: translateY(0);
  }
}
@media only screen and (max-width: 480px) {
}

/*MV直下NEWS*/
#p_topNews .inner {
  flex-direction: row;
  justify-content: flex-start;
  align-items: center;
  transition: .3s;
  opacity: 0;
}
#p_topNews .inner.fadein {
  opacity: 1;
}

.topNews-wrap {
  width: 257px;
  height: 74px;
  border: 1px solid #E2E9F1;
  border-left: none;
  background-color: #fff;
}
.topNews-wrap li {
  padding: 15px 20px;
}
.topNews-wrap li a {
  flex-direction: row;
  justify-content: flex-start;
  align-items: center;
  flex-wrap: wrap;
}
#p_topNews .link_more a {
  margin-right: 30px;
  line-height: 71px;
}
#p_topNews .link_more::after {
  transform: scale(0, 1);
  transform-origin: left top;
}
#p_topNews .link_more:hover::after {
  transform: scale(1, 1);
}
#p_topNews .link_more::before {
  content: "";
  display: block;
  position: absolute;
  width: 20px;
  height: 8px;
  right: 15px;
  top: calc(50% - 5px);
  transition: all 0.3s ease;
  background-image: url(../img/icon_main_arrow.svg);
  background-size: contain;
  background-repeat: no-repeat;
  background-position: center;
  z-index: 2;
}
#p_topNews .link_more:hover::before {
  background-image: url(../img/icon_main_arrow_white.svg);
}
.topNews-wrap li a svg {
  width: 33px;
  height: 10px;
}
.topNews-wrap li a svg .icon_fill_01 {
  fill: none;
}
.topNews-wrap li a svg .icon_fill_02 {
  fill: #004482;
}
.topNews-wrap li a .news-date {
  margin-left: 20px;
}
.topNews-wrap li a .news-title {
  width: 100%;
  overflow: hidden;
  display: -webkit-box;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 1;
}
/*top-title-label*/
.top-page .title_label__copy.left {
  margin-left: 20px;
  text-align: left;
}
.top-page .title_label__copy.right {
  margin-right: 20px;
  text-align: right;
}
.top-page .title_label__copy {
  height: 30px;
}
.top-page .title_label img {
  height: 30px;
}
/*About-us*/
#aboutus h3 {
  margin-top: 40px;
}
#aboutus .link_box {
  margin-top: 50px;
}
@media only screen and (max-width: 480px) {
  #aboutus h3.title_big {
    font-size: 25px;
  }
  .topNews-wrap li a .news-title {
    color: #004482;
  }
}
@media only screen and (max-width: 1024px) {
  #aboutus .p-top__lead .container {
    padding-top: 80px;
    padding-bottom: 80px;
  }
}
/*Service*/
/*
#service .slide_reel {
  background-image: url(../img/reel/reel_service.svg);
}
*/
/*
#service .title_label {
  margin-top: 30px;
}
*/
#service .overflow_img {
  margin-top: 30px;
  margin-left: auto;
  margin-right: 0;
}
#service .overflow_img img {}
/*Technology*/
#technology .title_label {
  margin-top: 30px;
}
#technology .title_label img {
}
#technology .overflow_img {
  margin-top: 30px;
  margin-left: 0;
  margin-right: auto;
}
#technology .overflow_img img {}
/*Company Info*/
#company .title_label {
  margin-top: 50px;
}
#company .overflow_img {
  margin-top: 30px;
  margin-left: auto;
  margin-right: 0;
  flex-wrap: wrap;
}
#company .overflow_img img {}
#company .bgcolor-belt {
  height: 182px;
  padding: 70px 0 50px;
  margin-top: -252px;
}

/*Career*/
#career .slide_reel.hospitality {
  height: 30px; /* 画像の高さ */
  background-image: url(../img/reel/reel_hospitality.svg);
  background-size: auto 30px; /* 画像の高さ */
}
#career .slide_reel.professional {
  margin-top: 10px;
  height: 30px; /* 画像の高さ */
  background-image: url(../img/reel/reel_professional.svg);
  background-size: auto 30px; /* 画像の高さ */
}
#career .slide_reel.creative {
  margin-top: 10px;
  height: 30px; /* 画像の高さ */
  background-image: url(../img/reel/reel_creative.svg);
  background-size: auto 30px; /* 画像の高さ */
}
#career .bgcolor-blue {
  margin-top: 10px;
  padding-bottom: 100px;
}
#career .bgcolor-blue h2 {
  margin-top: 20px;
}
#career .bgcolor-blue p {
  margin-top: 50px;
}
#career .career-list {
  overflow: hidden;
  margin-top: 50px;
  width: 100%;
}
#career .career-list-item {
  margin: 0 10px;
}
#career .career-list-item.slick-slide,
#career .career-list-item.slick-slide img {
  width: 225px;
  height: 250px !important;
}
#career .career-list-item.slick-slide img {
  object-fit: cover;
}
#career .career-list-item.slick-slide {
  margin: 0 10px;
}

@media only screen and (max-width: 480px) {
  #career .bgcolor-blue p.title_big {
    font-size: 20px;
  }
}
/*IR*/
.top-flex-list.flex-list {
  align-items: flex-end;
  flex-direction: column;
}
.top-flex-list .bgcolor-box {
  padding: 0;
  margin-right: auto;
  margin-top: 50px;
  order: 2;
  min-width: 265px;
  text-align: center;
}
.top-flex-list h2 {
  margin-top: 20px;
}
@media only screen and (max-width: 480px) {
  .top-flex-list .bgcolor-box {
    margin-left: auto;
  }
  .top-flex-list .title_label__copy.left {
    margin-left: 0;
    text-align: center;
  }
}
.top-flex-list .img_box.right {
  order: 1;
  width: calc(100% - 40px);
}
.top-flex-list .img_box picture {
  height: 200px;
}
.top-flex-list .img_box picture img {
  object-fit: cover;
  border-radius: 5px 0 0 5px;
  height: 200px;
}
/* M&A */
.top-flex-list.flex-list.top-ma {
  align-items: normal;
}
.top-flex-list.top-ma .img_box picture img {
  border-radius: 0 5px 5px 0;
}
/*NEWS*/
#news.section {
  padding-top: 150px;
}
#news h2 {
  margin-top: 20px;
}
#news .bgcolor-box {
  width: 100%;
  padding: 0;
  margin-top: 0;
}
.news-list-wrap {
  margin-top: 30px;
}
.news-important {
  margin: 0 auto;
}
.news-important {
  flex-direction: column;
  background-color: #E2E9F1;
  border-radius: 5px;
}
.news-important-list {
  padding: 20px;
  flex-direction: column;
  align-items: center;
  gap: 20px;
}

.news-important-list a {
  width: 100%;
}
.news-important-item {}
.news-important-title {
  background-color: #004482;
  padding: 10px 0;
  border-radius: 5px 5px 0 0;
  z-index: 2;
  width: 100%;
  box-sizing: border-box;
}
.news-important-title p {
  display: inline-block;
  margin-left: 26px;
}
.news-important-title p:before {
  content: "";
  position: absolute;
  display: block;
  width: 16px;
  height: 16px;
  background: center / contain no-repeat url(../img/icon_caution_white.svg);
  top: 7px;
  left: -26px;
}
.news-important-item-data {
  z-index: 2;
}
.news-important-item-data p {
  background: linear-gradient(transparent 95%, #004482 0%);
  display: inline;
}
/*
.news-list {
  margin-top: 20px;
}
*/
.news-list-item > a::after {
  position: absolute;
  bottom: 0;
  left: 0;
  content: '';
  width: 100%;
  height: 1px;
  background: #004482;
  transform: scale(0, 1);
  transform-origin: left top;
  transition: transform .3s;
}
#news .news-list-item-date {
/*  width: 10.5%;*/
  width: 45%;
}

/* 3.2 hub page
--------------------------------------------------------------*/
.hub-page {
  padding-top: 100px;
  padding-bottom: 160px;
}
/*私たちについて*/
.hub_aboutus .h3 img,
.hub_vision .h3 img,
.hub_value .h3 img {
  height: 15px;
  margin-left: 0;
}
.hub_aboutus .h3 small,
.hub_vision .h3 small,
.hub_value .h3 small {
  display: block;
}
.hub_aboutus h2 {
  font-size: 25px;
  margin-top: 50px;
  letter-spacing: 2px;
}
.hub-aboutus_text {
  margin-top: 50px;
}
.hub_aboutus p:nth-of-type(-n+5) {
  line-height: 30px;
}
.hub_aboutus p:nth-of-type(6) {
  margin-top: 50px;
}
.hub_aboutus p.note {
  margin-top: 10px;
}
.hub_vision {
  margin-top: 100px;
  padding-bottom: 100px;
  background-color: #004482;
}
.hub_vision h2 {
  font-size: 25px;
  margin-top: 50px;
}
.hub-vision_text {
  margin-top: 50px;
}
.hub_vision p:first-of-type {
  margin-top: 30px;
}
.hub_vision p.text {
  margin-top: 10px;
}
.hub-vision_technology {
  flex-direction: column;
  align-items: flex-end;
  margin-top: 100px;
  padding: 50px 20px;
  border-radius: 5px;
  background-color: #fff;
}
.hub-vision-technology_desc h3 {
  text-align: center;
  font-size: 20px;
}
.hub-vision-technology_desc p {
  margin-top: 20px;
}
.hub_value .container {
  max-width: 600px;
}
.hub_value .flex-list {
  margin-top: 50px;
  flex-direction: column;
  justify-content: space-between;
  align-items: center;
  gap: 50px;
}
.hub_value .flex-list-item {
  width: 100%;
}
.hub_value .flex-list-item h3 {
  border-top: 3px solid #004482;
  padding-top: 30px;
  margin-top: 10px;
}
.hub_value .flex-list-item h3 img {
  height: 26px;
  margin-left: 0;
}
.hub_value .flex-list-item h3 small {
  margin-top: 5px;
  display: block;
}
.hub-value_text {
  margin-top: 30px;
  font-size: 16px;
}
@media only screen and (min-width: 768px) and (max-width: 1025px) {
  .hub-vision_technology{
    align-items: center;
  }
}
/*事業紹介*/
.page-id-23 .hub-page {
  padding-bottom: 0;
}
#reuce h2 {
  font-size: 25px;
}
#reuce .sub-title {
  font-size: 16px;
  margin-top: 30px;
}
.reuse-img {
  margin-top: 50px;
}
.reuse_lead {
  margin-top: 50px;
}
.reuse_lead p:not(:first-of-type) {
  margin-top: 20px;
}
#business h2 {
  font-size: 25px;
}
#business h3 {
  font-size: 20px;
  margin-top: 30px;
}
#business h3:not(:first-of-type) {
  margin-top: 150px;
}
.business-list {
  margin: auto;
  margin-top: 30px;
  flex-wrap: wrap;
  align-items: center;
  gap: 70px;
}
.business-list-item {
  width: 100%;
}
.business-list-item_img img {
  transition: all 0.5s ease;
  border: 3px solid transparent;
  border-radius: 5px;
}
.business-list-item a:hover .business-list-item_img img {
  border: 3px solid #004482;
}
.business-list-item-title_wrap {
  margin-top: 20px;
}
.business-list-item_title {
  font-size: 16px;
  margin-left: -25px;
}
.business-list-item_title::after {
  content: "";
  display: block;
  position: absolute;
  transition: all 0.5s ease;
  background-size: contain;
  background-repeat: no-repeat;
  background-position: center;
  width: 17px;
  height: 17px;
  right: -25px;
  top: calc(50% - 7.5px);
  background-image: url(../img/icon_link.svg);
}
.business-list-item.buysell_online .business-list-item_title,
.business-list-item.buysell_kimono_online .business-list-item_title {
  display: inline-block;
}
.business-list-item_desc {
  margin-top: 20px;
}
#compliance .contents_container.left {
  flex-direction: column;
}
#compliance .contents_container.left .compliance_image {
  margin: 0;
}
#compliance .contents_container.left .compliance_image img {
  border-radius: 0 5px 5px 0;
}
#compliance .compliance_image img {
  width: 100%;
  height: 200px;
  object-fit: cover;
}
#compliance .compliance_lead {
  margin-top: 30px;
  padding: 0 20px;
}
#compliance .compliance_lead h3 {
  font-size: 20px;
  text-align: center;
}
#compliance .compliance_lead p {
  margin-top: 20px;
  font-size: 16px;
  text-align: left;
}
#compliance .compliance_lead .link_box {
  margin-left: auto;
}
@media only screen and (max-width: 1024px) {
  #compliance .contents_container.left .compliance_image {
    width: calc(100% - 20px);
  }
}
#service-technology {
  padding-top: 0px;
  margin-top: 100px;
  background: url(../img/service/img_technology_sp.png) no-repeat;
  background-size: cover;
  padding: 100px 20px;
}
#service-technology::before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  background-color: rgb(38, 47, 54, 0.7);
}
#service-technology .flex-list {
  flex-direction: column;
  align-items: center;
  margin: auto;
}
#service-technology .flex-list h2 {
  text-align: center;
  font-size: 20px;
}
#service-technology .flex-list p {
  margin-top: 20px;
}

/*安心安全の取り組み*/
#compliance_mv .page_mv img {
  object-position: center;
  height: 200px;
}
.compliance_lead {
  margin-top: 50px;
}
.compliance_lead p:not(:first-of-type) {
  margin-top: 20px;
}
#compliance-summary h3 {
  font-size: 20px;
}
#compliance-summary h3:not(:first-of-type) {
  margin-top: 100px;
}
.compliance-list {
  margin: auto;
  margin-top: 30px;
  flex-wrap: wrap;
  align-items: flex-start;
  gap: 50px;
}
.compliance-list-item {
  width: 100%;
}
.compliance-list-item_title {
  font-size: 16px;
}
.compliance-list-item_desc {
  margin-top: 20px;
}
.compliance-list-item p {
  margin-top: 20px;
}
.compliance-list.security .compliance-list-item_desc {
  margin-top: 0;
}
.compliance-list.security .compliance-list-item_desc p:first-of-type {
  margin-top: 0;
}
#compliance-summary .txt-link {
  margin-top: 20px;
}
#compliance-summary .txt-link a::after {
  content: "";
  display: block;
  position: absolute;
  transition: all 0.5s ease;
  background-size: contain;
  background-repeat: no-repeat;
  background-position: center;
  width: 17px;
  height: 17px;
  right: -25px;
  top: calc(50% - 7.5px);
  background-image: url(../img/icon_link.svg);
}
#compliance-summary .security .txt-link a::after {
  background-image: url(../img/icon_arrow.svg);
}
@media only screen and (min-width: 768px) and (max-width: 1024px) {
  #compliance_mv .page_mv img{
    height: 400px;
  }
}
/*事業を支えるテクノロジー戦略*/
#technology_mv {
  flex-direction: column;
  gap: 40px;
}
.technology_lead {
  max-width: 600px;
  order: 2;
}
.technology_lead h2 {
  font-size: 25px;
}
.technology_lead .technology-lead_txt {
  margin-top: 30px;
}
.technology_lead .technology-lead_txt p:not(:first-of-type) {
  margin-top: 20px;
}
#technology_mv .page_mv_01 {
  width: 230px;
  height: 150px;
  order: 1;
}
#technology_mv .page_mv_01 img {
  object-fit: cover;
  height: 150px;
  border-radius: 0 5px 5px 0;
}
#technology_mv .page_mv_03 {
  position: absolute;
  width: 125px;
  height: 100px;
  top: 100px;
  right: 0;
}
#technology_mv .page_mv_03 img {
  object-fit: cover;
  height: 100px;
  border-radius: 5px 0 0 5px;
}

#technology_dx h2 {
  font-size: 25px;
  margin-top: 20px;
}
#technology_dx h3 {
  font-size: 20px;
}
#technology_dx h3:first-of-type {
  margin-top: 50px;
}
#technology_dx h3:not(:first-of-type) {
  margin-top: 100px;
}
.technology-list {
  margin: auto;
  margin-top: 30px;
  flex-wrap: wrap;
  align-items: flex-start;
  gap: 50px;
}
.technology-list-item {
  width: 100%;
}
.technology-list-item p {
  margin-top: 20px;
}
.technology-list.cosmos .technology-list-item p {
  display: block;
}
.technology-list-item_desc p:first-of-type {
  margin-top: 0;
}
.technology-list-item_img {
  margin-top: 50px;
  order: 1;
}
#technology_leverage {
  padding-top: 0px;
  margin-top: 100px;
  background: url(../img/technology/img_leverage_sp.png) no-repeat;
  background-size: cover;
  padding: 100px 0;
}
#technology_leverage::before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  background-color: rgb(38, 47, 54, 0.75);
}
#technology_leverage h2 {
  font-size: 25px;
}
#technology_leverage .technology-list {
  margin-top: 50px;
  justify-content: center;
  align-items: stretch;
}
#technology_leverage .technology-list-item {
  background-color: #fff;
  border-radius: 5px;
  gap: 30px;
  width: 100%;
  max-width: 295px;
  padding: 30px 20px;
}
#technology_leverage .technology-list-item_desc {
  margin-top: 15px;
}
#technology_dx-nintei .flex-list {
  margin-top: 30px;
  flex-wrap: wrap;
  flex-direction: column;
  align-items: center;
  gap: 30px;
}
.technology-dx-nintei_txt {
  width: 100%;
  order: 1;
}
.technology-dx-nintei_txt p {
  font-size: 16px;
  margin-bottom: 20px;
}
.technology-dx-nintei_img {
  width: calc(100% - 20px);
  margin-top: 50px;
  order: 2;
}
.technology-dx-nintei_img img {
  width: 100%;
}
@media only screen and (min-width: 768px) and (max-width: 1024px) {
  #technology_mv .page_mv_01 {
    width: calc(60% - 30px);
    height: 180px;
  }
  #technology_mv .page_mv_01 img {
    height: 180px;
  }
  #technology_mv .page_mv_03 {
    width: calc(40% - 30px);
    height: 120px;
  }
  #technology_mv .page_mv_03 img {
    height: 120px;
  }
  .technology-dx-nintei_img {
    max-width: 250px;
  }
}
#technology_promotion .flex-list {
  margin-top: 30px;
  flex-wrap: wrap;
  justify-content: flex-end;
  flex-direction: column;
  align-items: flex-end;
  gap: 30px;
}
.technology-promotion_txt {
  width: calc(100% - 40px);
  padding: 0 20px;
  order: 2;
}
.technology-promotion_txt p {
  font-size: 16px;
  margin-bottom: 20px;
}
.technology-promotion_txt p.auther {
  font-size: 13px;
}
.technology-promotion_txt p.auther span {
  font-size: 16px;
  margin-left: 15px;
}
.technology-promotion_img {
  width: calc(100% - 20px);
}
.technology-promotion_img img {
  width: 100%;
  height: 200px;
  object-fit: cover;
  object-position: 20%;
  border-radius: 5px 0 0 5px;
}
.technology-list.pickup {
  flex-direction: column;
  gap: 30px;
}
.technology-list.pickup .technology-list-item {
  width: 100%;
}
.technology-list.pickup .technology-list-item_img {
  margin-top: 0;
}
.technology-list.pickup .technology-list-item_img img {
  width: 100%;
  border-radius: 5px;
  transition: all 0.5s ease;
  border: 3px solid transparent;
}
.technology-list-item a:hover .technology-list-item_img img {
  border: 3px solid #004482;
}
.technology-list.pickup .technology-list-item a .technology-list-item_desc {
  overflow: hidden;
  display: -webkit-box;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 3;
}
@media only screen and (max-width: 1024px) {
  .technology_lead {
    margin: auto;
    padding: 0 20px;
  }
  #technology_dx .title_label img {
      height: 50px;
  }
  .technology-list.pickup {
    max-width: 600px;
  }
  .technology-list.pickup .technology-list-item a {
    display: flex;
    flex-direction: row;
    gap: 13px;
  }
  .technology-list.pickup .technology-list-item a .technology-list-item_img img {
    width: 150px;
    height: 78px;
  }
  .technology-list.pickup .technology-list-item a .technology-list-item_desc {
    order: 2;
  }
  .technology-list.pickup .technology-list-item p {
    margin-top: 0;
  }
}
@media only screen and (min-width: 768px) and (max-width: 1024px) {
  .technology-promotion_img img{
    height: 400px;
  }
}

/*会社概要*/
.corporate-info a {
  color: #004482;
}
.corporate-info a:link {
  text-decoration: underline;
}
.corporate-info table {
  width: 100%;
  border-spacing: 0;
}
.corporate-info th {
  display: block;
  padding: 30px 0 0;
  width: 100%;
  text-align: left;
  letter-spacing: 0.8px;
  font-size: 13px;
}
.corporate-info th.top__cont {
  padding-top: 0;
}
.corporate-info td {
  display: block;
  border-bottom: 1px solid #EEEEEE;
  padding: 10px 0 30px 0;
  letter-spacing: 0.8px;
}
.corporate-info iframe {
  width: 100%;
/*  height: 150px;*/
  margin: 15px 0 30px;
  aspect-ratio: 16/9;
/*  filter: grayscale(1);*/
}
/*
#map_canvas {
  width: 149%;
  margin-left: -49%;
  height: 300px;
  margin-top: 13px;
}
*/
.corporate-info__access {
  margin-top: 10px;
  padding-left: 23px;
  display: block;
}
.corporate-info__access:before {
  content: "";
  position: absolute;
  display: block;
  width: 17px;
  height: 17px;
  background: center / contain no-repeat url(../img/icon_map.svg);
  top: 7px;
  left: 0;
}
/*グループ企業情報*/
.group-info-list {
  display: flex;
  flex-direction: row;
  justify-content: space-between;
  align-items: flex-start;
  flex-wrap: wrap;
  gap: 10px;
  margin-top: 20px;
}
.group-info-item {
  width: calc(50% - 7.5px);
}
.group-info-item:nth-of-type(n+3) {
  margin-top: 35px;
}
.group-info-item:nth-of-type(6) span{
  letter-spacing: 0.36px;
}
.group-info-item img {
  max-width: 160px;
  height: 60px;
  box-sizing: border-box;
  transition: all 0.5s ease;
  border: 3px solid transparent;
  border-radius: 5px;
}
.group-info-item a:hover img {
  border: 3px solid #004482;
}

.group-info-item-desc {
  display: flex;
  justify-content: center;
  align-items: center;
  gap: 5px;
  margin-top: 10px;
  span {
    font-size: 13px;
    letter-spacing: 0.4px;
  }
}
.group-info-item-desc svg {
  width: 11px;
  height: 11px;
  margin-left: 5px;
}
.group-info-item-desc svg .icon_link_01 {
  fill: none;
}
.group-info-item-desc svg .icon_link_02 {
  fill: #004482;
}
/*役員紹介*/
.directors .container h2 {
  margin-top: 20px;
}
.directors .link_box::after {
  width: 16px;
  height: 16px;
  right: 15px;
  top: calc(50% - 8px);
  background-image: url(../img/icon_zoom.svg);
}
.directors .link_box:hover::after {
  background-image: url(../img/icon_zoom_white.svg);
}
/*CEOメッセージ*/
#ceo .frame-box-wrap {
  display: flex;
  flex-wrap: wrap;
  flex-direction: column;
  gap: 20px;
}
#ceo .frame-box {
  margin-top: 30px;
  display: flex;
  flex-wrap: wrap;
  flex-direction: column;
  align-items: flex-end;
  gap: 30px;
}
#ceo .frame-desc {
  padding: 0 20px;
  order: 2;
}
#ceo h3 {
  font-size: 20px;
}
#ceo h3 span {
  font-size: 13px;
  padding-right: 15px;
}
#ceo p {
  margin-top: 20px;
}
#ceo .frame-img {
  width: calc(100% - 20px);
  height: 200px;
  order: 1;
}
#ceo .frame-img img {
  object-fit: cover;
  height: 200px;
  border-radius: 5px 0 0 5px;
}
#ceo .link_box a svg {
  width: 97px;
  height: 16px;
}
/*役員紹介*/
#director_auditors .flex-list,
#director .flex-list,
#officers .flex-list {
  flex-wrap: wrap;
  flex-direction: row;
  justify-content: space-between;
  align-items: flex-start;
  gap: 15px;
  margin-top: 30px;
}
#director_auditors .flex-list-item,
#director .flex-list-item,
#officers .flex-list-item {
  width: calc(50% - 15px);
  max-width: 320px;
}
#director_auditors .flex-list-item a img,
#director .flex-list-item a img,
#officers .flex-list-item a img {
  transition: .3s;
}
#director_auditors .flex-list-item a:hover img,
#director .flex-list-item a:hover img,
#officers .flex-list-item a:hover img {
  opacity: 0.7;
}
#director_auditors .flex-list-item a:before,
#director .flex-list-item a:before,
#officers .flex-list-item a:before {
  content: "";
  display: block;
  position: absolute;
  width: 40px;
  height: 40px;
  right: 0;
  bottom: 5px;
  background-color: #004482;
  border-radius: 5px 0 5px 0;
  z-index: 2;
}
#director_auditors .flex-list-item a:hover::before,
#director .flex-list-item a:hover::before,
#officers .flex-list-item a:hover::before {
  background-color: #262F36;
}
#director_auditors .flex-list-item a:after,
#director .flex-list-item a:after,
#officers .flex-list-item a:after {
  content: "";
  display: block;
  position: absolute;
  width: 16px;
  height: 16px;
  right: 0;
  bottom: 5px;
  background-image: url(../img/icon_zoom_white.svg);
  transition: all 0.5s ease;
  background-size: contain;
  background-repeat: no-repeat;
  background-position: center;
  margin: 12px;
  z-index: 3;
}
@media only screen and (max-width: 1024px) {
  #director_auditors .flex-list-item:nth-of-type(n+3),
  #director .flex-list-item:nth-of-type(n+3),
  #officers .flex-list-item:nth-of-type(n+3) {
    margin-top: 15px;
  }
}

/* BUYSELL Research */
/* -- 研究領域 */
#research .research_about {
  display: flex;
  flex-wrap: wrap;
  gap: 20px;
  margin-top: 30px;
}
#research .research_about li {
  width: 100%;
  display: flex;
  flex-wrap: nowrap;
  gap: 10px;
  align-items: center;
}
#research .research_about li .research_aboutimg {
  width: 30%;
}
#research .research_about li .research_abouttext {
  width: calc(100% - 30% - 10px);
}
#research .research_about li p.research_abouttitle {
  font-size: 20px;
  font-weight: bold;
}
#research .research_about li p.research_aboutdetail {
  font-size: 16px;
  line-height: 1.5;
}

/* -- 研究に使用するデータ */
#research .research_numlist {
  display: flex;
  flex-wrap: wrap;
  gap: 20px;
  justify-content: center;
  margin: 30px 0 20px;
}
#research .research_numlist li {
  width: 100%;
  background-color: #89b2d7;
  padding: 20px 0;
}
#research .research_numlist li p {
  text-align: center;
}
#research .research_numlist li p:nth-child(1) {
  font-size: 20px;
  font-weight: bold;
}
#research .research_numlist li p:nth-child(2) {
  font-size: 14px;
}
#research .research_numlist + small {
  display: block;
  text-align: right;
}

/* -- メンバー紹介 */
#research .technology-list-item {
  display: flex;
  flex-wrap: wrap;
  align-items: normal;
  gap: 80px;
  width: 100%;
}
#research .technology-list-item_desc {
  width: 100%;
}
#research .technology-list-item_desc .technology-list-img {
  width: 100%;
  aspect-ratio: 1 / 1;
  margin-bottom: 25px;
}
#research .technology-list-item_desc .technology-list-img img {
  width: 100%;
  object-fit: cover;
  border-radius: 10px;
}
#research .technology-list-item_desc .technology-list-desc .technology-list-title p:nth-child(1) {
  margin-bottom: 5px;
}
#research .technology-list-item_desc .technology-list-desc .technology-list-title p:nth-child(2) {
  margin-top: 0 !important;
  margin-bottom: 10px;
}

/* M&A */
.section.sec-ma {
  padding-top: 100px;
}
.sec-ma.ma_lead {
  padding-top: 0;
}
.sec-ma.ma_lead .title {
  color: #004482;
  font-size: 25px;
  margin-bottom: 30px;
  font-weight: bold;
}
.sec-ma.ma_lead p {
  color: #333;
  font-weight: bold;
}
.sec-ma .ma_title {
  margin-bottom: 30px;
}
.sec-ma.ma_status p {
  margin-bottom: 20px;
}
.sec-ma.ma_group .ma_group_list:nth-of-type(n+2) {
  margin-top: 70px;
}
.sec-ma.ma_group .ma_group_list .ma_group_img {
  margin-bottom: 20px;
}
.sec-ma.ma_group .ma_group_list .ma_group_txt .ma_group_name {
  text-align: center;
  margin-bottom: 20px;
}
.sec-ma.ma_group .ma_group_list_wrap .ma_group_list_graph p{
  color: #004482;
  font-weight: bold;
  margin: 30px 0 10px;
}
.sec-ma.ma_policy .ma_title {
  margin-bottom: 50px;
}
.sec-ma.ma_policy .ma_policy_lists .ma_policy_list:not(:last-child) {
  margin-bottom: 50px;
}
.sec-ma.ma_policy .ma_policy_lists .ma_policy_list .ma_policy_img {
  width: 80px;
  height: 80px;
  margin: 0 auto 20px;
}
.sec-ma.ma_policy .ma_policy_lists .ma_policy_list .ma_policy_title {
  font-size: 20px;
  text-align: center;
  margin-bottom: 20px;
}
.ma_interview .ma_interview_contents .ma_interview_item .ma_interview_title {
  letter-spacing: 0.05em;
  margin-bottom: 15px;
}
.ma_interview .ma_interview_contents .ma_interview_item:not(:last-child) {
  margin-bottom: 50px;
}
.ma_interview .ma_interview_contents .ma_interview_item .ma_interview_lists {
  display: flex;
}
.ma_interview .ma_interview_contents .ma_interview_item .ma_interview_lists .ma_interview_list .ma_interview_list_img {
  width: 280px;
  height: 146px;
}
.ma_interview .ma_interview_contents .ma_interview_item .ma_interview_lists .ma_interview_list .ma_interview_list_img img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.ma_interview .ma_interview_contents .ma_interview_item .ma_interview_lists .ma_interview_list:not(:last-child) {
  margin-right: 20px;
}
.ma_interview .ma_interview_contents .ma_interview_item .ma_interview_lists.slick-slider button {
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  outline: none;
  padding: 0;
  border: none;
  background-color: transparent;
}
.ma_interview .ma_interview_contents .ma_interview_item .ma_interview_lists.slick-slider button:focus {
  outline: none;
}
.ma_interview .ma_interview_contents .ma_interview_item .ma_interview_lists.slick-slider button.arrow-common {
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  background-size: contain;
  background-repeat: no-repeat;
  width: 28px;
  padding-top: 28px;
  cursor: pointer;
  z-index: 5;
}
.ma_interview .ma_interview_contents .ma_interview_item .ma_interview_lists.slick-slider button.arrow-prev {
  background-image: url(../img/ma/icon_interview.svg);
  transform: translateY(-50%) scale(-1, 1);
  filter: FlipH;
  -ms-filter: "FlipH";
  left: -14px;
}
.ma_interview .ma_interview_contents .ma_interview_item .ma_interview_lists.slick-slider button.arrow-next {
  background-image: url(../img/ma/icon_interview.svg);
  right: -14px;
}
.ma_interview .ma_interview_contents .ma_interview_item .ma_interview_lists.slick-slider button.arrow-common.slick-disabled {
  display: none!important;
}
.sec-ma.ma_contact .ma_contact_txt .ma_contact_btn {
  max-width: 335px;
  height: 85px;
  border-radius: 80px;
}
.sec-ma.ma_contact .ma_contact_txt .ma_contact_btn::after {
  right: 20px;
}
.sec-ma.ma_contact .ma_contact_txt .ma_contact_btn a {
  color: #fff;
  font-size: 18px;
  font-weight: bold;
  margin-right: 16px;
  line-height: 85px;
}
@media only screen and (max-width: 480px) {
  .ma_interview .ma_interview_contents {
    padding-right: 0;
  }
  .ma_interview .ma_interview_contents .ma_interview_item .ma_interview_lists.slick-slider button.arrow-prev {
    left: 5px;
  }
  .ma_interview .ma_interview_contents .ma_interview_item .ma_interview_lists.slick-slider button.arrow-next {
    right: 5px;
  }
}

/* 3.3 detail page
--------------------------------------------------------------*/
.detail-page {
  padding-top: 100px;
  padding-bottom: 160px;
}

/* 3.4 single post
--------------------------------------------------------------*/
main.single-post {
  padding-top: 100px;
  padding-bottom: 160px;
}
main.archive {
  padding-top: 100px;
  padding-bottom: 160px;
}
.info-page {
  padding-top: 100px;
  padding-bottom: 160px;
}
.p404 {
  padding-top: 100px;
  padding-bottom: 160px;
}
.single-post h2 {
  margin-bottom: 50px;
/*  padding-bottom: 10px;*/
/*  border-bottom: 3px solid #004482;*/
  font-weight: 600;
  font-size: 20px;
  line-height: 1.6;
}
/*
.single-post .post-date {
  color: #ccc;
}
*/
.single-post p {
  font-size: 13px;
  margin-bottom: 20px;
}
.single-post img {
  max-width: 100%;
  height: auto;
}
#bx-pager::after,
.post-nav::before {
  content: "";
  display: block;
  clear: both;
}
.post-nav {
  text-align: center;
/*  border-top: 1px solid #004482;*/
  padding-top: 40px;
  margin-top: 50px;
  padding-bottom: 20px;
}
.post-nav .pre-post,
.post-nav .nxt-post {
  display: inline-block;
}
.pre-post a,
.nxt-post a {
  padding: 12px 20px;
  background-color: #004482;
  color: #fff;
  z-index: 2;
}
.pre-post a::before,
.nxt-post a::before {
  position: absolute;
  bottom: 0;
  left: 0;
  content: '';
  width: 100%;
  height: 100%;
  background: #262F36;
  transform: scale(0, 1);
  transform-origin: left top;
  transition: transform .3s;
}
.pre-post a::before {
  transform: scale(0, 1);
  transform-origin: right top;
}
.pre-post a:hover::before,
.nxt-post a:hover::before {
  transform: scale(1, 1);
}

.post-nav li a {
    margin: 10px;
}
/* template */
.hyo3x3 {
  margin-bottom: 30px;
}
.hyo3x3 li {
  width: 33%;
  float: left;
}
.subhyo {
}
.subhyo li {
  width: 100%;
  float: none;
  text-align: center;
}
.subhyo li:first-child {
  border-bottom: 1px solid #ccc;
}
.img-left {
  margin: 20px 0;
}
/*==============================================================
4.0 Breadcrumbs
--------------------------------------------------------------*/
/* 4.1
--------------------------------------------------------------*/
/*==============================================================
5.0 Footer
--------------------------------------------------------------*/
#footerWrap {}
.nav__footer {
  background-color: #262F36;
  padding: 100px 0 50px;
  height: 100% !important;
  overflow-x: hidden;
  line-height: 1.5;
  letter-spacing: 0;
}
.nav__footer .container {
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  align-items: center;
}
.nav__footer img.logo {
  width: 100px;
  height: 45px;
  margin-left: 0;
}

/* トップへ戻るボタン */
.page_top_btn {
  position: absolute;
  top: -61px;
  right: 0;
  padding: 15.63px 20.63px;
  background: #004482;
  border-top: 1px solid #fff;
  border-left: 1px solid #fff;
  border-radius: 5px 0 0 0;
  color: #fff;
  text-align: center;
  overflow: hidden;
  transition: 0.3s;
}
/* マウスオーバー時 */
.page_top_btn::before {
  position: absolute;
  bottom: 0;
  left: 0;
  content: '';
  width: 100%;
  height: 100%;
  background: #262F36;
  border-radius: 5px 0 0 0;
  transform: scale(1, 0);
  transform-origin: left top;
  transition: transform .3s;
}
.page_top_btn:hover {
  padding: 13.63px 20.63px 17.63px;
}
.page_top_btn:hover::before {
  transform: scale(1, 1);
}
.page_top_btn svg {
  transform: rotate(-90deg);
  width: 18.75px;
  height: 18.75px;
}
.page_top_btn svg .icon_fill_01 {fill: none;}
.page_top_btn svg .icon_fill_02 {fill: #fff;}

/*Social*/
.social-menu {
  margin-top: 50px;
  display: flex;
  flex-direction: row;
  justify-content: space-between;
  gap: 15px;
}
.social-menu li {}
.social-menu li a {
  display: block;
  text-indent: 100%;
  white-space: nowrap;
  overflow: hidden;
  width: 35px;
  height: 35px;
  background-size: auto 100%;
  background-repeat: no-repeat;
  background-position: center center;
}
.social-menu li a:hover {
  opacity: 0.7;
}
.social-menu li:first-child a{
  background-image: url(../img/sns/icon_SNS_facebook.svg);
}
.social-menu li:first-child+li a{
  background-image: url(../img/sns/icon_SNS_x.svg);
}
.social-menu li:first-child+li+li a{
  background-image: url(../img/sns/icon_SNS_note.svg);
}
@media only screen and (max-width: 1024px) {
  .social-menu {}
}
/* 5.1 nav
--------------------------------------------------------------*/
.footer-menu {
  display: flex;
  flex-wrap: wrap;
  flex-direction: row;
  justify-content: flex-start;
  align-items: flex-start;
  gap: 15px;
  margin-top: 50px;
}
.footer-menu li.menu-item {
  width: calc((100% - 15px) / 2);
  padding: 0;
  font-weight: 600;
}
.footer-menu > li:not(:last-child) {
  margin-bottom: 15px;
}
.footer-menu li a {
  color: #fff;
}
.footer-menu li.menu-item-has-children a {
}
.footer-menu ul.sub-menu {
  /* margin-top: 10px; */
}
.footer-menu ul.sub-menu li {
  width: 100%;
  padding: 5px 0 0;
}
.footer-menu ul.sub-menu li a {
  color: #fff;
  font-size: 13px;
  font-weight: 200;
  letter-spacing: 0.65px;
  padding: 0;
  display: inline-flex;
  align-items: center;
}
.footer-menu ul.sub-menu li a:hover {
  opacity: 0.7;
}
.footer-menu ul.sub-menu li a::before {
  content: '';
  display: inline-block;
  background-color: #fff;
  width: 8px;
  height: 1px;
  margin-right: 8px;
}
@media only screen and (min-width: 1025px) {
  .footer-menu {
    flex-wrap: wrap;
  }
  .footer-menu li.menu-item {
    width: calc((100% - 45px) / 4);
  }
}
/*新卒採用*/
.footer-menu ul.sub-menu li.menu-item-174 a::after {
  content: "";
  display: block;
  position: absolute;
  background-size: contain;
  background-repeat: no-repeat;
  background-position: center;
  width: 12px;
  height: 12px;
  right: -20px;
  top: calc(50% - 5px);
  background-image: url(../img/icon_link_white.svg);
}


/* 5.2 copyright
--------------------------------------------------------------*/
.copyright__footer .container {
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  align-items: flex-start;
  gap: 30px;
  padding-top: 20px;
  padding-bottom: 20px;
}
.copyright {}
.menu-terms-container {
  width: 100%;
}
.terms-menu {
  border-bottom: 1px solid rgba(255, 255, 255, 0.1);
  border-top: 1px solid rgba(255, 255, 255, 0.1);
}
.terms-menu {
  margin: 0;
  display: flex;
  flex-direction: row;
  flex-wrap: wrap;
  justify-content: flex-start;
  gap: 15px;
}
.terms-menu li {
  width: calc((100% - 15px) / 2);
  line-height: 1.3;
}
.terms-menu li a {
  font-size: 13px;
}
.terms-menu li a:hover {
  text-decoration: underline;
}
#menu-item-75 {
  min-height: 135px;
}
