@charset "utf-8";


/* **********************************************************
	index
********************************************************** */
/* 会長メッセージ
--------------------------------------------------------------------*/

.sec05.index #page_kv {
  margin-top: 19px;
}

.sec05.index #page_kv .page_kv_head {
  width: calc(100% - 60px);
  margin: 0 auto;
  position: relative;
  max-width: 1200px;
}

.sec05.index #page_kv figure {
  position: relative;
  min-height: 370px;
}

.sec05.index #page_kv figure::before {
  content: '';
  display: block;
  width: 100%;
  padding-top: calc(400 / 1140 * 100%);
}

.sec05.index #page_kv figure picture {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  width: 100%;
  height: 100%;
}

.sec05.index #page_kv figure picture img {
  height: 100%;
  object-fit: cover;
}

.sec05.index #page_kv .text_area {
  position: absolute;
  left: 50%;
  bottom: calc(54 / 400 * 100%);
  text-shadow: 2px 2px 3px rgba(255, 255, 255, 0.75),-2px 2px 3px rgba(255, 255, 255, 0.75),2px -2px 3px rgba(255, 255, 255, 0.75),-2px -2px 3px rgba(255, 255, 255, 0.75);
  font-size: 1.6rem;
}
.sec05.index #page_kv .text_area .fv__title{
  font-size: 1.8rem;
    font-weight: bold;
    line-height: 1.8;
    margin-bottom: 40px;
    max-width: 410px;
}
.sec05.index #page_kv .term {
  /* margin-bottom: 10px; */
  font-size: 1.2rem;
}

.sec05.index #page_kv .description {
  font-weight: 700;

}

.sec05.index #page_kv .page_kv_content {
  margin-top: 23px;
}

.sec05.index #page_kv .page_kv_content h2 {
  font-size: 1.8rem;
  font-weight: 700;
  text-align: center;
}

.sec05.index .catch {
  margin: 50px auto 0;
}

.sec05.index #section01 .catch {
  width: calc(634 / 840 * 100%);
  max-width: 634px;
}
.sec05.index #section03 .catch {
  width: calc(678 / 840 * 100%);
  max-width: 678px;
}


.sec05.index .detail {
  width: 100%;
  margin: 50px auto 0;
}

.sec05.index .detail_title {
  font-size: 1.6rem;
  font-weight: 700;
  margin-bottom: 15px;
}

.sec05.index .detail_img {
  margin-bottom: 50px;
}

.sec05.index #section04 .detail {
  width: calc(420 / 840 * 100%);
  max-width: 420px;
  margin: 37px auto 0;
}


.sec05.index #section05 .detail {
  width: calc(440 / 840 * 100%);
  max-width: 440px;
  margin: 75px auto 0;
}

.sec05.index #section05 .detail_title {
  margin-bottom: 8px;
}

.sec05.index #section05 .detail_img {
  margin-bottom: 45px;
}


@media screen and (max-width: 768px) {

  .sec05.index #page_kv {
    margin-top: 9px;
}

.sec05.index #page_kv .page_kv_head {
    width: calc(100% - 30px);
}
.sec05.index #page_kv figure {
  min-height: unset;
}
.sec05.index #page_kv figure::before {
    padding-top: calc(320 / 690 * 100%);
}

.sec05.index #page_kv .text_area {
    line-height: 1;
    font-size: 1.2rem;
    top: calc(50% - 6px);
}

.sec05.index #page_kv .term {
    margin-top: 6px;
    font-size: 1.6rem;
}
.sec05.index #page_kv .description {
  font-size: 1.8rem;
}

.sec05.index #page_kv .page_kv_content {
    margin-top: 20px;
}

.sec05.index #page_kv .page_kv_content h2 {
    font-size: 2rem;
    line-height: 1.7;
    text-align: left;
}

.sec05.index .detail {
    margin: 25px auto 0;
}

.sec05.index .detail_title {
    margin-bottom: 5px;
}

  .sec05.index .detail_img {
      margin-bottom: 25px;
  }

    .sec05.index .catch {
        margin: 25px auto 0;
    }
    .sec05.index #section01 .catch ,
    .sec05.index #section03 .catch {
      width: calc(550 / 690 * 100%);
      max-width: 360px;
      margin: 25px auto 0;
    }
  
  .sec05.index #section04 .detail {
      width: 100%;
      max-width: 345px;
      margin: 33px auto 0;
  }
  
  .sec05.index #section05 .detail {
      width: 100%;
      max-width: 345px;
      margin: 33px auto 0;
  }

  .sec05.index #section05 .detail_title {
      margin-bottom: 4px;
  }

  .sec05.index #section05 .detail_img {
      margin-bottom: 20px;
  }

}

@media screen and (max-width: 540px) {
  .sec05.index #page_kv .term {
    font-size: 3vw;
  }
  .sec05.index #page_kv .description {
    font-size: 3.4vw;
  }
  .sec05.index #page_kv .page_kv_content h2 {
    font-size: 3.7vw;
  }
}

@media screen and (max-width: 380px) {

  .sec05.index #page_kv .page_kv_content h2 {
      letter-spacing: -0.02em;
  }

}



/* **********************************************************
	.cg01
********************************************************** */
/* コーポレートガバナンス
--------------------------------------------------------------------*/
.cg01 .detail {
  margin: 68px auto 0;
}

.cg01 .detail_title {
  line-height: 1.4;
}

.cg01 .custom-scrollbar {
  width: 100%;
}


.cg01 .custom-scrollbar img,
.cg01 .custom-scrollbar table {
  cursor: grab;
}

.cg01 .detail_note {
  font-size: 1.2rem;
  margin-top: 16px;
}

@media screen and (max-width: 768px) {

  .cg01 .detail {
      margin: 33px auto 0;
  }

  .cg01 .detail_title {
      font-size: 1.6rem;
  }
  .cg01 #section03 .detail04 .detail_title {
    margin-bottom: 4px;
  }
  
  .cg01 .detail_note {
      font-size: 1rem;
  }

}

/* コーポレートガバナンスに関する基本的な考え方
--------------------------------------------------------------------*/

.cg01 #section01 .detail_title {
 margin-bottom: 9px;
}

.cg01 #section01 .detail_img img {
  width: 1383px;
}

.cg01 #section02 .content {
  max-width: 734px;
  margin: 0 auto;
}

.cg01 #section02 .date {
  font-size: 1.2rem;
  line-height: 1;
  max-width: 734px;
  margin: 0 auto 10px;
  text-align: right;
}

.cg01 #section02 .img {
  overflow: visible;
  padding: 0;
}

.cg01 #section02 .img img {
  cursor: auto;
}

@media screen and (max-width: 768px) {

  .cg01 #section01 .detail {
      margin: 33px auto 0;
  }

  .cg01 #section01 .detail_title {
      margin-bottom: 5px;
   }

   .cg01 #section01 .detail_img {
      padding-bottom: 18px;
  }
  
  .cg01 #section01 .detail_img img {
      width: 1297px;
  }

}

