@charset "utf-8";
/*--------------------------*/
/* メインビジュアル */
/*--------------------------*/
#main {
	position: relative;
}
#mv {
	position: relative;
	width: 100%;
	height: 100vh;
	height: 100svh;
	overflow: hidden;
	z-index: 1;
}
#main-visual-image {
	display: block;
	width: 100%;
	height: 120vw;
}
#mv .mv-title {
	position: relative;
	background-color: #fff;
	z-index: 3;
}
#mv .mv-title::before {
	content: '';
	position: absolute;
	display: block;
	width: 100%;
	height: 15vw;
	top: 0;
	left: 50%;
	background: url('../images/mv-bg.png?2022107-2') no-repeat bottom center;
	background-size: 150%;
	z-index: 1;
	-webkit-transform: translateY(-100%) translateX(-50%);
	transform: translateY(-100%) translateX(-50%);
}
#mv .mv-title h1 {
	position: relative;
	width: 80vw;
	height: auto;
	text-align: center;
	margin: 0 auto;
	-webkit-transform: translateY(-50%);
	transform: translateY(-50%);
	z-index: 2;
}
#mv .scroll-down {
	position: absolute;
	bottom: 1.5rem;
	left: 50%;
	text-align: center;
	z-index: 3;
	-webkit-transform: translateX(-50%);
	transform: translateX(-50%);
}
#mv .scroll-down a {
	display: block;
	font-family: 'Barlow Semi Condensed', sans-serif;
	font-size: 1.3rem;
	line-height: 1.5;
}
#mv .scroll-down a::before {
	content: '';
	display: block;
	width: 2rem;
	height: 2rem;
	border: 1px solid;
	border-color:  transparent transparent #ef857d #ef857d;
	transform: rotate(-45deg) translateX(1rem) ;
}
@media only screen and (min-width: 480px) {
	#main-visual-image {
		height: 65vh;
		height: 65svh;
	}
	#mv .mv-title::before {
		background-size: 125%;
	}
	#mv .mv-title h1 {
		width: 62.5vw;
		-webkit-transform: translateY(-42.5%);
		transform: translateY(-42.5%);
	}
	#mv .scroll-down {
		bottom: 2.5rem;
	}
	#mv .scroll-down a {
		font-size: 1.4rem;
	}
	#mv .scroll-down a::before {
		width: 2.5rem;
		height: 2.5rem;
		margin-bottom: 0.5rem;
		transform: rotate(-45deg) translateX(1.25rem) ;
	}
}
@media only screen and (min-width: 1025px) {
	#mv {
		height: 900px;
	}
	#main-visual-image {
		height: 600px;
	}
	#mv .mv-title::before {
		background-size: auto;
	}
	#mv .mv-title h1 {
		width: auto;
		height: 440px;
		-webkit-transform: translateY(-32.5%);
		transform: translateY(-32.5%);
	}
	#mv .mv-title h1 img {
		width: auto;
		height: 440px;
	}
	#mv .scroll-down {
		display: none;
	}
}

