/* ----------------------------------------------------
	header
---------------------------------------------------- */
.header__content {
	background-image: url(../img/header-bg.webp);
	background-position: top center;
	background-repeat: no-repeat;
	background-size: 100% auto;
	width: 100%;
	height: 56.223vw;
	position: relative;
}

.header__title {
	width: 59.224vw;
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%, -50%);
	animation-name: fadeUpAnime;
	animation-duration: 3s;
	animation-fill-mode: forwards;
	opacity: 0;
}

@keyframes fadeUpAnime {
	from {
		opacity: 0;
	}

	to {
		opacity: 1;
	}
}

.header__logo {
	height: min(8rem, 5.857vw);
	display: flex;
	justify-content: center;
	align-items: center;
}

.header__logo li {
	margin: 0 min(2rem, 1.464vw);
}

.header__logo .selestine {
	width: min(20.9rem, 15.3vw);
}

.header__logo .garden {
	width: min(31.2rem, 22.84vw);
}

.header__logo .sequence {
	width: min(15.6rem, 11.42vw);
}

@media screen and (max-width: 768px) {
	.header__content {
		background-image: url(../img/header-bg_sp.webp);
		height: 132.533vw;
		overflow: hidden;
	}

	.header__title {
		width: 102.667vw;
	}

	.header__logo {
		height: 12.8vw;
	}

	.header__logo li {
		margin: 0 2.133vw;
	}

	.header__logo .selestine {
		width: 24.800vw;
	}

	.header__logo .garden {
		width: 37.067vw;
	}

	.header__logo .sequence {
		width: 18.4vw;
	}
}

/* ----------------------------------------------------
	gnav
---------------------------------------------------- */
.gnav {
	background-color: rgb(var(--nav));
	padding: min(9.6rem, 7.028vw) 0;
}

.gnav__title {
	margin-bottom: min(6rem, 4.392vw);
	line-height: 1;
	color: rgb(var(--pnk));
	font-size: min(3.9rem, 2.855vw);
	font-weight: 700;
	text-align: center;
}

.gnav__title b {
	font-size: min(5.4rem, 3.953vw);
	font-weight: 700;
}

.gnav__title--small {
	font-size: min(2.6rem, 1.903vw);
	display: block;
}

.gnav__list {
	margin: 0 auto;
	width: min(89rem, 65.154vw);
	display: flex;
	justify-content: space-between;
}

.gnav__list--item {
	background-color: rgb(var(--brn));
	padding: min(0.8rem, 0.586vw);
	width: min(27.7rem, 20.278vw);
}

.gnav__list--item a {
	background-image: url(../img/arrow-gnav.svg);
	background-position: bottom min(3rem, 2.196vw) center;
	background-repeat: no-repeat;
	background-size: min(3.6rem, 2.635vw) auto;
	padding-bottom: min(3.2rem, 2.343vw);
	height: 100%;
	color: rgb(var(--wht));
	text-align: center;
	text-decoration: none;
	border: solid 1px rgb(var(--wht));
	border-radius: min(0.5rem, 0.366vw);
	display: block;
}

.gnav__list--item a:hover {
	background-position: bottom min(2.2rem, 1.611vw) center;
	opacity: 1;
}

.gnav__content {
	padding: min(3.6rem, 2.635vw) 0;
	display: flex;
	flex-direction: column;
	align-items: center;
}

.gnav__content--title {
	margin-bottom: min(1.8rem, 1.318vw);
	height: min(6rem, 4.392vw);
	line-height: 1.5;
	font-size: min(2rem, 1.464vw);
	font-weight: 500;
	display: flex;
	justify-content: center;
	align-items: center;
}

.gnav__content--detail {
	background-image: url(../img/icon01.svg);
	background-position: top center;
	background-repeat: no-repeat;
	background-size: min(9.6rem, 7.028vw) auto;
	padding-top: min(11.4rem, 8.346vw);
	line-height: normal;
	font-size: min(2.2rem, 1.611vw);
	font-weight: 700;
}

.mail-magazine .gnav__content--detail {
	background-image: url(../img/icon02.svg);
}

