/* page-opencampus */
#course-select a { cursor: pointer; }
#event .department { display: none; }

/* common */

#ocTopSlide { margin-top: 30px; }
@media only screen and (max-width: 768px) {
    #ocTopSlide {
        margin-top: 8%;
    }
}

#ocTopSlide .slick-track {
	display: flex;
}
#ocTopSlide .slick-slide {
	height: auto !important;
}

.verticalflex {
	display: flex !important;
	flex-direction: column;
	justify-content: space-between;
}
.verticalflex .inside.ocLiBasInner {
	padding: 0 15px 20px 15px !important;
}

.ishide { display: none !important; }
.isshow { display: block !important; }

#ocTopSlideWrap h3.horizonTtl { font-weight: bold; }

/* single event */

#editorsWrap { 
	background-color: #f6eed9; 
	padding: 20px 0 0;
}
#editorsWrap .inner {
    width: 90%;
    min-width: 1100px;
    max-width: 1470px;
	background-color: #fff;
	padding: 5% 5% 7%;
    margin: 0 auto;
}
#editorsWrap h1 {
    font-size: clamp(1.5rem, 0.757rem + 1.08vw, 1.75rem);
	font-weight: 700;
	line-height: 1.5;
	margin: 0 0 1em;
}

#editorsWrap .horixzonHead {
	display: flex;
    color: #ff7500;
    align-items: center;
    text-align: center;
    margin-bottom: 20px;
    font-weight:bold;
}
#editorsWrap .horixzonHead::after {
    border-top: 3px solid;
    content: "";
    display: inline;
    flex-grow: 1;
    margin-right: 0.5em;
    margin-left:0.5em;
}

/* dl 日付 */
#editorsWrap .heldDateWrap { 
    display: flex;
    align-items: stretch;
    justify-content: space-between;
	align-items: center;
	margin-bottom: 20px;
}
#editorsWrap .heldDateWrap dt {
    background-color: #f2f1e9;
    color: #4d4d4d;
    width: 15%;
    display: flex;
    align-items: center;
    justify-content: center;
    font-weight: bold;
	padding: 1em;
}
#editorsWrap .heldDateWrap dd {
    width: 82.5%;
}
#editorsWrap .heldDateWrap dd span {
	border: 2px solid;
    border-color: #4d4d4d;
    border-radius: 8px;
    display: inline-block;
    min-width: 5em;
	font-weight: bold;
    text-align: center;
	padding: .5em 1em;
    margin: .5em 1em .5em 0;
}

#editorsWrap .heldDateWrap dd span.continued,
.ocLiBaseWrap .ocLiBaseBox .heldDateWrap dd span.continued {
	 border-color: #fff !important;
}

/* ↓ style-calendar.css と同等に */
.ocLiBaseWrap .ocLiBaseBox .heldDateWrap dd p { 
	text-align: left;
	line-height: 1.6 !important;
}

/* Overwrite */
@media only screen and (max-width: 768px) {
	.ocLiBaseWrap .ocLiBaseBox .heldDateWrap dd p { 
		font-size: 16px;
		font-size: clamp(0.6rem, 2vw + 0.25rem, 1rem) !important;
	}
}
@media only screen and (min-width: 769px) {
	.ocLiBaseWrap .ocLiBaseBox .heldDateWrap {
		display: flex;
		justify-content: space-between;
		align-items: center;
	}
	.ocLiBaseWrap .ocLiBaseBox .heldDateWrap dt { min-height: 62px; }
	
	.ocLiBaseWrap .ocLiBaseBox .heldDateWrap dd p { 
		font-size: var( --16px );
	}
}
/* ↑ style-calendar.css と同等に */

/* ul 学科 */
#editorsWrap .deptLi {
    display: flex;
    align-items: center;
    justify-content: flex-start;
    flex-wrap: wrap;
    margin-top: 20px;
}
#editorsWrap .deptLi li {
    display: inline-block;
    padding: 5px 5px;
    font-size: 10px;
    line-height: 1em;
    text-align: center;
	font-size: clamp(0.75rem, 0.007rem + 1.08vw, 1rem);
    color: #fff;
    margin-left: 5px;
}
#editorsWrap .deptLi .gc-cate {
  background: #3b82c5;
}
#editorsWrap .deptLi .cg-cate {
  background: #5fab33;
}
#editorsWrap .deptLi .an-cate {
  background: #ff6699;
}
#editorsWrap .deptLi .ch-cate {
  background: #ffb400;
}
#editorsWrap .deptLi .va-cate {
  background: #e50053;
}
#editorsWrap .deptLi .all-cate {
  background-color: #4d4d4d;
}

