@import url('https://fonts.googleapis.com/css2?family=Red+Hat+Display:ital,wght@0,700;1,700&display=swap');

@charset "utf-8";
:root {
  --color-gray: #EBEBE1;
  --color-purple: #724296;
  --color-lightpurple: #87519D;
  --color-darkpurple: #491176;
  --color-yellow: #FCCC2C;
  --color-lightyellow:   #FFFF00;
  /*
  background:linear-gradient(90.25deg, #16d1eb 0.24%, #19dada 99.8%);
  background:linear-gradient(125.61deg, #9a98f3 9.18%, #c692ef 89.32%);
  */
}

*,
*:before,
*:after {
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	-o-box-sizing: border-box;
	-ms-box-sizing: border-box;
	box-sizing: border-box;
}
body {
	counter-reset: item;
	font-feature-settings: "palt";
}
.mt30_pc {
	margin-top:30px !important;
}
.mt50_pc {
	margin-top:50px !important;
}
.mt80_pc {
	margin-top:80px !important;
}
.ml30_pc {
	margin-left:30px;
}
.ml_pc {
	margin-left:150px !important;
}
p {
	color: #323c64;
	font-size: clamp(0.875rem, 0.852rem + 0.11vw, 0.938rem);
}
.tac {
	text-align: center;
}
.circle1 {
	width: 759px;
	height: 759px;
	border-radius: 50%;
	background-color: #dcff00;
	position: absolute;
	top: -300px;
	left: -110px;
	z-index: -1;
}
.circle2 {
	width: 212px;
	height: 212px;
	border-radius: 50%;
	background-color: #b178ff;
	position: absolute;
	top: -274px;
	right: 100px;
	z-index: -1;
}

.circle3 {
	width: 143px;
	height: 143px;
	border-radius: 50%;
	background-color: #05b6b2;
	position: absolute;
	top: -111px;
	right: -30px;
	z-index: -1;
}
.circle4 {
	width: 758px;
	height: 758px;
	border-radius: 50%;
	background-color: #fff;
	position: absolute;
	top: -333px;
	right: -671px;
	z-index: -1;
}
.circle5 {
	width: 164px;
	height: 164px;
	border-radius: 50%;
	background-color: #df0051;
	position: absolute;
	bottom: -10px;
	right: -60px;
	z-index: 1;
}
.circle6 {
	width: 530px;
	height: 530px;
	border-radius: 50%;
	background-color: #05b6b2;
	position: absolute;
	top: -162px;
	left: -462px;
	z-index: -1;
}


/* *****************************************************************************
   申し込みCTA
***************************************************************************** */
.op-entry  {
	text-align: center;
	padding: 60px 0;
	background: #FFF;
}
.op-entry .inner {
	background: #FFF;
	border-radius: 4px;
}
.op-entry_lead {
	font-weight: 700;
	color:#595757;
	letter-spacing: 0.15em;
	font-size: 15px;
}
.lp_btn {
	width: 100%;
	max-width: 1200px;
	margin: 20px auto 20px;
	display: flex;
	justify-content: center;
}
.lp_btn a {
	width: 100%;
	max-width:800px;
	background-color: #fccc2c;
	background-image: url('/prospect/img/btn2.svg');
	background-size: 52px auto;
	background-repeat: no-repeat;
	background-position: 20% center;
	border-radius: 6px;
	padding: 40px 0 40px 40px;
	display: flex;
	justify-content: center;
	align-items: center;
	position: relative;
	font-size: 1.4rem;
	font-weight: bold;
	letter-spacing: 0.15em;
	/*pointer-events: none; 応募クローズ時に有効化*/
}
.lp_btn a:nth-of-type(2) {
	background-color: #b178ff;
	background-image: url('/prospect/img/btn1.svg');
	background-size: 70px auto;
}
.lp_btn a::after {
	content: "";
	position: absolute;
	top: calc(50% - 5px);
	right: 20px;
	width: 7px;
	height: 7px;
	border: 1px solid;
	border-color: #323c64 #323c64 transparent transparent;
	transform: rotate(45deg);
}
/* *****************************************************************************
   コンテンツメニュー
***************************************************************************** */
#content_part {
	background: rgba(237, 237, 221, 0.6);
	padding: 60px 0;
}
.include-accordion {

}
.include-accordion ul {
	display: flex;
	justify-content: space-between;
	width: 94%;
	max-width: 1200px;
	margin: 0 auto;
}
.include-accordion ul li {
	width: 16.2%;
	height: 120px;
	border-radius: 4px;
	background-color: #fff;
}
.include-accordion .accordionBtn {
	display: none;
}
.include-accordion ul li a {
	color: #323c64;
	width: 100%;
	height: 100%;
	display: flex;
	justify-content: center;
	align-items: center;
	background-image: url('/prospect/img/icon_content1.svg');
	background-position: center 20%;
	background-repeat: no-repeat;
	background-size: 26px auto; 
	padding-top: 15px;
	font-size: clamp(0.875rem, 0.83rem + 0.23vw, 1rem);
	font-weight: bold;
	position: relative;
	line-height: 1em;
}
.include-accordion ul li:nth-of-type(2) a {
	background-image: url('/prospect/img/icon_content6.svg');
}
.include-accordion ul li:nth-of-type(3) a {
	background-image: url('/prospect/img/icon_content9.svg');
}
.include-accordion ul li:nth-of-type(4) a {
	background-image: url('/prospect/img/icon_content3.svg');
}
.include-accordion ul li:nth-of-type(5) a {
	background-image: url('/prospect/img/icon_content4.svg');
}
.include-accordion ul li:nth-of-type(6) a {
	background-image: url('/prospect/img/icon_content8.svg');
}
.include-accordion ul li a::after {
	content: "";
	width: 8px;
	height: 8px;
	border: 2px solid;
	border-color: transparent transparent #87519D #87519D;
	transform: rotate(-45deg);
	position: absolute;
	left: calc(50% - 4px);
	bottom: 20px;
}
.content_part_in {
	padding: 80px 0 0;
	position: relative;
}
.content_part_in2 {
	display: flex;
	width: 1160px;
	margin: 30px auto 20px;
	position: relative;
}

