@charset "UTF-8";

/* ----------------------------
innner
---------------------------- */
.ir__contentInner {
	padding-left: 5.3333333333vw;
    padding-right: 5.3333333333vw;
}
.ir__secInner {
	max-width: 96rem;
    margin-right: auto;
    margin-left: auto;
    padding-bottom: 21.3333333333vw;
}
.ir__contentSec {
	margin-top: 16vw;
}
@media (min-width: 768px) {
	.ir__contentInner {
		padding-right: 3rem;
        padding-left: 3rem;
	}
	.ir__secInner {
        padding-bottom: 8rem;
	}
	.ir__contentSec {
		margin-top: 6rem;
	}
}


/* ----------------------------
title
---------------------------- */
.ir__ttlH1 {
	margin-bottom: 21.3333333333vw;
    font-size: 8.5333333333vw;
    font-weight: 700;
}
.ir__ttlH2 {
	margin-bottom: 6.4vw;
    padding-bottom: 4.2666666667vw;
    border-bottom: 1px solid var(--color-accent);
    font-size: 5.8666666667vw;
    font-weight: 700;
    line-height: 1.5;

	&::before {
		content: "・";
		color: var(--color-accent);
	}
}
@media (min-width: 768px) {
	.ir__ttlH1 {
		margin-bottom: 8rem;
        font-size: 4.6rem;
	}
	.ir__ttlH2 {
		margin-bottom: 6rem;
        padding-bottom: 3.2rem;
        font-size: 3.2rem;
	}
}


/* ----------------------------
text
---------------------------- */
.ir__txt {
	font-size: 3.7333333333vw;
    line-height: 2;
    letter-spacing: 0.06em;

	& + & {
		margin-top: 1em;
	}
}
.ir__txtLink {
	color: var(--color-accent);
    text-decoration: underline;
    text-underline-offset: 0.4em;
	transition-property: opacity;
	transition-duration: 320ms;
	word-break: break-all;

	&:hover {
		opacity: 0.6;
	}
}
.ir__txtLink[target="_blank"] {
	&::after {
		content: "";
		background: url(../../images/company/ir_icon_blank.svg) no-repeat center / cover;
		filter: brightness(0) saturate(100%) invert(12%) sepia(68%) saturate(3408%) hue-rotate(215deg) brightness(102%) contrast(90%);
		display: inline-block;
		margin-left: 0.4em;
		width: 2.6666666667vw;
		height: 2.6666666667vw;
	}
}
@media (min-width: 768px) {
	.ir__txt {
		font-size: 1.6rem;
	}
	.ir__txtLink[target="_blank"] {
		&::after {
			width: 1rem;
			height: 1rem;
		}
	}
}


/* ----------------------------
list
---------------------------- */
.ir__circleList {
    margin-left: 1.8em;
}
.ir__circleList_item {
	list-style-type: disc;
    font-size: 3.7333333333vw;

	& + & {
		margin-top: 6.4vw;
	}
}
@media (min-width: 768px) {
	.ir__circleList_item {
		font-size: 1.6rem;

		& + & {
			margin-top: 1.6rem;
		}
	}
}


/* ----------------------------
table
---------------------------- */
.ir__tbl_item {
	display: flex;
	flex-wrap: wrap;
	border-bottom: 1px solid #C2CCD0;
	padding: 3rem 0;
}
.ir__tbl_th {
	color: #333333;
    font-size: 1.4rem;
    font-weight: bold;
    letter-spacing: 0.06em;
    width: 19rem;
}
.ir__tbl_td {
	width: calc(100% - 19rem);
    color: #333333;
    font-size: 1.4rem;
    letter-spacing: 0.06em;
}
@media (max-width: 767px) {
	.ir__tbl {
		& .ir__tbl_item:first-child {
			padding-top: 0;
		}
	}
	.ir__tbl_item {
		padding: 6.6666666667vw 0;
	}
	.ir__tbl_th {
		font-size: 4vw;
        padding-bottom: 2.1333333333vw;
        width: 100%;
	}
	.ir__tbl_td {
		width: 100%;
        font-size: 3.7333333333vw;
        line-height: 1.57;
	}
}