.gnav__content--detail .color {
	color: rgb(var(--yel));
}

.gnav__content--detail small {
	font-size: min(1.8rem, 1.318vw);
}

@media screen and (max-width: 768px) {
	.gnav {
		padding: 8vw 0;
	}

	.gnav__title {
		margin-bottom: 6.4vw;
		font-size: 6.933vw;
	}

	.gnav__title b {
		font-size: 11.733vw;
	}

	.gnav__title--small {
		font-size: 5.333vw;
	}

	.gnav__list {
		padding: 0 3.467vw;
		width: 100%;
		display: block;
	}

	.gnav__list--item {
		padding: 1.867vw;
		width: 100%;
	}

	.gnav__list--item:not(:last-of-type) {
		margin-bottom: 2.133vw;
	}

	.gnav__list--item a {
		background-image: url(../img/arrow-gnav_sp.svg);
		background-position: center right 2.667vw;
		background-size: 4vw auto;
		padding-bottom: 0;
		border-radius: 1.333vw;
	}

	.gnav__list--item a:hover {
		background-position: center right 2.667vw;
	}

	.gnav__content {
		padding: 4.8vw 0;
		display: block;
	}

	.gnav__content--title {
		margin-bottom: 0;
		height: auto;
		font-size: 5.6vw;
		display: block;
	}

	.gnav__content--detail {
		background-image: url(../img/icon01.svg);
		background-position: center left 2.667vw;
		background-size: 20.533vw auto;
		padding: 0 0 0 25.867vw;
		font-size: 5.333vw;
		text-align: left;
	}

	.gnav__content--detail small {
		font-size: 4.267vw;
	}
}

/* ----------------------------------------------------
	container
---------------------------------------------------- */
.container {
	margin: 0 auto;
	padding: min(9.6rem, 7.028vw) 0;
	width: min(90rem, 65.886vw);
	position: relative;
}

@media screen and (max-width: 768px) {
	.container {
		padding: 12vw 3.2vw;
		width: 100%;
	}
}

/* ----------------------------------------------------
	campaign
---------------------------------------------------- */
.campaign:not(:first-of-type) {
	border-top: solid 1px rgb(var(--blk));
}

.campaign__title {
	width: min(14rem, 10.249vw);
	height: min(12.5rem, 9.151vw);
	color: rgb(var(--wht));
	display: flex;
	flex-direction: column;
	justify-content: center;
	align-items: center;
	position: absolute;
	top: 0;
	left: 0;
}

.campaign__title::before,
.campaign__title::after {
	width: 100%;
	height: 100%;
	position: absolute;
	top: 0;
	left: 0;
	content: "";
}

.campaign__title::before {
	background: rgb(var(--pnk));
	clip-path: polygon(0 0, 100% 0, 100% 80%, 0% 100%);
	z-index: 2;
}

.campaign__title::after {
	background: #EA9195;
	clip-path: polygon(0 0, 100% 2%, 100% 100%, 0 80%);
	z-index: 1;
}

.campaign__title .inner {
	position: relative;
	top: -0.5rem;
	z-index: 2;
}

.campaign__title .inner__content,
.campaign__title .inner__content--small {
	width: 100%;
	line-height: 1.5;
	font-weight: 700;
	text-align: center;
	display: block;
	position: relative;
	z-index: 2;
}

.campaign__title .inner__content {
	font-size: min(2.4rem, 1.757vw);
}

.campaign__title small {
	font-size: min(1.8rem, 1.318vw);
}

/* campaign__head */
.campaign__head {
	margin-bottom: min(5rem, 3.66vw);
}

.campaign__head--title {
	margin: 0 auto min(5rem, 3.66vw);
}

.campaign__date {
	margin-bottom: min(2rem, 1.464vw);
}

.campaign__date--title {
	margin-bottom: min(2rem, 1.464vw);
	text-align: center;
}

.campaign__date--title span {
	padding: 0.75em 2em;
	line-height: 1;
	font-size: min(2rem, 1.464vw);
	font-weight: 700;
	border-top: solid min(0.4rem, 0.293vw) rgb(var(--pnk));
	border-bottom: solid min(0.4rem, 0.293vw) rgb(var(--pnk));
	display: inline-block;
	position: relative;
}