@media screen and (max-width: 630px) {

  .cg01 #section02 .content .img {
      overflow-x: scroll;
      padding-bottom: 18px;
  }

  .cg01 #section02 .content .img img {
      width: 610px;
      cursor: grab;
  }

  .cg01 #section02 .date {
      font-size: 1rem;
      max-width: 610px;
      padding-right: 0;
      margin-bottom: 7px;
  }

}

/* 取締役会
--------------------------------------------------------------------*/

.cg01 #section03 .detail01 {
  margin-top: 67px;
}

.cg01 #section03 .detail01 .detail_title {
  margin-bottom: 8px;
}

.cg01 #section03 .detail01 .detail_description {
  margin-bottom: 27px;
}

.cg01 #section03 .detail_description {
  margin-bottom: 20px;
}

.cg01 #section03 .detail_img {
  max-width: 620px;
  margin: 0 auto;
  overflow: visible;
  padding: 0;
}

.cg01 #section03 .detail_img img {
  cursor: auto;
}

.cg01 #section03 .detail00 .detail_title ,
.cg01 #section03 .detail02 .detail_title {
  margin-bottom: 8px;
}

.cg01 #section03 .detail02 {
  margin: 73px auto 0;
}

.cg01 #section03 .detail02 .detail_description {
  margin-bottom: 10px;
}

.cg01 #section03 .detail_note ul li {
  padding-left: 1em;
  text-indent: -1em;
}

.cg01 #section03 .table {
  width: 100%;
  background-color: #fff;
  display: block;
  white-space: nowrap;
  table-layout: fixed;
  border-collapse: collapse;
  font-size: 1.2rem;
  line-height: 1.5;
}

.cg01 #section03 .table th {
  font-weight: normal;
}

.cg01 #section03 .table thead, .cg01 #section03 .table tbody th {
  background-color: #efefef;
}

.cg01 #section03 .table thead th, .cg01 #section03 .table thead td {
  border: 2px solid #828282;
  padding: 5px 5px 2px;
}
.cg01 #section03 .table thead th, .cg01 #section03 .table thead td .indent {
  padding-left: 1em;
  text-indent: -1em;
}

.cg01 #section03 .table th:last-of-type, 
.cg01 #section03 .table td:last-of-type {
 border-right: none;
}

.cg01 #section03 .table thead th {
  text-align: center;
  vertical-align: middle;
}

.cg01 #section03 .table thead th:nth-child(n + 4) {
  min-width: 134px;
  max-width: 134px;
  color: #fff;
  background-color: #07326d;
  font-size: 1.1rem;
}

.cg01 #section03 .table .th_position {
  padding-left: 15px;
}

.cg01 #section03 .table tbody th, .cg01 #section03 .table tbody td {
  padding: 6px 15px;
  border: 2px solid #828282;
  vertical-align: middle;
}

.cg01 #section03 .table thead tr th:first-child,
.cg01 #section03 .table thead tr th:nth-child(2),
.cg01 #section03 .table thead tr th:nth-child(3) {
  border: none;
}

.cg01 #section03 .table thead tr td:first-child,
.cg01 #section03 .table thead tr td:nth-child(2),
.cg01 #section03 .table thead tr td:nth-child(3) {
  border: none;
}

.cg01 #section03 .table thead tr:last-child td .note_mark {
  font-size: 1rem;
  display: inline-block;
  vertical-align: top;
}

.cg01 #section03 .table tbody tr:nth-child(2n) {
  background-color: #f3f3f8;
}

.cg01 #section03 .table tbody th {
  border-left: none;
}

.cg01 #section03 .table tbody .border_double th,
.cg01 #section03 .table tbody .border_double td {
  border-top: 4px double #828282;
}

.cg01 #section03 .table tbody th {
  line-height: 1;
  padding: 10px;
  vertical-align: middle;
}

.cg01 #section03 .table tbody th span {
  /* writing-mode: vertical-rl; */
  display: block;
  width: 10px;
  transform: rotate(-90deg);
  margin-top: 3.2em;
}

.cg01 #section03 .table tbody td:nth-of-type(n + 3) {
  text-align: center;
  font-size: 1.6rem;
}

.cg01 #section03 .table tbody .name {
  font-size: 1.6rem;
  border-right: 2px solid transparent;
}

.cg01 #section03 .detail03 .detail_title {
  margin-bottom: 14px;
}

.cg01 #section03 .detail03 .detail_title .date {
  font-size: 1.2rem;
}

/* .table02 */
.cg01 #section03 .detail03 .detail_table {
  overflow: visible;
  padding: 0;
}

.cg01 #section03 .table02 {
  width: 100%;
  background-color: #fff;
  border-collapse: collapse;
  line-height: 1.5;
  cursor: auto;
  font-size: 1.4rem;
}

.cg01 #section03 .table02 th {
  background-color: #efefef;
  border-top: 2px solid #828282;
  border-bottom: 2px solid #828282;
  padding: 5px 5px 4px 0;
  text-align: left;
} 

.cg01 #section03 .table02 th:first-child {
  padding: 5px 5px 4px;
}

.cg01 #section03 .table_abd th:first-child {
  width: calc(520 / 840  * 100%);
}
.cg01 #section03 .table_abd th:nth-child(2) {
  width: calc(180 / 840 * 100%);
} 
.cg01 #section03 .table_abd th:nth-child(3) {
  width: calc(150 / 840 * 100%);
} 
.cg01 #section03 .table_sai th:first-child {
  width: calc(160 / 840  * 100%);
}
.cg01 #section03 .table_sai th:nth-child(2) {
  width: calc(680 / 840 * 100%);
} 


.cg01 #section03 .table02 th:nth-child(3) span {
  display: inline-block;
  width: 170px;
  text-align: center;
}


.cg01 #section03 .detail04 .table02 th:not(:first-child) {
  width: auto;
}
.cg01 #section03 .detail05 .table02 th:first-child {
  width: calc(160 / 840  * 100%);
}

.cg01 #section03 .detail05 .table02 th:nth-child(2) {
  width: calc(310 / 840 * 100%);
}

.cg01 #section03 .detail05 .table02 th:nth-child(3) {
  width: calc(370 / 840 * 100%);
} 

.cg01 #section03 .table02 td {
  border-bottom: 2px solid #828282;
  padding: 5px 5px 4px 0;
} 

.cg01 #section03 .detail05 .table02 th ,
.cg01 #section03 .detail05 .table02 td {
  padding: 5px 10px;
}

.cg01 #section03 .table02 td:first-child {
  padding: 5px 5px 4px;
}

.cg01 #section03 .table02 td:last-child span {
  display: inline-block;
  width: 170px;
  text-align: center;
}

.cg01 #section03 .table02 .border_double td {
  border-top: 3px double #828282;
}

.cg01 #section03 .table02 .flex_txt {
  display: flex;
  gap: 8px;
} 

.cg01 #section03 .table02 .flex_txt .left{
  white-space: nowrap;
  flex-shrink: 0;
  width: 63px;
} 