/* *****************************************************************************
   アコーディオン
***************************************************************************** */
.accordion_icon,
.accordion_icon span {
  display: inline-block;
  transition: all 0.4s;
  box-sizing: border-box;
}
.accordion_icon {
  position: relative;
  width: 20px;
  height: 20px;
  margin-left: auto;
}
.accordion_icon span {
  position: absolute;
  left: 0;
  width: 100%;
  height: 2px;
  background-color: #FFF;
  border-radius: 4px;
  -webkit-border-radius: 4px;
  -ms-border-radius: 4px;
  -moz-border-radius: 4px;
  -o-border-radius: 4px;
}
.accordion_icon span:nth-of-type(1) {
  top: 10px;
  transform: rotate(0deg);
  -webkit-transform: rotate(0deg);
  -moz-transform: rotate(0deg);
  -ms-transform: rotate(0deg);
  -o-transform: rotate(0deg);
}
.accordion_icon span:nth-of-type(2) {
  top: 10px;
  transform: rotate(90deg);
  -webkit-transform: rotate(90deg);
  -moz-transform: rotate(90deg);
  -ms-transform: rotate(90deg);
  -o-transform: rotate(90deg);
}
/*＋、－切り替え*/
.accordion_icon.active span:nth-of-type(1) {
  display: none;
}
.accordion_icon.active span:nth-of-type(2) {
  top: 10px;
  transform: rotate(180deg);
  -webkit-transform: rotate(180deg);
  -moz-transform: rotate(180deg);
  -ms-transform: rotate(180deg);
  -o-transform: rotate(180deg);
}
#special .panel > dd p.study_txt {
  margin-bottom: 30px;
}
#special .lp_btn {
  width: 880px;
  margin: 60px auto 20px;
}
/*#special .special_schedule{
	background: #fbf8eb;
}
#special .special_schedule p{
	padding:3px 0 0;
	background: none;
}*/
#special .special_schedule ul {
  display: flex;
  margin-bottom: 5px;
}
#special .special_schedule li {
  width: 50%;
}
#special p.txt {
  background: #355f8f;
  padding: 5px 10px;
  color: #fff;
  margin: 20px 0 0;
  font-size: 0.9rem;
}


/* *****************************************************************************
   PC用のスタイル記述
***************************************************************************** */

#contents-area {
	z-index: auto;
	padding-top: 0 !important;
}
#opencampus-contents {
	background: #FAFAEB;
}
#opencampus-contents iframe {
	width: 100%;
	aspect-ratio: 16 / 9;
}
#opencampus-contents .inner {
	padding: 60px 0;
	width: 94%;
	max-width: 1200px;
	margin: 0 auto;
}
#opencampus-contents #oc_content .inner {
	padding: 60px 0 0;
}
#opencampus-contents .inner + .inner{
	padding: 0 0 60px;
}
#opencampus-contents .inner figure {
	width: 1200px;
	margin: 30px auto !important;
}
#opencampus-contents .inner .flexbox {
	margin: 0 auto;
	display: flex !important;
	display: -webkit-flex;
	flex-wrap: wrap;
	-webkit-flex-wrap: wrap;
	justify-content: space-between;
}
#opencampus-contents .inner .flexbox a {
	position: relative;
}
#opencampus-contents .inner .flexbox a:before {
	content: '';
	width: 8px;
	height: 8px;
	border: 0;
	border-top: solid 2px #323c64;
	border-right: solid 2px #323c64;
	transform: rotate(45deg);
	position: absolute;
	top: 0;
	right: 0;
	bottom: 0;
	margin: auto;
}
#opencampus-contents .inner .flexbox.row4 .box {
	width: 23.85%;
	margin:5px 0;
}
#opencampus-contents .inner .flexbox.row3 .box {
	width: 32%;
	margin:5px 0;
}
#opencampus-contents .inner .flexbox.row2 .box {
	width: 48%;
	margin:15px 0;
}
#opencampus-contents .inner .flexbox .box img {
	width: 100%;
}
#opencampus-contents .linkbox {
	margin-bottom: 60px !important;
}
#opencampus-contents .linkbox .box,
#opencampus-contents .linkbox .box a {
	background: #FFF !important;
}
#opencampus-contents .linkbox dl dt.title {
	font-size: 0.85rem !important;
	padding: 15px 15px 10px !important;
	background: #FFF !important;
}
#opencampus-contents .linkbox dl dt.title span {
	display: inline-block;
	background-color:#45A550;
	color: #FFF;
	font-size: 12px;
	padding: 0 10px;
	margin: 0 5px 0 0;
}
#opencampus-contents .linkbox dl dd {
	padding: 0 55px 15px 15px;
	text-align: left;
	line-height: 1.3em;
}
#opencampus-contents .inner .linkbox .box .st-contents_title {
	width: 100%;
	font-size:1rem;
	font-weight:bold;
	text-align: left;
	padding:0.8em 1.5em 0.7em;
	text-align: center;
}
#opencampus-contents .inner .linkbox .ls-fbox {
	background-color: transparent !important;
	display: flex;
	flex-direction: column;
	border:double 4px var(--color-lightpurple);
	position: relative;
}
#opencampus-contents .inner .linkbox .ls-fbox:before {
	content:"その他コンテンツ";
	margin: 15px 0;
	font-size: 1.2rem;
	color: var(--color-lightpurple);
	font-weight: 700;
}
#opencampus-contents .inner .linkbox .ls-fbox ul {
	width: 85%;
	margin: 10px auto 0;
	font-size: 0.9rem;
}
#opencampus-contents .inner .linkbox .ls-fbox ul li {
	padding: 3px 0;
}
#opencampus-contents #oc_content .linkbox {
	display: flex;
	justify-content: center;
}
#opencampus-contents #oc_content .other-cont {
	display: flex;
	justify-content: center;
	border:solid 1px var(--color-lightpurple);
	background: #FFF;
	position: relative;
	color:var(--color-lightpurple);
	margin: 0 0 80px;
}
#opencampus-contents #oc_content .other-cont:before {
	content:"その他コンテンツ";
	margin: 30px 15px 0 0;
	height:20px;
	font-weight: 700;
	font-size: 16px;
}
#opencampus-contents #oc_content .other-cont ul {
	display: flex;
}
#opencampus-contents #oc_content .other-cont ul li {
	font-size: 14px;
}
#opencampus-contents #oc_content .other-cont ul li + li {
	margin-left: 30px;
}

