@charset "utf-8";
.sub_box img{width: auto!important; height: auto!important;}

/* ===== IR アイコン設定 ===== */
/* 基本アイコン設定 */
.icon_p-ir {
  position: relative;
  padding-left: 30px; /* アイコン分のスペース確保 */
}

.icon_p-ir::before {
  content: '';
  position: absolute;
  left: 0;
  right: 0;
  top: 0;
  bottom: 0;
  margin: auto;
  width: 100%;
  height: 100%;
  background-size: 60px 60px;
  background-repeat: no-repeat;
  background-position: center 40%;
}
@media (max-width:768px){
  .icon_p-ir::before {
    background-size: 50px 50px;
    background-repeat: no-repeat;
    background-position: center 35%;
  }
}

/* 各アイコンの背景画像設定 */
.p-ir-highlight::before {
  background-image: url('../images/ir/picto_01.png');
}
.p-ir-highlight2::before {
  background-image: url('../images/ir/picto_02.png');
}
.p-ir-highlight3::before {
  background-image: url('../images/ir/picto_03.png');
}
.p-ir-highlight4::before {
  background-image: url('../images/ir/picto_04.png');
}
.p-ir-highlight5::before {
  background-image: url('../images/ir/picto_05.png');
}
.p-ir-highlight6::before {
  background-image: url('../images/ir/picto_06.png');
}
.p-ir-calendar::before {
  background-image: url('../images/ir/picto_07.png');
}
.p-ir-koukoku::before {
  background-image: url('../images/ir/picto_08.png');
}
.p-ir-finance::before {
  background-image: url('../images/ir/picto_09.png');
}
.p-ir-disclaimers::before {
  background-image: url('../images/ir/picto_10.png');
}
.p-ir-library::before {
  background-image: url('../images/ir/picto_11.png');
}
.p-ir-yuho::before {
  background-image: url('../images/ir/picto_12.png');
}
.p-ir-material::before {
  background-image: url('../images/ir/picto_13.png');
}
.p-ir-tcfd::before {
  background-image: url('../images/ir/picto_14.png');
}
.p-ir-sustainability::before {
  background-image: url('../images/ir/picto_15.png');
}
.p-ir-meeting::before {
  background-image: url('../images/ir/picto_16.png');
}


.rss_button{
	text-align: right;
	display: block;
	margin: -20px 0 30px 0;
}
.rss_button img{ width:68px ; height: 18px;}
@media (max-width:768px){.rss_button{text-align: right;	display: block;	margin: 0 0 20px 0;}}

.irnews-list{border: none;}

.inquire{margin-bottom: 30px;}
.inquire_tel{text-align: center;margin: 0;}

.inquire_tel_close{text-align: left;margin:60px auto 0;font-size: 14px;width:88%;line-height: 1.8;}
@media (max-width:768px){.inquire_tel_close{text-align: left;margin: 0 auto;font-size: 12px;line-height: 1.8;}}


.ir_cate{display:flex;margin:0 -15px 30px}
@media (max-width:768px){.ir_cate{margin: 0 -5% 20px;display: flex;flex-direction: column;}}