@media screen and (max-width: 768px) {

  .cg01 #section03 .detail_title {
    margin-bottom: 4px;
}

  .cg01 #section03 .detail01 {
      margin-top: 17px;
  }

  .cg01 #section03 .detail01 .detail_description {
      margin-bottom: 21px;
  }

  .cg01 #section03 .detail_description {
      margin-bottom: 33px;
  }
  .cg01 #section03 .detail04 .detail_description {
    margin-bottom: 25px;
}

  .cg01 #section03 .detail02 {
      margin: 33px auto 0;
  }
  .cg01 #section03 .detail00 .detail_title ,
  .cg01 #section03 .detail02 .detail_title {
      margin-bottom: 4px;
  }
  
  .cg01 #section03 .detail02 .detail_description {
      margin-bottom: 19px;
  }

  .cg01 #section03 .detail02 .table_wrapper {
      padding-bottom: 19px;
  }
  
  .cg01 #section03 .table thead th {
      padding: 2px 5px 1px;
  }

  .cg01 #section03 .table .th_name {
      padding-left: 10px;
  }
  
  .cg01 #section03 .table .th_position {
      padding-left: 10px;
  }
  
  .cg01 #section03 .table tbody th, .cg01 #section03 .table tbody td {
      padding: 4px 10px;
  }
  
  .cg01 #section03 .table tbody th:first-child {
      padding: 6px;
  }
  
  .cg01 #section03 .table tbody td:nth-of-type(n + 3) {
      font-size: 1.2rem;
  }
  
  .cg01 #section03 .table tbody .name {
      font-size: 1.4rem;
  }

  .cg01 #section03 .detail03 .detail_title {
      margin-bottom: 4px;
  }
  .cg01 #section03 .detail05 .detail_title {
    margin-bottom: 4px;
}
  
  .cg01 #section03 .detail03 .detail_title .date {
      font-size: 1.4rem;
  }
      
}

@media screen and (max-width: 516px) {

  .cg01 #section03 .detail_img {
      max-width: 100%;
      overflow-x: scroll;
      padding-bottom: 23px;
  }
  
  .cg01 #section03 .detail_img img {
      width: 496px;
      cursor: grab;
  }

}

@media screen and (max-width: 618px) {

  /* .table02 */
  .cg01 #section03 .detail03 .detail_table {
      overflow-x: scroll;
      padding-bottom: 25px;
  }

  .cg01 #section03 .table02 {
      width: 598px;
      font-size: 1.3rem;
  }
  .cg01 #section03 .table02.table_conference {
    width: 760px;
}
  
  .cg01 #section03 .table02 th {
      font-size: 1rem;
      line-height: 1;
      padding: 5px 0 4px 4px;
  } 
  
  .cg01 #section03 .table02 td {
      font-size: 1.3rem;
      padding: 0 0 0 4px;
  } 

  .cg01 #section03 .table02 th:nth-child(3) span {
      width: 140px;
  } 

  .cg01 #section03 .table02 td:last-child span {
      width: 140px;
  }
}

/* 取締役会の実効性評価
--------------------------------------------------------------------*/

.cg01 #section04 .process_txt {
  display: flex;
  gap: .5em;
}

.cg01 #section04 .detail_inner {
  display: flex;
  width: 100%;
  margin-bottom: 30px;
}

.cg01 #section04 .list {
  width: calc(395 / 840 * 100%);
  margin-right: calc(30 / 840 * 100%);
}

.cg01 #section04 .list:last-child {
  margin-right: 0;
}

.cg01 #section04 .item {
  font-size: 1.4rem;
  border-bottom: 2px solid #a4a4a4;
  padding: 2px 5px;
}

.cg01 #section04 .item:first-child {
  border-top: 2px solid #a4a4a4;
}

.cg01 #section04 .item span {
  display: inline-block;
  margin-right: 0.5em;
}

.cg01 #section04 .detail01 .detail_section_title {
  line-height: 1;
  padding: 4px 8px;
  margin-bottom: 6px;
  background-color: #e6e6e6;
}

.cg01 #section04 .detail01 .detail_section_text {
  font-size: 1.6rem;
  margin-bottom: 0;
}

.cg01 #section04 .detail02 {
  margin: 75px auto 0;
}

.cg01 #section04 .detail01 .detail_title {
  margin-bottom: 6px;
}

.cg01 #section04 .detail02 .detail_description {
  margin-bottom: 17px;
}

/* .table03 */
.cg01 #section04 .detail_table {
  margin-bottom: 15px;
}

.cg01 #section04 .detail_table.mb0 {
  margin-bottom: 0;
}

.cg01 #section04 .table_wrapper {
  margin-bottom: 21px;
}

.cg01 #section04 .table03 {
  width: 100%;
  background-color: #fff;
  border-collapse: collapse;
  font-size: 1.4rem;
  line-height: 1.5;
  cursor: auto;
}

.cg01 #section04 .table03 th {
  background-color: #efefef;
  border-top: 2px solid #828282;
  border-bottom: 2px solid #828282;
  padding: 5px 0px 4px 8px;
  text-align: left;
} 

.cg01 #section04 .table03 th:nth-child(2) {
  padding: 5px 8px 4px 44px;
} 

.cg01 #section04 .table03 th:first-child {
  width: calc(362 / 840  * 100%);
} 

.cg01 #section04 .table03 th:nth-child(2) {
  width: calc(458 / 840 * 100%);
} 

.cg01 #section04 .table03 td {
  border-bottom: 2px solid #828282;
  padding: 16px 20px 14px 8px;
  vertical-align: middle;
} 

.cg01 #section04 .table03 td:nth-child(2) {
  padding: 16px 8px 14px 44px;
} 

.cg01 #section04 .table03 td:first-child {
  position: relative;
}

.cg01 #section04 .table03 td:first-child::after {
  content: "";
  display: inline-block;
  width: 0;
  height: 0;
  border-top: 12px solid transparent;
  border-left: 15px solid #07326d;
  border-bottom: 12px solid transparent;
  position: absolute;
  top: 50%;
  left: 100%;
  transform: translateY(-50%);
}

.cg01 #section04 .detail_section .table03 td {
  padding: 11px 20px 9px 8px;
} 

.cg01 #section04 .detail_section .table03 td:nth-child(2) {
  padding: 11px 8px 9px 44px;
} 

.cg01 #section04 .detail02 .detail_section_title {
  font-size: 1.4rem;
  margin-bottom: 6px;
}

.cg01 #section04 .detail02 .detail_section_text {
  margin-bottom: 18px;
}

.cg01 #section04 .detail_section_text {
  font-size: 1.4rem;
  margin-bottom: 25px;
}

.cg01 #section04 .detail_section .table03 th {
  background-color: transparent;
  border-top: none;
}

.cg01 #section04 .detail_section .table03 td:first-child::after {
  border-left: 15px solid #a4a4a4;
}

