@charset "utf-8";


.movie-var{
padding-top: 56.25%;
	position: relative;
	background-image: none!important;
}
.movie-var::after {
	background: #e0dddd!important;
}
.movie-var #mvTit{
	z-index: 5;
	position: absolute;
	left: 0;
	top: 0;
}

.movie-var #mvCopy{
	z-index: 5;
	display: block;
	position: absolute;
	left: 0;
	top: 30%;
}
/*
.movie-var #mvCopy img{
	opacity: 0;
}
*/
.movie-var div.main-movie{
	width: 100%;
    position: absolute;
/*    height: 100vh;/*高さを全画面にあわせる*/
padding-top: 56.25%;
	z-index: 0;
	left: 0;
	top: 0;
}
.movie-var div.main-movie div{
    position: absolute;
    z-index: 1;/*最背面に設定*/
    top: 0;
    right:0;
    left:0;
    bottom:0;
    overflow: hidden;
}
.movie-var #eventBtn{
	z-index: 5;
	position: absolute;
	left: 0;
	bottom: -10%;
}
.movie-var div.main-movie div video{
    position: absolute;
/*    z-index: -1;*/
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    /*縦横幅指定*/
/*    width: 177.77777778vh; /* 16:9 の幅→16 ÷ 9＝ 177.77% */
width: 100%;
    height: 56.25vw; /* 16:9の幅 → 9 ÷ 16 = 56.25% */
    min-height: 100%;
    min-width: 100%;
}




div#digest-movie-wrap{
	padding-top: 60px;
	margin-bottom: 60px;
}/**/
div#digest-movie-wrap h2 {
	padding-bottom: 40px;
	font-size: 2rem;
	font-weight: bold;
	text-align: center;
}
div#digest-movie-wrap h2::before {
	content: "";
	width: 474px;
	height: 50px;
	margin: 0 auto 20px;
	background: url(../../../../img/opencampus/new/digest-title.svg) 0 0 no-repeat;
	display: block;
	background-size: contain;
}
div#digest-movie-wrap div.digest-movie{
	width: 90%;
	margin: 0 auto;
	margin-bottom: 10%;
}
div#digest-movie-wrap div.digest-movie div{
	width: 100%;
	padding-top: 56.25%;
	position: relative;
}
div#digest-movie-wrap div.digest-movie div iframe{
	width: 100%;
	height: 100%;
	position: absolute;
	top: 0;
	right: 0;
}


div.add-newbnr{
	width: 60%;
	max-width: 800px;
	margin: 0 auto;
	margin-top: 5%;
	margin-bottom: 0;
}
div.add-newbnr img{
	display: block;
	width: 100%;
}

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



/* 運行表 */
/* -------------------------------------------------- */
#introHead {
    font-size: 1.6rem;
    font-weight: bold;
    line-height: 1;
    text-align: center;
    margin-bottom: 25px;
}
.timetableBodyCaption {
	font-size: 1.3rem;
	line-height: 1.4;
	font-weight: bold;
	line-height: 1;
	letter-spacing: -0.060em;
	color: #ED1C24;
	margin-bottom: 10px;
}

#introBody {
    font-size: 1.3rem;
    line-height: 1.5;
    letter-spacing: -0.060em;
    color: #464646;
}


.timetableBodyCaption {
	font-size: 1.3rem;
	line-height: 1.4;
	font-weight: bold;
	line-height: 1;
	letter-spacing: -0.060em;
	color: #ED1C24;
	margin-bottom: 10px;
}


.timetableHead {
	height: 42px;
	font-size: 1.2rem;
	font-weight: bold;
	line-height: 42px;
	color: #AC45BB;
	background-color: #F3E3F5;
	padding: 0 15px;
	background-image: url(../../../../img/opencampus/arrow_down.png);
	background-position: right 15px center;
	background-repeat: no-repeat;
	background-size: 15px 10px;
	margin-bottom: 10px;
	cursor: pointer;
}

.timetableHead.active {
	background-image: url(../../../../img/opencampus/arrow_up.png);
}

.timetableBody {
	display: none;
}

.timetableBodyInner {
	padding: 10px 0 0;
	margin-bottom: 30px;
}