.ir_cate-heading{margin-bottom:30px;text-align:center;font-size:20px;font-size:2rem;font-weight:500;line-height:1.3}
.ir_cate-list-description{color:#555;letter-spacing:.08em;font-size:14px;font-size:1.4rem;font-weight:400;line-height:1.8;margin-bottom: 30px;}
@media (max-width:768px){.ir_cate-list-description{font-size:12px;font-size:1.2rem;margin-bottom: 20px}}

.ir_cate-item{max-width:50%;padding:0 15px;flex-basis:50%}
@media (max-width:768px){.ir_cate-item{min-width: 100%; max-width:100%;margin-bottom:20px;flex-basis:100%}.ir_cate-item:last-child{margin-bottom:0}}
.ir_cate-item-4{max-width:25%;padding:0 15px;flex-basis:25%}
@media (max-width:768px){.ir_cate-item-4{min-width: 100%;max-width:100%;margin-bottom:20px;flex-basis:100%}.ir_cate-item:last-child{margin-bottom:0}}

.ir_cate-item-inner{height:100%;padding:10% 15%;background-color:#fff;border: 1px solid #000}
@media (max-width:768px){.ir_cate-item-inner{padding:10% 10%}}
.ir_cate-item-inner-4{height:100%;padding:10% 15%;background-color:#fff;border: 1px solid #000}
@media (max-width:768px){.ir_cate-item-inner-4{padding:5% 10%}}

.ir_cate ul.text_list{
	padding: 0 0 0 20px;
	font-size: 14px;
	font-size: 1.4rem;
	font-weight: 400;
	line-height: 3rem;
	text-align: left;
}
@media (max-width:768px){
.ir_cate ul.text_list{
	padding: 0;
	font-weight: 400;
	line-height: 3rem;
	text-align: left;
}
}
.ir_cate ul.text_list li::before{
	content: "■";
    font-size: 8px;
    vertical-align: middle;
	padding: 0 10px 0 0;
}
@media (max-width:768px){
.ir_cate ul.text_list li::before{
	content: "■";
    font-size: 6px;
    vertical-align: middle;
	padding: 0 10px 0 0;
}
}
ul.text_list a{
	position: relative;
	display: inline-block;
	border-bottom: 1px solid #999999;
}
@media (max-width:768px){
ul.text_list a{
	display: inline;
}
}
ul.text_list a::after {
  position: absolute;
  bottom: -1px;
  left: 0;
  content: '';
  width: 100%;
  height: 2px;
  background: #e872a7;
  transform: scale(0, 1);
  transform-origin: right top;
  transition: transform .3s;
}
ul.text_list a:hover::after {
  transform-origin: left top;
  transform: scale(1, 1);
}
.newwindow::after{font-family:icomoon!important;margin-left:10px;content:'\e904';color:#777;font-size:10px;font-size:1rem;font-weight:400;line-height:1}

.maintenance{
	text-align: center;
	margin: 100px auto 100px;
	font-size: 16px;
	font-size: 1.6rem;
	line-height: 3.0rem;
}
@media (max-width:768px){
.maintenance{
	text-align: center;
	margin: 20% auto 20%;
	font-size: 14px;
	font-size: 1.4rem;
	line-height: 2.5rem;

}
}


.c-heading2{position:relative;margin-bottom:3.47222vw;padding-bottom:20px;text-align:center;letter-spacing:.04em;color:#030303;font-size:24px;font-size:2.4rem;font-weight:700;line-height:1}.c-heading2::after{position:absolute;bottom:0;left:50%;width:13px;height:2px;content:'';transform:translateX(-50%);background-color:#e872a7}@media (max-width:1023px){.c-heading2{margin-bottom:8vw}}@media (max-width:768px){.c-heading2{padding-bottom:14px;font-size:18px;font-size:1.8rem}}
.sub_box h2.c-heading2 {
	text-align: left;
	font-size: 28px;
	font-size: 2.8rem;
	margin-top: 60px;
}

.sub_box h2.c-heading2:after{
	left: 10px;
}

@media (max-width:768px){
	.sub_box .c-heading2 {
		font-size: 26px;
		font-size: 2.6rem;
		margin-top: 6%
		}
}

.ir_content_txt{
	font-size: 14px;
	font-size: 1.4rem;
	font-weight: 400;
	line-height: 3rem;
	text-align: left;
	margin-bottom: 30px;
}
@media (max-width:768px){.ir_content_txt{line-height: 2.5rem;}}

.bottom_attention{
	font-size: 12px;
	font-size: 1.2rem;
	line-height: 2.0rem;
}

/* 英訳レポート追加 */
h3.for_English{
	font-size:20px;
	font-weight: bold;
	text-align: left;
	margin: 140px auto 20px 20px;
}
#EnglishReports ul {
    padding: 0 0 0 20px;
    font-size: 14px;
    font-size: 1.4rem;
    font-weight: 400;
    line-height: 3rem;
    text-align: left;
}
#EnglishReports li {
    list-style-type: none;
    list-style-position: inside;
    font-size: 14px;
    padding-bottom: 5px;
}
#EnglishReports li::before {
    content: "■";
    font-size: 8px;
    vertical-align: middle;
    padding: 0 10px 0 0;
}
#EnglishReports li .nrHead{
	font-weight:bold;
}
#EnglishReports li img{
	margin:0 0.5em;
	vertical-align:middle;
	width:16px;
	height:auto;
}
#EnglishReports li a {
	position: relative;
	display: inline-block;
    border-bottom: 1px solid #999999;
}
#EnglishReports li a::after {
	position: absolute;
    bottom: -1px;
    left: 0;
    content: '';
    width: 100%;
    height: 2px;
    background: #e872a7;
    transform: scale(0, 1);
    transform-origin: right top;
    transition: transform .3s;
}
#EnglishReports li a:hover::after {
    transform-origin: left top;
    transform: scale(1, 1);
}
@media (max-width:767px){
	h3.for_English{
        font-size:18px;
        font-weight: bold;
        text-align: left;
	margin: 40px auto 20px 10px;
    }

	#EnglishReports ul{padding: 0!important;}
	#EnglishReports li{line-height: 1.6;margin-bottom: 10px;text-align: right;display: inline-block;}
	#EnglishReports li a{width: 90%;display: inline-flex;text-align: left;}
	#EnglishReports li img{margin: -5px 0 0 auto!important;}
	#EnglishReports li span.irKB{margin: 5px 0 0 auto;display: inline-block;}
}