.w {
	width: 1200px;
	margin: 0 auto;
	padding: 60px 0 0;
}
.w +.w {
	padding: 0;
}
h2.op-section-ttl {
	text-align: center;
	font-family: "Red Hat Display", serif;
	font-optical-sizing: auto;
	font-weight: 700;
	font-style: normal;
	color: #FEE18E;
	-webkit-text-stroke: 2px #87519D;
	text-stroke: 2px #87519D;
	paint-order: stroke;
	font-size:clamp(0.938rem, -0.176rem + 5.57vw, 4rem);
	letter-spacing: 0.15em;
	line-height: 1em;
	margin:  0 auto 40px;
}
h2.op-section-ttl span {
	display: block;
	font-size: clamp(0.813rem, 0.653rem + 0.8vw, 1.25rem);
	font-weight: bold;
	font-family:"Yu Gothic", "游ゴシック", "YuGothic", "游ゴシック体", "メイリオ", Meiryo, Osaka, "ヒラギノ角ゴ Pro W3","ＭＳ Ｐゴシック", Arial, Helvetica, sans-serif;
	color: #87519D;
	-webkit-text-stroke: 0px;
	text-stroke: 0px;
	line-height: 1em;
	margin: 10px 0 0;
}
.subtitle {
	font-size: clamp(1rem, 0.409rem + 2.95vw, 2.625rem);
	font-family: "Red Hat Display", "Yu Gothic", "游ゴシック", "YuGothic", "游ゴシック体", "メイリオ", Meiryo, Osaka, "ヒラギノ角ゴ Pro W3","ＭＳ Ｐゴシック", Arial, Helvetica, sans-serif;
	font-optical-sizing: auto;
	font-weight: 700;
	color: #323c64;
	margin: 25px 0 35px;
	line-height: 1.3em;
	text-align: center
}
.subtitle::after {
	width: 30px;
	height: 2px;
	background-color: #323c64;
	content: "";
	margin: 15px auto 0;
	display: block;
}
.subhead1 {
	font-size: clamp(1rem, 0.727rem + 1.36vw, 1.75rem);
	font-weight: bold;
	margin: 40px 0 !important;
	padding: 0.5em 0;
	border-top: 1px solid #595757;
	border-bottom: 1px solid #595757;
	color: #595757;
	line-height: 1.5em;
}
.op-cont-ttl {
	text-align: center;
	position: relative;
	padding: 0 0 20px;
	margin: 0 0 30px;
}
.op-cont-ttl:before {
	content:"";
	height: 2px;
	width: 30px;
	background: #669;
	position: absolute;
	left:50%;
	transform: translateX(-50%);
	bottom: 0;
}
.op-cont-ttl h3 {
	font-size: clamp(1.375rem, 0.92rem + 2.27vw, 2.625rem);
	font-family: "Red Hat Display", serif;
	font-optical-sizing: auto;
	font-weight: 700;
	font-style: normal;
	display: inline-block;
	color:#323c64;
	line-height: 1em;
	letter-spacing: 0.08em;
}
.op-cont-ttl span{
	display: block;
	color: #669;
	line-height: 1em;
	font-size: clamp(1rem, 0.955rem + 0.23vw, 1.125rem);
	margin: 15px 0 0;
	font-weight: 700;
}
.op-cont-ttl__lead {
	text-align: left;
}
.op-cont-ttl__lead span {
	display: block;
	font-size: 80%;
}
h4 {
	text-align: left;
	color: #323c64;
	font-size: clamp(1.125rem, 0.852rem + 1.36vw, 1.875rem);
	padding-bottom: 10px;
	margin-bottom: 30px;
	border-bottom: 1px solid #c8c8c8;
}


.opencampus_mv {
	text-align: center;
	position: relative;
}
.opencampus_mv picture {
  width: 100%;
}
.opencampus_mv img {
  width:100%;
}
.opencampus_mv .scroll {
	position: absolute;
	left: calc(50% - 65px / 2);
	bottom: -20px;
	width: 65px;
	height: 62px;
	background-image: url('/prospect/img/icon_scroll.svg');
	background-repeat: no-repeat;
}
.overflow_frame {
	width: 100%;
	overflow-x: hidden;
}

/* ****************************
装飾
***************************** */

.point-circle {
  position: absolute;
  top: -20px;
  left: 10px;
  width: 90px;
  height: 90px;
}
.point-circle-in {
  display: inline-block;
  position: absolute;
  top: 50%;
  left:0;
  transform: translateY(-50%);
  width: 90px;
  height: 90px;
  border-radius:50%;
  font-size: 18px;
  line-height: 1.2em;
  font-weight: 700;
  letter-spacing: 0.05em;
  box-shadow: 0 2px 5px rgba(0, 0, 0, 0.2);
  display: flex;
  align-items: center;
  justify-content: center;
}
.point-circle-in.red {
  background: #f30;
  color: #fff;
  text-shadow: 0 2px 2px #b21;	
}
.point-circle-in.green {
  background: #45A550;
  color: #fff;
}
.point-circle-in.purple {
  background: var(--color-lightpurple);
  color: #fff;
}

.point-fukidashi {
	position: absolute;
	top: -15px;
	right: -10px;
	width: 60px;
	height: 28px;
	background:#FCCC2C;
	border-radius: 4px;
	z-index: 2;
}
.point-fukidashi-in {
	display: inline-block;
	position: absolute;
	top: 50%;
	left:0;
	transform: translateY(-50%);
	width: 60px;
	height: 28px;
	font-size: 14px;
	line-height: 1em;
	font-weight: 700;
	letter-spacing: 0.05em;
	display: flex;
	align-items: center;
	justify-content: center;
	color:var(--color-purple);
}
.point-fukidashi:after {
	content: '';
	position: absolute;
	bottom: -2px;
	right: 4px;
	z-index: -1;
	width: 15px;
	height: 15px;
	box-sizing: border-box;
	border: 2px solid;
	border-color: #FCCC2C #FCCC2C transparent transparent;
	background-color: #FCCC2C;
	rotate: 135deg;
	translate: -50%;
}
ul.circle li {
	position: relative;
	padding-left: 20px;
	text-align: left;
	font-size: 0.9rem;
}
ul.circle li::before {
	content: "";
	position: absolute;
	left: 0;
	top: 5px;
	width: 10px;
	height: 10px;
	background-color: #7ABECC;
	border-radius: 50%;
}
/* ****************************
開催日程
***************************** */
#op-schedule {
	margin: 0;
	padding: 80px 0 0;
	background: #FFF;
	/*background:linear-gradient(-45deg, #dce 8%, #dff 90%);*/
}

#op-schedule .inner {
	border-top:dashed 1px var(--color-purple);
	border-bottom:dashed 1px var(--color-purple);
}