/* 表組み */
.timetable table {
	clear:both;
	width:100%;
	margin-bottom:35px;
	font-size:86%;
	table-layout: fixed;
	}

	.timetable table,
	.timetable table th,
	.timetable table td {
		border:1px solid #c9c9c9;}

	.timetable table th {
		padding:5px;
		background:#ebebeb;
		text-align:center;
		font-weight:bold;
		}

	.timetable table thead th {
		border-bottom:3px double #c9c9c9;
		background:#f8f1fc;
		font-weight:normal;
		}

		/* 左端の場合 */
		.timetable table thead th.gray {background:#ebebeb;}

	.timetable table td {
		padding:5px;
		}

	/* カラー展開 */
	.timetable table {}

	/* tableの下にテキストあり */
	.timetable table.tblMb0{ margin-bottom:0;}
	/* table th td のセンタリング */

	.timetable table.tblVcnt th, #main table.tblVcnt td { vertical-align:middle;}


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


.modaal-close{
	right: 10%!important;
	top: 3%!important;
}

#scheduleSection02 {
	background: #F9EDFF;
	border-bottom: solid 20px #FFF;
}
h2#scheduleTit02{
	width: 70%;
	max-width: 380px;
	margin: 0 auto;
}
h2#scheduleTit02 span{
	font-size: 1.6rem;
	font-weight: 600;
	display: block;
	margin-top: 10px;
	text-align: center;
}

div#scheduleSectionIn02{
	width: 92%;
	margin: 0 auto;
	padding: 60px 0 80px;
	box-sizing: border-box;
}
p.scheduleTxt02{
	font-size: 1.8rem;
	text-align: center;
	font-weight: 600;
	margin-top: 30px;
	margin-bottom: 10px;
}
p.scheduleAnno02{
	text-align: center;
}

div#scheduleWrap02{
	margin-top: 5%;
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
}
div#scheduleWrap02 .schedule{
	width: 31%;
	box-sizing: border-box;
	padding: 2%;
	margin-left: 3%;
	position: relative;
}
div#scheduleWrap02 .schedule:nth-child(3n+1){
	margin-left: 0;
/*	margin-right: 4%;*/
}

div#scheduleWrap02 .schedule div.close{
	width: 100%;
	height: 100%;
	background: rgba(20, 20, 20, 0.6);
	border-radius: 20px;
	position: absolute;
	left: 0;
	top: 0;
	z-index: 2;
}
div#scheduleWrap02 .schedule div.close span{
	display: block;
	width: 100%;
	text-align: center;
	color: #FFF;
	position: absolute;
	left: 0;
	top: 50%;
	transform: translate( 0, -50%);
}

div#scheduleWrap02 .schedule p.time{
	font-size: 1.6vw;
}
div#scheduleWrap02 .schedule p.free{
	font-size: 1.6vw;
	font-weight: 500;
	padding: 5px 0 10px 0;
}

div#scheduleWrap02 .schedule p.free02{
	min-height: 4.8em;
	display: flex;
	align-items: center;
	justify-content: center;
	margin-bottom: calc(4em + 15px);
}

div#scheduleWrap02 .schedule p.free a{
	display: block;
	width: 90%;
	margin: 0 auto;
	margin-top: 3%;
	font-size: 1.4vw;
	text-align: center;
	background: #FFF;
	border-radius: 50px;
	position: relative;
}

div#scheduleWrap02 .schedule p.free a::after {
	display: block;
	content: '';
	width: 5px;
	height: 5px;
	border: 0;
	border-top: solid 1px #1a1a1a;
	border-right: solid 1px #1a1a1a;
	position: absolute;
	top: 50%;
	right: 10%;
	transform: translate( 0, -50%) rotate(45deg);
}

div#scheduleWrap02 .schedule div.area{
	font-size: 1.6vw;
}
div#scheduleWrap02 .schedule div.area span.caution{
	display: block;
	font-size: 0.8em;
	margin-top: 1.5em;
	margin-bottom: 2em;
}


div#scheduleWrap02 .schedule div.reserveBtn a{
	font-size: 1.4vw;
	font-weight: 500;
}
div#scheduleWrap02 .scheduleDate{
	font-size: 1.2rem;
}
div#scheduleWrap02 .scheduleDate span.year{
	font-size: 2.8vw;
}
div#scheduleWrap02 .scheduleDate span.day{
	font-size: 3vw;
}

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