.campaign__date--title span::before,
.campaign__date--title span::after {
	background-image: url(../img/bg1.svg);
	background-position: left center;
	background-repeat: no-repeat;
	background-size: min(1.4rem, 1.025vw) auto;
	width: 50px;
	height: 50px;
	position: absolute;
	top: 50%;
	content: "";
}

.campaign__date--title span::before {
	left: 0;
	transform: translateY(-50%);
}

.campaign__date--title span::after {
	right: 0;
	transform: rotate(-180deg) translateY(50%);
}

.campaign__date--detail {
	margin-bottom: 2rem;
	font-size: min(2rem, 1.464vw);
	display: flex;
	justify-content: center;
}

.campaign__head--text {
	margin-bottom: 2rem;
	font-size: min(2rem, 1.464vw);
	text-align: center;
}

/* campaign__body */
.campaign__body {
	padding: min(5rem, 3.66vw) 0;
	border: double 6px rgb(var(--pnk));
}

.campaign__body--title {
	background-image: url(../img/icon-present.svg);
	background-position: top center;
	background-repeat: no-repeat;
	background-size: min(3.8rem, 2.782vw) auto;
	margin-bottom: min(3rem, 2.196vw);
	padding-top: min(5rem, 3.66vw);
	color: rgb(var(--pnk));
	line-height: normal;
	font-size: min(2.4rem, 1.757vw);
	font-weight: 700;
	text-align: center;
}

.campaign__list {
	margin: 0 auto;
	width: min(78.5rem, 57.467vw);
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
}

.campaign__list--item {
	width: min(37.7rem, 27.599vw);
}

.campaign__list--item:nth-child(even) {
	margin-left: min(3.1rem, 2.269vw);
}

.campaign__image {
	position: relative;
}

.campaign__image--title {
	width: min(8.6rem, 6.296vw);
	height: min(8.4rem, 6.149vw);
	color: rgb(var(--wht));
	display: flex;
	flex-direction: column;
	justify-content: center;
	align-items: center;
	position: absolute;
	top: 0;
	left: min(1.4rem, 1.025vw);
	z-index: 1;
}

.campaign__image--title::before,
.campaign__image--title::after {
	width: 100%;
	height: 100%;
	position: absolute;
	top: 0;
	left: 0;
	content: "";
}

.campaign__image--title::before {
	background: rgb(var(--pnk));
	clip-path: polygon(0 0, 100% 0, 100% 80%, 0% 100%);
	z-index: 2;
}

.campaign__image--title::after {
	background: #EA9195;
	clip-path: polygon(0 0, 100% 2%, 100% 100%, 0 80%);
	z-index: 1;
}

.campaign__image--title .inner {
	position: relative;
	top: -0.5rem;
	z-index: 2;
}

.campaign__image--title .inner__content,
.campaign__image--title .inner__content--small {
	width: 100%;
	line-height: 1.5;
	font-weight: 700;
	text-align: center;
	display: block;
	position: relative;
	z-index: 2;
}

.campaign__image--title .inner__content {
	font-size: min(3.2rem, 2.343vw);
}

.campaign__image--title small {
	font-size: min(1.6rem, 1.171vw);
}

.campaign__image figure {
	position: relative;
}

.campaign__image figure figcaption {
	color: rgb(var(--wht));
	font-size: min(1.4rem, 1.025vw);
	position: absolute;
	right: 1em;
	bottom: 0.5em;
}

.campaign__conten {
	text-align: center;
}

.campaign__conten--title {
	margin-bottom: 0.5em;
	padding: 0.5em 0;
	line-height: normal;
	font-size: min(2rem, 1.464vw);
	font-weight: 700;
	border-bottom: solid 1px rgb(var(--pnk));
}

.campaign__conten--detail {}

.campaign__conten--detail .text {
	color: #707070;
	font-size: min(1.6rem, 1.171vw);
}

.campaign__conten--detail .note {}

.campaign a {
	color: #3364ea;
}

