@charset "UTF-8";
/*!
global > color
------------------------------
*/
:root {
  --cl-main: #243D5F;
  --cl-border: #DDE1E5;
  --cl-bg-gray: #F6F6F6;
  --cl-text-dark: #333;
}

/*!
global > content-width
------------------------------
*/
/*!
global > font
------------------------------
*/
:root {
  --base-font-ja: "Noto Sans JP", "游ゴシック体", YuGothic, "游ゴシック",
      "Yu Gothic", "メイリオ", sans-serif;
  --font-en: "Inter", sans-serif;
  --font-en02: "Afacad", sans-serif;
  --font-en03: "Plus Jakarta Sans", sans-serif;
  --font-mplus: "M PLUS 1", sans-serif;
  --base-font-weight: 500;
  --base-color-txt: #243d5f;
  --header-height-pc: 107px;
  --space-component: 24px;
  --space-h1-content: 60px;
  --space-h2-top: 48px;
  --space-title-text: 20px;
  --space-text: 16px;
  --space-title-title: 32px;
  --space-image-text: 12px;
}
@media screen and (min-width: 768px) {
  :root {
    --space-component: 40px;
    --space-h1-content: 100px;
    --space-h2-top: 80px;
    --space-title-text: 32px;
    --space-text: 24px;
    --space-title-title: 48px;
    --space-image-text: 20px;
  }
}

/*!
global > mixin
------------------------------
*/
.p_company_table .logo figcaption, .p_company_tablegroup .table_caption, .p_company_orgmap__time {
  font-size: 0.75rem;
}
@media screen and (min-width: 768px) {
  .p_company_table .logo figcaption, .p_company_tablegroup .table_caption, .p_company_orgmap__time {
    font-size: 0.875rem;
  }
}

.p_company_tablegroup .table_note {
  font-size: 0.875rem;
}
@media screen and (min-width: 768px) {
  .p_company_tablegroup .table_note {
    font-size: 1rem;
  }
}

.p_company_table, .p_company_map__item dd {
  font-size: 0.9375rem;
}
@media screen and (min-width: 768px) {
  .p_company_table, .p_company_map__item dd {
    font-size: 1.0625rem;
  }
}

.p_company_map__item dt {
  font-size: 1rem;
}
@media screen and (min-width: 768px) {
  .p_company_map__item dt {
    font-size: 1.125rem;
  }
}

.p_company_tablegroup .doc_download a {
  font-size: 1.0625rem;
}
@media screen and (min-width: 768px) {
  .p_company_tablegroup .doc_download a {
    font-size: 1.25rem;
  }
}

.p_company_map__ttl {
  font-size: 1.3125rem;
}
@media screen and (min-width: 768px) {
  .p_company_map__ttl {
    font-size: 1.75rem;
  }
}

