@charset "utf-8";
/*----------------------------------------------
	見出し
---------------------------------------------*/
/*  .c_ttl_type02
------------------------------------- */
.c_ttl_type02 {
	margin-bottom: 30px;
	padding: 16px;
/*	background: linear-gradient(90deg, #2d00aa, #0088b9);*/
	border-bottom: solid 2px #0088b9;
	color: #0088b9;
	font-size: 32px;
}

/*  .c_ttl_type03
------------------------------------- */
.c_ttl_type03 {
	margin-bottom: 20px;
	font-size: 24px;
	font-weight: bold;
	color:#13546C;
}


/*----------------------------------------------
	ボタン
---------------------------------------------*/
/*  .c_btn_type01
------------------------------------- */
.c_btn_type01 {
	display: inline-block;
	width: 300px;
	padding: 18px;
	text-align: center;
	background: #0d6efd;
	border-radius: 100px;
	color: #fff;
}
.c_btn_type01:hover {
	color: #fff;
	opacity: 0.7;
}
.c_btn_type01.u_disable {
	background: #ccc;
}
.is_w500 { width: 500px; }

/*----------------------------------------------
	アイコン
---------------------------------------------*/
/*  .c_icon
------------------------------------- */
.c_icon {
	position: relative;
}

.c_icon::after {
	content: "";
	position: absolute;
	top: 50%;
	right: 15px;
	translate: 0 -50%;
	width: 16px;
	height: 16px;
}
.c_icon.is_external::after {
	background: url(../images/icon_external.svg) no-repeat;
}
.c_icon.is_pdf::after {
	width: 20px;
	height: 20px;
	background: url(../images/icon_pdf.png) no-repeat;
	background-size: 100%;
}

/*----------------------------------------------
	セクション
---------------------------------------------*/
/*  .c_section
------------------------------------- */
.c_section {
	margin-bottom: 70px;
}
.c_section::before {
  content:'';
  display: block;
  padding-top: 120px;
  margin-top: -120px;
}


/*----------------------------------------------
	リスト
---------------------------------------------*/
/*  .c_list_type01
------------------------------------- */
.c_list_type01 li {
	padding-left: calc(var(--li_circle_object) + var(--li_circle_margin));
	text-indent: calc(var(--li_circle_object) * -1 + var(--li_circle_margin) * -1);
}
.c_list_type01 li::before {
	content: "";
	display: inline-block;
	width: var(--li_circle_object);
	height: var(--li_circle_object);
	margin: 0 var(--li_circle_margin) 2px 0;
	border-radius: 50%;
	background-color: #333;
}

/*リスト改行位置計算用 数値を変更する際はここ*/
:root {
	--li_circle_object: 7px;
	--li_circle_margin: 5px;
}

/*  .c_list_type02
------------------------------------- */
.c_list_type02 {
	counter-reset: li_count;
}
.c_list_type02 li {
	padding-left: calc(1em + var(--li_ol_margin));
	text-indent: calc(1em * -1 + var(--li_ol_margin) * -1);
}
.c_list_type02 li::before {
	counter-increment: li_count;
  content: counter(li_count)"."; 
	margin: 0 var(--li_ol_margin) 2px 0;
  color: #333;
	font-weight: bold;
}

/*リスト改行位置計算用 数値を変更する際はここ */
:root {
	--li_ol_margin: 5px;
}

/*----------------------------------------------
	テーブル
---------------------------------------------*/
/*  .c_table_type01
------------------------------------- */
.c_table_type01 {
	width: 100%;
	text-align: left;
	background: #fff;
}
.c_table_type01 thead {
	background: #ccc;
}
.c_table_type01 tbody th {
/*	background: #51699B;*/
	color: #0088b9;
}
.c_table_type01 th,
.c_table_type01 td {
	padding: 15px;
	border-collapse: collapse;
  border-bottom: 1px solid #94A7D1;
/*	background: #F7F9FF;*/
}


/*----------------------------------------------
	.c_wrap
---------------------------------------------*/
.c_wrap {
	width: 100%;
	max-width: 1200px;
	margin: auto;
	padding: var(--wrap);
}

/*----------------------------------------------
	.c_schedule
---------------------------------------------*/
.c_schedule {
	position: relative;
	color: #0088b9;
	overflow-x: clip;
	margin-bottom: 30px;
}
.c_schedule::after {
	position: absolute;
	top: 50%;
	translate: 0 -50%;
	content: "";
	width: 100%;
	margin-left: 20px;
	border-bottom: 2px dotted #0088b9;
}
.c_schedule span {
	display: inline-block;
	width: 100px;
	margin-right: 30px;
	padding: 3px 0;
	text-align: center;
	border-radius: 100px;
	border: 1px solid #0088b9;
}


/*----------------------------------------------
	.c_program
---------------------------------------------*/
.c_program {
	margin-left: 130px;
	margin-bottom: 50px;
}

.is_profile {
	display: grid;
	grid-template-columns: 160px 1fr;
	gap: 20px;
}
.is_name {
	font-weight: bold;
	font-size: 20px;
}
.is_aft {
	font-size: 14px;
}
.is_detail {
	margin-top: 10px;
	padding: 15px;
	border-radius: 5px;
	background: #ebebeb;
	font-size: 14px;
}


/*----------------------------------------------
	.c_link_bnr
---------------------------------------------*/
#link a {
	display: contents;
}
.c_link_bnr {
	display: grid;
	grid-template-columns: 70px 1fr;
	gap: 20px;
	align-items: center;
	padding: 5px 30px 5px 20px;
	border-radius: 10px;
	border: 2px solid #0088b9;
	background: #fafafa;
	color: #0088b9;
}
.c_link_bnr:hover {
	opacity: .6;
}
.c_link_bnr p {
	position: relative;
	margin-bottom: 0!important;
}
.c_link_bnr p::after {
	position: absolute;
	content: "▶";
	top: 50%;
	right: 0;
	translate: 100% -50%;
}


/*----------------------------------------------
	.c_registration_bnr
---------------------------------------------*/
.c_registration_bnr {
	position: fixed;
	right: 20px;
	bottom: 20px;
	z-index: 999;
	width: 250px;
	padding: 20px;
	border-radius: 10px;
	background: linear-gradient(0deg, #0eb3bf, #0097b9);
	box-shadow: 0 0 5px #3333333d;
}
.c_registration_bnr:hover {
	opacity: 0.7;
}
.c_registration_bnr a {
	display: block;
	font-weight: bold;
	color: #fff;
	font-size: 20px;
	text-decoration: none;
	filter: drop-shadow( 0 0 5px #3333333d );
}
.c_registration_bnr a::after {
	content: ▶;

}