@charset "UTF-8";
/*
Getup.css is released under the Open Source MIT license.
http://www.opensource.org/licenses/mit-license.php

Getup.css is inspired by OOCSS, inuit.css, Twitter Bootstrap, HTML5 Boilerplate, PocketGrid

LICENSE
https://github.com/nibushibu/getup-css/blob/master/LICENSE
*/
@import url("https://fonts.googleapis.com/css2?family=Noto+Sans+JP:wght@100;300;400;500;700;900&amp;family=Roboto:wght@100;300;400;500;700;900&amp;display=swap");
div.color__message {
  --category-color: #05a173;
}

div.color__process {
  --category-color: #40916f;
}

div.color__sustainability {
  --category-color: #8bb03c;
}

div.color__business {
  --category-color: #599f5c;
}

div.color__gov {
  --category-color: #4aa5bd;
}

div.color__about {
  --category-color: #788d91;
}

#reportContent__content * {
  font-family: "Noto Sans JP", sans-serif;
}

/* 横スクロールバー非表示 */
html {
  font-size: 62.5%; /* font-sizeは16pxの62.5%の10px */
  line-height: 1.6;
  width: 100%;
  height: 100%;
  scroll-padding-top: 120px;
}
@media screen and (max-width: 767px) {
  html {
    font-size: 55%;
  }
}

body {
  width: 100%;
  height: 100%;
}

p {
  color: #444;
  font-weight: 400;
  font-size: clamp(16px, 1rem, 18px);
  line-height: 2;
}
@media screen and (max-width: 767px) {
  p {
    font-size: clamp(13px, 0.812rem, 14px);
  }
}

ul li, ol li {
  color: #444;
  font-weight: 400;
  font-size: clamp(16px, 1rem, 18px);
  line-height: 1.6;
}
@media screen and (max-width: 767px) {
  ul li, ol li {
    font-size: clamp(13px, 0.812rem, 14px);
  }
}

a {
  font-size: clamp(16px, 1rem, 18px);
}
@media screen and (max-width: 767px) {
  a {
    font-size: clamp(13px, 0.812rem, 14px);
  }
}
a:link, a:visited {
  -webkit-transition: all 0.2s ease-out;
  transition: all 0.2s ease-out;
  text-decoration: underline;
}
a:hover {
  -webkit-transition: all 0.2s ease-out;
  transition: all 0.2s ease-out;
  color: #05a173;
  -webkit-text-decoration-color: #05a173;
          text-decoration-color: #05a173;
}

#jtweb-site-area-content > .style-component .jtweb-topic-path, .jtweb-topic-path,
#jtweb-site-area-content > .style-component .jtweb-topic-path, .jtweb-topic-path ul li span {
  font-family: BaseFont-JP, "ヒラギノ角ゴ Pro W3", Hiragino Kaku Gothic Pro, "メイリオ", Meiryo, "ＭＳ Ｐゴシック", sans-serif;
}

sup {
  margin: 0 0.1em;
  font-size: small;
  vertical-align: text-bottom;
}
@media screen and (max-width: 767px) {
  sup {
    vertical-align: super;
    position: relative;
    top: -2px;
    font-size: 9px;
  }
}

sub {
  margin: 0 0.1em;
  font-size: small;
  vertical-align: bottom;
}

/*モーダルを開くボタン*/
.modal-open {
  cursor: pointer;
}

/*モーダル本体の指定 + モーダル外側の背景の指定*/
.modal-container {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  text-align: center;
  background: rgba(255, 255, 255, 0.9);
  padding: 40px 20px;
  overflow: auto;
  opacity: 0;
  visibility: hidden;
  -webkit-transition: 0.3s;
  transition: 0.3s;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  z-index: 100;
}
.modal-container + .modal-open {
  margin-top: 15px;
}

/*モーダル本体の擬似要素の指定*/
.modal-container:before {
  content: "";
  display: inline-block;
  vertical-align: middle;
  height: 100%;
}

/*モーダル本体に「active」クラス付与した時のスタイル*/
.modal-container.active {
  opacity: 1;
  visibility: visible;
}

/*モーダル枠の指定*/
.modal-body {
  position: relative;
  display: inline-block;
  vertical-align: middle;
  max-width: 800px;
  width: 90%;
}

/*モーダルを閉じるボタンの指定*/
.modal-close {
  position: absolute;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  top: -40px;
  right: -40px;
  width: 40px;
  height: 40px;
  font-size: 40px;
  color: #111;
  cursor: pointer;
}

/*モーダル内のコンテンツの指定*/
.modal-content {
  background: #fff;
  text-align: left;
  padding: 10px;
  border-radius: 10px;
  z-index: 100;
  -webkit-box-shadow: 0 3px 6px rgba(0, 0, 0, 0.15);
          box-shadow: 0 3px 6px rgba(0, 0, 0, 0.15);
}

/* common */
.imgWrap {
  overflow: hidden;
  /*拡大時にはみ出た部分を隠す*/
  background: #000;
}

.imgWrap > img {
  display: block;
  -webkit-transition-duration: 0.3s;
          transition-duration: 0.3s;
  /*変化に掛かる時間*/
}

.imgWrap > img:hover {
  -webkit-transform: scale(1.1);
          transform: scale(1.1);
  /*画像の拡大率*/
  -webkit-transition-duration: 0.3s;
          transition-duration: 0.3s;
  /*変化に掛かる時間*/
  opacity: 0.6;
  /* 小さくするほど暗くなります */
  cursor: pointer;
}

.fadeUp {
  -webkit-animation-name: blurAnime;
          animation-name: blurAnime;
  -webkit-animation-duration: 1s;
          animation-duration: 1s;
  -webkit-animation-fill-mode: forwards;
          animation-fill-mode: forwards;
}

@-webkit-keyframes blurAnime {
  from {
    -webkit-filter: blur(10px);
            filter: blur(10px);
    -webkit-transform: scale(1.02);
            transform: scale(1.02);
    opacity: 0;
  }
  to {
    -webkit-filter: blur(0);
            filter: blur(0);
    -webkit-transform: scale(1);
            transform: scale(1);
    opacity: 1;
  }
}

@keyframes blurAnime {
  from {
    -webkit-filter: blur(10px);
            filter: blur(10px);
    -webkit-transform: scale(1.02);
            transform: scale(1.02);
    opacity: 0;
  }
  to {
    -webkit-filter: blur(0);
            filter: blur(0);
    -webkit-transform: scale(1);
            transform: scale(1);
    opacity: 1;
  }
}
.l-header a:not([href^="#"]):hover,
.l-footer a:not([href^="#"]):hover,
.l-breadcrumb a:not([href^="#"]):hover,
.new-responsive-template a:not([href^="#"]):hover {
  opacity: 1 !important;
  -webkit-transition: all 0.25s ease-out;
  transition: all 0.25s ease-out;
}

.pc {
  display: inherit;
}
@media screen and (max-width: 767px) {
  .pc {
    display: none;
  }
}

.sp {
  display: none;
}
@media screen and (max-width: 767px) {
  .sp {
    display: inline-block;
  }
}

.txt__ja {
  font-family: "Noto Serif JP", serif;
  font-weight: 100;
}