/* エディタエリア */
#editors { margin: 30px 0; }

/* 申し込み */
#editorsWrap .col2 {
	display: flex;
	flex-wrap: nowrap;
	justify-content: center;
	align-items: center;
	margin-top:3em;
}
#editorsWrap .ocCntBtnWrap .leftbox, 
#editorsWrap .ocCntBtnWrap .rightbox {
  width: 20%;
  text-align: center;
  border: 1px solid;
  border-color: #4d4d4d;
}
#editorsWrap .ocCntBtnWrap .leftbox a, 
#editorsWrap .ocCntBtnWrap .rightbox a {
  font-weight: bold;
  font-size: clamp(0.75rem, 0.007rem + 1.08vw, 1rem);
  line-height: 3em;
  position: relative;
  display: block;
	text-decoration:unset;
}
#editorsWrap .ocCntBtnWrap .leftbox a:after, 
#editorsWrap .ocCntBtnWrap .rightbox a:after {
  content: "\f0da";
  font-family: "Font Awesome 5 Free";
  font-weight: bold;
  margin-left: 10px;
}
#editorsWrap .ocCntBtnWrap .leftbox {
  border-radius: 10px 0 0 10px;
  border-right: none;
}
#editorsWrap .ocCntBtnWrap .rightbox {
  border-radius: 0 10px 10px 0;
  border-left: none;
  background: linear-gradient(#39c462, #07b53b);
  margin-top: 0;
}
#editorsWrap .ocCntBtnWrap .rightbox a {
  color: #fff;
}

/* Overwrite */
@media only screen and (min-width: 769px) {
	#ocTopSlide.ocLiBaseWrap .ocLiBaseBox .heldDateWrap {
		display: flex;
		justify-content: space-between;
		align-items: center;
	}
	#ocTopSlide.ocLiBaseWrap .ocLiBaseBox .heldDateWrap dt { min-height: 62px; }
}

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

    #editorsWrap {
        padding: 15% 0;
    }
    #editorsWrap .inner {
		width: 90%;
        min-width: unset;
        max-width: unset;
        padding: 5% 5% 7%;
		margin: 0 auto;
    }

	#editorsWrap .heldDateWrap dt { width: 30%; }
	#editorsWrap .heldDateWrap dd { width: 68%; }
	#editorsWrap .heldDateWrap dd span { margin: .25em .5em; }

	#editorsWrap .ocCntBtnWrap .leftbox, 
	#editorsWrap .ocCntBtnWrap .rightbox {
		width: 50%;
	}
	#editorsWrap .ocCntBtnWrap .leftbox a, 
	#editorsWrap .ocCntBtnWrap .rightbox a {
		font-size: 3.2vw;
        line-height: 3em;
	}
}

@media only screen and (min-width: 769px) {

}

/* 20250430_調整 */
#editorsWrap  ul li{
	list-style: disc ;
  	margin-left: 1.5em;
}

#editorsWrap ol li{
	list-style: decimal ;
  	margin-left: 1.5em;
}

#editorsWrap blockquote p::before {
  content: "“";
  margin-right: 0.2em;
}

#editorsWrap blockquote p::after {
  content: "”";
  margin-left: 0.2em;
}

#editorsWrap a:link{
	color: #06F;
}

#editorsWrap a:visited{
	color: #63C;
}

#editorsWrap .ocCntBtnWrap .leftbox a{
	color:unset;
}

#editorsWrap img{
	width:auto;
	max-width:100%;
}


#editorsWrap h2{
	font-size: clamp(1.5rem, 0.757rem + 1.08vw, 1.75rem);
	font-weight:bold;
	position: relative;
  padding: 0.25em 0;
}