/* -------------------------------------------------- */
/* メニュー */
/* -------------------------------------------------- */
/* ハンバーガーメニューの線 */
#nav {
	position: fixed;
	right: 0;
	top: 0;
	width: 43%;
	height: 100vh;
	padding: 10% 3%;
	transform: translateX(100%); 
	background-color: #fff;
	transition: ease .4s;
	z-index: 900;
	overflow: auto;
}

#nav.active {
	box-shadow: -5px 0px 10px 0px rgba(0, 0, 0, 0.16);
}

#navBtn {
	width: 50px;
	position: fixed;
	right: 30px;
	top: 30px;
	z-index: 1000;
	cursor: pointer;
}

/* ハンバーガーメニューの線 */
#navBtn span {
	width: 100%;
	height: 4px;
	background-color: #CE54B5;
	position: relative;
	transition: ease .4s; /*ハンバーガーメニュークリック時の三本線の動きを遅延*/
	display: block;
  }
  
  #navBtn span:nth-child(1) {
	top: 0;
  }
  
  #navBtn span:nth-child(2) {
	margin: 12px 0;
  }
  
  #navBtn span:nth-child(3) {
	top: 0;
  }

/* ハンバーガーメニュークリック後のスタイル */
#nav.active {
  transform: translateX(0);
}

#navBtn.active span:nth-child(1) {
  top: 13px;
  transform: rotate(45deg);
}

#navBtn.active span:nth-child(2) {
  opacity: 0;
}

#navBtn.active span:nth-child(3) {
  top: -18px;
  transform: rotate(-45deg);
}


#nav {
	text-align: left;
}

#navList {
	padding-bottom: 30px;
	display: inline-block;
	text-align: left;
}

#navList li {
	padding-bottom: 30px;
	font-size: 1.6rem;
	font-family: 'Noto Serif JP', serif;
}

#navList li a {
	color: #333;
	transition: all 0.3s ease-in-out 0s;
}

#navList li a:hover {
	color: #AF3EB7;
}

.sns {
	text-align: center;
}

#nav .sns {
	padding-bottom: 30px;
	text-align: left;
}

.snsTit {
	padding-bottom: 20px;
	font-size: 1.6rem;
	font-family: 'Lato', sans-serif;
}

.snsList {
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
	align-items: center;
	gap: 25px;
}

#nav .snsList {
	display: flex;
	flex-wrap: wrap;
	justify-content: left;
	align-items: center;
	gap: 25px;
}

.snsList li {
	width: 30px;
}

.snsList li img {
	width: 100%;
}

.snsList li a {
	transition: all 0.3s ease-in-out 0s;
}

.snsList li a:hover {
	opacity: 0.7;
}

#navCv {
	width: 80%;
}

.navContactBtn {
	padding-bottom: 30px;
}

.navContactBtn a {
	width: 100%;
	padding: 10px 0;
	font-size: 1.6rem;
	display: inline-block;
	text-align: center;
	border: 1px solid #707070;
	border-radius: 40px;
	font-family: 'Noto Serif JP', serif;
	color: #333;
	transition: all 0.3s ease-in-out 0s;
}

.navContactBtn a:hover {
	color: #AF3EB7;
	border: 1px solid #AF3EB7;
}

#siteName {
	font-size: 1.2rem;
	font-family: 'Noto Serif JP', serif;
}

#siteName a {
	color: #333;
	transition: all 0.3s ease-in-out 0s;
}

#siteName a:hover {
	color: #AF3EB7;
}

/* -------------------------------------------------- */
/* コンテンツ */
/* -------------------------------------------------- */
#contentsWrap {
	width: 100%;
	overflow: hidden;
	position: relative;
	font-family: 'Noto Sans JP', sans-serif;
}

header {
	position: relative;
	width: 100%;
	margin: 0;
}

#opencampusMvWrap {
	position: relative;
}

#opencampusMv {
	width: 100%;
	position: relative;
}