.sub_box h2.c-heading span{
	text-align: left;
	font-size: 20px;
	font-size: 2.0rem;
	margin-left: 30px;
	font-weight: normal;
}
@media (max-width:767px){
.sub_box h2.c-heading span{
	text-align: left;
	font-size: 16px;
	font-size: 1.6rem;
	margin-left: 20px;
	font-weight: normal;
}
}




/* アイル追加分 */
div#ir_library{margin-bottom:60px}
@media (max-width:767px){div#ir_library{margin-bottom:8vw;}}

div#ir_library div#announcement dt span{color:#E872A7!important;font-family:benton-sans-condensed, "Helvetica Neue", Helvetica, Arial, sans-serif;}
div#ir_library dl{
	margin-bottom:6px!important;
	margin-left: 0!important;
	font-size: 16px;
	padding-top:6px!important;
	border-top:1px solid #EBEBEB!important;
}
div#ir_library dt{padding-top:14px!important;}
div#ir_library dl dt{font-size:14px;}

div#ir_library div#announcement dt img{margin: -1px 0 0 0;}
div#ir_library dd{
	font-size: 14px!important;
	font-size: 1.4rem!important;
	line-height: 2.5rem!important;
	border-bottom:1px solid #EBEBEB!important;
}
div#ir_library div#announcement dd{
	padding:16px 0 8px 0!important;
}
@media (max-width:767px){div#ir_library dd{line-height:1.4 }}
div#ir_library dd img{ margin: -4px 0 0 12px; vertical-align: middle;height:12px;width:auto;}


div#ir_library div#announcement dt span{font-size:14px!important;font-weight: normal!important;}
div#ir_library dl dd{font-size:14px!important;}
div#ir_library dd a{font-size:14px!important;}

div#ir_library a{
	position: relative;
	display: inline-block;
}
div#ir_library a::after {
  position: absolute;
  bottom: -1px;
  left: 0;
  content: '';
  width: 100%;
  height: 1px;
  background: #e872a7;
  transform: scale(0, 1);
  transform-origin: right top;
  transition: transform .3s;
}
div#ir_library a:hover::after {
  transform-origin: left top;
  transform: scale(1, 1);
}
div#divDataArea{font-size: 16px;}
@media (max-width:767px){div#divDataArea{font-size: 14px; }}


/* ライブラリー用 */
div#divSelect,div#divSelect2{margin-bottom:20px;}
div#ir_library dt{position:inherit!important;float: left;}
div#ir_library dd{padding:8px 0 8px 0!important;}
div#ir_library dl dt{color:#E872A7!important;font-family:benton-sans-condensed, "Helvetica Neue", Helvetica, Arial, sans-serif;font-weight: normal!important;}
div#divSelect span,div#divSelect2 span{font-size: 12px!important;}
@media (max-width:767px){div#divSelect span,div#divSelect2 span{display: block;line-height: 1.8rem;margin-top: 6px;}}

/* yuho用 */
.text_haikei3 {
	margin:30px 0 20px 0;
	font-size:16px;
	font-weight: normal;
	color: #003366;
	background-color: #fff;
	background-image: none;
	padding:12px 12px 12px 15px;
	display: block;
	border-left: 5px solid #003366;
	border-bottom: 1px solid #003366;
	border-top: none;
}
div#yuhoTable td,
div#mkr td{
border-right:#003366 solid 1px;
border-bottom:#003366 solid 1px;
font-size:14px;
}
div#yuhoTable td.yuhotitle,
div#mkr td.yuhotitle{
width:50%;
background:#ebebeb;
padding:15px 0;
padding-left:1em;
}
div#yuhoTable td.yuhopdf,
div#mkr td.yuhopdf{
width:50%;
padding:15px 0;
padding-left:1em;
}
@media (max-width:767px){div#yuhoTable td.yuhopdf,div#mkr td.yuhopdf{line-height: 2.0rem;}}

div#yuhoTable td.yuhohtml,
div#mkr td.yuhohtml{
width:50%;
padding:15px 0;
padding-left:1em;
}

