@charset "utf-8";
/*
Theme Name:スポ健2023
Theme URI:https://spo-ken.ac.jp/
Description:スポーツ健康医療専門学校
Version: 1.1
Author:エイジェック広報部
Author URI:https://www.agekke.co.jp/
*/

/*===================================
     　　　　　 カレンダー埋め込み
===================================*/
.op {
    background-image: linear-gradient( 0deg, transparent 10px, #f5f5f5 11px), linear-gradient( 90deg, transparent 10px, #f5f5f5 11px);
    background-size: 11px 11px;
}
.op .calendar{
	margin-top: 30px;
}
.fc-toolbar .fc-left {
    float: none !important;
    position: absolute;
    top: 0;
    left: 50%;
    transform: translateX(-50%);
}
.fc-ltr .fc-basic-view .fc-day-number {
	text-align: center !important;
    padding: 10px 6px 10px !important;
    font-family: "Barlow", sans-serif;
    font-weight: 700 !important;
    font-size: 1.25rem;
}
.op .eo-fullcalendar .fc-toolbar {
    margin-bottom: 0!important;
    padding: 0 0 20px;
	position: relative;
}
.op .eo-fullcalendar .fc-toolbar h2{
	color: #1147b5;
    font-weight: bold;
    font-size: 1.75rem;
}
.fc-content .fc-title {
	font-weight: bold;
}
.fc-day-grid-event .fc-time {
    font-size: .6rem;
	display: none;
}
.fc-row .fc-content-skeleton tbody td, .fc-row .fc-helper-skeleton tbody td {
    padding: 0 0 10px !important;
}
.fc-unthemed .fc-popover, .fc-unthemed .fc-row, .fc-unthemed hr, .fc-unthemed tbody, .fc-unthemed td, .fc-unthemed th, .fc-unthemed thead {
    border-color: #1147b5 !important;
}
.fc-unthemed th {
	background: #1147b5 !important;
	color: #fff !important;
	border-right: #fff 1px solid !important;
}
.fc-prev-button,
.fc-next-button {
    height: 46.3px !important;
    border-radius: 100px !important;
}
.fc-today-button {
    height: 46.3px !important;	
}
.fc-state-default {
    background-color: #1147b5 !important;
	border: none !important;
	color: #fff !important;
	text-shadow: none !important;
}
.op .eo-fullcalendar .fc-view-container .fc-view table tbody .fc-widget-content .fc-day-grid-container .fc-day-grid .fc-row .fc-content-skeleton table tbody td .fc-day-grid-event {
	display: block;
	margin-bottom: 5px;
	padding: 0 2px;
	font-size: .75rem;
	font-feature-settings: "palt";
	text-decoration: none;
	letter-spacing: 0;
	text-align: center;
}
.op .calendar .calendar-list{
	text-align:right;
	margin-bottom:1%;
}
.op .calendar .calendar-list li{
	display:inline-block;
}
.op .calendar .calendar-list li{
	display:inline-block;
	padding: 0 15px;
	color: #fff;
    font-weight: bold;
    font-size: 14px;
	margin-right:5px;
}
.op .calendar .calendar-list li:last-child{
	margin-right:0px;
}
.op .calendar .calendar-list li.calendar-op{
	background-color: #263085;
}
.op .calendar .calendar-list li.calendar-ao {
    background-color: #ff7171;
}
.op .calendar .calendar-list li.calendar-aoentry {
    background-color: #ffb464;
}
.op .calendar .calendar-list li.calendar-seminar {
    background-color: #683cdb;
}
.op .calendar .calendar-list li.calendar-ao-gansho {
    background-color: #f2a7a7;
}
.op .calendar .calendar-list li.calendar-nyugaku {
    background-color: #53c8ff;
}
.op .calendar .calendar-list li.calendar-gansho {
    background-color: #9fedff;
}	
.eo-fullcalendar .fc-view-container .fc-view table tbody .fc-widget-content .fc-day-grid-container .fc-day-grid .fc-row .fc-content-skeleton table thead .fc-sun {
    color: #e03532;
    font-weight: bold;
}
.eo-fullcalendar .fc-view-container .fc-view table tbody .fc-widget-content .fc-day-grid-container .fc-day-grid .fc-row .fc-content-skeleton table thead .fc-sat {
    color: #16a3f5;
    font-weight: bold
}
.opencampas .category-menu{
	width:80%;
	margin:0 auto;
	margin-bottom:5%;
}
.opencampas .category-menu ul li{
	display:inline-block;
	margin-right:5%;
	width: 21.2%;
    text-align: center;
}
.opencampas .category-menu ul li:last-child{
	margin-right:0%;
}
.opencampas .category-menu ul li a{
    background-color: #1b499f;
    box-shadow: 2px 2px 4px #bdbdbd;
    color: #fff;
    display: block;
    padding: 10px;	
	position:relative;
}
.opencampas .category-menu ul li.op2 a{
	background-color: #9783c4;
}
.opencampas .category-menu ul li.op3 a{
	background-color: #8bc63e;	
}
.opencampas .category-menu ul li.op4 a{
	background-color: #ff6900;		
}
.opencampas .category-menu ul li a i{
	position:absolute;
    right: 10px;
    top: 14px;
}
.bl_admissions_nav {
	padding: 60px 0;
	display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 20px;
	text-align: center;
}
.bl_admissions_nav li a {
    display: block;
    border-radius: 50px;
    color: #fff;
    padding: 15px 5px;
    position: relative;
    font-weight: 600;
    font-size: .9375rem;
}
.bl_admissions_nav li a::before,
.bl_admissions_nav li a::after {
    content: "";
    position: absolute;
    top: 50%;
    width: 2px;
    height: 9px;
    border-radius: 9999px;
    background-color: #fff;
}
.bl_admissions_nav li a::before {
    right: 20px;
    transform: translateY(-50%) rotate(45deg);
}
.bl_admissions_nav li a::after {
    right: 26px;
    transform: translateY(-50%) rotate(-45deg);
}
.bl_admissions_nav li:nth-of-type(1) a {
	background: #1b499f;
}
.bl_admissions_nav li:nth-of-type(2) a {
	background: #ff2d75;
}
.bl_admissions_nav li:nth-of-type(3) a {
	background: #ff9900;
}
.bl_admissions_nav li:nth-of-type(4) a {
	background: #09a360;
}
.eo-fullcalendar-screen-reader-text {
    overflow: visible !important;
}
@media screen and (max-width:1250px){
	.op .eo-fullcalendar .fc-view-container .fc-view table tbody .fc-widget-content .fc-day-grid-container .fc-day-grid .fc-row .fc-content-skeleton table tbody td .fc-day-grid-event {
		text-align: left;
	}
}
@media screen and (max-width:767px){
	.op .calendar .calendar-list{
		text-align:unset;
	}
	.op .calendar .calendar-list li{
		width:48%;
		margin-bottom: 5px;
		font-size: 8.9px;
	}
	.op .eo-fullcalendar .fc-toolbar h2{
    	margin-left: 0px;
	}
	.fc-ltr .fc-basic-view .fc-day-number {
    	padding: 3px 6px 3px !important;
	}
	.bl_admissions_nav {
    	padding: 30px 0;
    	gap: 8px;
	}
    .bl_admissions_nav li a {
        border-radius: 6px;
        display: flex;
        flex-direction: column;
        justify-content: center;
        align-items: center;
        font-size: .75rem;
        height: 100%;
        padding: 8px 3px;
    }
    .bl_admissions_nav li a::before,
    .bl_admissions_nav li a::after {
        height: 6px;
    }
    .bl_admissions_nav li a::before {
        right: 8px;
    }
    .bl_admissions_nav li a::after {
        right: 12px;
    }

	.fc-toolbar .fc-right {
    	float: right !important;
	}
	.fc .fc-toolbar>*>* {
    	float: left !important;
		margin-right: 0 !important;
	}
	.fc-icon {
    	font-size: 1.5em !important;
	}
	.fc-toolbar .fc-left {
    	left: 0;
    	transform: none;
	}
	.op .eo-fullcalendar .fc-toolbar {
    	padding: 0 0 10px;
	}
	.op .eo-fullcalendar .fc-toolbar h2 {
    	font-size: 1.25rem;
		margin: 10px 0 0;
	}
	.fc-prev-button, .fc-next-button {
    	height: 40px !important;
    	width: 40px;
	}
	.fc-today-button {
    	height: 40px !important;
	}
	.fc-ltr .fc-basic-view .fc-day-number {
    	padding: 3px !important;
		font-size: 1rem;
	}
	.fc-day-grid-event .fc-time {
    	display: none !important;
	}
	.fc-content .fc-title {
    	font-weight: bold;
    	font-size: 0.5625rem;
    	line-height: 1.2;
    	display: inline-block;
	}
	.op .eo-fullcalendar .fc-view-container .fc-view table tbody .fc-widget-content .fc-day-grid-container .fc-day-grid .fc-row .fc-content-skeleton table tbody td .fc-day-grid-event {
    	padding: 3px 2px 1px;
	}
}

/*===================================
      オープンキャンパス・ミニ説明会
===================================*/
.program {
	background: linear-gradient(to bottom, #fbdee5 45%,#d3f2f7 95%);
    position: relative;
	z-index: 0;
}
.program:after {
	content: '';
    height: 100%;
    background-image: linear-gradient( 0deg, transparent 10px, #fff 11px), linear-gradient( 90deg, transparent 10px, #fff 11px);
    background-size: 11px 11px;
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    z-index: -2;
}

.program .deco-3 {
	position: absolute;
	right: -17%;
	top: 15%;
	animation:6s linear infinite rotation;
	z-index: -1;
}
.program .deco-4 {
	position: absolute;
	left:-15%;
	bottom: 40%;
	animation:3s linear infinite fuwa;
	z-index: -1;
}
.program .deco-5 {
	position: absolute;
	left: -12%;
	top: -100px;
	z-index: -1;
}
.program .deco-6 {
	position: absolute;
	right: -18%;
	bottom: -127px;
	z-index: -1;
}
@keyframes rotation{
  0%{ transform:rotate(0);}
  100%{ transform:rotate(360deg); }
}
@keyframes fuwa {
 	0% { transform: translateY(0) }
	25% { transform: translateY(-8px) }
	50% { transform: translateY(-16px) }
	75% { transform: translateY(-8px) }
 	100% { transform: translateY(0) }
}
.el_admissions_ttl {
	text-align: center;
	margin: 0 0 50px;
}
.el_admissions_ttl .hp_ja {
	display: block;
	font-size: 2rem;
	font-weight: 600;
}
.el_admissions_ttl .hp_en {
	display: block;
    font-family: "Barlow", sans-serif;
    font-size: 1.25rem;
    font-weight: 200;
    color: #1147b5;
    line-height: 1;
    margin: 0 0 5px;
}

.single-opencampus .opencampas .op-content .ratio li:nth-child(1):before,
.single-opencampus .opencampas .op-content .ratio li,
.post-type-archive-opencampus .opencampas .op-content .ratio li:nth-child(1):before,
.post-type-archive-opencampus .opencampas .op-content .ratio li {
	border-radius: 0;
}
.single-opencampus .opencampas .op-content .ratio li .box,
.post-type-archive-opencampus .opencampas .op-content .ratio li .box{
	border: 2px solid #1b499f;
	border-radius: 0;
	padding: 20px;
}
.single-opencampus .opencampas .op-content .ratio li:nth-child(1) .box,
.post-type-archive-opencampus .opencampas .op-content .ratio li:nth-child(1) .inner {
	border-radius: 0;
}
.bl_op_exp {
	display: grid;
	grid-template-columns: repeat(2, 1fr);
	gap: 20px;
	margin: 0 0 20px;
}
.bl_op_exp_item {
	padding: 45px 30px 25px;
    border-radius: 15px;
    background: #f1f6ff;
    position: relative;
}
.bl_op_exp_box {
	display: grid;
	grid-template-columns: 60% 1fr;
	gap: 20px;
	align-items: center;
}
.bl_op_exp h3 {
	text-align: center;
	margin: 0 0 20px;
	font-size: 1.25rem;
	font-weight: 600;
	position: absolute;
    top: -14px;
    width: 100%;
    left: 0;
}
.bl_op_exp h3 span {
	padding: 4px 15px 3px 15px;
    background: #1b499f;
    color: #fff;
    border-radius: 20px;
    line-height: 1;
    display: inline-block;
    max-width: 260px;
    width: 100%;
}
.bl_op_exp_item h4 {
	margin: 0 0 3px;
}
.bl_op_exp_txt {
	font-size: .9375rem;
}
.bl_op_exp_txt .hp_time {
	margin: 0 0 5px;
}
.bl_op_exp_txt .hp_time h4,
.bl_op_exp_txt .hp_time p {
	display: inline-block;
}
.bl_op_exp_txt .hp_time p {
	margin: 0 0 0 6px;
}
.bl_op_exp_txt ul li span {
	font-size: .875rem;
	color: red;
	display: inline-block;
	margin: 3px 0 0;
}
.opencampas .op-content .ratio li {
    width: 80%;
    min-width: 280px;
    margin: 0 auto 50px;
    text-align: center;
    border-radius: 10px;
    display: block;
}
.opencampas .op-content .ratio li .box {
    padding: 30px 10px;
    background: #fff;
    transition: .5s;
}
.opencampas .op-content .ratio li:nth-child(1) .inner {
    transition: .5s;
}
.opencampas .op-content .ratio li .box .date {
    font-family: "Barlow", sans-serif;
    font-size: 2.25rem;
    letter-spacing: 0.06em;
    font-weight: 600;
}
.oc-date-area p {
	display: inline-block;
	vertical-align: middle;
}
.opencampas .op-content .ratio li .box .week {
    font-family: "Barlow", sans-serif;
    font-size: 1rem;
    letter-spacing: .1em;
    font-weight: bold;
}

.opencampas .op-content .ratio li .box .time {
    letter-spacing: 0em;
    font-weight: bold;
}
.opencampas .op-content .ratio li:nth-child(1):before {
    content: '';
    position: absolute;
    top: 0;
    right: 0;
    width: 80px;
    height: 80px;
    background-image: linear-gradient(-135deg, #ff1e60 57px, transparent 0);
    z-index: 1;
    border-radius: 0 8px 0 0;
    transition: .5s;
}

.opencampas .op-content .ratio li:nth-child(1):after {
    content: 'NEXT';
    position: absolute;
    top: 16px;
    right: 4px;
    transform: rotate(45deg);
    z-index: 2;
    color: #fff;
    letter-spacing: .05em;
    transition: .5s;
}

.opencampas .bnr-content .ratio li {
    width: 48%;
    margin-right: 4%;
}

.opencampas .bnr-content .ratio li:last-child {
    margin-right: 0;
}

.admissions .bnr-content h4 span {
    background: #f5eaea8c;
}

.opencampas .bnr-content .ratio li a {
    display: block;
    box-shadow: 10px 10px 0 rgb(0 0 0 / 10%);
}

.opencampas .bnr-content .ratio li img {
    width: 100%;
    transition: .5s;
}
.opencampas .op-content .ratio li .box .inner {
	display: grid;
	 grid-template-columns: 60% 1fr;
	gap : 20px;
	align-items: center;
}
.opencampas .op-content .ratio li:nth-child(1):before {
    border-radius: 0;
}
.opencampas .op-content ul.ratio li article.cate-opshin .time .noon .ten,
.opencampas .op-content ul.ratio li article.cate-opju .time .noon .ten,
.opencampas .op-content ul.ratio li article.cate-op-noon .time .noon .ten {
    display: none;
}
.opencampas .op-content .ratio li span.cate-op-noon {
    background-color: #1b499f;
}
.opencampas .op-content .ratio li span.cate-opshin {
    background-color: #ff9db7;
}
.bl_oc_thumbnail img {
    width: 100%;
    max-width: 600px;
    aspect-ratio: 600 / 330;
    object-fit: cover;
}
.op_flex {
    display: flex;
    justify-content: space-between;
    flex-wrap: wrap;
}
.opencampas li .inner .op_flex {
    align-items: center;
    justify-content: center;
    margin: 0 auto;
    padding: 1.5% 0;
}
.opencampas li .inner .op_flex p {
    margin: 0 1%;
}
.op_content {
    padding: 15px 3% 30px;
}
.op_content .op_flex div {
    width: 47%;
    text-align: left;
}
.op_course_ttl {
    font-size: 1.5rem;
    letter-spacing: .1em;
    padding: 0 0 5px;
    color: #00b3cd;
    border-bottom: solid 2px #00b3cd;
}
.op_course2 .op_course_ttl {
    color: #eb6d8e;
    border-bottom: solid 2px #eb6d8e;
}
.op_course_hl {
    font-size: 1.1rem;
    margin: 10px 0;
}
.op_course_txt {
    font-weight: normal;
}
.opencampas {
    overflow: hidden;
}
.op_cta {
    display: none;
}
.cate-miniop .op_course_ttl {
    display: none;
}
.opencampas .op-content .ratio li .hogosha .op_course_ttl {
    display: none;
}
.op_content{
    display:none;
}
.op_content.active{
    display:block;
}
.label.eve{
    color:#ff9800;
}
.opencampas .op-content .ratio{
    display:flex;
    flex-wrap:wrap;
    gap:30px;
}
.opencampas .op-content .ratio li{
    width:calc(50% - 10px);
}
.opencampas .op-content .ratio li .box{
    border:2px solid #1147b5;
    border-radius:15px;
overflow: visible;
    background:#fff;
}
.oc-date-area{
    text-align: left;
    padding: 0 0 10px;
}
.oc-time-area{
    padding:10px 0;
	font-size: .875rem;
}
.oc-time-row{
    display:flex;
    align-items:center;
    gap:8px;
    margin-bottom:3px;
}
.oc-time-row:last-child{
    margin-bottom:0;
}
.label.am{
    color:#1147b5;
}
.label.pm{
    color:#ff2d75;
}
.op_cta{
    padding:20px 0 0;
	display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 10px;
}
.op_check{
    display:block;
    width:100%;
    border:2px solid #1147b5;
    border-radius:10px;
    text-align:center;
    padding:14px;
    color:#1147b5;
    font-weight:700;
}
.op_button{
    width:100%;
}
.op_button a{
    display:block;
    background:#ff2d75;
    color:#fff !important;
    text-align:center;
    padding:16px;
    border-radius:10px;
    font-weight:700;
}
.opencampas .op-content .ratio{
    display: flex;
    flex-wrap: wrap;
    gap: 30px;
}
.opencampas .op-content .ratio li{
    width: calc(50% - 15px);
    margin: 0;
}
.oc-lead{
    text-align:center;
    font-size:1.25rem;
    line-height:1.8;
    margin:30px 0 50px;
    font-weight:700;
    color:#333;
}
.op_check{
    cursor: pointer;
}
.opencampas .op-content .ratio li{
    border-radius: 24px;
    overflow: hidden;
}
.opencampas .op-content .ratio li article.box {
    border: 2px solid #1147b5;
    border-radius:15px !important;
    overflow: hidden !important;
    background: #fff;
}
.opencampas .op-content .ratio li:nth-child(1):before,
.opencampas .op-content .ratio li:nth-child(1):after {
    transition: none;
}
.opencampas .op-content .ratio li:nth-child(1):hover:before {
    top: 0;
    right: 0;
}
.opencampas .op-content .ratio li:nth-child(1):hover:after {
    top: 16px;
    right: 4px;
}
.opencampas .op-content .ratio {
    display: flex;
    flex-wrap: wrap;
    gap: 20px;
    align-items: flex-start; 
}

.opencampas .op-content .ratio li {
    width: calc(50% - 10px);
    margin: 0;
    display: block; 
}
.opencampas .op-content .ratio li article.box {
    width: 100%;
    height: auto !important;
    display: flex;
    flex-direction: column;
}
.opencampas .op-content .ratio li .op_wrap {
    margin-top: auto;
}
.bl_program_cont {
	display: grid;
	grid-template-columns: repeat(3, 1fr);
	gap: 30px;
}
.program-renew {
    position: relative;
    z-index: 0;
}
.program-renew .wrap {
    max-width: 1100px;
    position: relative;
    z-index: 1;
}
.program-renew .program-card {
    border-radius: 22px;
    padding: 24px;
    background: #fff;
    position: relative;
    z-index: 2;
}
.program-renew .program-title-row {
    display: flex;
    align-items: center;
    gap: 20px;
    padding-bottom: 14px;
    margin-bottom: 28px;
    border-bottom: 4px dotted #123ba5;
}
.program-renew .program-num {
	width: 45px;
    height: 45px;
    border-radius: 50%;
    background: #123ba5;
    color: #fff;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 1.5rem;
    font-weight: 700;
    line-height: 45px;
    flex-shrink: 0;
}
.program-renew h3 {
    margin: 0;
    color: #123ba5;
    font-size: 1.5rem;
    font-weight: 700;
    letter-spacing: .08em;
}
.program-renew p {
    margin: 0;
    color: #222;
    font-size: 1rem;
    line-height: 1.7;
    font-weight: 600;
    text-align: left;
}
.program-renew .program-img {
    width: 60%;
    margin: 20px auto 0;
}
.program-renew .program-img img {
    width: 100%;
    display: block;
}
.program-renew .deco-1,
.program-renew .deco-2,
.program-renew .deco-3,
.program-renew .deco-4,
.program-renew .deco-5,
.program-renew .deco-6 {
    z-index: 0;
}
body.is-scroll-lock {
    position: fixed;
    left: 0;
    width: 100%;
}
.oc-card-modal-overlay {
    position: fixed;
    inset: 0;
    background: rgba(0,0,0,.55);
    z-index: 999998;
    opacity: 0;
    transition: opacity .25s ease;
}
.oc-card-modal-overlay.is-show {
    opacity: 1;
}
.oc-card-modal {
    position: fixed;
    top: 50%;
    left: 50%;
    width: 92vw;
    max-width: 600px;
    min-height: 300px;
    max-height: 86vh;
    overflow: hidden;
    transform: translate(-50%, -46%) scale(.96);
    z-index: 999999;
    opacity: 0;
    transition: opacity .25s ease, transform .25s ease;
    background: #fff;
    border: 3px solid #1147b5;
    border-radius: 18px !important;
    box-shadow: 0 10px 40px rgba(0,0,0,.35);
    display: flex;
    flex-direction: column;
}
.oc-card-modal.is-show {
    opacity: 1;
    transform: translate(-50%, -50%) scale(1);
}
.oc-card-modal-close {
    position: fixed;
    top: 5px;
    right: 5px;
    width: 36px;
    height: 36px;
    border: none;
    border-radius: 50%;
    background: #ffffffba;
    color: #333;
    font-size: 30px;
    line-height: 1;
    z-index: 1000000;
    box-shadow: 0 3px 10px rgba(0,0,0,.25);
    cursor: pointer;
}
.oc-card-modal article.box {
    width: 100% !important;
    min-height: 0 !important;
    height: auto !important;
    overflow-y: auto !important;
}
.oc-card-modal .oc-date-area .event-title {
    font-size: 1.5rem;
	display: block;
}
.oc-card-modal .oc-time-row {
    display: flex;
    justify-content: center;
    align-items: center;
    text-align: center;
}
.oc-card-modal .oc-time-row .time {
    font-size: 1.5rem;
}
.oc-card-modal .op_wrap {
    margin-top: 0 !important;
}
.oc-card-modal .op_cta {
	display: block;
    padding: 3px 14px 0;
}
.oc-card-modal .op_button {
    width: 100%;
}
.oc-card-modal .op_content {
    display: block !important;
    padding: 14px 16px 24px !important;
}
.oc-card-modal .op_flex {
    display: block !important;
}
.oc-card-modal .op_content .op_flex div {
    width: 100% !important;
    margin-bottom: 18px !important;
}
.oc-card-modal .oc-date-area {
    padding: 15px 10px 0;
	text-align: center;
	margin: 0;
}
.oc-card-modal .oc-date-area .date {
    font-size: 2.8rem;
	line-height: 1;
}
.oc-card-modal .oc-date-area .week {
	font-size: 1.2rem;
}
.opencampas .op-content .ratio li .label.at {
    color: #d02d22 !important;
}
.opencampas .op-content .ratio li .op_course3 .op_course_ttl {
    color: #d02d22 !important;
    border-bottom-color: #d02d22 !important;
}
.oc-card-modal .label.at {
    color: #d02d22 !important;
}
.oc-card-modal .op_course3 .op_course_ttl {
    color: #d02d22 !important;
    border-bottom-color: #d02d22 !important;
}
.opencampas .op-content .ratio li article.cate-miniop .oc-time-row .time,
.oc-card-modal article.cate-miniop .oc-time-row .time {
    margin-left: 0;
    text-align: center;
}
.opencampas .op-content .ratio li article.course-type .oc-time-row {
    display: grid;
    grid-template-columns: 90px auto;
    align-items: center;
    gap: 12px;
    text-align: left;
}
.opencampas .op-content .ratio li article.course-type .oc-time-row .label {
    display: block;
    text-align: right;
    white-space: nowrap;
}
.opencampas .op-content .ratio li article.course-type .oc-time-row .time {
    display: block;
    text-align: left;
    white-space: nowrap;
    margin-left: 0;
}
@media screen and (min-width: 768px) {
    .opencampas .op-content .ratio li article.box:not(.course-type) .oc-time-row {
        display: flex;
        align-items: center;
        text-align: center;
    }
}
@media screen and (max-width: 1279px) {
	.bl_op_exp_box {
    	grid-template-columns: 50% 1fr;
	}
	.bl_op_exp_item {
    	padding: 35px 20px 20px;
	}
	.bl_op_exp_txt {
    	font-size: .875rem;
	}
}
@media screen and (max-width: 1023px) {
	.bl_op_exp_box {
    	grid-template-columns:1fr;
	}
	.bl_op_exp_txt {
    	font-size: .9375rem;
	}
	.opencampas .op-content .ratio li .box .inner {
    	grid-template-columns: 1fr;
		gap: 10px;
	}
	.opencampas .op-content .ratio li .box .date {
    	line-height: 1;
	}
	.oc-date-area {
    	padding: 0;
	}
	.op_cta {
    	padding: 5px 0 0;
	}
	.op_button a {
    	padding: 16px 10px;
    	font-size: .875rem;
	}
	.op_check {
    	padding: 15px 10px 12px;
    	font-size: .875rem;
	}
}
@media screen and (max-width: 767px) {
	.el_admissions_ttl {
    	margin: 0 0 30px;
	}
	.el_admissions_ttl .hp_ja {
    	font-size: 1.25rem;
	}
	.opencampas h3.title {
		margin: 0 0 20px;
    }
    .admissions h4 span {
        font-size: 1.25rem;
    }
    .opencampas .ratio {
        margin: 10px 0 0;
    }
    .opencampas .bnr-content .ratio li {
        width: 100%;
        margin-right: 0
    }
    .opencampas .bnr-content .ratio li:last-child {
        margin: 10px 0 0;
    }
	.opencampas .bnr-content .ratio li a {
		box-shadow: none;	
	}
	.opencampas .op-content .ratio li {
        width: 100%;
        margin: 0 0 30px;
    }
    .op_content {
        padding: 10px 3% 0;
    }
    .op_course_hl {
        font-size: 1rem;
        margin: 7px 0;
    }
    .op_course_txt {
        font-size: .78rem;
    }
    .op_content .op_flex div {
        width: 100%;
        margin: 0 0 20px;
    }
    .opencampas li .inner .op_flex {
        padding: 15px 0;
    }
    #menu {
        display: none;
    }
    .op_check {
        cursor: pointer;
        color: #1b499f;
        font-size: 12px;
        width: 50%;
        line-height: 2.5;
    }
    .op_cta {
        display: flex;
        text-align: center;
        align-items: center;
        justify-content: space-between;
    }
    .op_button {
        display: block;
        width: 50%;
    }
    .op_button a {
        display: block;
        font-size: 12px;
        color: red;
        line-height: 2.5;
    }
    .opencampas .op-content .ratio li .box .time_wrap {
        width: 40%;
    }
    .opencampas .op-content .ratio li:nth-child(1) .box .time {
        font-size: 16px;
        line-height: 25px;
    }
    .opencampas .op-content .ratio li .box .inner {
        padding: 3px 5px;
    }
    .opencampas li .inner .op_flex p {
        margin: 0 .5%;
    }
    .opencampas .op-content .ratio li .box .time {
        font-size: 16px;
        line-height: 25px;
    }
	.oc-lead{
        font-size: .9375rem;
        margin: 0 !important;
        padding: 0 0 20px;
    }
    .opencampas .op-content .ratio li {
        width: 100%;
    }
    .opencampas .op-content .ratio li{
        width: 100%;
    }
	.opencampas .op-content .ratio li{
    	width:100%;
	}
    .opencampas .op-content .ratio li article.box {
        min-height: 220px !important;
        height: auto !important;
        display: flex;
        flex-direction: column;
    }
	.opencampas .op-content .ratio li .op_wrap {
        margin-top: auto;
    }
    .program-renew .program-card {
        display: block;
        padding: 28px 22px;
        border-radius: 18px;
    }
	.bl_program_cont {
    	grid-template-columns: repeat(1, 1fr);
    	gap: 15px;
	}
    .program-renew .program-text {
        width: 100%;
    }
    .program-renew .program-title-row {
        gap: 14px;
        margin-bottom: 20px;
    }
    .program-renew .program-num {
        width: 30px;
        height: 30px;
        font-size: 1.125rem;
    }
    .program-renew h3 {
        font-size: 1.25rem;
    }
    .program-renew p {
        font-size: .95rem;
        line-height: 1.7;
        margin-bottom: 24px;
    }
    .program-renew .program-img {
        width: 80%;
    }
    .program-renew .deco-1,
    .program-renew .deco-2,
    .program-renew .deco-3,
    .program-renew .deco-4,
    .program-renew .deco-5,
    .program-renew .deco-6 {
        display: none;
    }
    .program-renew .s-title {
        margin-bottom: 24px;
        text-align: center;
    }
	    .program-renew .program-card {
        width: calc(100% - 30px);
        margin-left: auto;
        margin-right: auto;
    }
    .opencampas .op-content .ratio {
        display: flex;
        flex-wrap: wrap;
        gap: 14px;
    }
    .opencampas .op-content .ratio li {
        width: calc(50% - 7px);
        min-width: 0;
        margin: 0;
    }
    .opencampas .op-content .ratio li article.box {
        border-radius: 16px !important;
    }
    .oc-date-area {
        padding: 5px;
		margin-top: 10px;
    }
    .oc-time-area {
        padding: 10px 10px;
    }
    .oc-time-row {
        display: block;
        margin-bottom: 10px;
        text-align: center;
    }
    .oc-time-row .label {
        display: block;
        font-size: 0.75rem;
        margin-bottom: 2px;
    }
    .opencampas .op-content .ratio li .box .time {
        display: block;
        font-size: 0.85rem;
        line-height: 1.4;
    }
    .op_cta {
        padding: 6px;
    }
    .op_check,
    .op_button a {
        font-size: 0.8rem;
        padding: 1px;
        border-radius: 8px;
		margin-bottom: 5px;
    }
    .oc-time-row {
        display: flex;
        align-items: center;
        justify-content: center;
        margin-bottom: 3px;
        text-align: center;
        flex-wrap: nowrap;
    }
    .oc-time-row .label {
        display: inline-flex;
        align-items: center;
        font-size: 0.7rem;
        margin-bottom: 0;
        white-space: nowrap;
    }
    .opencampas .op-content .ratio li .box .time {
        display: inline-block;
        font-size: 0.72rem;
        line-height: 1.2;
        white-space: nowrap;
    }
    .oc-time-row i {
        margin-right: 2px;
    }
	.opencampas .op-content .ratio li .box .time,
    .opencampas .op-content .ratio li:nth-child(1) .box .time {
        font-size: 0.68rem !important;
        line-height: 1.2 !important;
        margin-left: 4px;
    }
    .oc-time-row .label {
        font-size: 0.68rem !important;
        line-height: 1.2 !important;
    }
    .oc-time-row {
        gap: 3px;
    }
    .admissions .opencampas .op-content .ratio li:nth-child(1)::before {
        width: 52px;
        height: 52px;
        background-image: linear-gradient(-135deg, #ff1e60 37px, transparent 0);
        border-radius: 0 16px 0 0;
    }
    .admissions .opencampas .op-content .ratio li:nth-child(1)::after {
        top: 8px;
        right: 2px;
        font-size: 0.6rem;
        letter-spacing: 0;
    }
	.bl_op_exp h3 span {
    	width: 90%;
    	font-size: .75rem;
	}
	.bl_op_exp {
    	gap: 10px;
    	margin: 0 0 10px;
	}
	.bl_op_exp_item {
        padding: 24px 12px 10px;
    }
	.bl_op_exp_box {
    	gap: 8px;
	}
	.bl_op_exp_txt {
        font-size: .875rem;
    }
	.bl_op_exp_txt .hp_time {
    	margin: 0;
	}
	.oc-card-modal {
        max-height: 70vh !important;
    }
    .oc-card-modal .op_course_ttl {
        font-size: 1.2rem;
    }
    .oc-card-modal .op_course_hl {
        font-size: 1rem;
    }
    .oc-card-modal .op_course_txt {
        font-size: .85rem;
        line-height: 1.7;
    }
    .oc-card-modal .ctgr,
    .oc-card-modal span.ctgr {
        width: 120px !important;
        padding: 8px 30px !important;
        font-size: 13px !important;
    }
	.bl_oc_thumbnail {
		display: none;
	}
	.oc-card-modal.is-show .bl_oc_thumbnail {
		display: block;
	}
	.bl_oc_thumbnail img {
		display: block;
		margin: 0 auto;
		width: 100%;
	}
	.cate-miniop .op_content_gakka {
		display: none !important;
	}
	.oc-time-row {
        justify-content: flex-start;
        text-align: left;
    }
    .oc-time-row .label {
        text-align: left;
    }
    .opencampas .op-content .ratio li .box .time {
        text-align: left;
    }
    .opencampas .op-content .ratio li .op_wrap {
        margin-top: 6px;
    }
	.opencampas .op-content .ratio {
        width: 100%;
        margin: 10px auto 0;
        display: flex;
        flex-wrap: wrap;
        gap: 14px;
        justify-content: center;
        box-sizing: border-box;
    }
    .opencampas .op-content .ratio li {
        width: calc((100% - 14px) / 2);
        min-width: 0;
        margin: 0;
        box-sizing: border-box;
    }
    .opencampas .op-content .ratio li article.box {
        width: 100%;
        box-sizing: border-box;
    }
	.opencampas .oc-time-row .label i {
        display: none;
    }
    .oc-card-modal .oc-time-row .label i {
        display: none;
    }
    .opencampas .op-content .ratio li article.course-type .oc-time-row {
        grid-template-columns: 50px auto;
        gap: 5px;
    }
    .opencampas .op_check {
        width: 82%;
        margin: 0 auto 8px;
        padding: 3px 2px;
        font-size: 0.7rem;
        line-height: 1.5;
        border-radius: 7px;
    }
    .opencampas .op_button {
        width: 82%;
        margin: 0 auto;
    }
    .opencampas .op_button a {
        padding: 4px 2px;
        font-size: 0.7rem;
        line-height: 1.5;
        border-radius: 7px;
    }
    .opencampas .op-content > ul.ratio {
        display: flex;
        flex-direction: column;
        flex-wrap: nowrap;
        gap: 6px !important;
        margin-top: 10px !important;
    }
    .opencampas .op-content > ul.ratio > li {
        display: block;
        width: 100% !important;
        min-width: 0 !important;
        min-height: 0 !important;
        height: auto !important;
        margin: 0 !important;
        padding: 0 !important;
        border-radius: 8px !important;
        opacity: 1 !important;
        visibility: visible !important;
        transform: none !important;
        animation: none !important;
    }
    .opencampas .op-content > ul.ratio > li:first-child::before,
    .opencampas .op-content > ul.ratio > li:first-child::after {
        display: none !important;
        content: none !important;
    }
    .opencampas .op-content > ul.ratio > li > article.box {
        position: relative !important;
        display: grid !important;
        grid-template-columns: minmax(0, 1fr) 116px !important;
        align-items: stretch;
        width: 100% !important;
        min-height: 62px !important;
        height: auto !important;
        box-sizing: border-box !important;
        border: 1.5px solid transparent !important;
        border-radius: 8px !important;
        overflow: hidden !important;
        background: #fff;
        box-shadow: 0 2px 5px rgba(0, 0, 0, 0.06) !important;
    }
    .opencampas .op-content > ul.ratio > li > article.box::after {
        content: "" !important;
        display: block !important;
        position: absolute !important;
        inset: 0 !important;
        z-index: 20 !important;
        box-sizing: border-box !important;
        border: 1.5px solid #1147b5 !important;
        border-radius: 8px !important;
        pointer-events: none !important;
    }
	.opencampas .op-content > ul.ratio > li > article.box {
        padding: 10px 12px !important;
		align-items: center;
    }
    .opencampas .op-content > ul.ratio > li .inner.oc-card {
        display: block !important;
    }
	.opencampas .bl_oc_date {
		display: grid;
		grid-template-columns: 80px 1fr;
	}
    .opencampas .op-content > ul.ratio > li .oc-date-area {
        display: flex;
        flex-direction: column;
        justify-content: center;
        min-width: 0;
        margin: 0 !important;
        padding: 0!important;
        border-right: 1px dashed #ccd5e6;
    }
    .opencampas .op-content > ul.ratio > li .oc-date-area .date,
    .opencampas .op-content > ul.ratio > li .box .date,
    .opencampas .op-content > ul.ratio > li:first-child .box .date {
        margin: 0 !important;
        font-size: 1.25rem ;
        line-height: 1 !important;
        letter-spacing: 0 !important;
        font-weight: 800;
        white-space: nowrap;
    }
    .opencampas .op-content > ul.ratio > li .oc-date-area .week,
    .opencampas .op-content > ul.ratio > li .box .week,
    .opencampas .op-content > ul.ratio > li:first-child .box .week {
        margin: 2px 0 0 !important;
        font-size: 0.625rem !important;
        line-height: 1 !important;
        letter-spacing: 0.04em !important;
        color: #ff2d75;
        white-space: nowrap;
    }
    .opencampas .op-content > ul.ratio > li .oc-time-area {
        display: flex;
        flex-direction: column;
        justify-content: center;
        min-width: 0;
        margin: 0 !important;
        padding: 0 !important;
        border-top: none !important;
        border-bottom: none !important;
    }
    .opencampas .op-content > ul.ratio > li .oc-time-row,
    .opencampas .op-content > ul.ratio > li article.course-type .oc-time-row {
        display: grid !important;
        grid-template-columns: 48px minmax(0, 1fr) !important;
        align-items: center;
        justify-content: stretch !important;
        gap: 2px !important;
        width: 100%;
        padding: 0 0 0 12px;
        line-height: 1 !important;
        text-align: left !important;
    }
    .opencampas .op-content > ul.ratio > li .oc-time-row:last-child {
        margin-bottom: 0 !important;
    }
    .opencampas .op-content > ul.ratio > li .oc-time-row .label,
    .opencampas .op-content > ul.ratio > li article.course-type .oc-time-row .label {
        display: block !important;
        min-width: 0;
        margin: 0 !important;
        padding: 0;

        font-size: 0.58rem !important;
        line-height: 1.1 !important;
        font-weight: 700;
        text-align: left !important;
        white-space: nowrap;
    }
    .opencampas .op-content > ul.ratio > li .oc-time-row .label i {
        display: none !important;
    }
    .opencampas .op-content > ul.ratio > li .oc-time-row .time,
    .opencampas .op-content > ul.ratio > li .box .time,
    .opencampas .op-content > ul.ratio > li:first-child .box .time,
    .opencampas .op-content > ul.ratio > li article.course-type .oc-time-row .time {
        display: block !important;
        min-width: 0;
        margin: 0 !important;
        padding: 0;
        font-size: 0.6875rem !important;
        line-height: 1.1 !important;
        letter-spacing: 0 !important;
        font-weight: 700;
        text-align: left !important;
        white-space: nowrap;
    }
    .opencampas .op-content > ul.ratio > li .op_wrap {
        display: block;
        min-width: 0;
        height: 100%;
        margin: 0 !important;
        padding: 0 0 0 12px;
        border-left: 1px solid #e0e6f0;
        border-radius: 0 7px 7px 0 !important;
        overflow: hidden !important;
    }
    .opencampas .op-content > ul.ratio > li .op_cta {
        display: flex !important;
        flex-direction: row !important;
        align-items: center !important;
        justify-content: center !important;
        gap: 4px !important;
        width: 100%;
        margin: 0;
        padding: 0 !important;
    }
    .opencampas .op-content > ul.ratio > li .op_check,
    .opencampas .op-content > ul.ratio > li .op_button {
        width: calc(50% - 2px) !important;
        min-width: 0 !important;
        height: 42px !important;
        margin: 0 !important;
    }
    .opencampas .op-content > ul.ratio > li .op_check {
        display: flex !important;
        align-items: center;
        justify-content: center;
        min-height: 42px !important;
        padding: 3px 2px !important;
        border: 1.5px solid #1147b5;
        border-radius: 5px !important;
        background: #fff;
        color: #1147b5;

        font-size: 0 !important;
        line-height: 1.15 !important;
        font-weight: 700;
        text-align: center;
        white-space: normal !important;
        cursor: pointer;
    }
    .opencampas .op-content > ul.ratio > li .op_check::after {
        content: "詳細";
        font-size: 0.72rem;
        line-height: 1;
        font-weight: 700;
    }
    .opencampas .op-content > ul.ratio > li .op_button {
        display: block !important;
        padding: 0;
    }
    .opencampas .op-content > ul.ratio > li .op_button a {
        display: flex !important;
        align-items: center;
        justify-content: center;
        width: 100% !important;
        height: 42px !important;
        min-height: 42px !important;
        margin: 0 !important;
        padding: 3px 2px !important;
        border-radius: 5px !important;
        background: #ff2d75;
        color: #fff !important;
        font-size: 0 !important;
        line-height: 1.15 !important;
        font-weight: 700;
        text-align: center;
        white-space: normal !important;
    }
    .opencampas .op-content > ul.ratio > li .op_button a::after {
        content: "申込";
        font-size: 0.72rem;
        line-height: 1;
        font-weight: 700;
    }
    .opencampas .op-content > ul.ratio > li .op_check i,
    .opencampas .op-content > ul.ratio > li .op_button a i {
        display: none !important;
    }
    .opencampas .op-content > ul.ratio > li > article.box
    > .op_wrap > .op_content {
        display: none !important;
    }
    .opencampas .op-content .oc-lead {
        margin-bottom: 20px !important;
        line-height: 1.6 !important;
    }
    .opencampas .op-content > ul.ratio > li .op_check i,
    .opencampas .op-content > ul.ratio > li .op_button a i {
        display: inline-block !important;
        flex-shrink: 0;
        margin-right: 2px;
        font-size: 0.7rem !important;
        line-height: 1;
    }
    .opencampas .op-content > ul.ratio > li .op_check i {
        color: #1147b5;
    }
    .opencampas .op-content > ul.ratio > li .op_button a i {
        color: #fff;
    }
    .opencampas .op-content > ul.ratio > li .op_check,
    .opencampas .op-content > ul.ratio > li .op_button a {
        display: flex !important;
        flex-direction: row !important;
        align-items: center !important;
        justify-content: center !important;
        white-space: nowrap !important;
    }
}
@media screen and (max-width: 320px) {
    .opencampas .bl_oc_date {
        grid-template-columns: 50px 1fr;
    }
    .opencampas .op-content > ul.ratio > li > article.box {
        grid-template-columns: minmax(0, 1fr) 104px !important;
    }
    .opencampas .op-content > ul.ratio > li .oc-date-area .date,
    .opencampas .op-content > ul.ratio > li .box .date {
        font-size: .9375rem !important;
    }
    .opencampas .op-content > ul.ratio > li .oc-time-row,
    .opencampas .op-content > ul.ratio > li article.course-type .oc-time-row {
        grid-template-columns: 40px minmax(0, 1fr) !important;
	    padding: 0 0 0 6px;
    }
	.opencampas .op-content .ratio li .box .inner {
        padding: 3px 5px 3px 0;
    }
    .opencampas .op-content > ul.ratio > li .oc-time-row .label {
        font-size: 0.53rem !important;
    }
	.opencampas .op-content > ul.ratio > li .oc-date-area .week,
	.opencampas .op-content > ul.ratio > li .box .week,
	.opencampas .op-content > ul.ratio > li:first-child .box .week {
        font-size: 0.5rem !important;
	}
    .opencampas .op-content > ul.ratio > li .op_check::after,
    .opencampas .op-content > ul.ratio > li .op_button a::after {
        font-size: 0.66rem;
    }
	.opencampas .op-content > ul.ratio > li > article.box {
        padding: 10px !important;
	}
	.opencampas .op-content > ul.ratio > li .op_wrap {
        padding: 0 0 0 10px;
	}
}
/*===================================
     　　　　　よくある質問
===================================*/
.opencampus .qa h2{
margin: 3em auto;
    max-width: 60vw;
    background-color: #1b499f;
    color: #fff;
    font-size: 1.3em;
    padding: 20px;
    margin-top: 0;	
    margin-bottom: 0;
}
.opencampus .qa .accordion {
    margin: 3em auto 0;
    max-width: 60vw;
}

.opencampus .qa .toggle {
    display: none;
}

.opencampus .qa .option {
    position: relative;
    margin-bottom: 1em;
}

.opencampus .qa .title-qa,
.opencampus .qa .content-qa {
    -webkit-backface-visibility: hidden;
    backface-visibility: hidden;
    transform: translateZ(0);
    transition: all 0.3s;
}

.opencampus .qa .title-qa {
    padding: 25px;
    background-color: #f5f5f5;
    display: block;
    color: #1b499f;
    font-size: 16px;
    display: flex;
    align-items: center;
}
.opencampus .qa .title-qa:hover{
	cursor:pointer;
}
.opencampus .qa .title-qa span {
    font-size: 30px;
    margin-right: 15px;
    font-weight: 400;
}

.opencampus .qa .title-qa::after,
.opencampus .qa .title-qa::before {
    content: "";
    position: absolute;
    right: 30px;
    top: 43px;
    width: 3px;
    height: 15px;
    background-color: #1b499f;
    transition: all 0.3s;
}

.opencampus .qa .title-qa::after {
    transform: rotate(90deg);
}

.opencampus .qa .content-qa {
    max-height: 0;
    overflow: hidden;
}

.opencampus .qa .content-qa p {
    margin: 0;
    font-size: 0.9em;
    line-height: 1.5;
    padding: 3% 5%;
    background-color: #e7efff;
    color: #252525;
    font-size: 16px;
    font-weight: 500;
    font-weight: 600;
    /* text-align: center; */
    line-height: 30px;
}
.opencampus .qa .toggle:checked+.title-qa+.content-qa {
    max-height: 500px;
    transition: all 1.5s;
}

.opencampus .qa .toggle:checked+.title-qa::before {
    transform: rotate(90deg) !important;
}
@media screen and (max-width:1023px){
	.opencampus .qa h2 {
    	max-width: 80vw;	
	}
	.opencampus .qa .accordion {
    	max-width: 80vw;
	}
	.opencampus .qa .title-qa {
    	padding: 25px 55px 25px 25px;
    	font-size: 14px;
	}
}
@media screen and (max-width:767px){
	.opencampus .qa .title-qa span {
    	font-size: 16px;
    	width: auto;
	}
    .opencampus .qa .accordion {
        max-width: 90vw;
    }
    .opencampus .qa h2 {
        max-width: 90vw;
        margin-bottom: -10%;
    }
    .opencampus .qa .title-qa {
        padding: 20px 45px 20px 10px;
}
	.opencampus .qa .title-qa::after, .opencampus .qa .title-qa::before {
    	right: 20px;
    	top: 30px;
	}
	.opencampus .qa .content-qa p {
		font-size:14px;
	}
}
@media screen and (max-width: 767px) {

  /* ===================================
     イベント種別を時間帯とは別に表示
  =================================== */

  /* 基本はオープンキャンパス */
  .opencampas .op-content > ul.ratio > li
  article.box .oc-time-area::before {
    content: "オープンキャンパス";
    display: block;
    margin: 0 0 4px 12px;
    color: #1147b5;
    font-size: 0.58rem;
    line-height: 1.2;
    font-weight: 700;
    text-align: left;
    white-space: nowrap;
  }

  /* ミニ説明会のカードだけ文言変更 */
  .opencampas .op-content > ul.ratio > li
  article.box.cate-miniop .oc-time-area::before {
    content: "ミニ説明会";
    color: #ff2d75;
  }


  /* ===================================
     通常カード
     午前・午後・夕方という時間帯ラベルは消す
  =================================== */

  .opencampas .op-content > ul.ratio > li
  article.box:not(.course-type) .oc-time-row .label.am,

  .opencampas .op-content > ul.ratio > li
  article.box:not(.course-type) .oc-time-row .label.pm,

  .opencampas .op-content > ul.ratio > li
  article.box:not(.course-type) .oc-time-row .label.eve {
    display: none !important;
  }


  /* ラベルを消した分、時間を1列で表示 */
  .opencampas .op-content > ul.ratio > li
  article.box:not(.course-type) .oc-time-row {
    grid-template-columns: 1fr !important;
  }


  /* ===================================
     コース別の日
     柔整科・鍼灸科・ATコースのラベルは残す
  =================================== */

  .opencampas .op-content > ul.ratio > li
  article.course-type .oc-time-row .label {
    display: block !important;
  }

}
/* ミニ説明会 サブタイトル */
.bl_op_exp_item.mini-op-exp {
    padding-top: 58px;
}

.bl_op_exp_item.mini-op-exp h3 span {
    position: relative;
}

.mini-op-catch {
    position: absolute;
    left: 50%;
    top: -33px;
    transform: translateX(-50%);
    display: block;
    width: max-content;
    padding: 5px 14px;
    border-radius: 20px;
    background: #ff2d75;
    color: #fff;
    font-size: .9rem;
    font-weight: 700;
    line-height: 1.2;
    letter-spacing: .03em;
}

.mini-op-catch::after {
    content: "";
    position: absolute;
    left: 50%;
    bottom: -6px;
    transform: translateX(-50%);
    border-left: 6px solid transparent;
    border-right: 6px solid transparent;
    border-top: 7px solid #ff2d75;
}

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

    .bl_op_exp_item.mini-op-exp {
        padding-top: 25px;
    }

    .mini-op-catch {
        top: -26px;
        padding: 4px 11px;
        font-size: .72rem;
    }
}