#editorsWrap h2::after{
  content: "";
  display: block;
  height: 4px;
  background: linear-gradient(to right , #ff7300, #ff3363);
}

#editorsWrap h3{
  font-weight:bold;
/*   color:#ff3363; */
  display:flex;
  align-items:center;
  text-align:center;
}

#editorsWrap h3:after{ 
  content:'';
  border-top:1px solid #ff3363;
  content:"";
  display:inline;
  flex-grow:1;
  margin-right:0.5em;
  margin-left:0.3em;
}

/* #editorsWrap h4{ */
/*   padding: 5px 0px; */
/*   margin-bottom: 1em; */
/*   border-bottom: 3px double #eb3c64; */
/* } */

#editorsWrap h5{
  padding: 10px 0px;
  margin-bottom: 1em;
  border-bottom: 3px dotted #eb3c64;
}

#editorsWrap h6{
	position:relative;
	padding: 0.25em 0;
}

#editorsWrap h6::before{
  content:"";
  position: absolute;
  display: block;
  width:100%;
  height: 2px;
  background: linear-gradient(to right, #eb3c64, transparent);
  bottom:0;
  left:0;
}

#event .department .releaseBtn button { 
	width: 100%;
	font-size: 100%; 
    font-size: 100%;
    vertical-align: baseline;
	cursor: pointer;
    margin: 0;
    padding: 0;
}

@media only screen and (max-width:768px) {
	#event .department h2 span { display: none !important; }
	#event .department .btnTtlWrap.releaseBtn {
		width: 60%;
		font-size: 3.5vw;
		margin: 5% auto 0;
	}
}

@media only screen and (min-width:769px) {
	#event .department div.btnTtlWrap.releaseBtn.sp { display: none !important; }
	#event .department h2 { position: relative; }
	#event .department h2 span button {
		width: 15% !important;
		font-size: 16px !important;
		position: absolute;
		top: 50%;
		right: 15px;
		-webkit-transform: translateY(-50%);
		transform: translateY(-50%);
	}
}

/* 20250619_ocCntBtnWrap ホバー時アニメーション追加 */
#editorsWrap .ocCntBtnWrap .leftbox,
#editorsWrap .ocCntBtnWrap .rightbox{
  overflow:hidden;
  position:relative;
  z-index:1;
}

#editorsWrap .ocCntBtnWrap .leftbox::after,
#editorsWrap .ocCntBtnWrap .rightbox::after{
	position:absolute;
    top:0;
	left:0;
	content:"";
	width:100%;
	height:200%;
    transform: skewy(-10deg) scale(1, 0);
	transform-origin: left top;
    transition: .2s cubic-bezier(0.45, 0, 0.55, 1);
    z-index: -1;
}

#editorsWrap .ocCntBtnWrap .leftbox::after{
	background:#ffffff;
}

#editorsWrap .ocCntBtnWrap .rightbox::after{
	background:#ffffff;
}

#editorsWrap .ocCntBtnWrap .leftbox:hover::after,
#editorsWrap .ocCntBtnWrap .rightbox:hover::after{
	transform:skewy(-10deg) scale(1, 1);
}

#editorsWrap .ocCntBtnWrap .leftbox a:hover {
  color: #ff7700;
  opacity:1;
}

#editorsWrap .ocCntBtnWrap .rightbox a:hover {
  color: #07b53b;
  opacity:1;
}

/* 20250624_ボタンカラー変更 */
#editorsWrap .ocCntBtnWrap .leftbox {
  background:linear-gradient(#ff8e35,#ff7700);
}

#editorsWrap .ocCntBtnWrap .leftbox a{
	color:#ffffff;
}

/* 20250624_投稿画面CSS移行 #editors*/
#editors {
	line-height:1.6;
}

#editors a{
	text-decoration:underline;
}

@media screen and (min-width:1024px){
	#editors .editorTtlWrapper{
		display:flex; gap:4%;
	}
}

#editors .editorThumbWrapper{
	text-align:center;
}

@media screen and (min-width:1024px){
	#editors .editorThumbWrapper{
		width:48%; display:flex; 
		align-items:center;
	}
}

#editors #topslide{
	border:none;
}

