@charset "utf-8";
/*-----------------------------------------------
 * SPECIAL
-------------------------------------------------*/
#special .specialContent{
	position: relative;
	width: 84.9195%;
	min-width: min(1160px, 100%);
	max-width: calc(1160px * var(--max-percent));
	/* padding: 0 min(11.7131%, calc(160px * var(--max-percent))); */
	margin: 0 auto;
}
.contTitle[data-title="special"]{
	flex-shrink: 0;
}
.contTitle[data-title="special"] .contTitle-en{
	height: min(calc(50 / var(--vw-min) * 100vw), calc(50px * var(--max-percent)));
}
.contTitle-ja{
	color: var(--color-main);
}
.contTitle-ja span:before, .contTitle-ja span:after{
	background-color: var(--color-main);
}
.contTitle[data-title="special"] .contTitle-en:before{
	width: min(calc(122 / var(--vw-min) * 100vw), calc(122px * var(--max-percent)));
	height: min(calc(78 / var(--vw-min) * 100vw), calc(78px * var(--max-percent)));
	top: max(calc(-50 / var(--vw-min) * 100vw), calc(-50px * var(--max-percent)));
	left: max(calc(-95 / var(--vw-min) * 100vw), calc(-95px * var(--max-percent)));
	-webkit-mask-image: url(../img/common/title/deco_title_news.svg);
	mask-image: url(../img/common/title/deco_title_news.svg);
	background-color: var(--color-main);
}


.specialContentIn{
	width: 100%;
	padding-top: 5.1725%;/* 60 */
	padding-left: 13.7931%;/* 160 */
	padding-right: 13.7931%;/* 160 */
}



/*-----------------------------------------------
 * SPECIAL - LISTS
-------------------------------------------------*/
.specialLists{
	width: 100%;
	display: flex;
	flex-wrap: wrap;
	gap: min(calc(40 / var(--vw-min) * 100vw), 40px);
}
.specialList{
	width: calc((100% - (min(calc(40 / var(--vw-min) * 100vw), 40px) * 1)) / 2);
}
.specialList__link{
	display: block;
	text-decoration: none;
	position: relative;
}
.specialList__thumb{
	position: relative;
	width: 100%;
	padding-top: 56.25%;
	overflow: hidden;
}
.specialList__thumb img{
	width: 100%;
	height: 100%;
	position: absolute;
	inset: 0;
	object-fit: cover;
}
.specialList__thumb:after{
	content: '';
	position: absolute;
	inset: 0;
	border: 1px solid var(--color-main);
	opacity: 50%;
}
.specialList__title{
	padding-top: 2.5%;/* 12 */
	line-height: 1.8667;
	letter-spacing: 0.04em;
	display: block;
	-webkit-box-orient: vertical;
	overflow: hidden;
}

.link_specialMore{
	margin-top: min(calc(40 / var(--vw-min) * 100vw), calc(40px * var(--max-percent)));
	text-align: right;
}

@media screen and (hover:hover) and (pointer: fine){
	.specialList__title span{
		background: linear-gradient(var(--color-main), var(--color-main)) right bottom / 0 1px no-repeat;
		transition: background-size 0.8s;
	}
	.specialList__link:hover .specialList__title span{
		background-size: 100% 1px;
		background-position: left bottom;
	}
	.specialList__thumb img{
		transition: transform .3s ease, filter .3s ease;
	}
	.specialList__link:hover .specialList__thumb img{
		transform: scale(102.5%);
		filter: brightness(105%);
	}
}