#op-schedule .boxL {
	width: 40%;
	min-height: 190px;
	background-color: var(--color-purple);
	/*background:linear-gradient(-45deg, #95e 8%, #29c 90%);*/
	color: #fff;
	font-family:Arvo,"Yu Gothic", "游ゴシック", "YuGothic", "游ゴシック体", "メイリオ", Meiryo, Osaka, "ヒラギノ角ゴ Pro W3","ＭＳ Ｐゴシック", Arial, Helvetica, sans-serif;
	padding: 0 !important;
	margin: 0 !important;
	display: flex !important;
	justify-content: center;
	align-items: center;
	position: relative;
	border-radius: 4px;
}
#op-schedule .boxL .time_in {
	padding: 20px 0 0 !important;
	margin: 0 !important;
}
#op-schedule .boxL .time:after {
	content: '2025 OPENCAMPUS';
	width: 76%;
	height: 24px;
	position: absolute;
	top: 70px;
	left: 50%;
	transform: translateX(-50%);
	font-size: clamp(1rem, 0.864rem + 0.68vw, 1.375rem);
	font-weight: 700;
	color:#FFF;
	writing-mode: horizontal-tb !important;
	text-align: center;
	letter-spacing: 0.25em;
}
#op-schedule .boxL .time:before {
	content:"";
	border:solid 1px #FFF;
	width: 98%;
	height: 96%;
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%, -50%);
}
#op-schedule .boxL .time p {
	color: #fff;
	line-height: 1em;
	text-align: center !important;
}
#op-schedule .boxL .time .year p {
	color: #fff;
	font-size: clamp(1.125rem, 0.352rem + 3.86vw, 3.25rem);
}
#op-schedule .boxL .time .day p {
	font-size: 6.8rem;
	line-height: 1.2;
	margin: 0 !important;
}
#op-schedule .boxL .time .day p span {
	font-size: 4rem;
	margin-left: 10px;
}
#op-schedule .boxL .time .open-time p {
	font-size: 1.4rem;
	margin: 10px 0 0;
}
#op-schedule .boxR {
	width:58%;
	position: relative;
}
#op-schedule .boxR h3 {
	color: var(--color-purple);
	margin: 0 0 5px;
	text-align: left;
	padding-bottom: 5px;
}
#op-schedule .boxR dl {
	background: rgba(237, 237, 221, 0.3);
	border-radius: 4px;
	padding: 20px 30px 10px;
	margin: 0 0 20px;
}
#op-schedule .boxR dl dt {
	color: var(--color-purple);
	font-weight: 700;
	font-size: 1rem;
	text-align: left;
}
#op-schedule .boxR .pickup-contents {
	width: 100%;
}
#op-schedule .boxR .pickup-contents li {
	margin: 5px 0;
	padding: 5px 0 6px 20px; 
	position: relative;
	text-align: left;
	border-bottom:solid 1px #cbd;
}
#op-schedule .boxR .pickup-contents li:last-child {
	border-bottom:0;
}
#op-schedule .boxR .pickup-contents li:before {
	content: '';
	width: 6px;
	height: 6px;
	background:var(--color-purple);
	border-radius: 50%;
	position: absolute;
	left: 0;
	top: 50%;
	transform: translateY(-50%);;
}
#op-schedule .boxR .pickup-contents li a {
	font-size: 0.9rem;
	line-height: 1em;
	font-weight: 700;
	color: #323c64;
	text-align: left !important;
}
#op-schedule .boxR .pickup-contents li a:after,
#op-schedule .boxR .pickup-contents li a:before {
	display: none;
}

#op-schedule .boxR .annual-schedule {
	display: flex;
}
#op-schedule .boxR .annual-schedule__cont {
	width: 131px;
	background: #865DA5;
	/*background: var(--color-purple);
	background:linear-gradient(-45deg, #95e 8%, #29c 90%);*/
	padding: 12px 5px;
	font-family:Arvo,"Yu Gothic", "游ゴシック", "YuGothic", "游ゴシック体", "メイリオ", Meiryo, Osaka, "ヒラギノ角ゴ Pro W3","ＭＳ Ｐゴシック", Arial, Helvetica, sans-serif;
	position: relative;
	border-radius: 4px;
	overflow: hidden;
	box-sizing: border-box;
}
#op-schedule .boxR .annual-schedule__cont + .annual-schedule__cont {
	margin-left: 10px;
}
#op-schedule .boxR .annual-schedule__cont.off::before {
	content:"";
	position: absolute;
	background:rgba(0,0,0,0.5);
	width: 100%;
	height:100%;
	top:0;
	left:0;
	border-radius: 4px;
}
/*
#op-schedule .boxR .annual-schedule__cont.off::before {
	content:"開催終了";
	position: absolute;
	background:rgba(0,0,0,0.5);
	width: 100%;
	height:100%;
	top:0;
	left:0;
	font-weight: 700;
	font-size: 16px;
	display: flex;
	justify-content: center;
	color: #FFF;
	border-radius: 4px;
}
*/
#op-schedule .boxR .annual-schedule__cont.off::after {
	content:"開催終了";
	position: absolute;
	width: 120px;
	height:20px;
	top:17px;
	left: -34px;
	font-weight: 700;
	font-size: 12px;
	color:#FFF;
	display: flex;
	justify-content: center;
	background: #45A550;
	-webkit-transform: rotate(-45deg);
	transform: rotate(-45deg);
}

#op-schedule .boxR .annual-schedule__cont p {
	color: #FFF;
	font-weight: 600;
}
#op-schedule .boxR .annual-schedule__cont .schedule p {
	font-size: 0.8rem;
}
#op-schedule .boxR .annual-schedule__cont .schedule__cont__comment {
	min-height:20px;
	color:var(--color-yellow);
	font-size: 0.7rem;
	letter-spacing: 0.08em;
}
#op-schedule .boxR .annual-schedule__cont .day p {
	font-size: 1.8rem;
	line-height: 1.2;
	margin: 0 !important;
}
#op-schedule .boxR .annual-schedule__cont .day p span {
	font-size: 1rem;
	margin-left: 10px;
}
#op-schedule .boxR .annual-schedule__cont .open-time p{
	font-size: 0.8rem;
}


/* ****************************
SPECIAL CONTENTS
***************************** */