#opencampusMv::after {
	width: 100%;
	padding-top: 60vw;
	position: relative;
	background: url(../../../../img/opencampus/new/mv_bg_pc.jpg) 0 0 no-repeat;
	background-size: contain;
	content: "";
	position: absolute;
	top: 0;
	left: 0;
	z-index: -1;
}

#mvTit {
	width: 50%;
	max-width: 913px;
	padding: 2% 0 0 3%;
}

#mvTit img {
	width: 100%;
	height: auto;
}

#mvCopy {
	width: 35%;
	max-width: 620px;
	padding: 4% 0 0 3%;
}

#mvCopy img {
	width: 100%;
	height: auto;
}

#eventBtn {
	width: 20%;
	max-width: 296px;
	margin: 0 0 0 9%;
	display: inline-block;
}

#eventBtn img {
	width: 100%;
	height: auto;
}

#eventBtn a {
	transition: all 0.3s ease-in-out 0s;
}

#eventBtn a:hover {
	opacity: 0.7;
}

#mvCv {
	position: absolute;
	top: 50%;
	right: 1.5%;
	-webkit-transform: translate(0, -50%);
	transform: translate(0, -50%);
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
	align-items: center;
	flex-direction: column;
}

#mvCv li {
	padding-bottom: 30px;
	margin-bottom: 30px;
	-ms-writing-mode: tb-rl;
 	writing-mode: vertical-rl;
	font-family: 'Noto Serif JP', serif;
	font-size: 1.2rem;
	position: relative;
}

#mvCv li::after {
	position: absolute;
	bottom: 0;
	left: 50%;
	-webkit-transform: translate(-50%, 0);
	transform: translate(-50%, 0);
	content: "";
	width: 24px;
	height: 1px;
	background: #35323C;
	display: inline-block;
}

#mvCv li:last-child {
	padding: 0;
	margin: 0;
}

#mvCv li:last-child::after {
	display: none;
}

#mvCv li a {
	transition: all 0.3s ease-in-out 0s;
}

#mvCv li a:hover {
	color: #CE54B5;
}

#nextEvent {
	position: absolute;
	bottom: 10px;
	right: 10%;
	padding: 15px;
	background-image: linear-gradient(180deg, rgba(244, 222, 255, 1), rgba(196, 247, 247, 1));
}

#nextEventIn {
	padding: 15px;
	background: rgba(255,255,255,0.8);
	border-radius: 20px;
}

#eventTit {
	width: 60%;
	margin: 0 auto;
	padding-bottom: 15px;
	text-align: center;
}

.nextEventList {
	padding-bottom: 10px;
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
	gap: 20px;
}

.nextEventList li {
	font-size: 2rem;
	text-align: center;
	line-height: 1.2;
}

.day {
	font-size: 3rem;
	font-weight: bold;
	font-family: 'Lato', sans-serif;
}

.year {
	font-size: 1.3rem;
	font-weight: bold;
	padding-right: 10px;
}

.reserveBtnTit {
	font-size: 1.2rem;
	padding-bottom: 10px;
	text-align: center;
}

.reserveBtn {
	text-align: center;
}

.reserveBtn a,.reserveBtn span {
	width: 100%;
	padding: 10px 15px;
	background: #CE54B5;
	border-radius: 40px;
	font-size: 1.2rem;
	font-weight: bold;
	color: #FFF!important;
	display: inline-block;
	transition: all 0.3s ease-in-out 0s;
}

.reserveBtn a:hover {
	opacity: 0.7;
}

#scheduleSection {
	width: 100%;
	background: url(../../../../img/opencampus/new/schedules_bg_pc.jpg) center bottom no-repeat;
	background-size: cover;
}

#scheduleSectionIn {
	width: 96%;
	padding: 60px 0 80px;
	margin: 0 auto;
}

#scheduleTit {
	padding-bottom: 40px;
	text-align: center;
	font-size: 2rem;
	color: #FFF;
	font-weight: bold;
}

#scheduleTit::before {
	content: "";
	width: 380px;
	height: 50px;
	margin: 0 auto 20px;
	background: url(../../../../img/opencampus/new/schedules_tit.png) 0 0 no-repeat;
	display: block;
	vertical-align: middle;
	background-size: contain;
}

.scheduleTxt {
	padding-bottom: 10px;
	font-size: 2rem;
	font-weight: bold;
	color: #FFF;
	text-align: center;
}