#main-nav {

}
#main-nav.content-wrap .content-wrap-inner {
	padding: 0 0 6.5rem;
}
#main-nav nav ul {
	position: relative;
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
	overflow: hidden;
}
#main-nav nav ul > li {
	width: 50%;
	background: url('../images/menu-bg.png?20221107-5') no-repeat center center;
	background-size: 107%;
}
#main-nav nav ul > li:nth-child(-n+2) {
	margin-bottom: 3.5rem;
}
#main-nav nav ul > li:nth-child(odd) {
	margin-left: -0.75rem;
}
#main-nav nav ul > li:nth-child(even) {
	margin-right: -0.75rem;
}
#main-nav nav ul > li .square-title {
	display: flex;
	flex-direction: column;
	justify-content: center;
	color: #fff;
	text-align: center;
	width: 6rem;
	height: 6rem;
	margin: 0 auto;
}
#main-nav nav ul > li:nth-child(1) .square-title {
	background: url('../images/nb-bg1.png?20221107-3') no-repeat center center;
	background-size: 100%;
}
#main-nav nav ul > li:nth-child(2) .square-title {
	background: url('../images/nb-bg2.png?20221107-3') no-repeat center center;
	background-size: 100%;
}
#main-nav nav ul > li:nth-child(3) .square-title {
	background: url('../images/nb-bg3.png?20221107-3') no-repeat center center;
	background-size: 100%;
}
#main-nav nav ul > li:nth-child(4) .square-title {
	background: url('../images/nb-bg4.png?20221107-3') no-repeat center center;
	background-size: 100%;
}
#main-nav nav ul > li .square-title small {
	display: block;
	font-size: 1.2rem;
	line-height: 1;
	letter-spacing: 3px;
	text-indent: 3px;
	margin-bottom: 0.15rem;
}
#main-nav nav ul > li .square-title span {
	display: block;
	font-family: 'Barlow Semi Condensed', sans-serif;
	font-size: 1.8rem;
	font-weight: 600;
	line-height: 1;
	margin-top: 0.15rem;
}
#main-nav nav ul > li em {
	display: block;
	font-size: 4.5vw;
	font-weight: 900;
	line-height: 1.5;
	text-align: center;
	margin: 0.5rem auto 1.5rem;
}
@media only screen and (min-width: 480px) {
	#main-nav.content-wrap .content-wrap-inner {
		padding: 0 2.5% 7.5rem;
	}
	#main-nav nav ul > li {
		width: 50%;
		background-size: 85%;
	}
	#main-nav nav ul > li:nth-child(-n+2) {
		margin-bottom: 4.5rem;
	}
	#main-nav nav ul > li:nth-child(odd) {
		margin-left: 0;
	}
	#main-nav nav ul > li:nth-child(even) {
		margin-right: 0;
	}
	#main-nav nav ul > li .square-title {
		width: 7rem;
		height: 7rem;
	}
	#main-nav nav ul > li .square-title small {
		font-size: 1.3rem;
		font-weight: 500;
		letter-spacing: 5px;
		text-indent: 5px;
	}
	#main-nav nav ul > li .square-title span {
		font-size: 2.2rem;
	}
	#main-nav nav ul > li em {
		font-size: 3vw;
		margin: 1rem auto 1.5rem;
	}
}
@media only screen and (min-width: 1025px) {
	#main-nav {
		position: relative;
		z-index: 10;
	}
	#main-nav.content-wrap .content-wrap-inner {
		padding: 0 10px 8.5rem;
		max-width: 1200px;
	}
	#main-nav nav ul {
		padding-top: 6.5rem;
		overflow: visible;
	}
	#main-nav nav ul > li {
		width: 25%;
		background-size: 100%;
		background-position: bottom 1.5rem center;
	}
	#main-nav nav ul > li:nth-child(1) {
		-webkit-transform: translateY(-45%);
		transform: translateY(-45%);
	}
	#main-nav nav ul > li:nth-child(2) {
		-webkit-transform: translateY(-10%);
		transform: translateY(-10%);
	}
	#main-nav nav ul > li:nth-child(4) {
		-webkit-transform: translateY(-65%);
		transform: translateY(-65%);
	}
	#main-nav nav ul > li:nth-child(-n+2) {
		margin-bottom: 0;
	}
	#main-nav nav ul > li .square-title {
		width: 8rem;
		height: 8rem;
	}
	#main-nav nav ul > li .square-title span {
		font-size: 2.4rem;
	}
	#main-nav nav ul > li em {
		font-size: 2.4rem;
		margin: 1.5rem auto 1.75rem;
	}
}

