
/* ============================================================
PC
==============================================================*/

@media (min-width: 762px) {

	.g_cv_btn a{
		display:block;
		background:rgb(0 0 0 / 90%);
		padding: 20px 0;
	}

	/* ============================================================
 	main_sec_wrap
	==============================================================*/
  
	#main_sec_wrap{
		width: 100%;
		height: 200px;
		position: relative;
		background: linear-gradient( to top,  #a59cc7 0%, #9b82b9 100% );
	}

	#main_sec_wrap .txt_wrap{
		position:absolute;
		left: 80px;
		top: 49%;
		transform: translate(0,-50%);
	}

	#main_sec_wrap h1{
		font-family: 'Noto Sans JP', sans-serif;
		font-weight: 300;
		font-size: 5.4rem;
		letter-spacing: -0.1rem;
		line-height: 1;
		color: #fff;
		font-feature-settings: 'palt';
	}

	#main_sec_wrap h1 span{
		font-size:2.4rem;
		font-weight: 400;
		display: inline-block;
		background: #fff;
		color: #8a77ab;
		line-height: 1.4;
		letter-spacing:0.1rem;
		vertical-align: middle;
		border-radius:4px;
		padding: 0px 10px 3px;
		margin: 7px 0 0 12px;
	}

	#main_sec_wrap span.eng_txt{
		display:block;
		font-family: 'Roboto', sans-serif;
		font-weight: 500;
		font-size: 1.2rem;
		letter-spacing: 0.1rem;
		line-height: 1.4;
		color: #fff;
		font-feature-settings: 'palt';
		padding:0 0 5px;
		
	}
	

	
	/* ============================================================
 	section 01
	==============================================================*/
	
	#sec01{
		width: 100%;
		padding:100px 0;
		position:relative;
	}

	#sec01 .wrapper{
		width:960px;
	}

	
	#sec01 h2{
		font-family: 'Noto Sans JP', sans-serif;
		font-weight: 500;
		font-size: 3.0rem;
		letter-spacing: 0.1rem;
		line-height: 1.4;
		text-align:center;
		color: #000;
		font-feature-settings: 'palt';
		padding: 0 0 10px;
		border-bottom: 1px solid #000;
	}

	#sec01 h2 span{
		display:block;
		font-weight: 400;
		font-size:1.6rem;
		padding:0 2px;
	}

	#sec01 h2 span.box_txt{
		width:170px;
		display:block;
		color:#A386C4;
		font-size:1.4rem;
		padding:4px 0 4px;
		margin: 0 auto 2px;
		border-radius:4px;
		border:1px solid #A386C4;
	}


	#sec01 p{
		font-family: 'Noto Sans JP', sans-serif;
		font-weight: 400;
		font-size: 1.5rem;
		line-height:2.0;
		letter-spacing:0.1rem;
		font-feature-settings: 'palt';
		padding: 12px 0 24px;
	}

	#sec01 ul.btn_more{
		width:140px;
		margin: 0 0 0 24px;
		position: relative;
		z-index: 999;
	}

	#sec01 ul.btn_more a{
		font-family: 'Barlow', sans-serif;
		font-size: 1.4rem;
		font-weight: 600;
		letter-spacing: 0.02em;
		font-feature-settings: 'palt';
		color:#fff;
		background:#000;
		text-align:center;
		display:block;
		border-radius:30px;
		padding: 6px 0;
	}

	#sec01 ul.btn_more a{
		transition: all 0.5s ease 0s;
	}

	#sec01 ul.btn_more a:hover{
		transform: scale(1.1);
	}

	#sec01 .fee-table-wrapper {
	  font-family: 'Noto Sans JP', sans-serif;
	  font-size: 1.5rem;
	  color: #333;
	}
	
	#sec01 .fee-table {
	  display: none;
	}
	
	#sec01 .fee-table.active {
	  display: block;
	}
	
	#sec01 table {
	  width: 100%;
	  border-collapse: separate;
	  border-spacing: 4px;
	}
	
	#sec01 thead th {
	  background: #a59dc7;
	  color: #fff;
	  text-align: center;
	  padding: 8px 0.8rem 8px;
	  border-radius: 2px;
	  width: 20%;
	  font-weight: 400;
	  font-size: 2.0rem;
	}
	
	#sec01 thead .purple-header {
	  background: #c88fb8;
	  font-weight: 400;
	  font-size: 1.8rem;
	  line-height: 1.4;
	}

	#sec01 .z_k_tr th {
		background: #d8b2cf;
		font-size: 1.6rem;
		width: 180px;
	}
	
	#sec01 .total-row td {
	  background: #e5dae3 !important;
	  font-weight: 500;
	}

	#sec01 #community .purple-header {
	  background: #73c784;
	}

	#sec01 #community .z_k_tr th {
		background: #b2d8c1;
	}
	
	#sec01 #community .total-row td {
	  background: #dae5df !important;
	}
	
	#sec01 #community .grand-total-row td {
	  background: #c6dbce !important;
	}

	#sec01 #education .purple-header {
	  background: #efa26b;
	}

	#sec01 #education .z_k_tr th {
		background: #ebc38f;
	}
	
	#sec01 #education .total-row td {
	  background: #f3eacb !important;
	}
	
	#sec01 #education .grand-total-row td {
	  background: #ecc9b0 !important;
	}

	#sec01 #health .purple-header {
	  background: #69c9d8;
	}

	#sec01 #health .z_k_tr th {
		background: #a5c9ea;
	}
	
	#sec01 #health .total-row td {
	  background: #dff6fb !important;
	}
	
	#sec01 #health .grand-total-row td {
	  background: #cddffa !important;
	}
	
	#sec01 .grand-total-row td {
	  background: #dbc6d8 !important;
	  font-weight: 500;
	  padding: 15px 0;
	}
	
	#sec01 tbody td {
	  background: #f9f9f9;
	  padding: 8px 1px;
	  text-align: center;
	  color: #000;
	}
	
	#sec01 tbody tr:nth-child(even) td {
	  background: #eeeeee;
	}
	
	#sec01 .section-label {
	  background: #b9a4d8;
	  color: white;
	  font-weight: bold;
	  text-align: center;
	  white-space: nowrap;
	}

	#sec01 .section-label{
		background: #a59dc7!important;
		color: #fff;
		writing-mode: vertical-rl;
		text-orientation: upright;
	}
	#sec01 thead th:last-child {
	}
	
	#sec01 .tab-buttons {
	  display: flex;
	  gap: 1rem;
	  margin: 35px 0 32px;
	  justify-content: space-between;
	}
	
	#sec01 .tab {
	  background: #c9caca;
	  border-radius: 9999px;
	  padding: 14px 0 16px;
	  width: 230px;
	  border: none;
	  font-weight: 400;
	  font-size: 1.6rem;
	  cursor: pointer;
	  position: relative;
	  color: #fff;
	}
	
	#sec01 .tab.active {
	  background: #c88fb8;
	  color: white;
	}
	
	#sec01 .tab.active::after {
	  content: '';
	  position: absolute;
	  bottom: -6px;
	  left: 50%;
	  transform: translateX(-50%);
	  width: 0;
	  height: 0;
	  border-left: 7px solid transparent;
	  border-right: 7px solid transparent;
	  border-top: 7px solid #c88fb8;
	}
	
	#sec01 .tab.icd.active {
	  background: #73c980;
	}
	
	#sec01 .tab.icd.active::after {
	  border-top: 7px solid #73c980;
	}
	
	#sec01 .tab.fe.active {
	  background: #eaa06c;
	}
	
	#sec01 .tab.fe.active::after {
	  border-top: 7px solid #eaa06c;
	}
	
	#sec01 .tab.fhs.active {
	  background: #69c9d8;
	}
	
	#sec01 .tab.fhs.active::after {
	  border-top: 7px solid #69c9d8;
	}

	#sec01 .glay_back{
		background:#e2e2e2!important;
		text-align:left;
		padding: 0 0 0 17px;
	}

	#sec01 .sub-label{
		text-align:left;
		padding: 0 0 0 17px;		
	}

	#sec01 ul.ex_box{
		margin:30px 0 0;
	}

	#sec01 ul.ex_box li{
		font-family: 'Noto Sans JP', sans-serif;
		font-weight: 400;
		font-size: 1.3rem;
		margin: 0 0 3px 1.2em;
		color:#000;
		text-indent: -1em;
	}



	/* ============================================================
 	section 02
	==============================================================*/
	
	#sec02{
		width: 100%;
		background: #F5F5F5;
		padding:100px 0;
		position:relative;
	}

	#sec02 .wrapper{
		width:960px;
	}

	
	#sec02 h2{
		font-family: 'Noto Sans JP', sans-serif;
		font-weight: 500;
		font-size: 3.0rem;
		letter-spacing: 0.1rem;
		line-height: 1.4;
		text-align:center;
		color: #000;
		font-feature-settings: 'palt';
		padding: 0 0 10px;
		border-bottom: 1px solid #000;
	}
	
	#sec02 h3{
		font-family: 'Noto Sans JP', sans-serif;
		font-weight: 500;
		font-size: 1.8rem;
		letter-spacing: 0.1rem;
		line-height: 1.4;
		text-align:center;
		color: #000;
		font-feature-settings: 'palt';
		padding: 54px 0 22px;
	}


	#sec02 p{
		font-family: 'Noto Sans JP', sans-serif;
		font-weight: 400;
		font-size: 1.5rem;
		line-height:2.0;
		letter-spacing:0.1rem;
		font-feature-settings: 'palt';
		padding: 12px 0 24px;
	}

	#sec02 ul.btn_more{
		width:140px;
		margin: 0 0 0 24px;
		position: relative;
		z-index: 999;
	}

	#sec02 ul.btn_more a{
		font-family: 'Barlow', sans-serif;
		font-size: 1.4rem;
		font-weight: 600;
		letter-spacing: 0.02em;
		font-feature-settings: 'palt';
		color:#fff;
		background:#000;
		text-align:center;
		display:block;
		border-radius:30px;
		padding: 6px 0;
	}

	#sec02 .admission-fee-table {
	  font-family: 'Noto Sans JP', sans-serif;
	  font-size: 1.5rem;
	}
	
	#sec02 .fee-table-table {
	  width: 100%;
	  border-collapse: separate;
	  border-spacing: 0;
	  font-family: 'Noto Sans JP', sans-serif;
	  font-size: 1.5rem;
	  font-weight: 400;
	  border-spacing: 4px;
	}
	
	#sec02 .fee-table-table thead th {
	  background-color: #a59dc7;
	  color: white;
	  padding: 12px;
	  font-weight: 400;
	}
	
	#sec02 .fee-table-table thead th:last-child{
		border-right:none;
	}
	
	#sec02 .fee-table-table td,
	#sec02 .fee-table-table th {
	  text-align: center;
	  vertical-align: middle;
	  padding: 12px;
	  color: #000;
	}
	
	#sec02 .fee-table-table td.deadline{
		width: 118px;
		text-align:left;
		padding: 12px 48px;
	}
	
	#sec02 .fee-table-table td.deadline span{
		font-size:1.3rem;
	}
	
	#sec02 .left-header {
	  background-color: #e2e2e2;
	  font-weight: bold;
	  text-align: left!important;
	  padding: 12px 20px !important;
	  box-sizing: border-box;
	  width: 202px;
	  font-weight: 500;
	}
	
	#sec02 tr:last-child .left-header{
		border-bottom:none;
	}
	
	#sec02 .fee-table-table tbody tr:nth-child(odd) {
	  background-color: #F5F5F5;
	}
	#sec02 .fee-table-table tbody tr:nth-child(even) {
	  background-color: #ededed;
	}
	
	#sec02 .fee-table-table tbody td:not(.left-header) {
	  border: none;
	}
	


	#sec02 ul.ex_box{
		margin:30px 0 0;
	}

	#sec02 ul.ex_box li{
		font-family: 'Noto Sans JP', sans-serif;
		font-weight: 400;
		font-size: 1.3rem;
		margin: 0 0 3px 1.2em;
		color:#000;
		text-indent: -1em;
	}

	

	/* ============================================================
 	section 03
	==============================================================*/
	
	#sec03{
		width: 100%;
		background: #ffffff;
		padding:100px 0;
		position:relative;
	}

	#sec03 .wrapper{
		width:960px;
	}

	
	#sec03 h2{
		font-family: 'Noto Sans JP', sans-serif;
		font-weight: 500;
		font-size: 3.0rem;
		letter-spacing: 0.1rem;
		line-height: 1.4;
		text-align:center;
		color: #000;
		font-feature-settings: 'palt';
		padding: 0 0 10px;
		border-bottom: 1px solid #000;
	}

	#sec03 h2 span.sn{
		display:inline-block;
		font-weight: 400;
		font-size:2.2rem;
		padding:0 2px;
	}

	#sec03 h2 span.box_txt{
		width:190px;
		display:block;
		color:#A386C4;
		font-size:1.4rem;
		padding:4px 0 4px;
		margin: 0 auto 2px;
		border-radius:4px;
		border:1px solid #A386C4;
	}

	#sec03 p{
		font-family: 'Noto Sans JP', sans-serif;
		font-weight: 400;
		font-size: 1.5rem;
		line-height:2.0;
		letter-spacing:0.1rem;
		font-feature-settings: 'palt';
		padding: 12px 0 24px;
	}

	#sec03 ul.btn_more a{
		font-family: 'Barlow', sans-serif;
		font-size: 1.4rem;
		font-weight: 600;
		letter-spacing: 0.02em;
		font-feature-settings: 'palt';
		color:#fff;
		background:#000;
		text-align:center;
		display:block;
		border-radius:30px;
		padding: 6px 0;
	}

	#sec03 ul.btn_more a{
		transition: all 0.5s ease 0s;
	}

	#sec03 ul.btn_more a:hover{
		transform: scale(1.1);
	}
	
	#sec03 .fee-table-table {
	  display: none;
	}
	
	#sec03 .fee-table-table.active {
	  display: block;
	}
	

	
	#sec03 .fee-table {
		display: none;
		table-layout: fixed;
	}
	
	#sec03 .fee-table.active {
	  display: block;
	}
	
	#sec03 .fee-table-wrapper {
	  font-family: 'Noto Sans JP', sans-serif;
	  font-size: 1.5rem;
	  color: #333;
	}
	#sec03 table {
	  width: 100%;
	  border-collapse: separate;
	  border-spacing: 4px;
	}
	
	#sec03 thead th {
	  background: #a59dc7;
	  color: #fff;
	  text-align: center;
	  padding: 8px 0.8rem 8px;
	  border-radius: 2px;
	  width: 20%;
	  font-weight: 400;
	  font-size: 2.0rem;
	}
	
	#sec03 thead .purple-header {
	  background: #c88fb8;
	  font-weight: 400;
	  font-size: 1.8rem;
	  line-height: 1.4;
	}
	
	#sec03 tbody td {
	  background: #f9f9f9;
	  padding: 8px 1px;
	  text-align: center;
	  color: #000;
	}
	
	#sec03 tbody tr:nth-child(even) td {
	  background: #eeeeee;
	}
	
	#sec03 .total-row td {
	  background: #e5dae3 !important;
	  font-weight: 500;
	}
	
	#sec03 .grand-total-row td {
	  background: #dbc6d8 !important;
	  font-weight: 500;
	  padding: 15px 0;
	}
	
	#sec01.section-label {
	  background: #b9a4d8;
	  color: white;
	  font-weight: bold;
	  text-align: center;
	  white-space: nowrap;
	}

	#sec03 .section-label{
		background: #a59dc7!important;
		color: #fff;
		writing-mode: vertical-rl;
		text-orientation: upright;
	}
	#sec03 thead th:last-child {
	}
	
	#sec03 .tab-buttons {
	  display: flex;
	  gap: 1rem;
	  margin: 35px 0 32px;
	  justify-content: space-between;
	}
	
	#sec03 .tab {
	  background: #c9caca;
	  border-radius: 9999px;
	  padding: 14px 0 16px;
	  width: 230px;
	  border: none;
	  font-weight: 400;
	  font-size: 1.6rem;
	  cursor: pointer;
	  position: relative;
	  color: #fff;
	}
	
	#sec03 .tab.active {
	  background: #c88fb8;
	  color: white;
	}
	
	#sec03 .tab.active::after {
	  content: '';
	  position: absolute;
	  bottom: -6px;
	  left: 50%;
	  transform: translateX(-50%);
	  width: 0;
	  height: 0;
	  border-left: 7px solid transparent;
	  border-right: 7px solid transparent;
	  border-top: 7px solid #c88fb8;
	}
	
	#sec03 .tab.icd.active {
	  background: #73c980;
	}
	
	#sec03 .tab.icd.active::after {
	  border-top: 7px solid #73c980;
	}
	
	#sec03 .tab.fe.active {
	  background: #eaa06c;
	}
	
	#sec03 .tab.fe.active::after {
	  border-top: 7px solid #eaa06c;
	}
	
	#sec03 .tab.fhs.active {
	  background: #69c9d8;
	}
	
	#sec03 .tab.fhs.active::after {
	  border-top: 7px solid #69c9d8;
	}
	
	#sec03 .tab.ouyou.active {
	  background: #474647;
	}
	
	#sec03 .tab.ouyou.active::after {
	  border-top: 7px solid #474647;
	}

	#sec03 .glay_back{
		background:#e2e2e2!important;
		text-align:left;
		padding: 0 0 0 17px;
	}

	#sec03 .sub-label{
		text-align:left;
		padding: 0 0 0 17px;		
	}

	#sec03 .z_k_tr th {
		background: #d8b2cf;
		font-size: 1.6rem;
		width: 180px;
	}





	#sec03 .admission-fee-table {
	  font-family: 'Noto Sans JP', sans-serif;
	  font-size: 1.5rem;
	}
	
	#sec03 .fee-table {
	  width: 100%;
	  border-collapse: separate;
	  border-spacing: 0;
	  font-family: 'Noto Sans JP', sans-serif;
	  font-size: 1.5rem;
	  font-weight: 400;
	  border-spacing: 4px;
	}
	
	#sec03 .fee-table thead th {
	  background-color: #a59dc7;
	  color: white;
	  padding: 12px;
	  font-weight: 400;
	}
	
	#sec03 .fee-table thead th:last-child{
		border-right:none;
	}
	
	#sec03 .fee-table td,
	#sec03 .fee-table th {
	  text-align: center;
	  vertical-align: middle;
	  padding: 12px;
	  color: #000;
	  white-space: nowrap;
	}
	
	#sec03 .fee-table td.deadline{
		width: 118px;
		text-align:left;
		padding: 12px 48px;
	}
	
	#sec03 .fee-table td.deadline span{
		font-size:1.3rem;
	}
	
	#sec03 .left-header {
	  background-color: #e2e2e2!important;
	  width: 15%!important;
	  font-weight: 500;
	}
	
	#sec03 tr:last-child .left-header{
		border-bottom:none;
	}
	
	#sec03 .fee-table tbody tr:nth-child(odd) {
	  background-color: #ffffff;
	}
	#sec03 .fee-table tbody tr:nth-child(even) {
	  background-color: #eeeeee;
	}
	
	#sec03 .fee-table tbody td:not(.left-header) {
	  border: none;
	}
	
	#sec03 .fee-table tbody td.left_td{
		text-align:left;
		padding:12px 20px;
	}


	#sec03 ul.ex_box{
		margin:30px 0 0;
	}

	#sec03 ul.ex_box li{
		font-family: 'Noto Sans JP', sans-serif;
		font-weight: 400;
		font-size: 1.3rem;
		margin: 0 0 3px 1.2em;
		color:#000;
		text-indent: -1em;
	}


	


	

	/* ============================================================
 	section 04
	==============================================================*/
	
	#sec04{
		width: 100%;
		background: #F5F5F5;
		padding:100px 0;
		position:relative;
	}

	#sec04 .wrapper{
		width:960px;
	}

	
	#sec04 h2{
		font-family: 'Noto Sans JP', sans-serif;
		font-weight: 500;
		font-size: 3.0rem;
		letter-spacing: 0.1rem;
		line-height: 1.4;
		text-align:center;
		color: #000;
		font-feature-settings: 'palt';
		padding: 0 0 10px;
		border-bottom: 1px solid #000;
	}
	
	#sec04 h3{
		font-family: 'Noto Sans JP', sans-serif;
		font-weight: 500;
		font-size: 1.8rem;
		letter-spacing: 0.1rem;
		line-height: 1.4;
		text-align:center;
		color: #000;
		font-feature-settings: 'palt';
		padding: 54px 0 49px;
	}

	#sec04 p{
		font-family: 'Noto Sans JP', sans-serif;
		font-weight: 400;
		font-size: 1.5rem;
		line-height:2.0;
		letter-spacing:0.1rem;
		font-feature-settings: 'palt';
		padding: 12px 0 24px;
		color: #000;
	}
	
	#sec04 .card-container {
	  display: flex;
	  flex-wrap: wrap;
	  gap: 24px;
	  justify-content: left;
	  font-family: 'Noto Sans', sans-serif;
	}
	
	#sec04 .card {
	  background-color: white;
	  border-radius: 10px;
	  width: 465px;
	  display: flex;
	  flex-direction: column;
	  overflow: hidden;
	  border: 1px solid #e0e0e0;
	}
	
	#sec04 .card-header {
	  background-color: #a88cc8;
	  color: white;
	  text-align: center;
	  padding: 22px 16px 19px;
	  position: relative;
	  border: 1px solid #a88cc8;
	}
	
	#sec04 .card-header::after {
	  content: "";
	  position: absolute;
	  bottom: -6px; /* 突起を下に出す */
	  left: 50%;
	  transform: translateX(-50%) rotate(45deg);
	  width: 12px;
	  height: 12px;
	  background-color: #a88cc8;
	  z-index: 1;
	}
	
	
	#sec04 .card-header h4 {
	  margin: 0;
	  font-size: 2.0rem;
	}
	
	#sec04 .card-body {
	  padding: 35px 40px;
	  line-height: 1.8;
	  color: #333;
	  font-size: 1.5rem;
	  text-align: center;
	}
	
	#sec04 .card:nth-child(3) {
	  margin-top: 24px;
	}


	#sec04 ul a{
		width: 300px;
		box-sizing:border-box;
		font-family: 'Noto Sans JP', sans-serif;
		font-size: 1.6rem;
		font-weight: 500;
		letter-spacing: 0.1rem;
		font-feature-settings: 'palt';
		color:#fff;
		background: #00205b;
		text-align:center;
		display:inline-block;
		border-radius:30px;
		padding: 10px 20px 12px;
		margin: 19px auto 0;
	}

	#sec04 ul.no_link a{
		background: #a9a9a9;
		pointer-events: none;
		cursor: default;
	}

	#sec04 ul a span{
		font-size: 1.3rem;
		display:inline-block;
		vertical-align:text-top;
		margin: 1px -6px 0 11px;
	}

	#sec04 ul a{
		transition: all 0.5s ease 0s;
	}

	#sec04 ul a:hover{
		background:#a0107b;
	}




}