.special-navi {
	width: 100%;
	max-width: 900px;
	margin: 40px auto;
}
.special-navi ul {
	display: flex;
	justify-content: center;
}
.special-navi ul li {
	width: 220px;
}
.special-navi ul li + li {
	margin: 0 0 0 20px;
}
.special-navi ul li a {
	display: block;
	padding: 10px 0;
	text-align: center;
	color:#FFF; 
	border-radius: 4px;
	background: #323c64;
	position: relative;	
}
.special-navi ul li a:before {
	content: '';
	width: 6px;
	height: 6px;
	border: 0;
	border-bottom: solid 2px #FFF;
	border-right: solid 2px #FFF;
	transform: rotate(45deg);
	position: absolute;
	top: 0;
	left: 14px;
	bottom: 0;
	margin: auto;
}
.spct-img {
	width: 48%;
}
.spct-img img {
	width: 100% !important;
}
.spct-text {
	width: 48%;
}
.p-card {
	display: flex;
	justify-content: space-between;
	flex-wrap: wrap;
}
.p-card .c-card {
	margin: 0 auto 10px;
	background: #fff;
	text-align: left;
	/* width: 18%; */
	border:solid 1px var(--color-lightpurple);
	border-radius: 4px;
	position: relative;
	width: calc(100% / 3 - 30px);
}
.p-card .c-card.off {
	overflow: hidden;
}
.p-card .c-card.off:before {
	content:"";
	position: absolute;
	top:0;
	left:0;
	width:100%;
	height: 100%;
	background: rgba(0,0,0,0.4);
}
.p-card .c-card.off::after {
	content:"実施済";
	position: absolute;
	width: 120px;
	height:20px;
	top:17px;
	left: -34px;
	font-weight: 700;
	font-size: 12px;
	color:#FFF;
	display: flex;
	justify-content: center;
	background: #45A550;
	-webkit-transform: rotate(-45deg);
	transform: rotate(-45deg);
}
.p-card .c-card dt {
	font-weight: 700;
	background: var(--color-lightpurple);
	color: #FFF;
	font-size: 1rem;
	line-height: 1.3em;
	border-bottom:solid 1px var(--color-lightpurple);
	padding: 10px 20px;
	min-height:60px;
	display: flex;
	align-items: center;
	justify-content: center;
}
.p-card .c-card dd {
	padding: 12px 20px;
}
.op-cont-img__full {
	margin: 40px 0 60px;
	width: 100%;
	text-align: center;
}
.op-cont-img__half {
	margin: 40px auto 60px;
	width: 70%;
	text-align: center;
}
.op-cont-img__full img,
.op-cont-img__half img {
	width: 100% !important;
	margin: 0 auto;
}

.study {
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
}
.study li {
	width: 49%;
	margin-bottom: 20px;
	border-radius: 3px;
	background-color: #ededed;
	overflow: hidden;
	display: flex;
	flex-direction: column;
}
.study li:nth-of-type(2n) {
	margin-right: 0;
}
.study_pattern2 {
	display: block;
}
.study_pattern2 li {
	width: 100%;
	margin-bottom: 20px;
}
.study_pattern2 li ul {
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
}
.study_pattern2 li ul li {
	width: 49%;
	margin-bottom: 0;
	border-radius: 3px;
	background-color: #ededed;
	overflow: hidden;
	display: flex;
	flex-direction: column;
}

.study_midashi h4,
.study_pattern2 h4 {
	font-size: 1.1rem;
	color: #fff;
	text-align: left;
	margin-bottom: 0;
	padding-bottom: 0;
	border-bottom: none;
	line-height: 1.4;
}
.study_midashi h4 a,
.study_pattern2 h4 a {
	font-size: 1rem;
	color: #fff;
	text-align: left;
}
.study li .study_midashi {
	padding: 10px 30px;
}
.study_pattern2 li .study_midashi {
	padding: 10px 30px;
	border-radius: 3px;
	margin: 0 0 20px;
}
/*.study li.study1 .study_midashi{
	background-color: #FF9700;
}

.study li.study2 .study_midashi{
	background-color: #469EE2;
}

.study li.study3 .study_midashi{
	background-color: #FF5F6E;
}

.study li.study4 .study_midashi{
	background-color: #006742;
}

.study li.study5 .study_midashi{
	background-color: #FF641E;
}

.study li.study6 .study_midashi{
	background-color: #174191;
}

.study li.study7 .study_midashi{
	background-color: #00A98B;
}

.study li.study8 .study_midashi{
	background-color: #7C4F37;
}

.study li.study9 .study_midashi{
	background-color: #C12500;
}

.study li.study10 .study_midashi{
	background-color: #CDA02F;
}

.study li.study11 .study_midashi{
	background-color: #D33094;
}

.study li.study12 .study_midashi{
	background-color: #00AC53;
}

.study li.study13 .study_midashi{
	background-color: #5676CB;
}

.study li.study14 .study_midashi{
	background-color: #75C896;
}
*/
.study_in {
	padding: 15px 30px;
	display: flex;
	flex-direction: column;
	height: auto;
}
.trialclass {
	margin: 0 0 80px;
}
.seminar-experience {
	width:100%;
}
#spct_1,
#spct_2 {
	margin: 80px 0 0;
}
#spct_3 .flexbox .box {
	position: relative;
}
#spct_3 .flexbox {
	justify-content: center !important;
}
#spct_3 .flexbox .box:nth-child(even) {
	margin-left: 45px !important;
}
.seminar-experience dt {
	color: #FFF;
	text-align: center;
	padding: 12px 10px;
	line-height: 1em;
	font-weight: 700;
	font-size: 1rem;
	margin: 10px 0 20px;
	border-radius: 4px;
	letter-spacing: 0.08em;
}
.seminar-experience dt span {
	display: inline-block;
	font-size: 120%;
	margin-left: 15px;
}
.seminar-experience dd.seminar-experience-theme {
	text-align: left;
	line-height: 1em;
	font-weight: 700;
	font-size: 1.2rem;
	margin: 10px 0;
	letter-spacing: 0.08em;
}
.seminar-experience dd.seminar-experience-text {
	text-align: left;
}