@media screen and (max-width: 768px) {

  .cg01 #section04 .detail01 {
      margin: 33px auto 0;
  }
  
  .cg01 #section04 .detail_inner {
      display: block;
      margin-bottom: 24px;
  }
  
  .cg01 #section04 .list {
      width: 100%;
      margin-right: 0;
  }
  
  .cg01 #section04 .item {
      font-size: 1.3rem;
      padding: 2px 4px;
  }

  .cg01 #section04 .list:last-child .item:first-child {
      border-top: none;
  }

  .cg01 #section04 .detail01 {
      margin-bottom: 32px;
  }

  .cg01 #section04 .detail01 .detail_title {
      margin-bottom: 10px;
  }
  
  .cg01 #section04 .detail01 .detail_section_title {
      margin-bottom: 10px;
      padding: 4px 5px;
  }
  
  .cg01 #section04 .detail01 .detail_section_text {
      font-size: 1.4rem;
  }
  
  .cg01 #section04 .detail02 {
    margin: 33px auto 0;
  }

  .cg01 #section04 .detail02 .detail_title {
      margin-bottom: 4px;
  }

  
  .cg01 #section04 .detail02 .detail_description {
      margin-bottom: 21px;
  }
  
  .cg01 #section04 .detail02 .detail_section_title {
      line-height: calc(22 / 14);
      letter-spacing: -0.02em;
      margin-bottom: 12px;
  }

  .cg01 #section04 .detail02 .detail_section_text {
      margin-bottom: 16px;
  }

}

@media screen and (max-width: 605px) {

  /* .table03 */
  .cg01 #section04 .detail_table {
      margin-bottom: 33px;
  }

  .cg01 #section04 .table_wrapper {
      margin-bottom: 20px;
  }
  
  .cg01 #section04 .table03 {
      width: 585px;
      cursor: grab;
  }
  
  .cg01 #section04 .table03 th {
      padding: 4px 5px 5px;
      font-size: 1rem;
      line-height: 1;
  } 
  
  .cg01 #section04 .table03 th:nth-child(2) {
      padding: 4px 5px 5px 30px;
  } 
  
  .cg01 #section04 .table03 td {
      font-size: 1.1rem;
      padding: 8px 20px 7px 5px;
  } 
  
  .cg01 #section04 .table03 td:nth-child(2) {
      padding: 8px 5px 7px 30px;
  } 
  
  .cg01 #section04 .table03 td:first-child::after {
      border-top: 8px solid transparent;
      border-left: 11px solid #07326d;
      border-bottom: 8px solid transparent;
  }

  .cg01 #section04 .detail_section .table03 td {
      padding: 7px 20px 5px 5px;
  }

  .cg01 #section04 .detail_section .table03 td:nth-child(2) {
      padding: 7px 5px 5px 30px;
  }

  .cg01 #section04 .detail_section .table03 td:first-child::after {
      border-left: 11px solid #a4a4a4;
  }
}

/* #cg_link
--------------------------------------------------------------------*/
#cg_link .list {
  display: flex;
  justify-content: center;
  gap: 10px;
}

#cg_link {
  padding-top: 80px;
}

#cg_link .item {
  width: 50px;
  height: 50px;
}

#cg_link .link {
  display: flex;
  align-items: center;
  justify-content: center;
  color: #fff;
  font-weight: 600;
  width: 100%;
  height: 100%;
  border-radius: 8px;
  background-color: var(--sec05_light);
  transition: .3s ease;
}

#cg_link .link:hover,
#cg_link .link.active{
  background-color: var(--sec05);
}


/* **********************************************************
.cg02
********************************************************** */
/* コーポレートガバナンス
--------------------------------------------------------------------*/
.cg02 .detail {
  margin: 80px auto 0;
}

.cg02 .detail_title {
  line-height: 1.4;
}

.cg02 .detail_note {
  font-size: 1.2rem;
  margin-top: 13px;
}

.cg02 .detail_section {
  margin: 80px auto 0;
}

.cg02 .detail_section_title {
  margin-bottom: 20px;
}

.cg02 .detail_section_text {
  margin-bottom: 17px;
}

.cg02 .custom-scrollbar {
  width: 100%;
}

.cg02 .custom-scrollbar img,
.cg02 .custom-scrollbar table {
  cursor: grab;
}

@media screen and (max-width: 768px) {

  .cg02 .detail {
      margin: 25px auto 0;
  }
  
  .cg02 .detail_note {
      font-size: 1rem;
      margin-top: 16px;
  }

  .cg02 .detail_section {
      margin: 40px auto 0;
  }

  .cg02 .detail_section_title {
      font-size: 1.6rem;
  }

  .cg02 .detail_section_text {
     font-size: 1.4rem;
     margin-bottom: 25px;
  }
}

/* 報酬委員会・指名委員会
--------------------------------------------------------------------*/

.cg02 #section01 .detail_table00 {
  margin: 20px auto 0;
}

.cg02 #section01 .detail_section01 {
  margin: 68px auto 0;
}

.cg02 #section01 .detail_section02 {
  margin: 74px auto 0;
}

/* .table */

.cg02 #section01 .detail_table00 .table th,
.cg02 #section01 .detail_table00 .table td{
  vertical-align: middle;
  width: auto;
} 

.cg02 #section01 .detail_table00 .table .center{
  text-align: center;
}

.cg02 #section01 .detail_table00 .table th ,
.cg02 #section01 .detail_table00 .table .bold {
  font-weight: bold;
} 

.cg02 #section01 .detail_table00 .table .bold {
  border-bottom: 2px solid #5e5e5e;
}

.cg02 #section01 .detail_section_title {
  margin-bottom: 7px;
}

.cg02 #section01 .detail_section_text {
  margin-bottom: 12px;
}

.cg02 #section01 .detail_table02_bottom {
  margin-bottom: 0;
}

.cg02 #section01 .table_wrapper {
  overflow: visible;
  padding: 0;
}

.cg02 #section01 .table {
  font-size: 1.4rem;
  width: 100%;
  background-color: #fff;
  border-collapse: collapse;
  cursor: auto;
  text-align: left;
  line-height: 1.5;
}

.cg02 #section01 .table th {
  background-color: #eeeeee;
  border-bottom: 2px solid #5e5e5e;
  padding: 6px 9px 3px 20px;
  width: calc(210 / 840  * 100%);
  font-weight: normal;
} 

.cg02 #section01 .table tr:first-child th {
  border-top: 2px solid #5e5e5e;
}

.cg02 #section01 .table tr:first-child td {
  border-top: 2px solid #5e5e5e;
  padding: 6px 20px 3px;
  text-indent: 0;
} 

.cg02 #section01 .table td {
  border-bottom: 2px solid #5e5e5e;
  padding: 6px 5px 3px 20px;
  width: calc(305 / 840 * 100%);

} 
.cg02 #section01 .table .indent10 {
  text-indent: -10px;
}

.cg02 #section01 .table tr:nth-child(2) td {
  padding-bottom: 0;
  border-bottom:  none;
}

.cg02 #section01 .detail_table02 .table tr:nth-child(3) td ,
.cg02 #section01 .detail_table02 .table tr:nth-child(4) td {
  padding-bottom: 0;
  border-bottom:  none;
} 

.cg02 #section01 .detail_table02  {
 margin-bottom: 21px;
}

.cg02 #section01 .detail_table02 .table td {
  width: calc(610 / 840  * 100%);
}