@media screen and (max-width: 768px) {
	.campaign:not(:first-of-type) {
		border-top: none;
	}

	.campaign .container {
		padding-top: 21.333vw;
	}

	.campaign__title {
		width: calc(100% - 6.4vw);
		height: 13.333vw;
		left: 3.2vw;
	}

	.campaign__title .inner {
		display: flex;
		justify-content: center;
		align-items: baseline;
		top: 0;
	}

	.campaign__title::before {
		clip-path: polygon(100% 0, 90% 100%, 0 100%, 10% 0);
	}

	.campaign__title::after {
		clip-path: polygon(90% 0, 100% 100%, 10% 100%, 0 0);
		z-index: 1;
	}

	.campaign__title .inner__content,
	.campaign__title .inner__content--small {
		width: auto;
		white-space: nowrap;
	}

	.campaign__title .inner__content {
		font-size: 5.867vw;
		display: flex;
		justify-content: center;
		align-items: baseline;
	}

	.campaign__title .inner__content--small {
		font-size: 4.267vw;
		display: inline-block;
	}



	/* campaign__head */
	.campaign__head {
		margin-bottom: 8vw;
	}

	.campaign__head--title,
	.campaign__date,
	.campaign__date--title {
		margin-bottom: 5.333vw;
	}

	.campaign__date--title span {
		padding: 0.75em 1.5em;
		font-size: 4.267vw;
		border-top-width: 0.8vw;
		border-bottom-width: 0.8vw;
	}

	.campaign__date--title span::before,
	.campaign__date--title span::after {
		background-size: 2.667vw auto;
	}

	.campaign__date--detail {
		font-size: 4.267vw;
		text-align: center;
	}

	.campaign__head--text {
		font-size: 4.267vw;
	}

	/* campaign__body */
	.campaign__body {
		padding: 8vw 0;
		border-width: 1.6vw;
	}

	.campaign__body--title {
		background-size: 8vw auto;
		margin-bottom: 5.333vw;
		padding-top: 10.667vw;
		font-size: 5.333vw;
	}

	.campaign__list {
		width: 80vw;
		display: block;
	}

	.campaign__list--item {
		width: 100%;
	}

	.campaign__list--item:nth-child(even) {
		margin-left: 0;
	}

	.campaign__list--item:not(:last-of-type) {
		margin-bottom: 8vw;
	}

	.campaign__image {
		position: relative;
	}

	.campaign__image--title {
		width: 18.667vw;
		height: 18.133vw;
		left: 2.667vw;
	}

	.campaign__image--title .inner__content {
		font-size: 6.4vw;
	}

	.campaign__image--title small,
	.campaign__image figure figcaption {
		font-size: 3.2vw;
	}

	.campaign__conten--title {
		font-size: 4.8vw;
	}

	.campaign__conten--detail .text {
		font-size: 4.267vw;
	}
}

/*
	campaign01
------------------------------ */
#campaign01 .campaign__head--title {
	width: min(46rem, 33.675vw);
}

@media screen and (max-width: 768px) {
	#campaign01 .campaign__head--title {
		width: 85.333vw;
	}
}

/*
	campaign02
------------------------------ */
#campaign02 .campaign__head--title {
	width: min(46.3rem, 33.895vw);
}

#campaign02 .campaign__list--item {
	margin-bottom: min(3rem, 2.196vw);
}

#campaign02 .campaign__body {
	padding-bottom: 0;
}

#campaign02 .campaign__body--content {
	background-color: #fff2f2;
	padding: min(4rem, 2.928vw) 0;
}

#campaign02 .campaign__body--content .inner {
	margin: 0 auto;
	width: min(78.5rem, 57.467vw);
	display: flex;
	justify-content: space-between;
}

#campaign02 .campaign__body--content .image {
	width: min(37.7rem, 27.599vw);
}

#campaign02 .campaign__body--content .image figure {
	position: relative;
}

#campaign02 .campaign__body--content .image figure figcaption {
	color: rgb(var(--wht));
	font-size: min(1.4rem, 1.025vw);
	position: absolute;
	right: 1em;
	bottom: 0.5em;
}

#campaign02 .campaign__body--content .content {
	width: min(39rem, 28.551vw);
}

