@charset "utf-8";
/*============================================================
common
============================================================*/
.mb80 {margin-bottom: 80px;}
.mb100 {margin-bottom: 100px;}
.mb150 {margin-bottom: 150px;}
.fs16 {font-size: 16px; line-height: 32px !important;}
/*---------- preview ----------*/
.kakunin_txt {color: #ff0000;font-size: 20px;line-height: 22px;margin-bottom: 10px;}
ul.kakunin_img {display: flex;flex-wrap: wrap;}
li.kakunin_imgs {width: calc(20% - 5px);list-style-type: none;margin-right: 5px;}
ul.kakunin_img figure {margin: 0;}
/*============================================================
top
============================================================*/
main.senshu * {box-sizing: border-box;line-height: 1.8;}
main.senshu a:hover {text-decoration: none;opacity: .7;}
main.senshu {color: #333;}
.sclNameTop {margin-bottom: 80px;}
.sclNameTop .name {font-family: "ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic ProN", "メイリオ", Meiryo, sans-serif;}
.btn_box {display: flex;justify-content: space-between;margin: 0 auto 70px;}
.btn_box a {border-radius: 6px;position: relative;height: 117px;}
.btn_box a.pamph {background: #ff9600 url(/common_img/senshu/btn_bg01.png) no-repeat right top;width: 288px;display: block;}
.btn_box a.pamph img {
	position: absolute;
	left: 10px;
	bottom: 10px;
	width: 116px;
}
.btn_box a.oc {background: #f73e9d url(/common_img/senshu/btn_bg02.png) no-repeat right top;width: 208px;}
.btn_box a span {
	display: block;
	font-size: 16px;
	opacity: .6;
	color: white;
}
ul.cont_tab {
	display: flex;
	border-bottom: 1px solid #707070;
	border-left: 1px solid #707070;
	margin-bottom: 70px;
}
ul.cont_tab li {
	height: 60px;
	border-right: 1px solid #707070;
	border-top: 1px solid #707070; 
}
ul.cont_tab li a {
	color: #000;
	font-size: 14px;
	width: 100%;
  height: 100%;
  display: flex;
  justify-content: center;
  align-items: center;
  min-width: 120px;
  text-align: center;
  line-height: 20px;
  padding-top: 3px;
}
ul.cont_tab li.on {border-bottom: 4px solid #ff9600;}
section {margin-bottom: 90px;}
.sec_h2,.h2_sub {font-weight: bold;text-align: center;}
.sec_h2 {font-size: 37px;margin-bottom: 10px;}
.h2_sub {color: #ff9600;font-size: 18px;margin-bottom: 60px;}
ul.intro_btn {display: flex;flex-wrap: wrap;}
ul.intro_btn li {
	width: calc(33.333% - 10px);
	margin-top: 55px;
	position: relative;
	min-height: 80px;
	margin-right: 15px;
}
ul.intro_btn li:nth-child(-n+3) {margin-top: 0;}
ul.intro_btn li:nth-child(3n) {margin-right: 0;}
ul.intro_btn li a:hover {color: unset;opacity: 0.6;}
ul.intro_btn li div {
	box-sizing: border-box;
	position: absolute;
	display: block;
	height: 63px;
	width: 291px;
	padding: 8px;
	background: #fff;
	bottom: -16px;
	left: 10px;
	font-size: 28px;
	font-weight: bold;
	text-align: center;
}
ul.intro_btn li div.features {color: #00C2FF;border: 3px solid #00C2FF;box-shadow: 6px 5px 0px #00C2FF;}
ul.intro_btn li div.course {color: #FF9600;border: 3px solid #FF9600;box-shadow: 6px 5px 0px #FF9600;}
ul.intro_btn li div.education {color: #0467db;border: 3px solid #0467db;box-shadow: 6px 5px 0px #0467db;}
ul.intro_btn li div.nyugaku {color: #00C9A7;border: 3px solid #00C9A7;box-shadow: 6px 5px 0px #00C9A7;}
ul.intro_btn li div.k_campuslife {color: #F73E9D;border: 3px solid #F73E9D;box-shadow: 6px 5px 0px #F73E9D;}
ul.intro_btn li div.taiken {color: #FFBB00;border: 3px solid #FFBB00;box-shadow: 6px 5px 0px #FFBB00;}
ul.intro_btn img {width: 100%;}
section.course {background: #fffdf6;padding: 40px 100px;}
ul.course_list li {
	border-bottom: 1px solid  #C7C7C7;
	position: relative;
	display: flex;
  align-items: center;
}
ul.course_list li a {
	color: #333;
  font-size: 20px;
  font-weight: bold;
  display: block;
  padding: 27px 0;
  width: 95%;
}
.course_free ul.course_list li a {padding: 30px 97px;cursor: auto;}
.course_free ul.course_list li a:hover {opacity: 1.0;}
.course ul.course_list li::after {
	content: "";
	position: absolute;
	right: 0;
	width: 12px;
	height: 12px;
	border-bottom: 2px solid #000;
	border-right: 2px solid #000;
	transform: rotate(-45deg);
}
ul.photo_list {display: flex;flex-wrap: wrap;}
ul.photo_list li {width: calc(33.333% - 15px * 2 / 3);margin-right: 15px; margin-top: 20px;}
ul.photo_list li:nth-child(3n) {margin-right: 0;}
ul.photo_list li:nth-child(-n+3) {margin-top: 0;}
ul.photo_list li img,
ul.photo_list li video {width: 100%;}
ul.photo_list li p {margin-top: 20px;font-size: 16px;color: #707070;}
figcaption.photo_txt {margin-top: 20px;font-size: 16px;color: #707070;}
section.adrs dt,
section.adrs dd {font-size: 16px;line-height: 39px;}
section.adrs address {font-size: inherit;}
section.adrs dd a {color: #3C58A2;font-size: 18px;line-height: 39px;}
section.adrs dt {
  float: left;
  clear: left;
  width: 115px;
  text-align-last: auto;
  text-justify: inter-ideograph;
  position: relative;
}
section.adrs dt::after {
  content: "";
  display: block;
  position: absolute;
  top: 10px;
  right: -10px;
  height: 18px;
  border-right: 1px solid #707070;
}
section.adrs dd {padding-left: 150px;position: relative;top: 0px;}
.access_info {position: relative;font-size: 16px;}
.access_info .route_btn {
	position: absolute;
  right: 0;
  bottom: 0;
  color: #000;
  border: 2px solid #000;
  width: 150px;
  text-align: center;
  padding: 8px;
  border-radius: 20px;
  font-size: 15px;
  font-weight: bold;
}
.scl_map {height: 400px;margin-bottom: 140px;}
.scl_map iframe {width: 100%;height: 100%;}
.three_box {width: 860px;display: flex;justify-content: space-around;}
.three_box a {
  border-radius: 6px;
  text-align: center;
  padding: 30px 5px 10px;
  position: relative;
  color: white;
  height: 117px;
  font-size: 22px;
  font-weight: bold;
  box-sizing: border-box;
}
.btn_box a.sp_site {
	border: 1px solid #f73e9d;
  color: #f73e9d;
  width: 320px;
  padding-right: 130px;
}
.btn_box a.sp_site span {color: #FAACC8;}
.btn_box a.sp_site .qr {
	position: absolute;
	top: 3px;
  right: 8px;
  width: 109px;
}
/*---------- slick slider ----------*/
.slider_box {height: 290px;margin-bottom: 100px;position: relative;}
.slick-slide {padding: 0 10px;}
.slider_box img {width: 100%;}
.slide_arrow {
  position: absolute;
  margin: auto;
  top: 0;
  bottom: 0;
  width: 50px;
  height: 50px;
  background: rgba(170,170,170,.8);
  z-index: 10;
  border: none;
  border-radius: 6px;
  cursor: pointer;
}
.prev {left: 10px;}
.next {right: 10px;}
button {
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  outline: none;
  padding: 0;
}
.slide_arrow span {position: relative;}
.slide_arrow span::after {
	content: "";
	position: absolute;
	width: 15px;
	height: 15px;
	top: -6px;
}
.prev span::after {
	border-left: 2px solid white;
	border-bottom: 2px solid white;
	transform: rotate(45deg);
	right: -11px;
}
.next span::after {
	border-right: 2px solid white;
	border-bottom: 2px solid white;
	transform: rotate(-45deg);
	left: -11px;
}
/*============================================================
Course
============================================================*/
.bdr_h3 {
	font-size: 28px;
	font-weight: bold;
	position: relative;
	padding-left: 33px;
	margin-bottom: 30px;
}
.bdr_h3::before {
	content: "";
	width: 13px;
	height: 38px;
	background: #f73e9d;
	position: absolute;
	left: 0;
	top: 5px;
	border-radius: 8px;
}
.three_photos img {width: calc(33.333% - 15px * 2 / 3);margin-right: 10px;}
.three_photos img:last-child {margin-right: 0;}
dl.ttl_bold_dl dt, dl.ttl_bold_dl dd {font-size: 16px;}
dl.ttl_bold_dl dt {font-weight: bold;margin-bottom: 5px;}
dl.ttl_bold_dl dt::before {content: "■";}
dl.ttl_bold_dl dd + dt {margin-top: 30px;}
table.time_table th {background: #ffdfef;}
table.time_table th, table.time_table td {
	text-align: center;
	color: #000;
	font-size: 18px;
	border-right: 1px solid white;
	border-bottom: 1px solid white;
  width: 65px;
  height: 50px;
}
table.time_table tr:first-child th:nth-child(n+2) {color: #2E2E2E;}
table.time_table td {font-size: 16px;padding: 5px;background: #fff6fb;width: 100px;}
table.time_table th span {font-size: 14px;}
table.time_table .on {background: #f73e9d;color: white;}
table.time_table caption {caption-side: bottom;text-align: right;margin-top: 10px;}
/*============================================================
Education
============================================================*/
.chart-area{position: relative;width:100%;height:50vh;}
/*============================================================
Future
============================================================*/
ul.future_img {display: flex;justify-content: flex-start;flex-wrap: wrap;margin-bottom: 30px;}
.supportLi {display: flex;flex-wrap: wrap;margin-bottom: 40px;}
.supportLi li:nth-child(1) {width: 30%;}
.supportLi li:nth-child(2) {width: 65%;margin-left: 30px;}
.supportLi li img {width: 100%}
/*============================================================
Campus life
============================================================*/
.catch_c {font-size: 28px;font-weight: bold;margin-bottom: 30px;}
section.schedule {background: #ffdfef;padding: 40px 80px 20px;}
dl.schedule_tbl {display: flex;flex-wrap: wrap;}
dl.schedule_tbl dt {
  width: 88px;
  height: 88px;
  background: white;
  border-radius: 50%;
  font-size: 28px;
  font-weight: bold;
  display: flex;
  align-items: center;
  justify-content: center;
  margin-bottom: 40px;
}
dl.schedule_tbl dd {width: calc(100% - 88px);padding-left: 32px;font-size: 20px;}
.schedule_photo {margin: 26px 0 53px;}
.schedule_photo img {margin-right: 8px;width: 220px;}
.interviewee {font-size: 28px;font-weight: bold;margin: 30px 0px 25px;}
.interview_wrap {display: flex;}
.interview_wrap .photo_area {width: 315px;}
.interview_wrap .photo_area img {width: 100%;}
.interview_wrap .photo_area p {font-size: 16px;}
.interview_wrap .txt_area {flex: 1;padding-left: 30px;font-size: 16px;}
.interview_wrap .txt_area .voice_ttl {font-weight: bold;}
/*============================================================
Open campus
============================================================*/
.oc_cell {border-bottom: 1px solid #C7C7C7;padding: 40px 0 20px;}
.oc_cell:first-of-type {border-top: 1px solid #C7C7C7;}
.oc_cell .oc_title {font-size: 28px;font-weight: bold;margin-bottom: 40px;}
.oc_cell .oc_tag span {
	background: #3c58a2;
	padding: 4px 15px;
	color: white;
	text-align: center;
	border-radius: 3px;
	display: inline-block;
	margin: 0 8px 10px 0;
}
.oc_tbl {display: flex;justify-content: space-between;}
.oc_tbl .oc_image {width: 240px;height: 240px;margin-right: 30px;}
.oc_tbl .oc_image img {object-fit: cover;width: 100%;height: 100%;}
.oc_detail {flex: 1;}
.oc-ph figure {margin: 0;margin-right: 40px;}
.oc_date_wrap {width: 400px;}
ul.oc_date_list {overflow: hidden;}
ul.oc_date_list .year {border-bottom: 1px solid #C7C7C7;padding: 10px 0;}
ul.oc_date_list li {
	display: flex;
	align-items: center;
	justify-content: space-between;
	border-bottom: 1px solid #C7C7C7;
	padding: 11px 0;
}
ul.oc_date_list li time {font-size: 18px;font-weight: bold;width: 120px;}
ul.oc_date_list li time span {margin-left: 5px;}
ul.oc_date_list li time span.sat {color: #1981E8;}
ul.oc_date_list li time span.sun {color: #FF0000;}
ul.oc_date_list li .time {font-size: 18px;width: 180px;}
ul.oc_date_list li .attend_btn {
	background: #f73e9d;
	color: white;
	padding: 3px 16px;
	border-radius: 5px;
	text-align: center;
}
p.oc_more_btn {
	text-align: center;
	width: fit-content;
	cursor: pointer;
	margin: 16px auto 0;
	color: #3c58a2;
	position: relative;
	font-size: 15px;
}
.oc_more_btn::before, .oc_more_btn::after {content: "";position: absolute;}
.oc_more_btn::before {
  left: -33px;
  width: 20px;
  height: 20px;
  border: 1px solid #3c58a2;
  border-radius: 50%;
}
.oc_more_btn::after {
  left: -25px;
  top: 6px;
  width: 6px;
  height: 6px;
  border-left: 1px solid #3c58a2;
  border-bottom: 1px solid #3c58a2;
  transform: rotate(-45deg);
}
.oc_more_btn.open::after {top: 9px;
transform: rotate(135deg);}
/*============================================================
Feature
============================================================*/
ul.future_img {display: flex;justify-content: flex-start;margin-bottom: 30px;}
ul.future_img li {width: calc(33.333% - 10px * 2 / 3);height: 237px;margin-right: 10px;}
ul.future_img li:last-child {margin-right: 0;}
ul.future_img li img {object-fit: cover;width: 100%;height: 100%;}
ul.supportLi {display: flex;justify-content: space-between;}
ul.supportLi li:first-child {width: 316px;height: 230px;}
ul.supportLi li:first-child img  {object-fit: cover;width: 100%;height: 100%;}
ul.supportLi li:last-child {flex: 1;}
ul.supportLi + p.catch_c {margin-top: 40px;}
/*============================================================
Photo_movie
============================================================*/
.photo_list li figure {position: relative;}
.photo_list li figure .play_btn {
	transform: translateY(-50%) translateX(-50%);
  -webkit-transform: translateY(-50%) translateX(-50%);
  width: 40px;
  height: 40px;
  border-radius: 50%;
  background: white;
  content: "";
  position: absolute;
  display: block;
  top: 50%;
  left: 50%;
  opacity: 0.8;
  cursor: pointer;
}
.photo_list li figure .play_btn.playActive {display: none;}
.photo_list li figure .play_btn:after {
  transform: translateY(-50%) translateX(-25%);
  -webkit-transform: translateY(-50%) translateX(-25%);
  width: 0px;
  height: 0px;
  border: 10px solid transparent;
  border-left: 15px solid gray;
  content: "";
  position: absolute;
  display: block;
  top: 50%;
  left: 50%;
  opacity: 0.8;
}