@charset "UTF-8";
/*====================================================

 サンデー文化祭

=====================================================*/
@import url('https://fonts.googleapis.com/css2?family=Noto+Serif+JP:wght@300;400;700&display=swap');
* {
    margin: 0;
    padding: 0;
}
#ContentsArea_fes2025 {
	font-family: "Noto Sans JP", serif;
    font-size: 62.5%;
	font-weight: 500;
    line-height: 1.3;
	overflow: hidden;
    text-align: left;
}
#ContentsArea_fes2025 img {
    vertical-align: middle;
	transition: all .3s;
}
#ContentsArea_fes2025 a:hover img {
    opacity: 0.8;
}
#ContentsArea_fes2025 a {
    outline: 0;
    text-decoration: none;
}

#ContentsArea_fes2025 h3 {/*初期化*/
	margin: 0 auto;
    border: none;
}
#ContentsArea_fes2025 .inner {
	padding: 0 60px;
}
@media screen and (max-width: 640px) {
	.pane-contents {
		padding-bottom: 0;
	}
	#ContentsArea_fes2025 .inner {
		padding: 0 3% 30px;
	}
	#ContentsArea_fes2025 h3 {
		font-size: 1rem;
	}
}
ul{
	list-style:none;	
}
/*------------------------------------------------------------------
MV
-------------------------------------------------------------------*/
#area_mv {
	position: relative;
	z-index: 1;
}
#area_mv h1 {
    margin: 0;
	padding: 0;
}

@media screen and (max-width: 640px) {
	.httl {
		letter-spacing: 4px;
		line-height: 1.3;
	}
	.httl span {
		font-size: 2.2rem;
	}
}

.area_2025movie h2 {
    color: #fff;
    font-size: 2rem;
    font-family: "Noto Serif JP", "Hiragino Kaku Gothic ProN", Meiryo, Serif-serif;
    line-height: 1.5;
    padding-bottom: 40px;
	background-color: none;
}
.sub {
	font-size: 1.3rem;
}
.sp {
	display: none;
}
@media screen and (max-width: 640px) {
	.pc {
		display: none;
	}
	.sp {
		display: block;
	}
}

/*------------------------------------------------------------------
Contents
-------------------------------------------------------------------*/

.tape {
    margin: 50px auto 10px;
    text-align: center;
}
.tape p {
	background: #E5007F;
	color: #fff;
	display: inline-block;
    font-size: 24px;
    font-weight: 700;
	margin-bottom: 20px;
    padding: 8px 15px;
}
.tape + strong {
	color: #E5007F;
	display: block;
    font-size: 20px;
    font-weight: 700;
    text-align: center;
}
.bnr {
	margin: 45px 0 40px;
}
.inner dl {
	align-items: stretch;
	display: grid;
	grid-template-columns: 250px 1fr;
	margin: 0 0 20px;
}
.inner dl dt {
	align-items: center;
	background: #1CB8DE;
	color: #fff;
	display: flex;
	font-size: 24px;
	font-weight: 700;
	justify-content: center;
	min-height: 45px;
}
.inner dl dd {
	font-size: 20px;
	font-weight: 700;
	padding: 8px 0 0 40px;
}
.inner dl dd span {
	display: block;
	font-size: 16px;
}
.inner h2 {
	background: #74C23E;
	color: #fff;
	margin-top: 86px;
	text-align: center;
}
.green dt {
	background: #74C23E !important;
}
.green strong {
    font-weight: 600;
    color: red;
}
.tokuten {
	margin-top: 86px;
}
.advancerelease {
	margin: 60px 0 120px;
}
.strong {
	font-size: 14px;
	font-weight: 700;
	margin-bottom: 5px;
}
#ContentsArea_fes2025 ul li {
	text-align: left;
}
ul li.mb  {
	margin-bottom: 20px;
}
.color-red {
	color: #ff0000;
}
.tokuten + p  {
	font-size: 14px;
	font-weight: 700;
	padding: 15px 0;
}
.txt ul {
	margin: 10px 0;
}
.txt ul li {
	font-size: 16px;
	padding: 15px 0;
}
.s-txt {
	display: block;
	font-size: 14px;
	padding: 15px 0;
}
@media screen and (max-width: 640px) {
	.tape {
		margin: 30px auto 10px;
	}
	.tape p {
		font-size: 18px;
		margin-bottom: 12px;
		padding: 5px 15px;
	}
	.tape + strong {
		font-size: 16px;
		margin: 30px auto;
	}
	.bnr {
	margin: 45px 0 20px;
	}
	.inner dl {
		display: block;
		margin: 0;
	}
	.inner dl dt {
		font-size: 18px;
		min-height: initial;
		height: 40px;
	}
	.inner dl dd {
		font-size: 14px;
		line-height: 1.5;
		padding: 15px 0 20px;
		text-align: center;
	}
	.inner dl dd span {
		font-size: 10px;
	}
	.inner h2 {
		margin-top: 30px;
		padding: 12px;
		text-align: center;
	}
	.inner dl.green {
		display: grid;
		grid-template-columns: 100px 1fr;
		margin: 0 0 5px;
	}
	.inner dl.green dt {
		font-size: 14px;
	}
	.inner dl.green dd {
		padding: 5px 0 12px 20px;
		text-align: left;
	}
	.tokuten {
		margin: 0;
	}
	.advancerelease {
		margin: 0 0 30px;
	}
	.strong,
	#ContentsArea_fes2025 ul li  {
		font-size: 16px;
	}
	.color-red {
		margin-top: 20px;
	}
	.tokuten + p {
		padding: 15px 3%;
	}
	.txt ul {
		margin: 10px 3%;
	}

	.s-txt {
		margin-bottom: 30px;
		padding: 15px 3%;
	}
}