#top .accordion-area {
	margin-top: 4rem;
	border: 1px solid #ef857d;
	border-radius: 0.5rem;
	padding: 0 0.75rem 0.75rem 0.75rem;
	text-align: center;
	background-color: #fff;
}
#top .accordion-area .shop-list-title {
	display: inline-block;
	font-size: 1.8rem;
	font-weight: 700;
	color: #ef857d;
	background-color: #fff;
	line-height: 1;
	padding: 0 0.75rem;
	letter-spacing: 4px;
	text-indent: 4px;
	white-space: nowrap;
	-webkit-transform: translateY(-50%);
	transform: translateY(-50%);
}
#top .accordion-area > ul {
	margin-top: 1.5rem;
}
#top .accordion-area .accordion-title {
	position: relative;
	display: block;
	color: #ee7800;
	cursor: pointer;
	padding: 1rem;
}
#top .accordion-area .accordion-title.open {
	color: #ef857d;
}
#top .accordion-area .accordion-title::before {
	content: "";
	position: absolute;
	top: 50%;
	right: 1.5rem;
	height: 2px;
	transform: rotate(90deg);
	background-color: #ee7800;
	transition: all .3s ease-in-out;
}
#top .accordion-area .accordion-title::after {
	content: "";
	position: absolute;
	top: 50%;
	right: 1.5rem;
	height: 2px;
	background-color: #ee7800;
	transition: all .2s ease-in-out;
	opacity: 1;
}
#top .accordion-area .accordion-title.open::before {
	transform: rotate(180deg);
	background-color: #ee7800;
}
#top .accordion-area .accordion-title.open::after {
	opacity: 0;
}
#top .accordion-area .accordion-content {
	display: none;
	padding: 0;
	text-align: left;
}
#top .accordion-area ul > li:not(:last-child) {
	padding-bottom: 0.5rem;
}
#top .accordion-area ul > li .area-title.accordion-title {
	font-size: 1.8rem;
	font-weight: 500;
	color: #fff;
	border-radius: 0.5rem;
	background-color: #ee7800;
	padding: 1rem 1.5rem;
	text-align: left;
}
#top .accordion-area ul > li .area-title.accordion-title.open {
	color: #fff;
	border-radius: 0.5rem 0.5rem 0 0;
}
#top .accordion-area ul > li .area-title.accordion-title::before {
	width: 16px;
	background-color: #fff;
	right: 1.75rem;
}
#top .accordion-area ul > li .area-title.accordion-title::after {
	width: 16px;
	background-color: #fff;
	right: 1.75rem;
}
#top .accordion-area ul > li .area-title.accordion-title.open::before {
	background-color: #fff;
}
#top .accordion-area ul > li .area-title.accordion-title small {
	font-size: 1.5rem;
}
#top .accordion-area ul > li .accordion-content {
	background-color: #fcedec;
	font-size: 1.5rem;
	font-weight: 400;
	line-height: 1.75;
	padding: 0;
	border-radius: 0 0 0.5rem 0.5rem;
}
#top .accordion-area ul > li .accordion-content > li {
	padding: 0.25rem 0.25rem 0.25rem 0.5rem;
	border-bottom: 1px solid #fff;
}
#top .accordion-area ul > li .accordion-content > li .shop-title.accordion-title {
	font-size: 1.6rem;
	font-weight: 500;
}
#top .accordion-area ul > li .accordion-content > li .shop-title.accordion-title::before {
	width: 14px;
	right: 1.5rem;
}
#top .accordion-area ul > li .accordion-content > li .shop-title.accordion-title::after {
	width: 14px;
	right: 1.5rem;
}
#top .accordion-area ul > li .accordion-content > li .accordion-content {
	background-color: #fff;
	border-radius: 0.5rem;
}
#top .accordion-area ul > li .accordion-content > li .accordion-content ul {
	font-size: 1.4rem;
	font-weight: 400;
	display: flex;
	flex-wrap: wrap;
	padding: 0.75rem 0;
}
#top .accordion-area ul > li .accordion-content > li .accordion-content ul > li {
	min-width: 50%;
}
#top .accordion-area ul > li .accordion-content > li .accordion-content ul > li a {
	display: block;
	color: #333;
	padding: 0.75rem 1rem;
	text-decoration: underline;
}
#top .accordion-area ul > li .accordion-content > li .accordion-content .note {
	margin: 0;
	padding: 0.75rem 1rem 1.5rem;
}
@media only screen and (min-width: 480px) {
	#top .accordion-area {
		margin-top: 5rem;
		padding: 0 1.25rem 1.25rem 1.25rem;
		max-width: 640px;
		margin-left: auto;
		margin-right: auto;
	}
	#top .accordion-area .shop-list-title {
		font-size: 2.2rem;
		padding: 0 1.5rem;
		letter-spacing: 5px;
		text-indent: 5px;
	}
	#top .accordion-area > ul {
		margin-top: 2rem;
	}
	#top .accordion-area .accordion-title {
		padding: 1.25rem;
	}
	#top .accordion-area ul > li:not(:last-child) {
		padding-bottom: 0.75rem;
	}
	#top .accordion-area ul > li .area-title.accordion-title {
		font-size: 2rem;
		padding: 1.25rem 1.75rem;
	}
	#top .accordion-area ul > li .area-title.accordion-title::before {
		width: 18px;
	}
	#top .accordion-area ul > li .area-title.accordion-title::after {
		width: 18px;
	}
	#top .accordion-area ul > li .area-title.accordion-title small {
		font-size: 1.6rem;
	}
	#top .accordion-area ul > li .accordion-content {
		font-size: 1.6rem;
	}
	#top .accordion-area ul > li .accordion-content > li {
		padding: 0.5rem 0.5rem 0.5rem 0.75rem;
	}
	#top .accordion-area ul > li .accordion-content > li .shop-title.accordion-title {
		font-size: 1.8rem;
	}
	#top .accordion-area ul > li .accordion-content > li .shop-title.accordion-title::before {
		width: 16px;
	}
	#top .accordion-area ul > li .accordion-content > li .shop-title.accordion-title::after {
		width: 16px;
	}
	#top .accordion-area ul > li .accordion-content > li .accordion-content ul {
		font-size: 1.5rem;
	}
	#top .accordion-area ul > li .accordion-content > li .accordion-content ul > li {
		padding: 1rem 1.25rem;
		min-width: 33.33%;
	}
	#top .accordion-area ul > li .accordion-content > li .accordion-content .note {
		margin: 0;
		padding: 1rem 1.25rem 1.5rem;
	}
}
@media only screen and (min-width: 1025px) {
	#top .accordion-area {
		margin-top: 6rem;
		padding: 0 1.5rem 1.5rem 1.5rem;
		max-width: 720px;
		margin-left: auto;
		margin-right: auto;
	}
	#top .accordion-area .shop-list-title {
		font-size: 2.4rem;
	}
	#top .accordion-area > ul {
		margin-top: 2.5rem;
	}
}