#campaign02 .campaign__body--content .content__title {
	line-height: normal;
	font-size: min(2rem, 1.464vw);
	font-weight: 700;
}

#campaign02 .campaign__body--content .content__title--date {
	color: rgb(var(--pnk));
	font-size: min(1.6rem, 1.171vw);
	font-weight: 500;
	display: block;
}

#campaign02 .campaign__body--content .content__detail .text {
	margin: 0.5em 0 1em;
	line-height: 1.5;
	font-size: min(1.6rem, 1.171vw);
	letter-spacing: -0.005em;
}

#campaign02 .campaign__body--content .content__detail a {
	font-size: min(1.4rem, 1.025vw);
}

@media screen and (max-width: 768px) {
	#campaign02 .campaign__head--title {
		width: 85.333vw;
	}

	#campaign02 .campaign__list--item {
		margin-bottom: 8vw;
	}

	#campaign02 .campaign__body--content {
		padding: 5.333vw 0;
	}

	#campaign02 .campaign__body--content .inner {
		width: 80vw;
		display: block;
	}

	#campaign02 .campaign__body--content .image,
	#campaign02 .campaign__body--content .content {
		width: 100%;
	}

	#campaign02 .campaign__body--content .image {
		margin-bottom: 4.2667vw;
	}

	#campaign02 .campaign__body--content .image figure figcaption {
		font-size: 3.2vw;
	}

	#campaign02 .campaign__body--content .content__title {
		font-size: 5.333vw;
	}

	#campaign02 .campaign__body--content .content__title--date {
		font-size: 4vw;
	}

	#campaign02 .campaign__body--content .content__detail .text {
		margin: 0.5em 0 1em;
		line-height: 1.8;
		font-size: 4.267vw;
	}

	#campaign02 .campaign__body--content .content__detail a {
		font-size: 3.733vw;
	}
}

/*
	campaign03
------------------------------ */
#campaign03 .campaign__head--title {
	width: min(63.7rem, 46.633vw);
}

#campaign03 .campaign__body {
	padding: 0;
	border: none;
	display: flex;
	justify-content: space-between;
}

#campaign03 .campaign__body--image {
	width: min(28.6rem, 20.937vw);
}

@media screen and (max-width: 768px) {
	#campaign03 .campaign__head--title {
		width: 85.333vw;
	}

	#campaign03 .campaign__body--image {
		width: 29.6vw;
	}
}

/*
	accordion
------------------------------ */
.accordion-switch {
	background-color: rgb(var(--pnk));
	margin: min(5rem, 3.66vw) auto 0;
	width: min(36.8rem, 26.94vw);
	height: min(8rem, 5.857vw);
	color: rgb(var(--wht));
	font-size: min(2rem, 1.464vw);
	font-weight: 500;
	display: flex;
	justify-content: center;
	align-items: center;
	cursor: pointer;
}

.accordion-switch svg {
	margin-left: min(2rem, 1.464vw);
	width: min(2rem, 1.464vw);
	fill: none;
	stroke: rgb(var(--wht));
	stroke-miterlimit: 10;
	stroke-width: 1.5px;
	position: relative;
}

.accordion-switch.is-open svg {
	transform: rotate(180deg);
}

.accordion-content {
	margin-top: min(5rem, 3.66vw);
	display: none;
}

.accordion-content .table {
	width: 100%;
	font-size: min(1.6rem, 1.171vw);
	border-top: solid 1px rgb(var(--brn));
}

.accordion-content .table__row {
	border-bottom: solid 1px rgb(var(--brn));
}

.accordion-content .table__th,
.accordion-content .table__td {
	padding: 1em 0;
	vertical-align: top;
}

.accordion-content .table__th {
	width: 16%;
}

.accordion-content .table__td {
	width: 84%;
}

.accordion-content .table__td .color {
	color: rgb(var(--pnk));
}

.accordion-content .table__td .link-button {
	background-color: rgb(var(--brn));
	margin-top: 1em;
	width: min(34rem, 24.89vw);
	height: min(5rem, 3.66vw);
	color: rgb(var(--wht));
}

