@charset "utf-8";

/* Hero */
.hero .swiper-wrapper {
	height: calc(425rem / var(--root-font-size));
}

.hero .carousel-item img {
	height: calc(425rem / var(--root-font-size));
	width: 100%;
	object-fit: cover;
}

.hero .swiper-button-prev,
.hero .swiper-button-next {
	position: absolute;
	top: calc(390rem / var(--root-font-size));
	z-index: 11;
}

.hero .swiper-button-prev {
	left: 43%;
}

.hero .swiper-button-next {
	right: 43%;
}

.hero .swiper-button-prev::after,
.hero .swiper-rtl .swiper-button-next::after {
	rotate: 180deg;
}

.hero .swiper-button-next::after,
.hero .swiper-rtl .swiper-button-prev::after,
.hero .swiper-button-prev::after,
.hero .swiper-rtl .swiper-button-next::after {
	content: '';
	background-image: url('/img/common2/icon_arrow.webp');
	background-size: calc(10rem / var(--root-font-size));
	background-repeat: no-repeat;
	width: calc(10rem / var(--root-font-size));
	height: calc(11rem / var(--root-font-size));
}

/* pagination */
.hero .swiper-pagination-bullet {
	background: none;
	box-shadow: inset 0 0 0 calc(1rem / var(--root-font-size)) #000;
}

.hero .swiper-horizontal > .swiper-pagination-bullets,
.hero .swiper-pagination-bullets.swiper-pagination-horizontal {
	bottom: auto;
	top: calc(380.5rem / var(--root-font-size));
}

.hero .swiper-pagination-bullet-active {
	background: #000;
}

/* 共通部分 */

/* コンテンツタイトル */
.title {
	display: flex;
	align-items: center;
	height: calc(30rem / var(--root-font-size));
}

/* フォント指定 */
.title h2 {
	font-family: var(--din);
	font-size: calc(40rem / var(--root-font-size));
	font-weight: var(--demi);
	color: #29aae1;
}

.title h2 span {
	color: var(--cat-all);
}

.pickup-contents,
.whats-kabai {
	/* 幅と左右余白 */
	width: calc(944rem / var(--root-font-size));
	padding: calc(100rem / var(--root-font-size)) calc(50% - calc(944rem / var(--root-font-size) / 2));
}

.pickup-contents a,
.whats-kabai a {
	color: #000;
	text-decoration: none;
}

div > .view-more {
	height: calc(30rem / var(--root-font-size));
	border-radius: calc(15rem / var(--root-font-size));
}


/* Pick Up ○○ */

/* news, lab共通部分 */
.pickup-contents .title {
	margin-bottom: calc(25rem / var(--root-font-size));
}

/* Pick UP News */
.pickup-news {
	position: relative;
	margin-bottom: calc(80rem / var(--root-font-size));
}

.pickup-news .title {
	justify-content: space-between;
}

.news-blocks .news-block {
	display: flex;
	flex-direction: column;
	justify-content: center;
	align-items: center;
	width: calc(298rem / var(--root-font-size));
	height: calc(310rem / var(--root-font-size));
}

.news-blocks .news-block img,
.news-blocks .news-block .news-info,
.news-blocks .news-block .subject {
	width: calc(248rem / var(--root-font-size));
}

.news-blocks .news-block img {
	height: calc(165rem / var(--root-font-size));
	object-fit: cover;
}

.news-blocks .news-block .news-info,
.news-blocks .news-block .subject {
	font-family: var(--noto);
	font-weight: var(--regular);
	margin-top: calc(15rem / var(--root-font-size));
}

.news-blocks .news-block .news-info {
	font-size: calc(12rem / var(--root-font-size));
	display: flex;
	justify-content: space-between;
	align-items: center;
	height: calc(30rem / var(--root-font-size));
}

.news-blocks .news-block .subject {
	font-size: calc(14rem / var(--root-font-size));
	display: -webkit-box;
	-webkit-box-orient: vertical;
	-webkit-line-clamp: 2;
	line-clamp: 2;
	overflow: hidden;
	max-height: calc(63rem / var(--root-font-size));
}

.news-blocks .only-sp {
	display: none;
}

.pickup-contents .news-swiper-button-prev {
	top: calc(140rem / var(--root-font-size));
	left: calc(-160rem / var(--root-font-size));
}

.pickup-contents .news-swiper-button-next {
	top: calc(150rem / var(--root-font-size));
	left: calc(960rem / var(--root-font-size));
}

.pickup-contents .news-swiper-button-prev,
.pickup-contents .news-swiper-button-next {
	position: absolute;
	width: calc(100rem / var(--root-font-size));
	height: calc(110rem / var(--root-font-size));
	z-index: 11;
	cursor: pointer;
}