.content-wrap .section-body-title {
	position: relative;
	margin-top: 0;
	margin-bottom: 2rem;
	padding-bottom: 1.5rem;
	text-align: center;
	font-size: 6.5vw;
	font-weight: 900;
	color: #ef857d;
	line-height: 1.5;
}
.content-wrap .section-body-title::after {
	position: absolute;
	bottom: 0;
	left: 50%;
	content: '';
	width: 10vw;
	height: 0;
	border-top: 3px solid #ef857d;
	-webkit-transform: translateX(-50%);
	transform: translateX(-50%);
}
.content-wrap .section-body p {
	font-size: 1.6rem;
	font-weight: 500;
	color: #333;
}
.content-wrap .section-body p br.tb {
	display: none;
}
.content-wrap figure {
	text-align: center;
}
.content-wrap .note.center {
	text-align: left;
}
.content-wrap .text-indent {
	display: inline-block;
	font-size: inherit;
	padding-left: 1em;
	text-indent: -1em;
	line-height: inherit;
}
.content-wrap .text-indent br {
	display: none;
}
@media only screen and (min-width: 480px) {
	.content-wrap .section-body-title {
		margin-bottom: 3rem;
		padding-bottom: 2rem;
		font-size: 4.5vw;
	}
	.content-wrap .section-body-title::after {
		width: 15vw;
	}
	.content-wrap .section-body p {
		max-width: 95%;
		margin-left: auto;
		margin-right: auto;
		font-size: 1.7rem;
		text-align: center;
	}
	.content-wrap .section-body p br.tb {
		display: block;
	}
	.content-wrap .note.center {
		text-align: center;
	}
	.content-wrap .text-indent br {
		display: block;
	}
}
@media only screen and (min-width: 1025px) {
	.content-wrap .section-body-title {
		margin-bottom: 3.5rem;
		padding-bottom: 2.5rem;
		font-size: 3.6rem;
	}
	.content-wrap .section-body-title::after {
		width: 10rem;
	}
	.content-wrap .section-body p {
		max-width: 780px;
		font-size: 1.8rem;
	}
}