@media screen and (max-width:768px){
	#special{
		padding-bottom: calc(120 / var(--vw-min) * 100vw);
	}
	#special .specialContent{
		width: 100%;
		padding: 0;
		flex-direction: column;
	}
	.contTitle[data-title="special"] .contTitle-en{
		height: calc(64 / var(--vw-min) * 100vw);
	}
	.contTitle[data-title="special"] .contTitle-en:before{
		width: calc(158 / var(--vw-min) * 100vw);
		height: calc(100 / var(--vw-min) * 100vw);
		top: calc(-64 / var(--vw-min) * 100vw);
		left: calc(-120 / var(--vw-min) * 100vw);
	}

	.specialContentIn{
		padding-left: unset;
		padding-right: unset;
		padding-top: calc(46 / var(--vw-min) * 100vw);
	}
	.specialLists{
		gap: calc(48 / var(--vw-min) * 100vw);
	}
	.specialList{
		width: 100%;
		position: relative;
		padding-left: calc(48 / var(--vw-min) * 100vw);
		padding-right: calc(48 / var(--vw-min) * 100vw);
	}
	.specialList__title{
		font-size: calc(26 / var(--vw-min) * 100vw);
		line-height: 1.76924;
		padding-top: calc(16 / var(--vw-min) * 100vw);
	}
	.link_specialMore{
		margin-top: calc(64 / var(--vw-min) * 100vw);
		padding-left: calc(48 / var(--vw-min) * 100vw);
		padding-right: calc(48 / var(--vw-min) * 100vw);
	}
}



/*-----------------------------------------------
 * SPECIAL - DETAIL
-------------------------------------------------*/
.specialContentIn.-article{
	padding-top: min(calc(48 / var(--vw-min) * 100vw), calc(48px * var(--max-percent)));
}
.specialArticle{
	width: 100%;
	position: relative;
	padding-bottom: min(calc(80 / var(--vw-min) * 100vw), calc(80px * var(--max-percent)));
	border-bottom: 1px solid rgba(var(--color-main-rgb), 40%);
}
@media screen and (max-width:768px){
	.specialContentIn.-article{
		padding-top: calc(48 / var(--vw-min) * 100vw);
	}
	.specialArticle{
		padding-bottom: calc(112 / var(--vw-min) * 100vw);
		border-width: max(calc(2 / var(--vw-min) * 100vw), 1px);
	}
}

.specialTitle{
	width: 100%;
	position: relative;
	padding-bottom: min(calc(34 / var(--vw-min) * 100vw), calc(34px * var(--max-percent)));
	border-top: 2px solid rgba(var(--color-main-rgb), 40%);
	border-bottom: 2px solid rgba(var(--color-main-rgb), 40%);
}
.specialTitle__title{
	display: block;
	width: 100%;
	padding-top: min(calc(28 / var(--vw-min) * 100vw), calc(28px * var(--max-percent)));
	font-size: min(calc(24 / var(--vw-min) * 100vw), calc(24px * var(--max-percent)));
	font-weight: 500;
	letter-spacing: 0.04em;
	line-height: 1.75;
}
.specialTitle:after{
	content: '';
	width: min(calc(118 / var(--vw-min) * 100vw), calc(118px * var(--max-percent)));
	height: min(calc(80 / var(--vw-min) * 100vw), calc(80px * var(--max-percent)));
	position: absolute;
	right: 0;
	bottom: 0;
	margin-right: max(calc(-60 / var(--vw-min) * 100vw), calc(-60px * var(--max-percent)));
	margin-bottom: max(calc(-40 / var(--vw-min) * 100vw), calc(-40px * var(--max-percent)));
	-webkit-mask: url(../img/common/deco_flower.svg) no-repeat right bottom / contain;
	mask: url(../img/common/deco_flower.svg) no-repeat right bottom / contain;
	background-color: var(--color-main);
}

@media screen and (max-width:768px){
	.specialTitle{
		padding-bottom: calc(40 / var(--vw-min) * 100vw);
		border-width: max(calc(2 / var(--vw-min) * 100vw), 1px);
	}
	.specialTitle__title{
		font-size: calc(32 / var(--vw-min) * 100vw);
		line-height: 2;
		padding-top: calc(30 / var(--vw-min) * 100vw);
		padding-left: calc(48 / var(--vw-min) * 100vw);
		padding-right: calc(48 / var(--vw-min) * 100vw);
	}
	.specialTitle:after{
		width: calc(128 / var(--vw-min) * 100vw);
		height: calc(88 / var(--vw-min) * 100vw);
		margin-right: 0;
		margin-bottom: calc(-44 / var(--vw-min) * 100vw);
	}
}



