@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&display=swap");
@import url("https://fonts.googleapis.com/icon?family=Material+Icons");
@import url("https://fonts.googleapis.com/css2?family=Cormorant+Infant:ital,wght@0,300..700;1,300..700&display=swap");
@import url("https://use.fontawesome.com/releases/v6.2.0/css/all.css");
.color__sustainability {
  --category-color: #66C9AA;
}

.color__materiality {
  --category-color: #65C989;
}

.color__business {
  --category-color: #60B3C3;
}

.color__other {
  --category-color: #9FAEA9;
}

.color__news {
  --category-color: #75BB9F;
}

.color__nature {
  --target-color: #C3D8C7;
}

.color__value {
  --target-color: #ADCADD;
}

.color__talent {
  --target-color: #ECADA9;
}

.color__supply {
  --target-color: #F8DB91;
}

.color__governance {
  --target-color: #B4BEC4;
}

:root {
  /* タイポグラフィスケール */
  --font-size-xs: clamp(1.2rem, 0.5vw + 1.1rem, 1.4rem); /* 12px〜14px */
  --font-size-sm: clamp(1.3rem, 0.5vw + 1.3rem, 1.5rem); /* 14px〜16px */
  --font-size-base: clamp(1.5rem, 0.25vw + 1.55rem, 1.6rem); /* 16px固定 */
  --font-size-lg: clamp(1.8rem, 0.75vw + 1.65rem, 2rem); /* 18px〜20px */
  --font-size-xl: clamp(2.4rem, 1.5vw + 2.1rem, 3rem); /* 24px〜30px */
  --font-size-2xl: clamp(3.2rem, 2.5vw + 2.7rem, 4rem); /* 32px〜40px */
  --font-size-3xl: clamp(4rem, 4vw + 3rem, 5.6rem); /* 40px〜56px */
  /* スペーシングシステム */
  --space-xs: clamp(0.25rem, 0.5vw, 0.5rem);
  --space-sm: clamp(0.5rem, 1vw, 1rem);
  --space-md: clamp(1rem, 2vw, 1.5rem);
  --space-lg: clamp(1.5rem, 3vw, 2.5rem);
  --space-xl: clamp(2rem, 4vw, 4rem);
  --space-2xl: clamp(3rem, 6vw, 6rem);
  --space-3xl: clamp(4rem, 8vw, 8rem);
  /* カラーシステム */
  --color-primary: #05A173;
  --color-secondary: #00999D;
  --color-text: #033824;
  --color-background: #ffffff;
  --color-shadow: #dadada;
  /* スペーシング（8の倍数ベース） */
  --space-unit: 0.8rem; /* 8px */
  --space-xs: clamp(0.4rem, 1vw + 0.2rem, 0.8rem); /* 4px〜8px */
  --space-sm: clamp(0.8rem, 2vw + 0.4rem, 1.6rem); /* 8px〜16px */
  --space-md: clamp(1.6rem, 3vw + 1rem, 3.2rem); /* 16px〜32px */
  --space-lg: clamp(2.4rem, 4vw + 1.6rem, 4.8rem); /* 24px〜48px */
  --space-xl: clamp(3.2rem, 5vw + 2rem, 6.4rem); /* 32px〜64px */
  --space-2xl: clamp(4rem, 6vw + 2.5rem, 8rem); /* 40px〜80px */
  --space-3xl: clamp(4.8rem, 8vw + 3rem, 9.6rem); /* 48px〜96px */
  /* レイアウト */
  --container-width: min(90%, 1200px);
  --content-width: min(85%, 800px);
  --sidebar-width: clamp(200px, 25%, 300px);
  /* ボーダー・角丸 */
  --border-radius-sm: 0.25rem;
  --border-radius-md: 0.5rem;
  --border-radius-lg: 1rem;
  --border-radius-2xl: 2rem;
  /* シャドウ */
  --shadow-sm: 0 1px 2px 0 rgb(0 0 0 / 0.05);
  --shadow-md: 0 2px 6px -1px rgb(0 0 0 / 0.1);
  --shadow-lg: 0 3px 15px -3px rgb(0 0 0 / 0.1);
  --shadow-neumo1: 20px 20px 30px #dadada;
  --shadow-neumo2: -20px -20px 30px #fff;
}

#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%;
  color: #333;
}

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

ul li, ol li {
  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:link, a:visited {
  transition: all 0.8s ease-out;
}
a:hover {
  transition: all 0.2s ease-out;
  color: #00ae68;
  text-decoration: none;
}
a:not([href^="#"]):hover {
  opacity: 1;
}

sup {
  margin: 0 0.1em;
}

/*モーダルを開くボタン*/
.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;
  transition: 0.3s;
  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: flex;
  align-items: 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;
  box-shadow: 0 3px 6px rgba(0, 0, 0, 0.15);
}

@media screen and (min-width: 768px) {
  .logo[data-v-2af7f5cc] {
    bottom: 31px;
    right: 0;
    position: absolute;
  }
}
@media screen and (max-width: 767px) {
  .p-sustainability .page-section-h2-subtitle + * {
    margin-top: var(--space-unit);
  }
}
.p-sustainability .c-kv-set.contents__child {
  height: 450px;
}
.p-sustainability .c-kv-set .c-kv-set-title-subtitle {
  width: 40%;
}
@media screen and (max-width: 767px) {
  .p-sustainability .c-kv-set .c-kv-set-title-subtitle {
    width: 95%;
  }
}
.p-sustainability .c-kv-set .c-kv-set-title-subtitle ul {
  margin-top: var(--space-sm);
  margin-left: 1.2em;
  display: none;
}
.p-sustainability .c-kv-set .c-kv-set-title-subtitle ul li {
  list-style-type: disc;
  font-size: var(--font-size-sm);
}
.p-sustainability .c-kv-set .c-kv-set-title-subtitle ul li + li {
  margin-top: var(--space-unit);
}