.pickup-contents .news-swiper-button-prev::after,
.pickup-contents .swiper-rtl .news-swiper-button-next::after {
	rotate: 180deg;
}

.pickup-contents .disp-arrow::after {
	content: '';
	background-image: url('/img/common2/icon_arrow_big.webp');
	background-size: calc(100rem / var(--root-font-size));
	background-repeat: no-repeat;
	display: block;
	width: calc(100rem / var(--root-font-size));
	height: calc(110rem / var(--root-font-size));
}

/* pagination */
.pickup-contents .disp-pagination {
	display: flex;
	justify-content: center;
	align-items: center;
	margin-top: calc(50rem / var(--root-font-size));
}

.pickup-contents .swiper-pagination-bullet {
	background: none;
	box-shadow: inset 0 0 0 calc(1rem / var(--root-font-size)) #000;
}

.pickup-contents .swiper-horizontal > .swiper-pagination-bullets,
.pickup-contents .swiper-pagination-bullets.swiper-pagination-horizontal {
	bottom: auto;
	top: calc(380.5rem / var(--root-font-size));
}

.pickup-contents .swiper-pagination-bullet-active {
	background: #000;
}

/* Pick UP Lab */
.lab-blocks {
	display: flex;
	gap: calc(25rem / var(--root-font-size));
}

.lab-blocks .lab {
	display: flex;
	width: calc(298rem / var(--root-font-size));
	height: calc(160rem / var(--root-font-size));
}

.lab-blocks .lab a {
	display: flex;
	text-decoration: none;
}

.lab-blocks .lab .lab-info {
	font-family: var(--noto);
	color: #fff;
	display: flex;
	flex-direction: column;
	justify-content: center;
	align-items: center;
	width: calc(159rem / var(--root-font-size));
}

.lab-blocks .lab .lab-info .course {
	font-weight: var(--regular);
	font-size: calc(14rem / var(--root-font-size));
	margin-bottom: calc(10rem / var(--root-font-size));
}

.lab-blocks .lab .lab-info .professor {
	font-weight: var(--medium);
	font-size: calc(21rem / var(--root-font-size));
	margin: 0;
}

.lab-blocks .lab .lab-info .invert {
	font-weight: var(--demi);
	color: #000;
	margin-top: calc(20rem / var(--root-font-size));
	background-color: #fff;
	width: calc(109rem / var(--root-font-size));
}

.lab-blocks .lab .lab-info .invert::after {
	background-image: url('/img/common2/icon_arrow.webp');
}

.lab-blocks .lab .lab-info .invert:hover {
	color: #fff;
	background-color: #000;
}

.lab-blocks .lab .lab-info .invert:hover::after {
	background-image: url('/img/common2/icon_arrow_W.webp');
}

.lab-blocks .lab .applied-chemistry {
	background-color: var(--applied-chemistry);
}

.lab-blocks .lab .chemical-engineering {
	background-color: var(--chemical-engineering);
}

.lab-blocks .lab .bioengineering {
	background-color: var(--bioengineering);
}

.lab-blocks .lab .professor-img {
	width: calc(139rem / var(--root-font-size));
	height: calc(160rem / var(--root-font-size));
	overflow: hidden;
	position: relative;
}

.lab-blocks .lab .professor-img img {
	width: 100%;
	height: 100%;
	object-fit: cover;
	transform: scale(1);
	transform-origin: center;
}

/* What's KABAI */
.whats-kabai {
	width: calc(945rem / var(--root-font-size));
	padding-left: calc(50% - calc(945rem / var(--root-font-size) / 2));
	padding-right: calc(50% - calc(945rem / var(--root-font-size) / 2));
	background-color: #f2faf8;
}

.whats-kabai .title {
	margin-bottom: calc(50rem / var(--root-font-size));
}

.whats-kabai .banners {
	display: grid;
	grid-template-columns: calc(460rem / var(--root-font-size)) calc(460rem / var(--root-font-size));
	grid-auto-rows: calc(235rem / var(--root-font-size));
	gap: calc(25rem / var(--root-font-size));
}

.whats-kabai .banners .introduction {
	font-family: var(--noto);
	font-size: calc(16rem / var(--root-font-size));
	font-weight: var(--bold);
	display: flex;
	align-items: center;
	background-color: #000;
	color: #fff;
	position: absolute;
	z-index: 2;
	width: auto;
	height: calc(34rem / var(--root-font-size));
	padding: 0 calc(30rem / var(--root-font-size)) 0 calc(15rem / var(--root-font-size));
	clip-path: polygon(0 0, 100% 0%, calc(100% - calc(20rem / var(--root-font-size))) 100%, 0% 100%);
}

.whats-kabai .banners img {
	width: calc(460rem / var(--root-font-size));
	height: calc(235rem / var(--root-font-size));
}

