@charset "utf-8";

/* IR top
================================================== */
/* slider
-------------------------------------------------- */
#ir-top .slider {
	margin-top: 120px;
	margin-bottom: -20px;
	padding-bottom: 20px;
	padding-right: 0;
	padding-left: 0;
	overflow-x: hidden;
}

@media screen and (max-width: 768px) {
	#ir-top .slider {
		margin-top: 80px;
	}
}

#ir-top .splide__track {
	width: 1028px;
	margin: 0 auto;
	overflow: visible;
}

@media screen and (max-width: 1184px) {
	#ir-top .splide__track {
		width: 494px;
	}
}

@media screen and (max-width: 600px) {
	#ir-top .splide__track {
		width: calc(100% - 104px);
	}
}

#ir-top .splide__slide a {
	position: relative;
	transition: opacity .3s;
	z-index: -1;
}

#ir-top .splide__slide a:hover {
	opacity: .8;
}

#ir-top .splide__slide figure {
	aspect-ratio: 494 / 300;
	border-radius: 8px;
	overflow: hidden;
	position: relative;
}

#ir-top .splide__slide figure::before {
	content: '';
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	background-color: rgba(0,0,0,.1);
	z-index: 1;
}

#ir-top .splide__slide.is-visible a {
	z-index: 0;
}

#ir-top .splide__slide.is-visible figure {
	box-shadow: 0 3px 10px rgba(0,0,0,.2);
}

#ir-top .splide__slide.is-visible figure::before {
	content: none;
}

#ir-top .splide__slide figure img {
	width: 100%;
	height: 100%;
	object-fit: cover;
}

#ir-top .splide__slide figure figcaption {
	position: absolute;
	bottom: 0;
	left: 0;
	width: 100%;
	min-height: 60px;
	padding: 2px 56px 4px 16px;
	background: var(--white) url(../images/ico_arrow.svg) no-repeat calc(100% - 30px) 50% / 12px;
	font-size: var(--fontSize24);
	font-weight: 600;
	display: flex;
	flex-wrap: wrap;
	column-gap: 16px;
	justify-content: center;
	align-items: center;
}

#ir-top .splide__slide figure figcaption .update {
	padding: 1px 14px;
	border: 1px solid var(--mediumgray);
	border-radius: 999em;
	font-size: var(--fontSize16);
	font-weight: 500;
}

#ir-top .splide__slide.business-report figure figcaption {
	font-size: var(--fontSize22);
}

#ir-top .splide__slide.business-report figure figcaption .update {
	font-size: var(--fontSize14);
}

@media screen and (max-width: 768px) {
	#ir-top .splide__slide figure figcaption {
		padding-right: 42px;
		background-position: calc(100% - 16px) 50%;
		font-size: var(--fontSize18);
	}

	#ir-top .splide__slide figure figcaption .update {
		font-size: var(--fontSize11);
	}
	
	#ir-top .splide__slide.business-report figure figcaption {
		font-size: var(--fontSize18);
	}
	
	#ir-top .splide__slide.business-report figure figcaption .update {
		font-size: var(--fontSize11);
	}

}


#ir-top .splide__arrow--prev {
	left: calc((100% - 1240px) / 2);
}

#ir-top .splide__arrow--next {
	right: calc((100% - 1240px) / 2);
}

#ir-top .splide__arrow {
	background-color: var(--white);
	opacity: 1;
	box-shadow: 0 0 5px rgba(0,0,0,.2);
}

#ir-top .splide__arrow svg {
	display: none;
}

#ir-top .splide__arrow::before {
		content: '';
		position: absolute;
		top: 0;
		width: 100%;
		height: 100%;
		background: url(../images/ico_arrow_b.svg) no-repeat 50% 50% / 8px;
}

#ir-top .splide__arrow--prev::before {
	transform: rotate(180deg);
}

@media screen and (max-width: 1304px) {
	#ir-top .splide__arrow--prev {
		left: 32px;
	}

	#ir-top .splide__arrow--next {
		right: 32px;
	}
}