#top-sec01 {
	background-color: #fcedf1;
}
#top-sec01.content-wrap .content-wrap-inner .section-title {
	background: url('../images/nb-bg1.png') no-repeat center center;
	background-size: contain;
}
#top-sec01.content-wrap .section-body-title {
	color: #f3a8bb;
}
#top-sec01.content-wrap .section-body-title::after {
	border-top: 3px solid #f3a8bb;
}
#top-sec01 figure {
	margin-top: 2rem;
}
#top-sec01 figure a,
#top-sec01 figure a:hover {
	position: relative;
	display: block;
	opacity: 1;
	background-color: #000;
}
#top-sec01 figure a img,
#top-sec01 figure a:hover img {
	opacity: 0.3;
}
#top-sec01 figure.cs a::after {
	position: absolute;
	content: '終了しました';
	display: block;
	color: #fff;
	font-size: 1.6rem;
	font-weight: 400;
	line-height: 1;
	text-align: center;
	white-space: nowrap;
	top: 50%;
	left: 50%;
	letter-spacing: 0.5rem;
	text-indent: 0.5rem;
	padding: 1.25rem 2.5rem;
	border: 1px solid #fff;
	-webkit-transform: translateX(-50%) translateY(-50%);
	transform: translateX(-50%) translateY(-50%);
	z-index: 3;
}
#top-sec01 .accordion-area .shop-list-title {
	background: -webkit-linear-gradient(top, #fcedf1 50%, #fff 50%);
	background: linear-gradient(to bottom, #fcedf1 50%, #fff 50%);
}
#top-sec02 {
	background-color: #fff;
}
#top-sec02.content-wrap .content-wrap-inner .section-title {
	background: url('../images/nb-bg2.png') no-repeat center center;
	background-size: contain;
}
#top-sec02.content-wrap .section-body-title::after {
	border-top: 3px solid #0099d9;
}
#top-sec02.content-wrap .section-body-title {
	color: #0099d9;
}
#top-sec02 .accordion-area .shop-list-title {
	background: -webkit-linear-gradient(top, #fff 50%, #fff 50%);
	background: linear-gradient(to bottom, #fff 50%, #fff 50%);
}
#top-sec03 {
	background-color: #fcedf1;
}
#top-sec03.content-wrap .content-wrap-inner .section-title {
	background: url('../images/nb-bg3.png') no-repeat center center;
	background-size: contain;
}
#top-sec03.content-wrap .section-body-title {
	color: #ed6d34;
}
#top-sec03.content-wrap .section-body-title::after {
	border-top: 3px solid #ed6d34;
}
#top-sec03 figure {
	margin-top: 2rem;
}
#top-sec03 figure a {
	position: relative;
	display: block;
	opacity: 1;
	background-color: #000;
}
#top-sec03 figure a img {
	opacity: 0.3;
}
#top-sec03 figure.cs a::after {
	position: absolute;
	content: '終了しました';
	display: block;
	color: #fff;
	font-size: 1.6rem;
	font-weight: 400;
	line-height: 1;
	text-align: center;
	white-space: nowrap;
	top: 50%;
	left: 50%;
	letter-spacing: 0.5rem;
	text-indent: 0.5rem;
	padding: 1.25rem 2.5rem;
	border: 1px solid #fff;
	-webkit-transform: translateX(-50%) translateY(-50%);
	transform: translateX(-50%) translateY(-50%);
	z-index: 3;
}
#top-sec04 {
	background-color: #fff;
}
#top-sec04.content-wrap .content-wrap-inner .section-title {
	background: url('../images/nb-bg4.png') no-repeat center center;
	background-size: contain;
}
#top-sec04.content-wrap .section-body-title {
	color: #e7cf00;
}
#top-sec04.content-wrap .section-body-title::after {
	border-top: 3px solid #e7cf00;
}
@media only screen and (min-width: 480px) {
	#top-sec01 .section-body figure,
	#top-sec03 .section-body figure {
		margin-top: 2.5rem;
		max-width: 580px;
		margin-left: auto;
		margin-right: auto;
	}
	#top-sec01 figure.cs a::after,
	#top-sec03 figure.cs a::after {
		font-size: 2rem;
		padding: 1.75rem 3.5rem;
	}
}
@media only screen and (min-width: 1025px) {
	#top-sec01 .section-body figure,
	#top-sec03 .section-body figure {
		max-width: 600px;
		margin-top: 3rem;
	}
	#top-sec01 figure.cs a::after,
	#top-sec03 figure.cs a::after {
		letter-spacing: 0.75rem;
		text-indent: 0.75rem;
		padding: 2rem 4rem;
	}
}

