/* ==================================== */

.w-100 {
	width: 100%;
}

/* ==================================== */

.border-radius {
	border-radius: .5em;
	overflow: hidden;
}

/* ==================================== */

.textbox {
	padding: .5em;
	width: 100%;
}

.textbox--fit {
	width: fit-content;
	margin: auto;
}

.text {
	font-size: 1em;
	line-height: 1.7;
}

.text--center {
	text-align: center;
}

.text--xs {
	font-size: .65em;
}

.text--sm {
	font-size: .875em;
}

.text--lg {
	font-size: 1.5em;
}

.text--xl {
	font-size: 2em;
	line-height: 1.2;
}

.text--md {
	font-size: 1.125em;
}

.text--md-plus {
	font-size: 1.25em;
}

.text--bold {
	font-weight: 500;
}

.text--bolder {
	font-weight: 600;
}

.text--strong {
	font-weight: 800;
}

.text--red {
	color: var(--red);
}

@media(max-width: 600px) {
	.text--sp-sm {
		font-size: .875em;
	}

	.text--sp-md {
		font-size: 1.125em;
	}
}

/* ==================================== */

.icon {
	width: 1.5em;
	height: 1.5em;
	object-fit: contain;
}

.icon--sm {
	width: 1.25em;
	height: 1.25em;
}

.icon--md {
	width: 2em;
	height: 2em;
}

/* ==================================== */

.flex {
	display: flex;
}

.flex--wrap {
	flex-wrap: wrap;
}

.flex__item {}

.flex__item--1 {}

.flex__item--2 {
	flex: 2;
}

.flex__item--3 {
	flex: 3;
}

.flex__item--5 {
	flex: 5;
}

.flex__item--6 {
	flex: 6;
}

.flex__item--7 {
	flex: 7;
}

.flex__item--8 {
	flex: 8;
}

.flex__item--9 {
	flex: 9;
}

.flex__item--10 {
	flex: 10;
}

.flex__item--30 {
	flex: 0 0 30%;
}

.flex--align-center {
	align-items: center;
}

.flex--justify-center {
	justify-content: center;
}

.flex--justify-between {
	justify-content: space-between;
}

.flex--column {
	flex-direction: column;
}

@media(max-width: 600px) {

	.flex--sp-wrap {
		flex-wrap: wrap;
	}

	.flex--sp-column {
		flex-direction: column;
	}

	.flex--sp-column-r {
		flex-direction: column-reverse;
	}

	.flex--sp-row {
		flex-direction: row;
	}
}

.gap-1_5 {
	gap: 1.5em;
}

.gap-0_5 {
	gap: .5em;
}

.gap-1 {
	gap: 1em;
}

.gap-2 {
	gap: 2em;
}

/* ==================================== */

.btn {
	width: 100%;
	display: flex;
	align-items: center;
	justify-content: center;
	padding: .5em;
	font-weight: 500;
	gap: .5em;
}

.btn__icon {
	width: 2em;
	height: 2em;
	object-fit: contain;
	fill: var(--cream);
}

.btn--prev {
	margin-right: auto;
}

.btn--next {
	margin-left: auto;
}

.btn--round {
	border-radius: 999px;
	overflow: hidden;
}

.btn--radius {
	border-radius: .5em;
}

.btn--white {
	background: var(--white);
}

.btn--purple {
	background: var(--purple);
}

.btn--outline {
	border: 2px solid var(--black);
}

.btn--shadow {
	box-shadow: 0 .25em 0 var(--yellow);
}


/* ==================================== */

.media {
	background: var(--white);
	border: 2px solid var(--black);
}

.media--radius {
	border-radius: .5em;
	overflow: hidden;
}

.media--shadow {
	box-shadow: .5em .5em 0 var(--light-pink);
}

.media__img {
	width: 100%;
	height: calc(min(330px, 33vw) * 2/3);
}

.media__img img {
	width: 100%;
	height: 100%;
	object-fit: cover;
}

.media__content {
	padding: 1em;
	height: 100%;
}

@media (max-width:600px) {
	.media__img {
		width: 100%;
		height: auto;
	}
}

/* ==================================== */

.card-box {
	width: 90%;
	max-width: 500px;
	margin: auto;
}

.card {}

.card__inner {
	padding: 1em;
}

.card__ttl {
	font-size: 1.125em;
	font-weight: 500;
}

.card__image {
	width: 60%;
	height: calc(min(660px, 100vw) * 9/16);
}

.card__image img {
	width: 100%;
	height: 100%;
	object-fit: cover;
}

.card--round {
	border-radius: .5em;
	overflow: hidden;
}

.card--shadow {
	box-shadow: .5em .5em 0 var(--yellow);
}

.card__icon {
	width: 3em;
	height: 3em;
	width: fit-content;
}

.card--white {
	background: var(--white);
}

.card--outline {
	border: 2px solid var(--black);
}

@media (max-width:600px) {
	.card__image {
		width: 100%;
		height: calc(min(512px, 100vw) * 9/16);
	}
}

/* ==================================== */

.list-box {}

.list-box ul {}

.list-box li {
	line-height: 2;
	padding-left: 1.5em;
	background: url(./../img/icon/check.png)no-repeat left;
	background-size: 1.25em 1.25em;
}

/* wordpress Pager==================================== */

.pager-container {
	margin: 1em auto;
}

.navigation {}

.pagination {}

.screen-reader-text {}

.nav-links {}

.page-numbers {
	padding: .25em .5em;
	background: var(--white);
	border-radius: .5em;
	border: 2px solid var(--black);
}

.current {
	background: var(--purple);
	color: var(--white);
	border-color: var(--white);
}

.next {}