@charset "utf-8";
@media(max-width: 960px) {
		.page_header {
				padding-left: 0;
		}
}
@media (max-width: 767px) {
		.page_header {
				padding-left: 0;
		}
}
.page_header_flex {
		display: flex;
		justify-content: space-between;
		align-items: flex-end;
		margin: 0 0 40px;
}
.attention_lang_wrap {
		margin-left: 20px;
}
.attention_lang {
		display: flex;
		justify-content: space-between;
		align-items: center;
		font-family: 'Poppins', sans-serif;
		font-size: 15px;
		letter-spacing: 0;
		line-height: 1;
		font-weight: 600;
		letter-spacing: 0;
		border: 1px solid #3D3A39;
		border-radius: 60px;
		padding: 6px;
}
.attention_lang_item {
		width: 110px;
		text-align: center;
		cursor: pointer;
}
.attention_lang_item a, .attention_lang_item span {
		display: flex;
		justify-content: center;
		align-items: center;
		border-radius: 60px;
		height: 36px;
		text-decoration: none !important;
}
.attention_lang_item.isActive span {
		background: #3D3A39;
		color: #fff;
}
@media (hover: hover) {
		.attention_lang_item a:hover, .attention_lang_item span:hover {
				opacity: 0.7
		}
}
@media(max-width: 960px) {
		.attention_lang {
				font-size: 12px;
		}
		.attention_lang_item {
				width: 90px;
				text-align: center;
		}
		.attention_lang_item a, .attention_lang_item span {
				height: 30px;
		}
}
@media(max-width: 767px) {
		.page_header_flex {
				display: block;
				margin: 0 0 30px;
		}
		.attention_lang_wrap {
				margin-left: 0;
				display: flex;
				justify-content: center;
		}
		.attention_lang {
				width: 170px;
				padding: 6px;
				margin-left: 0;
				margin-top: 20px;
		}
}
:lang(ja) .jp a, :lang(en) .en a {
		background: #3D3A39;
		color: #fff;
}
.faq_section {
		padding: 0 60px;
}
.faq_wrap {
		max-width: 1000px;
		margin: 0 auto;
		min-height: 80vh;
}
.faq_lead {
		flex: 1
}
.faq_lead p {
		line-height: 1.8;
}
.faq_foot_lead {
		line-height: 1.7;
		padding: 40px 0 60px;
		text-align: center;
}
.faq_foot_lead + .faq_foot_lead {
		padding-top: 0 !important;
}
.faq_body a {
		color: #3D3A39;
		text-decoration: underline;
}
@media (hover: hover) {
		.faq_body a:hover {
				text-decoration: none;
		}
}
.faq_body a {
		word-break: break-all;
}
.question_sub {
		font-weight: 500;
		margin: 60px 0 30px;
		font-size: 20px;
}
.faq_block {
		margin: 0 0 15px;
}
.faq_Q {
		cursor: pointer;
		padding-left: 50px;
		font-weight: 700;
		font-size: 18px;
}
.faq_Q, .faq_A {
		padding: 30px 60px 30px 30px;
		position: relative;
		background: #f5f5f5;
}
.faq_Q {
		padding-left: 70px;
}
.faq_A {
		padding-top: 5px;
		padding-left: 30px;
		position: relative;
}
.faq_A p, .faq_A h5.extra {
		position: relative;
}
.faq_Q::before {
		content: '';
		display: block;
		position: absolute;
		top: 28px;
		left: 20px;
		width: 33px;
		height: 30px;
		background-repeat: no-repeat;
		background-position: 0 0;
		background-size: 33px;
		background-image: url("../images/icon_alert.png")
}
@media(max-width: 767px) {
		.faq_Q {
				padding: 15px 15px 35px 44px;
				font-size: 16px;
		}
		.faq_Q::before {
				top: 4px;
				width: 24px;
				height: 22px;
				background-size: 24px;
		}
		.faq_Q::before {
				top: 28px;
				left: 30px;
		}
}
.faq_A_body {
		position: relative;
}
.faq_A {
		display: none;
}
.faq_Q p, .faq_A p {
		line-height: 1.8;
}
.faq_A p span.en {
		letter-spacing: 0;
		padding-left: 10px;
		font-size: 90%;
}
.faq_A p.extra {
		margin: 0 0 1em;
}
.faq_A h5 {
		font-size: 14px;
		margin: 1em 0 0.5em;
		font-weight: 500;
}
.faq_A ul.notes {
		margin-left: 1em;
}
.faq_A ul.notes li {
		list-style: none;
		position: relative;
		margin: 0 0 5px;
		line-height: 1.8;
}
.faq_A .enLang ul.notes li {
		line-height: 1.6;
}
.faq_A ul.notes li:last-child {
		margin-bottom: 0;
}
.faq_A ul.notes li span {
		position: absolute;
		left: -1em;
		top: 0;
}
.faq_Q .trigger {
		width: 100px;
		height: 50px;
		position: absolute;
		right: 20px;
		top: calc(50% - 25px);
		display: flex;
		align-items: center;
}
.faq_Q .trigger span {
		font-size: 13px;
}
.faq_Q {
		transition: transform 0.3s cubic-bezier(0.25, 1, 0.5, 1);
}
.is_desktop .faq_Q:not(.open):hover {
		transform: scale(0.98);
}
.faq_Q .trigger:before, .faq_Q .trigger:after {
		content: '';
		display: block;
		width: 20px;
		height: 2px;
		background: #3D3A39;
		position: absolute;
		transition: transform 0.2s;
		top: 24px;
		right: 0;
}
.faq_Q .trigger:after {
		transform: rotate(90deg);
}
.faq_Q.open .trigger:before {
		transform: rotate(180deg);
}
.faq_Q.open .trigger:after {
		transform: rotate(270deg);
		opacity: 0;
}
.next_btn_base {
		display: flex;
		justify-content: center;
}
.next_btn_base_flex .next_btn a, .next_btn_base .next_btn a {
		width: 195px;
		height: 35px;
		text-decoration: none;
		display: flex;
		justify-content: center;
		align-items: center;
		font-family: 'Poppins', sans-serif;
		font-size: 14px;
		font-weight: 600;
		will-change: background;
		transition: background 0.2s;
		position: relative;
}
.next_btn a {
		background: #3D3A39;
		color: #fff;
		border: 1px solid #3D3A39;
}
.next_btn a:hover {
		background: #fff;
		color: #3D3A39;
}
.next_btn a::after {
		content: '';
		display: block;
		width: 27px;
		height: 1px;
		background: #fff;
		position: absolute;
		top: 50%;
		right: 10px;
		will-change: transform;
		transform-origin: left center;
		transition: transform 0.4s;
}
@media (hover: hover) {
		.next_btn a:hover::after {
				background: #3D3A39;
				transform: scaleX(2.2);
		}
}
@media(max-width: 767px) {
		.faq_section {
				padding: 0 20px;
		}
		.faq_A {
				padding: 5px 15px 15px;
		}
		.faq_A {
				padding-right: 15px;
		}
		.faq_Q::before, .faq_A p:first-child::before, .faq_A h5.extra::before, .faq_A_body::before {
				font-size: 20px;
		}
		.faq_Q::before {
				top: 18px;
				left: 12px;
		}
		.faq_A_body::before {
				top: 2px;
				left: -22px;
		}
		.faq_A p:first-child::before, .faq_A h5.extra::before {
				top: 2px;
				left: -23px;
		}
		.faq_Q .trigger {
				height: 30px;
				right: 10px;
				top: inherit;
				bottom: 10px;
				width: 80px;
		}
		.faq_Q .trigger:before, .faq_Q .trigger:after {
				width: 15px;
				height: 1px;
				top: 14.5px
		}
		.faq_Q .trigger span {
				font-size: 11px;
		}
}
.mb5 {
		margin-bottom: 3px !important;
		font-weight: 500;
}
.mb10 {
		margin-bottom: 10px !important;
}
.mb15 {
		margin-bottom: 15px !important;
}
.mb20 {
		margin-bottom: 20px !important;
}
.mb25 {
		margin-bottom: 25px !important;
}
.pdb15 {
		padding-bottom: 15px !important;
}
.faqAccount_flex {
		margin: 0 0 12px;
}
.faqAccount_flex.extra {
		margin-bottom: 30px;
}
.faqAccount_flex dt, .faqAccount_flex dd {
		line-height: 1.8;
}
.faqAccount_flex dt {
		font-weight: 500;
}
.faqAccount_flex dd {
		word-break: break-all;
}
@media(min-width: 768px) {
		.faqAccount_flex {
				display: flex;
		}
		.faqAccount_flex dt {
				white-space: nowrap;
		}
		.faqAccount_flex dd {
				flex: 1;
		}
}
/* ================== */
.faq_A_body p {
		line-height: 1.8;
		margin: 0 0 1em;
}
.faq_A_body h1, .faq_A_body h2 {
		font-size: 120%;
		margin: 2em 0 0.5em;
		font-weight: 600;
}
.faq_A_body h2:first-child {
		margin-top: 0;
}
.faq_A_body h3, .faq_A_body h4 {
		font-size: 110%;
		margin: 2em 0 0.5em;
		font-weight: 600;
}
.faq_A_body h5, .faq_A_body h6 {
		font-size: 100%;
		margin: 1.5em 0 0.5em;
		font-weight: 600;
}
.faq_A_body ul li {
		margin-bottom: 5px;
		line-height: 1.6;
}
.faq_A_body u {
		font-weight: 600;
		text-underline-offset: 5px;
}
.faq_A_body p a, .faq_A_body li a {
		color: #3D3A39;
		text-decoration: underline;
}
@media (hover: hover) {
		.faq_A_body p a:hover, .faq_A_body li a:hover {
				color: #3D3A39;
				text-decoration: none;
		}
}
.faq_A_body p, .faq_A_body div, .faq_A_body p li {
		word-break: break-all;
}
/* ============= */
.mobileBr {
		display: none;
}
@media screen and (orientation: portrait) and (max-width: 767px) {
		.mobileBr {
				display: block;
		}
}
.en_txt {
		letter-spacing: 0 !important
}
.faq_tile {
		display: none;
}
.faq_tile.isActive {
		display: block;
}
/* ============= */
.faq_tile.enVer * {
		letter-spacing: 0 !important
}
.dot, .att {
		list-style: none;
		margin-left: 1em;
		margin-bottom: 1.5em
}
.att {
		margin-left: 1.25em;
}
.dot li, .att li {
		position: relative;
		line-height: 1.6;
		margin: 0 0 5px;
}
.dot li::before {
		content: '・';
		display: block;
		position: absolute;
		top: 0;
		left: -1em;
}
.att li span.mark {
		display: block;
		position: absolute;
		top: 0;
		left: -1.25em;
}