@media screen and (min-width:1024px){
	#editors .editorCopyWrapper{
		width:48%;
	}
}

#editors .slick-track {
	width: 100% !important; 
	display: flex !important;
}

#editors .slick-slide{
	transform:none; 
	width: 100% !important;  
	flex: 0 0 100%; 
	display: flex !important;
	justify-content: center;
	align-items: center;
	margin-left:0.5em;
}

#editors .slick-slide img {
	width: 100%;
	height: auto;
	max-width: 100%;
	object-fit: contain;
	display: block;
}

#editors .editorHilight{
	background: linear-gradient(transparent 70%, #fdff2e 70%);
}

#editors .editorH3{
	margin-top:16px;
}

#editors .editorContentsWrapper{
	margin-top:32px
}

@media screen and (min-width:1024px){
	#editors .editorContentsWrapper{
		margin-top:80px;
		display:flex;
		gap:4%;
	}
}

@media screen and (min-width:1024px){
	#editors .editorDataWrapper{
		width:48%;
		margin-top:0;
	}
}

.editorTeacherWrapper{
	height:fit-content;
	border: 1px solid #BCBCBC;
}

@media screen and (min-width:1024px){
	#editors .editorTeacherWrapper{
		width:48%;
		margin-top:0;
	}
}

#editors .editorTeacherHeading {
	display: block;
	 padding: 10px 20px; 
	background-color: #ff7500;
	 color: #fff;
	 font-weight: bold;
}

#editors .editorTeacherImgWrapper{
	display: flex;
	align-items:center;
	 justify-content: space-around; 
	width: 100%;
	margin: 0;
}



#editors .editorDatahead{
	text-align:center;
	color:#1ebdbd;
}

#editors .editorDataContents{
	display:flex;
	gap:30px;
	justify-content:center;
	margin-top:20px;
}

#editors .editorData{
	display:flex;
	flex-direction:column;
	align-items:center;
}

#editors .editorData p{
	font-weight:bold;
	text-align:center;
}

#editors .editorCircleWrapper{
	position:relative;
}

#editors .data01 p{
	color:#1c945e;
}

#editors .data02 p{
	color:#28b567;
}

#editors .editorCircleSvg{
	width: 150px;
	height: 150px;
	transform:rotate(-90deg);
}

#editors svg circle{
	position:relative; 
	fill:none; 
	stroke-width: 10;
	stroke: #f3f3f3;
}

#editors .editorCircleBase{
	stroke-dasharray: 440;
	stroke-dashoffset: 0;
}

#editors .editorCircleLine{
	stroke-dasharray: 440;
}

#editors .line01{
	stroke: #1c945e;
	stroke-dashoffset:4.4;
}

#editors .line02{ 
	stroke: #28b567;
	stroke-dashoffset: 66;
}

#editors .editorDataNumberBox{
	position:absolute;
	top:0;
	left:0;
	width:100%;
	height:100%;
	display:flex;
	align-items:center;
	justify-content:center;
}

#editors .editorDataNumberBox p{
	font-size:48px;
	font-weight:bold;
}

#editors .editorDataNumberBox span{
	font-size:24px;
}

#editors .dataBox01{
	color:#1c945e;
}

#editors .dataBox02{
	color:#28b567;
}

#editors .editorScheduleWrapper{
	margin-top:32px;
}

@media screen and (min-width:1024px){
	#editors .editorScheduleWrapper{
		width:48%;
		margin-top:0;
	}
}

.editorGalleryWrapper{
	margin-top:32px;
}

#editorsWrap .gallery-columns-4 .gallery-item{
	max-width:24%;
	padding:0 0.5%;
}

@media screen and (max-width:1023px){
	#editorsWrap .gallery-columns-4 .gallery-item{
		max-width:48%; 
		padding:0 1%;
	}
}

#editors .editorTimetableWrapper{
	margin-top:80px;
}

#editors .editorTimetable{
	background:#FDE399;
	padding:20px;
	margin-top:20px;
	margin-bottom:40px;
	border-radius:16px;
}

#editors .editorTimetable.vertical{
	width:fit-content;
	margin:20px auto;
}