@media screen and (max-width: 768px) {
	.accordion-switch {
		margin-top: 8vw;
		width: 100%;
		height: 18.667vw;
		font-size: 5.333vw;
	}

	.accordion-switch svg {
		margin-left: 3.2vw;
		width: 5.333vw;
	}

	.accordion-content {
		margin-top: 8vw;
	}

	.accordion-content .table,
	.accordion-content .table tbody,
	.accordion-content .table__row,
	.accordion-content .table__th,
	.accordion-content .table__td {
		width: 100%;
		display: block;
	}

	.accordion-content .table {
		font-size: 4.267vw;
	}

	.accordion-content .table__row {
		border-bottom: none;
	}

	.accordion-content .table__th {
		padding-bottom: 0.5em;
		text-align: center;
	}

	.accordion-content .table__td {
		padding: 0 0 1em;
		border-bottom: solid 1px rgb(var(--brn));
	}

	.accordion-content .table tr:last-child td {
		border-bottom: none;
	}

	.accordion-content .table__td .link-button {
		width: 100%;
		height: 13.333vw;
	}
}

/* ----------------------------------------------------
	notes
---------------------------------------------------- */
.notes .container {
	padding-top: 0;
}

/* ----------------------------------------------------
	rewords
---------------------------------------------------- */
.rewords {
	background-color: rgb(var(--pnk));
}

.rewords__title {
	margin-bottom: min(5rem, 3.66vw);
	line-height: normal;
	color: rgb(var(--wht));
	font-size: min(4.5rem, 3.294vw);
	font-weight: 500;
	text-align: center;
}

.rewords__title--small {
	font-size: min(2.6rem, 1.903vw);
	display: block;
}

.rewords__topic {
	margin-bottom: min(3rem, 2.196vw);
	display: flex;
	justify-content: center;
}

.rewords__topic--item {
	background: linear-gradient(0deg, rgba(226, 210, 120, 1) 0%, rgba(255, 248, 206, 1) 100%);
	margin: 0 min(2rem, 1.464vw);
	width: min(19.8rem, 14.495vw);
	height: min(19.8rem, 14.495vw);
	line-height: normal;
	color: rgb(var(--red));
	font-size: min(2rem, 1.464vw);
	font-weight: 700;
	text-align: center;
	border-radius: min(19.8rem, 14.495vw);
	display: flex;
	justify-content: center;
	align-items: center;
}

.rewords__topic--item b {
	font-size: min(3rem, 2.196vw);
	font-weight: 700;
}

.rewords__text {
	margin-bottom: min(7rem, 5.124vw);
	color: rgb(var(--wht));
	font-size: min(2rem, 1.464vw);
	text-align: center;
}

.charm {
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
}

.charm__item {
	background-color: rgb(var(--wht));
	padding: min(5rem, 3.66vw) 0;
	width: min(43.5rem, 31.845vw);
}

.charm__title {
	margin: 0 auto;
	height: min(20rem, 14.641vw);
}

.charm__content {}

.charm__content--title {
	margin-bottom: 1em;
	line-height: 1.5;
	color: rgb(var(--red));
	font-size: min(2rem, 1.464vw);
	font-weight: 700;
	text-align: center;
}

.charm__content--detail {
	padding: 0 min(5rem, 3.66vw);
}

.charm__content--detail .text {
	font-size: min(1.6rem, 1.171vw);
}

.charm__content--detail .link-button {
	background-color: #c1ac68;
	color: rgb(var(--wht));
	width: 100%;
	max-width: min(35rem, 25.622vw);
	font-size: min(1.8rem, 1.318vw);
	font-weight: 700;
}

/* charm01 */
.charm__item.charm01 .charm__title {
	width: min(8.7rem, 6.369vw);
}

/* charm02 */
.charm__item.charm02 .charm__title {
	width: min(10.3rem, 7.54vw);
}

.charm__item.charm02 .link-button {
	margin-top: min(3rem, 2.196vw);
	height: min(5rem, 3.66vw);
}

/* charm03 */
.charm__item.charm03 {
	margin-top: min(3rem, 2.196vw);
	padding: min(5rem, 3.66vw);
	width: 100%;
}