@media screen and (max-width: 768px) {


  .cg02 #section01 .detail_table00 {
      margin: 18px auto 0;
  }

  .cg02 #section01 .detail_section01 {
      margin: 33px auto 0;
  }

  .cg02 #section01 .detail_section02 {
      margin: 37px auto 0;
  }

  .cg02 #section01 .detail_section_title {
      margin-bottom: 4px;
  }

  .cg02 #section01 .detail_section_text {
      margin-bottom: 22px;
  }

  .cg02 #section01 .table_wrapper {
      overflow-x: scroll;
      padding-bottom: 25px;
  }
  
  .cg02 #section01 .table {
      width: 840px;
      font-size: 1.3rem;
      cursor: grab;
  }
  
  .cg02 #section01 .table th {
      padding: 5px 20px 3px;
  } 
  
  .cg02 #section01 .table tr:first-child td {
      padding: 5px 20px 3px;
      text-indent: 0;
  } 
  
  .cg02 #section01 .table td {
      padding: 5px 20px 3px;
      /* text-indent: -9px; */
  } 
  
  .cg02 #section01 .detail_table02  {
     margin-bottom: 17px;
  } 

}


/* 監査役会
--------------------------------------------------------------------*/

.cg02 #section02 .detail {
  max-width: 485px;
  margin: 22px auto 0;
}

.cg02 #section02 .detail_section {
  margin: 72px auto 0;
}

.cg02 #section02 .detail_section_title .date {
  font-size: 1.2rem;
}

.cg02 #section02 .detail_section_title {
  margin-bottom: 8px;
}

.cg02 #section02 .detail_section_text {
  margin-bottom: 23px;
}

.cg02 #section02 .detail_section01 .detail_table {
  display: flex;
  justify-content: center;
  gap: 30px;
}

.cg02 #section02 .detail_section01 .table_wrapper {
  width: calc(395 / 840 * 100%);
}

.cg02 #section02 .detail_section01 .table {
  width: 100%;
  background-color: #fff;
  border-collapse: collapse;
  font-size: 1.4rem;
  text-align: left;
  line-height: 1.5;
}

.cg02 #section02  .detail_section01 .table th {
  background-color: #efefef;
  border-top: 2px solid #8c8c8c;
  border-bottom: 2px solid #8c8c8c;
  padding: 4px 5px;
} 

.cg02 #section02 .detail_section01 .table th:first-child {
  width: calc(146 / 395  * 100%);
}
.cg02 #section02 .detail_section01 .table th:last-child {
  width: calc(133 / 395  * 100%);
  text-align: center;
}

.cg02 #section02 .detail_section01 .table td {
  border-bottom: 2px solid #8c8c8c;
  padding: 4px 5px;
  vertical-align: middle;
} 

.cg02 #section02 .detail_section01 .table td:last-child {
  text-align: center;
}

.cg02 #section02 .detail_section02 .table_wrapper {
  overflow: visible;
  padding: 0;
}
.cg02 #section02 .detail_section02 .table {
  width: 100%;
  background-color: #fff;
  border-collapse: collapse;
  font-size: 1.4rem;
  text-align: left;
  cursor: auto;
  line-height: 1.5;
}

.cg02 #section02 .detail_section02 .table th {
  background-color: #eeeeee;
  border-bottom: 2px solid #5e5e5e;
  padding: 6px 9px 3px 20px;
  width: calc(210 / 840  * 100%);
  font-weight: normal;
} 

.cg02 #section02 .detail_section02 .table tr:first-child th {
  border-top: 2px solid #5e5e5e;
}

.cg02 #section02 .detail_section02 .table tr:first-child td {
  border-top: 2px solid #5e5e5e;
  padding: 6px 20px 3px;
  text-indent: 0;
} 

.cg02 #section02 .detail_section02 .table td {
  padding: 6px 5px 3px 29px;
  width: calc(305 / 840 * 100%);
  text-indent: -10px;
}
.cg02 #section02 .detail_section02 .table td.sep {
  border-bottom: 2px solid #5e5e5e;
}

.cg02 #section02 .detail_section02 .table tr:nth-child(2) td {
  padding-bottom: 0;
  border-bottom:  none;
}

.cg02 #section02 .detail_section02 .table tr:nth-child(3) td ,
.cg02 #section02 .detail_section02 .table tr:nth-child(4) td {
  padding-bottom: 0;
  border-bottom:  none;
} 

.cg02 #section02 .detail_section02 .table td {
  width: calc(610 / 840  * 100%);
}


@media screen and (max-width: 768px) {

  .cg02 #section02 .detail {
      margin: 23px auto 0;
  }

  .cg02 #section02 .detail_section {
      margin: 37px auto 0;
  }
  .cg02 #section02 .detail_section_title {
      margin-bottom: 4px;
  }

  .cg02 #section02 .detail_section_title .date {
      font-size: 1.4rem;
  }
  
  .cg02 #section02 .detail_section_text {
      margin-bottom: 22px;
  }

  .cg02 #section02  .detail_section01 .detail_table {
      display: block;
  }
  
  .cg02 #section02  .detail_section01 .table_wrapper {
      width: 100%;
      margin-bottom: 25px;
  }

  .cg02 #section02  .detail_section01 .table_wrapper:last-child {
      margin-bottom: 0;
  }
  
  .cg02 #section02  .detail_section01 .table {
      font-size: 1.3rem;
  }
  
  .cg02 #section02  .detail_section01 .table th ,
  .cg02 #section02  .detail_section01 .table td {
      padding: 9px 5px;
  } 
  
  /* .cg02 #section02 .detail_section01 .table th:first-child {
      width: calc(190 / 690 * 100%);
  }
  
  .cg02 #section02 .detail_section01 .table th:last-child {
      width: calc(322 / 690  * 100%);
  } */



  .cg02 #section02 .detail_section02 .table_wrapper {
    overflow-x: scroll;
    padding-bottom: 25px;
}

.cg02 #section02 .detail_section02 .table {
    width: 840px;
    font-size: 1.3rem;
    cursor: grab;
}

.cg02 #section02 .detail_section02 .table th {
    padding: 5px 20px 3px;
} 

.cg02 #section02 .detail_section02 .table tr:first-child td {
    padding: 5px 20px 3px;
    text-indent: 0;
} 

.cg02 #section02 .detail_section02 .table td {
    padding: 5px 33px 3px;
    text-indent: -9px;
} 

.cg02 #section02 .detail_section02 .detail_table02  {
   margin-bottom: 17px;
} 
  

}


/* 役員報酬
--------------------------------------------------------------------*/

.cg02 #section04 .detail {
  margin: 66px auto 0;
}

.cg02 #section04 .detail:first-child {
  margin: 0 auto;
}

.cg02 #section04 .detail_title {
  margin-bottom: 9px;
}

.cg02 #section04 .detail_section {
  margin: 37px auto 0;
}

.cg02 #section04 .detail_section_title::before {
  content: "";
  display: inline-block;
  width: 13px;
  height: 13px;
  background-color: #000;
  margin-right: 7px;
}

.cg02 #section04 .detail_section_title {
  margin-bottom: 7px;
}

.cg02 #section04 .detail_section_text {
  margin-bottom: 18px;
}

.cg02 #section04 .detail_section .item{
  margin-bottom: 18px;
}

.cg02 #section04 .detail_section .item_title {
  margin-bottom: 8px;
}