/* グラデーションで隠して「もっと見る」 */
.more {
  margin: 0 auto;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
}
.more__content {
  position: relative;
  height: auto;
  max-height: 250px;
  overflow: hidden;
  -webkit-transition: max-height 1s;
  transition: max-height 1s;
}
.more__content::after {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  z-index: 1;
  display: block;
  width: 100%;
  height: 100%;
  -webkit-transition: 1s;
  transition: 1s;
  background: -webkit-gradient(linear, left top, left bottom, from(transparent), to(#ffffff));
  background: -webkit-linear-gradient(top, transparent 0%, #ffffff 100%);
  background: linear-gradient(to bottom, transparent 0%, #ffffff 100%);
}
.more__content.open:after {
  z-index: -1;
  opacity: 0;
}
.more__btn {
  width: 200px;
  display: block;
  margin: 0 auto;
  padding: 20px 0 0;
  color: #684130;
  background: transparent;
  cursor: pointer;
  font-family: "Noto Sans JP", sans-serif;
  text-align: center;
  border: 0;
}
.more__btn span {
  margin-left: 0.8em;
}
.more__btn .acc__open {
  display: inline-block;
  width: 10px;
  height: 10px;
  border-bottom: 1px solid #684130;
  border-right: 1px solid #684130;
  -webkit-transform: rotate(45deg);
          transform: rotate(45deg);
  position: relative;
  top: -0.2em;
}
.more__btn .acc__close {
  display: inline-block;
  width: 10px;
  height: 10px;
  border-bottom: 1px solid #684130;
  border-left: 1px solid #684130;
  -webkit-transform: rotate(-225deg);
          transform: rotate(-225deg);
  position: relative;
  top: 0.2em;
}

a.link__disabled {
  pointer-events: none;
}
a.link__disabled span {
  opacity: 0.15;
  font: inherit;
  margin-right: 3px;
}
a.link__disabled img {
  opacity: 0.15;
}
a.grad_btn {
  display: block;
  width: 1000%;
  max-width: 360px;
  text-align: center;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  padding: 1em;
  height: 60px;
  background: #fff;
  border: 2px solid #05a173;
  text-decoration: none;
  font-weight: 700;
  border-radius: 30px;
  margin-inline: auto;
  -webkit-transition: all 0.25s ease-out;
  transition: all 0.25s ease-out;
  position: relative;
  overflow: hidden;
}
@media screen and (max-width: 767px) {
  a.grad_btn {
    height: 50px;
    width: 90%;
  }
}
a.grad_btn .grad_btn__inner {
  position: relative;
  z-index: 2;
}
a.grad_btn .grad_btn__arrow {
  display: block;
  width: 2.5rem;
  height: 2.5rem;
  position: absolute;
  z-index: 2;
}
a.grad_btn .grad_btn__arrow svg {
  width: 100%;
  height: 100%;
  display: block;
}
a.grad_btn .grad_btn__arrow svg .circle,
a.grad_btn .grad_btn__arrow svg .path {
  -webkit-transition: fill 0.25s ease-out;
  transition: fill 0.25s ease-out;
}
a.grad_btn::after {
  content: "";
  background: -webkit-gradient(linear, right top, left top, from(#00ae68), color-stop(48.02%, #3faea5), color-stop(79.21%, #3aa4b0), to(#349aba));
  background: -webkit-linear-gradient(right, #00ae68 0%, #3faea5 48.02%, #3aa4b0 79.21%, #349aba 100%);
  background: linear-gradient(270deg, #00ae68 0%, #3faea5 48.02%, #3aa4b0 79.21%, #349aba 100%);
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  opacity: 0;
  -webkit-transition: all 0.25s ease-out;
  transition: all 0.25s ease-out;
}
a.grad_btn:hover {
  -webkit-transition: all 0.25s ease-out;
  transition: all 0.25s ease-out;
  color: #fff;
}
a.grad_btn:hover::after {
  opacity: 1;
}
a.grad_btn:hover .grad_btn__arrow svg .circle {
  fill: #fff;
}
a.grad_btn:hover .grad_btn__arrow svg .path {
  fill: #06a173;
}
a.target_blank {
  margin-right: 0.2em;
  text-decoration: underline;
}
a.target_blank::after {
  content: "";
  display: inline-block;
  width: 2rem;
  height: 1.5rem;
  background-image: url("../svg/ic-blank.svg");
  background-repeat: no-repeat;
  background-size: cover;
  margin-left: 0.3em;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  position: relative;
  top: 0.05em;
}
a.link_pdf {
  margin-left: 0.2em;
}
a.link_pdf::before {
  content: "";
  display: inline-block;
  width: 1.8rem;
  height: 2.4rem;
  background-image: url("../svg/ic-pdf.svg");
  background-repeat: no-repeat;
  background-size: contain;
  margin-right: 0.4em;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  position: relative;
  top: 0.4em;
  margin-top: -10px;
}

p.h2__sub {
  text-align: center;
  color: #dd131c;
  font-weight: 700;
}
@media screen and (max-width: 767px) {
  p.h2__sub {
    font-size: 1.3rem;
  }
}
p.h2__sub + dl, p.h2__sub + p, p.h2__sub + div, p.h2__sub + table, p.h2__sub + ul, p.h2__sub + iframe, p.h2__sub + h3 {
  margin-top: 20px;
}
@media screen and (max-width: 767px) {
  p.h2__sub + dl, p.h2__sub + p, p.h2__sub + div, p.h2__sub + table, p.h2__sub + ul, p.h2__sub + iframe, p.h2__sub + h3 {
    margin-top: 10px;
  }
}
p.expnote {
  font-size: small;
}
p.expnote + ul {
  margin-top: 20px;
}
@media screen and (max-width: 767px) {
  p.expnote + ul {
    margin-top: 10px;
  }
}
p + .img__area {
  margin-top: 6rem;
}
p + h3 {
  margin-top: 60px !important;
}
@media screen and (max-width: 767px) {
  p + h3 {
    margin-top: 30px !important;
  }
}
p.p__link {
  margin-top: 35px;
}
@media screen and (max-width: 767px) {
  p.p__link {
    margin-top: 20px;
  }
}
p.p__link a {
  font-family: "Noto Sans JP", sans-serif;
  font-weight: 700;
}
p.p__link a > .arr__right {
  width: 20px;
  height: auto;
  vertical-align: top;
}
p.p__link a i {
  margin-left: 0.2em;
}
p.p__link a:link, p.p__link a:visited {
  color: #414cb9;
  border-bottom: 2px solid #414cb9;
}
p.p__link a:link i, p.p__link a:visited i {
  color: #414cb9;
}
p.p__link a:hover {
  color: #8a91d6;
  border-bottom: 2px solid #8a91d6;
}
p.p__link a:hover i {
  color: #8a91d6;
}
p.p__link--buy {
  margin-top: 30px;
}
p.p__link--buy a {
  display: block;
  text-align: center;
  padding: 5px 15px;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  border-radius: 20px;
  font-family: "Noto Sans JP", sans-serif;
  width: 60%;
}
@media screen and (max-width: 767px) {
  p.p__link--buy a {
    width: 100%;
  }
}
p.p__link--buy a i {
  color: #fff;
  margin: 0 0.3em;
  font-size: 1.15em;
}
p.p__link--buy a:link, p.p__link--buy a:visited {
  color: #fff;
  background: #414cb9;
}
p.p__link--buy a:hover {
  color: #fff;
  background: #8a91d6;
}
p.p__link--map {
  margin-top: 30px;
  text-align: center;
}
@media screen and (max-width: 767px) {
  p.p__link--map {
    display: none;
  }
}
p.p__link--map a {
  display: block;
  text-align: center;
  padding: 5px 15px;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  border: 1px solid #414cb9;
  font-family: "Noto Sans JP", sans-serif;
  width: 60%;
  margin-inline: auto;
}
p.p__link--map a i {
  margin: 0 0.3em;
  font-size: 1.15em;
}
p.p__link--map a:link, p.p__link--map a:visited {
  color: #414cb9;
}
p.p__link--map a:hover {
  color: #8a91d6;
}
p.p__link--map a:hover i {
  color: #8a91d6;
}
p.p__link--reserve {
  margin-top: 30px;
}
p.p__link--reserve a {
  display: block;
  text-align: center;
  padding: 8px 20px;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  border-radius: 30px;
  font-family: "Noto Sans JP", sans-serif;
  width: 70%;
  font-size: 19px;
  line-height: 1.3;
  font-weight: 400;
  letter-spacing: 1px;
  margin-inline: auto;
  letter-spacing: 3px;
}
@media screen and (max-width: 767px) {
  p.p__link--reserve a {
    width: 100%;
    font-size: 18px;
    padding: 9px 20px;
  }
}
p.p__link--reserve a .btn__icon {
  width: 40px;
  height: auto;
  vertical-align: top;
  position: relative;
  margin-bottom: -40px;
  top: -0.2em;
  margin-right: 0.2em;
}
@media screen and (max-width: 767px) {
  p.p__link--reserve a .btn__icon {
    width: 35px;
    top: -0.23em;
  }
}
p.p__link--reserve a i {
  color: #fff;
  margin: 0 0.3em;
  font-size: 1.15em;
  position: relative;
  top: 1px;
}
p.p__link--reserve a:link, p.p__link--reserve a:visited {
  color: #fff;
  background: #414cb9;
}
p.p__link--reserve a:hover {
  color: #fff;
  background: #8a91d6;
}
p.p__link--tel {
  margin-top: 30px;
  text-align: center;
}
@media screen and (max-width: 767px) {
  p.p__link--tel {
    margin-top: 15px;
  }
}
p.p__link--tel a {
  text-align: center;
  padding: 8px 20px;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  font-family: "Noto Sans JP", sans-serif;
  font-size: 21px;
  line-height: 1.3;
  font-weight: 500;
  letter-spacing: 1px;
  margin-inline: auto;
  border-bottom: 1px solid #414cb9;
}
@media screen and (max-width: 767px) {
  p.p__link--tel a {
    border: 1px solid #414cb9;
    padding: 8px 20px;
    border-radius: 30px;
    width: 100%;
    display: block;
    font-size: 18px;
  }
}
p.p__link--tel a .sp {
  display: inline;
  color: inherit;
  font-family: "Noto Sans JP", sans-serif;
  font-weight: 500;
}
p.p__link--tel a .tel__number {
  font-family: inherit;
  color: inherit;
  font-weight: inherit;
}
@media screen and (max-width: 767px) {
  p.p__link--tel a .tel__number {
    display: none;
  }
}
p.p__link--tel a .ja-txt {
  font-size: 19px;
  color: inherit;
}
p.p__link--tel a .btn__icon {
  width: 40px;
  height: auto;
  vertical-align: top;
  position: relative;
  margin-bottom: -40px;
  top: -0.2em;
  margin-right: 0.2em;
}
p.p__link--tel a i {
  color: #414cb9;
  margin: 0 0.3em;
  font-size: 1.15em;
  position: relative;
  top: 1px;
}
p.p__link--tel a:link, p.p__link--tel a:visited {
  color: #414cb9;
}
p.p__link--tel a:hover {
  color: #414cb9;
}
p.p__link--menureserve {
  margin-top: 30px;
  text-align: left;
}
@media screen and (max-width: 767px) {
  p.p__link--menureserve {
    text-align: center;
  }
}
p.p__link--menureserve a {
  text-align: left;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  font-family: "Noto Sans JP", sans-serif;
  font-size: 16px;
  line-height: 1.3;
  font-weight: 700;
  letter-spacing: 1px;
  border-bottom: 1px solid #414cb9;
}
@media screen and (max-width: 767px) {
  p.p__link--menureserve a {
    border: 1px solid #414cb9;
    width: 100%;
    display: block;
    text-align: center;
    padding: 10px;
    line-height: 2;
  }
}
p.p__link--menureserve a .sp {
  display: inline;
  color: inherit;
  font-family: "Noto Sans JP", sans-serif;
  font-weight: 700;
}
p.p__link--menureserve a i {
  color: #414cb9;
  margin: 0 0.3em;
  font-size: 1.15em;
  position: relative;
  top: 1px;
}
p.p__link--menureserve a:link, p.p__link--menureserve a:visited {
  color: #414cb9;
}
p.p__link--menureserve a:hover {
  color: #414cb9;
}
p + .list__link, p + .ul__basic {
  margin-top: 20px;
}
@media screen and (max-width: 767px) {
  p + .list__link, p + .ul__basic {
    margin-top: 10px;
  }
}
p + ol, p + .dl__expnote, p + .list__disc_color {
  margin-top: 20px;
}
@media screen and (max-width: 767px) {
  p + ol, p + .dl__expnote, p + .list__disc_color {
    margin-top: 10px;
  }
}
p + .common__accordion:has(> h3) {
  margin-top: 60px;
}
@media screen and (max-width: 767px) {
  p + .common__accordion:has(> h3) {
    margin-top: 30px;
  }
}

hr.hr--1000px {
  border-top: 1px solid #d1b89c;
  margin-inline: auto;
  margin-top: 100px;
  margin-bottom: 100px;
  width: 90%;
  max-width: 1000px;
  visibility: inherit;
}
@media screen and (max-width: 767px) {
  hr.hr--1000px {
    margin-top: 40px;
    margin-bottom: 40px;
  }
}
hr.hr--dashed {
  border-top: 1px dashed #d1b89c;
  margin-inline: auto;
  margin-top: 100px;
  margin-bottom: 100px;
  width: 90%;
  max-width: 1000px;
  visibility: inherit;
}
@media screen and (max-width: 767px) {
  hr.hr--dashed {
    margin-top: 40px;
    margin-bottom: 40px;
  }
}

span.txt__dummy {
  color: #ff006a;
  font-weight: 900;
}
span.material-icons {
  color: #999;
  line-height: 1;
  vertical-align: text-top;
  margin-right: 3px;
}

div.img__area {
  text-align: center;
  margin-inline: auto;
}
div.img__area + p, div.img__area + div, div.img__area + section, div.img__area + table, div.img__area + ul, div.img__area + ol, div.img__area + dl, div.img__area + h3, div.img__area + h4 {
  margin-top: 60px;
}
@media screen and (max-width: 767px) {
  div.img__area + p, div.img__area + div, div.img__area + section, div.img__area + table, div.img__area + ul, div.img__area + ol, div.img__area + dl, div.img__area + h3, div.img__area + h4 {
    margin-top: 30px;
  }
}
div.img__area > img {
  width: 100%;
  height: auto;
  border-radius: 1.5rem;
}
@media screen and (max-width: 767px) {
  div.img__area > img {
    width: 100%;
  }
}
div.img__area > picture {
  width: 100%;
  height: auto;
}
div.img__area > picture img {
  width: 100%;
  height: auto;
  border-radius: 1.5rem;
}
@media screen and (max-width: 767px) {
  div.img__area > picture {
    width: 100%;
  }
}
div.img__area .ph__clm2 {
  width: 100%;
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 50px;
}
@media screen and (max-width: 767px) {
  div.img__area .ph__clm2 {
    grid-template-columns: 1fr;
    gap: 30px;
  }
}
div.img__area .ph__clm2 dd img {
  width: 100%;
  height: auto;
  border-radius: 1.5rem;
}
div.img__area .ph__clm2 dd img + p {
  margin-top: 10px;
}
@media screen and (max-width: 767px) {
  div.img__area .ph__clm2 dd img + p {
    margin-top: 5px;
  }
}
div.img__area .ph__clm2 + p {
  margin-top: 20px;
  text-align: center;
}
@media screen and (max-width: 767px) {
  div.img__area .ph__clm2 + p {
    margin-top: 10px;
  }
}
div.img__area .ph__clm3 {
  width: 100%;
  display: grid;
  grid-template-columns: 1fr 1fr 1fr;
  gap: 50px;
}
@media screen and (max-width: 1200px) {
  div.img__area .ph__clm3 {
    gap: 20px;
  }
}
@media screen and (max-width: 767px) {
  div.img__area .ph__clm3 {
    grid-template-columns: 1fr;
    gap: 30px;
  }
  div.img__area .ph__clm3.w80 {
    width: 80%;
    margin-inline: auto;
  }
}
div.img__area .ph__clm3 dd img {
  width: 100%;
  height: auto;
  border-radius: 1.5rem;
}
div.img__area .ph__clm3 dd img + p {
  margin-top: 10px;
}
@media screen and (max-width: 767px) {
  div.img__area .ph__clm3 dd img + p {
    margin-top: 5px;
  }
}
div.img__area .ph__clm3 + p {
  margin-top: 20px;
  text-align: center;
}
@media screen and (max-width: 767px) {
  div.img__area .ph__clm3 + p {
    margin-top: 10px;
  }
}
div.img__area.w50 {
  width: 50%;
}
@media screen and (max-width: 767px) {
  div.img__area.w50 {
    width: 100%;
  }
}
div.img__area.w60 {
  width: 60%;
}
@media screen and (max-width: 767px) {
  div.img__area.w60 {
    width: 100%;
  }
}
div.img__area.w70 {
  width: 70%;
}
@media screen and (max-width: 767px) {
  div.img__area.w70 {
    width: 100%;
  }
}
div.img__area.w80 {
  width: 80%;
}
@media screen and (max-width: 767px) {
  div.img__area.w80 {
    width: 100%;
  }
}
div.btn__basic {
  text-align: center;
}
div.btn__basic a {
  font-size: 2.2rem;
  text-align: center;
  width: 60%;
  max-width: 600px;
  height: 8rem;
  display: grid;
  -webkit-align-content: center;
      -ms-flex-line-pack: center;
          align-content: center;
  margin-inline: auto;
  font-weight: 700;
  position: relative;
}
@media screen and (max-width: 767px) {
  div.btn__basic a {
    width: 90%;
    font-size: 1.5rem;
    height: 6rem;
  }
}
div.btn__basic a:after {
  background-repeat: no-repeat;
  background-size: contain;
  display: inline-block;
  width: 30px;
  height: 30px;
  position: absolute;
  right: 15px;
  top: 30px;
}
@media screen and (max-width: 767px) {
  div.btn__basic a:after {
    width: 20px;
    height: 20px;
    top: 20px;
    right: 1rem;
  }
}
div.btn__basic a:link, div.btn__basic a:visited {
  background: #fff;
  color: #111;
}
div.btn__basic a:hover {
  background: #ffc800;
}
div.btn__basic.btn__red a:link, div.btn__basic.btn__red a:visited {
  background: #c00;
  color: #fff;
}
div.btn__basic.btn__red a:hover {
  background: #ffc800;
  color: #111;
}
div.img__circle {
  overflow: hidden;
  border-radius: 50%;
}
div.linkBtn {
  text-align: center;
}
div.linkBtn + .linkBtn {
  margin-top: 20px;
}
div.linkBtn a {
  display: block;
  width: 60%;
  max-width: 550px;
  margin-left: auto;
  margin-right: auto;
  font-weight: 500;
  font-size: 2rem;
  padding: 25px 0;
  letter-spacing: 5px;
  border-radius: 5px;
}
@media screen and (max-width: 767px) {
  div.linkBtn a {
    width: 100%;
    font-size: 1.8rem;
    letter-spacing: 0;
    background-size: 15px 15px;
    background-position: 98% center;
    padding: 15px 0;
  }
}
div.linkBtn a:link, div.linkBtn a:visited {
  background-color: #8cc63f;
  color: #fff;
  text-align: center;
  -webkit-transition-duration: 1s;
          transition-duration: 1s;
  -webkit-box-shadow: 0 3px 0 #638e2a;
          box-shadow: 0 3px 0 #638e2a;
}
div.linkBtn a:hover {
  color: #111;
  background-color: #ffe100;
  -webkit-transition-duration: 0.3s;
          transition-duration: 0.3s;
  -webkit-box-shadow: 0 3px 0 #b39e00;
          box-shadow: 0 3px 0 #b39e00;
}
div.float__inner .img__area {
  float: right;
  width: 35%;
  margin-left: 3rem;
  margin-bottom: 5rem;
}
div.float__inner .img__area img {
  width: 100%;
  height: auto;
}
@media screen and (max-width: 767px) {
  div.float__inner .img__area {
    float: none;
    width: 100%;
    text-align: center;
    margin-left: 0;
    margin-bottom: 0;
  }
  div.float__inner .img__area img {
    width: 60%;
  }
  div.float__inner .img__area + p {
    margin-top: 15px;
  }
}

h2.head--border {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
}
h2.head--border:before, h2.head--border:after {
  content: "";
  height: 1px;
  -webkit-box-flex: 1;
  -webkit-flex-grow: 1;
      -ms-flex-positive: 1;
          flex-grow: 1;
  background-color: #666;
}
h2.head--border:before {
  margin-right: 1rem;
}
h2.head--border:after {
  margin-left: 1rem;
}
h2.head--border--after {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
}
@media screen and (max-width: 767px) {
  h2.head--border--after {
    font-size: 24px;
  }
}
h2.head--border--after:after {
  content: "";
  height: 1px;
  -webkit-box-flex: 1;
  -webkit-flex-grow: 1;
      -ms-flex-positive: 1;
          flex-grow: 1;
  background-color: #684130;
}
h2.head--border--after:after {
  margin-left: 1rem;
}
h2.h2__border, .top__block > h2 {
  font-family: "Roboto", sans-serif;
  font-weight: 700;
  color: #05a173;
  border-top: 1px solid #e2ece7;
  font-size: 50px;
  position: relative;
  padding-top: 0.3em;
}
@media screen and (max-width: 767px) {
  h2.h2__border, .top__block > h2 {
    font-size: 35px;
  }
}
h2.h2__border::before, .top__block > h2::before {
  position: absolute;
  top: 0;
  left: 0;
  content: "";
  width: 100px;
  height: 6px;
  background: -webkit-gradient(linear, right top, left top, from(#fffd2c), color-stop(24.92%, #b7e73a), color-stop(99.68%, #6ed047), to(#6ed047));
  background: -webkit-linear-gradient(right, #fffd2c 0%, #b7e73a 24.92%, #6ed047 99.68%, #6ed047 100%);
  background: linear-gradient(270deg, #fffd2c 0%, #b7e73a 24.92%, #6ed047 99.68%, #6ed047 100%);
}
@media screen and (max-width: 767px) {
  h2.h2__border::before, .top__block > h2::before {
    width: 50px;
    height: 3px;
  }
}
h2.h2__border + div, .top__block > h2 + div, h2.h2__border + dl, .top__block > h2 + dl, h2.h2__border + ol, .top__block > h2 + ol, h2.h2__border + ul, .top__block > h2 + ul, h2.h2__border + li, .top__block > h2 + li, h2.h2__border + table, .top__block > h2 + table {
  margin-top: 30px;
}
@media screen and (max-width: 767px) {
  h2.h2__border + div, .top__block > h2 + div, h2.h2__border + dl, .top__block > h2 + dl, h2.h2__border + ol, .top__block > h2 + ol, h2.h2__border + ul, .top__block > h2 + ul, h2.h2__border + li, .top__block > h2 + li, h2.h2__border + table, .top__block > h2 + table {
    margin-top: 15px;
  }
}

ul.ul__basic {
  margin-left: 1em;
}
ul.ul__basic li {
  list-style-type: disc;
}
ul.ul__basic li + li {
  margin-top: 0.3em;
}
ul.ul__basic li > ul {
  margin-left: 2em;
}
ul.ul__basic + p, ul.ul__basic + ul, ul.ul__basic + .dl__expnote {
  margin-top: 10px;
}
@media screen and (max-width: 767px) {
  ul.ul__basic + p, ul.ul__basic + ul, ul.ul__basic + .dl__expnote {
    margin-top: 5px;
  }
}
ul.ul__basic + h2, ul.ul__basic + h3, ul.ul__basic + h4, ul.ul__basic + h5 {
  margin-top: 40px;
}
@media screen and (max-width: 767px) {
  ul.ul__basic + h2, ul.ul__basic + h3, ul.ul__basic + h4, ul.ul__basic + h5 {
    margin-top: 20px;
  }
}
ul.ul__exp {
  margin-left: 0;
}
ul.ul__exp li {
  list-style-type: none;
  font-size: 97%;
}
ul.ul__exp li + li {
  margin-top: 0.3em;
}
ul.list__link li {
  margin-left: 1.25em;
  text-indent: -1.25em;
  font-size: 14px;
}
ul.list__link li::before {
  content: "";
  display: inline-block;
  background: var(--category-color);
  height: 1.3856406461rem;
  width: 0.75em;
  -webkit-clip-path: polygon(0 0, 100% 50%, 0 100%);
          clip-path: polygon(0 0, 100% 50%, 0 100%);
  margin-right: 0.35em;
  margin-left: 0.15em;
  position: relative;
  top: 0.1rem;
}
ul.list__link li a {
  text-decoration: underline;
  -webkit-text-decoration-color: #033824;
          text-decoration-color: #033824;
  text-decoration-thickness: 1px;
  font-size: 14px;
}
ul.list__link li a:hover {
  color: #05a173;
  -webkit-text-decoration-color: #05a173;
          text-decoration-color: #05a173;
}
ul.list__link li + li {
  margin-top: 30px;
}
@media screen and (max-width: 767px) {
  ul.list__link li + li {
    margin-top: 15px;
  }
}
ul.list__link + .common__imgblock, ul.list__link + p, ul.list__link + h4 {
  margin-top: 40px;
}
@media screen and (max-width: 767px) {
  ul.list__link + .common__imgblock, ul.list__link + p, ul.list__link + h4 {
    margin-top: 20px;
  }
}
ul.list__disc {
  list-style: none;
}
ul.list__disc li {
  list-style-type: none;
  padding-left: 1.25em;
  text-indent: -1.25em;
}
ul.list__disc li::before {
  margin-right: 0.25em;
  content: "●";
  color: var(--category-color);
}
ul.list__disc li + li {
  margin-top: 0.3em;
}
ul.list__disc + h2, ul.list__disc + h3, ul.list__disc + h4, ul.list__disc + h5 {
  margin-top: 40px;
}
@media screen and (max-width: 767px) {
  ul.list__disc + h2, ul.list__disc + h3, ul.list__disc + h4, ul.list__disc + h5 {
    margin-top: 20px;
  }
}
ul.list__disc_color {
  list-style: none;
}
ul.list__disc_color li {
  list-style-type: none;
  padding-left: 1.25em;
  text-indent: -1.25em;
}
ul.list__disc_color li::before {
  margin-right: 0.25em;
  content: "●";
  color: var(--category-color);
}
ul.list__disc_color li + li {
  margin-top: 0.3em;
}
ul.list__disc_color + p {
  margin-top: 20px;
}
@media screen and (max-width: 767px) {
  ul.list__disc_color + p {
    margin-top: 10px;
  }
}
ul.list__disc_color + h2, ul.list__disc_color + h3, ul.list__disc_color + h4, ul.list__disc_color + h5 {
  margin-top: 40px;
}
@media screen and (max-width: 767px) {
  ul.list__disc_color + h2, ul.list__disc_color + h3, ul.list__disc_color + h4, ul.list__disc_color + h5 {
    margin-top: 20px;
  }
}
ul.small li {
  font-size: small;
}

ol.list__decimal {
  list-style: none;
  counter-reset: ol_li; /* ol_li カウンタをセットする(値もリセット) */
}
ol.list__decimal.monocolor li::before {
  color: #111;
  font-weight: 400;
}
ol.list__decimal li {
  list-style-type: none;
  padding-left: 1.75em;
  text-indent: -1.75em;
}
ol.list__decimal li::before {
  margin-right: 0.25em;
  counter-increment: ol_li; /* ol_li カウンタの値に1加える */
  content: counter(ol_li) "."; /* before擬似要素のcontentで出力 */
  color: var(--category-color); /* 色を変更 */
  width: 1.5em;
  display: inline-block;
  text-align: right;
}
ol.list__decimal li + li {
  margin-top: 0.3em;
}
ol.list__decimal + .common__imgblock {
  margin-top: 40px;
}
@media screen and (max-width: 767px) {
  ol.list__decimal + .common__imgblock {
    margin-top: 20px;
  }
}
ol.list__decimal + p {
  margin-top: 20px;
}
@media screen and (max-width: 767px) {
  ol.list__decimal + p {
    margin-top: 10px;
  }
}

dl.dl__expnote {
  display: grid;
  grid-template-columns: auto 1fr;
  gap: 5px;
}
dl.dl__expnote > dt p {
  text-align: right;
  line-height: 1.6;
  font-size: 1.4rem;
}
dl.dl__expnote > dd p {
  text-align: left;
  line-height: 1.6;
  font-size: 1.4rem;
}
dl.dl__expnote > dd p a {
  font-size: 1.4rem;
}
dl.dl__expnote + .common__accordion, dl.dl__expnote + .common__imgblock, dl.dl__expnote + .img__area, dl.dl__expnote + .common__linkpage, dl.dl__expnote + h4, dl.dl__expnote + h5 {
  margin-top: 40px;
}
@media screen and (max-width: 767px) {
  dl.dl__expnote + .common__accordion, dl.dl__expnote + .common__imgblock, dl.dl__expnote + .img__area, dl.dl__expnote + .common__linkpage, dl.dl__expnote + h4, dl.dl__expnote + h5 {
    margin-top: 20px;
  }
}
dl.dl__expnote + h3 {
  margin-top: 60px;
}
@media screen and (max-width: 767px) {
  dl.dl__expnote + h3 {
    margin-top: 30px;
  }
}
dl.dl__expnote + .list__link, dl.dl__expnote + .ul__basic {
  margin-top: 20px;
}
@media screen and (max-width: 767px) {
  dl.dl__expnote + .list__link, dl.dl__expnote + .ul__basic {
    margin-top: 10px;
  }
}

.top__kv {
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
}
@media screen and (max-width: 767px) {
  .top__kv {
    margin-top: -8vw;
  }
}
.top__kv--bg {
  position: relative;
}
.top__kv--bg + .top__kv--title {
  margin-top: 30px;
}
@media screen and (max-width: 767px) {
  .top__kv--bg + .top__kv--title {
    margin-top: 15px;
  }
}
.top__kv--bg__inner {
  position: relative;
  overflow: hidden;
}
.top__kv--bg__item {
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  opacity: 0;
  visibility: hidden;
}
.top__kv--bg__item.js-step-1 {
  z-index: 3;
  position: relative;
  opacity: 1;
  visibility: visible;
}
.top__kv--bg__item.js-step-2 {
  z-index: 1;
}
.top__kv--bg__item.js-step-3 {
  z-index: 2;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
}
.top__kv--bg__item.js-step-3 svg {
  width: 33%;
  height: auto;
  fill: #159e71;
  position: relative;
  top: 0.5rem;
}
@media screen and (max-width: 639px) {
  .top__kv--bg__item.js-step-3 svg {
    width: 73%;
    top: 1%;
  }
}
.top__kv--bg__item:nth-of-type(n + 2) {
  position: absolute;
}
.top__kv--bg__item img {
  width: 100%;
  height: auto;
}
.top__kv--title {
  width: 95%;
  max-width: 1258px;
  margin-inline: auto;
}
@media screen and (max-width: 767px) {
  .top__kv--title {
    width: 88%;
    margin-inline: auto;
    position: relative;
    z-index: 100;
  }
}
.top__kv--title h1 {
  text-align: right;
}
.top__kv--title h1 img {
  width: 100%;
  max-width: 600px;
}
@media screen and (max-width: 767px) {
  .top__kv--title h1 img {
    max-width: auto;
  }
}
.top__kv + .top__block {
  margin-top: 80px;
}
@media screen and (max-width: 767px) {
  .top__kv + .top__block {
    margin-top: 40px;
  }
}
.top__block {
  width: 95%;
  max-width: 1258px;
  margin-inline: auto;
}
.top__block + .top__block {
  margin-top: 80px;
}
@media screen and (max-width: 767px) {
  .top__block + .top__block {
    margin-top: 40px;
  }
}
.top__block + .link__library_top {
  margin-top: 80px;
}
@media screen and (max-width: 767px) {
  .top__block + .link__library_top {
    margin-top: 40px;
  }
}
.top__contents__wrapper {
  margin-top: 80px;
  overflow: hidden;
}
@media screen and (max-width: 767px) {
  .top__contents__wrapper {
    margin-top: 40px;
  }
}
.top__contents__wrapper + .top__block {
  margin-top: 80px;
}
@media screen and (max-width: 767px) {
  .top__contents__wrapper + .top__block {
    margin-top: 40px;
  }
}
.top__contents__inner {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  gap: 20px;
  -webkit-transition: all 0.5s ease-out !important;
  transition: all 0.5s ease-out !important;
}
@media screen and (max-width: 767px) {
  .top__contents__inner {
    -webkit-transition: none;
    transition: none;
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 15px;
  }
}
.top__contents__inner.open {
  gap: 1px;
  width: 108%;
  margin-left: -4%;
}
.top__contents__inner .contents__link {
  display: block;
  position: relative;
  width: 100%;
  height: 690px;
  text-decoration: none;
  background-repeat: no-repeat;
  background-size: cover;
  background-position: center top;
  -webkit-box-flex: 1;
  -webkit-flex: 1;
      -ms-flex: 1;
          flex: 1;
  -webkit-transition: all 0.5s ease-out !important;
  transition: all 0.5s ease-out !important;
}
@media screen and (max-width: 767px) {
  .top__contents__inner .contents__link {
    height: 315px;
  }
}
.top__contents__inner .contents__link.open {
  -webkit-box-flex: 2.5;
  -webkit-flex: 2.5;
      -ms-flex: 2.5;
          flex: 2.5;
  -webkit-transition: all 0.5s ease-out;
  transition: all 0.5s ease-out;
}
.top__contents__inner .contents__link.open > .contents__link__inner {
  opacity: 0;
  -webkit-transition: all 0.3s ease-out;
  transition: all 0.3s ease-out;
}
.top__contents__inner .contents__link.open > .contents__link__overmenu {
  visibility: visible;
  opacity: 1;
  -webkit-transition: all 0.5s ease-out 0.3s;
  transition: all 0.5s ease-out 0.3s;
}
.top__contents__inner .contents__link.open > .contents__link__overmenu > h3 + ul {
  margin-top: 20px;
}
@media screen and (max-width: 767px) {
  .top__contents__inner .contents__link.open > .contents__link__overmenu > h3 + ul {
    margin-top: 10px;
  }
}
.top__contents__inner .contents__link::after {
  content: "";
  display: block;
  position: absolute;
  right: 0;
  bottom: 0;
  width: 69px;
  height: 68px;
  background-image: url("../svg/ic-corner_plus.svg");
  background-repeat: no-repeat;
  background-size: cover;
  z-index: 10;
}
@media screen and (max-width: 767px) {
  .top__contents__inner .contents__link::after {
    width: 34.5px;
    height: 34px;
  }
}
.top__contents__inner .contents__link.link__ceo {
  background-image: url("../webp/top-contents-ceo92eb.webp?b");
}
@media screen and (max-width: 767px) {
  .top__contents__inner .contents__link.link__ceo {
    background-image: url("../webp/top-contents-ceo_sp.webp");
  }
}
.top__contents__inner .contents__link.link__ceo .contents__link__overmenu {
  background-color: #05a173;
}
.top__contents__inner .contents__link.link__process {
  background-image: url("../webp/top-contents-process.webp");
}
@media screen and (max-width: 767px) {
  .top__contents__inner .contents__link.link__process {
    background-image: url("../webp/top-contents-process_sp.webp");
  }
}
.top__contents__inner .contents__link.link__process .contents__link__overmenu {
  background-color: #40916f;
}
.top__contents__inner .contents__link.link__sustainability {
  background-image: url("../webp/top-contents-sustainability.webp");
}
@media screen and (max-width: 767px) {
  .top__contents__inner .contents__link.link__sustainability {
    background-image: url("../webp/top-contents-sustainability_sp.webp");
  }
}
.top__contents__inner .contents__link.link__sustainability .contents__link__overmenu {
  background-color: #8bb03c;
}
.top__contents__inner .contents__link.link__biz {
  background-image: url("../webp/top-contents-biz.webp");
}
@media screen and (max-width: 767px) {
  .top__contents__inner .contents__link.link__biz {
    background-image: url("../webp/top-contents-biz_sp.webp");
  }
}
.top__contents__inner .contents__link.link__biz .contents__link__overmenu {
  background-color: #599f5c;
}
.top__contents__inner .contents__link.link__gov {
  background-image: url("../webp/top-contents-gov.webp");
}
@media screen and (max-width: 767px) {
  .top__contents__inner .contents__link.link__gov {
    background-image: url("../webp/top-contents-gov_sp.webp");
  }
}
.top__contents__inner .contents__link.link__gov .contents__link__overmenu {
  background-color: #4aa5bd;
}
.top__contents__inner .contents__link.link__about {
  background-image: url("../webp/top-contents-about.webp");
}
@media screen and (max-width: 767px) {
  .top__contents__inner .contents__link.link__about {
    background-image: url("../webp/top-contents-about_sp.webp");
  }
}
.top__contents__inner .contents__link.link__about .contents__link__overmenu {
  background-color: #788d91;
}
.top__contents__inner .contents__link__inner {
  padding: 3rem 1.5rem;
  -webkit-transition: all 0.3s ease-out 0.5s;
  transition: all 0.3s ease-out 0.5s;
}
.top__contents__inner .contents__link__inner h3 {
  color: #fff;
  font-size: 18px;
  font-weight: 700;
  line-height: 1.6;
}
@media screen and (max-width: 767px) {
  .top__contents__inner .contents__link__inner h3 {
    font-size: 16px;
  }
}
.top__contents__inner .contents__link__inner h3 + p {
  margin-top: 0.5em;
}
.top__contents__inner .contents__link__inner p {
  color: #fff;
  line-height: 1.4;
  font-family: "Roboto", sans-serif;
}
@media screen and (max-width: 767px) {
  .top__contents__inner .contents__link__inner p {
    font-size: 11px;
  }
}
.top__contents__inner .contents__link__overmenu {
  position: absolute;
  width: 100%;
  height: 100%;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  padding: 2em;
  z-index: 11;
  top: 0;
  left: 0;
  visibility: hidden;
  opacity: 0;
  -webkit-transition: all 0.3s ease-out;
  transition: all 0.3s ease-out;
}
.top__contents__inner .contents__link__overmenu a {
  text-decoration: none;
  -webkit-transition: all 0.3s;
  transition: all 0.3s;
}
.top__contents__inner .contents__link__overmenu a:link, .top__contents__inner .contents__link__overmenu a:visited {
  color: #fff;
}
.top__contents__inner .contents__link__overmenu a:hover {
  color: yellow;
  opacity: 1;
}
.top__contents__inner .contents__link__overmenu > h3 {
  color: #fff;
  font-size: 28px;
  line-height: 1.45;
  font-weight: 700;
  margin-left: 0.3em;
  margin-right: 0.3em;
}
.top__contents__inner .contents__link__overmenu > h3 + p {
  margin-top: 1em;
}
.top__contents__inner .contents__link__overmenu > p {
  color: #fff;
  line-height: 1.45;
  font-family: "Roboto", sans-serif;
  margin-left: 0.3em;
  margin-right: 0.3em;
}
.top__contents__inner .contents__link__overmenu > p + .contents__link__overmenu--list, .top__contents__inner .contents__link__modalmenu__inner .contents__link__overmenu > p + ul {
  margin-top: 3em;
}
.top__contents__inner .contents__link__overmenu--list, .top__contents__inner .contents__link__modalmenu__inner ul {
  border-top: 1px solid rgba(255, 255, 255, 0.6);
  border-bottom: 1px solid rgba(255, 255, 255, 0.6);
}
.top__contents__inner .contents__link__overmenu--list > li, .top__contents__inner .contents__link__modalmenu__inner ul > li {
  text-overflow: ellipsis;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  white-space: nowrap;
  overflow: hidden;
}
.top__contents__inner .contents__link__overmenu--list > li a, .top__contents__inner .contents__link__modalmenu__inner ul > li a {
  display: block;
  padding: 0.95em 30px 0.95em 5px;
  position: relative;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}
.top__contents__inner .contents__link__overmenu--list > li a::after, .top__contents__inner .contents__link__modalmenu__inner ul > li a::after {
  content: "";
  display: block;
  position: absolute;
  width: 26px;
  height: 26px;
  background-image: url("../svg/ic-circle_arr_right.svg");
  background-repeat: no-repeat;
  background-size: cover;
  right: 0;
  top: 1.2rem;
  margin-left: 1em;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
}
.top__contents__inner .contents__link__overmenu--list > li + li, .top__contents__inner .contents__link__modalmenu__inner ul > li + li {
  border-top: 1px solid rgba(255, 255, 255, 0.6);
}
.top__contents__inner .contents__link__modalmenu {
  display: none;
  width: 100%;
  height: 100vh;
  position: absolute;
  z-index: 100001;
  left: 0;
  top: 0;
  background: rgba(0, 0, 0, 0.6);
  place-content: center;
}
@media screen and (max-width: 767px) {
  .top__contents__inner .contents__link__modalmenu {
    display: grid;
  }
}
.top__contents__inner .contents__link__modalmenu__inner {
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  padding: 3rem 2rem;
}
.top__contents__inner .contents__link__modalmenu__inner h3 {
  color: #fff;
  font-size: 26px;
  font-weight: 700;
}
.top__contents__inner .contents__link__modalmenu__inner h3 + p, .top__contents__inner .contents__link__modalmenu__inner h3 + ul {
  margin-top: 1.5rem;
}
.top__contents__inner .contents__link__modalmenu__inner p {
  font-family: "Roboto", sans-serif;
  color: #fff;
  font-size: 14px;
}
.top__contents__inner .contents__link__modalmenu__inner p + .contents__link__overmenu--list, .top__contents__inner .contents__link__modalmenu__inner p + ul {
  margin-top: 3rem;
}
.top__contents__inner .contents__link__modalmenu__inner ul li {
  text-overflow: ellipsis;
  white-space: nowrap;
}
.top__contents__inner .contents__link__modalmenu__inner ul li a {
  text-decoration: none;
  text-overflow: ellipsis;
  white-space: nowrap;
}
.top__contents__inner .contents__link__modalmenu__inner ul li a:link, .top__contents__inner .contents__link__modalmenu__inner ul li a:visited, .top__contents__inner .contents__link__modalmenu__inner ul li a:hover {
  color: #fff;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  text-overflow: ellipsis;
  white-space: nowrap;
  padding-right: 3.5em;
}
.top__contents__inner .contents__link__modalmenu__inner ul + .contents__link__modalmenu--btnclose {
  margin-top: 5rem;
}
.top__contents__inner .contents__link__modalmenu--btnclose {
  width: 30%;
  margin-inline: auto;
}
.top__contents__inner .contents__link__modalmenu--btnclose svg {
  width: 100%;
  height: auto;
}
.top__contents__inner .contents__link__modalmenu.link__ceo .contents__link__modalmenu__inner {
  background-color: #05a173;
}
.top__contents__inner .contents__link__modalmenu.link__process .contents__link__modalmenu__inner {
  background-color: #40916f;
}
.top__contents__inner .contents__link__modalmenu.link__sustainability .contents__link__modalmenu__inner {
  background-color: #8bb03c;
}
.top__contents__inner .contents__link__modalmenu.link__biz .contents__link__modalmenu__inner {
  background-color: #599f5c;
}
.top__contents__inner .contents__link__modalmenu.link__gov .contents__link__modalmenu__inner {
  background-color: #4aa5bd;
}
.top__contents__inner .contents__link__modalmenu.link__about .contents__link__modalmenu__inner {
  background-color: #788d91;
}
@media screen and (max-width: 767px) {
  .top__contents__inner .contents__link__modalmenu.open {
    display: block;
  }
  .top__contents__inner .contents__link__modalmenu.close {
    display: none;
  }
}
.top__message__clm {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 40px;
}
@media screen and (max-width: 767px) {
  .top__message__clm {
    grid-template-columns: 1fr;
    gap: 15px;
  }
}
.top__message__clm > a {
  background-color: #f1f9f5;
  text-decoration: none;
  border-radius: 80px 0 0 0;
  overflow: hidden;
  position: relative;
}
@media screen and (max-width: 767px) {
  .top__message__clm > a {
    border-radius: 45px 0 0 0;
  }
}
.top__message__clm > a::before {
  content: "";
  position: absolute;
  display: block;
  background: -webkit-gradient(linear, right top, left top, from(rgba(5, 161, 115, 0.6)), to(rgba(5, 161, 115, 0)));
  background: -webkit-linear-gradient(right, rgba(5, 161, 115, 0.6) 0%, rgba(5, 161, 115, 0) 100%);
  background: linear-gradient(270deg, rgba(5, 161, 115, 0.6) 0%, rgba(5, 161, 115, 0) 100%);
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  opacity: 0;
  -webkit-transition: 0.3s ease-in-out;
  transition: 0.3s ease-in-out;
}
.top__message__clm > a:hover::before {
  opacity: 1;
}
.top__message__clm > a::after {
  content: "";
  display: block;
  position: absolute;
  right: 0;
  bottom: 0;
  width: 69px;
  height: 68px;
  background-image: url("../svg/ic-corner_arr.svg");
  background-repeat: no-repeat;
  background-size: cover;
}
@media screen and (max-width: 767px) {
  .top__message__clm > a::after {
    width: 34.5px;
    height: 34px;
  }
}
.top__message__clm > a > dd {
  display: grid;
  grid-template-columns: 1fr 1.7fr;
  position: relative;
}
.top__message__clm > a > dd .link__btn--ph {
  border-radius: 80px 0 80px 0;
  overflow: hidden;
}
@media screen and (max-width: 767px) {
  .top__message__clm > a > dd .link__btn--ph {
    border-radius: 45px 0 45px 0;
  }
}
.top__message__clm > a > dd .link__btn--ph img {
  width: 100%;
  height: auto;
}
.top__message__clm > a > dd .link__btn--txt {
  padding: 0.8em 1.2em 0;
}
@media screen and (max-width: 767px) {
  .top__message__clm > a > dd .link__btn--txt {
    padding: 1em 1.5em 0;
  }
}
.top__message__clm > a > dd .link__btn--txt h3 {
  font-weight: 700;
  font-size: 20px;
  line-height: 1.5;
  color: #21252f;
}
@media screen and (max-width: 767px) {
  .top__message__clm > a > dd .link__btn--txt h3 {
    font-size: 15px;
  }
}
.top__message__clm > a > dd .link__btn--txt h3 + p {
  margin-top: 0.8em;
}
.top__message__clm > a > dd .link__btn--txt p {
  font-size: 14px;
  line-height: 1.6;
}
@media screen and (max-width: 767px) {
  .top__message__clm > a > dd .link__btn--txt p {
    font-size: 11px;
  }
}

.common__title {
  width: 100%;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
}
@media screen and (max-width: 767px) {
  .common__title {
    font-size: 35px;
    margin-left: -4.2666666667vw;
    margin-right: -4.2666666667vw;
    width: calc(100% + 4.2666666667vw + 4.2666666667vw);
  }
}
.common__title > h1 {
  text-align: center;
  font-size: 30px;
  font-weight: 700;
  padding-bottom: 2rem;
}
@media screen and (max-width: 767px) {
  .common__title > h1 {
    font-size: 20px;
  }
}
.common__title > h1 + .common__block {
  margin-top: 80px;
}
@media screen and (max-width: 767px) {
  .common__title > h1 + .common__block {
    margin-top: 40px;
  }
}
.common__title__img {
  width: 100%;
  height: 100vh;
  max-height: 500px;
  overflow: hidden;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  background-repeat: no-repeat;
  background-size: cover;
  background-position: center center;
  position: relative;
}
@media screen and (max-width: 1200px) {
  .common__title__img {
    max-height: 360px;
  }
}
.common__title__img.block__layer {
  position: relative;
}
.common__title__img.block__layer > .layer__txt {
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  width: 1150px;
  display: block;
  height: 100%;
  position: relative;
}
.common__title__img.block__layer > .layer__txt .name__csointerview {
  width: 90%;
  display: grid;
  grid-template-columns: 1fr 1fr 1fr;
  gap: 30px;
  position: absolute;
  bottom: 3em;
}
@media screen and (max-width: 1200px) {
  .common__title__img.block__layer > .layer__txt .name__csointerview {
    bottom: 1.5em;
    left: 5%;
    margin-inline: auto;
  }
}
@media screen and (max-width: 767px) {
  .common__title__img.block__layer > .layer__txt .name__csointerview {
    width: 95%;
    bottom: 0.5em;
    gap: 10px;
    left: 2.5%;
  }
}
.common__title__img.block__layer > .layer__txt .name__csointerview > dd {
  border-right: 10px solid var(--category-color);
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  background-color: #fff;
  background: -webkit-gradient(linear, left top, right top, from(rgba(255, 255, 255, 0)), color-stop(40%, rgba(255, 255, 255, 0.9)));
  background: -webkit-linear-gradient(left, rgba(255, 255, 255, 0) 0%, rgba(255, 255, 255, 0.9) 40%);
  background: linear-gradient(90deg, rgba(255, 255, 255, 0) 0%, rgba(255, 255, 255, 0.9) 40%);
}
@media screen and (max-width: 767px) {
  .common__title__img.block__layer > .layer__txt .name__csointerview > dd {
    background: -webkit-gradient(linear, left top, right top, from(rgba(255, 255, 255, 0.9)), color-stop(40%, rgba(255, 255, 255, 0.9)));
    background: -webkit-linear-gradient(left, rgba(255, 255, 255, 0.9) 0%, rgba(255, 255, 255, 0.9) 40%);
    background: linear-gradient(90deg, rgba(255, 255, 255, 0.9) 0%, rgba(255, 255, 255, 0.9) 40%);
    border-right: 5px solid var(--category-color);
    padding-top: 0.3em;
  }
}
.common__title__img.block__layer > .layer__txt .name__csointerview > dd img {
  width: 100%;
  height: auto;
}
.common__title__img.block__layer > .layer__img {
  position: absolute;
  z-index: -1;
}
.common__title__img picture {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
  z-index: 1;
}
.common__title__img img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}
.common__title__img .txtlayer__vicepresident {
  width: 100%;
  position: absolute;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  z-index: 40;
}
.common__title__img .txtlayer__vicepresident.top {
  top: 2.5rem;
}
@media screen and (max-width: 1200px) {
  .common__title__img .txtlayer__vicepresident.top {
    top: 0;
  }
}
.common__title__img .txtlayer__vicepresident.bottom {
  bottom: 3rem;
}
@media screen and (max-width: 1200px) {
  .common__title__img .txtlayer__vicepresident.bottom {
    bottom: 2rem;
  }
}
.common__title__img .txtlayer__vicepresident .vicepresident__catch {
  font-size: 3rem;
  line-height: 1.2;
  padding: 0.3em 0 0.45em;
  text-align: center;
  font-weight: 700;
  color: #fff;
  text-shadow: 0 1px 5px rgba(0, 0, 0, 0.2), 0 1px 2px rgba(0, 0, 0, 0.4);
  background: rgb(0, 0, 0);
  background: -webkit-gradient(linear, left top, right top, from(rgba(0, 0, 0, 0)), color-stop(30%, rgba(0, 0, 0, 0.5)), color-stop(70%, rgba(0, 0, 0, 0.5)), to(rgba(0, 0, 0, 0)));
  background: -webkit-linear-gradient(left, rgba(0, 0, 0, 0) 0%, rgba(0, 0, 0, 0.5) 30%, rgba(0, 0, 0, 0.5) 70%, rgba(0, 0, 0, 0) 100%);
  background: linear-gradient(90deg, rgba(0, 0, 0, 0) 0%, rgba(0, 0, 0, 0.5) 30%, rgba(0, 0, 0, 0.5) 70%, rgba(0, 0, 0, 0) 100%);
}
@media screen and (max-width: 767px) {
  .common__title__img .txtlayer__vicepresident .vicepresident__catch {
    font-size: 2.4rem;
  }
}
.common__title__img .txtlayer__vicepresident .vicepresident__catch + .vicepresident__name {
  margin-top: 20px;
}
@media screen and (max-width: 767px) {
  .common__title__img .txtlayer__vicepresident .vicepresident__catch + .vicepresident__name {
    margin-top: 10px;
  }
}
.common__title__img .txtlayer__vicepresident .vicepresident__name {
  width: 50%;
  max-width: 1158px;
  margin-inline: auto;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
  -webkit-justify-content: space-between;
      -ms-flex-pack: justify;
          justify-content: space-between;
}
@media screen and (max-width: 1200px) {
  .common__title__img .txtlayer__vicepresident .vicepresident__name {
    width: 65%;
    gap: 5px;
  }
}
@media screen and (max-width: 767px) {
  .common__title__img .txtlayer__vicepresident .vicepresident__name {
    width: 85%;
    gap: 5px;
  }
}
.common__title__img .txtlayer__vicepresident .vicepresident__name dd {
  width: 260px;
  background: -webkit-gradient(linear, left top, right top, from(rgba(255, 255, 255, 0)), color-stop(30%, rgba(255, 255, 255, 0.9)));
  background: -webkit-linear-gradient(left, rgba(255, 255, 255, 0) 0%, rgba(255, 255, 255, 0.9) 30%);
  background: linear-gradient(90deg, rgba(255, 255, 255, 0) 0%, rgba(255, 255, 255, 0.9) 30%);
  padding: 0.5em 0.5em 0.3em 4em;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  border-right: 15px solid #ddd;
}
@media screen and (max-width: 767px) {
  .common__title__img .txtlayer__vicepresident .vicepresident__name dd {
    width: auto;
    padding: 0.2em 0.2em 0.2em 0.2em;
    position: relative;
    text-align: right;
    background-color: rgba(255, 255, 255, 0.9);
    background-image: none;
  }
}
.common__title__img .txtlayer__vicepresident .vicepresident__name dd:nth-of-type(1) {
  border-color: #599f5c;
}
.common__title__img .txtlayer__vicepresident .vicepresident__name dd:nth-of-type(2) {
  border-color: #00a9b1;
}
.common__title__img .txtlayer__vicepresident .vicepresident__name dd img {
  height: 100%;
  width: auto;
}
@media screen and (max-width: 767px) {
  .common__title__img .txtlayer__vicepresident .vicepresident__name dd img {
    width: 150px;
    height: auto;
    max-width: inherit;
    -webkit-box-sizing: border-box;
            box-sizing: border-box;
  }
}
.common__title__img__inner {
  width: 100%;
  max-width: 1258px;
  margin-inline: auto;
  max-height: 500px;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
}
@media screen and (max-width: 767px) {
  .common__title__img__inner {
    width: 85%;
    height: 100%;
    margin-inline: auto;
  }
}
.common__title__img.bg__message-ceo {
  background-image: url("../webp/title-bg.webp");
}
.common__title__img.bg__message-cfo {
  background-image: url("../webp/title-bg-2.webp");
}
.common__title__img.bg__governance-session {
  background-image: url("../webp/title_pc.webp");
  background-position: center top;
  background-size: cover;
}
@media screen and (max-width: 767px) {
  .common__title__img.bg__governance-session {
    background-image: url("../webp/title_sp.webp");
  }
}
.common__title__img.bg__sustainability-governance {
  background-image: url("../webp/title_pc0cc1.webp?a");
  background-position: center top;
  background-size: cover;
}
@media screen and (max-width: 767px) {
  .common__title__img.bg__sustainability-governance {
    background-image: url("../webp/title_sp0cc1.webp?a");
  }
}
.common__title__clm {
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  height: 100%;
  max-height: 500px;
}
@media screen and (max-width: 1200px) {
  .common__title__clm {
    max-height: 360px;
  }
}
@media screen and (max-width: 767px) {
  .common__title__clm {
    grid-template-columns: repeat(2, 1fr);
    grid-template-rows: repeat(3, 1fr);
    grid-column-gap: 0px;
    grid-row-gap: 10px;
    height: 100%;
  }
}
.common__title__clm.message-ceo {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  grid-template-rows: repeat(2, 1fr);
  grid-column-gap: 20px;
  grid-row-gap: 0;
}
@media screen and (max-width: 1200px) {
  .common__title__clm.message-ceo {
    width: 95%;
    height: 100%;
    margin-inline: auto;
    -webkit-box-sizing: border-box;
            box-sizing: border-box;
  }
}
@media screen and (max-width: 767px) {
  .common__title__clm.message-ceo {
    grid-template-columns: repeat(2, 1fr);
    grid-template-rows: repeat(3, 1fr);
    grid-column-gap: 0px;
    grid-row-gap: 10px;
    height: 100%;
    width: 100%;
    margin-inline: auto;
  }
}
.common__title__clm.message-ceo dd {
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
}
.common__title__clm.message-ceo dd.txt__copy {
  grid-area: 1/1/2/3;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
}
@media screen and (max-width: 767px) {
  .common__title__clm.message-ceo dd.txt__copy {
    grid-area: 1/1/2/3;
    -webkit-box-align: bottom;
    -webkit-align-items: bottom;
        -ms-flex-align: bottom;
            align-items: bottom;
  }
}
.common__title__clm.message-ceo dd.txt__copy > div {
  margin-top: 1em;
}
@media screen and (max-width: 767px) {
  .common__title__clm.message-ceo dd.txt__copy > div {
    margin-top: 0;
  }
}
.common__title__clm.message-ceo dd.txt__copy p {
  color: #111;
  font-weight: 700;
  font-size: 22px;
  line-height: 1.7;
}
@media screen and (max-width: 1200px) {
  .common__title__clm.message-ceo dd.txt__copy p {
    font-size: 14px;
  }
}
@media screen and (max-width: 767px) {
  .common__title__clm.message-ceo dd.txt__copy p {
    font-size: 13px;
    text-shadow: 0 1px 3px rgba(0, 0, 0, 0.2);
  }
}
.common__title__clm.message-ceo dd.txt__copy p.copy__main {
  font-size: 42px;
  font-weight: 900;
}
@media screen and (max-width: 1200px) {
  .common__title__clm.message-ceo dd.txt__copy p.copy__main {
    font-size: 28px;
  }
}
@media screen and (max-width: 767px) {
  .common__title__clm.message-ceo dd.txt__copy p.copy__main {
    font-size: 26px;
    color: #fff;
    padding-top: 1rem;
    text-shadow: 0 1px 3px rgba(0, 0, 0, 0.2);
  }
}
.common__title__clm.message-ceo dd.txt__copy p.copy__main + p {
  margin-top: 20px;
}
@media screen and (max-width: 767px) {
  .common__title__clm.message-ceo dd.txt__copy p.copy__main + p {
    margin-top: 10px;
  }
}
.common__title__clm.message-ceo dd.txt__name {
  grid-area: 2/1/3/3;
  position: relative;
}
@media screen and (max-width: 767px) {
  .common__title__clm.message-ceo dd.txt__name {
    grid-area: 2/1/4/2;
  }
}
.common__title__clm.message-ceo dd.txt__name div {
  position: absolute;
  bottom: 4rem;
  border-left: 10px solid #05a173;
  background: #fff;
  background: -webkit-gradient(linear, left top, right top, color-stop(50%, rgba(255, 255, 255, 0.8)), color-stop(95%, rgba(255, 255, 255, 0)));
  background: -webkit-linear-gradient(left, rgba(255, 255, 255, 0.8) 50%, rgba(255, 255, 255, 0) 95%);
  background: linear-gradient(90deg, rgba(255, 255, 255, 0.8) 50%, rgba(255, 255, 255, 0) 95%);
  padding: 1.5rem 20rem 1.5rem 2rem;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
}
@media screen and (max-width: 1200px) {
  .common__title__clm.message-ceo dd.txt__name div {
    bottom: 2rem;
  }
}
@media screen and (max-width: 767px) {
  .common__title__clm.message-ceo dd.txt__name div {
    width: 125%;
    padding: 1rem 2rem 1rem 1rem;
    background: -webkit-gradient(linear, left top, right top, color-stop(80%, rgba(255, 255, 255, 0.8)), color-stop(95%, rgba(255, 255, 255, 0)));
    background: -webkit-linear-gradient(left, rgba(255, 255, 255, 0.8) 80%, rgba(255, 255, 255, 0) 95%);
    background: linear-gradient(90deg, rgba(255, 255, 255, 0.8) 80%, rgba(255, 255, 255, 0) 95%);
    position: absolute;
    bottom: 3rem;
  }
}
.common__title__clm.message-ceo dd.txt__name div img {
  width: auto;
  max-height: 120px;
}
@media screen and (max-width: 1200px) {
  .common__title__clm.message-ceo dd.txt__name div img {
    max-height: 100px;
    position: static;
  }
}
@media screen and (max-width: 767px) {
  .common__title__clm.message-ceo dd.txt__name div img {
    max-height: 70px;
    position: static;
  }
}
.common__title__clm.message-ceo dd.txt__name div.cfo img {
  width: 210px;
}
@media screen and (max-width: 767px) {
  .common__title__clm.message-ceo dd.txt__name div.cfo img {
    width: 140px;
  }
}
.common__title__clm.message-ceo dd.txt__ph {
  grid-area: 1/3/3/4;
  text-align: center;
}
@media screen and (max-width: 767px) {
  .common__title__clm.message-ceo dd.txt__ph {
    grid-area: 2/2/4/3;
  }
}
.common__title__clm.message-ceo dd.txt__ph img {
  width: auto;
  height: 100%;
  max-height: 500px;
}
@media screen and (max-width: 767px) {
  .common__title__clm.message-ceo dd.txt__ph img {
    position: absolute;
    bottom: 0;
  }
}
@media screen and (max-width: 767px) {
  .common__title__clm.message-ceo dd.txt__ph img {
    width: 130%;
    height: auto;
    position: relative;
    top: -2.5rem;
    left: 2rem;
  }
}
.common__title + .common__anchor {
  margin-top: 0;
}
.common__title + .common__contentsblock {
  margin-top: 80px;
}
@media screen and (max-width: 767px) {
  .common__title + .common__contentsblock {
    margin-top: 40px;
  }
}
.common__anchor {
  width: 100%;
  background-color: #eff9f5;
}
@media screen and (max-width: 767px) {
  .common__anchor {
    display: none;
  }
}
.common__anchor__wrapper {
  max-width: 1258px;
  width: 95%;
  margin-inline: auto;
  padding: 1rem 0;
}
.common__anchor__wrapper .anchor__clm {
  display: grid;
  grid-template-columns: auto 1fr;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
}
.common__anchor__wrapper .anchor__clm dt,
.common__anchor__wrapper .anchor__clm dd {
  padding: 1.5rem 0;
}
.common__anchor__wrapper .anchor__clm dt {
  padding-right: 2.5rem;
}
.common__anchor__wrapper .anchor__clm dt p {
  text-transform: uppercase;
  white-space: nowrap;
  font-family: "Roboto", sans-serif;
  font-weight: 700;
  line-height: 1.2;
}
.common__anchor__wrapper .anchor__clm dd {
  border-left: 1px solid #6ed047;
  padding: 0.5rem 0 0.5rem 2.5rem;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  min-height: 7rem;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
}
.common__anchor__wrapper .anchor__list {
  display: grid;
  width: 100%;
  grid-template-columns: 1fr 1fr 1fr;
  gap: 5px 20px;
}
.common__anchor__wrapper .anchor__list li {
  line-height: 1.2;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
  display: block;
}
.common__anchor__wrapper .anchor__list li a {
  text-decoration: none;
  padding: 1rem 3rem 1rem 0.5rem;
  display: block;
  width: 100%;
  border-bottom: 1px solid #ddd;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  font-size: 13px;
  background-image: url("../svg/ic-arr-anchor.svg");
  background-repeat: no-repeat;
  background-size: 12px;
  background-position: right center;
}
.common__anchor__wrapper .anchor__list li a:hover {
  color: #05a173;
  border-bottom-color: #05a173;
}
.common__anchor + .common__contentsblock {
  margin-top: 80px;
}
@media screen and (max-width: 767px) {
  .common__anchor + .common__contentsblock {
    margin-top: 40px;
  }
}
.common__contentsblock {
  width: 95%;
  max-width: 1258px;
  margin-inline: auto;
}
.common__contentsblock.common__read p {
  font-weight: 700;
}
.common__contentsblock + .common__contentsblock {
  margin-top: 60px;
}
@media screen and (max-width: 767px) {
  .common__contentsblock + .common__contentsblock {
    margin-top: 30px;
  }
}
.common__contentsblock + .common__contentsblock.h2__block {
  margin-top: 120px;
}
@media screen and (max-width: 767px) {
  .common__contentsblock + .common__contentsblock.h2__block {
    margin-top: 60px;
  }
}
.common__contentsblock__indent {
  width: 95%;
  margin-inline: auto;
}
@media screen and (max-width: 767px) {
  .common__contentsblock__indent {
    width: 100%;
  }
}
.common__contentsblock__indent + h2 {
  margin-top: 60px;
}
@media screen and (max-width: 767px) {
  .common__contentsblock__indent + h2 {
    margin-top: 30px;
  }
}
.common__contentsblock__indent + h3 {
  margin-top: 100px;
}
@media screen and (max-width: 767px) {
  .common__contentsblock__indent + h3 {
    margin-top: 50px;
  }
}
.common__contentsblock__indent + .common__contentsblock__indent {
  margin-top: 100px;
}
@media screen and (max-width: 767px) {
  .common__contentsblock__indent + .common__contentsblock__indent {
    margin-top: 50px;
  }
}
.common__contentsblock h2 {
  color: var(--category-color);
  background-color: #eff9f5;
  font-size: 30px;
  font-weight: 700;
  padding: 2rem 1rem;
}
@media screen and (max-width: 767px) {
  .common__contentsblock h2 {
    font-size: 20px;
    padding-top: 2.5rem;
  }
}
.common__contentsblock h2 + .common__accordion, .common__contentsblock h2 + p, .common__contentsblock h2 + dl, .common__contentsblock h2 + .common__contentsblock__indent {
  margin-top: 40px;
}
@media screen and (max-width: 767px) {
  .common__contentsblock h2 + .common__accordion, .common__contentsblock h2 + p, .common__contentsblock h2 + dl, .common__contentsblock h2 + .common__contentsblock__indent {
    margin-top: 20px;
  }
}
.common__contentsblock h3 {
  border-top: 1px solid #e2ece7;
  font-size: 26px;
  line-height: 1.3;
  font-weight: 700;
  position: relative;
  color: var(--category-color);
  padding: 2rem 0 0;
}
.common__contentsblock h3.h3__businessdomain {
  padding-top: 2rem;
  font-size: 22px;
  color: #444;
}
@media screen and (max-width: 767px) {
  .common__contentsblock h3.h3__businessdomain {
    font-size: 18px;
    padding-top: 1.5rem;
  }
}
@media screen and (max-width: 767px) {
  .common__contentsblock h3 {
    font-size: 20px;
    padding-top: 2.5rem;
  }
}
.common__contentsblock h3::before {
  content: "";
  width: 100px;
  height: 6px;
  position: absolute;
  top: 0;
  left: 0;
  background-color: var(--category-color);
}
@media screen and (max-width: 767px) {
  .common__contentsblock h3::before {
    width: 50px;
    height: 3px;
  }
}
.common__contentsblock h3:has(+ .business__message_cfo__float), .common__contentsblock h3:has(+ .sustainability__cso_ph) {
  margin-bottom: 40px;
}
@media screen and (max-width: 767px) {
  .common__contentsblock h3:has(+ .business__message_cfo__float), .common__contentsblock h3:has(+ .sustainability__cso_ph) {
    margin-bottom: 20px;
  }
}
.common__contentsblock h3 > .sub_txt {
  font-weight: 500;
  font-size: 75%;
}
.common__contentsblock h3 > sup {
  font-size: small;
  vertical-align: revert-layer;
}
.common__contentsblock h3 + h4, .common__contentsblock h3 + h5, .common__contentsblock h3 + p, .common__contentsblock h3 + table, .common__contentsblock h3 + dl, .common__contentsblock h3 + .list__disc, .common__contentsblock h3 + .common__imgblock, .common__contentsblock h3 + .common__accordion, .common__contentsblock h3 + .common__contentsblock__indent {
  margin-top: 40px;
}
@media screen and (max-width: 767px) {
  .common__contentsblock h3 + h4, .common__contentsblock h3 + h5, .common__contentsblock h3 + p, .common__contentsblock h3 + table, .common__contentsblock h3 + dl, .common__contentsblock h3 + .list__disc, .common__contentsblock h3 + .common__imgblock, .common__contentsblock h3 + .common__accordion, .common__contentsblock h3 + .common__contentsblock__indent {
    margin-top: 20px;
  }
}
.common__contentsblock h4 {
  font-size: 18px;
  line-height: 1.5;
  font-weight: 700;
  color: #637a7d;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 5px;
}
@media screen and (max-width: 767px) {
  .common__contentsblock h4 {
    display: block;
  }
}
.common__contentsblock h4.h4__food {
  background: #91b89f;
  color: #fff;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  padding: 0.5rem 1rem;
}
.common__contentsblock h4.h4__message-ceo {
  color: #78bd36;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  font-size: 22px;
  margin-top: 40px;
}
@media screen and (max-width: 767px) {
  .common__contentsblock h4.h4__message-ceo {
    margin-top: 20px;
  }
}
@media screen and (max-width: 767px) {
  .common__contentsblock h4.h4__message-ceo {
    font-size: 18px;
    display: grid;
    grid-template-columns: 1fr auto;
  }
}
.common__contentsblock h4.h4__message-ceo::before {
  content: "";
  width: 4.5rem;
  height: 4rem;
  background-image: url("../svg/ic-question.svg");
  background-size: contain;
  background-repeat: no-repeat;
  margin-right: 0.5em;
  background-position: left;
}
@media screen and (max-width: 767px) {
  .common__contentsblock h4.h4__message-ceo::before {
    width: 5.5rem;
  }
}
.common__contentsblock h4 > .sub_txt {
  font-weight: 500;
  font-size: 90%;
}
.common__contentsblock h4.overview_h4 {
  background-color: #ccc;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  padding: 0.5em;
  color: #fff;
  margin-top: 40px;
}
@media screen and (max-width: 767px) {
  .common__contentsblock h4.overview_h4 {
    margin-top: 20px;
  }
}
.common__contentsblock h4.overview_h4.tabacco {
  background-color: #2f892f;
}
.common__contentsblock h4.overview_h4.medicine {
  background-color: #86b81c;
}
.common__contentsblock h4.overview_h4.food {
  background-color: #00a9b1;
}
.common__contentsblock h4.space__tight + p {
  margin-top: 0;
}
.common__contentsblock h4 + p, .common__contentsblock h4 + ul, .common__contentsblock h4 + ol, .common__contentsblock h4 + dl, .common__contentsblock h4 + div {
  margin-top: 20px;
}
@media screen and (max-width: 767px) {
  .common__contentsblock h4 + p, .common__contentsblock h4 + ul, .common__contentsblock h4 + ol, .common__contentsblock h4 + dl, .common__contentsblock h4 + div {
    margin-top: 10px;
  }
}
.common__contentsblock h4 + .common__imgblock.common__tblblock {
  margin-top: 20px;
}
@media screen and (max-width: 767px) {
  .common__contentsblock h4 + .common__imgblock.common__tblblock {
    margin-top: 10px;
  }
}
.common__contentsblock h4 + .common__accordion, .common__contentsblock h4 + .common__imgblock, .common__contentsblock h4 + h3, .common__contentsblock h4 + h4, .common__contentsblock h4 + h5 {
  margin-top: 40px;
}
@media screen and (max-width: 767px) {
  .common__contentsblock h4 + .common__accordion, .common__contentsblock h4 + .common__imgblock, .common__contentsblock h4 + h3, .common__contentsblock h4 + h4, .common__contentsblock h4 + h5 {
    margin-top: 20px;
  }
}
.common__contentsblock h4 + h5.space__12 {
  margin-top: 10px;
}
@media screen and (max-width: 767px) {
  .common__contentsblock h4 + h5.space__12 {
    margin-top: 5px;
  }
}
.common__contentsblock h4 + table {
  margin-top: 20px;
}
@media screen and (max-width: 767px) {
  .common__contentsblock h4 + table {
    margin-top: 10px;
  }
}
.common__contentsblock h5 {
  color: var(--category-color);
  font-size: 18px;
  font-weight: 700;
  line-height: 1.6;
}
.common__contentsblock h5.h5__message-ceo {
  text-align: center;
  color: #fff;
  background-color: #7e9683;
  padding: 0.3em;
}
.common__contentsblock h5.h5__message-ceo + p {
  margin-top: 20px;
}
@media screen and (max-width: 767px) {
  .common__contentsblock h5.h5__message-ceo + p {
    margin-top: 10px;
  }
}
.common__contentsblock h5.h5__normal {
  color: #444;
  font-size: 16px;
  font-weight: 400;
}
.common__contentsblock h5.h5__normal + p {
  margin-top: 20px;
}
@media screen and (max-width: 767px) {
  .common__contentsblock h5.h5__normal + p {
    margin-top: 10px;
  }
}
@media screen and (max-width: 767px) {
  .common__contentsblock h5 {
    font-size: 16px;
  }
}
.common__contentsblock h5 + .common__imgblock.common__tblblock {
  margin-top: 20px;
}
@media screen and (max-width: 767px) {
  .common__contentsblock h5 + .common__imgblock.common__tblblock {
    margin-top: 10px;
  }
}
.common__contentsblock h5 + dl, .common__contentsblock h5 + p, .common__contentsblock h5 + div, .common__contentsblock h5 + h6 {
  margin-top: 40px;
}
@media screen and (max-width: 767px) {
  .common__contentsblock h5 + dl, .common__contentsblock h5 + p, .common__contentsblock h5 + div, .common__contentsblock h5 + h6 {
    margin-top: 20px;
  }
}
.common__contentsblock h5 + ol, .common__contentsblock h5 + ul {
  margin-top: 10px;
}
@media screen and (max-width: 767px) {
  .common__contentsblock h5 + ol, .common__contentsblock h5 + ul {
    margin-top: 5px;
  }
}
.common__contentsblock p + p {
  margin-top: 1.5rem;
}
.common__contentsblock p + h4, .common__contentsblock p + h5, .common__contentsblock p + .common__imgblock, .common__contentsblock p + .sustainability__column, .common__contentsblock p + picture {
  margin-top: 40px;
}
@media screen and (max-width: 767px) {
  .common__contentsblock p + h4, .common__contentsblock p + h5, .common__contentsblock p + .common__imgblock, .common__contentsblock p + .sustainability__column, .common__contentsblock p + picture {
    margin-top: 20px;
  }
}
.common__contentsblock .list__link li a::before {
  background-color: inherit;
}
.common__contentsblock .list__link + p {
  margin-top: 40px;
}
@media screen and (max-width: 767px) {
  .common__contentsblock .list__link + p {
    margin-top: 20px;
  }
}
.common__contentsblock .list__link + h5 {
  margin-top: 60px;
}
@media screen and (max-width: 767px) {
  .common__contentsblock .list__link + h5 {
    margin-top: 30px;
  }
}
.common__contentsblock .list__decimal > li::before {
  color: var(--category-color);
  font-weight: 700;
}
.common__contentsblock .dot__category {
  margin-top: 20px;
  margin-left: 1.5em;
  margin-right: 1.5em;
}
@media screen and (max-width: 767px) {
  .common__contentsblock .dot__category {
    margin-top: 10px;
  }
}
@media screen and (max-width: 767px) {
  .common__contentsblock .dot__category {
    margin-left: 0;
    margin-right: 0;
  }
}
.common__contentsblock .dot__category li {
  margin-left: 1.2em;
  text-indent: -1.2em;
}
.common__contentsblock .dot__category li:before {
  content: "●";
  color: var(--category-color);
  margin-right: 0.2em;
}
.common__contentsblock .dot__category li + li {
  margin-top: 0.3em;
}
.common__contentsblock .dot__category + p {
  margin-top: 20px;
}
@media screen and (max-width: 767px) {
  .common__contentsblock .dot__category + p {
    margin-top: 10px;
  }
}
.common__contentsblock.contents__message h4 {
  font-size: 22px;
}
@media screen and (max-width: 767px) {
  .common__contentsblock.contents__message h4 {
    font-size: 17px;
  }
}
.common__imgblock {
  width: 100%;
  display: block;
}
.common__imgblock > img {
  width: 100%;
  height: auto;
  border-radius: 1.5rem;
}
.common__imgblock > img.no_radius {
  border-radius: 0;
}
.common__imgblock > picture img {
  width: 100%;
  height: auto;
  border-radius: 1.5rem;
}
@media screen and (max-width: 767px) {
  .common__imgblock > picture img {
    width: auto;
    height: 100%;
    max-height: 550px;
    border-radius: 0;
  }
}
.common__imgblock > picture img.width_auto {
  width: 100%;
  height: auto;
}
.common__imgblock > picture img.no_radius {
  border-radius: 0;
}
.common__imgblock > h4 + table, .common__imgblock > h4 + img {
  margin-top: 20px;
}
@media screen and (max-width: 767px) {
  .common__imgblock > h4 + table, .common__imgblock > h4 + img {
    margin-top: 10px;
  }
}
.common__imgblock p.tbl__unit {
  text-align: right;
  font-size: small;
}
@media screen and (max-width: 767px) {
  .common__imgblock p.tbl__unit {
    text-align: left;
  }
}
.common__imgblock p.tbl__unit + table {
  margin-top: 10px;
}
@media screen and (max-width: 767px) {
  .common__imgblock p.tbl__unit + table {
    margin-top: 5px;
  }
}
.common__imgblock__width60 {
  width: 60%;
  margin-inline: auto;
}
@media screen and (max-width: 767px) {
  .common__imgblock__width60 {
    width: 100%;
  }
  .common__imgblock__width60 img {
    width: 100%;
  }
}
.common__imgblock.w60 {
  width: 60%;
  margin-inline: auto;
}
@media screen and (max-width: 767px) {
  .common__imgblock.w60 {
    width: 100%;
  }
  .common__imgblock.w60 img {
    width: 100%;
  }
}
.common__imgblock.w80 {
  width: 80%;
  margin-inline: auto;
}
@media screen and (max-width: 767px) {
  .common__imgblock.w80 {
    width: 100%;
  }
  .common__imgblock.w80 img {
    width: 100%;
  }
}
.common__imgblock > .ph__clm2 {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 30px;
  width: 70%;
  margin-inline: auto;
}
@media screen and (max-width: 767px) {
  .common__imgblock > .ph__clm2 {
    width: 100%;
    gap: 20px;
  }
}
.common__imgblock > .ph__clm2 > dd img {
  width: 100%;
  height: auto;
}
@media screen and (max-width: 767px) {
  .common__imgblock.sp__scroll {
    display: inherit;
    height: -webkit-fit-content;
    height: -moz-fit-content;
    height: fit-content;
    -webkit-box-sizing: border-box;
            box-sizing: border-box;
    border: 1px solid #ddd;
    overflow-x: scroll;
    padding: 15px;
  }
  .common__imgblock.sp__scroll + .message__session {
    margin-top: 20px;
  }
  .common__imgblock.sp__scroll > img {
    width: auto;
    height: 100%;
    max-height: 550px;
    border-radius: 0;
    max-width: 500%;
  }
  .common__imgblock.sp__scroll > img.width500 {
    width: 500px;
  }
  .common__imgblock.sp__scroll:has(> .business__foodtbl, > .about__stock__holdertbl, > .about__stock__govtbl2, > .about__stock__govtbl1, > .about__stock__tsrtbl, > .value__materialitytbl, > .sustainability__symbiosistbl) {
    height: auto;
  }
}
.common__imgblock + .common__linkpage {
  margin-top: 30px;
}
@media screen and (max-width: 767px) {
  .common__imgblock + .common__linkpage {
    margin-top: 15px;
  }
}
.common__imgblock + h3, .common__imgblock + h4, .common__imgblock + h5, .common__imgblock + .common__imgblock, .common__imgblock + p, .common__imgblock + .message__session {
  margin-top: 40px;
}
@media screen and (max-width: 767px) {
  .common__imgblock + h3, .common__imgblock + h4, .common__imgblock + h5, .common__imgblock + .common__imgblock, .common__imgblock + p, .common__imgblock + .message__session {
    margin-top: 20px;
  }
}
.common__imgblock + .list__link, .common__imgblock + .dl__expnote {
  margin-top: 20px;
}
@media screen and (max-width: 767px) {
  .common__imgblock + .list__link, .common__imgblock + .dl__expnote {
    margin-top: 10px;
  }
}
.common__linkpage {
  text-align: right;
}
@media screen and (max-width: 767px) {
  .common__linkpage {
    text-align: left;
    display: block;
  }
}
.common__linkpage a {
  padding: 0.3em 1em;
  background-color: var(--category-color);
  color: #fff;
  text-decoration: none;
}
@media screen and (max-width: 767px) {
  .common__linkpage a {
    -webkit-box-sizing: border-box;
            box-sizing: border-box;
    -webkit-box-align: center;
    -webkit-align-items: center;
        -ms-flex-align: center;
            align-items: center;
    gap: 10px;
    padding: 0.5em 1em;
    font-size: 12px;
  }
  .common__linkpage a::before {
    vertical-align: middle;
  }
}
.common__linkpage a::after {
  content: "";
  display: inline-block;
  width: 2rem;
  height: 1.5rem;
  background-image: url("../svg/ic-blank-white.svg");
  background-repeat: no-repeat;
  background-size: cover;
  margin-left: 0.3em;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  position: relative;
  top: 0.05em;
}
.common__linkpage + dl {
  margin-top: 40px;
}
@media screen and (max-width: 767px) {
  .common__linkpage + dl {
    margin-top: 20px;
  }
}
.common__purpose {
  display: grid;
  grid-template-columns: 1fr 5fr;
}
.common__purpose > dt, .common__purpose > dd {
  padding: 1rem;
}
@media screen and (max-width: 1200px) {
  .common__purpose > dt, .common__purpose > dd {
    padding: 2rem 1rem;
  }
}
@media screen and (max-width: 767px) {
  .common__purpose > dt, .common__purpose > dd {
    padding: 1rem;
  }
}
.common__purpose > dt {
  background-color: var(--category-color);
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
}
.common__purpose > dt p {
  color: #fff;
  font-size: 30px;
  line-height: 1.5;
  font-weight: 700;
  text-align: center;
  white-space: nowrap;
}
@media screen and (max-width: 1200px) {
  .common__purpose > dt p {
    font-size: 23px;
  }
}
@media screen and (max-width: 767px) {
  .common__purpose > dt p {
    font-size: 15px;
  }
}
.common__purpose > dd {
  background-color: #eff9f5;
}
.common__purpose > dd p {
  color: var(--category-color);
  font-size: 30px;
  line-height: 1.5;
  font-weight: 700;
  text-align: center;
}
@media screen and (max-width: 1200px) {
  .common__purpose > dd p {
    font-size: 23px;
  }
}
@media screen and (max-width: 767px) {
  .common__purpose > dd p {
    font-size: 15px;
  }
}
@media screen and (max-width: 767px) {
  .common__accordion {
    height: 280px;
    overflow: hidden;
    position: relative;
  }
}
@media screen and (min-width: 767px) {
  .common__accordion {
    height: auto !important;
  }
}
.common__accordion__state {
  margin-top: 50px;
  text-align: center;
  display: none;
}
@media screen and (max-width: 767px) {
  .common__accordion__state {
    margin-top: 25px;
  }
}
@media screen and (max-width: 767px) {
  .common__accordion__state {
    display: block;
    background: -webkit-gradient(linear, left bottom, left top, color-stop(30%, white), to(rgba(255, 255, 255, 0)));
    background: -webkit-linear-gradient(bottom, white 30%, rgba(255, 255, 255, 0) 100%);
    background: linear-gradient(0deg, white 30%, rgba(255, 255, 255, 0) 100%);
    position: absolute;
    left: 0;
    bottom: 0;
    width: 100%;
    cursor: pointer;
  }
}
.common__accordion__state.close {
  padding-top: 130px;
}
.common__accordion__state.close .state__more {
  display: block;
}
.common__accordion__state.close .state__close {
  display: none;
}
.common__accordion__state.open {
  position: static;
}
.common__accordion__state.open .state__more {
  display: none;
}
.common__accordion__state.open .state__close {
  display: block;
}
.common__accordion__state img {
  width: 16%;
  max-width: 78px;
  cursor: pointer;
}
.common__accordion + .common__accordion {
  margin-top: 80px;
}
@media screen and (max-width: 767px) {
  .common__accordion + .common__accordion {
    margin-top: 40px;
  }
}

.sustainability__column {
  background-color: #f2f7e7;
  padding: 4em 5em;
}
@media screen and (max-width: 767px) {
  .sustainability__column {
    padding: 2rem 2.5rem 3rem;
  }
}
@media screen and (max-width: 767px) {
  .sustainability__column h4 img {
    width: 17%;
    margin-top: -7px;
  }
}
.sustainability__column + .sustainability__column {
  margin-top: 40px;
}
@media screen and (max-width: 767px) {
  .sustainability__column + .sustainability__column {
    margin-top: 20px;
  }
}
.sustainability__column_policy {
  border-left: 10px solid #489f76;
  width: 70%;
  margin-inline: auto;
  padding: 3rem 3rem;
  background-color: #fff;
  -webkit-box-shadow: 0 1px 3px rgba(0, 0, 0, 0.15);
          box-shadow: 0 1px 3px rgba(0, 0, 0, 0.15);
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  margin-top: 50px;
}
@media screen and (max-width: 767px) {
  .sustainability__column_policy {
    margin-top: 25px;
  }
}
@media screen and (max-width: 767px) {
  .sustainability__column_policy {
    width: 100%;
  }
}
.sustainability__column_policy h4 span {
  background-color: #489f76;
  color: #fff;
  font-weight: 700;
  border-radius: 4px;
  padding: 0.2em 0.7em 0.3em;
}
.sustainability__column_policy h4 + ul, .sustainability__column_policy h4 + p {
  margin-top: 10px;
}
@media screen and (max-width: 767px) {
  .sustainability__column_policy h4 + ul, .sustainability__column_policy h4 + p {
    margin-top: 5px;
  }
}
.sustainability__column_policy ol li::before,
.sustainability__column_policy ul li::before {
  color: #489f76 !important;
}
.sustainability__column_policy ol + h4,
.sustainability__column_policy ul + h4 {
  margin-top: 40px;
}
@media screen and (max-width: 767px) {
  .sustainability__column_policy ol + h4,
  .sustainability__column_policy ul + h4 {
    margin-top: 20px;
  }
}
.sustainability__commission {
  border: 2px solid var(--category-color);
  margin-top: 60px;
}
@media screen and (max-width: 767px) {
  .sustainability__commission {
    margin-top: 30px;
  }
}
.sustainability__commission dl dt {
  padding: 2rem;
  border-bottom: 2px solid var(--category-color);
  background-color: #f0f6dd;
}
.sustainability__commission dl dt p {
  text-align: center;
  color: var(--category-color);
  font-weight: 700;
}
.sustainability__commission dl dd {
  padding: 3rem 5rem;
  background-color: #ecf7f2;
}
.sustainability__commission dl dd p + p {
  margin-top: 0;
}
.sustainability__symbiosistbl tr:nth-child(odd) td {
  background-color: #f1f9f9;
}
.sustainability__symbiosistbl tr td {
  padding: 1.5em !important;
}
.sustainability__symbiosistbl tr td p + .ul__basic, .sustainability__symbiosistbl tr td p + .list__disc {
  margin-top: 10px;
}
@media screen and (max-width: 767px) {
  .sustainability__symbiosistbl tr td p + .ul__basic, .sustainability__symbiosistbl tr td p + .list__disc {
    margin-top: 5px;
  }
}
.sustainability__symbiosistbl tr td:nth-of-type(1) {
  border-right: 1px solid #ccc;
  width: 20% !important;
}
.sustainability__symbiosistbl tr td:nth-of-type(1) p {
  text-align: center;
  font-weight: 700;
}
.sustainability__symbiosistbl tr td:nth-of-type(2) {
  width: auto;
}
.sustainability__analysistbl, .governance__tbl {
  width: 100%;
}
@media screen and (max-width: 767px) {
  .sustainability__analysistbl, .governance__tbl {
    min-width: 1185px;
  }
}
.sustainability__analysistbl tr.bg__blue td, .governance__tbl tr.bg__blue td {
  background-color: #eaf6fd;
}
.sustainability__analysistbl tr.bg__green td, .governance__tbl tr.bg__green td {
  background-color: #f6f9ec;
}
.sustainability__analysistbl tr + tr > th, .governance__tbl tr + tr > th {
  border-top: 1px solid #fff;
  border-left: 1px solid #fff;
}
.sustainability__analysistbl tr > th, .governance__tbl tr > th,
.sustainability__analysistbl tr td,
.governance__tbl tr td {
  padding: 0.7em 1em;
}
.sustainability__analysistbl tr > th, .governance__tbl tr > th {
  background-color: #6a8385;
  vertical-align: middle;
}
.sustainability__analysistbl tr > th.vertical, .governance__tbl tr > th.vertical {
  padding: 0.5em;
}
.sustainability__analysistbl tr > th.vertical p, .governance__tbl tr > th.vertical p {
  -ms-writing-mode: tb-rl;
  -webkit-writing-mode: vertical-rl;
          writing-mode: vertical-rl;
  white-space: pre;
}
.sustainability__analysistbl tr > th p, .governance__tbl tr > th p {
  color: #fff;
  font-weight: 700;
  line-height: 1.6;
}
.sustainability__analysistbl tr > th + th, .governance__tbl tr > th + th {
  border-left: 1px solid #fff;
}
.sustainability__analysistbl tr > td, .governance__tbl tr > td {
  padding: 0.5em;
  border-bottom: 1px solid #ccc;
  vertical-align: middle;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
}
.sustainability__analysistbl tr > td:nth-of-type(1), .governance__tbl tr > td:nth-of-type(1) {
  border-right: 1px solid #ccc;
}
.sustainability__analysistbl tr > td:nth-last-child(1), .governance__tbl tr > td:nth-last-child(1), .sustainability__analysistbl tr > td:nth-last-child(2), .governance__tbl tr > td:nth-last-child(2) {
  width: 200px;
}
.sustainability__analysistbl tr > td.sort, .governance__tbl tr > td.sort {
  width: 40px;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
}
.sustainability__analysistbl tr > td.sort p, .governance__tbl tr > td.sort p {
  -ms-writing-mode: tb-rl;
  -webkit-writing-mode: vertical-rl;
          writing-mode: vertical-rl;
  white-space: pre;
}
.sustainability__analysistbl tr > td.zaimu, .governance__tbl tr > td.zaimu {
  width: 90px;
}
.sustainability__analysistbl tr > td.zaimu p, .governance__tbl tr > td.zaimu p {
  text-align: right;
  white-space: nowrap;
}
.sustainability__analysistbl tr > td.timescale, .governance__tbl tr > td.timescale {
  width: 40px;
}
.sustainability__analysistbl tr > td.timescale p, .governance__tbl tr > td.timescale p {
  text-align: center;
  color: #6d8171;
}
.sustainability__analysistbl tr > td + td, .governance__tbl tr > td + td {
  border-left: 1px solid #ccc;
}
.sustainability__analysistbl tr > td p, .governance__tbl tr > td p {
  line-height: 1.6;
}
.sustainability__analysistbl tr > td p + p, .governance__tbl tr > td p + p {
  margin-top: 0.3rem;
}
.sustainability__investment_dl {
  display: grid;
  grid-template-columns: 1fr 5fr;
  gap: 30px 20px;
  margin-top: 60px !important;
}
@media screen and (max-width: 767px) {
  .sustainability__investment_dl {
    margin-top: 30px !important;
    grid-template-columns: 1fr;
  }
}
.sustainability__investment_dl > dt {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  background-color: #839936;
}
.sustainability__investment_dl > dt p {
  text-align: center;
  font-weight: 700;
  color: #fff;
}
.sustainability__investment_dl > dd p + ol {
  margin-top: 20px !important;
}
@media screen and (max-width: 767px) {
  .sustainability__investment_dl > dd p + ol {
    margin-top: 10px !important;
  }
}
.sustainability__investment_dl > dd.sustainability__investment_dl__effect {
  display: grid;
  grid-template-columns: 2fr 1fr;
  gap: 20px;
}
@media screen and (max-width: 767px) {
  .sustainability__investment_dl > dd.sustainability__investment_dl__effect {
    grid-template-columns: 1fr;
  }
}
.sustainability__investment_dl > dd.sustainability__investment_dl__effect div:nth-of-type(2) img {
  width: 100%;
  height: auto;
}
@media screen and (max-width: 767px) {
  .sustainability__investment_dl > dd.sustainability__investment_dl__effect div:nth-of-type(2) img {
    width: 70%;
    margin-inline: auto;
    display: block;
  }
}
.sustainability__investment_ol {
  margin-left: 2em !important;
}
.sustainability__investment_ol > li {
  list-style-type: decimal !important;
}
.sustainability__investment_ol > li + li {
  margin-top: 0.4em;
}
.sustainability__talent_column {
  background-color: #eef5e5;
  padding: 2rem;
  margin-top: 40px;
}
@media screen and (max-width: 767px) {
  .sustainability__talent_column {
    margin-top: 20px;
  }
}
.sustainability__talent_column h4 {
  display: block;
  color: var(--category-color);
  text-align: center;
}
.sustainability__talent_column h4 + dl {
  margin-top: 20px;
}
@media screen and (max-width: 767px) {
  .sustainability__talent_column h4 + dl {
    margin-top: 10px;
  }
}
.sustainability__talent_column__clm {
  display: grid;
  grid-template-columns: 1fr 1fr 1fr;
  gap: 15px;
}
@media screen and (max-width: 767px) {
  .sustainability__talent_column__clm {
    grid-template-columns: 1fr;
    gap: 10px;
  }
}
.sustainability__talent_column__clm > dd {
  background-color: #fff;
  border: 1px solid var(--category-color);
  padding: 1rem;
}
.sustainability__talent_column__clm > dd p {
  text-align: center;
  font-weight: 700;
}
.sustainability__talent_column + p {
  margin-top: 20px;
}
@media screen and (max-width: 767px) {
  .sustainability__talent_column + p {
    margin-top: 10px;
  }
}
.sustainability__talenttbl {
  width: 100%;
}
@media screen and (max-width: 767px) {
  .sustainability__talenttbl {
    min-width: 1185px;
  }
}
.sustainability__talenttbl tr + tr > th {
  border-top: 1px solid #fff;
  border-left: 1px solid #fff;
}
.sustainability__talenttbl tr > th,
.sustainability__talenttbl tr td {
  padding: 0.7em 1em;
}
.sustainability__talenttbl tr > th {
  background-color: #869a91;
}
.sustainability__talenttbl tr > th p {
  color: #fff;
  font-weight: 700;
}
.sustainability__talenttbl tr > th + th {
  border-left: 1px solid #fff;
}
.sustainability__talenttbl tr > td {
  border-bottom: 1px solid #ccc;
}
.sustainability__talenttbl tr > td:nth-of-type(1) {
  border-right: 1px solid #ccc;
  vertical-align: middle;
}
.sustainability__talenttbl tr > td:nth-last-child(1), .sustainability__talenttbl tr > td:nth-last-child(2), .sustainability__talenttbl tr > td:nth-last-child(3) {
  width: 20%;
}
.sustainability__talenttbl tr > td:nth-last-child(1) p, .sustainability__talenttbl tr > td:nth-last-child(2) p, .sustainability__talenttbl tr > td:nth-last-child(3) p {
  text-align: right;
}
.sustainability__talenttbl tr > td + td {
  border-left: 1px solid #ccc;
}
.sustainability__talenttbl tr > td p {
  line-height: 1.6;
}
.sustainability__talenttbl tr > td p + p {
  margin-top: 0.3rem;
}
.sustainability__talenttbl2 {
  width: 100%;
}
@media screen and (max-width: 767px) {
  .sustainability__talenttbl2 {
    min-width: 1185px;
  }
}
.sustainability__talenttbl2 tr + tr > th {
  border-top: 1px solid #fff;
  border-left: 1px solid #fff;
}
.sustainability__talenttbl2 tr > th,
.sustainability__talenttbl2 tr td {
  padding: 0.7em 1em;
}
.sustainability__talenttbl2 tr > th {
  background-color: #869a91;
}
.sustainability__talenttbl2 tr > th p {
  color: #fff;
  font-weight: 700;
}
.sustainability__talenttbl2 tr > th + th {
  border-left: 1px solid #fff;
}
.sustainability__talenttbl2 tr > td {
  border-bottom: 1px solid #ccc;
}
.sustainability__talenttbl2 tr > td:nth-of-type(1) {
  border-right: 1px solid #ccc;
}
.sustainability__talenttbl2 tr > td:nth-last-child(1), .sustainability__talenttbl2 tr > td:nth-last-child(2), .sustainability__talenttbl2 tr > td:nth-last-child(3), .sustainability__talenttbl2 tr > td:nth-last-child(4) {
  width: 15%;
}
.sustainability__talenttbl2 tr > td:nth-last-child(1) p, .sustainability__talenttbl2 tr > td:nth-last-child(2) p, .sustainability__talenttbl2 tr > td:nth-last-child(3) p, .sustainability__talenttbl2 tr > td:nth-last-child(4) p {
  text-align: right;
}
.sustainability__talenttbl2 tr > td:nth-last-child(5) p {
  text-align: center;
}
.sustainability__talenttbl2 tr > td + td {
  border-left: 1px solid #ccc;
}
.sustainability__talenttbl2 tr > td p {
  line-height: 1.6;
}
.sustainability__talenttbl2 tr > td p + p {
  margin-top: 0.3rem;
}
.sustainability__targets_legend {
  display: grid;
  grid-template-columns: 1fr 1fr 1fr 1fr 1fr;
  gap: 15px;
}
@media screen and (max-width: 1200px) {
  .sustainability__targets_legend {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-flex-wrap: wrap;
        -ms-flex-wrap: wrap;
            flex-wrap: wrap;
    -webkit-box-pack: center;
    -webkit-justify-content: center;
        -ms-flex-pack: center;
            justify-content: center;
  }
}
@media screen and (max-width: 767px) {
  .sustainability__targets_legend {
    grid-template-columns: 1fr;
    width: 80%;
    margin-inline: auto;
  }
}
.sustainability__targets_legend > dd {
  background-color: #efefef;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  padding: 1rem;
  border-radius: 5px;
  display: grid;
  grid-template-columns: 1fr;
  gap: 10px;
}
@media screen and (max-width: 1200px) {
  .sustainability__targets_legend > dd {
    width: 30%;
  }
}
@media screen and (max-width: 767px) {
  .sustainability__targets_legend > dd {
    width: 100%;
    display: grid;
    grid-template-columns: 1fr 4fr;
    gap: 10px;
  }
}
.sustainability__targets_legend > dd:nth-of-type(1) {
  background-color: #c3d8c7;
}
.sustainability__targets_legend > dd:nth-of-type(2) {
  background-color: #adcadd;
}
.sustainability__targets_legend > dd:nth-of-type(3) {
  background-color: #ecada9;
}
.sustainability__targets_legend > dd:nth-of-type(4) {
  background-color: #f8db91;
}
.sustainability__targets_legend > dd:nth-of-type(5) {
  background-color: #b4bec4;
}
.sustainability__targets_legend > dd .legend__icon {
  text-align: center;
}
.sustainability__targets_legend > dd .legend__txt {
  background-color: #fff;
  height: 6rem;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  padding: 0.5em 1.5em;
  border-radius: 3px;
}
@media screen and (max-width: 767px) {
  .sustainability__targets_legend > dd .legend__txt {
    height: 100%;
  }
}
.sustainability__targets_legend > dd .legend__txt p {
  text-align: center;
  font-size: 14px;
  line-height: 1.4;
}
@media screen and (max-width: 1200px) {
  .sustainability__targets_legend > dd .legend__txt p {
    font-size: 12px;
  }
}
.sustainability__cso_ph {
  float: right;
  width: 30%;
  margin-left: 5em;
  margin-bottom: 5em;
}
@media screen and (max-width: 767px) {
  .sustainability__cso_ph {
    margin-top: 30px;
    float: none;
    display: block;
    width: 60%;
    margin-bottom: 0;
    margin-left: 0;
    text-align: center;
    margin-inline: auto;
  }
}
@media screen and (max-width: 767px) and (max-width: 767px) {
  .sustainability__cso_ph {
    margin-top: 15px;
  }
}
@media screen and (max-width: 767px) {
  .sustainability__cso_ph + p {
    margin-top: 30px;
  }
}
@media screen and (max-width: 767px) and (max-width: 767px) {
  .sustainability__cso_ph + p {
    margin-top: 15px;
  }
}
.sustainability__cso_ph img {
  width: 100%;
  height: auto;
}

.business__swot__pc {
  display: block;
}
@media screen and (max-width: 767px) {
  .business__swot__pc {
    display: none;
  }
}
.business__swot__sp {
  display: none;
  margin-top: 60px;
}
@media screen and (max-width: 767px) {
  .business__swot__sp {
    margin-top: 30px;
  }
}
@media screen and (max-width: 767px) {
  .business__swot__sp {
    display: block;
  }
}
.business__swot__sp dl.color__strengths {
  --swot-color: #94cb48;
}
.business__swot__sp dl.color__weaknesses {
  --swot-color: #49b991;
}
.business__swot__sp dl.color__opportunity {
  --swot-color: #3cbfc9;
}
.business__swot__sp dl.color__threats {
  --swot-color: #3a96c9;
}
.business__swot__icon {
  text-align: center;
  width: 17%;
  margin-inline: auto;
}
.business__swot__icon img {
  width: 100%;
}
.business__swot__icon + h5 {
  margin-top: 0.5em;
}
.business__swot__factor {
  width: 100%;
}
.business__swot__factor.color__strengths .swot__bg {
  background-image: url("../svg/bg-swot-s.svg");
}
.business__swot__factor.color__weaknesses .swot__bg {
  background-image: url("../svg/bg-swot-w.svg");
}
.business__swot__factor.color__opportunity .swot__bg {
  background-image: url("../svg/bg-swot-o.svg");
}
.business__swot__factor.color__threats .swot__bg {
  background-image: url("../svg/bg-swot-t.svg");
}
.business__swot__factor + .business__swot__factor {
  margin-top: 40px;
}
@media screen and (max-width: 767px) {
  .business__swot__factor + .business__swot__factor {
    margin-top: 20px;
  }
}
.business__swot__factor > dt {
  padding: 0.5rem 1rem;
  background-color: var(--swot-color);
}
.business__swot__factor > dt p {
  text-align: center;
  color: #fff;
  font-weight: 700;
  font-size: 20px;
}
.business__swot__factor > dd {
  border: 1px solid var(--swot-color);
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  padding: 0.5rem 2rem 2rem;
}
.business__swot__factor > dd h5 {
  text-align: center;
  font-size: 18px;
  font-weight: 700;
  color: var(--swot-color);
}
.business__swot__factor > dd h5 + .swot__bg {
  margin-top: 30px;
}
@media screen and (max-width: 767px) {
  .business__swot__factor > dd h5 + .swot__bg {
    margin-top: 15px;
  }
}
.business__swot__factor > dd p {
  text-align: left;
}
.business__swot__factor > dd ul li {
  font-size: 14px;
  padding-left: 1.2em;
  text-indent: -1.2em;
}
.business__swot__factor > dd ul li::before {
  color: var(--swot-color);
  content: "●";
  margin-right: 0.2em;
}
.business__swot__factor > dd ul li + li {
  margin-top: 0.5em;
}
.business__swot__factor > dd .swot__bg {
  background-size: 43%;
  background-repeat: no-repeat;
  background-position: center center;
  min-height: 150px;
}
.business__swot__sp + h4 {
  margin-top: 60px;
}
@media screen and (max-width: 767px) {
  .business__swot__sp + h4 {
    margin-top: 30px;
  }
}
.business__foodtbl, .about__stock__holdertbl, .about__stock__govtbl2, .about__stock__govtbl1, .about__stock__tsrtbl, .value__materialitytbl, .sustainability__symbiosistbl {
  width: 100%;
}
@media screen and (max-width: 767px) {
  .business__foodtbl, .about__stock__holdertbl, .about__stock__govtbl2, .about__stock__govtbl1, .about__stock__tsrtbl, .value__materialitytbl, .sustainability__symbiosistbl {
    min-width: 1185px;
  }
}
.business__foodtbl tr > th, .about__stock__holdertbl tr > th, .about__stock__govtbl2 tr > th, .about__stock__govtbl1 tr > th, .about__stock__tsrtbl tr > th, .value__materialitytbl tr > th, .sustainability__symbiosistbl tr > th,
.business__foodtbl tr td,
.about__stock__holdertbl tr td,
.about__stock__govtbl2 tr td,
.about__stock__govtbl1 tr td,
.about__stock__tsrtbl tr td,
.value__materialitytbl tr td,
.sustainability__symbiosistbl tr td {
  padding: 0.7em 1em;
}
.business__foodtbl tr > th, .about__stock__holdertbl tr > th, .about__stock__govtbl2 tr > th, .about__stock__govtbl1 tr > th, .about__stock__tsrtbl tr > th, .value__materialitytbl tr > th, .sustainability__symbiosistbl tr > th {
  background-color: #869a91;
}
.business__foodtbl tr > th p, .about__stock__holdertbl tr > th p, .about__stock__govtbl2 tr > th p, .about__stock__govtbl1 tr > th p, .about__stock__tsrtbl tr > th p, .value__materialitytbl tr > th p, .sustainability__symbiosistbl tr > th p {
  color: #fff;
  font-weight: 700;
}
.business__foodtbl tr > th + th, .about__stock__holdertbl tr > th + th, .about__stock__govtbl2 tr > th + th, .about__stock__govtbl1 tr > th + th, .about__stock__tsrtbl tr > th + th, .value__materialitytbl tr > th + th, .sustainability__symbiosistbl tr > th + th {
  border-left: 1px solid #fff;
}
.business__foodtbl tr > td, .about__stock__holdertbl tr > td, .about__stock__govtbl2 tr > td, .about__stock__govtbl1 tr > td, .about__stock__tsrtbl tr > td, .value__materialitytbl tr > td, .sustainability__symbiosistbl tr > td {
  border-bottom: 1px solid #ccc;
}
.business__foodtbl tr > td:nth-of-type(1), .about__stock__holdertbl tr > td:nth-of-type(1), .about__stock__govtbl2 tr > td:nth-of-type(1), .about__stock__govtbl1 tr > td:nth-of-type(1), .about__stock__tsrtbl tr > td:nth-of-type(1), .value__materialitytbl tr > td:nth-of-type(1), .sustainability__symbiosistbl tr > td:nth-of-type(1) {
  width: 90px;
}
@media screen and (max-width: 767px) {
  .business__foodtbl tr > td:nth-of-type(1), .about__stock__holdertbl tr > td:nth-of-type(1), .about__stock__govtbl2 tr > td:nth-of-type(1), .about__stock__govtbl1 tr > td:nth-of-type(1), .about__stock__tsrtbl tr > td:nth-of-type(1), .value__materialitytbl tr > td:nth-of-type(1), .sustainability__symbiosistbl tr > td:nth-of-type(1) {
    width: 70px;
  }
}
.business__foodtbl tr > td:nth-last-of-type(3), .about__stock__holdertbl tr > td:nth-last-of-type(3), .about__stock__govtbl2 tr > td:nth-last-of-type(3), .about__stock__govtbl1 tr > td:nth-last-of-type(3), .about__stock__tsrtbl tr > td:nth-last-of-type(3), .value__materialitytbl tr > td:nth-last-of-type(3), .sustainability__symbiosistbl tr > td:nth-last-of-type(3) {
  width: 90px;
}
.business__foodtbl tr > td:nth-last-of-type(3) img, .about__stock__holdertbl tr > td:nth-last-of-type(3) img, .about__stock__govtbl2 tr > td:nth-last-of-type(3) img, .about__stock__govtbl1 tr > td:nth-last-of-type(3) img, .about__stock__tsrtbl tr > td:nth-last-of-type(3) img, .value__materialitytbl tr > td:nth-last-of-type(3) img, .sustainability__symbiosistbl tr > td:nth-last-of-type(3) img {
  width: 100%;
  height: auto;
}
@media screen and (max-width: 767px) {
  .business__foodtbl tr > td:nth-last-of-type(3) img, .about__stock__holdertbl tr > td:nth-last-of-type(3) img, .about__stock__govtbl2 tr > td:nth-last-of-type(3) img, .about__stock__govtbl1 tr > td:nth-last-of-type(3) img, .about__stock__tsrtbl tr > td:nth-last-of-type(3) img, .value__materialitytbl tr > td:nth-last-of-type(3) img, .sustainability__symbiosistbl tr > td:nth-last-of-type(3) img {
    max-width: 100% !important;
  }
}
@media screen and (max-width: 767px) {
  .business__foodtbl tr > td:nth-last-of-type(3), .about__stock__holdertbl tr > td:nth-last-of-type(3), .about__stock__govtbl2 tr > td:nth-last-of-type(3), .about__stock__govtbl1 tr > td:nth-last-of-type(3), .about__stock__tsrtbl tr > td:nth-last-of-type(3), .value__materialitytbl tr > td:nth-last-of-type(3), .sustainability__symbiosistbl tr > td:nth-last-of-type(3) {
    width: 70px;
  }
}
.business__foodtbl tr > td:nth-last-of-type(2), .about__stock__holdertbl tr > td:nth-last-of-type(2), .about__stock__govtbl2 tr > td:nth-last-of-type(2), .about__stock__govtbl1 tr > td:nth-last-of-type(2), .about__stock__tsrtbl tr > td:nth-last-of-type(2), .value__materialitytbl tr > td:nth-last-of-type(2), .sustainability__symbiosistbl tr > td:nth-last-of-type(2) {
  width: 15%;
}
.business__foodtbl tr > td:last-of-type, .about__stock__holdertbl tr > td:last-of-type, .about__stock__govtbl2 tr > td:last-of-type, .about__stock__govtbl1 tr > td:last-of-type, .about__stock__tsrtbl tr > td:last-of-type, .value__materialitytbl tr > td:last-of-type, .sustainability__symbiosistbl tr > td:last-of-type {
  border-left: 1px solid #ccc;
}
.business__foodtbl tr > td.materiality__icon, .about__stock__holdertbl tr > td.materiality__icon, .about__stock__govtbl2 tr > td.materiality__icon, .about__stock__govtbl1 tr > td.materiality__icon, .about__stock__tsrtbl tr > td.materiality__icon, .value__materialitytbl tr > td.materiality__icon, .sustainability__symbiosistbl tr > td.materiality__icon {
  text-align: center;
  vertical-align: middle;
}
.business__foodtbl tr > td.td__blue, .about__stock__holdertbl tr > td.td__blue, .about__stock__govtbl2 tr > td.td__blue, .about__stock__govtbl1 tr > td.td__blue, .about__stock__tsrtbl tr > td.td__blue, .value__materialitytbl tr > td.td__blue, .sustainability__symbiosistbl tr > td.td__blue {
  background-color: #adcadd;
}
.business__foodtbl tr > td.td__blue__sub, .about__stock__holdertbl tr > td.td__blue__sub, .about__stock__govtbl2 tr > td.td__blue__sub, .about__stock__govtbl1 tr > td.td__blue__sub, .about__stock__tsrtbl tr > td.td__blue__sub, .value__materialitytbl tr > td.td__blue__sub, .sustainability__symbiosistbl tr > td.td__blue__sub {
  background-color: #dde9f1;
}
.business__foodtbl tr > td.td__green, .about__stock__holdertbl tr > td.td__green, .about__stock__govtbl2 tr > td.td__green, .about__stock__govtbl1 tr > td.td__green, .about__stock__tsrtbl tr > td.td__green, .value__materialitytbl tr > td.td__green, .sustainability__symbiosistbl tr > td.td__green {
  background-color: #c3d8c7;
}
.business__foodtbl tr > td.td__green__sub, .about__stock__holdertbl tr > td.td__green__sub, .about__stock__govtbl2 tr > td.td__green__sub, .about__stock__govtbl1 tr > td.td__green__sub, .about__stock__tsrtbl tr > td.td__green__sub, .value__materialitytbl tr > td.td__green__sub, .sustainability__symbiosistbl tr > td.td__green__sub {
  background-color: #e0ebe2;
}
.business__foodtbl tr > td.td__red, .about__stock__holdertbl tr > td.td__red, .about__stock__govtbl2 tr > td.td__red, .about__stock__govtbl1 tr > td.td__red, .about__stock__tsrtbl tr > td.td__red, .value__materialitytbl tr > td.td__red, .sustainability__symbiosistbl tr > td.td__red {
  background-color: #ecada9;
}
.business__foodtbl tr > td.td__red__sub, .about__stock__holdertbl tr > td.td__red__sub, .about__stock__govtbl2 tr > td.td__red__sub, .about__stock__govtbl1 tr > td.td__red__sub, .about__stock__tsrtbl tr > td.td__red__sub, .value__materialitytbl tr > td.td__red__sub, .sustainability__symbiosistbl tr > td.td__red__sub {
  background-color: #f7d7d3;
}
.business__foodtbl tr > td.td__yellow, .about__stock__holdertbl tr > td.td__yellow, .about__stock__govtbl2 tr > td.td__yellow, .about__stock__govtbl1 tr > td.td__yellow, .about__stock__tsrtbl tr > td.td__yellow, .value__materialitytbl tr > td.td__yellow, .sustainability__symbiosistbl tr > td.td__yellow {
  background-color: #f8db91;
}
.business__foodtbl tr > td.td__yellow__sub, .about__stock__holdertbl tr > td.td__yellow__sub, .about__stock__govtbl2 tr > td.td__yellow__sub, .about__stock__govtbl1 tr > td.td__yellow__sub, .about__stock__tsrtbl tr > td.td__yellow__sub, .value__materialitytbl tr > td.td__yellow__sub, .sustainability__symbiosistbl tr > td.td__yellow__sub {
  background-color: #fbedc6;
}
.business__foodtbl tr > td.td__covalt, .about__stock__holdertbl tr > td.td__covalt, .about__stock__govtbl2 tr > td.td__covalt, .about__stock__govtbl1 tr > td.td__covalt, .about__stock__tsrtbl tr > td.td__covalt, .value__materialitytbl tr > td.td__covalt, .sustainability__symbiosistbl tr > td.td__covalt {
  background-color: #b4bec4;
}
.business__foodtbl tr > td.td__covalt__sub, .about__stock__holdertbl tr > td.td__covalt__sub, .about__stock__govtbl2 tr > td.td__covalt__sub, .about__stock__govtbl1 tr > td.td__covalt__sub, .about__stock__tsrtbl tr > td.td__covalt__sub, .value__materialitytbl tr > td.td__covalt__sub, .sustainability__symbiosistbl tr > td.td__covalt__sub {
  background-color: #d8dde0;
}
.business__foodtbl tr > td p, .about__stock__holdertbl tr > td p, .about__stock__govtbl2 tr > td p, .about__stock__govtbl1 tr > td p, .about__stock__tsrtbl tr > td p, .value__materialitytbl tr > td p, .sustainability__symbiosistbl tr > td p {
  line-height: 1.6;
}
.business__foodtbl tr > td p + p, .about__stock__holdertbl tr > td p + p, .about__stock__govtbl2 tr > td p + p, .about__stock__govtbl1 tr > td p + p, .about__stock__tsrtbl tr > td p + p, .value__materialitytbl tr > td p + p, .sustainability__symbiosistbl tr > td p + p {
  margin-top: 0.3rem;
}
.business__casestudy {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
}
@media screen and (max-width: 1200px) {
  .business__casestudy {
    display: grid;
    grid-template-columns: 1fr 2fr;
    gap: 10px 10px;
  }
}
.business__casestudy > dt {
  background-color: var(--category-color);
  border-radius: 8px;
  padding: 0 1.5em;
}
@media screen and (max-width: 1200px) {
  .business__casestudy > dt {
    padding: 0 1em;
    border-radius: 4px;
  }
}
.business__casestudy > dt p {
  color: #fff;
  font-weight: 700;
}
@media screen and (max-width: 1200px) {
  .business__casestudy > dt p {
    text-align: center;
  }
}
.business__casestudy > dt + dd {
  margin-left: 1rem;
}
@media screen and (max-width: 1200px) {
  .business__casestudy > dt + dd {
    margin-left: 0;
  }
}
.business__casestudy > dd p {
  color: var(--category-color);
  font-weight: 700;
}
.business__casestudy > dd p img {
  width: 35px;
  position: relative;
  margin-top: -5px;
  margin-bottom: -5px;
  top: 0.8rem;
}
.business__casestudy > dd + dt {
  margin-left: 3rem;
}
@media screen and (max-width: 1200px) {
  .business__casestudy > dd + dt {
    margin-left: 0;
  }
}
.business__casestudy + .business__casestudycopy, .business__casestudy + .governance__control-sys__clm, .business__casestudy + p {
  margin-top: 40px;
}
@media screen and (max-width: 767px) {
  .business__casestudy + .business__casestudycopy, .business__casestudy + .governance__control-sys__clm, .business__casestudy + p {
    margin-top: 20px;
  }
}
.business__casestudycopy, .governance__control-sys__clm {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 60px;
  margin-top: 40px;
}
@media screen and (max-width: 767px) {
  .business__casestudycopy, .governance__control-sys__clm {
    margin-top: 20px;
  }
}
@media screen and (max-width: 767px) {
  .business__casestudycopy, .governance__control-sys__clm {
    grid-template-columns: 1fr;
    gap: 30px;
  }
}
.business__casestudycopy dd img, .governance__control-sys__clm dd img {
  width: 100%;
  border-radius: 1rem;
}
.business__casestudycopy + h4, .governance__control-sys__clm + h4 {
  margin-top: 80px;
}
@media screen and (max-width: 767px) {
  .business__casestudycopy + h4, .governance__control-sys__clm + h4 {
    margin-top: 40px;
  }
}
.business__plantbl {
  width: 100%;
  border-top: 1px solid #ccc;
  border-bottom: 1px solid #ccc;
}
.business__plantbl tr th,
.business__plantbl tr td {
  padding: 2em 1.5em;
  border-bottom: 1px solid #ccc;
}
.business__plantbl tr th {
  width: 300px;
}
@media screen and (max-width: 767px) {
  .business__plantbl tr th {
    display: block;
    border-bottom: 0;
    padding-top: 1em;
    padding-bottom: 0;
  }
  .business__plantbl tr th .pc {
    display: none;
  }
}
.business__plantbl tr th p {
  text-align: left;
  color: var(--category-color);
  font-weight: 700;
  font-size: 18px;
}
.business__plantbl tr td h5 + dl {
  margin-top: 10px;
}
@media screen and (max-width: 767px) {
  .business__plantbl tr td h5 + dl {
    margin-top: 5px;
  }
}
@media screen and (max-width: 767px) {
  .business__plantbl tr td {
    display: block;
    padding-bottom: 1em;
  }
}
.business__plantbl + .business__plantbl {
  margin-top: 20px;
}
@media screen and (max-width: 767px) {
  .business__plantbl + .business__plantbl {
    margin-top: 10px;
  }
}
.business__purpose_triangle {
  width: 80%;
  margin-inline: auto;
}
.business__purpose_triangle + .common__imgblock {
  margin-top: 0;
}
.business__tabacco_performance {
  display: grid;
  grid-template-columns: 3fr 1fr 1fr;
  gap: 20px;
  width: 80%;
  margin-inline: auto;
  margin-top: 40px;
}
@media screen and (max-width: 767px) {
  .business__tabacco_performance {
    margin-top: 20px;
  }
}
@media screen and (max-width: 767px) {
  .business__tabacco_performance {
    width: 100%;
    gap: 5px;
  }
}
.business__tabacco_performance > dd {
  display: grid;
  grid-template-rows: subgrid;
  grid-row: span 2;
}
.business__tabacco_performance > dd h4 {
  background-color: var(--category-color);
  color: #fff;
  text-align: center;
  font-weight: 700;
  display: block;
  padding: 0.4em;
}
@media screen and (max-width: 767px) {
  .business__tabacco_performance > dd h4 {
    font-size: 10px;
  }
}
.business__tabacco_performance > dd h4 + .performance__img {
  margin-top: 10px;
}
@media screen and (max-width: 767px) {
  .business__tabacco_performance > dd h4 + .performance__img {
    margin-top: 5px;
  }
}
.business__tabacco_performance > dd .performance__img {
  border: 1px solid #ccc;
  padding: 1em;
}
.business__tabacco_performance > dd .performance__img img {
  width: 100%;
  height: auto;
}
.business__tabacco_art4 {
  display: grid;
  grid-template-columns: 1fr 1fr;
  width: 80%;
  margin-inline: auto;
  gap: 60px;
  margin-top: 40px;
}
@media screen and (max-width: 767px) {
  .business__tabacco_art4 {
    margin-top: 20px;
  }
}
@media screen and (max-width: 767px) {
  .business__tabacco_art4 {
    width: 80%;
    grid-template-columns: 1fr;
  }
}
.business__tabacco_art4 > dd img {
  width: 100%;
  height: auto;
}
.business__tabacco_art4 + .dl__expnote {
  margin-top: 20px;
}
@media screen and (max-width: 767px) {
  .business__tabacco_art4 + .dl__expnote {
    margin-top: 10px;
  }
}
.business__tabacco_column {
  background-color: #e8f4f0;
  padding: 3rem;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  margin-top: 40px;
}
@media screen and (max-width: 767px) {
  .business__tabacco_column {
    margin-top: 20px;
  }
}
.business__tabacco_column > h3 {
  padding: 0 0 0.5em;
  border: 0;
  font-size: 20px;
  border-bottom: 1px solid var(--category-color);
}
.business__tabacco_column > h3::before {
  content: none;
}
.business__tabacco_column > h3 + p {
  margin-top: 20px;
}
@media screen and (max-width: 767px) {
  .business__tabacco_column > h3 + p {
    margin-top: 10px;
  }
}
.business__tabacco_column__ph {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  grid-template-rows: repeat(2, 1fr);
  gap: 10px;
  width: 50%;
  margin-inline: auto;
  margin-top: 40px;
}
@media screen and (max-width: 767px) {
  .business__tabacco_column__ph {
    margin-top: 20px;
  }
}
@media screen and (max-width: 767px) {
  .business__tabacco_column__ph {
    width: 100%;
  }
}
.business__tabacco_column__ph > dd {
  -o-object-fit: cover;
     object-fit: cover;
}
.business__tabacco_column__ph > dd:nth-of-type(1) {
  grid-area: 1/1/3/3;
}
.business__tabacco_column__ph > dd:nth-of-type(2) {
  grid-area: 1/3/2/4;
}
.business__tabacco_column__ph > dd:nth-of-type(3) {
  grid-area: 2/3/3/4;
}
.business__tabacco_column__ph > dd img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}
.business__tabacco__rer {
  margin-top: 60px;
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 80px;
  width: 80%;
  margin-inline: auto;
}
@media screen and (max-width: 767px) {
  .business__tabacco__rer {
    margin-top: 30px;
  }
}
@media screen and (max-width: 767px) {
  .business__tabacco__rer {
    grid-template-columns: 1fr;
    gap: 30px;
    width: 100%;
  }
}
.business__tabacco__rer__list dl {
  display: grid;
  grid-template-columns: 40px auto;
  gap: 25px 10px;
}
@media screen and (max-width: 767px) {
  .business__tabacco__rer__list dl {
    grid-template-columns: 30px auto;
    gap: 15px 10px;
  }
}
.business__tabacco__rer__list dl dt img {
  width: 100%;
  height: auto;
}
.business__tabacco__rer__list dl dd p + p {
  margin-top: 0.5rem;
}
.business__tabacco__rer__list dl dd p.rer {
  font-weight: 700;
}
.business__tabacco__rer__list dl dd p.rer.rethink {
  color: #ad679e;
}
.business__tabacco__rer__list dl dd p.rer.extend {
  color: #2e70b9;
}
.business__tabacco__rer__list dl dd p.rer.recover {
  color: #4aa6ad;
}
.business__tabacco__rer__img h4 {
  display: block;
  text-align: center;
}
@media screen and (max-width: 767px) {
  .business__tabacco__rer__img > .common__imgblock {
    width: 70%;
    margin-inline: auto;
  }
}
.business__tabacco__corner {
  background-color: #fffccc;
  border: 1px solid #48922f;
  padding: 2rem;
  margin-top: 40px;
}
@media screen and (max-width: 767px) {
  .business__tabacco__corner {
    margin-top: 20px;
  }
}
.business__tabacco__corner h4 {
  color: #111;
}
.business__tabacco__corner p {
  line-height: 1.4;
}
.business__tabacco__corner p strong {
  font-size: 22px;
  color: #0da4ac;
}
@media screen and (max-width: 767px) {
  .business__tabacco__corner p strong {
    font-size: 18px;
  }
}
.business__tabacco__corner p + p {
  margin-top: 0.5em;
}
.business__tabacco__corner + h3, .business__tabacco__corner + h4, .business__tabacco__corner + .common__imgblock {
  margin-top: 60px;
}
@media screen and (max-width: 767px) {
  .business__tabacco__corner + h3, .business__tabacco__corner + h4, .business__tabacco__corner + .common__imgblock {
    margin-top: 30px;
  }
}
.business__tabacco__corner .column__float_img {
  float: right;
  margin-left: 3rem;
  margin-bottom: 2rem;
}
.business__tabacco__corner__innerclm {
  margin-top: 20px;
  display: grid;
  grid-template-columns: 3fr 1fr;
}
@media screen and (max-width: 767px) {
  .business__tabacco__corner__innerclm {
    margin-top: 10px;
  }
}
@media screen and (max-width: 767px) {
  .business__tabacco__corner__innerclm {
    grid-template-columns: 1fr;
    gap: 20px;
  }
}
.business__tabacco__corner__innerclm dd:nth-of-type(2) .common__imgblock {
  width: 80%;
  margin-inline: auto;
}
.business__tabacco__h4_ic {
  display: inline-block;
  width: 50px;
  height: 50px;
  line-height: 1;
  vertical-align: middle;
  margin-right: 0.3em;
}
.business__medicine_phclm {
  margin-top: 40px;
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 60px;
  width: 80%;
  margin-inline: auto;
}
@media screen and (max-width: 767px) {
  .business__medicine_phclm {
    margin-top: 20px;
  }
}
@media screen and (max-width: 767px) {
  .business__medicine_phclm {
    width: 80%;
    grid-template-columns: 1fr;
    gap: 30px;
  }
}
.business__medicine_phclm > dd img {
  width: 100%;
  height: auto;
  border-radius: 2rem;
}
@media screen and (max-width: 767px) {
  .business__medicine_phclm > dd img {
    border-radius: 1rem;
  }
}
.business__medicine_phclm + h4 {
  margin-top: 80px;
}
@media screen and (max-width: 767px) {
  .business__medicine_phclm + h4 {
    margin-top: 40px;
  }
}
.business__message_cfo__clm {
  display: grid;
  grid-template-columns: 2fr 1fr;
  gap: 50px;
}
.business__message_cfo__float {
  float: right;
  width: 40%;
  margin-left: 4em;
  margin-bottom: 5em;
}
@media screen and (max-width: 767px) {
  .business__message_cfo__float {
    display: block;
    width: 100%;
    margin-left: 0;
    margin-bottom: 20px;
  }
}

@media screen and (max-width: 767px) {
  .value__materialitytbl tr td {
    padding: 0.5em;
  }
}
.value__materialitytbl tr td.icon__four {
  padding: 0;
}
.value__materialitytbl tr td:nth-of-type(1) {
  width: 9.5%;
}
@media screen and (max-width: 1200px) {
  .value__materialitytbl tr td:nth-of-type(1) {
    padding-left: 0.5em;
    padding-right: 0.5em;
    width: 12%;
  }
}
@media screen and (max-width: 767px) {
  .value__materialitytbl tr td:nth-of-type(1) {
    width: 70px;
  }
}
.value__materialitytbl tr td:nth-last-of-type(3) {
  width: 6%;
}
@media screen and (max-width: 1200px) {
  .value__materialitytbl tr td:nth-last-of-type(3) {
    padding-left: 0.5em;
    padding-right: 0.5em;
    width: 8%;
  }
}
@media screen and (max-width: 767px) {
  .value__materialitytbl tr td:nth-last-of-type(3) {
    width: 60px;
  }
}
.value__materialitytbl tr td:nth-last-of-type(3) img {
  width: 100%;
  height: auto;
}
.value__materialitytbl tr td:nth-last-of-type(2) {
  width: auto;
  vertical-align: middle;
}
.value__materialitytbl tr td:nth-last-of-type(1) {
  width: 60%;
}
.value__materialitytbl tr td p.targets__new::after {
  content: "New";
  display: inline-block;
  background-color: #64956f;
  border-radius: 5px;
  color: #fff;
  padding: 2px 0.5em 3px;
  line-height: 1.1;
  font-size: 14px;
  margin: 0 0.3em;
}
.value__materialitytbl tr td p.targets__renewal::after {
  content: "Revised";
  display: inline-block;
  background-color: #9d9d9d;
  border-radius: 5px;
  color: #fff;
  padding: 2px 0.3em 3px;
  line-height: 1.1;
  font-size: 14px;
  margin: 0 0.3em;
}
.value__materialitytbl tr td p + ul {
  margin-top: 10px;
}
@media screen and (max-width: 767px) {
  .value__materialitytbl tr td p + ul {
    margin-top: 5px;
  }
}
.value__materialitytbl tr td .materiality__icon__dl {
  display: grid;
  grid-template-columns: 1fr 1fr;
}
.value__materialitytbl tr td .materiality__icon__dl dd {
  padding: 0.5em;
}
.value__materialitytbl tr td .materiality__icon__dl dd:nth-of-type(1) {
  background-color: #c3d8c7;
}
.value__materialitytbl tr td .materiality__icon__dl dd:nth-of-type(2) {
  background-color: #adcadd;
}
.value__materialitytbl tr td .materiality__icon__dl dd:nth-of-type(3) {
  background-color: #ecada9;
}
.value__materialitytbl tr td .materiality__icon__dl dd:nth-of-type(4) {
  background-color: #f8db91;
}
.value__materialitytbl + .dl__expnote {
  margin-top: 20px;
}
@media screen and (max-width: 767px) {
  .value__materialitytbl + .dl__expnote {
    margin-top: 10px;
  }
}

.link__library_top {
  margin-top: 100px;
  text-align: center;
}
@media screen and (max-width: 767px) {
  .link__library_top {
    margin-top: 50px;
  }
}

.message__ceo__issue {
  background-color: #e8f4f0;
  padding: 2rem;
  border-radius: 1rem;
}
@media screen and (max-width: 767px) {
  .message__ceo__issue {
    padding: 1rem 0 2rem;
  }
}
.message__ceo__issue h5 {
  text-align: center;
  font-weight: 700;
  color: #333;
}
.message__ceo__issue h5 + dl {
  margin-top: 20px;
}
@media screen and (max-width: 767px) {
  .message__ceo__issue h5 + dl {
    margin-top: 10px;
  }
}
.message__ceo__issue dl {
  display: grid;
  grid-template-columns: 1fr 1fr 1fr 1fr 1fr;
  gap: 20px;
}
@media screen and (max-width: 767px) {
  .message__ceo__issue dl {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-flex-wrap: wrap;
        -ms-flex-wrap: wrap;
            flex-wrap: wrap;
    gap: 10px;
    -webkit-box-pack: center;
    -webkit-justify-content: center;
        -ms-flex-pack: center;
            justify-content: center;
  }
}
.message__ceo__issue dl dd {
  background-color: #fff;
  border-radius: 0.5rem;
  padding: 1rem 1.5rem 1.5rem;
  text-align: center;
  display: grid;
  grid-template-rows: subgrid;
  grid-row: span 2;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  -webkit-box-shadow: 0 1px 3px rgba(0, 0, 0, 0.2);
          box-shadow: 0 1px 3px rgba(0, 0, 0, 0.2);
}
@media screen and (max-width: 767px) {
  .message__ceo__issue dl dd {
    width: 30%;
  }
}
.message__ceo__issue dl dd .issue__icon img {
  width: 60%;
  height: auto;
}
.message__ceo__issue dl dd .issue__txt {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
}
.message__ceo__issue dl dd .issue__txt p {
  line-height: 1.5;
  font-weight: 700;
  color: var(--category-color);
}
.message__ceo-ph03 {
  display: grid;
  grid-template-columns: 2fr 1fr;
  gap: 30px;
}
.message__ceo-ph03 dd img {
  width: 100%;
  height: auto;
}
.message__session {
  display: grid;
  grid-template-columns: 10rem auto;
  gap: 1.5rem;
}
.message__session > dt p {
  text-align: center;
  color: #fff;
  font-weight: 700;
  white-space: nowrap;
  padding: 0 0.3em;
}
.message__session > dt.session__color1 p {
  background-color: #5f9332;
}
.message__session > dt.session__color2 p {
  background-color: #269599;
}
.message__session + h4 {
  margin-top: 60px;
}
@media screen and (max-width: 767px) {
  .message__session + h4 {
    margin-top: 30px;
  }
}
.message__session + .img__area, .message__session + .common__imgblock {
  margin-top: 40px;
}
@media screen and (max-width: 767px) {
  .message__session + .img__area, .message__session + .common__imgblock {
    margin-top: 20px;
  }
}
.message__profile--vicepresident {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 60px;
  width: 75%;
  margin-inline: auto !important;
}
@media screen and (max-width: 767px) {
  .message__profile--vicepresident {
    grid-template-columns: 1fr;
  }
}
.message__profile--vicepresident dd img {
  width: 100%;
  height: auto;
  border-radius: 1.5rem;
}
.message__profile--vicepresident dd img + h3 {
  margin-top: 20px;
}
@media screen and (max-width: 767px) {
  .message__profile--vicepresident dd img + h3 {
    margin-top: 10px;
  }
}
.message__profile--vicepresident dd h3 {
  font-size: 18px;
  font-weight: 500;
  color: #111;
  padding: 0;
  border: 0;
}
@media screen and (max-width: 767px) {
  .message__profile--vicepresident dd h3 {
    font-size: 16px;
  }
}
.message__profile--vicepresident dd h3::before {
  content: none;
}
.message__profile--vicepresident dd h3 + p {
  margin-top: 20px;
}
@media screen and (max-width: 767px) {
  .message__profile--vicepresident dd h3 + p {
    margin-top: 10px;
  }
}
.message__profile--vicepresident dd p {
  font-size: 16px;
  line-height: 1.6;
}
@media screen and (max-width: 767px) {
  .message__profile--vicepresident dd p {
    font-size: 13px;
  }
}
.message__profile--vicepresident dd p + .list__link {
  margin-top: 40px;
}
@media screen and (max-width: 767px) {
  .message__profile--vicepresident dd p + .list__link {
    margin-top: 20px;
  }
}
.message__profile--vicepresident dd .list__link li {
  font-size: 13px;
  line-height: 1.6;
}
.message__profile--vicepresident dd .list__link + p {
  margin-top: 40px;
}
@media screen and (max-width: 767px) {
  .message__profile--vicepresident dd .list__link + p {
    margin-top: 20px;
  }
}
.message__domaintop__block {
  border: 2px solid var(--category-color);
  background-color: #ecf7f2;
  padding: 3rem 3rem;
}
@media screen and (max-width: 767px) {
  .message__domaintop__block {
    padding: 2rem;
  }
}
.message__domaintop__block > h3 {
  color: #fff;
  background-color: var(--category-color);
  text-align: center;
  font-size: 22px;
  line-height: 1.2;
  border: 0;
  padding: 0.3em;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
}
.message__domaintop__block > h3::before {
  display: none;
}
.message__domaintop__block > h3 + h4 {
  margin-top: 20px;
}
@media screen and (max-width: 767px) {
  .message__domaintop__block > h3 + h4 {
    margin-top: 10px;
  }
}
.message__domaintop__block > .h4__businessdomain {
  text-align: center;
  display: block;
}
.message__domaintop__block > .h4__businessdomain + dl {
  margin-top: 40px;
}
@media screen and (max-width: 767px) {
  .message__domaintop__block > .h4__businessdomain + dl {
    margin-top: 20px;
  }
}
.message__domaintop__clm {
  display: grid;
  grid-template-columns: 1fr 1.7fr;
  gap: 50px;
}
@media screen and (max-width: 767px) {
  .message__domaintop__clm {
    grid-template-columns: 1fr;
    gap: 20px;
  }
}
.message__domaintop__clm__direction > h5 {
  color: #111;
}
.message__domaintop__clm__direction ul li {
  color: var(--category-color);
}
.message__domaintop__clm__direction ul + dl {
  margin-top: 20px;
}
@media screen and (max-width: 767px) {
  .message__domaintop__clm__direction ul + dl {
    margin-top: 10px;
  }
}
.message__domaintop__director {
  display: grid;
  grid-template-columns: 1.6fr 1fr;
  border-bottom: 1px solid var(--category-color);
}
.message__domaintop__director--name {
  position: relative;
}
.message__domaintop__director--name__inner {
  position: absolute;
  bottom: 1.5em;
}
.message__domaintop__director--name__inner p.name {
  font-size: 18px;
  font-weight: 700;
}
.message__domaintop__director--name__inner p.post {
  font-size: 13px;
}
.message__domaintop__director--name__inner p + p {
  margin-top: 0;
}
.message__domaintop__director--ph img {
  width: 100%;
  height: auto;
}
.message__domaintop__director + h5 {
  margin-top: 20px;
}
@media screen and (max-width: 767px) {
  .message__domaintop__director + h5 {
    margin-top: 10px;
  }
}

.process__philosophy__top {
  display: grid;
  grid-template-columns: 1.5fr 1fr;
  gap: 50px;
}
@media screen and (max-width: 767px) {
  .process__philosophy__top {
    grid-template-columns: 1fr;
    gap: 10px;
  }
}
.process__philosophy__top__artwork {
  text-align: center;
}
.process__philosophy__top__artwork img {
  width: 100%;
}
@media screen and (max-width: 767px) {
  .process__philosophy__top__artwork img {
    width: 70%;
  }
}
.process__philosophy__top + .process__philosophy__4s {
  margin-top: 80px;
}
@media screen and (max-width: 767px) {
  .process__philosophy__top + .process__philosophy__4s {
    margin-top: 40px;
  }
}
@media screen and (max-width: 767px) {
  .process__philosophy__top + .process__philosophy__4s {
    margin-top: 100px;
  }
}
@media screen and (max-width: 767px) and (max-width: 767px) {
  .process__philosophy__top + .process__philosophy__4s {
    margin-top: 50px;
  }
}
.process__philosophy__4s {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 50px;
}
@media screen and (max-width: 767px) {
  .process__philosophy__4s {
    grid-template-columns: 1fr;
  }
}
.process__philosophy__4s__factor:nth-of-type(1) h3::after {
  background-image: url("../svg/model4s-user.svg");
}
.process__philosophy__4s__factor:nth-of-type(2) h3::after {
  background-image: url("../svg/model4s-stockholder.svg");
}
.process__philosophy__4s__factor:nth-of-type(3) h3::after {
  background-image: url("../svg/model4s-employees.svg");
}
.process__philosophy__4s__factor:nth-of-type(4) h3::after {
  background-image: url("../svg/model4s-society.svg");
}
.process__philosophy__4s h3 {
  border-top: 0;
  border-bottom: 1px solid #ccc;
  padding: 0 0 1rem 0;
  position: relative;
}
.process__philosophy__4s h3::after {
  content: "";
  position: absolute;
  width: 12rem;
  height: 9rem;
  right: 0;
  bottom: -1px;
  background-repeat: no-repeat;
  background-size: 9rem;
  background-color: #fff;
  background-position: center bottom;
}
.process__philosophy__4s h3::before {
  content: none;
}
.process__philosophy__4s h3 + p {
  margin-top: 30px;
}
@media screen and (max-width: 767px) {
  .process__philosophy__4s h3 + p {
    margin-top: 15px;
  }
}
@-webkit-keyframes purposeAnime {
  from {
    -webkit-filter: blur(10px);
            filter: blur(10px);
    -webkit-transform: scale(1.02);
            transform: scale(1.02);
    opacity: 0;
  }
  to {
    -webkit-filter: blur(0);
            filter: blur(0);
    -webkit-transform: scale(1);
            transform: scale(1);
    opacity: 1;
  }
}
@keyframes purposeAnime {
  from {
    -webkit-filter: blur(10px);
            filter: blur(10px);
    -webkit-transform: scale(1.02);
            transform: scale(1.02);
    opacity: 0;
  }
  to {
    -webkit-filter: blur(0);
            filter: blur(0);
    -webkit-transform: scale(1);
            transform: scale(1);
    opacity: 1;
  }
}
.process__purpose {
  width: 92%;
  max-width: 900px;
  margin-inline: auto !important;
  overflow: visible;
}
.process__purpose h2 {
  background-color: transparent;
  text-align: left;
  font-size: 1px;
  padding: 0;
  color: rgb(0, 174, 104);
  -webkit-animation-name: purposeAnime;
          animation-name: purposeAnime;
  -webkit-animation-duration: 5s;
          animation-duration: 5s;
  -webkit-animation-delay: 0.7s;
          animation-delay: 0.7s;
  -webkit-animation-fill-mode: forwards;
          animation-fill-mode: forwards;
  opacity: 0;
}
@media screen and (max-width: 767px) {
  .process__purpose h2 {
    font-size: 1px;
    padding-top: 0;
    padding-left: 0;
    padding-right: 0;
    text-align: left;
  }
}
.process__purpose h2 > picture {
  width: 100%;
  height: auto;
}
.process__purpose h2 > picture img {
  width: 100%;
  height: auto;
}
.process__purpose h2 + .process__purpose__block {
  margin-top: 60px;
}
@media screen and (max-width: 767px) {
  .process__purpose h2 + .process__purpose__block {
    margin-top: 35px;
  }
}
.process__purpose__block {
  -webkit-animation-name: purposeAnime;
          animation-name: purposeAnime;
  -webkit-animation-duration: 5s;
          animation-duration: 5s;
  -webkit-animation-fill-mode: forwards;
          animation-fill-mode: forwards;
  opacity: 0;
}
.process__purpose__block > picture {
  width: 100%;
  height: auto;
}
.process__purpose__block > picture img {
  width: 100%;
  height: auto;
}
.process__purpose__block:nth-of-type(1) {
  -webkit-animation-delay: 1.5s;
          animation-delay: 1.5s;
}
.process__purpose__block:nth-of-type(2) {
  -webkit-animation-delay: 2.8s;
          animation-delay: 2.8s;
}
.process__purpose__block:nth-of-type(3) {
  -webkit-animation-delay: 3.6s;
          animation-delay: 3.6s;
}
.process__purpose__block:nth-of-type(4) {
  -webkit-animation-delay: 4s;
          animation-delay: 4s;
}
.process__purpose__block:nth-of-type(5) {
  -webkit-animation-delay: 4.2s;
          animation-delay: 4.2s;
}
.process__purpose__block p {
  font-size: 2rem;
  font-weight: 700;
  text-align: left;
  color: rgb(0, 174, 104);
}
@media screen and (max-width: 767px) {
  .process__purpose__block p {
    font-size: 1.25rem;
  }
}
.process__purpose__block + .process__purpose__block {
  margin-top: 60px;
}
@media screen and (max-width: 767px) {
  .process__purpose__block + .process__purpose__block {
    margin-top: 35px;
  }
}
.process__purpose_img {
  width: 95%;
  max-width: 750px;
  margin-inline: auto;
}

.governance__systbl {
  width: 100%;
  border-top: 1px solid #ccc;
  border-bottom: 1px solid #ccc;
}
@media screen and (max-width: 767px) {
  .governance__systbl {
    min-width: 1185px;
  }
}
.governance__systbl tr th,
.governance__systbl tr td {
  padding: 2em 2em;
  border-bottom: 1px solid #ccc;
}
.governance__systbl tr th {
  background-color: var(--category-color);
  width: 20%;
  max-width: 150px;
}
.governance__systbl tr th p {
  color: #fff;
  text-align: left;
  padding-left: 1em;
  text-indent: -1em;
}
.governance__systbl tr:nth-child(even) {
  background-color: #f2f9fa;
}
.governance__column {
  margin-top: 40px;
  background-color: #f2f9fa;
  padding: 4em 5em;
  border: 2px solid var(--category-color);
}
@media screen and (max-width: 767px) {
  .governance__column {
    margin-top: 20px;
  }
}
@media screen and (max-width: 767px) {
  .governance__column {
    padding: 2rem 2.5rem 3rem;
  }
}
.governance__mtginfo {
  margin-top: 40px;
  display: grid;
  grid-template-columns: 1fr 1fr 1fr;
  gap: 2px;
  max-width: 600px;
}
@media screen and (max-width: 767px) {
  .governance__mtginfo {
    margin-top: 20px;
  }
}
.governance__mtginfo + p {
  margin-top: 20px;
}
@media screen and (max-width: 767px) {
  .governance__mtginfo + p {
    margin-top: 10px;
  }
}
.governance__mtginfo > dd {
  background-color: var(--category-color);
  padding: 0.2em;
}
.governance__mtginfo > dd p {
  text-align: center;
  color: #fff;
}
.governance__dl {
  margin-top: 30px;
  display: grid;
  grid-template-columns: auto 1fr;
  gap: 0;
}
@media screen and (max-width: 767px) {
  .governance__dl {
    margin-top: 15px;
  }
}
.governance__dl > dt, .governance__dl > dd {
  border-bottom: 1px solid #ccc;
  padding-top: 0.4em;
  padding-bottom: 0.4em;
}
.governance__dl > dt:nth-last-of-type(1), .governance__dl > dd:nth-last-of-type(1) {
  border-bottom: 0;
}
.governance__dl > dt {
  position: relative;
  padding-right: 30px;
  padding-left: 1em;
}
.governance__dl > dt p {
  white-space: nowrap;
}
.governance__dl + p {
  margin-top: 30px;
}
@media screen and (max-width: 767px) {
  .governance__dl + p {
    margin-top: 15px;
  }
}
.governance__tbl {
  margin-top: 10px;
}
@media screen and (max-width: 767px) {
  .governance__tbl {
    margin-top: 5px;
  }
}
.governance__tbl.reward td {
  width: 20%;
}
.governance__tbl.reward td p {
  text-align: center;
}
.governance__tbl.reward td.border__left {
  border-left: 1px solid #ccc;
  border-right: 0;
}
.governance__tbl.kpi_reward tr td {
  background-color: #fff;
}
.governance__tbl.kpi_reward tr td:nth-of-type(1) {
  width: 25%;
}
.governance__tbl.kpi_reward tr td:nth-of-type(3) {
  width: 10%;
}
.governance__tbl.kpi_reward tr td:nth-of-type(3) p {
  text-align: center;
}
.governance__tbl.kpi_reward tr:nth-child(odd) td {
  background-color: #eff8f8;
}
.governance__tbl.reward_total tr th.th2 {
  background-color: #7b8f86;
}
.governance__tbl.reward_total tr td {
  background-color: #fff;
}
.governance__tbl.reward_total tr td .strong {
  font-weight: bold;
}
.governance__tbl.reward_total tr td:nth-last-of-type(1), .governance__tbl.reward_total tr td:nth-last-of-type(2), .governance__tbl.reward_total tr td:nth-last-of-type(3), .governance__tbl.reward_total tr td:nth-last-of-type(4), .governance__tbl.reward_total tr td:nth-last-of-type(5), .governance__tbl.reward_total tr td:nth-last-of-type(6) {
  width: 13%;
}
.governance__tbl.reward_total tr td:nth-last-of-type(1) p, .governance__tbl.reward_total tr td:nth-last-of-type(2) p, .governance__tbl.reward_total tr td:nth-last-of-type(3) p, .governance__tbl.reward_total tr td:nth-last-of-type(4) p, .governance__tbl.reward_total tr td:nth-last-of-type(5) p, .governance__tbl.reward_total tr td:nth-last-of-type(6) p {
  text-align: right;
}
.governance__tbl.reward_total tr.tr_total td {
  background-color: #eff8f8;
}
.governance__tbl.reward_max tr th.th2 {
  background-color: #7b8f86;
}
.governance__tbl.reward_max tr td {
  background-color: #fff;
}
.governance__tbl.reward_max tr td .strong {
  font-weight: bold;
}
.governance__tbl.reward_max tr td:nth-last-of-type(1), .governance__tbl.reward_max tr td:nth-last-of-type(2), .governance__tbl.reward_max tr td:nth-last-of-type(3) {
  width: 11%;
}
.governance__tbl.reward_max tr td:nth-last-of-type(1) p, .governance__tbl.reward_max tr td:nth-last-of-type(2) p, .governance__tbl.reward_max tr td:nth-last-of-type(3) p {
  text-align: center;
}
.governance__tbl.reward_max tr td:nth-last-of-type(4) {
  width: 25%;
}
.governance__tbl.reward_max tr td:nth-last-of-type(4) p {
  text-align: center;
}
.governance__tbl.reward_max tr.tr_total td {
  background-color: #eff8f8;
}
.governance__kpi_reward {
  background-color: #eff8f8;
  padding: 2rem;
  border: 2px solid #869a91;
  margin-top: 40px;
}
@media screen and (max-width: 767px) {
  .governance__kpi_reward {
    margin-top: 20px;
  }
}
.governance__kpi_reward__clm {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 60px;
}
@media screen and (max-width: 767px) {
  .governance__kpi_reward__clm {
    grid-template-columns: 1fr;
    gap: 30px;
  }
}
.governance__kpi_reward__clm > dd h5 {
  color: #111;
}
.governance__kpi_reward__clm > dd h5 + p {
  margin-top: 0;
}
.governance__kpi_reward + .common__accordion, .governance__kpi_reward + .common__imgblock {
  margin-top: 40px;
}
@media screen and (max-width: 767px) {
  .governance__kpi_reward + .common__accordion, .governance__kpi_reward + .common__imgblock {
    margin-top: 20px;
  }
}
.governance__kpi_reward + h3, .governance__kpi_reward + h4, .governance__kpi_reward + h5 {
  margin-top: 60px;
}
@media screen and (max-width: 767px) {
  .governance__kpi_reward + h3, .governance__kpi_reward + h4, .governance__kpi_reward + h5 {
    margin-top: 30px;
  }
}
.governance__member_list {
  display: grid;
  grid-template-columns: 1fr 1fr 1fr;
  gap: 80px 50px;
}
@media screen and (max-width: 1200px) {
  .governance__member_list {
    grid-template-columns: 1fr 1fr;
  }
}
@media screen and (max-width: 767px) {
  .governance__member_list {
    grid-template-columns: 1fr;
    gap: 40px 10px;
  }
}
.governance__member_list__header, .about__stock__timestamp {
  display: grid;
  grid-template-columns: 1fr 1fr;
}
@media screen and (max-width: 767px) {
  .governance__member_list__header, .about__stock__timestamp {
    grid-template-columns: 1fr;
  }
}
.governance__member_list__header > dd:nth-of-type(2) p, .about__stock__timestamp > dd:nth-of-type(2) p {
  text-align: right;
}
.governance__member_list__header + div, .about__stock__timestamp + div {
  margin-top: 40px;
}
@media screen and (max-width: 767px) {
  .governance__member_list__header + div, .about__stock__timestamp + div {
    margin-top: 20px;
  }
}
.governance__member_list > .mng_article {
  display: grid;
  grid-template-columns: 1fr 1.5fr;
  gap: 20px;
}
.governance__member_list > .mng_article .mng_article__ph {
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
}
.governance__member_list > .mng_article .mng_article__ph img {
  width: 100%;
  height: auto;
}
.governance__member_list > .mng_article .mng_article__txt--name {
  font-size: 1.8rem;
  line-height: 1.6;
  font-weight: 700;
}
.governance__member_list > .mng_article .mng_article__txt--name::after {
  display: block;
  content: "";
  width: 100%;
  height: 1px;
  background-color: var(--category-color);
  position: relative;
  top: 0.3em;
}
.governance__member_list > .mng_article .mng_article__txt--name + p {
  margin-top: 0.8em;
}
.governance__member_list > .mng_article .mng_article__txt--post {
  margin-top: 10px;
  font-size: 1.5rem;
  line-height: 1.6;
}
@media screen and (max-width: 767px) {
  .governance__member_list > .mng_article .mng_article__txt--post {
    margin-top: 5px;
  }
}
.governance__member_list > .mng_article .mng_article__txt--birth, .governance__member_list > .mng_article .mng_article__txt--term, .governance__member_list > .mng_article .mng_article__txt--stock {
  line-height: 1.6;
  font-size: 1.4rem;
  margin-top: 0.2em;
}
.governance__member_list + dl {
  margin-top: 60px;
}
@media screen and (max-width: 767px) {
  .governance__member_list + dl {
    margin-top: 30px;
  }
}
.governance__member_list + div {
  margin-top: 40px;
}
@media screen and (max-width: 767px) {
  .governance__member_list + div {
    margin-top: 20px;
  }
}
.governance__officerlist {
  display: grid;
  grid-template-columns: 1fr 1fr 1fr;
  gap: 60px;
}
@media screen and (max-width: 767px) {
  .governance__officerlist {
    grid-template-columns: 1fr;
    gap: 20px 10px;
  }
}
.governance__officerlist > dd .governance__officerlist--name {
  font-size: 1.8rem;
  line-height: 1.6;
  font-weight: 700;
}
.governance__officerlist > dd .governance__officerlist--name + p {
  margin-top: 0;
}
.governance__officerlist > dd .governance__officerlist--post {
  margin-top: 10px;
  font-size: 1.5rem;
  line-height: 1.6;
}
@media screen and (max-width: 767px) {
  .governance__officerlist > dd .governance__officerlist--post {
    margin-top: 5px;
  }
}
.governance__officerlist + h4 {
  margin-top: 40px;
}
@media screen and (max-width: 767px) {
  .governance__officerlist + h4 {
    margin-top: 20px;
  }
}
.governance__officerlist + .dl__expnote {
  margin-top: 10px;
}
@media screen and (max-width: 767px) {
  .governance__officerlist + .dl__expnote {
    margin-top: 5px;
  }
}
.governance__session_member {
  display: grid;
  grid-template-columns: 1fr 1fr 1fr 1fr 1fr 1fr;
  gap: 35px;
}
@media screen and (max-width: 1200px) {
  .governance__session_member {
    grid-template-columns: 1fr 1fr 1fr;
    gap: 10px;
  }
}
.governance__session_member > dd {
  border-top: 5px solid #ccc;
  padding: 1em 0.5em 0.5em 0.5em;
}
.governance__session_member > dd:nth-of-type(1) {
  border-color: #e9a53a;
}
.governance__session_member > dd:nth-of-type(2) {
  border-color: #4391cd;
}
.governance__session_member > dd:nth-of-type(3) {
  border-color: #408f6f;
}
.governance__session_member > dd:nth-of-type(4) {
  border-color: #80b746;
}
.governance__session_member > dd:nth-of-type(5) {
  border-color: #59b4ba;
}
.governance__session_member > dd:nth-of-type(6) {
  border-color: #675d94;
}
.governance__session_member__name {
  font-size: 22px;
  line-height: 1.5;
  font-weight: 700;
}
@media screen and (max-width: 1200px) {
  .governance__session_member__name {
    font-size: 15px;
  }
}
.governance__session_member__name + .governance__session_member__post {
  margin-top: 3px;
}
.governance__session_member__post {
  font-size: 15px;
  line-height: 1.5;
}
@media screen and (max-width: 1200px) {
  .governance__session_member__post {
    font-size: 13px;
  }
}
.governance__session_body {
  display: grid;
  grid-template-columns: 1fr auto;
  gap: 60px 20px;
}
@media screen and (max-width: 767px) {
  .governance__session_body {
    gap: 40px 10px;
  }
}
.governance__session_body > dt p {
  color: #fff;
  line-height: 1.3;
  white-space: nowrap;
  padding: 0.2em 0.8em;
  position: relative;
  top: 0.15em;
}
.governance__session_body > dt.color1 p {
  background-color: #e9a53a;
  text-align: center;
}
.governance__session_body > dt.color2 p {
  background-color: #4391cd;
  text-align: center;
}
.governance__session_body > dt.color3 p {
  background-color: #408f6f;
  text-align: center;
}
.governance__session_body > dt.color4 p {
  background-color: #80b746;
  text-align: center;
}
.governance__session_body > dt.color5 p {
  background-color: #59b4ba;
  text-align: center;
}
.governance__session_body > dt.color6 p {
  background-color: #675d94;
  text-align: center;
}
.governance__session_body__timestamp {
  text-align: right;
}
.governance__session_body + .common__imgblock {
  margin-top: 60px;
}
@media screen and (max-width: 767px) {
  .governance__session_body + .common__imgblock {
    margin-top: 30px;
  }
}
.governance__session_body + .common__imgblock + dl {
  margin-top: 60px;
}
@media screen and (max-width: 767px) {
  .governance__session_body + .common__imgblock + dl {
    margin-top: 30px;
  }
}
.about__evaluation_list {
  display: grid;
  grid-template-columns: 1fr 1fr 1fr;
  gap: 60px;
  width: 100%;
}
@media screen and (max-width: 1200px) {
  .about__evaluation_list {
    grid-template-columns: 1fr 1fr;
  }
}
@media screen and (max-width: 767px) {
  .about__evaluation_list {
    gap: 30px;
  }
}
.about__evaluation_list__article {
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
}
@media screen and (max-width: 767px) {
  .about__evaluation_list__article {
    display: block;
    grid-template-rows: auto;
  }
}
@media screen and (max-width: 767px) {
  .about__evaluation_list__article h4 {
    font-size: 16px;
  }
}
.about__evaluation_list__article__thumb {
  text-align: center;
}
.about__evaluation_list__article__thumb img {
  width: 70%;
  height: auto;
}
@media screen and (max-width: 767px) {
  .about__evaluation_list__article__thumb img {
    width: 100%;
  }
}
.about__overview-sales {
  display: grid;
  width: 80%;
  margin-inline: auto;
  gap: 100px;
  grid-template-columns: 1fr 1fr;
  margin-top: 40px;
}
@media screen and (max-width: 767px) {
  .about__overview-sales {
    margin-top: 20px;
  }
}
@media screen and (max-width: 767px) {
  .about__overview-sales {
    grid-template-columns: 1fr;
    gap: 30px;
    width: 100%;
  }
}
.about__overview-sales dd .common__imgblock {
  width: 60%;
  margin-inline: auto;
}
.about__overview-domain {
  display: grid;
  width: 100%;
  gap: 60px;
  grid-template-columns: 2fr 1fr;
  margin-top: 40px;
}
@media screen and (max-width: 767px) {
  .about__overview-domain {
    margin-top: 20px;
  }
}
@media screen and (max-width: 767px) {
  .about__overview-domain {
    grid-template-columns: 1fr;
    gap: 30px;
  }
}
.about__overview-domain > dd img {
  width: 100%;
  height: auto;
}
.about__overview-domain + h3 {
  margin-top: 40px;
}
@media screen and (max-width: 767px) {
  .about__overview-domain + h3 {
    margin-top: 20px;
  }
}
.about__overview-location {
  display: grid;
  width: 80%;
  margin-inline: auto;
  gap: 40px;
  grid-template-columns: 1fr 3.5fr;
  margin-top: 40px;
}
@media screen and (max-width: 767px) {
  .about__overview-location {
    margin-top: 20px;
  }
}
@media screen and (max-width: 767px) {
  .about__overview-location {
    grid-template-columns: 1fr;
    gap: 30px;
    width: 100%;
  }
}
.about__overview-location dd {
  text-align: center;
}
.about__overview-location dd:nth-of-type(1) img {
  width: 100%;
}
@media screen and (max-width: 767px) {
  .about__overview-location dd:nth-of-type(1) img {
    width: 40%;
  }
}
.about__indicator__dl {
  display: grid;
  grid-template-columns: 1fr 1.3fr;
  gap: 60px;
  margin-top: 40px;
}
@media screen and (max-width: 767px) {
  .about__indicator__dl {
    margin-top: 20px;
  }
}
@media screen and (max-width: 767px) {
  .about__indicator__dl {
    grid-template-columns: 1fr;
    gap: 30px;
  }
}
.about__indicator__value {
  font-size: 22px;
  line-height: 1.1;
  font-weight: 700;
}
@media screen and (max-width: 767px) {
  .about__indicator__value {
    font-size: 19px;
  }
}
.about__indicator__value .big_num {
  font-family: "Roboto", sans-serif;
  font-size: 200%;
  margin: 0.1em;
  vertical-align: -2px;
  color: #05a173;
}
.about__indicator__value .color_num {
  color: #05a173;
}
.about__indicator__value_previous {
  font-size: 19px;
  line-height: 1.1;
  font-weight: 700;
  color: #111;
}
@media screen and (max-width: 767px) {
  .about__indicator__value_previous {
    font-size: 17px;
  }
}
.about__indicator__value_previous .big_num {
  font-family: "Roboto", sans-serif;
  font-size: 180%;
  margin: 0.1em;
  vertical-align: -2px;
  color: #05a173;
}
.about__indicator__value_previous .color_num {
  color: #05a173;
}
.about__indicator__value + .about__indicator__value_previous {
  margin-top: 0.5em;
}
.about__indicator__performance {
  display: grid;
  grid-template-columns: 1fr 6fr;
  gap: 60px;
  margin-top: 40px;
}
@media screen and (max-width: 767px) {
  .about__indicator__performance {
    margin-top: 20px;
  }
}
@media screen and (max-width: 767px) {
  .about__indicator__performance {
    grid-template-columns: 1fr;
    gap: 10px;
  }
}
.about__indicator__performance > dd:nth-of-type(1) {
  text-align: center;
}
.about__indicator__performance > dd img {
  width: 100%;
  height: auto;
}
@media screen and (max-width: 767px) {
  .about__indicator__performance > dd img {
    width: 40%;
    margin-inline: auto;
  }
}
.about__indicator__performance > dd p strong {
  color: #05a173;
  font-weight: 700;
}
.about__indicator__envdata {
  margin-top: 40px;
  width: 85%;
  margin-inline: auto;
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 80px;
}
@media screen and (max-width: 767px) {
  .about__indicator__envdata {
    margin-top: 20px;
  }
}
@media screen and (max-width: 767px) {
  .about__indicator__envdata {
    grid-template-columns: 1fr;
    gap: 40px;
    width: 100%;
  }
}
.about__indicator__envdata > dd h4 {
  display: inline;
}
.about__indicator__envdata > dd img {
  width: 100%;
  height: auto;
}
.about__stock__timestamp + h3, .about__stock__timestamp + dl {
  margin-top: 40px;
}
@media screen and (max-width: 767px) {
  .about__stock__timestamp + h3, .about__stock__timestamp + dl {
    margin-top: 20px;
  }
}
.about__stock__contentsclm {
  display: grid;
  grid-template-columns: 1fr 2.5fr;
}
@media screen and (max-width: 767px) {
  .about__stock__contentsclm {
    grid-template-columns: 1fr;
  }
}
.about__stock__contentsclm > dt {
  padding-top: 1.5em;
  padding-bottom: 1.5em;
  padding-right: 1.5em;
  border-top: 1px solid #ddd;
}
@media screen and (max-width: 767px) {
  .about__stock__contentsclm > dt {
    padding-bottom: 0;
  }
}
.about__stock__contentsclm > dt h4 {
  white-space: nowrap;
  text-align: right;
}
@media screen and (max-width: 767px) {
  .about__stock__contentsclm > dt h4 {
    text-align: left;
  }
}
.about__stock__contentsclm > dd {
  padding-top: 1.5em;
  padding-bottom: 1.5em;
  border-top: 1px solid #ddd;
}
@media screen and (max-width: 767px) {
  .about__stock__contentsclm > dd {
    border-top: 0;
    padding-top: 0.5em;
  }
}
@media screen and (max-width: 767px) {
  .about__stock__contentsclm + h4 {
    margin-top: 40px;
  }
}
@media screen and (max-width: 767px) and (max-width: 767px) {
  .about__stock__contentsclm + h4 {
    margin-top: 20px;
  }
}
.about__stock__copyclm {
  display: grid;
  grid-template-columns: auto 1fr;
  gap: 5px;
}
.about__stock__copyclm > dt p {
  white-space: nowrap;
  line-height: 1.6;
}
.about__stock__copyclm > dd p {
  line-height: 1.6;
  padding-left: 1em;
  text-indent: -1em;
}
@media screen and (max-width: 767px) {
  .about__stock__holdertbl, .about__stock__govtbl2, .about__stock__govtbl1, .about__stock__tsrtbl {
    min-width: 600px;
  }
}
.about__stock__holdertbl tr:nth-child(odd), .about__stock__govtbl2 tr:nth-child(odd), .about__stock__govtbl1 tr:nth-child(odd), .about__stock__tsrtbl tr:nth-child(odd) {
  background-color: #f1f9f9;
}
.about__stock__holdertbl tr th, .about__stock__govtbl2 tr th, .about__stock__govtbl1 tr th, .about__stock__tsrtbl tr th {
  width: 50%;
}
@media screen and (max-width: 767px) {
  .about__stock__holdertbl tr th:nth-of-type(1), .about__stock__govtbl2 tr th:nth-of-type(1), .about__stock__govtbl1 tr th:nth-of-type(1), .about__stock__tsrtbl tr th:nth-of-type(1) {
    width: 70%;
  }
  .about__stock__holdertbl tr th:nth-of-type(2), .about__stock__govtbl2 tr th:nth-of-type(2), .about__stock__govtbl1 tr th:nth-of-type(2), .about__stock__tsrtbl tr th:nth-of-type(2) {
    width: 30%;
  }
}
@media screen and (max-width: 767px) {
  .about__stock__holdertbl tr td, .about__stock__govtbl2 tr td, .about__stock__govtbl1 tr td, .about__stock__tsrtbl tr td {
    vertical-align: middle;
  }
}
.about__stock__holdertbl tr td:nth-of-type(2) p, .about__stock__govtbl2 tr td:nth-of-type(2) p, .about__stock__govtbl1 tr td:nth-of-type(2) p, .about__stock__tsrtbl tr td:nth-of-type(2) p {
  text-align: right;
}
.about__stock__tsrtbl tr th {
  width: auto;
}
.about__stock__tsrtbl tr th:nth-last-of-type(-n + 10) {
  padding: 0.7em 0.4em;
}
@media screen and (max-width: 767px) {
  .about__stock__tsrtbl tr td {
    vertical-align: middle;
  }
}
@media screen and (max-width: 767px) {
  .about__stock__tsrtbl tr td:nth-of-type(1) p {
    white-space: nowrap;
  }
}
.about__stock__tsrtbl tr td:nth-last-child(1) {
  border-left: 0;
}
.about__stock__tsrtbl tr td:nth-last-of-type(-n + 10) {
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  width: 8%;
  padding: 0.7em 0.8em;
  vertical-align: middle;
}
.about__stock__tsrtbl tr td:nth-last-of-type(-n + 10) p {
  text-align: right;
  white-space: nowrap;
}
@media screen and (max-width: 1200px) {
  .about__stock__tsrtbl tr td:nth-last-of-type(-n + 10) p {
    font-size: 92% !important;
  }
}
@media screen and (max-width: 767px) {
  .about__stock__tsrtbl tr td:nth-last-of-type(-n + 10) p {
    font-size: 100% !important;
  }
}
@media screen and (max-width: 767px) {
  .about__stock__govtbl1 {
    min-width: 1185px;
  }
}
.about__stock__govtbl1 tr th {
  width: auto;
  vertical-align: middle;
}
@media screen and (max-width: 767px) {
  .about__stock__govtbl1 tr th {
    width: 30% !important;
  }
}
.about__stock__govtbl1 tr td p {
  text-align: left;
}
.about__stock__govtbl1 tr td:nth-last-child(1) {
  border-left: 0;
}
@media screen and (max-width: 767px) {
  .about__stock__govtbl1 tr td:nth-last-child(1) {
    width: 30%;
  }
}
.about__stock__govtbl1 tr td:nth-last-of-type(3) {
  width: 30%;
}
@media screen and (max-width: 767px) {
  .about__stock__govtbl1 tr td:nth-last-of-type(3) {
    width: 30%;
  }
}
.about__stock__govtbl1 tr td:nth-last-of-type(-n + 2) {
  width: 35%;
}
@media screen and (max-width: 767px) {
  .about__stock__govtbl1 tr td:nth-last-of-type(-n + 2) {
    width: 30%;
  }
}
.about__stock__govtbl1 tr td:nth-last-of-type(-n + 2) p {
  text-align: left;
}
@media screen and (max-width: 767px) {
  .about__stock__govtbl2 {
    min-width: 1185px;
  }
}
.about__stock__govtbl2 tr th {
  width: auto;
}
@media screen and (max-width: 767px) {
  .about__stock__govtbl2 tr th {
    width: 25% !important;
  }
}
.about__stock__govtbl2 tr td p {
  text-align: left;
}
.about__stock__govtbl2 tr td:nth-last-child(1) {
  border-left: 0;
}
.about__stock__govtbl2 tr td:nth-last-of-type(4) {
  width: auto;
}
.about__stock__govtbl2 tr td:nth-last-of-type(4) p {
  text-align: left;
}
.about__stock__govtbl2 tr td:nth-last-of-type(-n + 3) {
  width: 26%;
}
.about__stock__govtbl2 tr td:nth-last-of-type(-n + 3) p {
  text-align: left;
}
.about__financial_modal {
  width: 100%;
  max-width: 1150px;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
}
.about__financial_modal img {
  width: 100%;
}
.about__financials__zaimclm2 {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 80px;
}
@media screen and (max-width: 767px) {
  .about__financials__zaimclm2 {
    grid-template-columns: 1fr;
    gap: 30px;
  }
  .about__financials__zaimclm2.w90 {
    width: 90%;
    margin-inline: auto;
  }
}
.about__financials__zaimclm2 + dl, .about__financials__zaimclm2 + h3, .about__financials__zaimclm2 + h4 {
  margin-top: 60px;
}
@media screen and (max-width: 767px) {
  .about__financials__zaimclm2 + dl, .about__financials__zaimclm2 + h3, .about__financials__zaimclm2 + h4 {
    margin-top: 30px;
  }
}
.about__financials__zaimclm3 {
  display: grid;
  grid-template-columns: 1fr 1fr 1fr;
  gap: 80px;
}
@media screen and (max-width: 767px) {
  .about__financials__zaimclm3 {
    grid-template-columns: 1fr;
    gap: 30px;
    width: 80%;
    margin-inline: auto;
  }
}
.about__financials__zaimclm3 > dd h4 {
  display: block;
  text-align: center;
}
.about__financials__zaimclm3 > dd h4 + .common__imgblock {
  margin-top: 10px;
}
@media screen and (max-width: 767px) {
  .about__financials__zaimclm3 > dd h4 + .common__imgblock {
    margin-top: 5px;
  }
}
.about__financials__zaimclm3 + dl, .about__financials__zaimclm3 + h3, .about__financials__zaimclm3 + h4 {
  margin-top: 60px;
}
@media screen and (max-width: 767px) {
  .about__financials__zaimclm3 + dl, .about__financials__zaimclm3 + h3, .about__financials__zaimclm3 + h4 {
    margin-top: 30px;
  }
}
.about__financials__tbl {
  width: 100%;
  border-bottom: 1px solid #ccc;
}
@media screen and (max-width: 767px) {
  .about__financials__tbl {
    min-width: 700px;
  }
}
.about__financials__tbl.col5 tr td {
  width: 20%;
}
.about__financials__tbl.cluster tr td {
  border-bottom: 1px solid #ccc;
}
.about__financials__tbl.cluster tr td:nth-of-type(3) {
  background-color: #f2f8f8;
}
.about__financials__tbl.cluster tr td:nth-of-type(1) p {
  text-align: left;
}
.about__financials__tbl.cluster tr td + td {
  border-left: 1px solid #ccc;
}
.about__financials__tbl tr > th,
.about__financials__tbl tr td {
  padding: 0.7em 1em;
}
.about__financials__tbl tr > th {
  background-color: #7b8f86;
}
.about__financials__tbl tr > th p {
  color: #fff;
  font-weight: 700;
}
.about__financials__tbl tr > th + th {
  border-left: 1px solid #fff;
}
.about__financials__tbl tr > td {
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  padding-right: 3rem;
  padding-left: 3rem;
}
.about__financials__tbl tr > td p {
  text-align: right;
}
.about__financials__tbl tr > td:nth-of-type(5) {
  background-color: #f2f8f8;
}
.about__financials__tbl tr.border_bottom td {
  border-bottom: 1px solid #ccc;
}
.about__financials__tbl tr.border_bottom td:nth-of-type(1) {
  border: 0;
}
.about__financials__tbl + h3 {
  margin-top: 60px;
}
@media screen and (max-width: 767px) {
  .about__financials__tbl + h3 {
    margin-top: 30px;
  }
}
.about__financials__factor > dt, .about__financials__factor > dd {
  padding: 0.4em 0.8em;
}
.about__financials__factor > dt + dt, .about__financials__factor > dd + dt {
  margin-top: 20px;
}
@media screen and (max-width: 767px) {
  .about__financials__factor > dt + dt, .about__financials__factor > dd + dt {
    margin-top: 10px;
  }
}
.about__financials__factor > dt {
  background-color: #7b8f86;
}
.about__financials__factor > dt p {
  color: #fff;
}

.report2023__sitemap {
  width: 100%;
  position: fixed;
  bottom: 0;
  top: 0;
  left: 0;
  z-index: 100001;
  visibility: hidden;
  opacity: 0;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  background-color: rgba(194, 209, 203, 0.98);
  -webkit-transition: 0.3s;
  transition: 0.3s;
}
.report2023__sitemap.open {
  opacity: 1;
  visibility: visible;
}
.report2023__sitemap .sitemap_inner {
  display: block !important;
}
.report2023__sitemap .btn-close {
  display: block !important;
}
.report2023__sitemap .btn-open {
  display: none;
}
.report2023__sitemap .sitemap-close {
  cursor: pointer;
}
.report2023__sitemap .btn-close {
  width: 154px;
  position: absolute;
  right: 1em;
  bottom: 2em;
  display: none;
}
.report2023__sitemap .btn-close img {
  width: 100%;
  height: auto;
}
.report2023__sitemap__opener {
  position: static;
  bottom: 0;
  right: 24px;
  width: 100%;
  margin-top: 40px;
  margin-right: -0.185%;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: end;
  -webkit-justify-content: flex-end;
      -ms-flex-pack: end;
          justify-content: flex-end;
  z-index: 999;
  padding-right: 0;
  -webkit-transform: translateY(180px);
          transform: translateY(180px);
}
@media screen and (max-width: 767px) {
  .report2023__sitemap__opener {
    margin-top: 20px;
  }
}
@media screen and (min-width: 1025px) {
  .report2023__sitemap__opener {
    -webkit-transform: translateY(180px) translateX(calc(1.85% + 1px));
            transform: translateY(180px) translateX(calc(1.85% + 1px));
  }
}
@media screen and (max-width: 767px) {
  .report2023__sitemap__opener {
    display: none;
  }
}
.report2023__sitemap__opener.is-floating {
  position: fixed;
  -webkit-transform: translateY(0);
          transform: translateY(0);
  left: -2.5%;
  width: 102.5%;
}
@media screen and (min-width: 1025px) {
  .report2023__sitemap__opener.is-floating {
    padding-right: 60px;
    left: unset;
    width: 100%;
    right: calc((100% - 50px) * 0.185);
  }
}
.report2023__sitemap__opener .sitemap-opener {
  cursor: pointer;
}
.report2023__sitemap .btn-open {
  width: 154px;
  position: absolute;
  right: 1em;
  bottom: 2em;
  display: block;
}
.report2023__sitemap .btn-open img {
  width: 100%;
  height: auto;
}
.report2023__sitemap .sitemap_inner {
  width: 95%;
  max-width: 1258px;
  margin-inline: auto;
  padding: 4em 0 8em;
  display: none;
}
.report2023__sitemap .sitemap_inner .sitemap__link_library {
  width: 100%;
  border-bottom: 1px solid #05a173;
  padding-bottom: 2em;
}
.report2023__sitemap .sitemap_inner .sitemap__link_library a {
  text-decoration: none;
}
.report2023__sitemap .sitemap_inner .sitemap__link_library a::before {
  display: inline-block;
  content: "";
  width: 23px;
  height: 23px;
  margin-right: 0.4em;
  background-image: url("../svg/ic-circle_arr-black.svg");
  background-repeat: no-repeat;
  background-size: cover;
  vertical-align: bottom;
}
.report2023__sitemap .sitemap_inner .sitemap__link_library + .sitemap__clm {
  margin-top: 50px;
}
@media screen and (max-width: 767px) {
  .report2023__sitemap .sitemap_inner .sitemap__link_library + .sitemap__clm {
    margin-top: 25px;
  }
}
.report2023__sitemap .sitemap_inner .sitemap__clm {
  display: grid;
  grid-template-columns: 1fr 5.5fr;
  gap: 40px;
}
.report2023__sitemap .sitemap_inner .sitemap__clm--logo img {
  width: 100%;
  height: auto;
}
.report2023__sitemap .sitemap_inner .sitemap__clm--list {
  display: grid;
  grid-template-columns: 1fr 1.5fr 1fr 1fr;
  gap: 25px;
}
.report2023__sitemap .sitemap_inner .sitemap__clm--list a {
  text-decoration: none;
}
.report2023__sitemap .sitemap_inner .sitemap__clm--list a:hover {
  text-decoration: underline;
}
.report2023__sitemap .sitemap_inner .sitemap__clm--list h3 {
  font-weight: 700;
  font-size: 16px;
  line-height: 1.6;
  text-align: left;
  color: #111;
}
.report2023__sitemap .sitemap_inner .sitemap__clm--list h3 + ul {
  margin-top: 20px;
}
@media screen and (max-width: 767px) {
  .report2023__sitemap .sitemap_inner .sitemap__clm--list h3 + ul {
    margin-top: 10px;
  }
}
.report2023__sitemap .sitemap_inner .sitemap__clm--list .list__clm__block + .list__clm__block {
  margin-top: 40px;
}
@media screen and (max-width: 767px) {
  .report2023__sitemap .sitemap_inner .sitemap__clm--list .list__clm__block + .list__clm__block {
    margin-top: 20px;
  }
}
.report2023__sitemap .sitemap_inner .sitemap__clm--list .list__clm__block ul li {
  font-size: 14px;
}
.report2023__sitemap .sitemap_inner .sitemap__clm--list .list__clm__block ul li a {
  font-size: 14px;
}
.report2023__sitemap .sitemap_inner .sitemap__clm--list .list__clm__block ul li a:link, .report2023__sitemap .sitemap_inner .sitemap__clm--list .list__clm__block ul li a:visited {
  color: #111;
}
.report2023__sitemap .sitemap_inner .sitemap__clm--list .list__clm__block ul li a:hover {
  color: #05a173;
}
.report2023__sitemap .sitemap_inner .sitemap__clm--list .list__clm__block ul li + li {
  margin-top: 12px;
}
.report2023__sitemap__sp {
  display: none;
  background-color: #ebf2ef;
  margin-top: 10rem;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  padding: 2rem 4.2666666667vw 6rem;
}
.report2023__sitemap__sp .sitemap__link_library__sp {
  width: 100%;
  border-bottom: 1px solid #05a173;
  padding-bottom: 2em;
}
.report2023__sitemap__sp .sitemap__link_library__sp a {
  text-decoration: none;
}
.report2023__sitemap__sp .sitemap__link_library__sp a::before {
  display: inline-block;
  content: "";
  width: 23px;
  height: 23px;
  margin-right: 0.4em;
  background-image: url("../svg/ic-circle_arr-black.svg");
  background-repeat: no-repeat;
  background-size: cover;
  vertical-align: bottom;
}
.report2023__sitemap__sp .sitemap__link_library__sp + .sitemap__clm {
  margin-top: 50px;
}
@media screen and (max-width: 767px) {
  .report2023__sitemap__sp .sitemap__link_library__sp + .sitemap__clm {
    margin-top: 25px;
  }
}
.report2023__sitemap__sp .sitemap__clm__sp {
  display: grid;
  grid-template-columns: 1fr;
  gap: 30px;
}
.report2023__sitemap__sp .sitemap__clm__sp--logo {
  -webkit-box-ordinal-group: 3;
  -webkit-order: 2;
      -ms-flex-order: 2;
          order: 2;
}
.report2023__sitemap__sp .sitemap__clm__sp--logo img {
  width: 40%;
  height: auto;
}
.report2023__sitemap__sp .sitemap__clm__sp--list {
  -webkit-box-ordinal-group: 2;
  -webkit-order: 1;
      -ms-flex-order: 1;
          order: 1;
  display: grid;
  grid-template-columns: 1fr;
  gap: 25px;
  margin-top: 3rem;
}
.report2023__sitemap__sp .sitemap__clm__sp--list a {
  text-decoration: none;
}
.report2023__sitemap__sp .sitemap__clm__sp--list a:hover {
  text-decoration: underline;
}
.report2023__sitemap__sp .sitemap__clm__sp--list h3 {
  font-weight: 700;
  font-size: 16px;
  line-height: 1.6;
  text-align: left;
  color: #111;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  position: relative;
}
.report2023__sitemap__sp .sitemap__clm__sp--list h3 + div {
  margin-top: 20px;
  overflow: hidden;
}
@media screen and (max-width: 767px) {
  .report2023__sitemap__sp .sitemap__clm__sp--list h3 + div {
    margin-top: 10px;
  }
}
.report2023__sitemap__sp .sitemap__clm__sp--list h3 + ul {
  margin-top: 30px;
}
@media screen and (max-width: 767px) {
  .report2023__sitemap__sp .sitemap__clm__sp--list h3 + ul {
    margin-top: 15px;
  }
}
.report2023__sitemap__sp .sitemap__clm__sp--list h3 .icon__symbol {
  position: absolute;
  top: 0.5rem;
  right: 0.3em;
}
.report2023__sitemap__sp .sitemap__clm__sp--list h3 .icon__symbol.plus {
  color: #05a173;
  position: absolute;
  margin-left: 3px;
  margin-top: 10px;
  -webkit-transform: translateX(-15px);
          transform: translateX(-15px);
}
.report2023__sitemap__sp .sitemap__clm__sp--list h3 .icon__symbol.plus:before {
  content: "";
  position: absolute;
  width: 15px;
  height: 1px;
  background-color: currentColor;
}
.report2023__sitemap__sp .sitemap__clm__sp--list h3 .icon__symbol.plus:after {
  content: "";
  position: absolute;
  width: 15px;
  height: 1px;
  background-color: currentColor;
  -webkit-transform: rotate(90deg);
  transform: rotate(90deg);
}
.report2023__sitemap__sp .sitemap__clm__sp--list h3 .icon__symbol.minus {
  color: #05a173;
  position: absolute;
  margin-left: 3px;
  margin-top: 10px;
  width: 15px;
  height: 1px;
  background-color: currentColor;
}
.report2023__sitemap__sp .sitemap__clm__sp--list .list__clm__block + .list__clm__block {
  margin-top: 40px;
}
@media screen and (max-width: 767px) {
  .report2023__sitemap__sp .sitemap__clm__sp--list .list__clm__block + .list__clm__block {
    margin-top: 20px;
  }
}
.report2023__sitemap__sp .sitemap__clm__sp--list .list__clm__block ul li {
  font-size: 14px;
}
.report2023__sitemap__sp .sitemap__clm__sp--list .list__clm__block ul li a {
  font-size: 14px;
}
.report2023__sitemap__sp .sitemap__clm__sp--list .list__clm__block ul li a:link, .report2023__sitemap__sp .sitemap__clm__sp--list .list__clm__block ul li a:visited {
  color: #111;
  text-decoration: underline;
}
.report2023__sitemap__sp .sitemap__clm__sp--list .list__clm__block ul li a:hover {
  color: #05a173;
}
.report2023__sitemap__sp .sitemap__clm__sp--list .list__clm__block ul li a::after {
  content: "";
  width: 5px;
  height: 5px;
  border-top: 1px solid #111;
  border-right: 1px solid #111;
  display: inline-block;
  -webkit-transform: rotate(45deg);
          transform: rotate(45deg);
  position: relative;
  top: -0.2rem;
  margin-left: 0.5em;
}
.report2023__sitemap__sp .sitemap__clm__sp--list .list__clm__block ul li + li {
  margin-top: 2rem;
}
.report2023__sitemap__sp .sitemap__clm__sp--list .list__clm__block .close__accordion {
  width: 31px;
  height: auto;
  margin-top: 2rem;
}
.report2023__sitemap__sp .sitemap__clm__sp--list .list__clm__block .close__accordion img {
  width: 100%;
  height: auto;
}
@media screen and (max-width: 767px) {
  .report2023__sitemap__sp {
    display: block;
  }
}

.kv-controls {
  position: absolute;
  top: calc(100% + 25px);
  left: 0;
  width: 100%;
}
@media screen and (max-width: 767px) {
  .kv-controls {
    position: relative;
    margin: 0;
    width: auto;
    z-index: 200;
    top: -45px;
    margin-bottom: -30px;
  }
}
.kv-controls-in {
  max-width: 1258px;
  margin-inline: auto;
}
@media screen and (max-width: 767px) {
  .kv-controls-in {
    width: auto;
  }
}
.kv-controls-icon {
  display: none;
  background: transparent;
  padding: 0;
  margin: 0;
  border: 0;
  outline: 0;
  cursor: pointer;
}
.kv-controls-icon img {
  -webkit-transform: scale(1.3);
          transform: scale(1.3);
}
@media screen and (max-width: 767px) {
  .kv-controls-icon img {
    -webkit-transform: scale(1);
            transform: scale(1);
  }
}
.kv-controls-icon.is-active {
  display: block;
}

#jtweb-site-area-content #jtweb-wrapper-content {
  padding-bottom: 24px;
  position: relative;
}
@media screen and (max-width: 767px) {
  #jtweb-site-area-content #jtweb-wrapper-content {
    padding-bottom: 40px;
  }
}

#jtweb-category-content,
#jtweb-main-content {
  padding-bottom: 180px;
}
@media screen and (max-width: 767px) {
  #jtweb-category-content,
  #jtweb-main-content {
    padding-bottom: 0;
  }
}

.report2023__sitemap__opener.is-floating {
  z-index: 20;
}

.top__contents__inner .contents__link::after {
  content: none;
}

.top__contents__inner .contents__link__modalmenu {
  position: fixed !important;
  opacity: 0;
  visibility: hidden;
}
.top__contents__inner .contents__link__modalmenu.close {
  display: grid;
  opacity: 0;
  visibility: hidden;
}

.top__contents__inner .contents__link .contents__link__overmenu {
  background: transparent !important;
}

.contents__link {
  position: relative;
  overflow: hidden;
}
.contents__link__icon {
  width: 136px;
  height: 136px;
  position: absolute;
  bottom: 0;
  right: 0;
  -webkit-transform: translate(50%, 50%);
          transform: translate(50%, 50%);
}
@media screen and (max-width: 767px) {
  .contents__link__icon {
    width: 100px;
    height: 100px;
  }
}
.contents__link__icon--hover {
  background-color: #d2ee39;
  border-radius: 50%;
  -webkit-transition: width 0.8s, height 0.8s, background-color 0.3s;
  transition: width 0.8s, height 0.8s, background-color 0.3s;
}
.contents__link__icon--default {
  background: -webkit-radial-gradient(circle, #6dd046 0%, #d2ee39 100%);
  background: radial-gradient(circle, #6dd046 0%, #d2ee39 100%);
  border-radius: 50%;
  -webkit-transition: width 0.8s, height 0.8s, opacity 0.8s;
  transition: width 0.8s, height 0.8s, opacity 0.8s;
}
.contents__link__icon--plus {
  position: absolute;
  bottom: 0;
  right: 0;
  width: 68px;
  height: 68px;
  -webkit-transform: translate(0, 0);
          transform: translate(0, 0);
  z-index: 2;
  -webkit-transition: opacity 0.2s;
  transition: opacity 0.2s;
}
@media screen and (max-width: 767px) {
  .contents__link__icon--plus {
    width: 45px;
    height: 45px;
  }
}
.contents__link__icon--plus::before, .contents__link__icon--plus::after {
  content: "";
  display: block;
  position: absolute;
  bottom: 24px;
  right: 14px;
  width: 21px;
  height: 2px;
  background: #005d41;
}
@media screen and (max-width: 767px) {
  .contents__link__icon--plus::before, .contents__link__icon--plus::after {
    bottom: 20px;
    right: 10px;
  }
}
.contents__link__icon--plus::after {
  -webkit-transform: rotate(90deg);
          transform: rotate(90deg);
}
.contents__link.open .contents__link__icon--default {
  opacity: 0;
  width: 2000px;
  height: 2000px;
}
.contents__link.open .contents__link__icon--hover {
  width: 2000px;
  height: 2000px;
  z-index: 2;
}
.contents__link.open .contents__link__icon--hover.icon--ceo {
  background-color: #05a173;
}
.contents__link.open .contents__link__icon--hover.icon--process {
  background-color: #40916f;
}
.contents__link.open .contents__link__icon--hover.icon--sustainability {
  background-color: #8bb03c;
}
.contents__link.open .contents__link__icon--hover.icon--biz {
  background-color: #599f5c;
}
.contents__link.open .contents__link__icon--hover.icon--gov {
  background-color: #4aa5bd;
}
.contents__link.open .contents__link__icon--hover.icon--about {
  background-color: #788d91;
}
.contents__link.open .contents__link__icon--plus {
  opacity: 0;
}/*# sourceMappingURL=main.css.map */