.new-responsive-template a {
  text-decoration: none;
}
.new-responsive-template a.link__underline {
  text-decoration: underline;
}
.new-responsive-template a.link__blank {
  padding: 0 var(--space-unit);
}
.new-responsive-template {
  /* common */
  /* スクロールイベントでのFadeUpアニメーション用 */
}
.new-responsive-template .fadeUp {
  animation-name: blurAnime;
  animation-duration: 1s;
  animation-fill-mode: forwards;
}
@keyframes blurAnime {
  from {
    filter: blur(10px);
    transform: scale(1.02);
    opacity: 0;
  }
  to {
    filter: blur(0);
    transform: scale(1);
    opacity: 1;
  }
}
.new-responsive-template #jtweb-site-area-content.sustainability__contents {
  background-color: var(--color-background);
}
.new-responsive-template .l-header a:not([href^="#"]):hover,
.new-responsive-template .l-footer a:not([href^="#"]):hover,
.new-responsive-template .l-breadcrumb a:not([href^="#"]):hover,
.new-responsive-template .new-responsive-template a:not([href^="#"]):hover {
  opacity: 1 !important;
  transition: all 0.25s ease-out;
}
.new-responsive-template .new-responsive-template #jtweb-site-area-content #jtweb-wrapper-content {
  overflow-x: hidden;
}
.new-responsive-template .p-sustainability .c-kv-set-title-title {
  font-feature-settings: "palt";
}
.new-responsive-template .p-sustainability .c-kv-set-title-title.txt__shadow {
  text-shadow: 0 0 12px rgba(17, 15, 46, 0.4), 0 0 6px rgba(9, 40, 17, 0.3), 0 1px 1px rgba(28, 55, 83, 0.6);
}
.new-responsive-template .pc {
  display: initial;
}
@media screen and (max-width: 767px) {
  .new-responsive-template .pc {
    display: none;
  }
}
.new-responsive-template .sp {
  display: none;
}
@media screen and (max-width: 767px) {
  .new-responsive-template .sp {
    display: initial;
  }
}
.new-responsive-template .margin_top--unit {
  margin-top: var(--space-unit);
}
.new-responsive-template .margin_top--sm {
  margin-top: var(--space-sm);
}
.new-responsive-template .margin_top--md {
  margin-top: var(--space-md);
}
.new-responsive-template .margin_top--lg {
  margin-top: var(--space-lg);
}
.new-responsive-template .margin_top--xl {
  margin-top: var(--space-xl);
}
.new-responsive-template .margin_top--2xl {
  margin-top: var(--space-2xl);
}
.new-responsive-template a > i {
  margin-left: 0.3em;
}
.new-responsive-template a:not([href^="#"]):hover {
  opacity: 1;
}
.new-responsive-template a.block__link {
  display: block;
  box-sizing: border-box;
  height: 100%;
}
.new-responsive-template a.block__link:link, .new-responsive-template a.block__link:visited {
  text-decoration: none !important;
  transition: all 0.2s ease-in;
}
.new-responsive-template a.block__link:link .linkclm__element--img img, .new-responsive-template a.block__link:visited .linkclm__element--img img {
  transition: all 0.6s ease-in;
  filter: brightness(0.8);
}
.new-responsive-template a.block__link:link p::after, .new-responsive-template a.block__link:visited p::after {
  transition: all 0.2s ease-in;
}
.new-responsive-template a.block__link:hover {
  background-color: #00ae68;
}
.new-responsive-template a.block__link:hover p {
  color: #fff;
  transition: all 0.2s ease-in;
}
.new-responsive-template a.block__link:hover .linkclm__element--img img {
  transform: scale(1.1);
  filter: brightness(1.15);
  transition: all 0.2s ease-in;
}
.new-responsive-template a.block__link:hover ul li {
  color: #fff;
  transition: all 0.2s ease-in;
}
.new-responsive-template a.button__line {
  display: inline-block;
  padding: 0.8em 2em 0.9em;
  border: 2px solid #00ae68;
  border-radius: 50px;
  color: #00ae68;
  font-size: var(--font-size-sm);
  font-weight: 500;
  text-decoration: none;
  text-align: center;
  white-space: nowrap;
  position: relative;
  transition: all 0.3s ease;
  background-color: #fff;
  box-sizing: border-box;
}
.new-responsive-template a.button__line::before {
  content: "";
  position: absolute;
  top: 2px;
  left: 2px;
  right: 2px;
  bottom: 2px;
  border: 1px solid #00ae68;
  border-radius: 48px;
  pointer-events: none;
}
.new-responsive-template a.button__line:hover {
  background-color: #00ae68;
  color: #fff;
}
.new-responsive-template a.button__line:hover::before {
  border-color: #fff;
}
.new-responsive-template a.button__line.link__top {
  border: 2px solid #00621f;
  color: #00621f;
}
.new-responsive-template a.button__line.link__top::after {
  font-size: 13px;
  margin-left: 0.6em;
  font-family: "Font Awesome 6 Free";
  font-weight: 900;
  content: "\f104"; /*アイコンの種類*/
  vertical-align: middle;
  position: absolute;
  top: 23px;
  left: 10px;
  z-index: 10;
}
.new-responsive-template a.button__line.link__top::before {
  border: 1px solid #00621f;
}
.new-responsive-template a.button__line.link__top:hover {
  background-color: #00621f;
  color: #fff;
}
.new-responsive-template a.button__line.link__top:hover::before {
  border: 1px solid #fff;
}
.new-responsive-template a.button__line.bg__green {
  display: inline-block;
  padding: 1em 3em;
  background-color: #00ae68;
  border-radius: 50px;
  color: #fff;
  font-size: var(--font-size-sm);
  font-weight: 500;
  text-decoration: none;
  text-align: center;
  white-space: nowrap;
  position: relative;
  transition: all 0.3s ease;
  border: 1px solid #00ae68;
}
.new-responsive-template a.button__line.bg__green::before {
  content: "";
  position: absolute;
  top: 1px;
  left: 1px;
  right: 1px;
  bottom: 1px;
  border: 2px solid #fff;
  border-radius: 48px;
  pointer-events: none;
}
.new-responsive-template a.button__line.bg__green:hover {
  background-color: rgb(0, 225, 134.4827586207);
}
.new-responsive-template a.button__line.bg__green.link_pdf {
  padding-right: 70px;
}
.new-responsive-template a.button__line.bg__green.link_pdf::after {
  border-left: 1px solid #fff;
}
.new-responsive-template a.button__line.link_pdf {
  padding-right: 70px;
}
.new-responsive-template a.button__line.link_pdf:hover::after {
  border-left: 1px solid #fff;
}
.new-responsive-template a.button__line.link_pdf::after {
  font-size: 20px;
  line-height: 1.9;
  display: flex;
  align-items: center;
  position: absolute;
  height: calc(100% - 10px);
  padding: 0 19px 0 14px;
  top: 5px;
  right: 0;
  border-left: 1px solid #00ae68;
  box-sizing: border-box;
  font-family: "Font Awesome 6 Free";
  font-weight: 900;
  content: "\f1c1"; /*アイコンの種類*/
}
.new-responsive-template a.button__line.font__lg {
  font-size: var(--font-size-lg);
}
.new-responsive-template a.button__line.font__lg.link_pdf {
  padding-right: 90px;
}
.new-responsive-template a.button__line.font__lg.link_pdf::after {
  padding: 0 24px 0 19px;
  top: 5px;
  right: 0;
}
.new-responsive-template a.button__full {
  display: block;
  width: 100%;
}
.new-responsive-template a.button__line2 {
  height: 56px;
  display: flex;
  align-items: center;
  justify-content: center;
}
.new-responsive-template a.button__line2 p {
  color: inherit;
  line-height: 1.4;
  text-align: center;
  color: #111;
}
.new-responsive-template a.button__line2:hover p {
  color: #fff;
}
.new-responsive-template a.link__disabled {
  pointer-events: none;
}
.new-responsive-template a.link__disabled span {
  opacity: 0.15;
  font: inherit;
  margin-right: 3px;
}
.new-responsive-template a.link__disabled img {
  opacity: 0.15;
}
.new-responsive-template a.target_blank {
  margin-right: 0.2em;
}
.new-responsive-template a.target_blank::after {
  content: "";
  display: inline-block;
  width: 2rem;
  height: 1.5rem;
  background-image: url("/investors/library/integratedreport/report/2025/cat_assets/img/ic-blank.svg");
  background-repeat: no-repeat;
  background-size: cover;
  margin-left: 0.3em;
  box-sizing: border-box;
  position: relative;
  top: 0.05em;
}
.new-responsive-template a.link_site {
  color: transparent;
}
.new-responsive-template a.decoration__none {
  text-decoration: none;
}
.new-responsive-template a.pagelink__element {
  width: 80%;
  display: block;
  margin-inline: auto;
  border-radius: var(--border-radius-lg);
  background: var(--color-background);
  box-shadow: 20px 20px 30px var(--color-shadow), -20px -20px 30px #fff;
  padding: 4em;
  display: grid;
  grid-template-columns: 1fr 3fr;
  gap: var(--space-lg);
  text-decoration: none;
}
.new-responsive-template a.pagelink__element + .pagelink__element {
  margin-top: var(--space-md);
}
.new-responsive-template a.pagelink__element + p, .new-responsive-template a.pagelink__element + h3 {
  margin-top: var(--space-lg);
}
.new-responsive-template a.pagelink__element:link, .new-responsive-template a.pagelink__element:visited {
  transition: all 0.6s ease-in;
}
.new-responsive-template a.pagelink__element:link p, .new-responsive-template a.pagelink__element:visited p {
  text-decoration: none;
  transition: all 0.6s ease-in;
}
.new-responsive-template a.pagelink__element:hover {
  background-color: #00ae68;
  transition: all 0.2s ease-in;
}
.new-responsive-template a.pagelink__element:hover .link__thumb img {
  transform: scale(1.1);
  filter: brightness(1.1);
  transition: all 0.2s ease-in;
}
.new-responsive-template a.pagelink__element:hover h3 p {
  color: #fff;
  transition: all 0.2s ease-in;
}
.new-responsive-template a.pagelink__element:hover p {
  color: #fff;
  transition: all 0.2s ease-in;
}
.new-responsive-template a.pagelink__element .link__thumb {
  border-radius: var(--border-radius-lg);
  overflow: hidden;
  height: 150px;
  display: flex;
  align-items: center;
  justify-content: center;
}
.new-responsive-template a.pagelink__element .link__thumb img {
  object-fit: cover;
  width: 100%;
  height: 100%;
  transition: all 0.6s ease-in;
  filter: brightness(0.8);
}
.new-responsive-template a.pagelink__element .link__txt {
  transition: all 0.6s ease-in;
}
.new-responsive-template a.pagelink__element .link__txt h3 p {
  font-size: var(--font-size-lg);
  margin-right: 1.5em;
  overflow: hidden;
  display: -webkit-box;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 1; /* 1行で省略 */
}
.new-responsive-template a.pagelink__element .link__txt h3 p::after {
  font-size: 13px;
  margin-left: 0.6em;
  font-family: "Font Awesome 6 Free";
  font-weight: 900;
  content: "\f105"; /*アイコンの種類*/
  vertical-align: middle;
  position: relative;
  top: -1px;
}
.new-responsive-template a.pagelink__element .link__txt p {
  overflow: hidden;
  display: -webkit-box;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 3; /* 3行で省略 */
}
.new-responsive-template p {
  color: var(--color-text);
}
.new-responsive-template p + h3 {
  margin-top: var(--space-lg);
}
.new-responsive-template p + h4 {
  margin-top: var(--space-md);
}
.new-responsive-template p.link__arr::after {
  font-size: 13px;
  margin-left: 0.4em;
  font-family: "Font Awesome 6 Free";
  font-weight: 900;
  content: "\f105"; /*アイコンの種類*/
  vertical-align: middle;
  position: relative;
  top: -1px;
  transition: all 0.8s ease-out;
}
.new-responsive-template p.h2__sub {
  text-align: left;
  font-weight: 700;
  font-size: var(--font-size-lg);
  font-family: "Cormorant Infant", serif;
  font-optical-sizing: auto;
  font-style: normal;
}
.new-responsive-template p.h2__sub::before {
  content: "●";
  font-size: 11px;
  margin-right: 0.8em;
  vertical-align: middle;
  background: linear-gradient(317deg, rgb(0, 135, 90) 0%, rgb(0, 209, 154) 50%, rgb(0, 174, 255) 100%);
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
  position: relative;
  top: -1px;
}
.new-responsive-template p.h2__sub.grad_none::before {
  display: none;
}
.new-responsive-template p.h2__sub.width_inline {
  padding: 0 54px;
  max-width: 1600px;
  margin-inline: auto;
  box-sizing: border-box;
}
@media screen and (max-width: 767px) {
  .new-responsive-template p.h2__sub.width_inline {
    width: 87.2vw;
    margin-inline: auto;
    padding: 0;
  }
}
.new-responsive-template p.h2__sub.margin_top {
  margin-top: var(--space-lg);
}
.new-responsive-template p.h2__sub + h2 {
  margin-top: var(--space-unit);
}
.new-responsive-template p.h3__sub {
  font-size: initial;
}
.new-responsive-template p.expnote {
  font-size: small;
}
.new-responsive-template p.expnote + ul {
  margin-top: 20px;
}
@media screen and (max-width: 767px) {
  .new-responsive-template p.expnote + ul {
    margin-top: 10px;
  }
}
.new-responsive-template p.ph__caption {
  margin-top: 15px;
}
@media screen and (max-width: 767px) {
  .new-responsive-template p.ph__caption {
    margin-top: 8px;
  }
}
.new-responsive-template p.ph__caption {
  font-size: clamp(12px, 0.16vw + 12px, 14px);
  line-height: 1.6;
  text-align: left;
}
.new-responsive-template p.ph__caption.txt__center {
  text-align: center;
}
.new-responsive-template p + .img__area, .new-responsive-template p + .common__imgblock {
  margin-top: 6rem;
}
.new-responsive-template p.p__link {
  margin-top: 35px;
}
@media screen and (max-width: 767px) {
  .new-responsive-template p.p__link {
    margin-top: 20px;
  }
}
.new-responsive-template p.p__link a {
  font-family: "Noto Sans JP", sans-serif;
  font-weight: 700;
}
.new-responsive-template p.p__link a > .arr__right {
  width: 20px;
  height: auto;
  vertical-align: top;
}
.new-responsive-template p.p__link a i {
  margin-left: 0.2em;
}
.new-responsive-template p.p__link a:link, .new-responsive-template p.p__link a:visited {
  color: #414cb9;
  border-bottom: 2px solid #414cb9;
}
.new-responsive-template p.p__link a:link i, .new-responsive-template p.p__link a:visited i {
  color: #414cb9;
}
.new-responsive-template p.p__link a:hover {
  color: rgb(138.08, 145.032, 213.92);
  border-bottom: 2px solid rgb(138.08, 145.032, 213.92);
}
.new-responsive-template p.p__link a:hover i {
  color: rgb(138.08, 145.032, 213.92);
}
.new-responsive-template p.p__link--buy {
  margin-top: 30px;
}
.new-responsive-template p.p__link--buy a {
  display: block;
  text-align: center;
  padding: 5px 15px;
  box-sizing: border-box;
  border-radius: 20px;
  font-family: "Noto Sans JP", sans-serif;
  width: 60%;
}
@media screen and (max-width: 767px) {
  .new-responsive-template p.p__link--buy a {
    width: 100%;
  }
}
.new-responsive-template p.p__link--buy a i {
  color: #fff;
  margin: 0 0.3em;
  font-size: 1.15em;
}
.new-responsive-template p.p__link--buy a:link, .new-responsive-template p.p__link--buy a:visited {
  color: #fff;
  background: #414cb9;
}
.new-responsive-template p.p__link--buy a:hover {
  color: #fff;
  background: rgb(138.08, 145.032, 213.92);
}
.new-responsive-template hr.clear {
  clear: both;
}
.new-responsive-template hr.hr--1000px {
  border-top: 1px solid #596e72;
  margin-inline: auto;
  margin-top: 100px;
  margin-bottom: 100px;
  width: 90%;
  max-width: 1000px;
  visibility: inherit;
}
@media screen and (max-width: 767px) {
  .new-responsive-template hr.hr--1000px {
    margin-top: 40px;
    margin-bottom: 40px;
  }
}
.new-responsive-template hr.hr--dashed {
  border-top: 1px dashed #596e72;
  margin-inline: auto;
  margin-top: 100px;
  margin-bottom: 100px;
  width: 90%;
  max-width: 1000px;
  visibility: inherit;
}
@media screen and (max-width: 767px) {
  .new-responsive-template hr.hr--dashed {
    margin-top: 40px;
    margin-bottom: 40px;
  }
}
.new-responsive-template hr.hr--solid {
  border-top: 1px solid #7b8f86;
  visibility: inherit;
}
.new-responsive-template hr.hr--solid.margin_top__small {
  margin-top: 30px;
}
@media screen and (max-width: 767px) {
  .new-responsive-template hr.hr--solid.margin_top__small {
    margin-top: 15px;
  }
}
.new-responsive-template hr.hr--solid.margin_top__small + h4 {
  margin-top: 30px;
}
@media screen and (max-width: 767px) {
  .new-responsive-template hr.hr--solid.margin_top__small + h4 {
    margin-top: 15px;
  }
}
.new-responsive-template span.txt_bold {
  font-weight: 700;
  color: inherit;
}
.new-responsive-template span.radius__bg--rightgreen {
  font-weight: 700;
  color: #00621f;
  padding: 0.4em 1.5em;
  border-radius: 30px;
  background: var(--color-background);
  box-shadow: 10px 10px 10px var(--color-shadow), -10px -10px 10px #fff;
}
.new-responsive-template h2 {
  font-weight: 500;
  font-size: var(--font-size-2xl);
  color: var(--color-text);
}
@media screen and (max-width: 767px) {
  .new-responsive-template h2 {
    font-size: 7.6vw !important;
    line-height: 1.4 !important;
  }
}
.new-responsive-template h2 + p {
  margin-top: var(--space-md);
}
.new-responsive-template h3 {
  font-weight: 500;
  font-size: var(--font-size-xl);
  color: var(--color-text);
  line-height: 1.6;
}
.new-responsive-template h3 p {
  font-weight: inherit;
  font-size: inherit;
  line-height: inherit;
  color: inherit;
}
.new-responsive-template h3 + p, .new-responsive-template h3 + ul, .new-responsive-template h3 + table, .new-responsive-template h3 + ol, .new-responsive-template h3 + dl {
  margin-top: var(--space-sm);
}
.new-responsive-template h3 + h4 {
  margin-top: var(--space-sm);
}
.new-responsive-template h4 {
  font-size: var(--font-size-base);
  font-weight: 700;
}
.new-responsive-template h4 + p {
  margin-top: var(--space-sm);
}
.new-responsive-template ul.list__basic {
  margin-left: 2em;
}
.new-responsive-template ul.list__basic li {
  list-style-type: disc;
}
.new-responsive-template ul.list__basic li::marker {
  color: #aaa;
}
.new-responsive-template ul.list__basic li + li {
  margin-top: 0.4em;
}
.new-responsive-template ul.list__basic li > ul {
  margin-left: 2em;
  margin-bottom: var(--space-sm);
}
.new-responsive-template ul.list__dash li {
  list-style-type: none;
  color: #444;
}
.new-responsive-template ul.list__dash li + li {
  margin-top: 0.3em;
}
.new-responsive-template ul.list__dash li::marker {
  content: "―";
}
.new-responsive-template ul.list__clm2 {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: var(--space-sm);
}
.new-responsive-template ul.list__clm2 li {
  font-size: var(--font-size-sm);
}
.new-responsive-template ul.list__clm2 li + li {
  margin-top: 0 !important;
}
.new-responsive-template ul.list__clm5 {
  display: grid;
  grid-template-columns: repeat(5, 1fr);
  gap: var(--space-sm);
}
.new-responsive-template ul.list__clm5 li {
  font-size: var(--font-size-sm);
}
.new-responsive-template ul.list__clm5 li + li {
  margin-top: 0 !important;
}
.new-responsive-template ul.linkbtn__sideby {
  margin-top: var(--space-md);
  display: flex;
  justify-content: flex-start;
  gap: var(--space-sm);
}
.new-responsive-template ul.linkbtn__sideby + h3 {
  margin-top: var(--space-lg);
}
.new-responsive-template ul.linkbtn__sideby + p {
  margin-top: var(--space-md);
}
.new-responsive-template ul.list__link li {
  margin-left: 1.25em;
  text-indent: -1.25em;
  color: #444;
}
.new-responsive-template ul.list__link li::before {
  content: "";
  display: inline-block;
  background: var(--category-color);
  height: 1.3856406461rem;
  width: 0.75em;
  clip-path: polygon(0 0, 100% 50%, 0 100%);
  margin-right: 0.35em;
  margin-left: 0.15em;
  position: relative;
  top: 0.1rem;
}
.new-responsive-template ul.list__link li a {
  text-decoration: underline;
  text-decoration-color: #033824;
  text-decoration-thickness: 1px;
  opacity: 1;
}
.new-responsive-template ul.list__link li a:hover {
  color: #00ae68;
  text-decoration-color: #00ae68;
  opacity: 1;
}
.new-responsive-template ul.list__link li + li {
  margin-top: 30px;
}
@media screen and (max-width: 767px) {
  .new-responsive-template ul.list__link li + li {
    margin-top: 15px;
  }
}
.new-responsive-template ul.list__link + .common__imgblock, .new-responsive-template ul.list__link + p, .new-responsive-template ul.list__link + h4 {
  margin-top: 40px;
}
@media screen and (max-width: 767px) {
  .new-responsive-template ul.list__link + .common__imgblock, .new-responsive-template ul.list__link + p, .new-responsive-template ul.list__link + h4 {
    margin-top: 20px;
  }
}
.new-responsive-template ul.list__disc {
  list-style: none;
  margin-left: 1.3em;
}
.new-responsive-template ul.list__disc li {
  list-style-type: none;
  position: relative;
  padding-left: calc(1em + 6px);
  color: #333;
}
.new-responsive-template ul.list__disc li::before {
  margin-right: 0.25em;
  content: "";
  display: block;
  position: absolute;
  width: 6px;
  height: 6px;
  min-width: 6px;
  border-radius: 50%;
  background-color: var(--category-color);
  top: calc((1.6em - 3px) / 2);
  left: 0;
}
.new-responsive-template ul.list__disc li + li {
  margin-top: 0.3em;
}
.new-responsive-template ul.list__disc + h2, .new-responsive-template ul.list__disc + h3, .new-responsive-template ul.list__disc + h4, .new-responsive-template ul.list__disc + h5 {
  margin-top: 40px;
}
@media screen and (max-width: 767px) {
  .new-responsive-template ul.list__disc + h2, .new-responsive-template ul.list__disc + h3, .new-responsive-template ul.list__disc + h4, .new-responsive-template ul.list__disc + h5 {
    margin-top: 20px;
  }
}
.new-responsive-template ul.list__disc_color {
  list-style: none;
}
.new-responsive-template ul.list__disc_color li {
  list-style-type: none;
  padding-left: 1.25em;
  text-indent: -1.25em;
  color: #444;
}
.new-responsive-template ul.list__disc_color li::before {
  margin-right: 0.25em;
  content: "●";
  color: var(--category-color);
}
.new-responsive-template ul.list__disc_color li + li {
  margin-top: 0.3em;
}
.new-responsive-template ul.list__square {
  list-style: none;
}
.new-responsive-template ul.list__square li {
  list-style-type: none;
  padding-left: 1.25em;
  text-indent: -1.25em;
}
.new-responsive-template ul.list__square li::before {
  margin-right: 0.25em;
  content: "■";
  color: var(--category-color);
}
.new-responsive-template ul.list__square li + li {
  margin-top: 0.3em;
}
.new-responsive-template ul.list__square_color {
  list-style: none;
}
.new-responsive-template ul.list__square_color li {
  list-style-type: none;
  padding-left: 1.25em;
  text-indent: -1.25em;
  color: #444;
}
.new-responsive-template ul.list__square_color li::before {
  margin-right: 0.25em;
  content: "■";
  color: var(--category-color);
}
.new-responsive-template ul.list__square_color li + li {
  margin-top: 0.3em;
}
.new-responsive-template ul.list__square_color + p {
  margin-top: 20px;
}
@media screen and (max-width: 767px) {
  .new-responsive-template ul.list__square_color + p {
    margin-top: 10px;
  }
}
.new-responsive-template ul.list__dots {
  list-style: none;
}
.new-responsive-template ul.list__dots li {
  list-style-type: none;
  padding-left: 1.25em;
  text-indent: -1.25em;
  color: #444;
}
.new-responsive-template ul.list__dots li::before {
  margin-right: 0.25em;
  content: "・";
  color: var(--category-color);
}
.new-responsive-template ul.list__dots li + li {
  margin-top: 0.3em;
}
.new-responsive-template ul.list__dots_color {
  list-style: none;
}
.new-responsive-template ul.list__dots_color li {
  list-style-type: none;
  padding-left: 1.25em;
  text-indent: -1.25em;
  color: #444;
}
.new-responsive-template ul.list__dots_color li::before {
  margin-right: 0.25em;
  content: "■";
  color: var(--category-color);
}
.new-responsive-template ul.list__dots_color li + li {
  margin-top: 0.3em;
}
.new-responsive-template ul.list__dots_color + p {
  margin-top: 20px;
}
@media screen and (max-width: 767px) {
  .new-responsive-template ul.list__dots_color + p {
    margin-top: 10px;
  }
}
.new-responsive-template ul.list__ball {
  list-style: none;
}
.new-responsive-template ul.list__ball li {
  list-style-type: none;
  padding-left: 1.25em;
  text-indent: -1.25em;
  color: #444;
}
.new-responsive-template ul.list__ball li::before {
  margin-right: 0.5em;
  content: "●";
  color: var(--category-color);
  font-size: 0.6em;
}
.new-responsive-template ul.list__ball li + li {
  margin-top: 0.3em;
}
.new-responsive-template ul.list__expnote {
  margin-left: 1.5em;
}
.new-responsive-template ul.list__expnote li {
  font-size: var(--font-size-xs);
}
.new-responsive-template ul.list__expnote li::marker {
  content: "※";
}
.new-responsive-template ul.list__expnote li + li {
  margin-top: 0.3em;
}
.new-responsive-template ul.list__astarisk {
  margin-left: 1.5em;
}
.new-responsive-template ul.list__astarisk.txt__strong li {
  font-size: var(--font-size-base);
  font-weight: 700;
}
.new-responsive-template ul.list__astarisk li {
  font-size: var(--font-size-xs);
  padding-left: 0.5em;
}
.new-responsive-template ul.list__astarisk li::marker {
  content: "*";
}
.new-responsive-template ul.list__astarisk li + li {
  margin-top: 0.5em;
}
.new-responsive-template ul.list__astarisk + p {
  margin-top: var(--space-md);
}
.new-responsive-template ul.list__strong li {
  font-weight: 700;
}
.new-responsive-template ul.list__large li {
  font-size: var(--font-size-base);
}
.new-responsive-template ul.small li {
  font-size: small;
}
.new-responsive-template ol.list__decimal {
  margin-top: var(--space-sm);
  list-style: none;
  counter-reset: ol_li; /* ol_li カウンタをセットする(値もリセット) */
}
.new-responsive-template ol.list__decimal.monocolor li {
  color: #444;
}
.new-responsive-template ol.list__decimal.monocolor li::before {
  color: #444;
  font-weight: 400;
}
.new-responsive-template ol.list__decimal li {
  list-style-type: none;
  padding-left: 1.75em;
  text-indent: -1.75em;
  color: #444;
}
.new-responsive-template ol.list__decimal li::before {
  margin-right: 0.25em;
  counter-increment: ol_li; /* ol_li カウンタの値に1加える */
  content: counter(ol_li) "."; /* before擬似要素のcontentで出力 */
  width: 1.5em;
  display: inline-block;
  text-align: right;
}
.new-responsive-template ol.list__decimal li + li {
  margin-top: 0.3em;
}
.new-responsive-template ol.list__decimal + .common__imgblock {
  margin-top: 40px;
}
@media screen and (max-width: 767px) {
  .new-responsive-template ol.list__decimal + .common__imgblock {
    margin-top: 20px;
  }
}
.new-responsive-template ol.list__decimal + p {
  margin-top: 20px;
}
@media screen and (max-width: 767px) {
  .new-responsive-template ol.list__decimal + p {
    margin-top: 10px;
  }
}
.new-responsive-template dl.dl__expnote {
  display: grid;
  grid-template-columns: auto 1fr;
  gap: 5px;
  width: 100%; /* または固定の幅 (例: 500px) */
  margin-top: 15px;
}
@media screen and (max-width: 767px) {
  .new-responsive-template dl.dl__expnote {
    margin-top: 8px;
  }
}
.new-responsive-template dl.dl__expnote.txt__center {
  width: fit-content;
  margin-inline: auto;
}
.new-responsive-template dl.dl__expnote.margin_top__middle {
  margin-top: 60px;
}
@media screen and (max-width: 767px) {
  .new-responsive-template dl.dl__expnote.margin_top__middle {
    margin-top: 30px;
  }
}
.new-responsive-template dl.dl__expnote > dt {
  box-sizing: border-box;
}
.new-responsive-template dl.dl__expnote > dt p {
  text-align: right;
  line-height: 1.6;
  font-size: 1.4rem;
}
.new-responsive-template dl.dl__expnote > dd {
  box-sizing: border-box;
  word-wrap: break-word; /* または overflow-wrap: break-word; */
  width: 100%;
  min-width: 0; /* 追加 */
  text-overflow: ellipsis;
}
.new-responsive-template dl.dl__expnote > dd p {
  text-align: left;
  line-height: 1.6;
  font-size: 1.4rem;
  word-wrap: break-word; /* または overflow-wrap: break-word; */
  display: inline-block; /* 追加 */
  text-overflow: ellipsis;
}
.new-responsive-template dl.dl__expnote > dd p a {
  font-size: 1.4rem;
}
.new-responsive-template dl.dl__expnote.history__expnote {
  margin-left: 34rem;
  gap: 15px;
  width: fit-content;
}
@media screen and (max-width: 767px) {
  .new-responsive-template dl.dl__expnote.history__expnote {
    margin-left: 0;
  }
}
.new-responsive-template dl.dl__expnote + .common__accordion, .new-responsive-template dl.dl__expnote + .common__imgblock, .new-responsive-template dl.dl__expnote + .img__area, .new-responsive-template dl.dl__expnote + .common__linkpage, .new-responsive-template dl.dl__expnote + h4, .new-responsive-template dl.dl__expnote + h5 {
  margin-top: 40px;
}
@media screen and (max-width: 767px) {
  .new-responsive-template dl.dl__expnote + .common__accordion, .new-responsive-template dl.dl__expnote + .common__imgblock, .new-responsive-template dl.dl__expnote + .img__area, .new-responsive-template dl.dl__expnote + .common__linkpage, .new-responsive-template dl.dl__expnote + h4, .new-responsive-template dl.dl__expnote + h5 {
    margin-top: 20px;
  }
}
.new-responsive-template dl.dl__expnote + h3 {
  margin-top: 60px;
}
@media screen and (max-width: 767px) {
  .new-responsive-template dl.dl__expnote + h3 {
    margin-top: 30px;
  }
}
.new-responsive-template dl.dl__expnote + .list__link, .new-responsive-template dl.dl__expnote + .ul__basic {
  margin-top: 20px;
}
@media screen and (max-width: 767px) {
  .new-responsive-template dl.dl__expnote + .list__link, .new-responsive-template dl.dl__expnote + .ul__basic {
    margin-top: 10px;
  }
}
.new-responsive-template dl.dl__linknote {
  display: grid;
  grid-template-columns: auto 1fr;
  gap: 5px;
  margin-top: 15px;
}
@media screen and (max-width: 767px) {
  .new-responsive-template dl.dl__linknote {
    margin-top: 8px;
  }
}
.new-responsive-template dl.dl__linknote > dt p {
  text-align: right;
  line-height: 1.6;
  font-size: 1.4rem;
  transform: rotate(90deg);
  color: #00ae68;
}
.new-responsive-template dl.dl__linknote > dd p {
  text-align: left;
  line-height: 1.6;
  font-size: 1.4rem;
}
.new-responsive-template dl.dl__linknote > dd p a {
  font-size: 1.4rem;
}
.new-responsive-template dl.dl__linknote + .common__accordion, .new-responsive-template dl.dl__linknote + .common__imgblock, .new-responsive-template dl.dl__linknote + .img__area, .new-responsive-template dl.dl__linknote + .common__linkpage, .new-responsive-template dl.dl__linknote + h4, .new-responsive-template dl.dl__linknote + h5 {
  margin-top: 40px;
}
@media screen and (max-width: 767px) {
  .new-responsive-template dl.dl__linknote + .common__accordion, .new-responsive-template dl.dl__linknote + .common__imgblock, .new-responsive-template dl.dl__linknote + .img__area, .new-responsive-template dl.dl__linknote + .common__linkpage, .new-responsive-template dl.dl__linknote + h4, .new-responsive-template dl.dl__linknote + h5 {
    margin-top: 20px;
  }
}
.new-responsive-template dl.dl__linknote + h3 {
  margin-top: 60px;
}
@media screen and (max-width: 767px) {
  .new-responsive-template dl.dl__linknote + h3 {
    margin-top: 30px;
  }
}
.new-responsive-template dl.dl__linknote + .list__link, .new-responsive-template dl.dl__linknote + .ul__basic {
  margin-top: 20px;
}
@media screen and (max-width: 767px) {
  .new-responsive-template dl.dl__linknote + .list__link, .new-responsive-template dl.dl__linknote + .ul__basic {
    margin-top: 10px;
  }
}
.new-responsive-template dl.dl__info {
  display: grid;
  grid-template-columns: auto 1fr;
  gap: var(--space-sm);
}
.new-responsive-template dl.dl__info dt p {
  white-space: nowrap;
  text-align: center;
  background-color: #00ae68;
  color: #fff;
  padding: 0.2em 1.2em;
  border-radius: 20px;
}
.new-responsive-template dl.dl__info dd p {
  text-align: left;
  padding: 0.2em 0;
}
.new-responsive-template dl.dl__clm2 {
  display: flex;
  gap: 50px;
}
@media screen and (max-width: 767px) {
  .new-responsive-template dl.dl__clm2 {
    display: grid;
    grid-template-columns: 1fr;
    gap: 50px;
  }
}
.new-responsive-template dl.dl__clm2 > dd.flex1 {
  flex: 1;
}
.new-responsive-template dl.dl__clm2 > dd.flex2 {
  flex: 2;
}
.new-responsive-template dl.dl__clm2 > dd.flex3 {
  flex: 3;
}
.new-responsive-template dl.dl__clm2 > dd.flex4 {
  flex: 4;
}
.new-responsive-template dl.target__dl {
  display: grid;
  grid-template-columns: 1fr 4fr;
  gap: var(--space-sm);
}
.new-responsive-template dl.target__dl .target__title {
  font-size: var(--font-size-lg);
  font-weight: 700;
  color: #00621f;
}
.new-responsive-template dl.target__dl dt p {
  display: block;
  text-align: center;
  padding: 4px 0 5px;
  border-radius: 30px;
  font-weight: 700;
  font-size: var(--font-size-sm);
}
.new-responsive-template dl.target__dl dt p.target1 {
  background: var(--color-background);
  box-shadow: 10px 10px 10px var(--color-shadow), -10px -10px 10px #fff;
  background-color: #d9efe2;
}
.new-responsive-template dl.target__dl dt p.target2 {
  background: var(--color-background);
  box-shadow: 10px 10px 10px var(--color-shadow), -10px -10px 10px #fff;
  background-color: #eee;
}
.new-responsive-template dl.target__dl dd {
  padding: 3px 0;
}
.new-responsive-template dl.target__dl dd ul {
  margin-top: var(--space-sm);
}
.new-responsive-template div.common__img {
  border-radius: var(--border-radius-lg);
  overflow: hidden;
}
.new-responsive-template div.common__img.img__full img {
  width: 100%;
}
.new-responsive-template div.common__img img {
  max-width: 100%;
  height: auto;
}
.new-responsive-template div.common__img + p {
  margin-top: var(--space-md);
}
.new-responsive-template div.img__kakomi {
  border: 1px solid #fff;
  border-radius: var(--border-radius-lg);
  padding: 1.5em;
  text-align: center;
  background: var(--color-background);
  box-shadow: 20px 20px 30px var(--color-shadow), -20px -20px 30px #fff;
}
.new-responsive-template div.img__kakomi.no__shadow {
  box-shadow: none;
  border: 0;
  border-radius: 0;
}
.new-responsive-template div.img__kakomi img + img {
  margin-left: var(--space-unit);
}
.new-responsive-template div.contents__body {
  padding-bottom: var(--space-2xl);
  background-color: var(--color-background);
  box-sizing: border-box;
}
.new-responsive-template div.kakomi__green {
  background-color: #effaf6;
  margin-top: var(--space-md);
  border: 1px solid #ccd8d4;
  border-radius: var(--border-radius-lg);
  padding: 3em 4em;
}
.new-responsive-template div.kakomi__green h4 {
  color: #00ae68;
}
.new-responsive-template div.kakomi__green h4 + p {
  margin-top: var(--space-sm);
}
.new-responsive-template div.kakomi__green p {
  line-height: 1.6;
}
.new-responsive-template div.kakomi__green + h3 {
  margin-top: var(--space-lg);
}
.new-responsive-template div.block__img img {
  max-width: 100%;
  height: auto;
}
.new-responsive-template div.block__kakomi {
  border: 1px solid #fff;
  border-radius: var(--border-radius-lg);
  padding: 4em;
  background: var(--color-background);
  box-shadow: 20px 20px 30px var(--color-shadow), -20px -20px 30px #fff;
}
.new-responsive-template div.block__kakomi + .block__kakomi {
  margin-top: var(--space-lg);
}
.new-responsive-template div.block__clm2 {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: var(--space-md);
}
.new-responsive-template div.block__clm3 {
  display: grid;
  grid-template-columns: 1fr 1fr 1fr;
  gap: var(--space-md);
}
.new-responsive-template div.block__reverse div:nth-of-type(1) {
  order: 2;
}
.new-responsive-template div.block__reverse div:nth-of-type(2) {
  order: 1;
}
.new-responsive-template div.block__clm6_4 {
  display: grid;
  grid-template-columns: 3fr 2fr;
  gap: var(--space-md);
}
.new-responsive-template div.block__clm4_6 {
  display: grid;
  grid-template-columns: 2fr 3fr;
  gap: var(--space-md);
}
.new-responsive-template div.block__clm7_3 {
  display: grid;
  grid-template-columns: 7fr 3fr;
  gap: var(--space-md);
}
.new-responsive-template div.block__clm3_7 {
  display: grid;
  grid-template-columns: 3fr 7fr;
  gap: var(--space-md);
}
.new-responsive-template div.block__linkclm {
  display: grid;
  grid-template-columns: 1fr 1fr 1fr;
  gap: var(--space-md);
}
.new-responsive-template div.block__linkclm.clm2 {
  grid-template-columns: repeat(2, 1fr);
}
.new-responsive-template div.block__linkclm.clm2 .linkclm__element--img {
  height: 250px;
}
.new-responsive-template div.block__linkclm .linkclm__element {
  border-radius: var(--border-radius-lg);
  overflow: hidden;
  background: var(--color-background);
  box-shadow: 10px 10px 10px var(--color-shadow), -10px -10px 10px #fff;
}
.new-responsive-template div.block__linkclm .linkclm__element--img {
  height: 210px;
  overflow: hidden;
  display: flex;
  align-items: center;
  justify-content: center;
}
.new-responsive-template div.block__linkclm .linkclm__element--img.ph__bottom {
  align-items: flex-end;
}
.new-responsive-template div.block__linkclm .linkclm__element--img img {
  width: 100%;
  height: auto;
}
.new-responsive-template div.block__linkclm .linkclm__element--txt {
  padding: var(--space-sm) var(--space-md) var(--space-md);
}
.new-responsive-template div.block__linkclm .linkclm__element--txt p {
  line-height: 1.8;
  overflow: hidden;
  display: -webkit-box;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 4; /* 4行で省略 */
}
.new-responsive-template div.block__linkclm .linkclm__element--txt .link__name {
  font-size: var(--font-size-lg);
  font-weight: 700;
}
.new-responsive-template div.block__linkclm .linkclm__element--txt .link__name + p, .new-responsive-template div.block__linkclm .linkclm__element--txt .link__name + ul {
  margin-top: var(--space-unit);
}
.new-responsive-template div.block__linkclm .linkclm__element--txt .link__ceo_title {
  font-size: var(--font-size-xl);
  font-weight: 700;
  line-height: 1.5;
}
.new-responsive-template div.block__linkclm .linkclm__element--txt .link__ceo_name {
  text-align: right;
}
.new-responsive-template div.block__linkclm .linkclm__element--txt .link__ceo_name .txt__name {
  font-size: var(--font-size-lg);
}
.new-responsive-template div.block__envpolicy {
  border-radius: var(--border-radius-lg);
  overflow: hidden;
  background: var(--color-background);
  box-shadow: 20px 20px 30px var(--color-shadow), -20px -20px 30px #fff;
  margin-top: var(--space-md);
  margin-bottom: var(--space-lg);
}
.new-responsive-template div.block__envpolicy .policy__header {
  display: grid;
  grid-template-columns: 1.3fr 1fr;
}
.new-responsive-template div.block__envpolicy .policy__header--img {
  overflow: hidden;
  height: 400px;
  display: flex;
  align-items: center;
  justify-content: center;
}
.new-responsive-template div.block__envpolicy .policy__header--img img {
  object-fit: cover;
  width: 100%;
  height: 100%;
}
.new-responsive-template div.block__envpolicy .policy__header--txt {
  box-sizing: border-box;
  padding: var(--space-xl) var(--space-lg);
  background-color: rgba(0, 0, 0, 0.05);
  display: flex;
  align-items: center;
}
.new-responsive-template div.block__envpolicy .policy__header--txt .timestamp {
  text-align: right;
}
.new-responsive-template div.block__envpolicy .policy__header--txt .timestamp + p {
  margin-top: var(--space-sm);
}
.new-responsive-template div.block__envpolicy .policy__copy {
  padding: var(--space-lg) var(--space-3xl);
}
.new-responsive-template div.block__envpolicy .policy__copy h3 {
  font-size: var(--font-size-lg);
}
.new-responsive-template div.block__envpolicy .policy__number {
  background-color: #00ae68;
  color: #fff;
  font-family: "Cormorant Infant", serif;
  font-optical-sizing: auto;
  font-style: normal;
  font-weight: 700;
  line-height: 35px;
  font-size: 24px;
  width: 35px;
  height: 35px;
  display: inline-block;
  border-radius: 50%;
  margin-right: 0.5em;
  text-align: center;
  position: relative;
}
.new-responsive-template div.block__envpolicy .policy__number::after {
  content: "";
  position: absolute;
  display: block;
  border-radius: 50%;
  top: 2px;
  left: 2px;
  width: 29px;
  height: 29px;
  border: 1px solid #fff;
}
.new-responsive-template div.block__envpolicy .policy__sign {
  margin-top: var(--space-lg);
  text-align: right;
  mix-blend-mode: multiply;
}
.new-responsive-template div.block__envpolicy .policy__sign img {
  width: 20%;
  mix-blend-mode: multiply;
}
.new-responsive-template div.block__envpolicy .policy__sign p {
  text-align: right;
  margin-top: var(--space-unit);
}
.new-responsive-template div.block__anchorlink {
  width: 100%;
  margin-top: var(--space-lg);
  display: grid;
  grid-template-columns: auto 7fr;
  gap: var(--space-sm);
}
.new-responsive-template div.block__anchorlink .anchorlink__header {
  border-radius: var(--border-radius-md);
  display: flex;
  align-items: center;
  justify-content: center;
  background-color: #fff;
}
.new-responsive-template div.block__anchorlink .anchorlink__header p {
  text-align: center;
  font-family: "Cormorant Infant", serif;
  font-optical-sizing: auto;
  font-style: normal;
  color: #00621f;
  font-size: var(--font-size-xs);
  padding: 0 0.7em;
}
.new-responsive-template div.block__anchorlink .anchorlink__link ul {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: var(--space-sm);
}
.new-responsive-template div.block__anchorlink .anchorlink__link ul li a {
  font-size: var(--font-size-sm);
  padding: 0.2em 0.5em;
  text-decoration: none;
  display: block;
  position: relative;
}
.new-responsive-template div.block__anchorlink .anchorlink__link ul li a::after {
  content: "";
  display: block;
  position: absolute;
  right: 3px;
  bottom: 7px;
  z-index: 10;
  background-image: url("/sustainability/p_assets/img/ic-anchorlink.svg");
  background-repeat: no-repeat;
  background-size: cover;
  width: 16px;
  height: 16px;
}
.new-responsive-template div.block__anchorlink .anchorlink__link ul li a p {
  width: 92%;
  overflow: hidden;
  display: -webkit-box;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 1; /* 1行で省略 */
  font-size: var(--font-size-xs);
}
.new-responsive-template div.block__anchorlink .anchorlink__link ul li a:link, .new-responsive-template div.block__anchorlink .anchorlink__link ul li a:visited {
  transition: all 0.6s ease-in;
  border-bottom: 1px solid #ccc;
}
.new-responsive-template div.block__anchorlink .anchorlink__link ul li a:link p, .new-responsive-template div.block__anchorlink .anchorlink__link ul li a:visited p {
  color: #00621f;
  transition: all 0.6s ease-in;
}
.new-responsive-template div.block__anchorlink .anchorlink__link ul li a:hover {
  transition: all 0.2s ease-in;
  border-bottom: 1px solid #00ae68;
}
.new-responsive-template div.block__anchorlink .anchorlink__link ul li a:hover p {
  color: #00ae68;
  transition: all 0.2s ease-in;
}
.new-responsive-template div.block__rightslink {
  border-top: 1px solid #ccc;
}
.new-responsive-template div.block__rightslink--elements {
  border-bottom: 1px solid #ccc;
  padding: var(--space-md) 0;
  display: grid;
  grid-template-columns: 1fr 3.5fr;
  gap: var(--space-md);
}
.new-responsive-template div.block__rightslink--elements .elements__ph .common__img {
  height: 100%;
  display: flex;
  align-items: center;
  overflow: hidden;
}
.new-responsive-template div.block__rightslink--elements .elements__ph .common__img img {
  object-fit: cover;
  height: 100%;
}
.new-responsive-template div.block__table {
  width: 100%;
  margin-top: var(--space-lg);
}
.new-responsive-template div.top__purpose__clm {
  display: grid;
  grid-template-columns: 1fr 1.5fr;
  gap: var(--space-lg);
}
@media screen and (max-width: 767px) {
  .new-responsive-template div.top__purpose__clm {
    grid-template-columns: 1fr;
    gap: var(--space-md);
  }
}
.new-responsive-template div.top__purpose__clm__link {
  margin-top: var(--space-md);
  display: grid;
  grid-template-columns: 320px 320px;
  gap: var(--space-sm);
}
@media screen and (max-width: 1100px) {
  .new-responsive-template div.top__purpose__clm__link {
    grid-template-columns: 210px 210px;
  }
}
@media screen and (max-width: 767px) {
  .new-responsive-template div.top__purpose__clm__link {
    grid-template-columns: 1fr;
    gap: var(--space-md);
  }
}
@media screen and (max-width: 767px) {
  .new-responsive-template div.top__purpose__clm + .top__purpose__link {
    margin-top: 80px;
  }
}
.new-responsive-template div.top__purpose__link {
  box-sizing: border-box;
  margin-top: var(--space-lg);
}
.new-responsive-template div.top__purpose__link + .top__purpose__link {
  margin-top: var(--space-3xl);
}
.new-responsive-template div.top__purpose__link.link__ceo > a {
  display: block;
  border-radius: 15px;
  overflow: hidden;
  position: relative;
}
@media screen and (max-width: 767px) {
  .new-responsive-template div.top__purpose__link.link__ceo > a {
    border-radius: 10px;
    width: 100%;
    overflow: visible;
    position: static;
  }
}
.new-responsive-template div.top__purpose__link.link__ceo > a:hover {
  opacity: 0.8;
}
.new-responsive-template div.top__purpose__link.link__cso > a {
  display: grid;
  grid-template-columns: 40% auto;
  gap: var(--space-lg);
  border-radius: 15px;
}
@media screen and (max-width: 767px) {
  .new-responsive-template div.top__purpose__link.link__cso > a {
    grid-template-columns: 1fr;
    gap: var(--space-md);
  }
}
.new-responsive-template div.top__purpose__link.link__cso > a:link, .new-responsive-template div.top__purpose__link.link__cso > a:visited {
  transition: all 0.2s ease-out;
}
.new-responsive-template div.top__purpose__link.link__cso > a:hover {
  opacity: 0.8;
  background-color: #cdddd4;
  transition: all 0.8s ease-out;
}
.new-responsive-template div.top__purpose__link__ceo__ph {
  aspect-ratio: 1275/500;
}
.new-responsive-template div.top__purpose__link__ceo__ph .wrapper {
  width: 100%;
  border-radius: 20px;
  overflow: hidden;
  display: flex;
  align-items: center;
  justify-content: center;
}
@media screen and (max-width: 767px) {
  .new-responsive-template div.top__purpose__link__ceo__ph .wrapper {
    box-sizing: border-box;
    position: relative;
    height: 150px;
    border-radius: 10px;
  }
}
.new-responsive-template div.top__purpose__link__ceo__ph .wrapper img {
  width: 100%;
}
@media screen and (max-width: 767px) {
  .new-responsive-template div.top__purpose__link__ceo__ph .wrapper img {
    width: auto;
    height: 128%;
    transform: translate(-3%, 11%);
  }
}
.new-responsive-template div.top__purpose__link__ceo__text {
  height: calc(100% - 80px);
  width: 55%;
  margin-top: 40px;
  margin-left: 60px;
  display: flex;
  align-items: center;
  position: absolute;
  top: 0;
}
@media screen and (max-width: 767px) {
  .new-responsive-template div.top__purpose__link__ceo__text {
    display: block;
    position: static;
    margin-top: var(--space-sm);
    margin-left: 0;
    width: 100%;
  }
}
.new-responsive-template div.top__purpose__link__ceo__text.text__ceo p {
  color: #fff;
  text-shadow: 0 1px 15px rgba(0, 117, 163, 0.6), 0 1px 2px rgb(20, 18, 69);
}
@media screen and (max-width: 767px) {
  .new-responsive-template div.top__purpose__link__ceo__text.text__ceo p {
    color: var(--color-text);
    text-shadow: none;
  }
}
.new-responsive-template div.top__purpose__link__ceo__text .officer__name::after {
  content: "";
  width: 236px;
  height: 66px;
  display: inline-block;
  background-image: url("/sustainability/img/img_ceosign.png");
  background-size: cover;
  background-repeat: no-repeat;
  position: absolute;
  left: 17em;
  top: 0;
}
@media screen and (max-width: 767px) {
  .new-responsive-template div.top__purpose__link__cso {
    width: 100%;
  }
}
.new-responsive-template div.top__purpose__link__cso__ph {
  box-sizing: border-box;
}
.new-responsive-template div.top__purpose__link__cso__ph .wrapper {
  width: 100%;
  border-radius: 20px;
  overflow: hidden;
  display: flex;
  align-items: center;
  justify-content: center;
}
@media screen and (max-width: 767px) {
  .new-responsive-template div.top__purpose__link__cso__ph .wrapper {
    box-sizing: border-box;
    position: relative;
    height: 150px;
    border-radius: 10px;
  }
}
.new-responsive-template div.top__purpose__link__cso__ph .wrapper img {
  max-height: 320px;
  transform: translateX(-20%);
}
@media screen and (max-width: 767px) {
  .new-responsive-template div.top__purpose__link__cso__ph .wrapper img {
    max-height: 150px;
    position: absolute;
    transform: translateX(-5%);
  }
}
.new-responsive-template div.top__purpose__link__cso__text {
  display: flex;
  align-items: center;
}
.new-responsive-template div.top__purpose__link__spname {
  display: none;
}
@media screen and (max-width: 767px) {
  .new-responsive-template div.top__purpose__link__spname {
    background-color: rgba(0, 0, 0, 0.6);
    position: absolute;
    top: 0;
    left: 0;
    width: 42%;
    height: 150px;
    z-index: 10;
    display: inherit;
  }
  .new-responsive-template div.top__purpose__link__spname .officer__name {
    display: block !important;
    position: absolute !important;
    top: auto;
    bottom: 2em;
    left: 2em;
  }
  .new-responsive-template div.top__purpose__link__spname .officer__name.ceo__name {
    bottom: 1.5em;
  }
  .new-responsive-template div.top__purpose__link__spname .officer__name.ceo__name::after {
    content: "";
    width: 100px;
    height: 30px;
    display: inline-block;
    background-image: url("/sustainability/img/img_ceosign_fff.png");
    background-size: cover;
    background-repeat: no-repeat;
    margin-top: var(--space-unit);
  }
  .new-responsive-template div.top__purpose__link__spname .officer__name p {
    color: #fff;
  }
  .new-responsive-template div.top__purpose__link__spname .officer__name p + p {
    margin-top: 0;
  }
  .new-responsive-template div.top__purpose__link__spname .officer__name p.officer__name__name {
    display: block;
  }
}
.new-responsive-template div.top__purpose__link .officer__subtitle {
  font-size: 30px;
  line-height: 1.6;
}
@media screen and (max-width: 1100px) {
  .new-responsive-template div.top__purpose__link .officer__subtitle {
    font-size: 20px;
  }
}
@media screen and (max-width: 767px) {
  .new-responsive-template div.top__purpose__link .officer__subtitle {
    font-size: 15px;
  }
  .new-responsive-template div.top__purpose__link .officer__subtitle::after {
    content: "";
    display: inline-block;
    width: 14px;
    height: 14px;
    background-image: url("/sustainability/img/ic-arr_up.png");
    background-repeat: no-repeat;
    background-position: center center;
    margin-left: 0.3em;
    position: relative;
    top: 3px;
    transform: rotate(90deg);
  }
}
.new-responsive-template div.top__purpose__link .officer__title {
  font-size: clamp(3rem, 2.5vw + 2rem, 4rem);
  line-height: 1.4;
  font-weight: 500;
  margin-top: var(--space-unit);
}
@media screen and (max-width: 1100px) {
  .new-responsive-template div.top__purpose__link .officer__title {
    font-size: 26px;
  }
}
@media screen and (max-width: 767px) {
  .new-responsive-template div.top__purpose__link .officer__title {
    font-size: 19px;
  }
}
.new-responsive-template div.top__purpose__link .officer__name {
  margin-top: var(--space-lg);
  position: relative;
}
@media screen and (max-width: 767px) {
  .new-responsive-template div.top__purpose__link .officer__name {
    display: none;
  }
}
.new-responsive-template div.top__purpose__link .officer__name__post {
  font-size: 18px;
  line-height: 1.4;
}
@media screen and (max-width: 1100px) {
  .new-responsive-template div.top__purpose__link .officer__name__post {
    font-size: 15px;
  }
}
@media screen and (max-width: 767px) {
  .new-responsive-template div.top__purpose__link .officer__name__post {
    font-size: 12px;
  }
}
.new-responsive-template div.top__purpose__link .officer__name__name {
  font-size: 32px;
  line-height: 1.4;
  font-weight: 500;
  margin-top: var(--space-unit);
}
@media screen and (max-width: 1100px) {
  .new-responsive-template div.top__purpose__link .officer__name__name {
    font-size: 22px;
  }
}
@media screen and (max-width: 767px) {
  .new-responsive-template div.top__purpose__link .officer__name__name {
    font-size: 18px;
  }
}
.new-responsive-template div.top__total__img {
  margin-top: var(--space-md);
}
.new-responsive-template div.top__total__img img {
  width: 100%;
  height: auto;
}
.new-responsive-template div.top__total__link {
  margin-top: var(--space-md);
  display: flex;
  gap: var(--space-sm);
  justify-content: center;
}
@media screen and (max-width: 767px) {
  .new-responsive-template div.top__total__link {
    display: grid;
    grid-template-columns: 1fr;
  }
}
.new-responsive-template div.top__total__link > div {
  width: 320px;
}
@media screen and (max-width: 767px) {
  .new-responsive-template div.top__total__link > div {
    width: 100%;
  }
}
.new-responsive-template div.top__ir {
  border: 1px solid #ccc;
  border-radius: 16px;
  box-sizing: border-box;
  padding: 40px;
  display: grid;
  grid-template-columns: auto 340px;
  gap: var(--space-md);
}
@media screen and (max-width: 767px) {
  .new-responsive-template div.top__ir {
    display: grid;
    grid-template-columns: 1fr;
    padding: 25px;
  }
}
.new-responsive-template div.top__ir__button {
  display: flex;
  align-items: center;
  justify-content: initial;
}
.new-responsive-template div.top__ir__button > div {
  display: block;
  width: 100%;
}
.new-responsive-template div.kakomi__element--img {
  display: flex;
  align-items: center;
  justify-content: center;
}
.new-responsive-template div.kakomi__element--img div {
  width: 100%;
}
.new-responsive-template div.manamgent__cso {
  display: grid;
  grid-template-columns: 2fr 3fr;
  gap: var(--space-lg);
}
.new-responsive-template div.manamgent__cso .cso__element--ph img {
  width: 100%;
  height: auto;
  border-radius: var(--border-radius-lg);
}
.new-responsive-template div.manamgent__cso .cso__element--txt {
  display: flex;
  align-items: center;
}
.new-responsive-template div.manamgent__cso .cso__element--txt p {
  line-height: 2;
  font-weight: 700;
  font-size: var(--font-size-base);
  font-family: "Noto Serif JP", serif;
  font-weight: 100;
}
.new-responsive-template div.manamgent__cso .cso__element--txt p.ceo__name {
  text-align: right;
  font-weight: 400;
  line-height: 1.6;
}
.new-responsive-template div.manamgent__cso .cso__element--txt p.ceo__name .name__txt {
  font-size: var(--font-size-lg);
  font-family: "Noto Serif JP", serif;
  font-weight: 100;
  font-weight: 700;
}
.new-responsive-template div.communityinvestment__torikumi {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: var(--space-md);
}
.new-responsive-template div.message__title {
  border-radius: var(--border-radius-lg);
  height: 400px;
  display: flex;
  align-items: center;
}
.new-responsive-template div.message__title .title__inner {
  width: 90%;
  margin-inline: auto;
}
.new-responsive-template div.message__title .title__name {
  font-weight: 500;
  line-height: 1.6;
  font-size: var(--font-size-lg);
  color: #fff;
  text-shadow: 0 1px 15px rgba(0, 117, 163, 0.6), 0 1px 2px rgb(20, 18, 69);
}
.new-responsive-template div.message__title .title__name .txt__name {
  font-size: var(--font-size-xl);
}
.new-responsive-template div.message__title h2 {
  font-size: var(--font-size-2xl);
  margin-top: 0;
  line-height: 1.5;
  color: #fff;
  text-shadow: 0 1px 15px rgba(0, 117, 163, 0.6), 0 1px 2px rgb(20, 18, 69);
}
.new-responsive-template div.message__title h2::before {
  content: "";
  margin-right: 0;
}
.new-responsive-template div.message__title.title--cso {
  background-image: url("/sustainability/strategy/ceo_message/img/title-ph_cso.jpg");
  background-size: cover;
  background-repeat: no-repeat;
}
.new-responsive-template div.w10 {
  width: 10%;
}
.new-responsive-template div.w20 {
  width: 20%;
}
.new-responsive-template div.w30 {
  width: 30%;
}
.new-responsive-template div.w40 {
  width: 40%;
}
.new-responsive-template div.w50 {
  width: 50%;
}
.new-responsive-template div.w60 {
  width: 60%;
}
.new-responsive-template div.w70 {
  width: 70%;
}
.new-responsive-template div.w80 {
  width: 80%;
}
.new-responsive-template div.w90 {
  width: 90%;
}
.new-responsive-template div.w100 {
  width: 100%;
}
.new-responsive-template section.top__section {
  margin-top: var(--space-2xl);
  padding: var(--space-2xl) 0;
}
.new-responsive-template section.top__section.top__purpose {
  margin-top: 0;
}
.new-responsive-template section.top__section.link__ir {
  margin-top: var(--space-lg) !important;
  padding-top: 0 !important;
}
.new-responsive-template section.top__section .section__inner {
  padding: 0 54px;
  max-width: 1600px;
  margin-inline: auto;
  box-sizing: border-box;
}
@media screen and (max-width: 767px) {
  .new-responsive-template section.top__section .section__inner {
    width: 87.2vw;
    margin-inline: auto;
    padding: 0;
  }
}
.new-responsive-template section.top__section .section__inner.section__fullsize {
  width: 100%;
  margin: 0 auto;
}
.new-responsive-template section.top__section .section__inner .page-section-h2-box + p {
  margin-top: var(--space-sm);
}
.new-responsive-template section.top__section + .top__section {
  margin-top: 0;
}
.new-responsive-template section.top__innersection {
  padding: 80px;
  border-radius: 40px;
  background-color: #fff;
  box-shadow: var(--shadow-lg);
  width: fit-content;
  margin-inline: auto;
}
.new-responsive-template .txt__center {
  text-align: center;
}
.new-responsive-template .txt__left {
  text-align: left;
}
.new-responsive-template .txt__right {
  text-align: right;
}
@media screen and (max-width: 767px) {
  .new-responsive-template .txt__right.sp__left {
    text-align: left;
  }
}
.new-responsive-template .txt__small {
  font-size: 1.4rem;
}
.new-responsive-template span.disc__green {
  color: #00ae68;
}
.new-responsive-template span.disc__blue {
  color: #229eda;
}
.new-responsive-template span.disc__orange {
  color: #f18d00;
}
.new-responsive-template img.w10 {
  width: 10%;
}
.new-responsive-template img.w20 {
  width: 20%;
}
.new-responsive-template img.w30 {
  width: 30%;
}
.new-responsive-template img.w40 {
  width: 40%;
}
.new-responsive-template img.w50 {
  width: 50%;
}
.new-responsive-template img.w60 {
  width: 60%;
}
.new-responsive-template img.w70 {
  width: 70%;
}
.new-responsive-template img.w80 {
  width: 80%;
}
.new-responsive-template img.w90 {
  width: 90%;
}
.new-responsive-template img.w100 {
  width: 100%;
}
.new-responsive-template img.img__multiply {
  mix-blend-mode: multiply;
}
.new-responsive-template img.svg__shadow {
  filter: drop-shadow(0px 1px 5px rgba(0, 0, 0, 0.3));
}
.new-responsive-template img.bg__white {
  background-color: #fff;
}
.new-responsive-template img.effort__community_investment_art {
  background-color: #fff;
}
.new-responsive-template .l-header p,
.new-responsive-template .l-footer p,
.new-responsive-template .l-breadcrumb p {
  margin: 0;
  line-height: 1.5;
}
.new-responsive-template .common__link {
  text-align: center;
}
.new-responsive-template .common__child--title .section__inner {
  padding: 0 54px;
  max-width: 1600px;
  margin-inline: auto;
  box-sizing: border-box;
}
@media screen and (max-width: 767px) {
  .new-responsive-template .common__child--title .section__inner {
    width: 87.2vw;
    margin-inline: auto;
    padding: 0;
  }
}
.new-responsive-template .common__child--title .section__inner .h1__sub {
  font-size: var(--font-size-base);
}
.new-responsive-template .common__child--title .section__inner h1 {
  font-size: var(--font-size-2xl);
  margin-top: var(--space-sm);
  line-height: 1.5;
}
.new-responsive-template .common__contents {
  background-repeat: no-repeat;
  background-size: 100% auto;
  background-position: top center;
  padding: var(--space-lg) 0;
}
.new-responsive-template .common__contents h2 {
  color: #033824;
  font-size: var(--font-size-xl);
  margin-top: var(--space-3xl);
  position: relative;
  z-index: 10;
  font-feature-settings: "palt";
}
.new-responsive-template .common__contents h2::marker {
  content: "●";
}
.new-responsive-template .common__contents h2::before {
  content: "●";
  font-size: 11px;
  margin-right: 0.8em;
  vertical-align: middle;
  background-color: #033824;
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
  position: relative;
  top: -2px;
}
.new-responsive-template .common__contents h2 + h3 {
  margin-top: var(--space-sm);
}
.new-responsive-template .common__contents h3 {
  font-size: var(--font-size-lg);
}
.new-responsive-template .common__contents .section__inner {
  padding: 0 54px;
  max-width: 1600px;
  margin-inline: auto;
  box-sizing: border-box;
}
@media screen and (max-width: 767px) {
  .new-responsive-template .common__contents .section__inner {
    width: 87.2vw;
    margin-inline: auto;
    padding: 0;
  }
}
.new-responsive-template .common__contents .section__inner.w90 {
  width: 90%;
  max-width: 1158px;
  margin-inline: auto;
}
.new-responsive-template .common__contents p a:link, .new-responsive-template .common__contents p a:visited {
  color: inherit;
}
.new-responsive-template .common__contents p a:hover {
  color: #00ae68;
}
.new-responsive-template .common__contents p + p {
  margin-top: var(--space-sm);
}
.new-responsive-template .common__read p + p {
  margin-top: var(--space-sm);
}
.new-responsive-template .common__body {
  margin-top: 100px;
}
@media screen and (max-width: 767px) {
  .new-responsive-template .common__body {
    margin-top: 50px;
  }
}
.new-responsive-template .common__body {
  width: 100%;
}
@media screen and (max-width: 767px) {
  .new-responsive-template .common__body {
    width: 90%;
    margin-inline: auto;
  }
}
.new-responsive-template .common__body h2 {
  font-size: clamp(21px, 0.87vw + 21px, 32px);
  font-weight: 700;
  line-height: 1.4;
  background-color: var(--category-color);
  color: #fff;
  width: 95%;
  max-width: 1258px;
  margin-inline: auto;
  text-align: center;
  box-sizing: border-box;
  padding: 1rem 1rem 1.2rem;
}
@media screen and (max-width: 767px) {
  .new-responsive-template .common__body h2 {
    text-align: left;
    font-size: 2.3rem;
  }
}
.new-responsive-template .common__body h2 + .common__accordion {
  margin-top: 60px;
}
@media screen and (max-width: 767px) {
  .new-responsive-template .common__body h2 + .common__accordion {
    margin-top: 30px;
  }
}
.new-responsive-template .common__body h2.color__gray {
  color: #596e72;
}
.new-responsive-template .common__body h2.bg_color__domain_tobacco {
  background-color: #17825c;
}
.new-responsive-template .common__body h2.bg_color__domain_processfood {
  background-color: #ec8427;
}
.new-responsive-template .common__body p + h3, .new-responsive-template .common__body p + h4, .new-responsive-template .common__body p + h5 {
  margin-top: 30px;
}
@media screen and (max-width: 767px) {
  .new-responsive-template .common__body p + h3, .new-responsive-template .common__body p + h4, .new-responsive-template .common__body p + h5 {
    margin-top: 15px;
  }
}
.new-responsive-template .common__body dl.body__clm {
  display: flex;
  gap: 50px;
}
@media screen and (max-width: 767px) {
  .new-responsive-template .common__body dl.body__clm {
    display: grid;
    grid-template-columns: 1fr;
    gap: 20px;
  }
}
.new-responsive-template .common__body dl.body__clm > dd {
  box-sizing: border-box;
}
.new-responsive-template .common__body dl.body__clm > dd img {
  width: 100%;
  height: auto;
}
.new-responsive-template .common__body dl.body__clm > dd.flex1 {
  flex: 1;
}
.new-responsive-template .common__body dl.body__clm > dd.flex2 {
  flex: 2;
}
.new-responsive-template .common__body dl.body__clm > dd.flex3 {
  flex: 3;
}
.new-responsive-template .common__body dl.body__clm > dd.flex4 {
  flex: 4;
}
@media screen and (max-width: 767px) {
  .new-responsive-template .common__body dl.body__clm > dd.dlab__takeda {
    width: 70%;
    margin-inline: auto;
  }
}
.new-responsive-template .common__body__inner {
  width: 95%;
  max-width: 1258px;
  margin-inline: auto;
  margin-top: 60px;
}
@media screen and (max-width: 767px) {
  .new-responsive-template .common__body__inner {
    margin-top: 30px;
  }
}
.new-responsive-template .common__body__inner + .common__accordion {
  margin-top: 100px;
}
@media screen and (max-width: 767px) {
  .new-responsive-template .common__body__inner + .common__accordion {
    margin-top: 50px;
  }
}
.new-responsive-template .common__body__inner.bg__community {
  background-color: rgb(237.1951219512, 243.2926829268, 216.7073170732);
  border-radius: 15px;
  box-sizing: border-box;
  padding: 0;
}
.new-responsive-template .common__body__inner.bg__community .bg__community__inner {
  padding: 2.5rem 2.5rem 5rem;
}
.new-responsive-template .common__body__inner > .common__accordion {
  width: 100% !important;
}
.new-responsive-template .common__body__inner + a.anchorpoint {
  margin-top: 100px;
}
@media screen and (max-width: 767px) {
  .new-responsive-template .common__body__inner + a.anchorpoint {
    margin-top: 50px;
  }
}
.new-responsive-template .common__body__inner + a.anchorpoint {
  display: block;
}
.new-responsive-template .common__body__inner h2 {
  font-weight: 700;
}
.new-responsive-template .common__body__inner h2.h2__nobg {
  background-color: transparent;
  color: var(--category-color);
  text-align: left;
  padding: 0;
  width: 100%;
}
.new-responsive-template .common__body__inner h2.h2__nobg + .contents__read {
  margin-top: 30px;
}
@media screen and (max-width: 767px) {
  .new-responsive-template .common__body__inner h2.h2__nobg + .contents__read {
    margin-top: 15px;
  }
}
.new-responsive-template .common__body__inner h2.color__gray {
  color: #596e72;
}
.new-responsive-template .common__body__inner h2.line__h2 {
  border-top: 1px solid #849d30;
  border-left: 10px solid var(--category-color);
  font-size: clamp(21px, 0.87vw + 21px, 32px);
  color: #444;
  padding: 1rem 1.5rem;
  box-sizing: border-box;
  line-height: 1.4;
}
.new-responsive-template .common__body__inner h2.line__h2 + .txt__paragraph {
  margin-top: 30px;
}
@media screen and (max-width: 767px) {
  .new-responsive-template .common__body__inner h2.line__h2 + .txt__paragraph {
    margin-top: 15px;
  }
}
.new-responsive-template .common__body__inner h2.communityinvestment__h2 {
  color: #fff;
  background-color: #8bae32;
  width: 100%;
  font-size: x-large;
  line-height: 1.1;
}
@media screen and (max-width: 767px) {
  .new-responsive-template .common__body__inner h2.communityinvestment__h2 {
    font-size: large;
    text-align: center;
  }
}
.new-responsive-template .common__body__inner h3 {
  color: var(--category-color);
  font-size: clamp(19px, 0.87vw + 21px, 28px);
  line-height: 1.4;
  font-weight: 700;
}
.new-responsive-template .common__body__inner h3.h3__black {
  color: #444;
}
.new-responsive-template .common__body__inner h4 {
  color: var(--category-color);
  font-size: clamp(17px, 0.4vw + 17px, 22px);
  line-height: 1.4;
  font-weight: 700;
}
.new-responsive-template .common__body__inner h5 {
  font-size: clamp(16px, 0.32vw + 16px, 20px);
  line-height: 1.6;
  color: var(--category-color);
  font-weight: 500;
}
.new-responsive-template .common__body__inner h5 + * {
  margin-top: 15px;
}
@media screen and (max-width: 767px) {
  .new-responsive-template .common__body__inner h5 + * {
    margin-top: 8px;
  }
}
.new-responsive-template .common__body__inner + .common__body__inner {
  margin-top: 100px;
}
@media screen and (max-width: 767px) {
  .new-responsive-template .common__body__inner + .common__body__inner {
    margin-top: 50px;
  }
}
.new-responsive-template .common__body .common__accordion {
  width: 95%;
  max-width: 1258px;
  margin-inline: auto;
}
.new-responsive-template .common__body .common__accordion h3 {
  color: #00ae68;
  font-size: clamp(19px, 0.87vw + 21px, 28px);
  line-height: 1.4;
  font-weight: 400;
}
.new-responsive-template .common__body .common__accordion h3 > .sub__txt {
  font-size: 80%;
  font-weight: 500;
  color: inherit;
}
.new-responsive-template .common__body .common__accordion h3 .h3__sub {
  color: transparent;
}
.new-responsive-template .common__body .common__accordion h3.h3__black {
  color: #444;
}
.new-responsive-template .common__body .common__accordion h3.cso__h3 {
  color: #509032;
}
.new-responsive-template .common__body .common__accordion h3.cfo__h3 {
  color: #509032;
}
.new-responsive-template .common__body .common__accordion h3.link__h3 {
  background-color: var(--category-color);
  font-size: clamp(17px, 0.4vw + 17px, 20px);
  color: #fff;
  text-align: center;
  line-height: 1.1;
  padding: 2px 0 4px;
  box-sizing: border-box;
  font-weight: 700;
  letter-spacing: 1px;
}
.new-responsive-template .common__body .common__accordion h3.control_sys__h3 {
  color: #009b96;
  font-size: clamp(17px, 0.4vw + 17px, 20px);
  line-height: 1.4;
  font-weight: 500;
}
.new-responsive-template .common__body .common__accordion h3.skillmatrix__h3 {
  color: #111;
  font-size: clamp(17px, 0.4vw + 17px, 22px);
  line-height: 1.4;
  font-weight: 500;
}
.new-responsive-template .common__body .common__accordion h3.pharmaceutical__h3 {
  color: #229eda;
}
.new-responsive-template .common__body .common__accordion h3.law__h3 {
  color: #4aa6b6;
}
.new-responsive-template .common__body .common__accordion h4 {
  color: var(--category-color);
  font-size: clamp(17px, 0.4vw + 17px, 22px);
  line-height: 1.4;
  font-weight: 700;
}
.new-responsive-template .common__body .common__accordion .category__kakomi .ceo__message__theme6 {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 10px 8px;
  margin-top: 30px;
}
@media screen and (max-width: 767px) {
  .new-responsive-template .common__body .common__accordion .category__kakomi .ceo__message__theme6 {
    margin-top: 15px;
  }
}
@media screen and (max-width: 767px) {
  .new-responsive-template .common__body .common__accordion .category__kakomi .ceo__message__theme6 {
    grid-template-columns: repeat(1, 1fr);
  }
}
.new-responsive-template .common__body .common__accordion .category__kakomi .ceo__message__theme6 > dd {
  border: 2px solid var(--category-color);
  text-align: center;
  color: #444;
  box-sizing: border-box;
  padding: 1rem 1.5rem;
  background-color: #fff;
  font-size: clamp(16px, 0.64vw + 16px, 20px);
}
.new-responsive-template .common__body .common__accordion .common__contentsblock__indent {
  margin-left: 3.5em;
}
.new-responsive-template .common__body .common__accordion + .common__accordion {
  margin-top: 80px;
}
@media screen and (max-width: 767px) {
  .new-responsive-template .common__body .common__accordion + .common__accordion {
    margin-top: 40px;
  }
}
@media screen and (max-width: 767px) {
  .new-responsive-template .common__body .common__accordion.accordion__close {
    max-height: 360px;
    overflow: hidden;
    position: relative;
    box-sizing: border-box;
  }
  .new-responsive-template .common__body .common__accordion.accordion__close > .common__accordion__state {
    position: absolute;
    left: 0;
    bottom: 0;
    box-sizing: border-box;
    width: 100%;
    height: 15rem;
    padding-top: 2rem;
    background: linear-gradient(to bottom, transparent 0%, #ffffff 70%);
    display: flex;
    align-items: flex-end;
  }
  .new-responsive-template .common__body .common__accordion.accordion__close > .common__accordion__state.accordion__bggreen {
    background: linear-gradient(to bottom, transparent 0%, #eef3da 70%);
  }
}
.new-responsive-template .common__body .common__accordion > .common__accordion__state {
  box-sizing: border-box;
  margin-top: 40px;
}
@media screen and (max-width: 767px) {
  .new-responsive-template .common__body .common__accordion > .common__accordion__state {
    margin-top: 20px;
  }
}
.new-responsive-template .common__body .common__accordion > .common__accordion__state {
  display: none;
}
@media screen and (max-width: 767px) {
  .new-responsive-template .common__body .common__accordion > .common__accordion__state {
    display: inherit;
  }
}
.new-responsive-template .common__body .common__accordion > .common__accordion__state ul {
  width: 100%;
  text-align: center;
}
.new-responsive-template .common__body .common__accordion > .common__accordion__state ul li img {
  max-width: 50px;
  width: 20%;
  height: auto;
}
.new-responsive-template .common__body .common__accordion > .common__accordion__state ul li.state__close {
  display: inherit;
}
.new-responsive-template .common__body .common__accordion > .common__accordion__state ul li.state__open {
  display: none;
}
.new-responsive-template .common__body .common__accordion > .common__accordion__state.close ul li.state__close {
  display: none;
}
.new-responsive-template .common__body .common__accordion > .common__accordion__state.close ul li.state__open {
  display: inherit;
}
.new-responsive-template .common__body .common__accordion + h2 {
  margin-top: 100px;
}
@media screen and (max-width: 767px) {
  .new-responsive-template .common__body .common__accordion + h2 {
    margin-top: 50px;
  }
}
.new-responsive-template .common__body .common__accordion + .hr--solid {
  margin-top: 60px;
}
@media screen and (max-width: 767px) {
  .new-responsive-template .common__body .common__accordion + .hr--solid {
    margin-top: 30px;
  }
}
@keyframes purposeAnime {
  from {
    filter: blur(10px);
    transform: scale(1.02);
    opacity: 0;
  }
  to {
    filter: blur(0);
    transform: scale(1);
    opacity: 1;
  }
}
.new-responsive-template div[data-config*="sitemap.html"] {
  display: inherit;
}
.new-responsive-template .report2025__sitemap {
  width: 100%;
  position: fixed;
  bottom: 0;
  top: 0;
  left: 0;
  z-index: 100001;
  visibility: hidden;
  opacity: 0;
  display: flex;
  align-items: center;
  background-color: rgba(194, 209, 203, 0.95);
  transition: 0.3s;
}
.new-responsive-template .report2025__sitemap.open {
  opacity: 1;
  visibility: visible;
}
.new-responsive-template .report2025__sitemap .sitemap_inner {
  display: block !important;
}
.new-responsive-template .report2025__sitemap .btn-close {
  display: block !important;
}
.new-responsive-template .report2025__sitemap .btn-open {
  display: none;
}
.new-responsive-template .report2025__sitemap .sitemap-close {
  cursor: pointer;
}
.new-responsive-template .report2025__sitemap .btn-close {
  width: 154px;
  position: absolute;
  right: 1em;
  bottom: 2em;
  display: none;
}
.new-responsive-template .report2025__sitemap .btn-close img {
  width: 100%;
  height: auto;
}
.new-responsive-template .report2025__sitemap__opener {
  position: absolute;
  bottom: 20px;
  right: 20px;
  width: 150px;
  display: flex;
  justify-content: flex-end;
  z-index: 999;
}
@media screen and (max-width: 767px) {
  .new-responsive-template .report2025__sitemap__opener {
    display: none;
  }
}
.new-responsive-template .report2025__sitemap__opener.is-floating {
  position: fixed;
}
.new-responsive-template .report2025__sitemap__opener .sitemap-opener {
  cursor: pointer;
  background-color: #056740;
  border-radius: 40px;
  overflow: hidden;
  padding: 3px 15px 3px 8px;
  transition: all 0.8s ease;
}
.new-responsive-template .report2025__sitemap__opener .sitemap-opener:hover {
  filter: brightness(1.5);
  transition: all 0.2s ease;
}
.new-responsive-template .report2025__sitemap__opener .sitemap-opener dl {
  display: grid;
  grid-template-columns: auto 1fr;
}
.new-responsive-template .report2025__sitemap__opener .sitemap-opener dl dd {
  display: flex;
  align-items: center;
  gap: 0;
}
.new-responsive-template .report2025__sitemap__opener .sitemap-opener dl dd img {
  width: 40px;
  height: auto;
}
.new-responsive-template .report2025__sitemap__opener .sitemap-opener dl dd p {
  color: #fff;
  font-family: "Barlow Condensed", sans-serif;
  font-size: 12px;
  font-weight: 700;
}
.new-responsive-template .report2025__sitemap .btn-open {
  width: 154px;
  position: absolute;
  right: 1em;
  bottom: 2em;
  display: block;
}
.new-responsive-template .report2025__sitemap .btn-open img {
  width: 100%;
  height: auto;
}
.new-responsive-template .report2025__sitemap .sitemap_inner {
  width: 95%;
  max-width: 1258px;
  margin-inline: auto;
  padding: 4em 0 8em;
  display: none;
  position: relative;
}
.new-responsive-template .report2025__sitemap .sitemap_inner .sitemap__pagetop {
  position: absolute;
  top: 2em;
  right: 0;
  font-family: "Barlow Condensed", sans-serif;
  padding: 1em 0 1em 1em;
}
.new-responsive-template .report2025__sitemap .sitemap_inner .sitemap__pagetop a i {
  margin-right: 0.5em;
  font-size: var(--font-size-xs);
}
.new-responsive-template .report2025__sitemap .sitemap_inner .sitemap__pagetop a:link, .new-responsive-template .report2025__sitemap .sitemap_inner .sitemap__pagetop a:visited {
  text-decoration: none;
  color: #00ae68;
}
.new-responsive-template .report2025__sitemap .sitemap_inner .sitemap__link_library {
  width: fit-content;
  box-sizing: border-box;
  display: flex;
  justify-content: flex-start;
  gap: var(--space-md);
}
.new-responsive-template .report2025__sitemap .sitemap_inner .sitemap__link_library a {
  width: fit-content;
  flex: content;
}
.new-responsive-template .report2025__sitemap .sitemap_inner .sitemap__link_library a.link__top {
  text-decoration: none;
  font-weight: 700;
  font-family: "Barlow Condensed", sans-serif;
  font-size: 30px;
  line-height: 1;
  color: #00ae68;
}
.new-responsive-template .report2025__sitemap .sitemap_inner .sitemap__link_library a.link__top::before {
  font-family: "Font Awesome 6 Free";
  font-weight: 900;
  content: "\f104"; /*アイコンの種類*/
  font-size: 17px;
  margin-right: 0.5em;
  vertical-align: middle;
  position: relative;
  top: -3px;
}
.new-responsive-template .report2025__sitemap .sitemap_inner .sitemap__link_library a.link__news {
  width: fit-content;
  color: #fff;
  background-color: var(--category-color);
  text-decoration: none;
  font-size: var(--font-size-base);
  line-height: 1.4;
  border-radius: 20px;
  padding: 0.4em 4em;
  display: flex;
  align-items: center;
  transition: all 0.8s ease;
  position: relative;
}
.new-responsive-template .report2025__sitemap .sitemap_inner .sitemap__link_library a.link__news::before {
  display: flex;
  align-items: center;
  justify-content: center;
  position: absolute;
  font-size: 20px;
  font-weight: 700;
  content: "!";
  color: #fff;
  font-family: "Barlow Condensed", sans-serif;
  top: 3px;
  left: 3px;
  height: calc(100% - 6px);
  aspect-ratio: 1/1;
  background-color: rgba(0, 0, 0, 0.1);
  border-radius: 50%;
}
.new-responsive-template .report2025__sitemap .sitemap_inner .sitemap__link_library a.link__news:hover {
  filter: brightness(1.2);
  transition: all 0.2s ease;
}
.new-responsive-template .report2025__sitemap .sitemap_inner .sitemap__link_library + .sitemap__clm {
  margin-top: var(--space-xl);
}
.new-responsive-template .report2025__sitemap .sitemap_inner .sitemap__clm {
  display: grid;
  grid-template-columns: 1fr;
}
.new-responsive-template .report2025__sitemap .sitemap_inner .sitemap__clm--list .sitemap__dl {
  width: 100%;
  display: grid;
  flex-wrap: wrap;
  justify-content: space-between;
  gap: 30px;
  grid-template-columns: repeat(4, 1fr);
}
.new-responsive-template .report2025__sitemap .sitemap_inner .sitemap__clm--list .sitemap__dl > dd > h3 {
  text-align: center;
  color: #fff;
  background-color: var(--category-color);
  padding: 0.7em 1em;
  font-size: var(--font-size-sm);
  line-height: 1.2;
  border-radius: 20px;
}
.new-responsive-template .report2025__sitemap .sitemap_inner .sitemap__clm--list .sitemap__dl > dd > h3 + ul, .new-responsive-template .report2025__sitemap .sitemap_inner .sitemap__clm--list .sitemap__dl > dd > h3 + dl {
  margin-top: var(--space-sm);
}
.new-responsive-template .report2025__sitemap .sitemap_inner .sitemap__clm--list .sitemap__dl > dd .sitemap__linklist {
  width: 95%;
  margin-inline: auto;
}
.new-responsive-template .report2025__sitemap .sitemap_inner .sitemap__clm--list .sitemap__dl > dd .sitemap__linklist > li > a {
  text-decoration: none;
  display: block;
  font-size: clamp(12px, 0.16vw + 12px, 14px);
  padding: 0.3em 1em;
  border-radius: 3px;
  box-sizing: border-box;
  transition: all 0.8s ease-out;
}
.new-responsive-template .report2025__sitemap .sitemap_inner .sitemap__clm--list .sitemap__dl > dd .sitemap__linklist > li > a .txt__small {
  font-size: 1.3rem;
}
.new-responsive-template .report2025__sitemap .sitemap_inner .sitemap__clm--list .sitemap__dl > dd .sitemap__linklist > li > a:hover {
  background-color: #fff;
  transition: all 0.2s ease-out;
  color: #033824;
}
.new-responsive-template .report2025__sitemap .sitemap_inner .sitemap__clm--list .sitemap__dl > dd .sitemap__linklist > li + li {
  margin-top: 0.4em;
}
.new-responsive-template .report2025__sitemap .sitemap_inner .sitemap__clm--list .sitemap__dl > dd .sitemap__linklist > li .story__list__sub {
  margin-left: 1em;
}
.new-responsive-template .report2025__sitemap .sitemap_inner .sitemap__clm--list .sitemap__dl > dd .sitemap__linklist > li .story__list__sub > li {
  padding-left: calc(1em + 5px);
  text-indent: -1em;
}
.new-responsive-template .report2025__sitemap .sitemap_inner .sitemap__clm--list .sitemap__dl > dd .sitemap__linklist > li .story__list__sub > li a {
  text-decoration: none;
  font-size: clamp(11px, 0.16vw + 11px, 13px);
}
.new-responsive-template .report2025__sitemap .sitemap_inner .sitemap__clm--list .sitemap__dl > dd .sitemap__linklist > li .story__list__sub > li a::before {
  font-family: "Material Icons";
  content: "\e5cc";
  line-height: 1.2;
  margin-right: 3px;
  position: relative;
  top: 2px;
}
.new-responsive-template .report2025__sitemap__sp {
  display: none;
  background-color: #ebf2ef;
  box-sizing: border-box;
  padding: 2rem 4.2666666667vw 6rem;
  margin-top: 100px;
}
@media screen and (max-width: 767px) {
  .new-responsive-template .report2025__sitemap__sp {
    margin-top: 50px;
  }
}
.new-responsive-template .report2025__sitemap__sp .sitemap__link_library__sp {
  width: 100%;
  border-bottom: 1px solid #00ae68;
  padding-bottom: 2em;
}
.new-responsive-template .report2025__sitemap__sp .sitemap__link_library__sp a {
  text-decoration: none;
}
.new-responsive-template .report2025__sitemap__sp .sitemap__link_library__sp a::before {
  display: inline-block;
  content: "";
  width: 18px;
  height: 18px;
  margin-right: 0.4em;
  background-image: url("/investors/library/integratedreport/report/2025/cat_assets/img/ic-circle_arr.svg");
  background-repeat: no-repeat;
  background-size: cover;
  vertical-align: bottom;
}
.new-responsive-template .report2025__sitemap__sp .sitemap__link_library__sp + .sitemap__clm {
  margin-top: 50px;
}
@media screen and (max-width: 767px) {
  .new-responsive-template .report2025__sitemap__sp .sitemap__link_library__sp + .sitemap__clm {
    margin-top: 25px;
  }
}
.new-responsive-template .report2025__sitemap__sp .sitemap__clm__sp {
  display: grid;
  grid-template-columns: 1fr;
  gap: 30px;
}
.new-responsive-template .report2025__sitemap__sp .sitemap__clm__sp--logo {
  order: 2;
}
.new-responsive-template .report2025__sitemap__sp .sitemap__clm__sp--logo img {
  width: 40%;
  height: auto;
}
.new-responsive-template .report2025__sitemap__sp .sitemap__clm__sp--list {
  order: 1;
  display: grid;
  grid-template-columns: 1fr;
  gap: 25px;
  margin-top: 3rem;
}
.new-responsive-template .report2025__sitemap__sp .sitemap__clm__sp--list a {
  text-decoration: none;
}
.new-responsive-template .report2025__sitemap__sp .sitemap__clm__sp--list a:hover {
  text-decoration: underline;
}
.new-responsive-template .report2025__sitemap__sp .sitemap__clm__sp--list h3 {
  font-weight: 400;
  font-size: 15px;
  line-height: 1.6;
  text-align: left;
  color: #033824;
  box-sizing: border-box;
  position: relative;
}
.new-responsive-template .report2025__sitemap__sp .sitemap__clm__sp--list h3 + div {
  margin-top: 20px;
}
@media screen and (max-width: 767px) {
  .new-responsive-template .report2025__sitemap__sp .sitemap__clm__sp--list h3 + div {
    margin-top: 10px;
  }
}
.new-responsive-template .report2025__sitemap__sp .sitemap__clm__sp--list h3 + div {
  overflow: hidden;
}
.new-responsive-template .report2025__sitemap__sp .sitemap__clm__sp--list h3 + ul {
  margin-top: 30px;
}
@media screen and (max-width: 767px) {
  .new-responsive-template .report2025__sitemap__sp .sitemap__clm__sp--list h3 + ul {
    margin-top: 15px;
  }
}
.new-responsive-template .report2025__sitemap__sp .sitemap__clm__sp--list h3 .icon__symbol {
  position: absolute;
  top: 0.5rem;
  right: 0.3em;
}
.new-responsive-template .report2025__sitemap__sp .sitemap__clm__sp--list h3 .icon__symbol.plus {
  color: #00ae68;
  position: absolute;
  margin-left: 3px;
  margin-top: 10px;
  transform: translateX(-15px);
}
.new-responsive-template .report2025__sitemap__sp .sitemap__clm__sp--list h3 .icon__symbol.plus:before {
  content: "";
  position: absolute;
  width: 15px;
  height: 1px;
  background-color: currentColor;
}
.new-responsive-template .report2025__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);
}
.new-responsive-template .report2025__sitemap__sp .sitemap__clm__sp--list h3 .icon__symbol.minus {
  color: #00ae68;
  position: absolute;
  margin-left: 3px;
  margin-top: 10px;
  width: 15px;
  height: 1px;
  background-color: currentColor;
}
.new-responsive-template .report2025__sitemap__sp .sitemap__clm__sp--list .list__clm__block + .list__clm__block {
  margin-top: 40px;
}
@media screen and (max-width: 767px) {
  .new-responsive-template .report2025__sitemap__sp .sitemap__clm__sp--list .list__clm__block + .list__clm__block {
    margin-top: 20px;
  }
}
.new-responsive-template .report2025__sitemap__sp .sitemap__clm__sp--list .list__clm__block ul {
  margin-left: 1.5em;
}
.new-responsive-template .report2025__sitemap__sp .sitemap__clm__sp--list .list__clm__block ul > li > a {
  font-size: 13px;
}
.new-responsive-template .report2025__sitemap__sp .sitemap__clm__sp--list .list__clm__block ul > li > a:link, .new-responsive-template .report2025__sitemap__sp .sitemap__clm__sp--list .list__clm__block ul > li > a:visited {
  color: #033824;
}
.new-responsive-template .report2025__sitemap__sp .sitemap__clm__sp--list .list__clm__block ul > li > a:hover {
  color: #5f9939;
}
.new-responsive-template .report2025__sitemap__sp .sitemap__clm__sp--list .list__clm__block ul > li > a::after {
  content: "";
  width: 5px;
  height: 5px;
  border-top: 1px solid #444;
  border-right: 1px solid #444;
  display: inline-block;
  transform: rotate(45deg);
  position: relative;
  top: -0.2rem;
  margin-left: 0.5em;
}
.new-responsive-template .report2025__sitemap__sp .sitemap__clm__sp--list .list__clm__block ul > li + li {
  margin-top: 1.5rem;
}
.new-responsive-template .report2025__sitemap__sp .sitemap__clm__sp--list .list__clm__block ul > li > ul {
  margin-top: 1.5rem;
  margin-left: 1.5rem;
}
.new-responsive-template .report2025__sitemap__sp .sitemap__clm__sp--list .list__clm__block ul > li > ul > li {
  font-size: 12px;
}
.new-responsive-template .report2025__sitemap__sp .sitemap__clm__sp--list .list__clm__block ul > li > ul > li a::before {
  font-family: "Material Icons";
  content: "\e037";
  line-height: 1.2;
  opacity: 0.5;
  position: relative;
  top: 2px;
  margin-right: 0.2em;
}
.new-responsive-template .report2025__sitemap__sp .sitemap__clm__sp--list .list__clm__block .close__accordion {
  width: 31px;
  height: auto;
  margin-top: 2rem;
  margin-left: 1rem;
  box-sizing: border-box;
  padding: 1px;
}
.new-responsive-template .report2025__sitemap__sp .sitemap__clm__sp--list .list__clm__block .close__accordion img {
  width: 100%;
  height: auto;
}
@media screen and (max-width: 767px) {
  .new-responsive-template .report2025__sitemap__sp {
    display: block;
  }
}
.new-responsive-template {
  /* 拡大アニメーション */
}
@keyframes zoomFadeOut {
  0% {
    transform: scale(1.1);
    opacity: 0;
  }
  100% {
    transform: scale(1);
    opacity: 1; /* スライド切替前に透明状態でキープ */
  }
}
.new-responsive-template .slide-animation img {
  animation: zoomFadeOut 6s ease-in forwards;
}
.new-responsive-template {
  /* ========================================
    タブコンテンツアニメーション
  ======================================== */
}
@keyframes initiativesFadeIn {
  from {
    opacity: 0;
  }
  to {
    opacity: 1;
  }
}
.new-responsive-template {
  /* ========================================
    サステナビリティ
  ======================================== */
}
.new-responsive-template .initiatives {
  background: #eef8f5;
}
@media screen and (max-width: 767px) {
  .new-responsive-template .initiatives {
    background-color: #fff;
  }
}
.new-responsive-template .initiatives {
  /* ======================================
    タブ／アンカーリンク
  ====================================== */
}
.new-responsive-template .initiatives .top__initiatives {
  background: #fff;
  border-bottom: 1px solid #c8d4d1;
}
.new-responsive-template .initiatives .top__initiatives .nav__tabmenu {
  display: flex;
  justify-content: flex-start;
  margin: 0;
  padding: 0;
  list-style: none;
}
@media screen and (max-width: 767px) {
  .new-responsive-template .initiatives .top__initiatives .nav__tabmenu {
    display: block;
    margin-top: var(--space-md);
    width: 90%;
    margin-inline: auto;
  }
}
.new-responsive-template .initiatives .top__initiatives .nav__tabmenu li {
  position: relative;
}
.new-responsive-template .initiatives .top__initiatives .nav__tabmenu li a {
  display: flex;
  align-items: center;
  justify-content: center;
  min-height: 50px;
  padding: 0 18px;
  color: #111;
  font-size: 16px;
  font-weight: 700;
  line-height: 1.5;
  text-decoration: none;
  white-space: nowrap;
}
.new-responsive-template .initiatives .top__initiatives .nav__tabmenu li a:hover {
  color: #00ae6c;
}
@media screen and (max-width: 1100px) {
  .new-responsive-template .initiatives .top__initiatives .nav__tabmenu li a {
    font-size: 14px;
    padding: 0 8px;
  }
}
@media screen and (max-width: 767px) {
  .new-responsive-template .initiatives .top__initiatives .nav__tabmenu li a {
    display: block;
    text-align: left;
    padding: 0 8px;
    font-weight: 500;
    min-height: 35px;
    font-size: 16px;
  }
}
.new-responsive-template .initiatives .top__initiatives .nav__tabmenu li.is-active a {
  /* PC：現在のタブ */
  border-bottom: 4px solid #00ae6c;
}
.new-responsive-template .initiatives {
  /* ======================================
    コンテンツ
  ====================================== */
}
.new-responsive-template .initiatives__contents {
  margin: 0 auto;
  padding: 0;
}
.new-responsive-template .initiatives {
  /* ======================================
    各セクション
  ====================================== */
}
.new-responsive-template .initiatives__section {
  display: none;
  padding: var(--space-md) var(--space-lg);
}
.new-responsive-template .initiatives__section.is-active {
  display: block;
  animation: initiativesFadeIn 1.2s ease-in;
}
@media screen and (max-width: 767px) {
  .new-responsive-template .initiatives__section {
    display: block;
  }
  .new-responsive-template .initiatives__section.is-active {
    display: block;
    animation: none;
  }
}
.new-responsive-template .initiatives__section h2 {
  margin: 0 0 18px;
  color: #004831;
  font-size: 26px;
  font-weight: 700;
  line-height: 1.5;
}
.new-responsive-template .initiatives {
  /* ======================================
    カード
  ====================================== */
}
.new-responsive-template .initiatives__cards {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  grid-auto-rows: auto;
  gap: 35px;
}
@media screen and (max-width: 1100px) {
  .new-responsive-template .initiatives__cards {
    grid-template-columns: repeat(2, 1fr);
  }
}
.new-responsive-template .initiatives__card {
  display: grid;
  grid-template-rows: subgrid;
  grid-row: span 4;
  gap: 0;
  overflow: hidden;
  border: 1px solid #aebdb9;
  border-radius: 15px;
  background: #fff;
}
.new-responsive-template .initiatives__card-image {
  width: 100%;
  aspect-ratio: 1.75/1;
  background: #ddd;
  display: flex;
  justify-content: center;
  overflow: hidden;
}
.new-responsive-template .initiatives__card-image img {
  width: auto;
  height: 100%;
}
.new-responsive-template .initiatives__card-body {
  display: grid;
  grid-template-rows: subgrid;
  grid-row: span 3;
  padding: 18px 20px 20px;
  gap: 15px;
}
.new-responsive-template .initiatives__card-body.tab__business {
  display: block;
}
.new-responsive-template .initiatives__card-body.tab__business h4 + .initiatives__links {
  margin-top: var(--space-unit);
}
.new-responsive-template .initiatives__card-body hr {
  border-top: 1px solid #ccc !important;
  display: block;
  margin-top: var(--space-sm);
  margin-bottom: var(--space-sm);
}
@media screen and (max-width: 767px) {
  .new-responsive-template .initiatives__card-body hr {
    margin-top: var(--space-lg);
    margin-bottom: var(--space-lg);
  }
}
.new-responsive-template .initiatives__card h3 {
  margin: 0 0 12px;
  color: #004831;
  font-size: 23px;
  font-weight: 700;
  line-height: 1.5;
}
.new-responsive-template .initiatives__card p {
  margin: 0;
  color: #174c3c;
  font-size: 14px;
  line-height: 1.8;
}
.new-responsive-template .initiatives__card h4 {
  font-weight: 500;
  color: var(--color-text);
}
.new-responsive-template .initiatives__card h4::before {
  content: "●";
  margin-right: 0.1em;
}
.new-responsive-template .initiatives__card h4 + .initiatives__links {
  margin-top: 0;
}
.new-responsive-template .initiatives__linksgroup {
  display: contents;
}
.new-responsive-template .initiatives {
  /* ======================================
    カード内リンク
  ====================================== */
}
.new-responsive-template .initiatives__links {
  display: flex;
  flex-direction: column;
  gap: 12px;
  list-style: none;
}
.new-responsive-template .initiatives__links li {
  margin: 0;
  padding: 0;
}
.new-responsive-template .initiatives__links + h4 {
  margin-top: var(--space-sm);
}
.new-responsive-template .initiatives {
  /* ======================================
    SPのみ表示する「一覧に戻る」
  ====================================== */
}
.new-responsive-template .initiatives__back {
  display: none;
}
.new-responsive-template .initiatives {
  /* ======================================
    SP
  ====================================== */
}
@media screen and (max-width: 767px) {
  .new-responsive-template .initiatives .top__initiatives {
    background: transparent;
    border: 0;
  }
  .new-responsive-template .initiatives .top__initiatives ul {
    display: block;
    padding: 15px 15px 5px;
  }
  .new-responsive-template .initiatives .top__initiatives li {
    margin-bottom: 5px;
  }
  .new-responsive-template .initiatives .top__initiatives a {
    justify-content: flex-start;
    min-height: auto;
    padding: 0;
    color: #111;
    font-size: 11px;
    font-weight: 700;
    line-height: 1.6;
    white-space: normal;
  }
  .new-responsive-template .initiatives .top__initiatives a span::after {
    content: "";
    display: inline-block;
    width: 14px;
    height: 14px;
    background-image: url("/sustainability/img/ic-arr_up.png");
    background-repeat: no-repeat;
    background-position: center center;
    margin-left: 0.3em;
    position: relative;
    top: 3px;
    transform: rotate(180deg);
  }
  .new-responsive-template .initiatives .top__initiatives {
    /* SPではタブのアクティブ表示を解除 */
  }
  .new-responsive-template .initiatives .top__initiatives li:first-child a {
    border: 0;
  }
  .new-responsive-template .initiatives__contents {
    width: 100%;
    padding: 0;
    margin-top: var(--space-lg);
  }
  .new-responsive-template .initiatives__section {
    display: block;
    margin: 0;
    padding: 1.5em 7vw 7vw;
    box-sizing: border-box;
    background: #ccc;
  }
  .new-responsive-template .initiatives__section#tab-materiality {
    background-color: #CDECE3;
  }
  .new-responsive-template .initiatives__section#tab-business {
    background-color: #D9E9E2;
  }
  .new-responsive-template .initiatives__section#tab-targets {
    background-color: #DEECDE;
  }
  .new-responsive-template .initiatives__section#tab-evaluation {
    background-color: #D6EFF6;
  }
  .new-responsive-template .initiatives__section#tab-standards {
    background-color: #E8EFD8;
  }
  .new-responsive-template .initiatives__section#tab-other {
    background-color: #E4E8E9;
  }
  .new-responsive-template .initiatives__section:not(:first-child) {
    margin-top: 25px;
  }
  .new-responsive-template .initiatives__section h2 {
    font-size: 16px !important;
    font-weight: 500;
    line-height: 1.5;
  }
  .new-responsive-template .initiatives__section {
    /* SPでは全セクション表示 */
  }
  .new-responsive-template .initiatives__section.is-active {
    display: block;
  }
  .new-responsive-template .initiatives__cards {
    display: grid;
    grid-template-columns: 1fr;
    gap: 24px;
  }
  .new-responsive-template .initiatives__cards--business, .new-responsive-template .initiatives__cards--targets, .new-responsive-template .initiatives__cards--evaluation, .new-responsive-template .initiatives__cards--standards, .new-responsive-template .initiatives__cards--other {
    display: flex;
    flex-direction: column;
  }
  .new-responsive-template .initiatives__card {
    border-radius: 9px;
    display: block;
    grid-row: unset;
  }
  .new-responsive-template .initiatives__card-image {
    aspect-ratio: 1.75/0.8;
    overflow: hidden;
    box-sizing: border-box;
    mix-blend-mode: multiply;
  }
  .new-responsive-template .initiatives__card-image img {
    width: 100%;
    height: auto;
    box-sizing: border-box;
    mix-blend-mode: multiply;
  }
  .new-responsive-template .initiatives__card-body {
    min-height: 0;
    padding: 2em;
    display: block;
    grid-row: unset;
  }
  .new-responsive-template .initiatives__card h3 {
    margin-bottom: 7px;
    font-size: 16px;
    line-height: 1.45;
  }
  .new-responsive-template .initiatives__card p {
    font-size: 14px;
    line-height: 1.7;
  }
  .new-responsive-template .initiatives__card h4 + .initiatives__links {
    margin-top: var(--space-sm);
  }
  .new-responsive-template .initiatives__card .initiatives__links + h4 {
    margin-top: var(--space-md);
  }
  .new-responsive-template .initiatives__links {
    gap: 10px;
    margin-top: 12px;
  }
  .new-responsive-template .initiatives__links a {
    font-size: 13px;
  }
  .new-responsive-template .initiatives {
    /* SP：一覧に戻る */
  }
  .new-responsive-template .initiatives__back {
    margin-top: var(--space-sm);
    width: 86vw;
    margin-inline: auto;
    display: block;
    color: #174c3c;
    font-size: 12px;
    font-weight: 700;
    line-height: 1.5;
    text-align: right;
    text-decoration: none;
  }
  .new-responsive-template .initiatives__back > p {
    text-align: right;
  }
  .new-responsive-template .initiatives__back > p::after {
    content: "";
    display: inline-block;
    width: 14px;
    height: 14px;
    background-image: url("/sustainability/img/ic-arr_up.png");
    background-repeat: no-repeat;
    background-position: center center;
    margin-left: 0.3em;
    position: relative;
    top: 3px;
  }
  .new-responsive-template .initiatives__back + .initiatives__section {
    margin-top: var(--space-2xl);
  }
}/*# sourceMappingURL=main.css.map */