.cg02 #section04 .item_title span {
  display: inline-block;
  margin-right: 6px;
}

.cg02 #section04 .detail_title span {
  font-size: 1.2rem;
}

.cg02 #section04 .detail03 .detail_description {
  margin-bottom: 13px;
}

.cg02 #section04 .detail03 .table_wrapper {
  overflow: visible;
  padding: 0;
}

.cg02 #section04 .detail03 .table {
  width: 100%;
  background-color: #fff;
  border-collapse: collapse;
  font-size: 1.4rem;
  cursor: auto;
  line-height: 1.5;
}

.cg02 #section04 .detail03 th {
  background-color: #eeeeee;
  border-top: 2px solid #939393;
  border-bottom: 2px solid #939393;
  padding: 5px 10px;
  text-align: left;
  vertical-align: middle;
} 

.cg02 #section04 .detail03 th:first-child {
  width: calc(148 / 840  * 100%);
} 

.cg02 #section04 .detail03 th:nth-child(2) {
  width: calc(280 / 840 * 100%);
} 

.cg02 #section04 .detail03 th:nth-child(3) {
  width: calc(201 / 840 * 100%);
} 

.cg02 #section04 .detail03 th:last-child {
  width: calc(211 / 840 * 100%);
} 

.cg02 #section04 .detail03 td {
  border-bottom: 2px solid #939393;
  padding: 5px 9px 5px 10px;
  vertical-align: middle;
} 

.cg02 #section04 .detail03 td span {
  display: block;
  margin-left: -0.5em;
} 

.cg02 #section04 .detail03 td:first-child span {
  font-size: 1.2rem;
}

.cg02 #section04 .detail04 {
  margin: 74px auto 0;
}

.cg02 #section04 .detail04 .detail_title {
  margin-bottom: 13px;
}

/* .table */
.cg02 #section04 .detail04 .table_wrapper {
  overflow: visible;
  padding: 0;
}

.cg02 #section04 .detail04 .table {
  width: 100%;
  cursor: auto;
  font-size: 1.4rem;
  text-align: center;
  line-height: 1.5;
}

.cg02 #section04 .detail04 .lists {
  width: 100%;
  display: flex;
}

.cg02 #section04 .detail04 .lists {
  width: 100%;
  display: flex;
}

.cg02 #section04 .detail04 .list {
  margin-right: calc(10 / 840 * 100%);
  border-bottom: 2px solid #828282;
}

.cg02 #section04 .detail04 .list:first-child {
  width: calc(306 / 840 * 100%);
}

.cg02 #section04 .detail04 .list:nth-child(n + 2) {
  width: calc(178 / 840 * 100%);
}

.cg02 #section04 .detail04 .list:last-child {
  margin-right: 0;
}

.cg02 #section04 .detail04 .items {
  display: flex;
  justify-content: space-between;
  align-items: center;
}

.cg02 #section04 .detail04 .item {
  padding: 6px 10px 4px;
  width: 50%;
}

.cg02 #section04 .detail04 .list:first-child .item:first-child {
  width: calc(178 / 295 * 100%);
  /* margin-right: calc(9 / 306 * 100%); */
}

.cg02 #section04 .detail04 .list:first-child .item:last-child {
  /* width: calc(111 / 306 * 100%); */
}

.cg02 #section04 .detail04 .list:nth-child(n + 2) .item:first-child {
  /* width: calc(60 / 178 * 100%);
  margin-right: calc(27 / 178 * 100%); */
}

.cg02 #section04 .detail04 .list:nth-child(n + 2) .item:last-child {
  /* width: calc(75 / 178 * 100%); */
}

/* .cg02 #section04 .detail04 .no_item {
  position: relative;
} */

/* .cg02 #section04 .detail04 .no_item::before {
  content: "";
  display: inline-block;
  width: 18px;
  height: 1px;
  background-color: #000;
  position: absolute;
  top: 19px;
  left: 50%;
  transform: translateX(-50%);
} */

/* .table .thead */
.cg02 #section04 .detail04 .thead {
  background-color: #eeeeee;
  border-top: 2px solid #828282;
}

.cg02 #section04 .detail04 .thead_title {
  width: calc(506 / 840 * 100%);
  margin: 0 0 0 auto;
  border-bottom: 2px solid #828282;
  padding: 2px 10px 1px;
}

.cg02 #section04 .detail04 .thead_sub-title {
  border-bottom: 2px solid #828282;
  padding: 2px 10px 1px;
  height: 47px;
  display: flex;
  align-items: center;
  justify-content: center;
}

.cg02 #section04 .detail04 .thead .list:first-child .items {
  align-items: flex-end;
  height: 100%;
}

.cg02 #section04 .detail04 .thead .list:first-child .item:last-child {
  border-top: 2px solid #828282;
}

.cg02 #section04 .detail04 .thead .list:first-child .item:first-child .item_title {
  margin-bottom: 53px;
}

.cg02 #section04 .detail04 .thead .item {
  padding: 0px 5px;
}

.cg02 #section04 .detail04 .thead .item_text {
  font-weight: 700;
}

/* .table .tbody */
.cg02 #section04 .detail04 .tbody .list {
  border-bottom: none;
}

.cg02 #section04 .detail04 .tbody .items {
  border-bottom: 2px solid #828282;
}

.cg02 #section04 .detail04 .tbody .item_title {
  font-weight: normal;
}

.cg02 #section04 .detail04 .tbody .list:first-child .item:first-child {
  text-align: left;
}

.cg02 #section04 .detail04 .tbody .list:first-child .item:first-child .item_text {
  display: block;
  font-size: 1.2rem;
}


@media screen and (max-width: 840px) {

  /* .detail04 .table */
  .cg02 #section04 .detail04 {
      margin: 40px auto 0;
  }

  .cg02 #section04 .detail04 .detail_title {
      margin-bottom: 17px;
  }

  .cg02 #section04 .detail04 .table_wrapper {
      overflow-x: scroll;
      padding-bottom: 25px;
  }
  
  .cg02 #section04 .detail04 .table {
      width: 840px;
      cursor: grab;
      font-size: 1.3rem;
  }

  .cg02 #section04 .detail04 .thead .item {
      padding: 8px 10px 7px;
  }
  
  .cg02 #section04 .detail04 .item {
      padding: 9px 5px;
  }
  
  /* .table .thead */
  .cg02 #section04 .detail04 .thead {
      background-color: #eeeeee;
      border-top: 2px solid #828282;
  }
  
  .cg02 #section04 .detail04 .thead_title {
      padding: 9px 5px;
  }
  
  .cg02 #section04 .detail04 .thead_sub-title {
      /* padding: 9px 5px;
      height: 59px; */
  }

  .cg02 #section04 .detail04 .thead .list:first-child .item:first-child .item_title {
      font-size: 1.4rem;
      /* margin-bottom: 20px; */
  }

  .cg02 #section04 .detail04 .thead .item_text {
      font-size: 1.1rem;
  }
  
  /* .table .tbody */
  .cg02 #section04 .detail04 .tbody .list:first-child .item:first-child .item_text {
      font-size: 1.1rem;
      margin-top: 2px;
  }

}