@media screen and (max-width: 768px) {
	#ir-top .splide__arrow--prev {
		left: 16px;
	}

	#ir-top .splide__arrow--next {
		right: 16px;
	}
}




/* link btn
-------------------------------------------------- */
#ir-top .link-btns {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	justify-content: center;
	gap: 32px;
	margin: 120px 0;
}

#ir-top .link-btns.primary {
	flex-wrap: wrap;
}

#ir-top .link-btns.primary li {
	width: calc((100% - 32px) / 2);
}

#ir-top .link-btns li a {
	border: 1px solid var(--mediumgray);
	border-radius: 8px;
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	position: relative;
	overflow: hidden;
	transition: .7s;
}

#ir-top .link-btns li a::before,
#ir-top .link-btns li a::after {
	content: '';
	position: absolute;
	top: 50%;
	transform: translateY(-50%);
	width: 8px;
	height: 8px;
}

#ir-top .link-btns.primary li a::before,
#ir-top .link-btns.primary li a::after {
	right: 56px;
}

#ir-top .link-btns li a::before {
	background-color: var(--red);
	z-index: 1;
}

#ir-top .link-btns li a::after {
	background-color: var(--darkgray);
	z-index: -1;
}

#ir-top .link-btns.primary a {
	min-height: 120px;
	padding: 12px 80px 12px 32px;
	font-size: var(--fontSize24);
	font-weight: 500;
	column-gap: 24px;
}

#ir-top .link-btns.primary a span:first-child {
	display: inline-block;
	width: 12em;
	max-width: 100%;
}

#ir-top .link-btns.primary a .update {
	color: var(--gary);
	font-size: var(--fontSize14);
}

/* #ir-top .link-btns.primary li:last-child {
	width: 100%;
}

#ir-top .link-btns.primary li:last-child a {
	background: url(../images/bg_clover.png) no-repeat -35px 27% / 322px auto;
} */

@media screen and (min-width: 769px) {
	/* #ir-top .link-btns.primary li:last-child a {
		justify-content: center;
	} */

	#ir-top .link-btns.primary a span:first-child {
		width: auto;
	}
}

#ir-top .link-btns.secondary li {
	width: calc((100% - 32px * 3) / 4);
}

#ir-top .link-btns.secondary a {
	min-height: 64px;
	padding: 12px 48px 12px 32px;
	font-weight: 500;
	column-gap: 24px;
}

#ir-top .link-btns.secondary li a::before,
#ir-top .link-btns.secondary li a::after {
	right: 28px;
}

@media screen and (max-width: 1024px) {
	#ir-top .link-btns.secondary li {
		width: calc((100% - 32px) / 2);
	}
}

@media screen and (max-width: 768px) {
	#ir-top .link-btns {
		margin: 80px 0;
	}

	#ir-top .link-btns.primary li,
	#ir-top .link-btns.secondary li {
		width: 100%;
	}

	#ir-top .link-btns.primary li a::before,
	#ir-top .link-btns.primary li a::after {
		right: 32px;
	}

	#ir-top .link-btns.primary a {
		padding-right: 54px;
	}
}



/* news & calendar section
-------------------------------------------------- */
#ir-top .ir-news,
#ir-top .calendar {
	padding-top: 120px;
	padding-bottom: 120px;
	background-color: #f5f5f5;
	display: flex;
	column-gap: 120px;
}

#ir-top .headding {
	width: 180px;
}

#ir-top .headding h2 {
	margin-bottom: 40px;
	font-size: var(--fontSize32);
	font-weight: 600;
}

#ir-top .headding h2 .en {
	display: block;
	margin-top: 8px;
	padding-left: 32px;
	font-size: var(--fontSize22);
	font-weight: 200;
	position: relative;
}

.headding h2 .en::before {
	content: '';
	position: absolute;
	top: calc(50% - 4px);
	left: 0;
	width: 24px;
	height: 0;
	border-top: 4px solid var(--red);
}

