@charset "utf-8";

:root {
  --ir-news-menu-width: 92%;
  --ir-news-list-transition: all 0.3s ease-out;
}

.container_block {
  display: flex;
  flex-direction: row-reverse;
  flex-wrap: wrap;
  justify-content: center;
}

.container_block .container {
  flex: 1 1;
  max-width: calc(100% - 250px);
  min-width: 80%;
}

.ir-menu--side {
  position: sticky;
  top: 0;
  text-align: left;
  border: 1px solid #dedede;
  height: fit-content;
  flex: 1 1 250px; /* flex-basis: 250px; を設定しないと、回り込みが効かない */
  max-width: 250px;
}

.ir-menu--side__group {
  border-bottom: 1px solid #dedede;
  margin: 0 10px;
}
.ir-menu--side__group:last-child {
  border-bottom: none;
}

.ir-menu--side__group-title {
  font-weight: 700;
  font-size: 14px;
  line-height: 20px;
  color: #34B792;
  padding: 16px 0;
  text-align: left;
  position: relative;
  cursor: pointer;
}

.ir-menu--side__group-title::after {
    content: "";
    position: absolute;
    transform: translateY(-50%);
    top: 50%;
    right: 20px;
    width: 10px;
    height: 10px;
    transition: var(--ir-news-list-transition);
    background: url("../../images/arrow-list-item.svg") no-repeat center center / cover;
}

.ir-menu--side__group-title.show::after {
    transform: translateY(-50%) rotate(90deg);
}

.ir-menu--side__list {
  transition: var(--ir-news-list-transition);
  opacity: 0;
  margin: 0 20px;
  display: flex;
  flex-direction: column;
  max-height: 0;
  overflow: hidden;
  gap: 8px;
}
.ir-menu--side__list.show {
  max-height: 1000px;
  opacity: 1;
}

.ir-menu--side__item a {
  text-decoration: none;
  display: block;
  font-weight: 400;
  font-size: 12px;
  line-height: 100%;
  color: #333;
}
.ir-menu--side__item a:active,
.ir-menu--side__item a:hover,
.ir-menu--side__item a:focus {
  color: #34B792;
}
.ir-menu--side__item:last-child {
  margin-bottom: 16px;
}

.ir-menu--side__item a::before {
  content: ">";
  font-weight: 400;
  transform: scaleY(2);
  display: inline-block;
  color: #34B792;
  margin-right: 10px;
}

.ir-menu {
  margin: 0 auto;
  padding-bottom: 50px;
  width: var(--ir-news-menu-width);
  text-align: center;
}

.ir-menu__title {
  grid-area: ir-menu-title;
  font-style: normal;
  font-weight: 500;
  font-size: 40px;
  line-height: 58px;
  color: #333;
  text-align: left;
}

.ir-menu__section {
  display: grid;
  grid-gap: 20px;
  grid-template-columns: repeat(auto-fit, minmax(330px, 1fr)); // @media screen and (max-width:740px) が効く前に縦積みにならないように調整
  margin-top: 20px;
}

.ir-menu__group {
  border: 1px solid #DEDEDE;
}

.ir-menu__group-title {
  font-style: normal;
  font-weight: 700;
  font-size: 16px;
  line-height: 100%;
  color: #34B792;
  border-left: 5px solid #34B792;
  text-align: left;
  padding: 5px 0 5px 10px;
  margin: 30px 0 11px 20px;
  pointer-events: none; // 縦積み外での開閉処理を防ぐ
}

.ir-menu__list {
  display: flex;
  flex-direction: column;
  gap: 12px;
  padding: 21px 0;
  margin: 0 19px;
  border-top: 1px solid #DEDEDE;
}

@media screen and (max-width:740px) {
  .ir-menu__title {
    font-size: 20px;
  }

  .ir-menu__group-title {
    height: 25px;
    margin: 11px 0 11px 20px;
    padding: 0 0 0 10px;
    display: flex;
    align-items: center;
    cursor: pointer;
    pointer-events: auto;
    position: relative;
  }
  .ir-menu__group-title.show::after {
    transform: translateY(-50%) rotate(90deg);
  }
  .ir-menu__group-title::after {
    content: "";
    position: absolute;
    transform: translateY(-50%);
    top: 50%;
    right: 20px;
    width: 10px;
    height: 10px;
    transition: var(--ir-news-list-transition);
    background: url("../../images/arrow-list-item.svg") no-repeat center center / cover;
  }

  .ir-menu__list {
    /* メニューが縦積みになったときにリストがデフォルトで隠れるようにする */
    max-height: 0;
    transition: var(--ir-news-list-transition);
    opacity: 0;
    padding: 0;
    overflow: hidden;
  }

  .ir-menu__list.show {
    max-height: 100%;
    padding: 21px 0;
    margin: 0 19px;
    opacity: 1;
  }
}