@media screen and (max-width: 768px) {

  .cg02 #section04 .detail {
      margin: 33px auto 0;
  }

  .cg02 #section04 .detail > .list .item {
      padding-left: 1em;
      text-indent: -1em;
  }
  
  .cg02 #section04 .detail_section {
      margin: 33px auto 0;
  }

  .cg02 #section04 .detail_section_title::before {
      width: 12px;
      height: 12px;
  }

  .cg02 #section04 .detail_section01 {
      margin: 33px auto 0;
  }

  .cg02 #section04 .detail_section01 .detail_section_title {
      margin-bottom: 7px;
  }

  .cg02 #section04 .detail_section_title {
      margin-bottom: 13px;
  }
  
  .cg02 #section04 .detail_section01 .detail_section_text {
      margin-bottom: 15px;
  }

  .cg02 #section04 .detail_section_text {
      margin-bottom: 18px;
  }
  
  .cg02 #section04 .detail_section .item{
      margin-bottom: 16px;
  }
  .cg02 #section04 .detail_section .item_title {
      font-size: 1.6rem;
      margin-bottom: 11px;
  }

  .cg02 #section04 .detail_section .item_title .text {
      font-size: 1.4rem;
      display: inline-block;
      margin-right: 0;
      margin-left: 4px;
  }

  .cg02 #section04 .detail_title {
      margin-bottom: 12px;
  }

  
  .cg02 #section04 .detail_title span {
      font-size: 1.4rem;
  }
  
  .cg02 #section04 .detail03 .detail_description {
      margin-bottom: 22px;
  }
  
  .cg02 #section04 .detail03 .table_wrapper {
      overflow-x: scroll;
      padding-bottom: 25px;
  }
  
  .cg02 #section04 .detail03 .table {
      width: 840px;
      font-size: 1.3rem;
      cursor: grab;
  }

  .cg02 #section04 .detail03 th {
      padding: 5px 30px 4px 10px;
  } 

  .cg02 #section04 .detail03 th:first-child {
      padding: 5px 15px 4px 5px;
  }
  
  .cg02 #section04 .detail03 td {
      padding: 5px 30px 4px 10px;
  } 

  .cg02 #section04 .detail03 td:first-child {
      padding: 5px 15px 4px 10px;
  } 
  
  .cg02 #section04 .detail03 td:first-child span {
      font-size: 1rem;
  } 
  
}


@media screen and (max-width: 380px) {

  .cg02 #section04 .detail_section_title.sp_mr_s::before {
      margin-right: 2px;
  }

}

/* コーポレートガバナンス・ガイドライン
--------------------------------------------------------------------*/

.cg02 #section05 .content {
  padding: 32px 37px 30px;
  background-color: #efefef;
}

.cg02 #section05 .title {
  margin-bottom: 8px;
}

.cg02 #section05 .detail_link {
  margin-top: 10px;
}

.cg02 #section05 .sp_ss_only {
  display: none;
}

@media screen and (max-width: 768px) {

  .cg02 #section05 .content {
      padding: 25px;
  }
  
  .cg02 #section05 .title {
      font-size: 1.6rem;
      margin-bottom: 6px;
  }

  .cg02 #section05 .detail_link {
    justify-content: flex-start;
  }

}

@media screen and (max-width: 480px) {
  .cg02 #section05 .sp_ss_only {
      display: block;
  }
}


/* **********************************************************
	compliance
********************************************************** */

.compliance  h3 {
  line-height: 1.4;
}

/* コンプライアンスへの取り組み
--------------------------------------------------------------------*/
.compliance #section01 {
  margin-top: 33px;
}

.compliance #section01 .intro_text {
  margin-bottom: 38px;
}

.compliance #section01 h3 {
  font-weight: 700;
  margin-bottom: 15px;
}

.compliance #section01 .intro_inner {
  display: flex;
}

.compliance #section01 .intro_before {
  flex: 1 1 0;
}

.compliance #section01 .intro_after {
  flex-basis: calc(412 / 840 * 100%);
  margin-left: calc(56 / 840 * 100%);
  padding: 20px;
  background-color: #d3edfb;
  display: flex;
  align-items: center;
  position: relative;
}

.compliance #section01 .intro_after::before {
  content: "";
  display: inline-block;
  width: 32px;
  height: 51px;
  background: url(/english/csr/ir/online/2023/05/img/compliance/compliance_arrow.png) center center / contain no-repeat;
  transform: translateY(-50%) rotate(-90deg);
  position: absolute;
  top: 50%;
  left: -37px;
}

.compliance #section01 .rate_text {
  flex: 1 1 0;
  line-height: 1.5;
}

.compliance #section01 .rate_number {
  flex-basis: 118px;
  flex-basis: 122px;
  /* margin-left: calc(40 / 372 * 100%); */
  text-align: center;
  font-size: 1.4rem;
  line-height: 1;
}

.compliance #section01 .rate_number .number {
  font-size: 2.8rem;
  display: block;
  font-weight: 700;
  margin-bottom: 10px;
}

.compliance #section01 .rate_number .emphasis {
  font-size: 4.2rem;
}

.compliance #section02 .content_text {
  margin-bottom: 23px;
}

.compliance #section02 .definition {
  line-height: 1.5;
 }

.compliance #section02 .list {
 display: flex;
 padding: 14px 30px 12px 0;
 border-bottom: 1px solid #b5b1b1;
 width: 100%;
}

.compliance #section02 .list:first-child {
  border-top: 1px solid #b5b1b1;
}

.compliance #section02 .term {
  font-weight: 700;
  flex-basis: calc(270 / 790 * 100%);
  margin-right: calc(36 / 790 * 100%);
  padding-left: 1em;
  text-indent: -1em;
}

.compliance #section03 .detail:first-child {
  margin-top: 0;
}

.compliance #section03 .detail {
  margin-top: 37px;
}

.compliance #section02 .description {
  flex: 1 1 0;
}

.compliance #section03 h3 {
  font-weight: 700;
  margin-bottom: 9px;
}

@media screen and (max-width: 768px) {

  .compliance #section01 {
      margin-top: 14px;
  }
  
  .compliance #section01 .intro_text {
      margin-bottom: 33px;
  }
  
  .compliance #section01 h3 {
      font-size: 1.6rem;
      line-height: 1.4;
       margin-bottom: 14px;
  }
  
  .compliance #section01 .intro_inner {
      display: block;
  }

  .compliance #section01 .intro_before p {
      margin-bottom: 25px;
  }
  
  .compliance #section01 .intro_after {
      width: 100%;
      margin: 0 auto;
      padding: 20px 25px;
      max-width: 345px;
  }
  
  .compliance #section01 .intro_after::before {
      width: 24px;
      height: 38px;
      transform: translateX(-50%) rotate(0);
      position: absolute;
      top: -22px;
      left: 50%;
  }

  .compliance #section01 .rate_number {
      flex-basis: 105px;
      /* margin-left: calc(5 / 295 * 100%); */
      font-size: 1.2rem;
  }
  
  .compliance #section01 .rate_number .number {
      font-size: 2.3rem;
      margin-bottom: 12px;
  }
  
  .compliance #section01 .rate_number .emphasis {
      font-size: 3.5rem;
  }
  
  .compliance #section02 .content_text {
      margin-bottom: 22px;
  }

  
  .compliance #section02 .list {
      display: block;
      padding: 14px 10px 14px 0;
  }
  
  .compliance #section02 .term {
      margin: 0 0 4px;
  }

  
  .compliance #section03 h3 {
      font-size: 1.6rem;
      margin-bottom: 4px;
  }

  .compliance #section03 .detail {
      margin-top: 33px;
  }

}