#ir-top .ir-news .news-list,
#ir-top .calendar .calendar-list {
	flex: 1;
}

@media screen and (max-width: 768px) {
	#ir-top .ir-news,
	#ir-top .calendar {
		padding-top: 80px;
		padding-bottom: 80px;
		flex-direction: column;
	}

	#ir-top .headding {
		display: contents;
	}

	#ir-top .headding h2 {
		order: 1;
	}

	#ir-top .headding div {
		order: 3;
	}

	#ir-top .ir-news .news-list,
	#ir-top .calendar .calendar-list {
		order: 2;
	}

}



/* ir menu
-------------------------------------------------- */
#ir-top .ir-menu {
	padding: 120px 0;
}

#ir-top .ir-menu > ul {
	display: flex;
	flex-wrap: wrap;
	gap: 64px 32px;
}

#ir-top .ir-menu > ul > li {
	width: calc((100% - 32px * 3) / 4);
}

#ir-top .ir-menu > ul > li > span {
	display: block;
	margin-bottom: 32px;
	font-size: var(--fontSize24);
	font-weight: 500;
	text-align: center;
	position: relative;
}

#ir-top .ir-menu > ul > li > span::after {
	content: '';
	position: absolute;
	top: calc(100% + 16px);
	left: 50%;
	transform: translateX(-50%);
	width: 24px;
	border-top: 4px solid var(--red);
}

#ir-top .ir-menu ul li ul li:not(.dl) {
	border-bottom: 1px solid var(--mediumgray);
}

#ir-top .ir-menu ul li ul li a {
	display: block;
	padding: 16px 36px 16px 16px;
}

#ir-top .ir-menu ul li ul li:not(.dl) a {
	background: url('../images/ico_arrow.svg') no-repeat calc(100% - 16px) 50% / 8px;
}

#ir-top .ir-menu ul li ul li.dl {
	margin-top: 24px;
}

#ir-top .ir-menu ul li ul li.dl a {
	border: 1px solid var(--mediumgray);
	border-radius: 8px;
	background: url('../images/ico_dl.svg') no-repeat calc(100% - 16px) 50% / 14px;
}

@media screen and (max-width: 768px) {
	#ir-top .ir-menu {
		padding: 80px 0;
	}

	#ir-top .ir-menu > ul > li {
		width: calc((100% - 32px) / 2);
	}
}

@media screen and (max-width: 480px) {
	#ir-top .ir-menu > ul > li {
		width: 100%;
	}
}

/* news
================================================== */
.news-list li {
	padding: 24px 12px;
	border-bottom: 1px solid var(--mediumgray);
}

#calendar .news-list li {
  border-color: #363431;
}

#library .news-list li {
  border-color: #cccfd2;
}

.news-list li a {
	display: flex;
	align-items: baseline;
	gap: 12px 24px;
	font-size: var(--fontSize18);
	color: var(--black);
	text-decoration: none;
}

.news-detail .date,
.news-list li .date {
	font-size: var(--fontSize14);
}

.news-detail .category,
.news-list li .category {
	width: 11em;
	padding: 0 10px;
	border: 1px solid var(--mediumgray);
	border-radius: 999em;
	font-size: var(--fontSize10);
	text-align: center;
}

.news-list li .title {
	flex: 1;
}

#ir-top .news-list li {
	margin-bottom: 32px;
	padding: 0;
	border-bottom: 0;
}

#ir-top .news-list a {
	font-size: var(--fontSize16);
}

.news-detail .date,
#ir-top .news-list li .date {
	font-size: var(--fontSize16);
}

.news-detail .category,
#ir-top .news-list li .category {
	font-size: var(--fontSize12);
}

.news-detail {
  border-top: 2px solid var(--darkgray);
  padding-top: 24px;
}

.news-detail .meta {
  display: flex;
  align-items: baseline;
  gap: 12px 24px;
}