.p_company .h2,
.p_company .h3,
.p_company .h4,
.p_company .h5 {
  margin: 0;
}
.p_company_gray_sec {
  background: var(--cl-bg-gray);
}
.p_company_nav {
  padding-block: 32px;
  margin: 40px 0 0;
}
@media screen and (min-width: 768px) {
  .p_company_nav {
    padding-block: 54px;
    margin: 82px 0 0;
  }
}
.p_company_sec {
  padding-block: 50px;
}
@media screen and (min-width: 768px) {
  .p_company_sec {
    padding-top: 100px;
    padding-bottom: 121px;
  }
}
@media screen and (min-width: 768px) {
  .p_company_sec.sec02 {
    padding-top: 91px;
    padding-bottom: 139px;
  }
}
@media screen and (min-width: 768px) {
  .p_company_sec.sec03 {
    padding-top: 120px;
    padding-bottom: 197px;
  }
}
.p_company_table {
  border-collapse: collapse;
  width: 100%;
  line-height: 1.6;
  margin-top: 25px;
  display: block;
}
@media screen and (min-width: 768px) {
  .p_company_table {
    display: table;
    margin-top: 53px;
  }
}
.p_company_table .logo {
  max-width: 300px;
}
.p_company_table .logo img {
  width: 100%;
  height: auto;
}
.p_company_table .logo figcaption {
  font-family: var(--font-en);
  font-weight: 400;
  color: #333;
  margin-top: 0.7857142857em;
  line-height: 1;
}
@media screen and (min-width: 768px) {
  .p_company_table .logo {
    max-width: 503px;
  }
}
.p_company_table tbody {
  display: block;
}
@media screen and (min-width: 768px) {
  .p_company_table tbody {
    display: table-row-group;
  }
}
.p_company_table tbody th {
  background-color: var(--cl-main);
  font-weight: 500;
  color: #fff;
  display: block;
  padding: 10px;
}
@media screen and (min-width: 768px) {
  .p_company_table tbody th {
    vertical-align: middle;
    border-bottom: 2px solid #fff;
    display: table-cell;
    width: 240px;
    padding: 27px 20px;
  }
}
.p_company_table tbody td {
  display: block;
  padding: 10px;
}
@media screen and (min-width: 768px) {
  .p_company_table tbody td {
    border-bottom: 2px solid #DDE1E5;
    display: table-cell;
    padding: 24px;
  }
}
.p_company_table tbody td p {
  line-height: 1.6;
}
@media screen and (min-width: 768px) {
  .p_company_table tbody tr:first-child th {
    border-top: 2px solid #fff;
  }
  .p_company_table tbody tr:first-child td {
    border-top: 2px solid #DDE1E5;
  }
}
.p_company_map {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  gap: 20px;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  margin-top: 32px;
}
@media screen and (min-width: 768px) {
  .p_company_map {
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
        -ms-flex-direction: row;
            flex-direction: row;
    margin-top: 67px;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
  }
}
.p_company_map__ttl {
  font-weight: 300;
  margin-bottom: 10px;
}
@media screen and (min-width: 768px) {
  .p_company_map__ttl {
    margin-bottom: 20px;
  }
}
.p_company_map__ttl::before {
  width: 8px;
}
.p_company_map__item {
  letter-spacing: 0.022em;
  line-height: 1.7;
}
.p_company_map__item:not(:first-child) {
  margin-top: 10px;
}
@media screen and (min-width: 768px) {
  .p_company_map__item:not(:first-child) {
    margin-top: 15px;
  }
}
.p_company_map__item dt {
  font-weight: 400;
}
.p_company_map__content {
  -webkit-box-flex: 1;
      -ms-flex: 1;
          flex: 1;
}
@media screen and (min-width: 768px) {
  .p_company_map__mapbox {
    width: 58.3333333333%;
  }
}
.p_company_map__frame {
  aspect-ratio: 7/4;
  max-height: 400px;
}
@media screen and (min-width: 768px) {
  .p_company_map__frame {
    margin-top: 12px;
  }
}
.p_company_map__frame iframe {
  width: 100%;
  height: 100%;
}
.p_company_tablegroup {
  margin-top: 20px;
}
@media screen and (min-width: 768px) {
  .p_company_tablegroup {
    margin-top: 43px;
  }
}
.p_company_tablegroup .table {
  line-height: 1.5;
  margin-bottom: 0;
}
.p_company_tablegroup .table td {
  background: #fff;
}
@media screen and (min-width: 768px) {
  .p_company_tablegroup .table tbody tr:first-child td {
    padding-block: 6px;
  }
}
@media screen and (min-width: 768px) {
  .p_company_tablegroup .table tbody td {
    padding-block: 10px;
  }
}
.p_company_tablegroup .table_caption {
  letter-spacing: 0.01em;
  text-align: right;
  margin-bottom: 10px;
}
.p_company_tablegroup .table_note {
  text-indent: -34px;
  padding-left: 34px;
  margin-top: 15px;
  color: #201F1F;
}
@media screen and (min-width: 768px) {
  .p_company_tablegroup .table_note {
    margin-top: 20px;
  }
}
.p_company_tablegroup .table_note::before {
  content: "(注)";
  margin-right: 7px;
}
.p_company_tablegroup .doc_download {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  margin-top: 20px;
}
@media screen and (min-width: 768px) {
  .p_company_tablegroup .doc_download {
    margin-top: 27px;
  }
}
.p_company_tablegroup .doc_download a {
  display: inline-block;
  width: 100%;
  max-width: 590px;
  background: var(--cl-main);
  text-align: center;
  font-weight: 400;
  position: relative;
  color: #FFF;
  border-radius: 4px;
  padding-block: 15px;
}
@media screen and (min-width: 768px) {
  .p_company_tablegroup .doc_download a {
    border-radius: 6px;
    padding-block: 21px;
  }
}
.p_company_tablegroup .doc_download a::after {
  content: "";
  position: absolute;
  background-image: url("../images/common/icon_pdf.svg");
  background-repeat: no-repeat;
  background-size: 100% 100%;
  top: 50%;
  translate: 0 -50%;
  width: 18px;
  height: 23px;
  right: 20px;
}
@media screen and (min-width: 768px) {
  .p_company_tablegroup .doc_download a::after {
    width: 23px;
    height: 29px;
    right: 33px;
  }
}
.p_company_orgmap {
  margin-top: 20px;
}
@media screen and (min-width: 768px) {
  .p_company_orgmap {
    margin-top: 43px;
  }
}
.p_company_orgmap__time {
  letter-spacing: 0.01em;
  text-align: right;
}
.p_company_orgmap__chart {
  text-align: center;
  margin-top: 10px;
}
.p_company_orgmap__chart img {
  width: 100%;
  height: auto;
}
@media screen and (min-width: 768px) {
  .p_company_orgmap__chart {
    margin-top: 18px;
  }
  .p_company_orgmap__chart img {
    max-width: 690px;
  }
}
.p_company_links {
  padding-bottom: 40px;
}
@media screen and (min-width: 768px) {
  .p_company_links {
    padding-bottom: 88px;
  }
}
.p_company_links .c_related_links {
  padding-top: 20px;
}
@media screen and (min-width: 768px) {
  .p_company_links .c_related_links:nth-of-type(1) {
    padding-top: 50px;
  }
}
@media screen and (min-width: 768px) {
  .p_company_links .c_related_links:nth-of-type(2) {
    padding-top: 5px;
  }
}
@media screen and (min-width: 768px) {
  .p_company_links .c_related_links:nth-of-type(3) {
    padding-top: 17px;
  }
}