/* **********************************************************
	mng_system
********************************************************** */

/* 経営体制
--------------------------------------------------------------------*/
.mng_system #section01 {
  margin-top: 23px;
}

.mng_system #section01 .date {
  font-size: 1.4rem;
  line-height: 1;
  text-align: right;
}

.mng_system #section01 .list {
  display: flex;
  flex-wrap: wrap;
  gap: 50px 20px;
}

.mng_system #section01 .item {
  width: calc((100% - 40px) / 3);
  max-width: 260px;
}

.mng_system #section01 .card {
  display: flex;
  flex-direction: column-reverse;
}

.mng_system #section01 .card_body {
  line-height: 1.5;
}

.mng_system #section01 .card_title {
  font-weight: 700;
}

.mng_system #section01 .position {
  display: block;
  color: #09326f;
  font-weight: normal;
}

.mng_system #section01 .card_text {
  font-size: 1.4rem;
  margin-top: 9px;
}

.mng_system #section01 .card_img {
  position: relative;
  margin-bottom: 5px;
}

.mng_system #section01 .card_img::before {
  content: '';
  display: block;
  width: 100%;
  padding-top: calc(200 / 260 * 100%);
}

.mng_system #section01 .card_img img {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  width: 100%;
  height: 100%;
  object-fit: cover;
}

@media screen and (max-width: 768px) {

  .mng_system #section01 {
      margin-top: 11px;
  }
  
  .mng_system #section01 .date {
      font-size: 1rem;
  }
  
  .mng_system #section01 .list {
      gap: 25px 20px;
  }
  
  .mng_system #section01 .item {
      width: calc((100% - 20px) / 2);
      max-width: none;
  }
  
  .mng_system #section01 .card_title {
      font-size: 1.2rem;
  }
  
  .mng_system #section01 .position {
      margin-bottom: 3px;
  }
  
  .mng_system #section01 .card_text {
      font-size: 1rem;
      margin-top: 4px;
  }

  .mng_system #section01 .card_img {
      margin-bottom: 7px;
  }
  
  .mng_system #section01 .card_img::before {
      padding-top: calc(250 / 325 * 100%);
  }

}

/* 監査役、執行役員
--------------------------------------------------------------------*/

.mng_system .definition  {
  line-height: 1.5;
}

.mng_system .definition .list {
  width: 100%;
  display: flex;
  /* align-items: center; */
  border-bottom: 1px solid #c8c8c9;
  background-color: #dff2fb;
}

.mng_system .definition .list:first-child {
  border-top: 1px solid #c8c8c9;
}

.mng_system .definition .term {
  color: #09326f;
  flex-basis: calc(260 / 840 * 100%);
  padding: 4px 20px 2px;
  display: flex;
  align-items: center;
}

.mng_system .definition .description {
  flex: 1 1 0;
  padding: 4px 70px 2px 20px;
  font-weight: 700;
  background-color: #fff;
  display: flex;
  flex-direction: column;
  justify-content: center;
}

.mng_system .definition .text {
  font-size: 1.4rem;
  font-weight: normal;
  display: block;
}

@media screen and (max-width: 768px) {

  
  .mng_system .definition {
      font-size: 1.2rem;
  }
  
  .mng_system .definition .term {
      flex-basis: calc(285 / 690 * 100%);
      padding: 10px;
      padding: 5px 10px 3px;
  }
  
  .mng_system .definition .description {
      padding: 5px 48px 3px 10px;
  }
  
  .mng_system .definition .text {
      font-size: 1rem;
  }


}



/* **********************************************************
	outside_direc
********************************************************** */
/* 社外取締役メッセージ
--------------------------------------------------------------------*/


.outside_direc #page_kv .page_kv_head {
  width: calc(100% - 60px);
  margin: 0 auto;
  position: relative;
  max-width: 840px;
}


.outside_direc .od_content .head_area{
  position: relative;
  display: flex;
  align-items: center;
  width: 100%;
  justify-content: flex-end;
}
.outside_direc .od_content .head_area h3{
  font-size: 22px;
  line-height: 1;
  font-weight: bold;
  position: absolute;
  width: 100%;
  text-align: center;
}
.outside_direc .od_content .head_area .bg_txt{
  font-size: 140px;
  line-height: 1;
  font-weight: bold;
  color: #fff;
  font-family: "Roboto", sans-serif;
}

.outside_direc .od_content{
  background-color: #fff9e8;
  margin-top: 80px;
  padding-bottom: 50px;
}
.outside_direc .od_inner{
  width: calc(100% - 20px);
  max-width: 1000px;
  margin: auto;
}

.outside_direc .od_list {
  display: flex;
  flex-wrap: wrap;
  gap: 20px;
}
.outside_direc .od_list .item{
  width: calc((100% - 60px)/4);
}

.outside_direc .od_list .link{
  border-radius: 20px;
  overflow: hidden;
  isolation: isolate;
  transition: ease .3s;
  box-shadow: 0px 0px 21px rgba(0, 0, 0, 0.09);
  display: block;
  position: relative;
}
.outside_direc .od_list .link.active{
  border: #f8b500 3px solid;
}

.outside_direc .od_list .img_area{
  overflow: hidden;
}

.outside_direc .od_list .img_area img{
    transition: ease .3s;
}

.outside_direc .od_list .link:hover .img_area img{
    transform: scale(1.12);
}

.outside_direc .od_list .txt_area{
  position: absolute;
  bottom: 0;
  left: 0;
  right: 0;
  width: 100%;
  z-index: 2;
  background: linear-gradient(0deg, rgba(42,80,136,1) 0%, rgba(42,80,136,0) 100%);
  color: #fff;
  line-height: 1;
  min-height: 87px;
  display: flex;
  align-items: flex-end;
  justify-content: center;
  text-align: center;
  padding: 15px;
  transition: ease .3s;
  font-size: 2rem;
  font-weight: 600;
}


@media screen and (max-width: 768px) {


.outside_direc #page_kv .page_kv_head {
    width: 100%;
}

.outside_direc .od_content .head_area h3{
  font-size: 18px;
}
.outside_direc .od_content .head_area .bg_txt{
  font-size: 70px;
}
.outside_direc .od_content{
  margin-top: 60px;
  padding-bottom: 20px;
}
.outside_direc .od_list {
  gap: 15px;
  justify-content: center;
}
.outside_direc .od_list .item{
  width: calc((100% - 15px)/2);
  max-width: 245px;
}
.outside_direc .od_list .txt_area{
  font-size: 1.3rem;
  min-height: 44px;
  padding: 10px 5px;
}


}