/* ----------------------------
local navi
---------------------------- */
.ir__localNav {
	margin-bottom: 10rem;
}
.ir__localNav_list {
    display: flex;
	gap: 3rem;
}
.ir__localNav_list_item {
	width: 100%;
    border-bottom: 1px solid #c2ccd0;
    position: relative;

	&::after {
		content: "";
		position: absolute;
		bottom: -1px;
		right: 0;
		border-bottom: 1px solid var(--color-accent);
		width: 1.4rem;
	}
	& a {
		display: block;
		font-size: 1.6rem;
		font-weight: bold;
		color: #333333;
		line-height: 1;
		padding-bottom: 2.4rem;
		transition: all 0.3s ease;
		position: relative;

		&::after {
			content: "";
			width: 1.5rem;
			height: 0.8rem;
			background: url(../../images/company/navi_arrow_down.svg) 0 0 no-repeat;
			background-size: 100% auto;
			position: absolute;
			right: 0;
			top: 0.5rem;
			transition: all 0.3s ease;
		}
		&:hover {
			color: #113C8C;

			&::after {
				top: 0.8rem;
			}
		}
	}
	& a[target="_blank"] {
		&::after {
			display: none;
		}
		&::before {
			content: "";
			width: 1.5rem;
			height: 1.5rem;
			background: url(../../images/company/ir_icon_blank.svg) 0 0 no-repeat;
			background-size: 100% auto;
			filter: brightness(0) saturate(100%) invert(12%) sepia(68%) saturate(3408%) hue-rotate(215deg) brightness(102%) contrast(90%);
			position: absolute;
			right: 0;
			top: 0;
			transition: all 0.3s ease;
		}
		&:hover {
			&::before {
				top: 0.3rem;
			}
		}
	}
}
.ir__localNav_list_item-active {
	& a {
		color: var(--color-darkgray);
		pointer-events: none;
	}
}
@media (max-width: 767px) {
	.ir__localNav {
		margin-bottom: 20vw;
	}
	.ir__localNav_list {
		flex-wrap: wrap;
		gap: 5.3333333333vw;
	}
	.ir__localNav_list_item {
		width: 100%;

		&::after {
			width: 4.8vw;
		}
		& a {
			font-size: 3.4666666667vw;
			letter-spacing: 0;
			padding-bottom: 4vw;
	
			&::after {
				top: 1.3333333333vw;
				width: 3.2vw;
				height: 1.8666666667vw;
				right: 1.0666666667vw;
			}
			&:hover {
				&::after {
					top: 2.1333333333vw;
				}
			}
		}
		& a[target="_blank"] {
			&::before {
				width: 3vw;
				height: 3vw;
				right: 1.0666666667vw;
			}
			&:hover {
				&::before {
					top: 1vw;
				}
			}
		}
	}
}


/* ----------------------------
IRTOP
---------------------------- */
.irTop__messageSec {
	display: flex;
	flex-direction: column-reverse;
	gap: 8vw;

	& .c-arrow-link__label {
		font-family: inherit;
		border-bottom: none;
		text-decoration: underline;
		text-decoration-color: var(--link-text-color);
		text-underline-offset: 1.5rem;
		position: relative;
		top: -0.1rem;
	}
}
.irTop__messageSec_img {
	& img {
		width: 100%;
	}
}
@media (min-width: 768px) {
	.irTop__messageSec {
		display: flex;
		align-items: center;
		flex-direction: row;
		gap: 4.5rem;

		& .p-ir-segment__title {
			margin-bottom: 7rem;
		}
		& .c-arrow-link:hover {
			& .c-arrow-link__label {
				text-decoration-color: var(--link-back-color);
			}
		}
	}
	.irTop__messageSec_img {
		flex-shrink: 0;
		width: 44rem;
	}
	.irTop__messageSec_content {
		flex-grow: 1;
	}
}

.irTop__newsSec {
	& .p-ir-segment__more {
		margin-top: 8vw;
	}
	& .c-arrow-link__label {
		font-family: inherit;
		border-bottom: none;
		text-decoration: underline;
		text-decoration-color: var(--link-text-color);
		text-underline-offset: 1.5rem;
		position: relative;
		top: -0.1rem;
	}
}
@media (min-width: 768px) {
	.irTop__newsSec {
		& .p-ir-segment__more {
			margin-top: 32px;
		}
		& .c-arrow-link:hover {
			& .c-arrow-link__label {
				text-decoration-color: var(--link-back-color);
			}
		}
	}
}

.irTop__wrap-bgw {
	margin-top: 21.3333333333vw;
	padding-bottom: 8vw;
}
.irTop__inner {
	max-width: 120rem;
    margin-right: auto;
    margin-left: auto;
	padding: 0 10.6666666667vw;
}
@media (min-width: 768px) {
	.irTop__wrap-bgw {
		margin-top: 12rem;
		padding-bottom: 7.8rem;
	}
	.irTop__inner {
		padding: 0 3rem;
	}
}

.irTop__colLinkSec {
	& .p-ir-segment__list {
		display: flex;
		flex-direction: column;
		gap: 8vw;
	}
	& .p-ir-segment__link-icon--external {
		width: 5.0666666667vw;
	}
}
.irTop__colLink {
	display: flex;
	flex-direction: column;
	flex-wrap: wrap;
	gap: 8.5333333333vw;
	width: 100%;
}
.irTop__colLink_item {
	width: 100%;
}
.irTop__colLink_ttl {
	display: flex;
	align-items: center;
	font-weight: 700;
	letter-spacing: 0.06em;
	line-height: 1;
	font-size: 5.8666666667vw;
	margin-bottom: 8vw;

	&::before {
		content: "";
		border-radius: 50%;
		background-color: var(--color-accent);
		flex-shrink: 0;
		width: 2.1333333333vw;
		height: 2.1333333333vw;
		margin-right: 2.1333333333vw;
	}
}
.irTop__colLink_img {
	margin-bottom: 8vw;

	& img {
		width: 100%;
	}
}
@media (min-width: 768px) {
	.irTop__colLinkSec {
		& .p-ir-segment__list {
			gap: 3.2rem;
			padding: 0 0.8rem;
		}
		& .p-ir-segment__link-icon--external {
			width: 1.9rem;
		}
	}
	.irTop__colLink {
		flex-direction: row;
		gap: 4.8rem;
	}
	.irTop__colLink_item {
		width: calc((100% - (4.8rem * 2)) / 3);
	}
	.irTop__colLink_ttl {
		margin-bottom: 3rem;
        font-size: 3.2rem;

		&::before {
			width: 0.8rem;
			height: 0.8rem;
			margin-right: 0.8rem;
		}
	}
	.irTop__colLink_img {
		margin-bottom: 3rem;
	}
}