#gravureBanner {
	background-color: #fff;
	padding-top: 5rem;
}
.gravureBanner ul {
	display: flex;
	flex-flow: column;
	text-align: center;
}
.gravureBanner ul > li:not(:last-child){
	margin-bottom: 3rem;
}
.gravureBanner ul > li a {
	display: block;
}
.gravureBanner ul > li figure span {
	display: block;
	position: relative;
	background-color: #000;
}
.gravureBanner ul > li figure span img {
	display: block;
}
.gravureBanner ul > li.disabled figure span {
	background-color: #000;
}
.gravureBanner ul > li.disabled figure span img {
	opacity: 0.5;
}
.gravureBanner ul > li.disabled figure span::after {
	position: absolute;
	content: 'COMING SOON...';
	display: block;
	color: #fff;
	font-family: 'Barlow Semi Condensed', sans-serif;
	font-weight: 400;
	line-height: 1.5;
	text-align: center;
	white-space: nowrap;
	top: 50%;
	left: 50%;
	-webkit-transform: translateX(-50%) translateY(-50%);
	transform: translateX(-50%) translateY(-50%);
	z-index: 3;
	font-size: 2.0rem;
	letter-spacing: 1rem;
	text-indent: 1rem;
}
.gravureBanner ul > li a figure figcaption {
	margin-top: 0.75rem;
	font-size: 1.5rem;
	color: #666;
}
@media only screen and (min-width: 480px) {
	.gravureBanner ul {
		flex-flow: row;
		flex-wrap: wrap;
	}
	.gravureBanner ul li {
		width: 100%;
		max-width: 640px;
		margin-left: auto;
		margin-right: auto;
	}
	.gravureBanner ul > li:not(:last-child){
		margin-bottom: 3.5rem;
	}
	.gravureBanner ul > li.disabled figure span::after {
		font-size: 2.8rem;
	}
	.gravureBanner ul > li a figure figcaption {
		font-size: 1.6rem;
	}
}
@media only screen and (min-width: 1025px) {
	#gravureBanner {
		background-color: #fff;
		padding-top: 7.5rem;
	}
	.gravureBanner ul li {
		width: 45%;
		max-width: auto;
	}
	.gravureBanner ul > li:nth-child(3){
		margin-bottom: 0;
	}
	.gravureBanner ul > li.disabled figure span::after {
		font-size: 2.0rem;
	}
	.gravureBanner ul > li a figure figcaption {
		margin-top: 1rem;
	}
}

