@charset "UTF-8";
@import url('https://fonts.googleapis.com/css2?family=Outfit:wght@100..900&display=swap');

.top_back {
	clear: both;
	padding: 80px 0 30px;
	text-align: center;
}

.top_back a {
	margin: 0 15px;
}

.componentHeading01__title--inline {
	display: inline-block;
}

.supportFlowKv__left {
	padding-right: 10px;
}

.supportFlowKv__right {
	max-width: 400px;
}

.answerThema {
	margin: 50px 0 0;
	padding: 30px 40px 40px;
	border-radius: 10px;
	background: var(--bgBlue);
}

.answerThema .answerThema__title {
	margin: 0 0 10px;
	font-size: 2.4rem;
	font-weight: bold;
	line-height: 1.4;
	color: var(--Main1);
	text-align: center;
}

.answerThema .answerThema__text {
	margin: 0 0 30px;
	font-weight: bold;
	text-align: center;
}

.answerThema .answerThema__text .answerThema__text--line {
	display: inline-block;
	padding: 0 20px;
	position: relative;
}

.answerThema .answerThema__text .answerThema__text--line::before {
	content: '';
	position: absolute;
	bottom: 4px;
	left: 5px;
	width: 2px;
	height: 20px;
	border-radius: 1px;
	background: var(--black);
	rotate: -30deg;
}

.answerThema .answerThema__text .answerThema__text--line::after {
	content: '';
	position: absolute;
	bottom: 4px;
	right: 5px;
	width: 2px;
	height: 20px;
	border-radius: 1px;
	background: var(--black);
	rotate: 30deg;
}

.answerThema .answerThema__list {
	display: flex;
	flex-wrap: wrap;
	gap: 8px;
	font-weight: bold;
	line-height: 1.4;
}

.answerThema .answerThema__list .answerThema__item {
	display: flex;
	flex-direction: column;
	justify-content: center;
	width: calc( (100% - 24px) / 4 );
	min-height: 80px;
	padding: 15px 45px 15px 20px;
	border-left: 6px solid var(--Yellow);
	border-radius: 5px;
	background: var(--White);
	position: relative;
	cursor: pointer;
	transition: .2s;
}

.answerThema .answerThema__list .answerThema__item:hover,
.answerThema .answerThema__list .answerThema__item.active {
	color: var(--White);
	background: var(--Main1);
}

.answerThema .answerThema__list .answerThema__item::before {
	content: '';
	position: absolute;
	top: calc(50% - 8px);
	right: 20px;
	width: 16px;
	height: 16px;
	background: url(../img/arw_down.svg) no-repeat 0 0;
	background-size: 100% auto;
	transition: .2s;
}

.answerThema .answerThema__list .answerThema__item:hover::before,
.answerThema .answerThema__list .answerThema__item.active::before {
	background: url(../img/arw_down_w.svg) no-repeat 0 0;
	background-size: 100% auto;
}

.answerTitle {
	display: flex;
	justify-content: space-between;
	align-items: center;
	margin: 0 0 40px;
	font-size: 2.4rem;
	font-weight: bold;
	line-height: 1.4;
}

.answerTitle .answerTitle_image {
	width: 100px;
}

.answerTitle .answerTitle_text {
	width: calc(100% - 120px);
}

.answerTitle .answerTitle_text .answerTitle__text--em {
	font-size: 3.0rem;
}

.answerList {
	display: flex;
	flex-direction: column;
	gap: 20px;
	font-size: 1.8rem;
	font-weight: bold;
}

.answerList .answerList__item {
	padding: 30px 100px 30px 80px;
	border: 1px solid var(--lineColor);
	border-radius: 5px;
	box-shadow: 4px 4px 0 rgba(15,19,80,.07);
	position: relative;
}

.answerList .answerList__item::before {
	content: 'Q.';
    position: absolute;
    top: 28px;
    left: 40px;
    font-size: 2.4rem;
    font-weight: bold;
    line-height: 1.5;
    font-family: "Outfit", sans-serif;
    color: var(--Main1);
}

.answerList .answerList__item::after {
    content: "";
    position: absolute;
    top: calc(50% - 10px);
    right: 40px;
    width: 20px;
    height: 20px;
    background: var(--Main1);
    border-radius: 100%;
    background-image: url(data:image/svg+xml;charset=utf8,%3Csvg%20width%3D%227%22%20height%3D%2212%22%20viewBox%3D%220%200%207%2012%22%20fill%3D%22none%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%3E%3Cpath%20d%3D%22M0.80026%2011.1339L5.93359%206.00052L0.80026%200.867187%22%20stroke%3D%22white%22%2F%3E%3C%2Fsvg%3E);
    background-size: 7px 12px;
    background-repeat: no-repeat;
    background-position: center;
    margin: 0 0 0 8px;
}