.irTop__highlightSec {
	background: var(--color-lightgray);
	display: flex;
	flex-direction: column-reverse;
	gap: 8vw;
	margin: 8.5333333333vw -10.6666666667vw 0;

	& .p-ir-segment__title {
		margin-bottom: 7rem;
	}
	& .c-arrow-link__label {
		font-family: inherit;
		border-bottom: none;
		text-decoration: underline;
		text-decoration-color: var(--link-text-color);
		text-underline-offset: 1.5rem;
		position: relative;
		top: -0.1rem;
	}
}
.irTop__highlightSec_img {
	& img {
		width: 100%;
	}
}
@media (min-width: 768px) {
	.irTop__highlightSec {
		display: flex;
		align-items: center;
		flex-direction: row;
		gap: 4.5rem;
		margin: 11.2rem 0 0;

		& .c-arrow-link:hover {
			& .c-arrow-link__label {
				text-decoration-color: var(--link-back-color);
			}
		}
	}
	.irTop__highlightSec_img {
		flex-shrink: 0;
		width: 44rem;
	}
	.irTop__highlightSec_content {
		flex-grow: 1;
	}
}

.irTop__linkListSec {
	margin-top: 8.5333333333vw;

	& .irTop__linkList {
		display: grid;
		gap: 8vw;
	}
}
@media (min-width: 768px) {
	.irTop__linkListSec {
		margin-top: 10rem;
		padding: 0 9rem;

		& .irTop__linkList {
			grid-template-columns: repeat(3, minmax(auto, 30rem));
			grid-column-gap: 3rem;
			grid-row-gap: 3.2rem;
		}
	}
}


/* ----------------------------
IRカレンダー
---------------------------- */
.irCalendar__img {
	display: flex;
	flex-direction: column;
	gap: 2rem;
	margin-bottom: 16vw;

	& img {
		width: 100%;
	}
}
@media (min-width: 768px) {
	.irCalendar__img {
		flex-direction: row;
		gap: 2px;
		margin-bottom: 6rem;

		& img {
			width: calc((100% - 2px) / 2);
		}
	}
}


/* ----------------------------
よくあるご質問
---------------------------- */
.irMessage__contentBox {
	display: flex;
	flex-direction: column;
	gap: 3rem;
	width: 100%;
}
.irMessage__contentBox_img {
	width: 100%;

	& img {
		width: 100%;
	}
}
.irMessage__contentBox_txt {
	width: 100%;
}
@media (min-width: 768px) {
	.irMessage__contentBox {
		flex-direction: row;
	}
	.irMessage__contentBox_img {
		width: 30%;
	}
	.irMessage__contentBox_txt {
		width: calc(70% - 3rem);
	}
}


/* ----------------------------
よくあるご質問
---------------------------- */
.irFaq__list {
	& + & {
		margin-top: 16vw;
	}
}
.irFaq__list_q {
	font-weight: 700;
    font-size: 4vw;
	padding-left: 3rem;
	position: relative;

	&::before {
		content: "Q.";
		color: var(--color-accent);
		font-size: 4vw;
		position: absolute;
		left: 0;
		top: 0.1rem;
	}
}
.irFaq__list_a {
	font-size: 3.7333333333vw;
    line-height: 2;
    letter-spacing: 0.06em;
	margin-top: 1rem;
	padding-left: 3rem;
	position: relative;

	&::before {
		content: "A.";
		color: var(--color-darkgray);
		font-weight: 700;
		font-size: 4vw;
		position: absolute;
		left: 0;
		top: -0.1rem;
	}
}
@media (min-width: 768px) {
	.irFaq__list {
		& + & {
			margin-top: 6rem;
		}
	}
	.irFaq__list_q {
		font-size: 2rem;

		&::before {
			font-size: 1.8rem;
			left: 0;
			top: 0.2rem;
		}
	}
	.irFaq__list_a {
		font-size: 1.6rem;

		&::before {
			font-size: 1.8rem;
			top: -0.2rem;
		}
	}
}


/* ----------------------------
汎用
---------------------------- */
.ir__txt-right {
	text-align: right;
}
.ir__txt-center {
	text-align: center;
}
.ir__txt-left {
	text-align: left;
}