.ir-menu__list a {
  display: block;
  text-align: left;
  text-decoration: none;
  font-weight: 400;
  font-size: 16px;
  color: #333;
}

.ir-menu__list a:hover,
.ir-menu__list a:focus,
.ir-menu__list a:active {
  color: #34B792;
}

.ir-menu__list a::before {
  content: ">";
  font-weight: 400;
  transform: scaleY(2);
  margin-right: 10px;
}

.ir-news__term {
  font-style: normal;
  font-weight: 700;
  font-size: 18px;
  line-height: 26px;
  color: #34B792;
}

.ir-news {
  max-width: 80%;
  min-width: 350px;
  margin: 0 auto;
}

.ir-news__item {
  border-bottom: 1px solid #dedede;
}

.ir-news__link {
  padding: 15px 20px;
  text-decoration: none;
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  justify-content: space-between;
  column-gap: 40px;
}

.ir-news__date {
  color: #333;
  font-size: 14px;
  font-weight: 400;
}

.ir-news__label {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  color: #34B792;
  font-size: 11px;
  font-weight: 700;
  min-width: 100px;
  height: 28px;
  border: 1px solid #34B792;
}

.ir-news__title {
  color: #333;
  font-size: 13px;
  font-weight: 400;
  flex: 1 1 0px;
  text-align: left;
  text-overflow: ellipsis;
  overflow: hidden;
  padding: 10px 0;
}

@media screen and (max-width:740px) {
  .ir-news__date {
    font-size: 12px;
  }
  .ir-news__title {
    flex: 1 1 100%;
    font-size: 14px;
  }
}

.ir-news__title.pdf {
  position: relative;
  padding-right: 20px;
}

.ir-news__title.pdf::after {
  display: inline-block;
  width: 14px;
  height: 14px;
  content: url("../../images/acrobat.svg");
  position: absolute;
  right: 0;
  top: 50%;
  transform: translateY(-50%);
}


/* RSS ---------------------------- */
.irLibrary .irRSS{
    text-align: right;
    padding-right: 21px;
}
.irLibrary .irRSS a{
	font-size: 13px;
	text-decoration:none;
	font-weight: 400;
}
.irLibrary .irRSS img{
	margin-right:1em;
	width:16px;
	height:auto;
}

/* 全般 ---------------------------- */
.irLibrary{
	width: 90%;
	max-width:calc(100% - 40px);
	margin:0 auto 50px auto;
}
.irLibrary.wideLibrary{
	width: 92%;
	max-width: 92%;
	margin-bottom: 0px;
}
.irLibrary div.newsbox{
	width: 100%;
}

.irLibrary * {
	-ms-box-sizing: border-box;
	-o-box-sizing: border-box;
	box-sizing: border-box;
}

.irLibrary h3{
    padding-left: 20px;
    font-size: 17px;
    font-weight: 500;
    line-height: 2.0;
    border-left: rgb(63, 168, 133) solid 3px;
    box-sizing: border-box;
    text-align:left;
}
.irLibrary #dataList{
	margin-bottom:30px;
}
.irLibrary .irGroupWrap{
	margin-top : -70px;
	padding-top : 70px;
	margin-bottom: 50px;
}
.irLibrary .irGroup{
	margin-bottom:30px;
	font-weight:300;
	margin-bottom:30px;
}
.irLibrary .irGroup:last-child{
	margin-bottom:0;
}
.irLibrary .noItem{
	font-weight: 300;
	margin-bottom: 30px;
}

/* リスト ---------------------------- */
.irLibrary dl{
	display:table;
	margin:0;
	width:100%;
	border-bottom:1px solid #e5e5e5;
	text-align:left !important;
}
.irLibrary dt,
.irLibrary dd {
/*
    display: inline-flex;
    align-items: center;
*/
	display: table-cell;
	vertical-align: top;
    padding: 1em 0;
	margin:0;
	font-weight:300;
	font-size: 14px;
/*
	line-height: normal;
	line-height: 20px;
*/
	line-height: 1.0;
}
.irLibrary dt .irDate{
/*
	line-height: 20px;
*/
}
.irLibrary dt a,
.irLibrary dd a{
	text-decoration: none;
}
.irLibrary dt{
	padding-right:1em;
	width:1px;
	white-space:nowrap;
}
.irLibrary .teiseiDt{
	visibility:hidden;
}

.irLibrary img{
	vertical-align:middle;
}
.irLibrary dt img{
	margin-left:0.5em;
}
.irLibrary dd img {
	margin:0 0.5em;
}
.irLibrary .comment{
	font-size:80%;
    font-size: 80%;
    line-height: 15px;
}
.irLibrary div.newsbox .newslist ul li .comment{
	line-height: 12px;
}