div#ir_library p{
	font-size: 14px;
	font-size: 1.4rem;
	font-weight: 400;
	line-height: 3rem;
	text-align: left;
	margin-top: 30px;
	margin-bottom: 30px;
}
@media (max-width:767px){div#ir_library p{line-height: 2.5rem;}}


#eirNewReleaseZip{margin:40px auto!important;}
.eirZip{font-size: 12px;font-size: 1.2rem;max-width: 280px;font-weight: 500!important;}
@media (max-width:767px){
	#eirNewReleaseZip{margin:20px auto 80px!important;}
	#eirNewRelease ul{padding: 0!important;}
	#eirNewRelease li{line-height: 1.6;margin-bottom: 10px;text-align: right;display: inline-block;}
	#eirNewRelease li a{width: 90%;display: inline-flex;text-align: left;}
	#eirNewRelease li img{margin: -5px 0 0 auto!important;}
	#eirNewRelease li span.irKB{margin: 5px 0 0 auto;display: inline-block;}
	.eirZip{font-size: 12px;font-size: 1.2rem;max-width: 240px;border-width: 2px!important;}
}
div#yuhoTable td img, div#teiseiTable td img{display:none;}

img.eirpic{width:auto;height:auto;}

/* アイル追加分ここまで */:root {
  --spacing-unit: 0.5rem;
  --spacing-1: calc(var(--spacing-unit) * 1);
  --spacing-2: calc(var(--spacing-unit) * 2);
  --spacing-3: calc(var(--spacing-unit) * 3);
  --spacing-5: calc(var(--spacing-unit) * 5);
  --spacing-8: calc(var(--spacing-unit) * 8);
  --spacing-13: calc(var(--spacing-unit) * 13);
  --spacing-21: calc(var(--spacing-unit) * 21);
  --spacing-34: calc(var(--spacing-unit) * 34);
  --spacing-55: calc(var(--spacing-unit) * 55);
  --spaceing-head: var(--spacing-34);
  --text-xxs: calc(1.4rem * 8 / 11);
  --text-xs: calc(1.4rem * 8 / 10);
  --text-sm: calc(1.4rem * 8 / 9);
  --text-base: calc(1.4rem * 8 / 8);
  --text-base-height: calc(var(--text-base) + (4px * 4));
  --text-lg: calc(1.4rem * 8 / 7);
  --text-lg-height: calc(var(--text-lg) + (4px * 4));
  --text-xl: calc(1.4rem * 8 / 6);
  --text-xl-height: calc(var(--text-xl) + (4px * 4));
  --text-2xl: calc(1.4rem * 8 / 5);
  --text-3xl: calc(1.4rem * 8 / 4);
  --text-3_5xl: calc(1.4rem * 8 / 3.5);
  --text-4xl: calc(1.4rem * 8 / 3);
  --text-4_5xl: calc(1.4rem * 8 / 2.5);
  --text-5xl: calc(1.4rem * 8 / 2);
  --text-6xl: calc(1.4rem * 8 / 1);
  --line-height-none: calc(1em + (0.25em * 1));
  --line-height-tight: calc(1em + (0.25em * 2));
  --line-height-base: calc(1em + (0.25em * 4));
  --1\/12: 8.333333%;
  --3\/12: 25%;
  --4\/12: 33.33333%;
  --6\/12: 50%;
  --8\/12: 66.666667%;
}

@keyframes fade-in {
  0% {
    visibility: hidden;
    opacity: 0;
  }
  50% {
    visibility: visible;
    opacity: 0.5;
  }
  100% {
    visibility: visible;
    opacity: 1;
  }
}
/* .p-ir
------------------------------------*/
.p-ir .c-btn {
  display: inline-block;
  border: 1px solid #fff;
  padding: var(--spacing-2) var(--spacing-5);
  line-height: 1;
  transition: background 0.2s ease, color 0.2s ease;
}
.p-ir .c-btn:hover {
  background: #fff;
  color: #000;
}
.p-ir .c-btn--02 {
  display: inline-block;
  background: #404040;
  color: #fff;
  padding: var(--spacing-8) var(--spacing-13);
  line-height: 1;
  font-size: var(--text-base);
}
.p-ir .p-ir__box {
  padding: var(--spacing-21) 0;
  max-width: 960px;
  margin: 0 auto;
}
.p-ir .p-ir__box02 {
  padding: 50px 0 var(--spacing-21);
}
@media (max-width: 1023px) {
  .p-ir .p-ir__box {
    padding-right: 35px;
    padding-left: 35px;
    width: 100%;
  }
}
@media (max-width: 767px) {
  .p-ir .p-ir__box {
    padding-right: 10px;
    padding-left: 10px;
    margin-top: 0;
    padding-top: var(--spacing-21);
  }
  .p-ir .p-ir__box.p-ir__box_top {
    padding-top: 40px;
  }
  .p-ir .p-ir__box02 {
    padding-top: 40px;
  }
}
.p-ir h2 {
  font-size: var(--text-3_5xl);
  font-weight: 700;
  line-height: 1.3;
  letter-spacing: 0.1em;
}
.p-ir h2 span {
  font-size: var(--text-sm);
  font-weight: 400;
  display: flex;
  align-items: center;
}
.p-ir h2 span:before {
  content: "";
  height: 1px;
  width: 3em;
  margin-right: var(--spacing-1);
  background: #000;
  display: block;
}
.p-ir__kv {
  background: #E6E6E6;
  color: #fff;
  margin-top: 150px;
}
.p-ir__kv .sub_content_title_area {
  display: flex;
  flex-direction: column;
  /* justify-content: end; */
  margin-top: 145px;
  padding-bottom: 40px;
}
.p-ir__kv .sub_content_title_area .sub_content_title {
  margin-top: 0;
}
.p-ir__kv__wrapper {
  width: 960px;
  margin: 0 auto;
  display: flex;
  justify-content: space-between;
  align-items: center;
}
@media (max-width: 767px) {
  .p-ir__kv .sub_content_title_area {
    margin-top: 120px;
  }
  .p-ir__kv__wrapper {
    display: block;
  }
}
.p-ir__kv__content {
  display: grid;
  gap: var(--spacing-3) 0;
  grid-template-rows: auto 1fr auto;
}
.p-ir__kv h1 {
  font-size: var(--text-4_5xl);
  letter-spacing: 0.05em;
  line-height: calc(1em + 16px);
  font-weight: 700;
}
.p-ir__kv .c-btn {
  color: #fff;
}
.p-ir__kv__dl {
  background: #030303;
  width: 400px;
  height: 400px;
}
@media (max-width: 767px) {
  .p-ir__kv__dl {
    margin-top: var(--spacing-8);
    width: 100%;
  }
}
.p-ir #eirNewRelease {
  margin-top: var(--spacing-8);
}
.p-ir__mission {
  background-image: url("../../assets/images/ir/our-mission_bg.jpg");
  background-position: center center;
  background-repeat: no-repeat;
  background-size: cover;
  padding: var(--spacing-21) 0;
}
.p-ir__mission h2, .p-ir__mission p, .p-ir__mission a {
  color: #fff;
}
.p-ir__mission h2 {
  margin-bottom: var(--spacing-8);
}
.p-ir__mission h2 span:before {
  background: #fff;
}
.p-ir__mission p {
  font-size: var(--text-base);
  line-height: calc(1em + 8px);
}
.p-ir__mission .c-btn {
  margin-top: var(--spacing-8);
}
.p-ir__list {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: var(--spacing-5);
}
@media (max-width: 767px) {
  .p-ir__list {
    grid-template-columns: repeat(2, 1fr);
    gap: var(--spacing-2);
  }
}
.p-ir__list a {
  background: #fff;
  display: flex;
  justify-content: center;
  align-items: center;
  aspect-ratio: 3/2;
  font-size: var(--text-base);
  line-height: var(--line-height-tight);
  position: relative;
  overflow: hidden;
  padding: 78px 1em 0;
}
@media (max-width: 767px) {
  .p-ir__list a {
    font-size: var(--text-sm);
    padding: 7rem 1em 0;
  }
}
.p-ir__list a span {
  font-size: var(--text-sm);
  color: #fff;
  width: 100%;
  background: black;
  position: absolute;
  bottom: 0;
  padding: var(--spacing-2);
  box-sizing: border-box;
  display: flex;
  justify-content: center;
  gap: 0 var(--spacing-1);
  line-height: 1;
  transform: translateY(101%);
  transition: all 0.2s;
}
.p-ir__list a span:before {
  content: "View on WEB";
}
.p-ir__list a span:after {
  content: url("../../assets/images/ir/arrow.svg");
  transform: translateY(-0.15em) rotate(-135deg);
}
.p-ir__list a:hover span {
  transform: translateY(0);
}
.p-ir__businesses {
  background: #F3F3F3;
  padding-bottom: var(--spacing-13);
}
.p-ir__businesses__title {
  padding: var(--spacing-21) 0 0;
  max-width: 960px;
  margin: 0 auto;
}
@media (max-width: 1023px) {
  .p-ir__businesses__title {
    padding-right: 35px;
    padding-left: 35px;
    width: 100%;
  }
}
@media (max-width: 767px) {
  .p-ir__businesses__title {
    padding-right: 10px;
    padding-left: 10px;
  }
}
.p-ir__businesses__scroll-wrapper {
  position: relative;
  margin: 0 auto;
  padding: 0;
}
.p-ir__businesses__arrow {
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  width: 48px;
  height: 48px;
  background: #fff;
  border-radius: 50%;
  display: flex;
  align-items: center;
  justify-content: center;
  cursor: pointer;
  z-index: 10;
  transition: all 0.3s ease;
  box-shadow: 0 2px 8px rgba(0, 0, 0, 0.1);
  border: none;
}
.p-ir__businesses__arrow:hover:not(:disabled) {
  background: #f0f0f0;
  border-color: #999;
  box-shadow: 0 4px 12px rgba(0, 0, 0, 0.15);
}
.p-ir__businesses__arrow:active:not(:disabled) {
  transform: translateY(-50%) scale(0.95);
}
.p-ir__businesses__arrow svg {
  width: 24px;
  height: 24px;
  color: #333;
}
.p-ir__businesses__arrow--prev {
  left: 8px;
}
@media (max-width: 1023px) {
  .p-ir__businesses__arrow--prev {
    left: 10px;
  }
}
@media (max-width: 767px) {
  .p-ir__businesses__arrow--prev {
    left: 5px;
    width: 40px;
    height: 40px;
  }
}
.p-ir__businesses__arrow--next {
  right: 8px;
}
@media (max-width: 1023px) {
  .p-ir__businesses__arrow--next {
    right: 10px;
  }
}
@media (max-width: 767px) {
  .p-ir__businesses__arrow--next {
    right: 5px;
    width: 40px;
    height: 40px;
  }
}
.p-ir__businesses ul {
  display: grid;
  grid-template-columns: repeat(5, 1fr);
  gap: 0 var(--spacing-5);
  margin-top: var(--spacing-13);
  width: 100%;
  overflow-x: scroll;
  padding-right: var(--spacing-5);
  padding-left: var(--spacing-5);
  scroll-behavior: smooth;
}
.p-ir__businesses ul::-webkit-scrollbar {
  display: none;
}
.p-ir__businesses ul li {
  min-width: 300px;
  color: #000000;
}
.p-ir__businesses ul li a {
  display: block;
  padding: var(--spacing-8) 0;
}
.p-ir__businesses ul li h3, .p-ir__businesses ul li p {
  margin: 0 var(--spacing-5);
}
.p-ir__businesses ul li h3 {
  text-align: center;
  font-size: var(--text-3xl);
  aspect-ratio: 4/1;
  display: flex;
  align-items: center;
  justify-content: center;
}
.p-ir__businesses ul .p-ir__businesses__subttl {
  width: 100%;
  aspect-ratio: 7 / 1;
  display: grid;
  place-items: center;
}
.p-ir__businesses ul .p-ir__businesses__subttl p {
  margin-bottom: 0;
  text-align: center;
  margin-top: -10px;
}
.p-ir__businesses ul li p {
  font-size: var(--text-sm);
  margin-top: var(--spacing-3);
  line-height: calc(1em + 8px);
}
.p-ir__businesses ul .p-ir__businesses__thumb {
  width: 100%;
  aspect-ratio: 3/2;
  object-fit: cover;
  object-position: center;
  margin-bottom: var(--spacing-5);
}
.p-ir__businesses--01 {
  background: #FF6400;
}
.p-ir__businesses--02 {
  background: #FFB900;
}
.p-ir__businesses--03 {
  background: #FF0000;
}
.p-ir__businesses--04 {
  background: #FF5AA0;
}
.p-ir__businesses--05 {
  background: #888;
}
.p-ir__businesses--05 h3 img {
  height: 19px;
  transform: translateY(-10%);
}
.p-ir__priorities {
  padding: var(--spacing-21) 0;
  background: #000;
  color: #fff;
  position: relative;
}
.p-ir__priorities video {
  display: block;
  object-fit: cover;
  height: calc(100% - 1px); /* 何故か1px飛び出す */
  width: 100vw;
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  margin: auto;
}
.p-ir__priorities .p-ir__box {
  position: relative;
}
.p-ir__priorities h2 span:before {
  background: #fff;
}
.p-ir__priorities h2, .p-ir__priorities p, .p-ir__priorities a {
  color: #fff;
}
.p-ir__priorities__content {
  margin-top: var(--spacing-21);
  display: flex;
}
@media (max-width: 767px) {
  .p-ir__priorities__content {
    display: block;
  }
}
.p-ir__priorities__content p {
  font-size: var(--text-base);
  line-height: calc(1em + 16px);
}
.p-ir__priorities__content div {
  width: 50%;
}
@media (max-width: 767px) {
  .p-ir__priorities__content div {
    width: 100%;
  }
}
.p-ir__priorities__content--en {
  margin-top: var(--spacing-5);
}
.p-ir__priorities__content .c-btn {
  margin-top: var(--spacing-13);
}
.p-ir__priorities__logo {
  width: 580px;
  display: block;
  margin: -110px auto 0;
}
@media (max-width: 767px) {
  .p-ir__priorities__logo {
    display: none;
  }
}
.p-ir__priorities__logo--sp {
  display: none;
}
@media (max-width: 767px) {
  .p-ir__priorities__logo--sp {
    width: 65%;
    margin-top: var(--spacing-13);
    display: block;
  }
}
.p-ir__salesFact ul {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 0 var(--spacing-5);
  margin-top: var(--spacing-8);
}
@media (max-width: 767px) {
  .p-ir__salesFact ul {
    gap: var(--spacing-2);
    grid-template-columns: repeat(2, 1fr);
  }
}

