@charset "UTF-8";

@media all {
	.breadcrumbs, .breadcrumbs a {color: var(--txt-gray);}
	.breadcrumbs-item:not(:last-child)::after {border-color: var(--txt-gray);}

	.main-header-lead {text-align: center;}

	.termsBox_head {
		position: relative;
		font-family: var(--lineseed);
		font-weight: bold;
		color: var(--main-blue);
	}
	.termsBox_head::after {
		content: '';
		position: absolute;
		right: 0;
		top: calc(50% - .5em);
		display: block;
		width: 1em;
		height: 1em;
		background: center / 60% no-repeat url(../img/common/btn-arrow.svg) var(--main-red);
		border-radius: 50%;
		transform: rotate(90deg);
		transition: transform .75s;
	}
	.termsBox_head.open::after {transform: rotate(270deg);}
	/* .termsBox_head.open::after {transform: rotate(630deg);} */
	a .termsBox_head {display: block;}
	a .termsBox_head::after {transform: none;}
	.termsBox {
		border-top: max(1px, 1rem) solid var(--table-lightblue);
	}
	.section:last-of-type {
		border-bottom: max(1px, 1rem) solid var(--table-lightblue);
	}
	.termsBox strong {
		font-weight: 600;
		color: var(--main-blue);
	}

	.termsBox_main {display: none;}

	.notice {
		font-size: 12rem;
		color: var(--main-blue);
		line-height: 18rem;
	}
	.termsBox_head .outgo {
		width: 1em;
		transform: translateY(-.25em);
	}
	.termsBox_head:not(a):hover {cursor: pointer;}

	/* sp */
	@media only screen and (max-width: 767px) {
		body {
			background: linear-gradient(to bottom, var(--bg-lightblue) 0%, #fff 370rem);
		}
		.page-main {padding-top: 100rem;}
		.breadcrumbs {padding: 0 25rem;}
		.breadcrumbs + .main-section {margin-top: 40rem;}
		.main-section {
			padding: 0 25rem 140rem;
			line-height: 26rem;
		}

		.main-header-lead {
			margin: 30rem 0;
			line-height: 26rem;
		}

		.termsBox {padding: 14rem 10rem;}

		.termsBox_head {font-size: 15rem;}
		.termsBox_main {padding-top: 20rem;}

	}

	/* pc & tab */
	@media print,
	(min-width: 768px) {
		body {
			background: linear-gradient(to bottom, var(--bg-lightblue) 0%, #fff 1280rem);
		}
		.page-main {padding-top: 140rem;}
		.breadcrumbs,
		.main-section {
			margin: 0 auto;
			width: 1000rem;
		}
		.breadcrumbs + .main-section {margin-top: 12rem;}

		.main-section {
			padding: 80rem 100rem 160rem;
			background-color: #fff;
			line-height: 30rem;
		}

		.main-header-lead {
			margin: 40rem 0;
			line-height: 40rem;
		}

		.termsBox {
			padding: 30rem;
		}

		.termsBox_head {
			font-size: 22rem;
			transition: opacity .3s;
		}
		.termsBox_head:hover {opacity: .7;}
		.termsBox_main {padding-top: 30rem;}

		.payment {
			display: flex;
			flex-wrap: wrap;
			width: 550rem;
		}
		.payment-dt {width: 7em;}
		.payment-dd {width: calc(100% - 7em);}
		.price-dl {
			display: flex;
			flex-wrap: wrap;
			width: 100%;
		}
		.price-dt {width: 288rem;}





	}
}
