@charset "utf-8";

.icon-external + .icon-external {display:none !important; }
.icon-doc+.icon-doc { display: none !important; }
.icon-xls+.icon-xls { display: none !important; }
.icon-ppt+.icon-ppt { display: none !important; }
.icon-pdf+.icon-pdf { display: none !important; }
a[href$=".pdf"]:has(.icon-pdf)::after { display: none !important; }

a[href$=".xls"]:has(.icon-xls)::after,
a[href$=".xlsx"]:has(.icon-xls)::after {
	display: none !important;
}
a[href$=".doc"]:has(.icon-doc)::after,
a[href$=".docx"]:has(.icon-doc)::after {
	display: none !important;
}
a[href$=".ppt"]:has(.icon-ppt)::after,
a[href$=".pptx"]:has(.icon-ppt)::after {
	display: none !important;
}
a[href^="https://images.ctfassets.net/"] .icon-external,
a[href^="https://assets.ctfassets.net/"] .icon-external,
a[href^="https://"] .icon-external{
	display: none !important;
}

#ir .acList:has(+ .acList) { margin-bottom: 0; }
#ir .acList+.acList dt { border-top: 0; }

.third-layout_contents .cptTitle {
	margin: 0 !important;
	padding: 0.8rem 0;
	font-size: 2.0rem !important;
	font-weight: 600;
	line-height: 1.4;
}

.third-layout_contents .cptTitle::after {
	display: block;
	height: 1px;
	margin-top: 0.8rem;
	content: "";
	background-color: var(--color-border-blue);
}

.third-layout_contents .subTitle {
	position: relative;
	margin: 0 !important;
	padding: 1.6rem 0;
	padding-left: 1.2rem;
	font-size: 2.0rem !important;
	font-weight: 600;
	line-height: 1.4;
	color: #333 !important;
	border: none !important;
}

.third-layout_contents .subTitle::before {
	position: absolute;
	top: 1.6rem;
	bottom: 1.6rem;
	left: 0;
	width: .4rem;
	height: calc(100% - 2* 1.6rem);
	content: "";
	background-color: var(--color-border-blue);
}

@media (min-width: 640px) {
	.third-layout_contents .cptTitle {
		padding: 1.6rem 0;
		font-size: 2.8rem !important;
	}

	.third-layout_contents .subTitle {
		padding: 1.6rem 0;
		padding-left: 1.4rem;
		font-size: 2.4rem !important;
	}
}