.p-ir__salesFact ul li {
  background: #eee;
  display: flex;
  align-items: center;
  justify-content: center;
  aspect-ratio: 2/3;
  color: #000;
}
.p-ir__businesspolicy {
  height: 100%;
  overflow: hidden;
  position: relative;
}
.p-ir__businesspolicy__content {
  margin-top: var(--spacing-13);
  display: flex;
}
.p-ir__businesspolicy__content div:first-child {
  width: 55%;
  padding-right: var(--spacing-21);
}
.p-ir__businesspolicy__content div:nth-child(2) {
  width: 45%;
}
.p-ir__businesspolicy__logo {
  width: 50%;
}
.p-ir__businesspolicy__content p {
    font-size: var(--text-base);
    line-height: calc(1em + 12px);
}
.p-ir .p-ir__businesspolicy__content .c-btn {
    display: inline-block;
    border: 1px solid #000;
    padding: var(--spacing-2) var(--spacing-5);
    line-height: 1;
    margin-top: var(--spacing-5);
    color: #000;
    transition: background 0.2s ease, color 0.2s ease;
}
.p-ir .p-ir__businesspolicy__content .c-btn:hover {
    background: #000;
    color: #fff;
}
.p-ir__businesspolicy__logo--sp {
  display: none;
}
@media (max-width: 767px) {
  .p-ir__businesspolicy__content {
    display: block;
  }
  .p-ir__businesspolicy__content div:first-child {
    padding-right: 0;
  }
  .p-ir__businesspolicy__content div {
    width: 95%;
  }
  .p-ir__businesspolicy__logo--pc {
    display: none;
  }
  .p-ir__businesspolicy__logo--sp {
    display: block;
    margin: var(--spacing-5) 0 var(--spacing-1);
  }
  .p-ir__businesspolicy__logo {
    width: 35%;
  }
}
.p-ir__responsibility:before {
  position: absolute;
  content: "";
  width: 90%;
  height: 90%;
  background: #FF5AA0;
  mix-blend-mode: multiply;
  display: block;
  top: 0;
  left: 0;
  z-index: 2;
}
.p-ir__responsibility {
  height: 100%;
  overflow: hidden;
  position: relative;
  color: #fff;
}
.p-ir__responsibility:before {
  position: absolute;
  content: "";
  width: 90%;
  height: 90%;
  background: #FF5AA0;
  mix-blend-mode: multiply;
  display: block;
  top: 0;
  left: 0;
  z-index: 2;
}
@media (max-width: 767px) {
  .p-ir__responsibility:before {
    width: 95%;
    height: 95%;
  }
}
.p-ir__responsibility:after {
  position: absolute;
  content: "";
  width: 105%;
  height: 100%;
  background-image: url("../../assets/images/ir/logo-bg.svg");
  background-repeat: no-repeat;
  background-position: center right;
  display: block;
  top: 0;
  right: -5%;
  z-index: 1;
}
@media (max-width: 767px) {
  .p-ir__responsibility:after {
    right: 0;
  }
}
.p-ir__responsibility h2 span:before {
  background: #fff;
}
.p-ir__responsibility .p-ir__box {
  position: relative;
  z-index: 3;
  padding-bottom: var(--spacing-34);
}
.p-ir__responsibility__content {
  margin-top: var(--spacing-13);
  display: flex;
}
@media (max-width: 767px) {
  .p-ir__responsibility__content {
    display: block;
  }
}
.p-ir__responsibility__content p {
  font-size: var(--text-base);
  line-height: calc(1em + 12px);
    margin-bottom: 20px;
}
.p-ir__responsibility__content div {
  width: 55%;
}
.p-ir__responsibility__content div:nth-child(2) {
  width: 45%;
}
@media (max-width: 767px) {
  .p-ir__responsibility__content div,
  .p-ir__responsibility__content div:nth-child(2) {
    width: 95%;
  }
}
.p-ir__responsibility__content div:first-child {
  padding-right: var(--spacing-21);
}
@media (max-width: 767px) {
  .p-ir__responsibility__content div:first-child {
    padding-right: 0;
  }
}
.p-ir__responsibility__content--en {
  margin-top: var(--spacing-5);
}
.p-ir__responsibility__content .c-btn {
  margin-top: var(--spacing-5);
  color: #fff;
}
.p-ir__responsibility__images {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 0 var(--spacing-3);
}
@media (max-width: 767px) {
  .p-ir__responsibility__images {
    margin-top: var(--spacing-13);
  }
}
.p-ir__responsibility__images img {
  max-width: 100%;
  aspect-ratio: 4/6;
  object-fit: cover;
}
.p-ir__portfolio {
  background: #F3F3F3;
}
.p-ir__portfolio .sub_box {
  padding: var(--spacing-21) 0 var(--spacing-13);
}
.p-ir__portfolio .p-ir__list {
  margin-top: var(--spacing-8);
}
.p-ir__library {
  background: #F3F3F3;
}
.p-ir__library .sub_box {
  padding: var(--spacing-21) 0 var(--spacing-13);
}
.p-ir__library .p-ir__list {
  margin-top: var(--spacing-8);
}
.p-ir__sustainability {
  background: #F3F3F3;
}
.p-ir__sustainability .sub_box {
  padding: var(--spacing-21) 0 var(--spacing-13);
}
.p-ir__sustainability .p-ir__list {
  margin-top: var(--spacing-8);
}
.p-ir__contact {
  background: #F3F3F3;
}
.p-ir__contact__content {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  margin-top: var(--spacing-8);
}
@media (max-width: 767px) {
  .p-ir__portfolio .p-ir__box h2 {
    margin-top: 2rem;
  }
  .p-ir__contact__content {
    grid-template-columns: auto;
  }
}
.p-ir__contact__content p {
  font-size: var(--text-base);
  line-height: calc(1em + 12px);
  padding-right: var(--spacing-8);
}
@media (max-width: 767px) {
  .p-ir__contact__content p {
    padding-right: 0;
  }
}
.p-ir__contact__content div {
  text-align: center;
}
@media (max-width: 767px) {
  .p-ir__contact__content div {
    margin-top: var(--spacing-8);
  }
}

