@charset "utf-8";
/* CSS Document */

/*==========
プライバシーポリシーページ
利用規約ページ
==========*/
.privacy,
.terms {
	padding: 24px 0 60px;
}

.privacy h1,
.terms h1 {
	font-size: 2rem;
	font-weight: 900;
	margin-bottom: 24px;
}

.privacy_item,
.terms_item {
	margin-bottom: 30px;
	padding-bottom: 30px;
	border-bottom: solid 1px #c7c7c7;
}

.privacy_item h3,
.terms_item h3 {
	font-size: 1.8rem;
	font-weight: 600;
	margin-bottom: 6px;
}

.terms_item p {
	margin-bottom: 12px;
}

.terms_item img {
	width: 72%;
	max-width: 600px;
}




/*==========
WEB決済ページ
==========*/
.webpay {
	padding: 24px 0 60px;
}

.webpay h1 {
	font-size: 2rem;
	font-weight: 900;
	margin-bottom: 24px;
}

.webpay_item {
	margin-bottom: 32px;
}

.webpay_item h3 {
	font-size: 1.6rem;
	font-weight: 600;
	margin-bottom: 6px;
}

.webpay_item p {
	margin-bottom: 12px;
}


/*==========
ご利用方法ページ
==========*/
.howto {
	padding: 24px 0 60px;
	line-height: 1.8;
}

.howto h1 {
	font-size: 2.4rem;
	font-weight: 900;
	line-height: 1.45;
	margin-bottom: 24px;
}

.howto_outline {
	background-color: #f5f8fa;
	padding: 12px 24px 24px;
	margin: 24px 0;
}

.howto_outline h3 {
	font-size: 1.6rem;
	font-weight: 600;
}

.howto_outline ol li {
	border-bottom: solid 1px #d3d3d3;
}

.howto_outline ol li a {
	display: block;
	color: #000;
	padding: 6px 3px;
	font-size: 1.3rem;
}

.howto_outline ol li.indent a {
	padding-left: 18px;
}

.howto_item {
	padding-bottom: 36px;
	/* border-bottom: solid 1px #d3d3d3; */
}

.howto_item_title {
	font-size: 2rem;
	font-weight: 900;
	margin-bottom: 9px;
	border-left: solid 6px #ff52b3;
	padding-left: 6px;
}

.howto_item_subtitle {
	font-size: 1.8rem;
	font-weight: 900;
	margin-bottom: 9px;
	padding-top: 30px;
}

.howto_item p {
	margin-bottom: 9px;
}

.howto_column {
	background-color: #f5f8fa;
	padding: 24px 24px 12px;
}

.howto_column p {
	font-size: 1.45rem;
	line-height: 2;
}

.howto_photo {
	margin-bottom: 24px;
}

.howto_photo img {
	margin-bottom: 6px;
}

.howto_photo figcaption {
	text-align: center;
}

.accordion_wrap summary {
	background-color: #d9eeff;
	border-radius: 18px;
	padding: 0 24px 0 18px;
	font-size: 1.4rem;
	width: fit-content;
	min-width: 40%;
}

.accordion_wrap summary:hover {
	cursor: pointer;
}


.accordion_wrap[open] summary {
	margin-bottom: 18px;
}


@media (min-width: 768px) {
	.howto {
		padding: 42px 0 90px;
	}

	.howto h1 {
		font-size: 3.6rem;
		margin-bottom: 30px;
	}

	.howto_item {
		margin: 48px 0;
	}

	.howto_item_title {
		font-size: 2.6rem;
		margin-bottom: 15px;
		border-left: solid 9px #ff52b3;
	}

	.howto_item_subtitle {
		font-size: 2.2rem;
		margin-bottom: 15px;
	}

	.howto_item p {
		margin-bottom: 24px;
	}

	.howto_column {
		padding: 36px 36px 12px;
	}

	.howto_column p {
		font-size: 1.55rem;
	}

	.howto_photo {
		margin-bottom: 36px;
	}
}



.howto_tab_wrap {
	display: flex;
	flex-wrap: wrap;
	gap: 0 3px;
	width: 100%;
}

.howto_tab_wrap label {
	flex: 1 1;
	order: -1;
	opacity: .4;
	padding: 9px 0;
	border-radius: 5px 5px 0 0;
	background-color: #c9c9c9;
	color: #fff;
	text-align: center;
	cursor: pointer;
	border: solid 1px #d3d3d3;
	border-bottom: none;
	margin-bottom: -1px;
	z-index: 100;
	display: flex;
	align-content: center;
	justify-content: center;
}

.howto_tab_wrap label img {
	width: 42%;
	max-width: 150px;
}

.howto_tab_wrap label:hover {
	opacity: .9;
	background-color: #fff;
}

.howto_tab_wrap input {
	display: none;
}

.howto_tab_wrap .tab_container {
	display: none;
	width: 100%;
	padding: 30px 12px;
	border: solid 1px #d3d3d3;
}

.howto_tab_wrap label:has(:checked) {
	opacity: 1;
	background-color: #fff;
}

.howto_tab_wrap label:has(:checked)+.tab_container {
	display: block;
}


/*==========
会社沿革ページ
==========*/
.company_history {
	padding: 24px 0 60px;
}

.company_history h1 {
	font-size: 2.4rem;
	font-weight: 900;
	margin-bottom: 30px;
	border-bottom: solid 3px #d6ff33;
	padding-bottom: 12px;
}

.company_history .block {
	margin-bottom: 36px;
	padding-bottom: 24px;
	border-bottom: solid 1px #e0e0e0;
}

.company_history .block:last-child {
	border-bottom: none;
}

.company_history .block h2 {
	font-size: 2rem;
	font-weight: 700;
	margin-bottom: 18px;
	color: #333;
	background-color: #f5f5f5;
	padding: 9px 15px;
	border-left: solid 5px #d6ff33;
}

.company_history dl {
	display: flex;
	flex-wrap: wrap;
	margin-bottom: 12px;
	padding-left: 6px;
}

.company_history dt {
	width: 100px;
	font-weight: 700;
	color: #555;
	font-size: 1.4rem;
}

.company_history dd {
	flex: 1;
	font-size: 1.4rem;
	line-height: 1.7;
}

@media (min-width: 768px) {
	.company_history {
		padding: 42px 0 90px;
	}

	.company_history h1 {
		font-size: 3.2rem;
		margin-bottom: 42px;
	}

	.company_history .block {
		margin-bottom: 48px;
		padding-bottom: 36px;
	}

	.company_history .block h2 {
		font-size: 2.4rem;
		margin-bottom: 24px;
		padding: 12px 18px;
	}

	.company_history dl {
		margin-bottom: 15px;
		padding-left: 12px;
	}

	.company_history dt {
		width: 120px;
		font-size: 1.5rem;
	}

	.company_history dd {
		font-size: 1.5rem;
	}
}
