
/*===============================================
　SP iPhone6以上（画面の横幅が761pxまで）
===============================================*/

@media (max-width:761px){


	/* ============================================================
 	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: 50%;
		top: 46%;
		transform: translate(-50%,-50%);
	}

	#main_sec_wrap h1{
		font-family: 'Noto Sans JP', sans-serif;
		font-weight: 500;
		font-size: 3.8rem;
		white-space: nowrap;
		letter-spacing: -0.1rem;
		line-height: 1;
		color: #fff;
		text-align: center;
		font-feature-settings: 'palt';
	}

	#main_sec_wrap h1 span{
		font-size: 1.8rem;
		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: 1px 8px 3px;
		margin: 3px 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{
		
	}
	
	#sec01 h2{
		font-family: 'Noto Sans JP', sans-serif;
		font-weight: 500;
		font-size: 2.4rem;
		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.8rem;
		padding:0 2px;
	}

	#sec01 h2 span.box_txt{
		width:170px;
		display:block;
		color:#A386C4;
		font-size:1.2rem;
		padding:4px 0 3px;
		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: 2px 6% 24px;
	}

	#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;
	  overflow-x: scroll;
	}
	
	#sec01 table {
	  /* width: 900px; */
	  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: 4%; */
	  font-weight: 400;
	  font-size: 1.6rem;
	}
	
	#sec01 #community table,
	#sec01 #education table{
	  width: 500px;		
	}
	
	#sec01 thead .purple-header {
	  background: #c88fb8;
	  font-weight: 400;
	  font-size: 1.6rem;
	  line-height: 1.4;
	}

	#sec01 .z_k_tr th {
		background: #d8b2cf;
		font-size: 1.5rem;
		/* width: 160px; */
	}
	
	#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 10px;
	  text-align: center;
	  color: #000;
	  white-space: nowrap;
	}
	
	#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;
		width: 4%;
		line-height: 1.4;
		padding: 0 4px;
		/* writing-mode: vertical-rl; */
		/* text-orientation: upright; */
	}
	#sec01 thead th:last-child {
	}
	
	#sec01 .tab-buttons {
	  display: flex;
	  gap: 14px 0;
	  flex-wrap: wrap;
	  margin: 35px 0 32px;
	  justify-content: space-between;
	}
	
	#sec01 .tab {
	  background: #c9caca;
	  border-radius: 10px;
	  padding: 8px 0 10px;
	  width: 49%;
	  border: none;
	  font-weight: 400;
	  font-size: 1.4rem;
	  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 10px 0;
	}

	#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.2rem;
		margin: 0 0 9px 1.2em;
		color: #545454;
		text-indent: -1em;
	}




	/* ============================================================
 	section 02
	==============================================================*/
	
	#sec02{
		width: 100%;
		padding: 100px 0 0;
		position:relative;
		background: #F5F5F5;
	}

	#sec02 .wrapper{
	padding: 0 6% 80px;
	}
	
	#sec02 h2{
		font-family: 'Noto Sans JP', sans-serif;
		font-weight: 500;
		font-size: 2.4rem;
		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.6rem;
		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 .admission-fee-table {
	  font-family: 'Noto Sans JP', sans-serif;
	  font-size: 1.5rem;
	}

	#sec02 .scroll_wrap{		
	  overflow-x: scroll;
	}
	
	#sec02 .fee-table-table {
	  /* width: 773px; */
	  border-collapse: separate;
	  border-spacing: 0;
	  font-family: 'Noto Sans JP', sans-serif;
	  font-size: 1.4rem;
	  font-weight: 400;
	  border-spacing: 4px;
	}

	#sec02 .fee-table-table thead th {
	  background-color: #a59dc7;
	  color: white;
	  padding: 12px 5px;
	  width: 6%;
	  font-weight: 400;
	  white-space: nowrap;
	}
	
	#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 10px;
	  color: #000;
	  white-space: nowrap;
	}
	
	#sec02 .fee-table-table td.deadline{
	}
	
	#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 10px !important;
	  box-sizing: border-box;
	  white-space: nowrap;
	  line-height: 1.4;
	  /* 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.2rem;
		margin: 0 0 9px 1.2em;
		color: #545454;
		text-indent: -1em;
	}



	/* ============================================================
 	section 03
	==============================================================*/
	
	#sec03{
		width: 100%;
		padding: 100px 0 0;
		position:relative;
	}

	#sec03 .wrapper{
		padding: 0 6% 70px;
	}

	
	#sec03 h2{
		font-family: 'Noto Sans JP', sans-serif;
		font-weight: 500;
		font-size: 2.4rem;
		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 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: 2px 6% 24px;
	}
	
	#sec03 .fee-table {
		display: none;
		table-layout: fixed;
	}
	
	#sec03 .fee-table.active {
	  display: block;
	  overflow-x: scroll;
	}
	#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: 1.6rem;
	}
	
	#sec03 thead .purple-header {
	  background: #c88fb8;
	  font-weight: 400;
	  font-size: 1.8rem;
	  line-height: 1.4;
	}
	
	#sec03 tbody td {
	  background: #f9f9f9;
	  line-height: 1.4;
	  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: 14px 0;
	  margin: 35px 0 32px;
	  justify-content: space-between;
	  flex-wrap: wrap;
	}
	
	#sec03 .tab {
	  background: #c9caca;
	  border-radius: 10px;
	  padding: 13px 0 15px;
	  width: 49%;
	  border: none;
	  font-weight: 400;
	  font-size: 1.4rem;
	  cursor: pointer;
	  position: relative;
	  color: #fff;
	}

	#sec03 .ouyou {
	  width: 100%;
	}
	
	#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 {
	  border-collapse: separate;
	  border-spacing: 0;
	  font-family: 'Noto Sans JP', sans-serif;
	  font-size: 1.4rem;
	  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;
	  font-weight: 500;
	  font-size: 1.5rem;
	  line-height: 1.4;
	}
	
	#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 12px;
	}


	#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.2rem;
		margin: 0 0 9px 1.2em;
		color: #545454;
		text-indent: -1em;
	}


	




	/* ============================================================
 	section 04
	==============================================================*/
	
	#sec04{
		width: 100%;
		padding: 100px 0 100px;
		background: #F5F5F5;
		position:relative;
	}

	#sec04 .wrapper{
		
	}
	
	#sec04 h2{
		font-family: 'Noto Sans JP', sans-serif;
		font-weight: 500;
		font-size: 2.4rem;
		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.6rem;
		letter-spacing: 0.1rem;
		line-height: 1.4;
		text-align:center;
		color: #000;
		font-feature-settings: 'palt';
		padding: 25px 0 22px;
	}


	#sec04 p{
		font-family: 'Noto Sans JP', sans-serif;
		font-weight: 400;
		font-size: 1.5rem;
		line-height: 1.8;
		letter-spacing:0.1rem;
		font-feature-settings: 'palt';
		padding: 12px 0 24px;
	}
	
	#sec04 .card-container {
	  justify-content: left;
	  font-family: 'Noto Sans', sans-serif;
	}
	
	#sec04 .card {
	  background-color: white;
	  border-radius: 10px;
	  display: flex;
	  flex-direction: column;
	  overflow: hidden;
	  border: 1px solid #e0e0e0;
	  margin: 0 0 39px;
	}
	
	#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: 1.6rem;
	}
	
	#sec04 .card-body {
	  padding: 19px 6% 30px;
	  color: #333;
	  font-size: 1.5rem;
	  text-align: center;
	}
	
	#sec04 .card:nth-child(3) {
	  margin-top: 24px;
	}



	#sec04 ul a{
		width: 90%;
		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: 9px 0 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;
	}

	
}



/*===============================================
　SP iPhone5サイズ対応　画面の横幅が350pxまで▼▼▼▼▼
===============================================*/

@media (max-width:349px) {
	
}

/*===============================================
　SP iPhone Plus サイズ対応　画面の横幅が415pxまで▼▼▼▼▼
===============================================*/

@media (min-width: 413px) and (max-width: 761px) {
	
}