.p-ir__po-relative {
  position: relative;
}

/* ===== 言語切り替え ===== */
.sub_wrapper {
  position: relative;
}
.sub_wrapper .ir_langage_wrap {
  top: 0;
}
.ir_langage_wrap {
  width: 100px;
  position: absolute;
  top: var(--spacing-21);
  right: 0;
  z-index: 1;
}
.ir_langage {
  display: flex;
  align-items: center;
  gap: 8px;
  margin: 0;
  padding: 0;
  list-style: none;
  justify-content: flex-end;
}

.ir_langage::before {
  font-family: icomoon !important;
  content: '\e9c9';
  color: #030303;
  font-size: 16px;
  line-height: 1.0;
  vertical-align: middle;
  flex-shrink: 0;
}

.ir_langage li {
  font-size: 14px;
  font-weight: 500;
  color: #333;
  line-height: 1.0;
  top: 2px;
  position: relative;
}

.ir_langage .ir_langage_active {
  color: #a0a0a0;
}

.ir_langage li:not(:last-child)::after {
  content: '|';
  margin-left: 8px;
  color: #333;
  top: -1px;
  position: relative;
}

.ir_langage a {
  color: #333;
  text-decoration: none;
  transition: color 0.2s ease;
  position: relative;
}

.ir_langage a::after {
  position: absolute;
  bottom: -5px;
  left: 0;
  content: '';
  width: 100%;
  height: 2px;
  background-color: #e872a7;
  transform-origin: left top;
  transform: scale(0, 1);
  transition: transform .3s;
}

.ir_langage a:hover::after {
  transform-origin: left top;
  transform: scale(1, 1);
}

/* レスポンシブ対応 */
@media (max-width: 768px) {
  /* .ir_langage_wrap {
    width: 80px;
    right: 10px;
  }
  .ir_langage {
    margin: 15px 0;
    gap: 6px;
  }　*/

  .ir_langage::before {
    font-size: 1.3rem;
  }

  .ir_langage li {
    font-size: 1.0rem;
    top: 1px;
  }
  .ir_langage_wrap {
    top: -10px;
    right: 16px;
  }
  .p-ir__box_top .ir_langage_wrap {
    top: 30px;
  }
  .sub_wrapper .ir_langage_wrap {
    top: -10px;
  }
}
.sub_content .sub_content_title {
  margin-top: 145px;
}
@media (max-width: 767px) {
  .sub_content .sub_content_title {
    margin-top: 120px;
  }
}