/* 株主通信 */
body.ir.irlib.houkoku {
	:root {
		--color-black: #000;
		--color-white: #fff;
		--color-blue-600: #005eb8;
		--color-gradation: linear-gradient(to right, #007df5, #1140c4);
		--color-blue-button: #027df5;

		--anim-duration: .35s;
		--anim-duration-short: .125s;
		--anim-easing: cubic-bezier(.215, .61, .355, 1);
	}
	.linkBtnBox {
		display: flex;
		flex-wrap: wrap;
		padding-top: 16px;
		padding-bottom: 16px;
	}
	.linkBtnBox >a {
		position: relative;
		width: fit-content;
		padding: 0.8em 2.8em 0.8em 1em;
		margin-top: 1em;
		margin-right: 1.8em;
		color: var(--color-white);
		background: var(--color-blue-600);
		border-radius: 4px;
		font-size: 16px;
		font-weight: 500;
		line-height: 1;
		transition: all var(--anim-duration) var(--anim-easing)
		translate3d(0, 0, 0);
	}
	.linkBtnBox >a:hover {
		background: var(--color-gradation);
		text-decoration: none;
		transition: all var(--anim-duration) var(--anim-easing)
	}
	.linkBtnBox >a .btnArrow {
		position: absolute;
		top: 50%;
		right: 1em;
		transform: translateY(-50%);
		display: inline-block;
		width: 20px;
		height: 20px;
		color: var(--color-blue-600);
		background-color: var(--color-white);
		border-radius: 50%;
	}
	.linkBtnBox >a .btnArrow >svg {
		width: 100%;
	}
	.pageTitle-sub {
		display: block;
		margin-top: 1rem;
		font-size: 2rem;
	}
	.pageTitle-text {
		margin-top: 2rem;
	}
	.linkList__item--latest {
		padding-left: 3.4rem;
	}
	.linkList__item--latest ul {
		list-style: none;
	}
	.linkList__item--latest ul.third-2columns>li {
		width: calc(30% - .5 * var(--space-5xl))
	}
	.linkList__item--latest ul.third-2columns>li:last-child {
		width: calc(70% - .5 * var(--space-5xl))
	}
	.linkList__item--latest ul.third-2columns>li .linkBtnBox {
		padding-top: 0;
	}
	.linkList__item--latest ul.third-2columns>li .linkBtnBox >a {
		margin-top: 0;
	}
	@media all and (max-width: 48em) {
		.pageTitle-sub {
			font-size: 1.8rem;
		}
		.pageTitle-text {
			margin-top: 1rem;
			margin-bottom: 0;
		}
		.linkList__item--latest ul.third-2columns>li,
		.linkList__item--latest ul.third-2columns>li:last-child {
			width: calc(100% - .5 * var(--space-5xl))
		}
		.linkList__item--latest ul.third-2columns>li .linkBtnBox {
			display: grid;
		}
		.linkList__item--latest ul.third-2columns>li .linkBtnBox >a:last-child {
			margin-top: 1em;
		}
		.linkList__item--latest ul.third-2columns>li .third-image {
			max-width: 280px;
		}
	}
}

/* vision_2604_css */
@media(min-width: 1024px) {
	body.top.vision {
		.l-container {
			margin-top: -120px;
			transition: all 0.3s ease;
		}
		.common-header {
			color: rgba(255,255,255);
			background: transparent;
			transition: all 0.5s ease;
			.common-header_name img {
				filter: brightness(0) saturate(100%) invert(99%) sepia(95%) saturate(13%) hue-rotate(215deg) brightness(105%) contrast(100%);
			}
			a,
			input,
			input::placeholder,
			.common-mainMenu_icon,
			.common-lang_icon,
			.common-searchPc_search,
			&.-disabled .common-mainMenu.-product .common-mainMenu_bg {
				color: rgba(255,255,255);
				background: transparent;
			}
			&.-disabled .common-mainMenu.-product .common-mainMenu_bg,
			input,
			.common-searchPc_search {
				border: 1px solid rgba(255,255,255);
			}
			&.-disabled .common-header_main:before {
				background: transparent;
				border-bottom: none;
			}
		}

		@media(hover: hover) {
			.common-header:hover {
				color: inherit;
				background: rgba(255,255,255);

				.common-header_name img {
					filter: none;
				}
				a,
				input,
				input::placeholder,
				.common-mainMenu_icon,
				.common-searchPc_search {
					color: inherit;
					background: inherit;
				}
				input {
					border-color: var(--color-border-blue-low);
				}
				.common-lang_icon {
					color: var(--color-surface-blue);
				}
				.common-searchPc_search {
					color: var(--color-white);
					background: var(--color-surface-blue);
				}
			}

			.common-header.-disabled:hover {
				.common-mainMenu.-product .common-mainMenu_bg {
					color: inherit;
					background: var(--color-surface-blue);
					border: 1px solid transparent;
				}
				.common-header_main:before {
					background: inherit;
					border-bottom: none;
				}
			}
		}
	}

	body.top.vision.header--inherit{
		/* .l-container {
			margin-top: 0;
		} */
		.common-header{
			color: inherit;
			background: rgba(255,255,255);

			.common-header_name img {
				filter: none;
			}
			a,
			input,
			input::placeholder,
			.common-mainMenu_icon,
			.common-searchPc_search {
				color: inherit;
				background: inherit;
			}
			input {
				border-color: var(--color-border-blue-low);
			}
			.common-lang_icon {
				color: var(--color-surface-blue);
			}
			.common-searchPc_search {
				color: var(--color-white);
				background: var(--color-surface-blue);
			}
		}

		.common-header.-disabled{
			.common-mainMenu.-product .common-mainMenu_bg {
				color: inherit;
				background: var(--color-surface-blue);
				border: 1px solid transparent;
			}
			.common-header_main:before {
				background: inherit;
				border-bottom: none;
			}
		}
	}

	/* @media(orientation: landscape) {
		body.top.vision.sf2ndstage .kv {
			max-height: calc(100vh - 100px);
			overflow: hidden;
		}
	} */


}

/* サステナビリティ　社外からの評価 */
body#sustainability_evaluation.sustainability__article {
	figure {
		text-align: center;
		>a {
			display: inline-block;
		}
	}
}