/* ****************************
送迎バス
***************************** */
#bus_1,
#bus_2,
#bus_3 {
	margin-top:80px;
}
#bus_2 table {
	margin: 0 0 20px;
	width: 100%;
}
#bus_2 table th {
	background: var(--color-lightpurple);
	color: #FFF;
}
#bus_2 table td {
	background: #FFF;
}
#bus_2 table th,
#bus_2 table td {
	padding: 0.6em 1em;
}
#bus_3 .colorbox {
	border:solid 1px #ccc!important;
	background: #FFF!important;
	padding-top: 0 !important;
}
.bus_pnl .subtitle {
	font-size: 1.3rem;
	font-weight: bold;
	color: #323c64;
	margin: 25px 0 35px;
	line-height: 1em;
	text-align: center
}
.bus_pnl .subtitle::after {
	width: 30px;
	height: 2px;
	background-color: #323c64;
	content: "";
	margin: 15px auto 0;
	display: block;
}
.bus_pnl .accordion_icon {
  top: 38%;
  right: 0;
}
.bus_pnl .panel {
	margin: 0 0 2px;
}
.bus_pnl .panel:lasr-child dd {
	border-bottom: 1px solid #323c64 !important;
}
.bus_pnl .panel > dt {
  cursor: pointer;
  font-size: 1.3rem;
  font-weight: bold;
  text-align: left;
  padding: 20px 40px;
  line-height: 1;
  display: flex;
  align-items: center;
  position: relative;
  background: var(--color-lightpurple) !important;
  border-bottom:0;
  color: #FFF !important;
}
.bus_pnl .panel > dt:before {
	content:"ROUTE";
	white-space: nowrap;
	font-family:Arvo, sans-serif;
	font-size: 0.7rem;
	position: absolute;
	top:13px;
}
.bus_pnl .panel > dt:after {
	font-family:Arvo, sans-serif;
	font-size: 2.2rem;
	position: absolute;
	top:24px;
	left:42px;
	color:#FCD941;
	margin-right: 10px;
	width: 40px;
	text-align: center;
}
.bus_pnl.trialclass .panel > dt:before,
.bus_pnl.trialclass .panel > dt:after {
	display: none;
}
.bus_pnl .panel > dt.route-A:after {
	content:"A";
}
.bus_pnl .panel > dt.route-B:after {
	content:"B";
}
.bus_pnl .panel > dt.route-C:after {
	content:"C";
}
.bus_pnl .panel > dt.route-D:after {
	content:"D";
}
.bus_pnl .panel > dt.route-E:after {
	content:"E";
}
.bus_pnl .panel > dt.route-F:after {
	content:"F";
}
.bus_pnl .panel > dt.route-G:after {
	content:"G";
}
.bus_pnl .panel > dt.route-H:after {
	content:"H";
}
.bus_pnl .panel > dt.route-I:after {
	content:"I";
}
.bus_pnl .panel > dt.route-J:after {
	content:"J";
}
.bus_pnl .panel > dt .routeData {
	display: flex;
	align-items: center;
	margin: 0 0 0 50px;
}
.bus_pnl .panel > dt .dy {
  font-size: 2rem;
}
.bus_pnl .panel > dd {
  background-color: #fff;
  margin: 0px;
  padding: 10px 40px 20px;
  border-left: 1px solid #323c64 !important;
  border-right: 1px solid #323c64 !important;
  border-bottom: 0;
}
.bus_pnl .panel > dd p {
  text-align: left;
}
/*
.bus_pnl .panel > dt ruby {
  margin-right:0;
  white-space: nowrap;
  font-family:Arvo, sans-serif;
  text-align:center;
}
.bus_pnl .panel > dt ruby span{
  color: #FCD941;
  font-size: 2.2rem;
  display: block;
}
*/
.bus_pnl .panel ul.bus_routeAreaName{
	display: flex;
	position: relative;
	margin-left:15px;
	min-width: 400px;
}
.bus_pnl .panel ul.bus_routeAreaName::after {
	content:"コース";
	margin-left:5px;
}
.bus_pnl .panel ul.bus_routeAreaName li,
.bus_pnl .panel ul.bus_operatingDate li {
	position: relative;
}
.bus_pnl .panel ul.bus_routeAreaName li + li,
.bus_pnl .panel ul.bus_operatingDate li + li {
	margin-left:18px;
}
.bus_pnl .panel ul.bus_routeAreaName li:after,
.bus_pnl .panel ul.bus_operatingDate li:after {
	content:"?";
	position: absolute;
	right:-15px;
}
.bus_pnl .panel ul.bus_routeAreaName li:last-child:after,
.bus_pnl .panel ul.bus_operatingDate li:last-child:after {
	display: none;
}
.bus_pnl .panel ul.bus_operatingDate {
	margin-left:20px;
	display: flex;
	position: relative;
	font-size: 85%;
}
.bus_pnl .panel ul.bus_operatingDate:before {
	content:"運行日：";
	margin-right: 10px;
}
.bus_pnl .panel ul.bus_operatingDate {
	padding: 8px 25px;
	border-radius: 25px;
	background: rgba(0,0,0,0.2);
	font-size: 80%;
}
.bus_pnl .panel ul.bus_stopArea {
	display: flex;
	flex-wrap: wrap;
	position: relative;
	margin: 25px 0 0;
}
.bus_pnl .panel ul.bus_stopArea li {
	position: relative;
	width: 16%;
}
.bus_pnl .panel ul.bus_stopArea li img {
	width: 100% !important;
}
.bus_pnl .panel ul.bus_stopArea li + li {
	margin-left:40px;
}
.bus_pnl .panel ul.bus_stopArea li:after{
	content: '';
	width: 0;
	height: 0;
	border-style: solid;
	border-width: 14px 0 14px 18px;
	border-color: transparent transparent transparent #FCD941;
	position: absolute;
	top: 0;
	right: -30px;
	bottom: 0;
	margin: auto;
}
.bus_pnl .panel ul.bus_stopArea li:last-child:after{
	display: none;
}
/* ****************************
アクセス
***************************** */
#access h4 {
	font-size: clamp(1rem, 0.909rem + 0.45vw, 1.25rem);
}

/* ****************************
タイムテーブル
***************************** */
#timetable .op-cont-img__full img {
	max-width: 900px;
}





