@charset "utf-8";
/* CSS Document */

/*-----------------------------------------------
  title
-----------------------------------------------*/
.title {
padding: 0 4%;
}
.title_inner {
position: relative;
max-width: 760px;
margin: auto;
}
@media screen and (max-width: 767px) {
}

/*-----------------------------------------------
  lead
-----------------------------------------------*/
.lead {
max-width: 760px;
margin: 0 auto;
margin-top: 20px;
padding: 0 4%;
}
.lead .text {

line-height: 1.75;
text-align: justify;
}
.lead .text strong {
font-weight: 500;
color: #FF4600;
}

/*-----------------------------------------------
  present
-----------------------------------------------*/
.present {
max-width: 760px;
margin: 0 auto;
margin-top: 20px;
padding: 0 4%;
}
.present a {
display: block;
}
.present a:hover {
opacity: 0.85;
}
.present_box {
max-width: 760px;
margin: 0 auto;
padding: 20px;
background: #22396C;
border-radius: 10px;
}
.present h2 {
max-width: 220px;
margin: 0 auto;
}
.present .text {
font-size: 1.25em;
text-align: center;
color: #FFF;
}
.present .text strong {
display: inline-block;
font-size: 1.25em;
font-weight: 500;
}
.present .text .color {
color: #FF0;
}
.present .line {
display: flex;
justify-content: space-between;
align-items: center;
max-width: 400px;
margin: 0 auto;
margin-top: 10px;
}
.present .line_info {
width: 38%;
}
.present .line_qr {
width: 18%;
}
.present .line_ph {
width: 38%;
}
@media screen and (max-width: 767px) {
	.present {
	padding: 0;
	}
	.present_box {
	padding: 4%;
	border-radius: 0;
	}
	.present .text {
	font-size: 1em;
	}
	.present .line_info {
	width: 48%;
	}
	.present .line_qr {
	display: none;
	}
	.present .line_ph {
	width: 48%;
	}
}

/*-----------------------------------------------
  schedule
-----------------------------------------------*/
.schedule {
max-width: 760px;
margin: 0 auto;
margin-top: 40px;
}
.schedule h2 {
font-size: 1.25em;
line-height: 1.35;
font-weight: 500;
text-align: center;
color: #FFF;
}
.schedule h2 .en {
font-size: 1.75em;
font-weight: 700;
}
@media screen and (max-width: 767px) {
	.schedule h2 {
	font-size: 0.85em;
	}
}