/* news */
.news-list .title {
	margin-bottom: calc(50rem / var(--root-font-size));
}

.news-list div:has(.view-more) {
	display: flex;
	justify-content: flex-end;
	margin: calc(25rem / var(--root-font-size)) auto auto;
	width: calc(800rem / var(--root-font-size));
}

.news-list .news-icons {
	justify-content: flex-end;
}

.news-list .news_contents .news_title {
	display: -webkit-box;
	-webkit-box-orient: vertical;
	-webkit-line-clamp: 2;
	line-clamp: 2;
	overflow: hidden;
	margin: 0;
}

/* SP */
@media screen and (width <= 991px) {
	/* Hero */
	.hero .carousel-area {
		height: calc(800rem / var(--root-font-size));
	}

	.hero .carousel-item img {
		height: calc(800rem / var(--root-font-size));
	}

	.hero .swiper-button-prev,
	.hero .swiper-button-next {
		top: calc(715rem / var(--root-font-size));
		width: auto;
	}

	.hero .swiper-button-prev {
		left: 30%;
	}

	.hero .swiper-button-next {
		right: 30%;
	}

	.hero .swiper-button-next::after,
	.hero .swiper-rtl .swiper-button-prev::after,
	.hero .swiper-button-prev::after,
	.hero .swiper-rtl .swiper-button-next::after {
		background-size: calc(30rem / var(--root-font-size));
		width: calc(30rem / var(--root-font-size));
		height: calc(33rem / var(--root-font-size));
	}

	/* pagination */
	.hero .swiper-pagination-bullet {
		width: calc(15rem / var(--root-font-size));
		height: calc(15rem / var(--root-font-size));
	}

	.hero .swiper-horizontal > .swiper-pagination-bullets,
	.hero .swiper-pagination-bullets.swiper-pagination-horizontal {
		top: calc(706.5rem / var(--root-font-size));
	}

	/* 共通部分 */
	.pickup-contents {
		/* 幅と左右余白 */
		width: calc(648rem / var(--root-font-size));
		padding: calc(100rem / var(--root-font-size)) calc(50% - calc(648rem / var(--root-font-size) / 2));
	}

	/* コンテンツタイトル */
	.title {
		justify-content: center;
		height: calc(40rem / var(--root-font-size));
	}

	.title h2 {
		font-size: calc(56rem / var(--root-font-size));
	}

	div > .view-more {
		height: calc(60rem / var(--root-font-size));
		border-radius: calc(30rem / var(--root-font-size));
	}

	/* Pick UP ○○ */

	/* news, lab共通部分 */
	.pickup-contents .title {
		margin-bottom: calc(80rem / var(--root-font-size));
	}

	/* Pick UP News */
	.pickup-news {
		margin-bottom: calc(125rem / var(--root-font-size));
	}

	.pickup-news .title {
		flex-direction: column;
		height: auto;
		margin-bottom: calc(50rem / var(--root-font-size));
	}

	.pickup-news .title h2 {
		font-size: calc(56rem / var(--root-font-size));
		height: calc(40rem / var(--root-font-size));
		margin: calc(-15rem / var(--root-font-size)) 0 calc(80rem / var(--root-font-size));
	}

	.pickup-news .title .news-icons {
		display: flex;
		flex-wrap: wrap;
		width: calc(526rem / var(--root-font-size));
		gap: calc(20rem / var(--root-font-size));
	}

	.pickup-news .title .news-icon {
		font-size: calc(24rem / var(--root-font-size));
		width: calc(250rem / var(--root-font-size));
		height: calc(46rem / var(--root-font-size));
		border-radius: calc(23rem / var(--root-font-size));
	}

	.pickup-news .news-swiper {
		display: flex;
		justify-content: flex-start;
		overflow: hidden;
	}

	.pickup-news .sp-news.swiper {
		position: absolute;
		left: calc(-50rem / var(--root-font-size));
		right: calc(-50rem / var(--root-font-size));
		height: calc(560rem / var(--root-font-size));
	}

	.pickup-contents .pickup-news .news-blocks .news-block {
		height: calc(554rem / var(--root-font-size));
		width: auto;
	}

	.pickup-contents .pickup-news .news-blocks .news-block img,
	.pickup-contents .pickup-news .news-blocks .news-block .news-info,
	.pickup-contents .pickup-news .news-blocks .news-block .subject {
		width: calc(350rem / var(--root-font-size));
	}

	.pickup-contents .pickup-news .news-blocks .news-block img {
		height: calc(233rem / var(--root-font-size));
	}

	.pickup-contents .pickup-news .news-blocks .news-block .news-info,
	.pickup-contents .pickup-news .news-blocks .news-block .subject {
		font-family: var(--noto);
		font-weight: var(--regular);
		margin-top: calc(30rem / var(--root-font-size));
	}

	.pickup-contents .pickup-news .news-blocks .news-block .news-info {
		height: calc(35rem / var(--root-font-size));
		font-size: calc(22rem / var(--root-font-size));
	}

	.pickup-contents .pickup-news .news-blocks .news-block .news-info .news-icon {
		width: 8rem;
	}

	.pickup-contents .pickup-news .news-blocks .news-block .subject {
		-webkit-line-clamp: 2;
		line-clamp: 2;
		max-height: calc(108rem / var(--root-font-size));
		font-size: calc(24rem / var(--root-font-size));
	}

	.pickup-contents .pickup-news .news-blocks .only-sp {
		display: block;
	}

	.pickup-contents .pickup-news div:last-child {
		margin-top: calc(725rem / var(--root-font-size));
	}

	.pickup-contents .pickup-news .news-swiper-button-prev,
	.pickup-contents .pickup-news .news-swiper-button-next,
	.pickup-contents .pickup-news .news-swiper-pagination {
		display: none;
	}

	/* Pick UP Lab */
	.lab-blocks {
		display: flex;
		gap: 0;
	}

	.lab-blocks .lab {
		flex-direction: column-reverse;
		width: calc(216rem / var(--root-font-size));
		height: calc(432rem / var(--root-font-size));
		border: none;
	}

	.lab-blocks .lab a {
		display: flex;
		flex-direction: column-reverse;
	}

	.lab-blocks .lab .lab-info {
		width: calc(216rem / var(--root-font-size));
		height: calc(216rem / var(--root-font-size));
	}

	.lab-blocks .lab .lab-info .course {
		font-size: calc(22rem / var(--root-font-size));
		margin-bottom: calc(10rem / var(--root-font-size));
	}

	.lab-blocks .lab .lab-info .professor {
		font-size: calc(32rem / var(--root-font-size));
	}

	.lab-blocks .lab .lab-info .view-more {
		font-size: calc(20rem / var(--root-font-size));
		margin-top: calc(20rem / var(--root-font-size));
		width: calc(176rem / var(--root-font-size));
		height: calc(50rem / var(--root-font-size));
	}

	.lab-blocks .lab .lab-info .view-more::after {
		margin-left: calc(10rem / var(--root-font-size));
		background-size: calc(20rem / var(--root-font-size));
		width: calc(20rem / var(--root-font-size));
		height: calc(22rem / var(--root-font-size));
	}

	.lab-blocks .lab .applied-chemistry {
		background-color: var(--applied-chemistry);
	}

	.lab-blocks .lab .chemical-engineering {
		background-color: var(--chemical-engineering);
	}

	.lab-blocks .lab .bioengineering {
		background-color: var(--bioengineering);
	}

	.lab-blocks .lab .professor-img {
		width: calc(216rem / var(--root-font-size));
		height: calc(216rem / var(--root-font-size));
	}

	.lab-blocks .lab .professor-img img {
		transform: scale(1.1);
	}

	/* What's KABAI */
	.whats-kabai {
		width: calc(650rem / var(--root-font-size));
		padding-left: calc(50% - calc(650rem / var(--root-font-size) / 2));
		padding-right: calc(50% - calc(650rem / var(--root-font-size) / 2));
	}

	.whats-kabai .title {
		margin-bottom: calc(80rem / var(--root-font-size));
	}

	.whats-kabai .banners {
		display: flex;
		flex-direction: column;
		align-items: center;
		gap: calc(25rem / var(--root-font-size));
	}

	.whats-kabai .banners .introduction {
		font-size: calc(22rem / var(--root-font-size));
		width: fit-content;
		height: calc(34rem / var(--root-font-size));
		padding: 0 calc(30rem / var(--root-font-size)) 0 calc(15rem / var(--root-font-size));
	}

	.whats-kabai .banners img {
		width: calc(650rem / var(--root-font-size));
		height: calc(334rem / var(--root-font-size));
	}

	/* news */
	.news-list .title {
		margin-bottom: calc(80rem / var(--root-font-size));
	}

	.news-list div:has(.view-more) {
		justify-content: center;
		margin: calc(50rem / var(--root-font-size)) auto auto;
		width: calc(650rem / var(--root-font-size));
	}

	.news-list .view-more::after {
		margin-left: calc(50rem / var(--root-font-size));
	}

	.news-list .news-items a:last-child .news-item {
		border-bottom: calc(1rem / var(--root-font-size)) solid #000;
		margin-bottom: calc(25rem / var(--root-font-size));
	}

	.news-list .news_contents .news_title {
		-webkit-line-clamp: 3;
		line-clamp: 3;
	}
}