.charm__item.charm03 .charm__title {
	margin: 0 min(6rem, 4.392vw) 0 0;
	width: min(9rem, 6.589vw);
}

.charm03__content {
	display: flex;
}

.charm__item.charm03 .link-button {
	margin-top: min(3rem, 2.196vw);
	height: min(7.6rem, 5.564vw);
}

.charm__item.charm03 .charm__content--title {
	text-align: left;
}

.charm__item.charm03 .charm__content--detail {
	padding: 0;
}

.charm__item.charm03 .charm__image {
	margin: min(5rem, 3.66vw) 0 min(3rem, 2.196vw);
}

.charm__item.charm03 .charm__list {
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
}

.charm__item.charm03 .charm__list--item {
	background-color: #d6e0e3;
	margin-top: min(1.4rem, 1.025vw);
	padding: min(2rem, 1.464vw) 0;
	width: min(39rem, 28.551vw);
	line-height: normal;
	color: #274458;
	font-size: min(2rem, 1.464vw);
	font-weight: 700;
	text-align: center;
	display: flex;
	justify-content: center;
	align-items: center;
}

.charm__item.charm03 .charm__list--item:first-of-type {
	margin-top: 0;
	width: 100%;
}

.charm__item.charm03 .charm__list--item b {
	line-height: 1;
	font-size: 1.5em;
	font-weight: 700;
}

.charm__item.charm03 .charm__list--item small {
	font-size: 0.8em;
	font-weight: 700;
}

.charm__item.charm03 .charm__list--item a {
	margin-top: 0.5em;
	font-weight: 500;
	display: inline-block;
}

.download {
	margin-top: min(3rem, 2.196vw);
	color: rgb(var(--wht));
	font-size: min(2rem, 1.464vw);
	display: flex;
	justify-content: center;
	align-items: center;
}

.download__title {
	font-weight: 700;
}

.download__content {
	margin-left: min(2rem, 1.464vw);
	display: flex;
	align-items: center;
}

.download__content a {
	margin-left: min(2rem, 1.464vw);
}

.download__content .apple {
	width: min(19.2rem, 14.056vw);
}

.download__content .google {
	width: min(20.1rem, 14.714vw);
}

@media screen and (max-width: 768px) {
	.rewords__title {
		margin-bottom: 1em;
		font-size: 8vw;
	}

	.rewords__title--small {
		font-size: 5.333vw;
	}

	.rewords__topic {
		margin-bottom: 8vw;
		justify-content: space-between;
	}

	.rewords__topic--item {
		margin: 0;
		width: 29.867vw;
		height: 29.867vw;
		font-size: 2.933vw;
		border-radius: 29.867vw;
	}

	.rewords__topic--item b {
		font-size: 4.267vw;
	}

	.rewords__text {
		margin-bottom: 8vw;
		font-size: 4.267vw;
	}

	.charm {
		display: block;
	}

	.charm__item {
		margin-bottom: 3.2vw;
		padding: 8vw 2.667vw;
		width: 100%;
	}

	.charm__title {
		height: 53.333vw;
	}

	.charm__content--title {
		font-size: 5.333vw;
	}

	.charm__content--detail {
		padding: 0 6.4vw;
	}

	.charm__content--detail .text {
		font-size: 4.267vw;
	}

	.charm__content--detail .link-button {
		max-width: 100%;
		font-size: 4.267vw;
	}

	/* charm01 */
	.charm__item.charm01 .charm__title {
		width: 23.2vw;
	}

	/* charm02 */
	.charm__item.charm02 .charm__title {
		width: 27.467vw;
	}

	.charm__item.charm02 .link-button {
		margin-top: 4vw;
		height: 16vw;
	}

	/* charm03 */
	.charm__item.charm03 {
		margin-top: 4vw;
		padding: 8vw 2.667vw 2.667vw;
		width: 100%;
	}

	.charm__item.charm03 .charm__title {
		margin: 0 auto;
		width: 24.533vw;
	}

	.charm03__content {
		display: block;
	}

	.charm__item.charm03 .link-button {
		margin-top: 4vw;
		height: 16vw;
	}

	.charm__item.charm03 .charm__content--title {
		text-align: center;
	}

	.charm__item.charm03 .charm__content--detail {
		padding: 0 6.4vw;
	}

	.charm__item.charm03 .charm__image {
		margin: 12vw 0 4vw;
	}


	.charm__item.charm03 .charm__list {
		display: block;
	}

	.charm__item.charm03 .charm__list--item {
		margin-top: 2.667vw;
		padding: 5.333vw 0;
		width: 100%;
		font-size: 4.8vw;
	}

	.download {
		margin-top: 8vw;
		font-size: 5.333vw;
		text-align: center;
		display: block;
	}

	.download__content {
		margin: 4vw 0 0;
		justify-content: space-between;
	}

	.download__content a {
		margin: 0;
	}

	.download__content .apple {
		width: 43.733vw;
	}

	.download__content .google {
		width: 45.6vw;
	}
}