.irLibrary div.newsbox .newslist ul li .entry .ttl{
	padding-left: 0px !important;
	float: none !important;
}

.irLibrary .noData{
	font-weight: 300;
	font-size: 14px;
	min-height: 175px;
	margin-top: 20px;
	text-align: left;
}

.irLibrary.governanceList,
.irLibrary.governanceList dl,
.irLibrary.governanceList .noData,
.irLibrary.governanceList #dataList,
.irLibrary.governanceList .irGroupWrap{
	border-bottom: 0px !important;
	padding-bottom: 0px !important;
	margin-bottom: 0px !important;
	min-height: 0px !important;
	text-align: right !important;
}
/* カテゴリアイコン ---------------------------- */
.irLibrary .cat-text{
	display:inline-block;
	width:100px;
	margin-left:1em;
	padding:0.5em 0;
	color:#FFF;
	font-size:80%;
	text-align:center;
}
/* .irLibrary .cat-tanshin{
	background-color:#000;
}
.irLibrary .cat-yuho{
	background-color:#000;
}
.irLibrary .cat-pr,
.irLibrary .cat-press{
	background-color:#000;
}
.irLibrary .cat-announcement{
	background-color:#000;
}
.irLibrary .cat-ir_material{
	background-color:#000;
}
.irLibrary .cat-ir_material_for_fiscal_ym{
	background-color:#000;
} */

/* ファイルアイコン ---------------------------- */
.pdfIcon{
	width:16px;
	height:auto;
}

.newslist .pdfIcon {
    width: 14px;
    height: auto;
    margin-top: -2px;
}

/* NEWアイコン ---------------------------- */
.newIcon{
	display:inline-block;
	background-color:#F90;
	margin-left:0.5em;
	padding:3px 6px;
	color:#FFF;
	font-size:80%;
	text-align:center;
}

/* IRカレンダー ---------------------------- */
.irLibrary #irCalendar{
	text-align: center;
}
.irLibrary #irCalendar img{
	width: auto;
	height:auto;
	/*border:1px solid #ccc;*/
	display: none;
}
.irCalendar dt{
	width:110px;
}
#irCalNote{
	font-weight: 300;
	text-align: left;
	font-size: 13px;
	margin-bottom: 50px;
}

/* サムネイル ---------------------------- */
.irLibrary .thumbnail{
	width:●px;
	height:auto;
	margin:0;
	border:1px solid #ccc;
}


/* 最新資料 ---------------------------- */
#eirNewRelease ul{
	padding-left:0;
}
#eirNewRelease li{
	list-style-type:none;
	list-style-position:inside;
	padding:0.5em 0;
}
#eirNewRelease li .nrHead{
	font-weight:bold;
}
#eirNewRelease li img{
	margin:0 0.5em;
	vertical-align:middle;
}


/* タブ ---------------------------- */
.irLibrary #tabList{
	margin:1em auto;
	padding:0;
	list-style:none;
	text-align: left;
}
.irLibrary #tab{
	display:inline-block;
}
.irLibrary #tab li{
	margin:0 10px 0 0;
	padding:0;
	display:inline-block;
}
.irLibrary #tab li:last-child{
	margin-right:0;
}
.irLibrary #tab li a{
	font-weight: 400;
	width:170px;
	display:block;
	position:relative;
	background-color:#FFF;
	padding:15px;
	color:rgb(63, 168, 133);
	text-align:center;
	text-decoration:none;
	border:1px solid rgb(63, 168, 133);
	outline: none;
	-webkit-transition: all 0.3s ease;
	-moz-transition: all 0.3s ease;
	-o-transition: all 0.3s ease;
	-ms-transition: all 0.3s ease;
}
.irLibrary #tab li a.selected,
.irLibrary #tab li a:hover{
	color:#FFF;
	background-color:rgb(63, 168, 133);
	text-decoration:none;
}

/*#tab #nav1 a{
	background-position:-110px 0;
}
#tab #nav2 a{
	background-position:-220px 0;
}
#tab #nav3 a{
	background-position:-330px 0;
}
#tab #nav4 a{
	background-position:-440px 0;
}
#tab #nav5 a{
	background-position:-550px 0;
}
#tab #nav0 a:hover{ background-position:0 -30px;}
#tab #nav1 a:hover{ background-position:-110px -30px;}
#tab #nav2 a:hover{ background-position:-220px -30px;}
#tab #nav3 a:hover{ background-position:-330px -30px;}
#tab #nav4 a:hover{ background-position:-440px -30px;}
#tab #nav5 a:hover{ background-position:-550px -30px;}

#tab #nav0 a.selected{ background-position:0 -30px!important;}
#tab #nav1 a.selected{ background-position:-110px -30px!important;}
#tab #nav2 a.selected{ background-position:-220px -30px!important;}
#tab #nav3 a.selected{ background-position:-330px -30px!important;}
#tab #nav4 a.selected{ background-position:-440px -30px!important;}
#tab #nav5 a.selected{ background-position:-550px -30px!important;}*/