.scheduleAnno {
	padding-bottom: 40px;
	font-size: 1.4rem;
	font-weight: bold;
	color: #FFF;
	text-align: center;
}

#scheduleWrap {
	padding-bottom: 40px;
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
	gap: 2%;
}

.schedule {
	width: 23.5%;
	padding: 20px 10px;
	background: #FFF;
	border-radius: 20px;
	margin-bottom: 20px;
}

.scheduleDate {
	padding-bottom: 15px;
	font-size: 2rem;
	text-align: center;
	line-height: 1.2;
}

.end .scheduleDate {
	color: #A5A5A5;
}

.time {
	padding-bottom: 10px;
	font-size: 1.1rem;
	text-align: center;
}

.end .time {
	color: #A5A5A5;
}

.free {
	width: 100%;
	padding: 5px 0;
	margin-bottom: 10px;
	text-align: center;
	font-size: 1.3rem;
	background-image: linear-gradient(90deg, rgba(244, 222, 255, 1), rgba(196, 247, 247, 1));
}

.end .free {
	background: #A5A5A5;
	color: #FFF;
}

.area {
	padding-bottom: 30px;
	font-size: 1.3rem;
}

.end .area {
	color: #A5A5A5;
}

.end .reserveBtn a,.end .reserveBtn span {
	color: #FFF;
	background: #A5A5A5;
}

#freeBus {
	width: 100%;
	padding: 30px 0;
	margin: 0 auto;
	text-align: center;
	background-image: linear-gradient(90deg, rgba(252, 247, 255, 1), rgba(222, 255, 245, 1));
}

#freeBusTit {
	font-size: 2rem;
	padding-bottom: 20px;
	font-weight: bold;
	color: #AF3EB7;
}

#freeBusTit::before {
	content: "";
	width: 66px;
	height: 35px;
	margin-right: 15px;
	background: url(../../../../img/opencampus/new/bus_icon.png) 0 0 no-repeat;
	background-size: contain;
	display: inline-block;
	vertical-align: middle;
}

#freeBusTit span {
	display: inline-block;
	vertical-align: middle;
}

#freeBusAnno {
	font-size: 1.4rem;
	padding-bottom: 20px;
}

#freeBusTime {
	font-size: 1.4rem;
}

#link {
	width: 96%;
	margin: 0 auto;
	padding: 60px 0;
}

#linkList {
	padding-bottom: 30px;
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
}

#linkList li {
	width: 18%;
	margin-right: 5%;
}
#linkList li:last-child{
	margin-right: 0;
}

#linkList a {
	font-size: 1.3rem;
	transition: all 0.3s ease-in-out 0s;
}

#linkList a:hover {
	color: #AF3EB7;
}

.linkImg {
	width: 100%;
	padding-bottom: 20px;
}

.linkTxt {
	text-align: center;
}

.linkImg img {
	width: 96%;
	height: auto;
}

#infectionPrevention {
	text-align: center;
}

#infectionPrevention a {
	border: 1px solid #707070;
	padding: 10px 40px;
	border-radius: 30px;
	font-size: 1.4rem;
	transition: all 0.3s ease-in-out 0s;
	display: inline-block;
}

#infectionPrevention a:hover {
	color: #AF3EB7;
	border: 1px solid #AF3EB7;
}

footer {
	position: relative;
	width: 100%;
	background: #FFF;
	color: #333;
	padding: 25px 0 40px;
}

#fLogo {
	padding: 30px 0;
	margin: 0 auto;
	width: 400px;
}

#fLogo img {
	width: 100%;
	height: auto;
}

#fNav {
	padding-bottom: 30px;
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
	align-items: center;
}

#fNav li a {
	color: #333;
	transition: all 0.3s ease-in-out 0s;
}

#fNav li a:hover {
	color: #AF3EB7;
}

#fNav li::after {
	content: "";
	margin: 0 10px;
	width: 1px;
	height: 14px;
	background: #35323C;
	display: inline-block;
	vertical-align: middle;
}

#fNav li:last-child::after {
	display: none;
}

#copy {
	font-size: 1.2rem;
	text-align: center;
}