/* *****************************************************************************
   スマートフォン用のスタイル記述
***************************************************************************** */
@media print, screen and (max-width: 1024px) { 
	#opencampus-contents .inner {
		width: 92%;
		margin: 0 auto;
	}
	#op-schedule .boxR .annual-schedule__cont .day p span {
		display: block;
		margin-left: 0;
	}
}
@media print, screen and (max-width: 769px) { 
	section#special::before,
	section	#oc_content::before,
	section#timetable::before,
	section#bus::before,
	section#access::before,
	section#archive::before {
	  content: "";
	  display: block;
	  height: 60px;
	  margin-top: -60px;
	  visibility: hidden,
	}
	#opencampus-contents .inner {
		padding: 40px 0;
	}
	#opencampus-contents .inner figure {
		width: 90%;
		margin: 30px auto !important;
	}
	#opencampus-contents .inner .flexbox.row4 .box {
		width: 48.5%;
		margin:5px 0;
		padding:0 !important;
	}
	#opencampus-contents .inner .flexbox.row3 .box {
		width: 48.5%;
		margin:5px 0;
		padding: 0 !important;
	}
	#opencampus-contents .inner .flexbox.row2 .box {
		width: 100%;
		margin:15px 0;
		padding: 0 !important;
	}
	#op-schedule {
		padding: 60px 0 0;
	}
	#op-schedule .boxL {
		width: 100%;
	}
	#op-schedule .boxL .time_in {
		padding: 40px 0 0 !important;
		margin: 0 !important;
	}
	#op-schedule .boxL .time:after {
		top: 30px;
		font-size: 18px;
	}
	#op-schedule .boxL .time .day p {
		font-size: 4rem;
	}
	#op-schedule .boxL .time .day p span {
		font-size:3rem;
	}
	#op-schedule .boxL .time .open-time p{
		font-size: 1.2rem;
		margin: 10px 0 0;
	}
	#op-schedule .boxR {
		width:100%;
		margin: 5px 0 0;
	}
	#op-schedule .boxR .pickup-contents li a {
		font-size: 14px;
	}
	.op-entry  {
		padding: 30px 20px;
	}
	.op-entry_lead {
		font-weight: 700;
		color:#595757;
		letter-spacing: 0.1em;
		font-size: 14px;
	}
	.lp_btn a {
		background-image: url('/prospect/img/btn2.svg');
		background-size: 48px auto;
		background-position: 15% center;
		padding: 20px 0 20px 50px;
		font-size: 1.2rem;
		line-height: 1.2em;
		letter-spacing: 0.15em;
		text-align: left;
		/*pointer-events: none; 応募クローズ時に有効化*/
	}
	#content_part {
		padding: 20px 20px;
	}
	#op-schedule .boxR .annual-schedule {
		display: flex;
		flex-wrap: wrap;
		justify-content: center;
	}
	#op-schedule .boxR .annual-schedule__cont {
		width: 32%;
		margin: 5px 0;
	}
	#op-schedule .boxR .annual-schedule__cont + .annual-schedule__cont {
		margin-left: 10px;
	}
	
	.include-accordion {
	  padding: 0;
	  width: 100%;
	}
	.include-accordion ul {
		height: 0;
		padding: 0;
		overflow: hidden;
		transition: .5s;
		margin:0;
		display: block;
		width: 100%;
	}
	.include-accordion ul li {
	  width: 100%;
	  height: 46px;
	  margin-top:1px;
	  text-align: center;
	}
	.include-accordion ul li a {
		background-position: 27px center;
		background-size: 22px auto;
		padding: 8px 0 3px;
	}
	.include-accordion ul li a::after {
		content: none;
	}
	.include-accordion button {
	  background-color: transparent;
	  border: none !important;
	  cursor: pointer;
	  outline: none;
	  padding: 0;
	  appearance: none;
	  -webkit-appearance: none;
	  opacity: 1 !important;
	  -webkit-text-fill-color: #323c64;
	}
	.include-accordion .accordionBtn {
	  display: block;
	  color: #323c64;
	  width: 100%;
	  height: 46px;
	  display: flex;
	  justify-content: center;
	  align-items: center;
	  background-image: url('/prospect/img/icon_content_menu.svg');
	  background-position: 21px 50%;
	  background-size: auto 60%;
	  background-repeat: no-repeat;
	  background-color: #fff !important;
	  font-size: 1rem;
	  font-weight: bold;
	  position: relative;
	  border-radius: 4px;
	}
	
	.include-accordion .accordionBtn::before,
	.include-accordion .accordionBtn::after{
	  content:"";
	  position: absolute;
	  top: 20px;
	  width: 1.5px;
	  height: 8px;
	  background-color: #8DC1CC;
	  transition: .5s;
	}
	.include-accordion .accordionBtn::before{
	  transform: rotate(-45deg);
	  right: 30px;
	}
	.include-accordion .accordionBtn::after{
	  transform: rotate(45deg);
	  right: 25px;
	}
	.include-accordion.active .accordionBtn::before{
	  transform: rotate(-135deg);
	  transition:.5s;
	}
	.include-accordion.active .accordionBtn::after{
	  transform: rotate(135deg);
	  transition:.5s;
	}
	.include-accordion.active{ 
		overflow-y: auto;
	}
	
	h2.op-section-ttl {
		font-size: 1.6rem;
		letter-spacing: 0.1em;
		line-height: 1em;
		margin:　40px auto;
	}
	h2.op-section-ttl span {
		font-size: 1rem;
	}
	.special-navi {
		width: 100%;
		max-width: 900px;
		margin: 40px auto;
	}
	.special-navi ul {
		display: flex;
		justify-content: center;
	}
	.special-navi ul li {
		width: 220px;
	}
	.special-navi ul li + li {
		margin: 0 0 0 20px;
	}
	.special-navi ul li a {
		display: block;
		padding: 10px 0;
		text-align: center;
		color:#FFF; 
		border-radius: 4px;
		background: #323c64;
		position: relative;	
	}
	.special-navi ul li a:before {
		content: '';
		width: 6px;
		height: 6px;
		border: 0;
		border-bottom: solid 2px #FFF;
		border-right: solid 2px #FFF;
		transform: rotate(45deg);
		position: absolute;
		top: 0;
		left: 14px;
		bottom: 0;
		margin: auto;
	}
	.special-navi {
		margin: 20px auto;
	}
	.p-card {
		display: flex;
		justify-content: center !important;
		flex-wrap: wrap;
	}
	.p-card .c-card {
		width: 32%;
	}
	.p-card .c-card:nth-last-child(-n+2) {
		margin-left:5px !important;
		margin-right:5px !important;
	}
	.bus_pnl .panel > dt {
	  font-size: 1.1rem;
	  padding: 15px 30px;
	}
	.bus_pnl .panel > dt:before {
		content:"ROUTE";
		white-space: nowrap;
		font-family:Arvo, sans-serif;
		font-size: 0.7rem;
		position: absolute;
		top:13px;
	}
	.bus_pnl .panel > dt:after {
		font-family:Arvo, sans-serif;
		font-size: 2.2rem;
		position: absolute;
		top:28px;
		left:32px;
		color:#FCD941;
		margin-right: 10px;
		width: 35px;
		text-align: center;
	}
	.bus_pnl .panel > dt .routeData {
		display: block;
		margin: 0 0 0 50px;
	}
	.bus_pnl .panel ul.bus_routeAreaName{
		display: flex;
		position: relative;
		margin-left:15px;
		min-width: 100px;
		margin-bottom: 8px;
	}
	.bus_pnl .panel ul.bus_operatingDate {
		margin-left:10px;
		display: flex;
		position: relative;
		font-size: 85%;
	}
	.bus_pnl .panel ul.bus_stopArea {
		margin: 15px 0 0;
	}
	.bus_pnl .panel ul.bus_stopArea li {
		width: 20%;
	}
	#opencampus-contents #oc_content .linkbox,
	#opencampus-contents #archive .linkbox {
		display: flex !important;
		justify-content: space-between !important;
		flex-wrap: wrap;
		padding: 0 !important;
		margin: 0 !important;
	}
	#opencampus-contents #oc_content .linkbox:after {
		display: none;
	}
	#opencampus-contents #oc_content .box,
	#opencampus-contents #archive .box {
		width: 48.5%;
		padding: 0 !important;
		margin: 5px 0!important;
	}
	#opencampus-contents #oc_content .box:last-child {
		margin-right: 0 !important;
	}
	#opencampus-contents .inner .linkbox .box .st-contents_title {
		width: 100%;
		font-size:0.85rem;
		line-height: 1.2em;
		font-weight:bold;
		text-align: left;
		padding:0.8em 1.5em 0.7em;
		text-align: center;
	}
	#opencampus-contents #oc_content .other-cont {
		display: block;
		border:solid 1px var(--color-lightpurple);
		background: #FFF;
		position: relative;
		color:var(--color-lightpurple);
		margin: 20px 0 0;
		padding: 15px 20px;
	}
	#opencampus-contents #oc_content .other-cont:before {
		content:"その他コンテンツ";
		margin: 0;
		height:10px;
		font-weight: 700;
		font-size: 16px;
	}
	#opencampus-contents #oc_content .other-cont ul {
		display: block;
		margin: 5px 0 0 !important;
	}
	#opencampus-contents #oc_content .other-cont ul li {
		font-size: 14px;
	}
	#opencampus-contents #oc_content .other-cont ul li + li {
		margin-left: 0;
	}
}