/* schedule_date */
.schedule_date {
margin-top: 4%;
padding: 15px 5px 5px 5px;
background: linear-gradient(to bottom, #22396C, #009B73);
border-radius: 20px;
}
.schedule_date_box {
margin-top: 15px;
padding: 2%;
background: #E5EBF7;
border-radius: 15px;
}
.schedule_date dl {
display: flex;
flex-wrap: wrap;
}
.schedule_date dt {
width: 33.333%;
padding: 15px;
box-sizing: border-box;
}
.schedule_date dd {
width: 16.666%;
padding: 10px;
border-bottom: 2px dotted #22396C;
box-sizing: border-box;
}
.schedule_date .note {
margin-top: 1em;
font-size: 0.875em;
text-align: center;
}
@media screen and (max-width: 767px) {
	.schedule_date {
	padding: 4% 1% 1% 1%;
	border-radius: 0;
	}
	.schedule_date_box {
	margin-top: 4%;
	padding: 2%;
	border-radius: 0;
	}
	.schedule_date dt {
	width: 50%;
	padding: 2.5%;
	}
	.schedule_date dd {
	width: 25%;
	padding: 2.5%;
	}
}

/* schedule_detail */
.schedule_detail {
margin-top: 20px;
padding: 20px;
background: #F0FAFA;
border-radius: 10px;
}
.schedule_detail dl {
padding: 1em;
}
.schedule_detail dl:not(:first-child) {
border-top: 1px dotted #999;
}
.schedule_detail .date {
font-size: 1.25em;
font-weight: 500;
color: #00AF64;
}
.schedule_detail .head {
font-size: 1.5em;
color: #8CC83C;
}
.schedule_detail .detail {
margin-top: 10px;
}
.schedule_detail sup {
position: relative;
top: -0.1em;
font-size: 0.65em;
}
@media screen and (max-width: 767px) {
	.schedule_detail dl {
	display: block;
	}
	.schedule_detail dt {
	width: auto;
	text-align: center;
	}
	.schedule_detail dd {
	font-size: 1em;
	text-align: center;
	}
}

/* color */
.schedule_detail .color1 {
color: #8CC83C;
}
.schedule_detail .color2 {
color: #00AF64;
}
.schedule_detail .color3 {
color: #50BED2;
}
.schedule_detail .color4 {
color: #4696C8;
}

/* opencampus_btn */
.opencampus_btn {
max-width: 540px;
margin: auto;
margin-top: 40px;
padding: 0 4%;
}
.opencampus_btn li:not(:first-child) {
margin-top: 4%;
}
.opencampus_btn a {
display: block;
padding: 8px;
font-size: 1.65em;
font-weight: 500;
text-align: center;
border-radius: 10px;
}
.opencampus_btn .border {
display: block;
padding: 12px;
border: 1px solid #00A5A5;
border-radius: 5px;
}
.opencampus_btn .arw::before {
content: "〉〉";
margin-right: 0.5em;
}
.opencampus_btn .arw::after {
content: "〈〈";
margin-left: 0.5em;
}
.opencampus_btn a:hover {
opacity: 0.75;
}
.opencampus_btn .btn_form a {
color: #00A5A5;
background: #FFFF3C;
}
.opencampus_btn .btn_form .border {
border-color: #00A5A5;
}
.opencampus_btn .btn_international a {
color: #FFFF3C;
background: #00A5A5;
}
.opencampus_btn .btn_international .border {
border-color: #FFFF3C;
}
@media screen and (max-width: 767px) {
	.opencampus_btn {
	margin-top: 8%;
	}
	.opencampus_btn a {
	font-size: 1.15em;
	}
}


/*-----------------------------------------------
  opencampus_bnr
-----------------------------------------------*/
.opencampus_bnr {
margin-top: 40px;
}
.opencampus_bnr li:not(:first-child) {
margin-top: 20px;
}
.opencampus_bnr a:hover img {
opacity: 0.8;
}
@media screen and (max-width: 767px) {
	.opencampus_bnr {
	margin-top: 8%;
	}
	.opencampus_bnr li:not(:first-child) {
	margin-top: 4%;
	}
}

/*-----------------------------------------------
  program
-----------------------------------------------*/
.program {
max-width: 760px;
margin: 0 auto;
margin-top: 40px;
}
.program h2 {
font-size: 1.25em;
font-weight: 500;
line-height: 1.25;
text-align: center;
}
.program h2 .en {
font-size: 1.75em;
font-weight: 700;
}
.program_list {
display: flex;
justify-content: space-between;
margin-top: 20px;
}
.program_list dl {
width: 32%;
background: #E5EBF7;
border-radius: 0 0 10px 10px;
}
.program_list dt {
padding: 0.1em 0.5em;
font-size: 1.25em;
font-weight: 500;
text-align: center;
color: #FFF;
background: #22396C;
border-radius: 10px 10px 0 0;
}
.program_list dd {
padding: 15px;
}
.program_list .text {
line-height: 1.75;
text-align: justify;
}
.program_list .photo {
margin-bottom: 0.5em;
}
@media screen and (max-width: 767px) {
	.program h2 {
	font-size: 0.85em;
	}
	.program_list {
	display: block;
	margin-top: 4%;
	}
	.program_list dl {
	width: 100%;
	border-radius: 0;
	}
	.program_list dt {
	font-size: 1.2em;
	border-radius: 0;
	}
	.program_list dd {
	padding: 4%;
	}
}


/*-----------------------------------------------
  form
-----------------------------------------------*/
.form {
max-width: 760px;
margin: 0 auto;
padding: 60px 4%;
}
.form h2 {
font-size: 1.25em;
font-weight: 500;
text-align: center;
}
.form h2 a {
text-decoration: underline;
}
@media screen and (max-width: 767px) {
	.form h2 {
	font-size: 1em;
	}
}