/* instagram */
#ig {
	width: 100%;
	padding: 15px;
	margin-bottom: 60px;
	position: relative;
	background-image: linear-gradient(90deg, rgba(196, 247, 247, 1), rgba(244, 222, 255, 1));
}

#igBgImgWrap {
	position: relative;
	z-index: 1;
}

.igImg {
	width: 100%;
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
	gap: 10px;
}


.igImgIn {
	width: calc(25% - 10px);
}

.igImgIn ul {
	width: 100%;
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
	gap: 10px;
}

.large {
	width: 100%;
	height: 22.8vw;
}

.small {
	width: calc(50% - 5px);
	padding-top: 11vw;
}

.igImg li {
	position: relative;
	border-radius: 10px;
	overflow: hidden;
}

.igImg img {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	object-fit: cover;
	object-position: center;
}


#igBtnWrap {
	width: 25.5vw;
	height: 25.5vw;
	background: #FFF;
	padding: 10px;
	border-radius: 50%;
	position: absolute;
	top: 50%;
	left: 50%;
	z-index: 2;
	-webkit-transform: translate(-50%, -50%);
	transform: translate(-50%, -50%);
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
	align-items: center;
	flex-direction: column;
}

#igSubTit {
	width: 12vw;
	padding-bottom: 5%;
}

#igSubTit img {
	width: 100%;
	height: auto;
}

#igIcon {
	width: 3.7vw;
	max-width: 60px;
	padding-bottom: 5%;
}

#igIcon img {
	width: 100%;
	height: auto;
}

#igTit {
	padding-bottom: 5%;
	font-size: 1.3vw;
	font-weight: bold;
	text-align: center;
	color: #AF3EB7;
}

.igMoreBtn {
	width: 65%;
	text-align: center;
}

.igMoreBtn a {
	width: 100%;
	padding: 10px;
	background: #CE54B5;
	border-radius: 40px;
	font-size: 1.3vw;
	font-weight: bold;
	color: #FFF!important;
	display: inline-block;
	transition: all 0.3s ease-in-out 0s;
}

/* イベントメニュー */
#eventMenu {
	width: 90%;
	max-width: 1200px;
	padding: 80px 0;
	margin: 0 auto;
}

#eventMenu h2 {
	padding-bottom: 40px;
	font-size: 2rem;
	font-weight: bold;
	text-align: center;
}

#eventMenu h2::before {
	content: "";
	width: 362px;
	height: 50px;
	margin: 0 auto 20px;
	background: url(../../../../img/opencampus/new/timetable_tit.svg) 0 0 no-repeat;
	display: block;
	background-size: contain;
}

#eventList li {
	padding-bottom: 20px;
}

.eventTit {
	width: 100%;
	padding: 20px 0;
	text-align: center;
	font-size: 1.6rem;
	font-weight: bold;
	background: url(../../../../img/opencampus/new/event_icon_off.svg) 98% center no-repeat;
	cursor: pointer;
}

.eventTit.active {
	background: url(../../../../img/opencampus/new/event_icon_on.svg) 98% center no-repeat;
}

#event1 .eventTit {
	background-color: #ACEAEA;
}

#event2 .eventTit {
	background-color: #EAAFF4;
}

#event3 .eventTit {
	background-color: #FFD880;
}

#event4 .eventTit {
	background-color: #F5BBCD;
}
#event5 .eventTit {
	background-color: #68d0d8;
}

.eventDetail {
	padding: 40px;
	display: none;
}

.eventDetailIn {
	position: relative;
}

.eventDetailIn::after {
	content: "";
	width: 2px;
	height: calc(100% - 6px);
	display: block;
	position: absolute;
	top: 3px;
	left: 0;
}

#event1 .eventDetailIn::after {
	background-color: #ACEAEA;
}

#event2 .eventDetailIn::after {
	background-color: #EAAFF4;
}

#event3 .eventDetailIn::after {
	background-color: #FFD880;
}

#event4 .eventDetailIn::after {
	background-color: #F5BBCD;
}
#event5 .eventDetailIn::after {
	background-color: #68d0d8;
}

.timeLineWrap {
	padding-left: 20px;
	position: relative;
}

.timeLineWrap::after {
	content: "";
	width: 20px;
	height: 20px;
	position: absolute;
	top: 3px;
	left: -9px;
}