#editors .editorTimetableTtl{
	font-size:100%;
	text-align:center;
	font-weight:bold;
	position:relative;
	display: block;
	width: fit-content;
	margin:0 auto;
}

@media screen and (min-width:769px){
	#editors .editorTimetableTtl{
		font-size:24px;
	}
}

#editors .editorTimetableTtl::before,#editors .editorTimetableTtl::after{
	position:absolute;
	content:"";
	width:50%;
	height:1px;
	background:#ff3363;
}

#editors .editorTimetableTtl::before{
	top:50%;
	right:104%;
}

#editors .editorTimetableTtl::after{
	top:50%;
	left:104%;
}

#editors .editorTimetableDesc{
	margin-top:16px;
}

#editors .editorTimetableContents{
	display:flex;
	flex-direction:column;
	align-items:stretch;
}

@media screen and (min-width:1024px){
	#editors .editorTimetableContents{
		width:49%;
	}
}

@media screen and (min-width:1024px){
	#editors .editorTimetableContents.vertical{
		width:80%;
	}
}

#editors .Timetable02{
	margin-top:20px;
}

@media screen and (min-width:1024px){
	#editors .Timetable02{
		margin-top:0;
	}
}

@media screen and (min-width:1024px){
	#editors .Timetable02.vertical{
		margin-top:20px;
	}
}

#editors .editorTimetableContainer{
	margin-top:20px;
}

@media screen and (min-width:1024px){
	#editors .editorTimetableContainer{
		display:flex;
		gap:1%;
	}
}

@media screen and (min-width:1024px){
	#editors .editorTimetableContainer.vertical{
		flex-direction:column;
		align-items:center;
	}
}

#editors .editorTimetableTxtContents{
	display:flex; 
	gap:8px; 
	position: relative;
}

#editors .editorTimetableTxtContents:not(:nth-child(1)){
	margin-top:16px;
}

#editors .editorTimetableTextWrapper{
	margin-top:20px;
	background:#fff;
	padding:16px;
	border-radius:8px;
	box-sizing:border-box;
	height:100%;
}

#editors .editorTimetableContentsHead{
	display: inline-block;
	background: #fff;
	font-weight:bold;
	padding:8px 16px;
	border-radius:16px;
	position:relative;
	text-align:center;
}

#editors .editorTimetableContentsHead::before{
	content:"";
	width: 0;
	height: 0;
	border-style: solid;
	border-right: 6px solid transparent;
	border-left: 6px solid transparent;
	border-top: 10px solid #ffffff;
	border-bottom: 0;
	position:absolute;
	left:50%;
	top:96%;
	transform:translateX(-50%);
}

#editors .editorTimetableTxtContents span{
	display: inline-flex;
	justify-content: center;
	align-items: center;
	width: 2em;
	height: 2em;
	background-color: #ff7700;
	color: #fff;
	border-radius: 50%;
	font-weight: bold;
	font-size: 1em;
	flex-shrink: 0;
}

#editors .editorTimetableTxtTtl{
	font-weight:bold;
}

#editors .editorTimetableDot{
	width:1em;
	height:1em;
	display: inline-block;
	border:4px solid #ff7700;
	background-color:#ffffff;
	border-radius:50%;
	flex-shrink:0;
	position:relative;
	z-index:10;
}

#editors .editorTimetableDot::after{
	position:absolute;
	content:"";
	width:2px;
	height:3.8em;
	background:#ff7700;
	top:100%;
	left:50%;
	transform:translateX(-50%);
	z-index:0;
}

#editors .editorTimetableLineSub::after{
	position:absolute;
	content:"";
	width:3px;
	height:2em;
	background:#fff;
	top:calc(100% + 4px);
	left:50%;
	transform:translateX(-50%);
	z-index:0;
}

@media screen and (min-width:1024px){
	#editors .editorBreakSm{
		display:none;
	}
}

#editors .editorDataImgWrapper{
	text-align:center;
}

/*　パンくずリスト　*/
.breadcrumbsWrap .breadcrumbsLi .post-events::before {
  content: "\f0da";
  font-family: "Font Awesome 5 Free";
  font-weight: bold;
  margin: 0 5px;
}