@charset "utf-8";

/*//////////////////////////////////////////////////////////////////////////////

	HOME

//////////////////////////////////////////////////////////////////////////////*/

.more a {
	padding: .8em 3.5em .8em 0;
	position: relative;
	display: inline-block;
	text-decoration: none;
	font-weight: bold;
	font-family: var(--font-en);
	font-style: normal;
	color: #333;
	letter-spacing: .1em;
	line-height: 1;
	background-image: url("../../common/img/arrow_w.svg");
	background-position: center right;
	background-repeat: no-repeat;
	background-size: 2.625em;
}


/*------------------------------------------------------------------------------

	共通見出し

------------------------------------------------------------------------------*/

main h2 {
	font-size: 1.125em;
	font-weight: bold;
	color: rgba(var(--main-color),1);
	line-height: 1;
	letter-spacing: .1em;
}

main h2::after {
	content: 'Club & Circle';
	display: block;
	margin-top: 12px;
	font-size: 3rem;
	font-weight: bold;
	font-family: var(--font-en);
	font-style: normal;
	color: #333;
	letter-spacing: .04em;
	line-height: 1;
}

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

main h2::after {
	margin-top: 2vw;
	font-size: 9vw;
	letter-spacing: 0;
}

}


/*------------------------------------------------------------------------------

	promotion

------------------------------------------------------------------------------*/


#promotion {
	position: relative;
	margin: 0 auto;
	width: 96%;
	max-width: 1850px;
	aspect-ratio: 185/67;
	background-image: url("../img/promotion_pc.jpg");
	background-size: cover;
	background-position: center;
	border-radius: 6px;
}

#promotion img {
	position: absolute;
	bottom: 20%;
	left: 5%;
	width: 37.5%;
}

#promotion .sp {
	display: none;
}

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

#promotion {
	aspect-ratio: 185/100;
}

#promotion img {
	bottom: 30%;
	width: 45%;
}

}

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

#promotion {
	aspect-ratio: 80/146;
	background-image: url("../img/promotion_sp.jpg?2026");
}

#promotion .sp {
	display: block;
}

#promotion .pc {
	display: none;
}

#promotion img {
	bottom: auto;
	top: 7%;
	left: 50%;
	transform: translateX(-50%);
	width: 33%;
}

}



/*------------------------------------------------------------------------------

	トピックス

------------------------------------------------------------------------------*/

main #topics {
	display: flex;
	justify-content: flex-end;
	flex-wrap: wrap;
	position: relative;
	padding: 0 0 85px;
}

main #topics h2 {
	padding-left: 20px;
	width: 240px;
	margin-right: 3.125%;
	margin-top: 53px;
	background-image: url("../img/topics.svg?15");
	background-repeat: no-repeat;
	background-position: bottom;
	background-size: 100%;
	z-index: 2;
}

main #topics h2::after {
	content: 'TOPICS';
}

main #topics .topics_contents {
	width: 72%;
	padding: 2.625em 0 1.8125em 2.5em;
	margin-top: -60px;
	overflow: hidden;
	background-image: linear-gradient(to right, rgba(136,225,227,.9), rgba(41,171,226,.9));
	border-radius: 10px 0 0 10px;
}

main #topics .post_list .slick-track {
	display: flex;
	align-items: stretch;
}

main .post_list a {
	width: 350px;
	margin-right: 1.875em;
}

main #topics .more {
	margin-top: 1em;
	margin-left: 1em;
	line-height: 1;
}

main .post_list dl dd {
	display: -webkit-box;
	-webkit-box-orient: vertical;
	-webkit-line-clamp: 2;/* 制限したい行数 */
}

@media screen and (max-width: 1200px) {
	
main #topics h2 {
	background-size: 80%;
}

main #topics .post_list a {
	width: 280px;
	padding: 10px;
	margin-right: 1.5em;
}

}

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

main #topics {
	flex-direction: column;
	align-items: flex-end;
}

main #topics h2 {
	padding: 3em 0 3em 1em;
	width: 100%;
	margin-right: 0;
	margin-top: 0;
	background-size: 120px;
	background-position: bottom -1% left 15%;
	text-align: center;
}

main #topics .topics_contents {
	margin-top: 0;
}

main #topics .topics_contents {
	width: 92%;
}

}

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

main #topics {
	padding: 0 0 12vw;
}

main #topics h2 {
	padding: 3em 0 1.5em 1em;
	background-size: 22%;
	background-position: bottom left 10%;
	font-size: 4vw;
}

main #topics .post_list a {
	width: 70vw;
	padding: 1em;
	margin-right: 1.5em;
}

main #topics .more {
	margin-top: 1.3em;
	margin-left: 0;
}

}

/*------------------------------------------------------------------------------

	クラブ＆サークル

------------------------------------------------------------------------------*/

/* club_circle
------------------------------------------------------------------------------*/

#club_circle {
	position: relative;
	padding: 116px 0 125px;
	background-color: rgba(136,225,227,.2)
}

#club_circle::before,
#club_circle::after {
	content: '';
	display: block;
	position: absolute;
	bottom: 0;	
	width: 110px;
	aspect-ratio: 110 / 173;
	background-repeat: no-repeat;
	background-size: contain;	
}

#club_circle::before {
	left: 30%;
	background-image: url("../img/more_bg_1.svg");
}

#club_circle::after {
	right: 30%;
	background-image: url("../img/more_bg_2.svg");
}

#club_circle .group {
	display: flex;
}

#club_circle .group a {
	display: block;
	width: 179px;
	margin-left: auto;
}

#club_circle .more {
	text-align: center;
}

#club_circle .more a {
	display: inline-block;
	padding: 2em 9.7em;
	margin: 60px auto 0;
	background-color: #FFF;
	background-image: url("../../common/img/arrow_b.svg");
	background-position: center right 1em;
}

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

#club_circle::before {
	left: 20%;
}

#club_circle::after {
	right:20%;
}

}

@media screen and (max-width: 1200px) {
	
#club_circle::before {
	left: 10%;
}

#club_circle::after {
	right:10%;
}

}

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

#club_circle .group a {
	width: 140px;
}

}

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

#club_circle {
	padding: 20vw 0 25vw;
}

#club_circle .group a {
	width: 25vw;
}

#club_circle .more a {
	display: block;
	margin: 8vw auto 0;
}

#club_circle::before,
#club_circle::after {
	width: 13vw;
}

#club_circle::before {
	left: 25%;
}

#club_circle::after {
	right: 25%;
}

}