@media screen and (max-width: 1024px) {
	.news-list li a {
		flex-wrap: wrap;
	}

	.news-list li .title {
		flex: auto;
		width: 100%;
	}
}

@media screen and (max-width: 768px) {
  .news-list li a {
    font-size: var(--fontSize16);
  }
}



/* calendar
================================================== */
.calendar-list {
	display: flex;
	column-gap: 12px;
	flex-wrap: wrap;
}

.calendar-list li {
	width: calc((100% - 12px * 3) / 4);
	margin-bottom: 80px;
}

.calendar-list li .ttl {
	margin: 0 auto 8px;
	max-width: 10em;
	padding: 20px 16px;
	font-size: var(--fontSize24);
	font-weight: 600;
	letter-spacing: .2em;
	text-align: center;
}

.calendar-list li:first-child .ttl {
	background-color: #eaeaea;
}

.calendar-list li:nth-child(2) .ttl {
	background-color: #e0e0e0;
}

.calendar-list li:nth-child(3) .ttl {
	background-color: #d3d3d3;
}

.calendar-list li:nth-child(4) .ttl {
	background-color: #c4c4c4;
}

.calendar-list li .ttl b {
	color: var(--red);
	font-size: var(--fontSize30);
}

.calendar-list li .ttl::before {
	content: '';
	display: inline-block;
	margin-right: 8px;
	width: 14px;
	height: 20px;
	background: url(../images/ico_dot.svg) no-repeat 50% 50% / 14px;
}

.calendar-list .month-wrap {
	display: flex;
	margin: 0 auto;
	max-width: 10em;
	font-size: var(--fontSize24);
}

.calendar-list .month-wrap .month {
	width: 33%;
	position: relative;
}

.calendar-list .month-wrap .month .w-box {
	text-align: center;
}

.calendar-list .month-wrap .month.event .w-box {
	color: var(--red);
}

.calendar-list .month-wrap .month .w-box b {
	font-size: var(--fontSize30);
}

.calendar-list .month-wrap .month .note {
	position: absolute;
	top: calc(100% + 24px);
	left: 50%;
	transform: translateX(-50%);
	width: max-content;
	padding: 2px 14px;
	border: 1px solid var(--mediumgray);
	border-radius: 999em;
	font-size: var(--fontSize12);
}

.calendar-list .month-wrap .month .note::before {
	content: '';
	position: absolute;
	bottom: 100%;
	left: 50%;
	height: 24px;
	border-left: 1px dashed var(--mediumgray);
}

.calendar-list .month-wrap .month .note.fullyear {
	left: auto;
	right: 16px;
	transform: none;
}

.calendar-list .month-wrap .month .note.fullyear::before {
	left: auto;
	right: 20px;
}

@media screen and (max-width: 1200px) {
	.calendar-list li {
		width: calc((100% - 12px) / 2);
	}
}

@media screen and (max-width: 480px) {
	.calendar-list li .ttl,
	.calendar-list .month-wrap {
		max-width: none;
		font-size: var(--fontSize18);
	}

	.calendar-list li .ttl b,
	.calendar-list .month-wrap .month .w-box b {
		font-size: var(--fontSize22);
	}
}

/* Parts Tablist
-------------------------------------------------- */
.tabContents .tablist,
.ir-tablist {
	display: flex;
  justify-content: space-between;
	column-gap: 32px;
  margin: 0 auto 80px;
}

.tabContents .tablist .tab,
.ir-tablist li {
	width: calc((100% - 32px * 3) / 4);
  border-radius: 4px;
  border: 1px solid #b7bdc0;
  font-weight: 600;
  text-align: center;
	box-sizing:border-box;
}

#finance .ir-tablist li,
#management .ir-tablist li {
	width: calc((100% - 32px * 2) / 3);
}

.tabContents .tablist .tab {
  padding: 14px 16px;
}

.ir-tablist li:hover,
.ir-tablist li.current {
  border:3px solid var(--red);
	position: relative;
	top: -2px;
}