#gravures {
	padding-top: 16vw;
	width: 100%;
	margin: 0 auto;
	text-align: left;
	background-color: #fcedec;
}
#gravures .section-body-title {
	font-size: 5.5vw;
}
#gravures .section-body-title em {
	display: block;
	margin-top: 0.5rem;
	font-size: 2.2rem;
	font-family: 'Barlow Semi Condensed', sans-serif;
}
#gravures .page-index-list {
	width: 100%;
	margin: 2.5rem auto 0;
	display: flex;
	flex-direction: column;
}
#gravures .page-index-list > li:not(:last-child) {
	margin-bottom: 3rem;
}
#gravures .page-index-list > li > div.blockLink {
	position: relative;
	overflow: hidden;
}
#gravures .page-index-list > li figure {
	cursor: pointer;
	background-color: #000;
}
#gravures .page-index-list > li figure img {
	cursor: pointer;
	width: 100%;
	height: 65vw;
	max-height: 500px;
	object-fit: cover;
	object-position: 50% 25%;
}
#gravures .page-index-list > li figcaption {
	position: absolute;
	left: 0;
	bottom: 0;
	display: block;
	width: 100%;
	padding: 0.75rem 1.5rem;
	background-color: rgba(0, 0, 0, 0.75);
	color: #fff;
	text-align: left;
	z-index: 1;
}
#gravures .page-index-list > li figcaption::after {
	position: absolute;
	content: '';
	right: 2rem;
	top: 50%;
	display: block;
	width: 2rem;
	height: 2rem;
	border-top: 2px solid #ccc;
	border-right: 2px solid #ccc;
	z-index: 2;
	transform: translateY(-50%) rotate(45deg);
}
#gravures .page-index-list > li figcaption em {
	display: block;
	font-size: 2.2rem;
}
#gravures .page-index-list > li figcaption em small {
	display: block;
	font-size: 1.2rem;
}
#gravures .page-index-list > li > ul {
	margin-top: 0.75rem;
	display: flex;
	flex-wrap: wrap;
}
#gravures .page-index-list > li > ul .gbtn {
	width: 32%;
	text-align: left;
}
#gravures .page-index-list li ul .gbtn:first-child {
	margin-right: 2%;
}
#gravures .page-index-list li ul .gbtn:last-child {
	margin-left: 2%;
}
#gravures .page-index-list li .gbtn a {
	display: block;
	position: relative;
	padding: 0.75rem 1.5rem;
	text-decoration: none;
	font-size: 1.6rem;
	font-family: 'Barlow Semi Condensed', sans-serif;
	color: #ef857d;
	background-color: #fff;
	border: 2px solid #ef857d;
}
#gravures .page-index-list li .gbtn a::after {
	position: absolute;
	content: '';
	right: 1.5rem;
	top: 50%;
	display: block;
	width: 0.75rem;
	height: 0.75rem;
	border-top: 2px solid #ef857d;
	border-right: 2px solid #ef857d;
	transform: translateY(-50%) rotate(45deg);
}
#gravures .page-index-list li .gbtn .disabled,
#gravures .page-index-list li .gbtn .disabled:hover {
	cursor: default;
	color: #aaa;
	background-color: #dedede;
	border: 2px solid #dedede;
}
#gravures .page-index-list li .gbtn .disabled::after,
#gravures .page-index-list li .gbtn .disabled:hover::after {
	content: none;
}
@media only screen and (min-width: 480px) {
	#gravures {
		padding-top: 11vw;
	}
	#gravures .section-body-title {
		font-size: 4.5vw;
	}
	#gravures .section-body-title em {
		margin-top: 0.75rem;
		font-size: 3.2rem;
	}
	#gravures .page-index-list {
		flex-direction: row;
		flex-wrap: wrap;
		margin-top: 0;
	}
	#gravures .page-index-list > li {
		width: 47.5%;
		margin-top: 5rem;
	}
	#gravures .page-index-list > li:not(:last-child) {
		margin-bottom: 0;
	}
	#gravures .page-index-list > li:nth-child(odd) {
		margin-left: 0;
		margin-right: auto;
	}
	#gravures .page-index-list > li:nth-child(even) {
		margin-left: auto;
		margin-right: 0;
	}
	#gravures .page-index-list > li figure img {
		height: 60vw;
		max-height: 500px;
	}
	#gravures .page-index-list > li figcaption {
		padding: 1rem 1.5rem;
	}
	#gravures .page-index-list > li figcaption em {
		font-size: 2.6rem;
	}
	#gravures .page-index-list > li figcaption em small {
		font-size: 1.4rem;
	}
	#gravures .page-index-list > li > ul {
		margin-top: 1rem;
	}
	#gravures .page-index-list li .gbtn a {
		padding: 1rem 1.5rem;
	}
}
@media only screen and (min-width: 1025px) {
	#gravures {
		padding-top: 120px;
	}
	#gravures .section-body-title {
		font-size: 3.6rem;
	}
	#gravures .section-body-title em {
		margin-top: 1rem;
		font-size: 3.0rem;
	}
	#gravures .page-index-list > li {
		width: 30.5%;
	}
	#gravures .page-index-list > li:nth-child(odd),
	#gravures .page-index-list > li:nth-child(even) {
		margin-left: 0;
		margin-right: 0;
	}
	#gravures .page-index-list > li:nth-child(3n-1) {
		margin-left: 4.25%;
		margin-right: 4.25%;
	}
	#gravures .page-index-list > li figure img {
		height: 460px;
		max-height: 460px;
		-webkit-transition: linear 0.25s all;
		transition: linear 0.25s all;
		object-fit: cover;
		object-position: 50% 25%;
	}
	#gravures .page-index-list > li div:hover img,
	#gravures .page-index-list > li figure img:hover {
		transform: scale(1.1);
		opacity: 0.6;
	}
	#gravures .page-index-list > li figcaption {
		padding: 1rem 2rem;
	}
	#gravures .page-index-list > li figcaption em {
		font-size: 2.4rem;
	}
	#gravures .page-index-list > li figcaption em small {
		font-size: 1.5rem;
	}
	#gravures .page-index-list > li > ul {
		margin-top: 1.25rem;
	}
	#gravures .page-index-list li .gbtn a:hover {
		color: #fff;
		background-color: #ef857d
	}
	#gravures .page-index-list li .gbtn a:hover::after {
		border-top: 2px solid #fff;
		border-right: 2px solid #fff;
	}
}

.backPageBtn {
	margin-top: 3.5rem;
	width: 100%;
	text-align: center;
}
.backPageBtn a {
	display: block;
	font-size: 1.6rem;
	font-weight: 500;
	line-height: 24px;
	padding: 1.5rem 1.5rem;
	text-decoration: none;
	color: #fff;
	border: 1px solid #ef857d;
	background-color: #ef857d;
	opacity: 1;
}
@media only screen and (min-width: 480px) {
	.backPageBtn {
		margin-top: 4.5rem;
	}
	.backPageBtn a {
		font-size: 1.8rem;
		line-height: 32px;
	}
}
@media only screen and (min-width: 1025px) {
	.backPageBtn {
		margin-top: 5rem;
	}
	.backPageBtn a {
		line-height: 36px;
	}
}