@media print, screen and (max-width: 480px) { 
	#opencampus-contents .inner {
		padding: 40px 0 !important;
	}
	.opencampus_mv .scroll {
		position: absolute;
		left: calc(50% - 65px / 2);
		bottom: -40px;
		width: 65px;
		height: 62px;
		background-image: url('/prospect/img/icon_scroll.svg');
		background-repeat: no-repeat;
	}
	.inner p {
		text-align: left;
		font-size: 14px;
	}
	.point-circle {
	  position: absolute;
	  top: -10px;
	  left: 10px;
	  width: 60px;
	  height: 60px;
	}
	.point-circle-in {
	  width: 60px;
	  height: 60px;
	  font-size: 13px;
	  box-shadow: 0 2px 2px rgba(0, 0, 0, 0.2);
	}
	.point-fukidashi {
		top: -5px;
		right: 5px;
	}
	#op-schedule .boxL .time_in {
		padding: 15px 0 0 !important;
	}
	#op-schedule .boxL .time:after {
		font-size: 15px;
		letter-spacing: 0.15em;
	}
	#op-schedule .boxL .time .year p {
		font-size: 1.2rem;
	}
	#op-schedule .boxL .time .open-time p {
		font-size: 0.9rem;
		margin: 5px 0 0;
	}
	#op-schedule .boxR .annual-schedule__cont {
		width: 48%;
	}
	#op-schedule .boxR .annual-schedule__cont + .annual-schedule__cont {
		margin-left: 0;
	}
	#op-schedule .boxR .annual-schedule__cont:nth-child(even) {
		margin-left: 10px;
	}
	#op-schedule .boxR .annual-schedule__cont p {
		text-align: center !important;
	}
	#op-schedule .boxR .annual-schedule__cont .day p span {
		display: inline-block;
		margin-left: 5px;
	}
	.include-accordion .accordionBtn {
		font-size: 14px;
	}
	.special-navi ul {
		flex-wrap: wrap;
		width: 100%;
		margin: 0 auto;
	}
	.special-navi ul li {
		width: 100%;
	}
	.special-navi ul li + li {
		margin: 1px 0 0;
	}
	.special-navi ul li a {
		display: block;
		padding: 14px 0 14px 30px;
		text-align: left;
		
	}
	.special-navi ul li a:before {
		content: '';
		width: 6px;
		height: 6px;
		border: 0;
		border-bottom: solid 2px #FFF;
		border-right: solid 2px #FFF;
		transform: rotate(45deg);
		position: absolute;
		top:0;
		left: 14px;
		bottom: 0;
		margin:auto;
	}

	
	.p-card .c-card {
		width: 100%;
	}
	.p-card .c-card dt {
		font-size: 15px;
		line-height: 1.3em;
		padding: 6px 10px;
		min-height:10px;
	}
	.accordion_icon {
	  position: relative;
	  width: 16px;
	  height: 16px;
	  margin-left: auto;
	}
	#bus_1,
	#bus_2,
	#bus_3 {
		margin-top:30px;
	}
	.bus_pnl .accordion_icon {
	  top: -3px !important;
	  right: 0;
	}
	.bus_pnl .panel {
		margin: 0 0 2px;
	}
	.bus_pnl .panel > dt {
	  font-size: 12px;
	  padding:12px 15px;
	}
	.bus_pnl .panel > dt:before {
		content:"ROUTE";
		white-space: nowrap;
		font-family:Arvo, sans-serif;
		font-size: 0.6rem;
		position: absolute;
		top:10px;
	}
	.bus_pnl .panel > dt:after {
		font-family:Arvo, sans-serif;
		font-size: 1.5rem;
		position: absolute;
		top:22px;
		left:16px;
		color:#FCD941;
		margin-right: 10px;
		width: 35px;
		text-align: center;
	}
	.bus_pnl .panel > dd {
	  background-color: #fff;
	  margin: 0px;
	  padding: 5px 20px 10px;
	  border-left: 1px solid #323c64 !important;
	  border-right: 1px solid #323c64 !important;
	  border-bottom: 0;
	}
	.bus_pnl .panel > dd p {
	  text-align: left;
	}
	.bus_pnl .panel > dt .routeData {
		margin: 0 0 0 35px;
	}
	.bus_pnl .panel ul.bus_operatingDate:before {
		margin-right: 6px;
	}
	.bus_pnl .panel ul.bus_operatingDate {
		padding: 4px 12px;
		font-size: 90%;
	}
	.bus_pnl .panel ul.bus_stopArea {
		margin: 15px 0 0;
	}
	.bus_pnl .panel ul.bus_stopArea li {
		width: 38%;
		margin-bottom:10px;
	}
	.bus_pnl .panel ul.bus_stopArea li + li {
		margin-left:30px;
	}
	.bus_pnl .panel ul.bus_stopArea li:after{
		border-width: 10px 0 10px 14px;
		right: -24px;
	}
	.bus_pnl .panel ul.bus_stopArea li:nth-child(3n) {
		margin-left:0;
	}
	#special .panel > dd p.study_txt {
	  margin-bottom: 30px;
	}
	#spct_1,
	#spct_2 {
		margin: 80px 0 0;
	}
	.seminar-experience dt {
		padding: 8px 10px;
		line-height: 1.3em;
		font-size: 0.9rem;
	}
	.seminar-experience dt span {
		display: block;
		font-size: 120%;
		margin-left: 0;
	}
	.seminar-experience dd.seminar-experience-theme {
		line-height: 1.3em;
		font-size: 0.9rem;
	}
	.op-cont-img__half {
		margin: 20px auto 40px;
		width: 100%;
		text-align: center;
	}
}