.ir-tablist li a {
  display: block;
  width: 100%;
  padding: 14px 16px;
  color: var(--black);
  text-decoration: none;
}

.ir-tablist li:hover a,
.ir-tablist li.current a {
  color: var(--red);
}

.tabContents .tablist .tab:hover,
.tabContents .tablist .tab.active {
  border:3px solid var(--red);
  color: var(--red);
	position: relative;
  padding: 6px 16px;
}

.ir-select {
  max-width: 180px;
  margin: 64px 0 32px;
  border-radius: 4px;
  background: #FFF;
	border: 1px solid #cccfd2;
}

.ir-select select {
  border-radius: 4px;
  position: relative;
  width: 100%;
  padding: 12px 50px 12px 16px;
  border: none;
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  background: url('../images/ico_arrow_u.svg') no-repeat;
  background-size: 12px 8px;
  background-position: calc(100% - 28px) center;
	font-size: var(--fontSize14);
  cursor: pointer;
}

.tabContents .tabpanel {
	display: none;
}

.tabContents .tabpanel.active {
	display: block;
}

@media screen and (max-width: 768px) {
  .tabContents .tablist,
	.ir-tablist {
		flex-direction: column;
    margin-bottom: 40px;
	}

	#finance .ir-tablist li,
	#management .ir-tablist li,
  .tabContents .tablist .tab,
  .ir-tablist li {
    width: 100%;
    margin-bottom: 8px;
  }

	.tabContents .tablist .tab,
	.ir-tablist li a {
		padding: 8px 16px;
		font-size: var(--fontSize14);
	}

  .ir-select {
    margin-top: 40px;
  }
}


/* Finance
-------------------------------------------------- */
#finance .box-col2-wrap {
  display: flex;
  justify-content: space-between;
  flex-wrap: wrap;
}

#finance .box-col2-wrap .cell {
  width: 46.5%;
  margin-bottom: 80px;
}

#finance h2 {
  margin: 0 0 40px;
  position: relative;
  padding: 0 16px 0 1.2em;
  font-size: var(--fontSize24);
  font-weight: 500;
	    letter-spacing: -1px;
  transition: .6s ease;
}

#finance h2::before {
  position: absolute;
  content: "";
  bottom: 0;
  left: 0;
  width: 8px;
	height: 100%;
  border-radius: 8px;
  background-color: var(--red);
}

#finance h2 .unit {
  color: #828282;
  font-size: var(--fontSize18);
  font-weight: 500;
}

#finance .box-col2-wrap .cell .graph {
  padding: 24px;
  background-color: #FFF;
  text-align: center;
  margin-bottom: 32px;
}


@media screen and (max-width: 768px) {
	#finance .box-col2-wrap {
		flex-direction: column;
	}

	#finance .box-col2-wrap .cell {
		width: 100%;
	}
}

/* Animation
-------------------------------------------------- */
/* hover btn */
#ir-top .link-btns li a:hover {
	color: var(--white);
}

#ir-top .link-btns li a:hover:after {
	animation: expandBig .6s .1s forwards 1 ease-in;
}

@keyframes expandBig {
  0% {
		transform: scale(0);
  }
  100% {
		transform: scale(620, 80);
  }
}


/*Animation*/
.contents-inner .cell.fadeIn,
.contents-inner .faq-wrap.fadeIn,
.contents-inner .tabContents.fadeIn,
.contents-inner .ir-tablist.fadeIn,
.contents-inner .news-list.fadeIn,
.contents-inner .ir-select.fadeIn,
#calendar .calendar-list.fadeIn,
#ir-top .link-btns.secondary.fadeIn,
#ir-top .calendar.fadeIn,
#ir-top .ir-menu.fadeIn,
#ir-top .ir-news.fadeIn,
#ir-top .link-btns.primary.fadeIn,
#ir-top .slider.fadeIn {
	animation: fadeUp 1.6s ease .2s 1 normal forwards;
}