.answerList .answerList__item:hover::after {
    animation: left-in-then-outBg .4s cubic-bezier(0.76, 0, 0.24, 1) forwards
}

/* 詳細ページ */

.faqHeading {
	display: flex;
	flex-direction: column;
	gap: 10px;
	padding: 0 0 0 43px;
	position: relative;
}

.faqHeading::before {
	content: 'Q.';
	position: absolute;
	top: 0;
	left: 0;
	font-size: 3.0rem;
	font-weight: bold;
	line-height: 1.5;
	font-family: "Outfit", sans-serif;
	color: var(--Main1);
}

.faqHeading .faqHeading__title {
	font-size: 3.0rem;
	font-weight: bold;
	line-height: 1.4;
}

.faqHeading .faqHeading__text {
	font-size: 1.8rem;
	font-weight: bold;
	line-height: 1.4;
}

.componentSection .ul-disc ::marker {
	color: var(--Main1);
}

.answerSection {
	padding: 40px 60px;
	border: 1px solid var(--lineColor);
	border-radius: 10px;
}

.answerSection .componentHeading03 {
	margin: 50px 0 30px;
	font-size: 2.0rem;
}

.answerPerson {
	display: flex;
	justify-content: space-between;
	align-items: center;
	margin: 0 0 50px;
}

.answerPerson .answerPerson__image {
	width: 100px;
}

.answerPerson .answerPerson__title {
	width: calc(100% - 120px);
	padding: 0 0 0 35px;
	font-size: 2.4rem;
	font-weight: bold;
	color: var(--Main1);
	position: relative;
}

.answerPerson .answerPerson__title::before {
	content: 'A.';
	position: absolute;
	top: 5px;
	left: 0;
	font-size: 2.4rem;
	font-weight: bold;
	line-height: 1.5;
	font-family: "Outfit", sans-serif;
	color: var(--Main1);
}

@media screen and (max-width: 1024px) {

	.supportFlowKv__right {
		max-width: none;
	}
	.answerThema {
		margin: 30px 0 0;
		padding: 20px;
	}
	.answerThema .answerThema__title {
		margin: 0 0 5px;
		font-size: 2.0rem;
	}
	.answerThema .answerThema__text {
		font-size: 1.2rem;
	}
	.answerThema .answerThema__list .answerThema__item {
		width: calc(50% - 4px);
		min-height: 50px;
		padding: 10px 30px 10px 10px;
		border-left-width: 3px;
		font-size: 1.2rem;
	}
	.answerThema .answerThema__list .answerThema__item::before {
		top: calc(50% - 7px);
		right: 10px;
		width: 14px;
		height: 14px;
	}
	.answerTitle {
		flex-direction: column;
		gap: 10px;
		magin: 0 0 30px;
		font-size: 2.0rem;
		text-align: center;
	}
	.answerTitle .answerTitle_text {
		width: 100%;
	}
	.answerTitle .answerTitle_text .answerTitle__text--em {
		display: block;
		font-size: 2.6rem;
	}
	.answerList {
		font-size: 1.6rem;
	}
	.answerList .answerList__item {
		padding: 15px 50px 15px 40px;
	}
	.answerList .answerList__item::before {
		top: 16px;
		left: 15px;
		font-size: 1.8rem;
	}
	.answerList .answerList__item::after {
		right: 15px;
	}

	/* 詳細ページ */

	.faqHeading {
		display: flex;
		flex-direction: column;
		gap: 10px;
		padding: 0 0 0 32px;
		position: relative;
	}
	.faqHeading::before {
		font-size: 2.2rem;
	}
	.faqHeading .faqHeading__title {
		font-size: 2.2rem;
	}
	.faqHeading .faqHeading__text {
		font-size: 1.2rem;
	}
	.answerSection {
		padding: 20px;
	}
	.answerSection .componentHeading03 {
		margin: 30px 0 20px;
		font-size: 1.8rem;
	}
	.answerPerson {
		flex-direction: column;
		gap: 10px;
		margin: 0 0 20px;
	}
	.answerPerson .answerPerson__title {
		width: 100%;
		padding: 0 0 0 30px;
		font-size: 1.8rem;
	}
	.answerPerson .answerPerson__title::before {
		font-size: 1.8rem;
		top: 4px;
	}
}