.specialArticleIn{
	width: 100%;
	padding-top: min(calc(40 / var(--vw-min) * 100vw), calc(40px * var(--max-percent)));
	position: relative;
	letter-spacing: 0.04em;
	line-height: 1.8667;
}
@media screen and (max-width: 767px){
	.specialArticleIn{
		padding-top: calc(40 / var(--vw-min) * 100vw);
		padding-left: calc(48 / var(--vw-min) * 100vw);
		padding-right: calc(48 / var(--vw-min) * 100vw);
		line-height: 2;
		letter-spacing: 0.03em;
	}
}

/**
* secTitle
**/
.special__secTitle{
	position: relative;
	width: 100%;
	line-height: 1.2;
	font-size: min(calc(20 / var(--vw-min) * 100vw), calc(20px * var(--max-percent)));
	position: relative;
	margin-bottom: min(calc(40 / var(--vw-min) * 100vw), calc(40px * var(--max-percent)));
}
.special__secTitle.-center{
	text-align: center;
}
.special__secTitle.-en{
	font-family: var(--font-en);
	font-size: min(calc(26 / var(--vw-min) * 100vw), calc(26px * var(--max-percent)));
}
.special__secTitle--txt{
	display: block;
	position: relative;
	padding-bottom: 12px;
}
.special__secTitle.-en .special__secTitle--txt{
	padding-bottom: 4px;
}
.special__secTitle--txt:before{
	content: '';
	position: absolute;
	bottom: 0;
	left: 0;
	right: 0;
	height: 1px;
	background-color: rgba(50, 140, 199, 0.4);
}
.special__secTitle:not(.-nodeco):after{
	content: '';
	position: absolute;
	top: 0;
	right: max(calc(-60 / var(--vw-min) * 100vw), calc(-60px * var(--max-percent)));
	bottom: 0;
	width: min(calc(118 / var(--vw-min) * 100vw), calc(118px * var(--max-percent)));
	height: min(calc(80 / var(--vw-min) * 100vw), calc(80px * var(--max-percent)));
	-webkit-mask: url(../img/common/deco_flower.svg) no-repeat center left / contain;
	mask: url(../img/common/deco_flower.svg) no-repeat center left / contain;
	background-color: #328CC7;
}
@media screen and (max-width:768px){
	.special__secTitle{
		font-size: calc(28 / var(--vw-min) * 100vw);
		margin-bottom: calc(60 / var(--vw-min) * 100vw);
	}
	.special__secTitle.-en{
		font-size: calc(32 / var(--vw-min) * 100vw);
	}
	.special__secTitle.-center{
		text-align: left;
	}
	.special__secTitle--txt{
		padding: calc(20 / var(--vw-min) * 100vw) calc(48 / var(--vw-min) * 100vw) calc(20 / var(--vw-min) * 100vw) calc(24 / var(--vw-min) * 100vw);
	}
	.special__secTitle:not(.-nodeco):after{
		top: unset;
		right: calc(-24 / var(--vw-min) * 100vw);
		bottom: calc(-36 / var(--vw-min) * 100vw);
		width: calc(128 / var(--vw-min) * 100vw);
		height: calc(86 / var(--vw-min) * 100vw);
	}
}


/**
* contTitle
**/
.special__cont--title{
	color: var(--color-main);
	font-weight: 600;
	line-height: 1.25;
	margin-bottom: min(calc(8 / var(--vw-min) * 100vw), calc(8px * var(--max-percent)));
}
.special__cont--title span.-en{
	font-family: var(--font-en);
}
@media screen and (max-width:768px){
	.special__cont--title{
		margin-bottom: calc(16 / var(--vw-min) * 100vw);
	}
}



/**
* articleBackLinks
**/
.articleBackLinks{
	width: 100%;
	position: relative;
	margin-top: min(calc(80 / var(--vw-min) * 100vw), calc(80px * var(--max-percent)));
	text-align: center;
}
.articleBackLinksIn{
	width: 100%;
	position: relative;
	padding: 0 min(calc(120 / var(--vw-min) * 100vw), calc(120px * var(--max-percent)));
}
@media screen and (max-width:768px){
	.articleBackLinks{
		margin-top: calc(100 / var(--vw-min) * 100vw);
		padding-left: calc(24 / var(--vw-min) * 100vw);
		padding-right: calc(24 / var(--vw-min) * 100vw);
	}
}