#event1 .timeLineWrap::after {
	background-color: #ACEAEA;
}

#event2 .timeLineWrap::after {
	background-color: #EAAFF4;
}

#event3 .timeLineWrap::after {
	background-color: #FFD880;
}

#event4 .timeLineWrap::after {
	background-color: #F5BBCD;
}
#event5 .timeLineWrap::after {
	background-color: #68d0d8;
}

.timeLine {
	padding-bottom: 20px;
}

.timeLineTime {
	padding-bottom: 5px;
	font-size: 1.4rem;
}

.timeLineTime span {
	color: #AF3EB7;
	font-weight: bold;
}

.timeLineTit {
	font-size: 1.6rem;
}

.timeLineTit span {
	font-size: 1.4rem;
}

/* 最新情報のリンク */
#newsLink {
	text-align: center;
	padding-bottom: 60px;
}

.newsBtn {
	width: 350px;
	padding: 20px 15px;
	background: linear-gradient(90deg, rgba(170, 35, 180, 1), rgba(29, 177, 204, 1));
	border-radius: 90px;
	font-size: 1.6rem;
	font-weight: bold;
	color: #FFF !important;
	display: inline-block;
	transition: all 0.3s ease-in-out 0s;
	text-align: center;
}

.newsBtn::before {
	margin-right: 10px;
	content: "";
	width: 20px;
	height: 20px;
	background: url(../../../../img/opencampus/new/news_icon.svg) 0 0 no-repeat;
	display: inline-block;
	vertical-align: middle;
	background-size: contain;
}

.newsBtn span {
	display: inline-block;
	vertical-align: middle;
}

.newsBtn:hover {
	opacity: 0.7;
}

/* イベントトピックス */
/* ----------------------------------- */
#newsListWrap {
	padding: 80px 0;
	background: #F9EDFF;
}

#newsListWrap h2 {
	padding-bottom: 40px;
	font-size: 2rem;
	font-weight: bold;
	text-align: center;
}

#newsListWrap h2::before {
	content: "";
	width: 474px;
	height: 50px;
	margin: 0 auto 20px;
	background: url(../../../../img/opencampus/new/event_topics_tit.svg) 0 0 no-repeat;
	display: block;
	background-size: contain;
}

#newsList {
	width: 90%;
	max-width: 1200px;
	margin: 0 auto;
}

#newsListWrap .reserveBtn {
	width: 300px;
	margin: 0 auto;
}

#newsListWrap .reserveBtn a {
	padding: 20px 15px;
	font-size: 1.6rem;
}

#newsListWrap .cornerNews ul {
	margin-bottom: 30px;
}

.news_cat span {
	display: inline-block;
	padding: 0 3px;
	border-radius: 5px;
	background: #965aa0;
	font-size: 1rem;
	font-weight: 700;
	color: #ffffff;
}

/* バナー */
/* ----------------------------------- */
#bnr {
	width: 96%;
	margin: 0 auto 80px;
}

#bnr h2 {
	padding-bottom: 60px;
	font-size: 2rem;
	font-weight: bold;
	text-align: center;
}

#bnr h2::before {
	content: "";
	width: 430px;
	height: 50px;
	margin: 0 auto 20px;
	background: url(../../../../img/opencampus/new/campuslife_tit.png) 0 0 no-repeat;
	display: block;
	background-size: contain;
}

#bnr ul {
	width: 100%;
	display: flex;
	flex-wrap: wrap;
	justify-content: flex-start;
	align-items: center;
	gap: 20px 2%;
}

#bnr ul li {
	width: 32%;
	border: 1px solid #A5A5A5;
}

#bnr ul li img {
	width: 100%;
	height: auto;
}



/* ----------------------------------- */
div.side-fix-area{
	position: relative;
	z-index: 10;
}
div.side-fix-area a{
	display: block;
	position: fixed;
}
div.side-fix-area a.side-fix-btn01{
	width: 264px;
	bottom: 50px;
	right: 50px;
	z-index: 10;
}
div.side-fix-area a.side-fix-btn02{
	width: 45px;
	top: 50%;
	right: 0;
	transform: translate(0,-50%);
	z-index: 10;
}