/* ----------------------------------------------------
	footer
---------------------------------------------------- */
.footer {
	padding: min(8rem, 5.857vw) 0;
}

.footer .logo-list {
	margin: 0 auto min(6.8rem, 4.978vw);
	display: flex;
	justify-content: center;
	align-items: center;
}

.footer .logo-list li {
	margin: 0 min(2rem, 1.464vw);
}

.footer .logo-list .selestine {
	width: min(20.9rem, 15.3vw);
}

.footer .logo-list .garden {
	width: min(31.2rem, 22.84vw);
}

.footer .logo-list .sequence {
	width: min(15.6rem, 11.42vw);
}

.footer .note {
	margin-bottom: min(6.8rem, 4.978vw);
	text-align: center;
}

.footer__logo {
	margin: 0 auto min(3.2rem, 2.343vw);
	width: min(32.1rem, 23.499vw);
}

@media screen and (max-width: 768px) {
	.footer {
		padding: 10.667vw 0;
	}

	.footer .logo-list {
		margin-bottom: 8vw
	}

	.footer .logo-list li {
		margin: 0 2.133vw;
	}

	.footer .logo-list .selestine {
		width: 24.800vw;
	}

	.footer .logo-list .garden {
		width: 37.067vw;
	}

	.footer .logo-list .sequence {
		width: 18.4vw;
	}

	.footer .note {
		margin-bottom: 13.333vw;
	}

	.footer__logo {
		margin-bottom: 10.667vw;
		width: 85.6vw;
	}
}

/* 
	copy
------------------------------ */
.footer .copy {
	line-height: normal;
	color: rgb(var(--gry));
	font-size: min(1.3rem, 0.952vw);
	text-align: center;
}

@media screen and (max-width: 768px) {
	.footer .copy {
		font-size: 3.733vw;
	}
}

/* ----------------------------------------------------
	member
---------------------------------------------------- */
.member {
	background-color: rgb(127, 127, 127);
	width: min(47rem, 34.407vw);
	height: min(9rem, 6.589vw);
	color: rgb(var(--wht));
	font-size: min(2.4rem, 1.757vw);
	font-weight: 500;
	text-decoration: none;
	border-right: solid 2px rgb(127, 127, 127);
	border-bottom: solid 2px rgb(127, 127, 127);
	border-radius: 0 0 min(2.4rem, 1.757vw) 0;
	display: flex;
	justify-content: center;
	align-items: center;
	position: fixed;
	top: 0;
	left: 0;
	z-index: 10;
}

.member svg {
	margin-right: min(0.8rem, 0.586vw);
	width: min(1.2rem, 0.878vw);
	height: auto;
	fill: rgb(var(--wht));
}

.member:hover {
	background-color: rgb(var(--wht));
	color: rgb(127, 127, 127);
	opacity: 1;
}

.member:hover svg {
	fill: rgb(127, 127, 127);
}

@media screen and (max-width: 768px) {
	.member {
		width: 51.467vw;
		height: 16vw;
		line-height: 1.5;
		font-size: 4vw;
		border-radius: 0 0 6.4vw 0;
	}

	.member svg {
		margin-right: 2.667vw;
		width: 2.133vw;
	}
}