/* 採用 */
body.recruit2024 .common-header .common-dropdown_banner img {
	width: 280px;
}

/* Story */
.splide__list .common-articleThumbnail_image {
	width: 100%;
	aspect-ratio: 1.78/1;
	object-fit: cover;
	object-position: center bottom;
}

/* 役員一覧_HTML改訂 */
.about.corporate.organization.officer .officer__List {
  display: none; }
@media(max-width: 768px) {
  .about.corporate.organization.officer .officer__List {
    display: flex;
    flex-wrap: wrap; }
    .about.corporate.organization.officer .officer__List__item {
      width: 49%;
      margin: 0 0 2rem 0; }
      .about.corporate.organization.officer .officer__List__item:not(:nth-child(2n)) {
        margin-right: 2%; }
  @media(max-width: 768px) {
    .about.corporate.organization.officer .officer__List__item {
      width: 100%; }
      .about.corporate.organization.officer .officer__List__item:not(:nth-child(2n)) {
        margin-right: 0; } }
    .about.corporate.organization.officer .officer__List__head {
      position: relative;
      cursor: pointer;
      font-size: 1.6rem;
      line-height: 1.6;
      font-weight: 400;
      padding: 0 0 0 10px;
      margin: 0;
      display: flex;
      flex-flow: row wrap;
      justify-content: space-between;
      background: #f8f9fc; }
  @media(max-width: 600px) {
    .about.corporate.organization.officer .officer__List__head {
      font-size: 1.3rem;
      padding: 0 20px; } }
      .about.corporate.organization.officer .officer__List__head.is-open .btnOpen {
        display: none; }
      .about.corporate.organization.officer .officer__List__head strong {
        font-size: 2.5rem;
        font-weight: normal;
        line-height: 1.8; }
  @media(max-width: 600px) {
    .about.corporate.organization.officer .officer__List__head strong {
      font-size: 1.8rem; } }
      .about.corporate.organization.officer .officer__List__head__img {
        width: 200px; }
  @media(max-width: 600px) {
    .about.corporate.organization.officer .officer__List__head__img {
      width: 120px; } }
      .about.corporate.organization.officer .officer__List__head__name {
        width: calc(100% - 200px);
        /* padding: 20px 0 30px 0; */
				padding: 10px 0;
        line-height: 1.3; }
        .about.corporate.organization.officer .officer__List__head__name .small {
          font-size: 1.2rem; }
  @media(max-width: 600px) {
    .about.corporate.organization.officer .officer__List__head__name {
      width: calc(100% - 120px); } }
        .about.corporate.organization.officer .officer__List__head__name.has2titles {
          line-height: 1; }
          .about.corporate.organization.officer .officer__List__head__name.has2titles .small {
            font-size: 1rem; }
          .about.corporate.organization.officer .officer__List__head__name.has2titles strong {
            font-size: 2.5rem; }
          .about.corporate.organization.officer .officer__List__head__name.has2titles strong.nameSmall {
            font-size: 2rem; }
        .about.corporate.organization.officer .officer__List__head__name.has3titles {
          font-size: 1.6rem; }
          .about.corporate.organization.officer .officer__List__head__name.has3titles .small {
            font-size: 1.2rem;
            line-height: 1.4; }
          .about.corporate.organization.officer .officer__List__head__name.has3titles strong {
            font-size: 2rem; }
    .about.corporate.organization.officer .officer__List__record {
      margin: 0;
      padding: 0;
      list-style: none; }
      .about.corporate.organization.officer .officer__List__record li {
        padding: 0 0 0 120px;
        margin: 0 0 1rem 0;
        position: relative; }
      .about.corporate.organization.officer .officer__List__record__date {
        display: inline-block;
        font-weight: bold;
        position: absolute;
        left: 0; }
    .about.corporate.organization.officer .officer__List .btnOpen {
      width: 40px;
      height: 20px;
      position: absolute;
      left: calc(50% - 20px);
      bottom: 10px;
      text-align: center;
      cursor: pointer;
      margin: 0; }
      .about.corporate.organization.officer .officer__List .btnOpen::after {
        width: 20px;
        height: 20px;
        display: inline-block;
        vertical-align: text-bottom;
        text-align: center;
        font-size: 2.4rem;
        color: palette("basic", "text");
        font-family: "iconfont";
        content: "";
        line-height: 1;
        -webkit-font-smoothing: antialiased;
        -moz-osx-font-smoothing: grayscale; }
    .about.corporate.organization.officer .officer__List .officer__List__close {
      text-align: center;
      margin: 5rem auto 0 auto;
      cursor: pointer; }
      .about.corporate.organization.officer .officer__List .officer__List__close::after {
        width: 20px;
        height: 20px;
        display: inline-block;
        vertical-align: text-bottom;
        font-size: 1.8rem;
        color: palette("basic", "text");
        content: "x";
        line-height: 1;
        -webkit-font-smoothing: antialiased;
        -moz-osx-font-smoothing: grayscale; }
    .about.corporate.organization.officer .officer__List__body {
      font-size: 1.6rem;
      padding: 40px 40px 50px 40px;
      border-bottom: none;
      background: #f8f9fc; }
  @media(max-width: 600px) {
    .about.corporate.organization.officer .officer__List__body {
      padding: 10px 30px 30px 30px;
      font-size: 1.4rem; } }
    .about.corporate.organization.officer .officer__List__text {
      margin: 0 0 50px 0; } }
@media(max-width: 600px) {
  .about.corporate.organization.officer .officer__List table th, .about.corporate.organization.officer .officer__List .table04 th {
    width: 100%; }
  .about.corporate.organization.officer .officer__List table td, .about.corporate.organization.officer .officer__List .table04 td {
    text-align: left;
    padding: 1em; } }
.about.corporate.organization.officer .officer__List__pc {
  display: flex;
  flex-wrap: wrap; }
  .about.corporate.organization.officer .officer__List__pc .officer__List__pc__innerL {
    margin-right: 2%; }
  .about.corporate.organization.officer .officer__List__pc .officer__List__pc__innerL, .about.corporate.organization.officer .officer__List__pc .officer__List__pc__innerR {
    width: 49%; }
    .about.corporate.organization.officer .officer__List__pc .officer__List__pc__innerL .officer__List__item, .about.corporate.organization.officer .officer__List__pc .officer__List__pc__innerR .officer__List__item {
      width: 100%;
      margin: 0 0 2rem 0; }
      .about.corporate.organization.officer .officer__List__pc .officer__List__pc__innerL .officer__List__item.executive .officer__List__head, .about.corporate.organization.officer .officer__List__pc .officer__List__pc__innerR .officer__List__item.executive .officer__List__head {
				height: 175px; }
    .about.corporate.organization.officer .officer__List__pc .officer__List__pc__innerL .officer__List__head, .about.corporate.organization.officer .officer__List__pc .officer__List__pc__innerR .officer__List__head {
      position: relative;
      cursor: pointer;
      font-size: 1.6rem;
      line-height: 1.6;
      font-weight: 400;
      padding: 0 0 0 10px;
      margin: 0;
      display: flex;
      flex-flow: row wrap;
      justify-content: space-between;
      background: #f8f9fc; }
      .about.corporate.organization.officer .officer__List__pc .officer__List__pc__innerL .officer__List__head .btnOpen, .about.corporate.organization.officer .officer__List__pc .officer__List__pc__innerR .officer__List__head .btnOpen {
        width: 40px;
        height: 20px;
        position: absolute;
        left: calc(50% - 20px);
        bottom: 10px;
        text-align: center;
        cursor: pointer;
        margin: 0; }
        .about.corporate.organization.officer .officer__List__pc .officer__List__pc__innerL .officer__List__head .btnOpen::after, .about.corporate.organization.officer .officer__List__pc .officer__List__pc__innerR .officer__List__head .btnOpen::after {
          width: 20px;
          height: 20px;
          display: inline-block;
          vertical-align: text-bottom;
          text-align: center;
          font-size: 2.4rem;
          color: palette("basic", "text");
          font-family: "iconfont";
          content: "";
          line-height: 1;
          -webkit-font-smoothing: antialiased;
          -moz-osx-font-smoothing: grayscale; }
      .about.corporate.organization.officer .officer__List__pc .officer__List__pc__innerL .officer__List__head.is-open .btnOpen, .about.corporate.organization.officer .officer__List__pc .officer__List__pc__innerR .officer__List__head.is-open .btnOpen {
        display: none; }
      .about.corporate.organization.officer .officer__List__pc .officer__List__pc__innerL .officer__List__head strong, .about.corporate.organization.officer .officer__List__pc .officer__List__pc__innerR .officer__List__head strong {
        font-size: 2.5rem;
        font-weight: normal;
        line-height: 1.8; }
      .about.corporate.organization.officer .officer__List__pc .officer__List__pc__innerL .officer__List__head__img, .about.corporate.organization.officer .officer__List__pc .officer__List__pc__innerR .officer__List__head__img {
        width: 200px; }
      .about.corporate.organization.officer .officer__List__pc .officer__List__pc__innerL .officer__List__head__name, .about.corporate.organization.officer .officer__List__pc .officer__List__pc__innerR .officer__List__head__name {
        width: calc(100% - 200px);
        /* padding: 20px 0 30px 0; */
				padding: 10px 0;
        line-height: 1.3; }
        .about.corporate.organization.officer .officer__List__pc .officer__List__pc__innerL .officer__List__head__name .small, .about.corporate.organization.officer .officer__List__pc .officer__List__pc__innerR .officer__List__head__name .small {
          font-size: 1.2rem; }
        .about.corporate.organization.officer .officer__List__pc .officer__List__pc__innerL .officer__List__head__name.has2titles, .about.corporate.organization.officer .officer__List__pc .officer__List__pc__innerR .officer__List__head__name.has2titles {
          line-height: 1; }
          .about.corporate.organization.officer .officer__List__pc .officer__List__pc__innerL .officer__List__head__name.has2titles .small, .about.corporate.organization.officer .officer__List__pc .officer__List__pc__innerR .officer__List__head__name.has2titles .small {
            font-size: 1rem; }
          .about.corporate.organization.officer .officer__List__pc .officer__List__pc__innerL .officer__List__head__name.has2titles strong, .about.corporate.organization.officer .officer__List__pc .officer__List__pc__innerR .officer__List__head__name.has2titles strong {
            font-size: 2.5rem; }
          .about.corporate.organization.officer .officer__List__pc .officer__List__pc__innerL .officer__List__head__name.has2titles strong.nameSmall, .about.corporate.organization.officer .officer__List__pc .officer__List__pc__innerR .officer__List__head__name.has2titles strong.nameSmall {
            font-size: 2rem; }
        .about.corporate.organization.officer .officer__List__pc .officer__List__pc__innerL .officer__List__head__name.has3titles, .about.corporate.organization.officer .officer__List__pc .officer__List__pc__innerR .officer__List__head__name.has3titles {
          font-size: 1rem; }
          .about.corporate.organization.officer .officer__List__pc .officer__List__pc__innerL .officer__List__head__name.has3titles .small, .about.corporate.organization.officer .officer__List__pc .officer__List__pc__innerR .officer__List__head__name.has3titles .small {
            font-size: 1rem; }
          .about.corporate.organization.officer .officer__List__pc .officer__List__pc__innerL .officer__List__head__name.has3titles strong, .about.corporate.organization.officer .officer__List__pc .officer__List__pc__innerR .officer__List__head__name.has3titles strong {
            font-size: 1.8rem;
            line-height: 1.4; }
    .about.corporate.organization.officer .officer__List__pc .officer__List__pc__innerL .officer__List__record, .about.corporate.organization.officer .officer__List__pc .officer__List__pc__innerR .officer__List__record {
      margin: 0;
      padding: 0;
      list-style: none; }
      .about.corporate.organization.officer .officer__List__pc .officer__List__pc__innerL .officer__List__record li, .about.corporate.organization.officer .officer__List__pc .officer__List__pc__innerR .officer__List__record li {
        padding: 0 0 0 120px;
        margin: 0 0 1rem 0;
        position: relative; }
      .about.corporate.organization.officer .officer__List__pc .officer__List__pc__innerL .officer__List__record__date, .about.corporate.organization.officer .officer__List__pc .officer__List__pc__innerR .officer__List__record__date {
        display: inline-block;
        font-weight: bold;
        position: absolute;
        left: 0; }
    .about.corporate.organization.officer .officer__List__pc .officer__List__pc__innerL .officer__List__body, .about.corporate.organization.officer .officer__List__pc .officer__List__pc__innerR .officer__List__body {
      font-size: 1.6rem;
      padding: 40px 40px 50px 40px;
      border-bottom: none;
      background: #f8f9fc; }
      .about.corporate.organization.officer .officer__List__pc .officer__List__pc__innerL .officer__List__body .officer__List__close, .about.corporate.organization.officer .officer__List__pc .officer__List__pc__innerR .officer__List__body .officer__List__close {
        text-align: center;
        margin: 5rem auto 0 auto;
        cursor: pointer; }
        .about.corporate.organization.officer .officer__List__pc .officer__List__pc__innerL .officer__List__body .officer__List__close::after, .about.corporate.organization.officer .officer__List__pc .officer__List__pc__innerR .officer__List__body .officer__List__close::after {
          width: 20px;
          height: 20px;
          display: inline-block;
          vertical-align: text-bottom;
          font-size: 1.8rem;
          color: palette("basic", "text");
          content: "x";
          line-height: 1;
          -webkit-font-smoothing: antialiased;
          -moz-osx-font-smoothing: grayscale; }
    .about.corporate.organization.officer .officer__List__pc .officer__List__pc__innerL .officer__List__text, .about.corporate.organization.officer .officer__List__pc .officer__List__pc__innerR .officer__List__text {
      margin: 0 0 50px 0; }
@media(max-width: 768px) {
  .about.corporate.organization.officer .officer__List__pc {
    display: none; } }

.about.corporate.organization.officer .officer__List__pc .officer__List__toggle + .officer__List__body {
	max-height: 0;
	padding: 0 40px;
	opacity: 0;
  overflow: hidden;
  transition: max-height 0.4s ease, opacity 0.2s ease, padding 0.4s ease;
}
.about.corporate.organization.officer .officer__List__pc .officer__List__toggle.is-open + .officer__List__body {
	max-height: 2000px;
  padding: 40px 40px 50px 40px;
	opacity: 1;
}
.about.corporate.organization.officer .officer__List .officer__List__toggle + .officer__List__body {
	max-height: 0;
	padding: 0 40px;
	opacity: 0;
  overflow: hidden;
  transition: max-height 0.4s ease, opacity 0.2s ease, padding 0.4s ease;
}
.about.corporate.organization.officer .officer__List .officer__List__toggle.is-open + .officer__List__body {
	max-height: 2000px;
  padding: 40px 40px 50px 40px;
	opacity: 1;
}

.about.corporate.organization.officer .officer__List__pc .officer__List__pc__innerL .officer__List__head strong.nameSmall, .about.corporate.organization.officer .officer__List__pc .officer__List__pc__innerR .officer__List__head strong.nameSmall {
	font-size: 1.8rem;
}
.about.corporate.organization.officer .officer__List__pc .officer__List__pc__innerL .officer__List__head strong.nameXSmall, .about.corporate.organization.officer .officer__List__pc .officer__List__pc__innerR .officer__List__head strong.nameXSmall {
	font-size: 1.6rem;
}
.about.corporate.organization.officer .officer__List__pc .officer__List__pc__innerL .officer__List__head__name .small.concurrentSmall, .about.corporate.organization.officer .officer__List__pc .officer__List__pc__innerR .officer__List__head__name .small.concurrentSmall {
	font-size: 1rem; }
.about.corporate.organization.officer .officer__List__pc .officer__List__pc__innerL .officer__List__head__name .small.concurrentXSmall, .about.corporate.organization.officer .officer__List__pc .officer__List__pc__innerR .officer__List__head__name .small.concurrentXSmall {
	font-size: 0.9rem; }
.about.corporate.organization.officer .officer__List__pc .officer__List__pc__innerL .officer__List__head__name .small.concurrentNone, .about.corporate.organization.officer .officer__List__pc .officer__List__pc__innerR .officer__List__head__name .small.concurrentNone,
.about.corporate.organization.officer .officer__List .officer__List__head__name .small.concurrentNone {
	display: none;
}