/* メニュー・プルダウン */
.irLibrary #yearList{
	margin-bottom:24px;
	text-align: left;
}
#ancList{
	margin-bottom:30px;
	text-align: left;
}
.irLibrary .yearSelect{
	padding:10px 20px;
}
#ancList ul,
.irLibrary .yearMenu{
	padding:0;
	display:inline-block;
}
.irLibrary div#ancList li,
.irLibrary .yearMenu li{
	display:inline-block;
	padding:0;
	margin-right:16px;
	margin-bottom: 15px;
	font-weight: 300;
	font-size: 14px;
}
.irLibrary div#ancList li:last-child,
.irLibrary .yearMenu li:last-child{
	margin-right:0;
}
.irLibrary div#ancList li.active a,
.irLibrary .yearMenu li.active a{
	color: rgb(63, 168, 133);
}
/*三角アイコン
#ancList li a:before,
.yearMenu li a:before {
    display:inline-block;
    content: "";
    border: 5px solid transparent;
    border-left: 5px solid #000;
}
*/

/* 財務データDLボタン */
#irCSV a{
	width:200px;
	display:block;
	position:relative;
	background-color:#FFF;
	padding:15px;
	color:#333;
	font-weight:bold;
	text-align:center;
	text-decoration:none;
	border:2px solid #000;
	border-radius:15px;
	outline: none;
	-webkit-transition: all 0.3s ease;
	-moz-transition: all 0.3s ease;
	-o-transition: all 0.3s ease;
	-ms-transition: all 0.3s ease;
}
#irCSV a:hover{
	color:#FFF;
	background-color:#000;
	text-decoration:none;
}


/* フッター ---------------------------- */
#download,
#pnex{
	text-align:left;
	font-size: 85%;
	font-weight: 300;
	line-height:18px;
}

#download{
	padding-top:20px;
	padding-bottom:10px;
}
#download img{
	max-width:100%;
	float:left;
	margin-bottom:10px;
	margin-right:10px;
}
#pnex{
	margin-top:15px;
	margin-bottom:15px;
	clear:both;
	border-top:#CCCCCC solid 1px;
	padding-top:10px;
}
#pnex:after{
    content: "";
    clear: both;
    display: block;
}
#pnex img{
	max-width:100%;
	float:right;
}

.clearfix:after {
    content: "";
    clear: both;
    display: block;
}

div.linkBox2 ul li:nth-child(4n) {
    border-right: #e2e2e2 solid 1px;
}

div.linkBox2 ul li:nth-child(5n) {
	border-right: none;
}

div.linkBox2 ul li:nth-child(5) .ttl {
	background: url(../img/ir_icon5.png) 50% 55% no-repeat;
    background-size: auto 30px;
}
div.linkBox2 ul li {
    width: 20%;
    height: 185px;
    float: left;
    overflow: hidden;
    border-right: #e2e2e2 solid 1px;
    box-sizing: border-box;
}

/* For responsive */
@media screen and (max-width:740px) {
	.irLibrary dt,
	.irLibrary dd {
		display:block;
		padding:0.5em;
	}
	.irLibrary dt{
		padding-bottom:0;
	}
	.irLibrary dd {
		padding-top: 0px;
	}
	.irLibrary dd a{
		line-height: 30px;
	}

	.irLibrary div.newsbox .newslist ul li .entry{
		min-height: 50px !important;
	}

	.irLibrary div.newsbox .newslist ul li .entry .ttl{
		width: 100% !important;
	}
	.irLibrary div.newsbox .newslist ul li .entry .ttl p{
		padding-left: 0px;
	}

	div.linkBox2 ul li:nth-child(5) .ttl {
		background: url(../img/ir_icon5.png) 50% 25% no-repeat;
		background-size: auto 30px;
	}

	.irLibrary #tab li{
		width:49%;
		margin:0 0 8px 0;
		float:left;
	}
	.irLibrary #tab li:nth-child(2n){
		float:right;
	}
	.irLibrary #tab li a{
		width:100%;
		padding: 10px 0px
	}

	.irLibrary #irCalendar img{
		max-width:100%;
	}

	.irLibrary #irCSV{
		display:none;
	}

	#download img{
		display:block;
		float:none;
	}
	.irLibrary .comment{
		margin-top: 5px;
	}
}

/* For print */
@media print{
}