.h3wrap {
	padding-top: 200px;
    margin-top:-200px;
}
h3.httl {
	background: #E01E81;
	background: linear-gradient(90deg, #E01E81 0%, #1CB8DE 35%, #C2D470 67%, #FCC900 100%);
	color: #fff;
	font-size: 32px;
	font-weight: 700;
	margin-bottom: 40px !important;
	padding: 22px 0;
	text-align: center;
}
.List__item {
    display: grid;
	grid-template-columns: repeat(3 , 1fr);
	gap: 30px;
	margin-bottom: 50px;
}

/*  API list  */

.List__item-parts {
    display: grid;
}
.List__item-parts a {
	border: 2px solid #E5007F;
	color: #000;
	font-size: 16px;
	padding: 15px 22px;
    position: relative;
	  display: grid !important;
  gap: 5px;
  grid-row: span 4;
  grid-template-rows: subgrid;
}
.List__item-parts a:hover {
	border: 2px solid #E5007F;
	border-image: conic-gradient(#E01E81, #1CB8DE, #C2D470, #FCC900,#E01E81) 1;
}
.List__item-parts .goods-img {
    margin: 0 0 10px;
    text-align: center;
}
.List__item-parts .txt {
	font-weight: 500;
	height: 66px;
	overflow: hidden;
	display: -webkit-box;
	-webkit-box-orient: vertical;
	-webkit-line-clamp: 3; /* 行数 */
	text-align: left;
}
.List__item-parts .price {
	text-align: right;
}
.List__item-parts .price::after {
	content: "（税込）";
	font-size: 14px;
	display: inline-block;
}
.List__item-parts .btn {
	background: #E5007F;
	bottom: -5px;
	color: #fff;
    font-size: 0.9rem;
	font-weight: 700;
    height: 40px;
    line-height: 40px;
	margin: 10px auto;
	padding: 0;
	position: relative;
    width: 100%;
}
.List__item-parts .btn::after {
	background: url(../../../../img/3010/lp_fes2025/arrow.png) no-repeat center;
	background-size: contain;
	content: '';
	display: block;
	position: absolute;
	top: calc(50% - 7px);
	right: 55px;
    height: 14px;
    width: 12px;
}
.List__item-parts a:hover .btn {
	background:#fb2099;
}

@media screen and (max-width: 640px) {
	h3.httl {
	font-size: 18px !important;
		margin: 0 3% 30px; 
	}
	.List__item {
		grid-template-columns: repeat(2 , 1fr);
		gap: 20px;
		margin: -100px 3% 60px;
	padding-top: 100px;
	}
	.List__item-parts a {
		font-size: 15px;
		padding: 10px;
	}
	.List__item-parts .goods-img {
		margin: 0 0 10px;
		text-align: center;
	}
	.List__item-parts .txt {
		height: 80px;
	}
	.List__item-parts .price {
		font-size: 15px;
	}
	.List__item-parts .btn::after {
		right: 10px;
	}
}

@media screen and (max-width: 390px) {

}
/*------------------------------------------------------------------
PAGER
-------------------------------------------------------------------*/
.pagination {
	align-items: baseline;
	display: flex;
	justify-content: center;
}
.pagination-container {
	margin: 50px auto;
}
.pagination-container .pagination li {
	font-size: 24px;
	margin: 0 10px;
	position: relative;
	transition: all .3s;
}
.pagination-container .pagination li a {
	color: #E01E81;
}
.pagination-container .pagination li:hover a {
	opacity: 0.5;
}
.pagination > * {
	background: none;
	font-weight: 300;
}

.pagination-container .pagination li.prev,
.pagination-container .pagination li.next {
	background: none;
	width: 25px;
}
.pagination-container .pagination li.prev {
	margin-right: 40px;
}
.pagination-container .pagination li.next {
	margin-left: 40px;
}
.pagination-container .pagination li.navi-active a {
	background: #E01E81;
	border-radius: 50vw;
	color: #fff;
	display: block;
	height: 30px;
	text-align: center;
	width: 30px;
}
.disabled {
	pointer-events: none; /* クリック無効 */
	opacity: 0 !important; /* 見た目を薄くする */
  }
@media screen and (max-width: 640px) {
	.pagination-container {
		margin-top: 30px;
	}
	.pagination-container .pagination li {
		font-size: 0.8rem;
		line-height: 1.4;
		height: 28px;
		margin: 0 5px;
		width: 28px;
	}
	.pagination-container .pagination li.prev,
	.pagination-container .pagination li.next {
		width: 15px;
	}
	.pagination-container .pagination li.navi-active a {
		align-items: center;
		display: flex;
		justify-content: center;
	}
}