@charset "utf-8";

@import url('https://fonts.googleapis.com/css2?family=Noto+Sans+JP:wght@100;200;300;400;500;600;700;800;900&display=swap');


/*
	BASE
-------------------------------------------------- */
html {
	font-family: Noto Sans JP,"游ゴシック体", YuGothic, "游ゴシック Medium", "Yu Gothic Medium", "游ゴシック", "Yu Gothic", "メイリオ", sans-serif;
}

body {
	width: 100%;
	margin: 0;
	font-size: 62.5%;
}

/*
	COMMON
-------------------------------------------------- */
a {
	text-decoration: none;
	cursor: pointer;
}
a:hover {
	opacity: 0.7;
}
a:focus, *:focus {
	outline:none;
}

section {
	width: 100%;
}

img {
	max-width: 100%;
	vertical-align: middle;
}

sup {
	vertical-align:text-top;
	font-size:small;
}

li{
  list-style:none;
}

.small {
	font-size: 1.1em !important;
}

.tac {
	text-align: center !important;
}

.mb0 {
	margin-bottom: 0 !important;
}

.mt0 {
	margin-top: 0 !important;
}

.mbS {
	margin-bottom: 13px !important;
}

.txt-shadow {
  text-shadow: 0px 0px 6px rgba(255, 255, 255, 0.49)
}

/*
	FV
-------------------------------------------------- */
.main-head {
  position: relative
}

.main-head__visual {
  height: 440px;
  background: url("../img/mv_sp.jpg") center/cover no-repeat
}

@media screen and (min-width: 769px) {
  .main-head__visual {
    height: 780px;
    background: url("../img/mv_pc.jpg") center/cover no-repeat;
    background-position: center top
  }
}

.main-head__catch {
	position: absolute;
	left: 50%;
	transform: translateX(-50%);
  width: 100%;
  max-width: calc(100% - 30px);
  margin: -63px auto 30px;
  color: #fff;
  background: rgba(0, 192, 153, 0.8);
  border-radius: 10px;
  padding: 26px 26px 31px
}

@media screen and (min-width: 769px) {
  .main-head__catch {
    max-width: 500px;
    position: absolute;
    bottom: 5%;
    left: 24vw;
    margin: 0;
    padding: 30px 30px 25px
  }
}

.main-head__catch-read {
  font-size: 25px;
	font-family: "Hiragino Sans W7";
  letter-spacing: 0;
  line-height: 1.2;
}

.main-head__catch-read .small {
  font-size: 18px !important;
}

.main-head__catch-read .big {
  font-size: 30px !important;
}

.main-head__catch-body {
  font-size: 1.1rem;
  line-height: 1.73;
  font-weight: 600;
  margin-top: 10px;
  letter-spacing: 0.02em
}
.is-pc{
	display: none;
}

@media screen and (min-width: 769px) {
  .main-head__catch-body {
    font-size: 0.8rem;
  }

	.main-head__catch-read {
		font-size: 37px;
		letter-spacing: 0;
		line-height: 1.2;
	}

	.main-head__catch-read .small {
  font-size: 30px !important;
}

.main-head__catch-read .big {
  font-size: 52px !important;
}

}

.main-head__catch-note {
  font-size: 1rem;
  margin-top: 17px;
	line-height: 1.5;
}


.main-head__catch-num-wrap {
  font-size: 70px;
  display: inline-flex;
  align-items: baseline;
  letter-spacing: -0.095em;
  line-height: 1;
	margin-left: -10px;
}

.main-head__catch-num-wrap .par {
  font-size: 40px;
  position: relative;
}

.main-head__catch-num sup {
  position: absolute;
  right: 0;
  top: -37%;
  font-size: 14px;
}

@media screen and (max-width: 768px) {
  .main-head__catch-num {
    top: 17%;
    left: 40%;
  }

  .main-head__catch-num-wrap {
    font-size: 45px;
		margin-left: -7px;
		letter-spacing: -0.065em;
  }

  .main-head__catch-num-wrap .par {
    font-size: 30px;
  }

  .main-head__catch-num sup {
		top: 10%;
    font-size: 12px;
  }
}


.main-head__visual {
  position: relative;
}

.main-head__visual img {
  width: 54%;
  position: absolute;
  top: 12%;
  left: 8%;
  max-width: 800px;
}

@media screen and (max-width: 800px) {

  .main-head__visual img {
    display: none;
  }

	.main-head {
		min-height: 850px;
	}
}



/*
	base
-------------------------------------------------- */

.content{
	width: 1036px;
	margin: auto;
}

.content h2{
	font-size: 3.6em;
	line-height: 1.53;
	font-weight: 900;
	color: #1D2285;
	margin: auto;
	text-align: center;
}

.content p{
	font-size: 1.6em;
	line-height: 2;
	color: #000;
	margin: auto;
}


@media (max-width:820px) {
	.content{
		width: 100%;
		margin: auto;
	}

	.content h2{
		font-size: 2.4em;
		line-height: 1.458;
		font-weight: 900;
		color: #1D2285;
		margin: auto;
		text-align: center;
	}

	.content p{
		font-size: 1.4em;
		line-height: 1.785;
		color: #000;
		margin: auto;
	}

}



/*
	sec01
-------------------------------------------------- */

.sec01{
	margin: 77px auto 80px;
}

.sec01 .wrap_all{
	display: flex;
	justify-content: space-between;
	align-items: center;
	margin-top: 10px;
}

.sec01 .wrap_all div:nth-of-type(1){
	width: 492px;
	margin-left: 70px;
}

.sec01 .wrap_all div:nth-of-type(2){
	width: 402px;
	margin-right: 40px;
}

.sec01 .wrap_all div:nth-of-type(1) p{
	margin-top: 20px;
	font-size: 1.55em;
}

.sec01 .wrap_all div:nth-of-type(1) img{
	width: 326px;
	margin-bottom: 10px;
}


@media (max-width:820px) {
	.sec01{
		margin: 40px auto 40px;
	}

	.sec01 .wrap_all{
		display: block;
		margin-top: 15px;
	}

	.sec01 .wrap_all div:nth-of-type(1){
		width: 86%;
		margin: auto;
	}

	.sec01 .wrap_all div:nth-of-type(2){
		width: 100%;
		margin: 10px 0 0;
	}

	.sec01 .wrap_all div:nth-of-type(1) p{
		margin-top: 20px;
	}

	.sec01 .wrap_all div:nth-of-type(1) img{
		width: 100%;
		margin-top: 5px;
		margin-bottom: 0px;
	}

}




/*
	sec02
-------------------------------------------------- */

.sec02{
	margin: 101px auto;
	background: #F4F4F4;
	position: relative;
	padding: 40px 0;
}

.sec02::before{
	content: url(../img/bg_top.svg);
	position: absolute;
  top: -101px;
}

.sec02::after{
	content: url(../img/bg_bottom.svg);
	position: absolute;
  bottom: -101px;
}

.sec02 .wrap_all{
}


.slider {
  /*overflow-y: auto;*/
  width: 836px;
  margin: 30px auto 0;
}
.slider table {
  margin: 0 auto;
  padding: 0;
	border-collapse:collapse;
}

.slider table p{
	font-size: 1.6em;
}

.slider th{
	font-size: 1.6em;
	background: #1D2285;
	color: #fff;
	font-weight: bold;
	width: 134px;
	text-align: center;
	border-bottom: #6C6FB0 solid 1px;
}

.slider tr:nth-of-type(1) td{
	text-align: center;
	font-weight: 800;
	font-size: 1.6em;
}

.slider tr:nth-of-type(4) td{
	border: none;
}

.slider tr:nth-of-type(1) td:nth-of-type(1){
	color: #242888;
}

.slider td:nth-of-type(1){
	background: #E8F6FA;
	border-bottom: #C3D8D9 solid 1px;
	padding: 20px;
	width: 350px;
	box-sizing: border-box;
	font-weight: 500;
}

.slider td:nth-of-type(2){
	background: #fff;
	border-bottom: #D5D5D6 solid 1px;
	padding: 20px;
	width: 350px;
	box-sizing: border-box;
	font-weight: 300;
}






@media (max-width:820px) {
	.sec02{
		margin: 50px auto;
		background: #F4F4F4;
		position: relative;
		padding: 40px 20px 20px;
		width: 100%;
	}

	.sec02::before{
		content: "";
		position: absolute;
	  top: -50px;
		display: inline-block;
	  width: 100%;
	  height: 50px;
	  background-image: url(../img/bg_top.svg);
	  background-size:cover;
		background-position: top;
		left: 0;
	}

	.sec02::after{
		content: "";
    position: absolute;
    bottom: -50px;
    display: inline-block;
    width: 100%;
    height: 50px;
		left: 0;
    background-image: url(../img/bg_bottom.svg);
    background-size:cover;
	}
	.slider {
	  overflow-y: auto;
	  width: 95%;
	  margin: 30px 0 0 5%;
	}



	  .slider table {
	  }
	  .slider th, .slider td {
	  }

		.slider th{
			width: 20px;
			padding: 10px;
			font-size: 1.4em;
			line-height: 1.3;
		}

		.slider td{
			white-space:nowrap;
		}

		.slider td p{
			font-size: 1.5em;
			width: 230px;
			white-space:normal;
		}

		.slider th{
	    z-index: 100;
	  }



	  .slider tr th:first-child {
	    position: sticky;
	    position: -webkit-sticky;
	    top: 0;
	    left: 0;
	  }


	  .slider tr:first-child th:before,
	  .slider tr th:first-child:before {
	    content: "";
	    position: absolute;
	    top: -1px;
	    left: -1px;
	  }



}




/*
	sec03
-------------------------------------------------- */

.sec03{
	margin: auto;
	padding: 80px 0 60px;
	text-align: center;
}

.content p.sec03_lead{
	font-size: 1.6em;
	line-height: 2;
	text-align: center;
	margin: 30px auto;
}

.sec03 .wrap_all{
	display: flex;
	justify-content: space-between;
	align-items: top;
	margin: 40px auto 0;
	width: 1036px;
}

.sec03 .wrap_all div.shadow{
	width: 328px;
	text-align: center;
	padding: 20px 15px 30px;
}
.sec03 .wrap_all div.shadow{
	box-shadow: 0 0px 30px 0 rgba(0, 0, 0, .08);
}


.sec03 .wrap_all div h3{
	font-size: 1.7em;
	color: #1D2285;
	margin-bottom: 13px;
	letter-spacing: -0.01em;
}

.sec03 .wrap_all div p{
	font-size: 1.4em;
	text-align: left;
	margin-top: 10px;
}

.wrap_all .shadow .sec03_no{
	width: 24px;
	margin: 8px auto 23px;
}

.sec03-ttl {
	min-height: 70px;
}



@media (max-width:820px) {

	.sec03{
		margin: auto;
		padding: 30px 0 50px;
		text-align: center;
	}

	.content p.sec03_lead{
		font-size: 1.4em;
		line-height: 1.8;
		text-align: left;
		margin: 25px 7%;
	}

	.sec03 .wrap_all{
		display: block;
		margin: 40px auto 0;
		width: 100%;
	}

	.sec03 .wrap_all div{
		width: 90%;
		text-align: center;
		padding: 15px 15px 30px;
		margin: 0 auto 0;
	}

	.sec03 .wrap_all div.shadow{
		box-shadow: 0 0px 30px 0 rgba(0, 0, 0, .08);
	}

	.sec03 .wrap_all div.shadow:not(:last-child) {
		margin-bottom: 30px;
	}


	.sec03 .wrap_all div h3{
		font-size: 1.7em;
		color: #1D2285;
		margin-bottom: 13px;
		letter-spacing: -0.01em;
	}

	.sec03 .wrap_all div p{
		font-size: 1.4em;
		text-align: left;
		margin-top: 10px;
	}

	.wrap_all .shadow .sec03_no{
		width: 24px;
		margin: 10px auto 10px;
		padding: 0;
	}
	.sec03-ttl {
		min-height: auto;
		padding: 0 !important;
	}
}




/*
	wh
-------------------------------------------------- */
.wh{
	margin: 101px auto;
	background: #F4F4F4;
	position: relative;
	padding: 40px 0;
}

.wh::before{
	content: url(../img/bg_top.svg);
	position: absolute;
  top: -101px;
}

.wh::after{
	content: url(../img/bg_bottom.svg);
	position: absolute;
  bottom: -101px;
}
.hidden{
	overflow: hidden;
}

.wh_wrap{
	text-align: center;
}
.wh_wrap01 p{
	font-size: 18px;
	width: 80%;
	text-align: left;
}
.wh h2 {
	font-size: 3.6em;
	line-height: 1.53;
	font-weight: 900;
	color: #1D2285;
	margin: auto;
	text-align: center;
	margin-bottom: 40px;
}
.wh img {
	max-width: 900px;
}
.wh_img01{
	margin: 40px 0 60px;
}
.wh_wrap02_img{
	margin-top: 40px;
}
.wh_h2_bt{
	font-size: 1.5em;
}

.wh_list {
	font-size: 0;
	display: flex;
	flex-wrap: wrap;
	margin: 60px auto 0;
	justify-content: center;
}
.wh_point01 {
	width: 40%;
	padding: 25px 15px;
	background: #fff;
	border-radius: 8px;
	text-align: center;
	margin: 0px 10px 10px 0;
}
.wh_point01 img {
	width: 45%;
}
.wh_point01 h4 {
	color: #000;
	font-size: 18px;
	line-height: 1.25;
	margin: 25px auto 10px;
}
.wh_point01 p {
	font-size: 16px;
	line-height: 1.7;
}

.wh_point02 {
	width: calc(20% - 5px);
	padding: 20px 10px;
	background: #fff;
	border-radius: 8px;
	text-align: center;
	margin: 0px 10px 10px 0;
	display: inline-block;
}
.wh_point02 img {
	width: 70%;
}
.wh_point02 h4 {
	color: #000;
	font-size: 18px;
	line-height: 1.25;
	margin: 25px auto 10px;
}
.wh_point02 p {
	font-size: 16px;
	line-height: 1.7;
	text-align: left;
}
.wh_list img{
	margin: 0;
}
.wh_wrap02 {
	width: 900px;
	padding: 0px 30px;
	text-align: center;
	margin: 60px auto 30px;
	display: grid;
	grid-template-columns: repeat(2,1fr);
	gap: 40px;
}
.wh_wrap02 p{
	font-size: 3.2em;
	line-height: 1.7;
	font-weight: 900;
	color: #1D2285;
	margin: auto;
	text-align: center;
	position: relative;
	margin-bottom: 20px;
}
.wh_wrap02 p::after{
		content: '';
		position: absolute;
		background: #1D2285;
		top: 0;
		right: 0;
		height: 2px;
		width: 100%;
}
.wh_wrap02 p::before{
		content: '';
		position: absolute;
		background: #1D2285;
		bottom: 0;
		right: 0;
		height: 2px;
		width: 100%;
}
.wh-border{
	font-size: 24px !important;
	padding: 2px 0;
}
.wh_wrap02_ttl {
	width: 70%;
	margin: 0px auto 20px;
}
.wh_wrap02 li {
	list-style: none;
	text-align: left;
	font-size: 16px;
	line-height: 1.7;
	position: relative;
	padding-left: 10px;
}
.wh_wrap02 li::before {
	content: "";
	background: #18D0B3;
	width: 5px;
	height: 5px;
	overflow: hidden;
	display: inline-block;
	margin-right: 7px;
	top: 11.5px;
	position: absolute;
	left: -1px;
}
.wh_wrap02_img{
	text-align: center;
}
.wh_major{
	margin: auto;
  text-align: center;
	position: relative;
	margin-bottom: 170px;
}
.wh_major h2 {
	font-size: 3.6em;
	line-height: 1.53;
	font-weight: 900;
	color: #1D2285;
	margin: auto;
	text-align: center;
}
.major_wrap2{
	margin-top: 60px;
	max-width: 1036px;
	margin: 40px auto 0;
	display: grid;
	grid-template-columns: repeat(3,1fr);
	gap: 20px;
}
.major_wrap2_item {
	padding: 40px;
	background: #fff;
	border-radius: 3px;
  box-shadow: 0px 5px 15px 0px rgba(0, 0, 0, 0.15);
}
.wh_sb{
	font-size: 2.8em;
	line-height: 1.53;
	font-weight: 900;
	color: #1D2285;
	margin: auto;
	text-align: center;
}
.wh_sb_min{
	font-size: .6em;
}
.major_txt{
	font-size: 1.8em;
	margin: 40px auto;
	text-align: left;
}
.major_btn{
	background: #1D2285;
	color: #fff;
	padding: 10px;
	border-radius: 100px;
	font-size: 1.8em;
	display: block;
	width: 250px;
	margin: 0 auto;
	font-weight: bold;
}
.br_sp{
	display: none;
}

@media (max-width:820px){
	.wh{
		margin: 50px auto;
		background: #F4F4F4;
		position: relative;
		padding: 40px 20px 20px;
		width: 100%;
	}

	.wh::before{
		content: "";
		position: absolute;
	  top: -50px;
		display: inline-block;
	  width: 100%;
	  height: 50px;
	  background-image: url(../img/bg_top.svg);
	  background-size:cover;
		background-position: top;
	}

	.wh::after{
		content: "";
    position: absolute;
    bottom: -50px;
    display: inline-block;
    width: 100%;
    height: 50px;
		left: 0;
    background-image: url(../img/bg_bottom.svg);
    background-size:cover;
	}
	.br_sp{
		display: block;
	}
	.wh h2{
		font-size: 2.4em;
		margin-top: 0;
		margin-bottom: 20px;
	}
	.wh_h2_bt{
		font-size: 1.4em;
	}
	.wh_wrap01{
		margin-top: 0;
	}
	.wh_wrap01 p{
		font-size: 1.6em;
		width: 100%;
	}
	.wh img{
		width: 100%;
	}
	.wh_list{
		column-gap: 10px;
		margin-top: 30px;
	}
	.wh_wrap02 li{
		line-height: 1.9;
	}
	.wh_point01{
		width: 100%;
		margin: 0 0 10px 0;
	}
	.wh_point01 img{
		max-width: 140px;
		margin: 0;
		width: 70%;
	}
	.wh_point02{
		width: 48%;
		margin: 0;
		margin-bottom: 10px;
	}
	.wh_point02 img{
		max-width: 140px;
		margin: 0;
		width: 70%;
	}
	.wh_point01 h4,.wh_point02 h4{
		font-size: 14px;
		font-weight: bold;
		margin-bottom: 8px;
		margin-top: 10px;
	}
	.wh_point01 p,.wh_point02 p{
		font-weight: bold;
		font-size: 12px;
	}
	.wh_wrap02{
		grid-template-columns: 1fr;
		margin-top: 20px;
		max-width: 100%;
		gap: 30px;
		padding: 0;
	}
	.wh_wrap02 li::before {
		top: 13.5px;
	}
	.wh-border{
		font-size: 18px !important;
		margin-bottom: 15px;
	}
	.wh_wrap02 p{
		margin-bottom: 20px;
		font-size: 2.4em;
	}
	.wh_img01{
		margin: 30px auto 50px;
	}
	.wh_wrap02_img{
		width: 90%;
		margin: 40px auto 0;
	}
	.wh_major {
		margin-bottom: 90px;
	}
	.wh_major h2{
		font-size: 24px;
	}
	.major_wrap2{
		display: block;
		margin-top: 25px;
	}
	.major_wrap2_item{
		width: 90%;
		padding: 30px;
		margin: 0 auto;
	}
	.major_wrap2_item:not(:last-child) {
		margin-bottom: 30px;
	}
	.wh_sb {
		font-size: 22px;
	}
	.major_txt {
		margin: 15px 0 25px;
	}
	.major_btn {
		font-size: 15px;
	}
}

/* モーダル */
.modal {
  display: none;
  position: fixed;
  top: 0;
  left: 0;
  z-index: 99;
  width: 100%;
  height: 100vh;
}

.modal-bg {
  background: rgba(0, 0, 0, 0.8);
  position: absolute;
  width: 100%;
  height: 100%;
}

.modal-content {
  position: absolute;
  top: 50%;
  left: 50%;
  -webkit-transform: translate(-50%, -50%);
          transform: translate(-50%, -50%);
  background: #fff;
  padding: 50px;
}

.modal-close {
  position: absolute;
  top: 0;
  right: 0;
  width: 40px;
  height: 40px;
  background-color: #1D2285;
  color: #fff;
  font-size: 30px;
  font-weight: bold;
  line-height: 1;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
}

@media (max-width: 800px) {
  .modal-content {
    padding: 30px 20px;
    height: 80%;
		width: 90%;
		top: 46%;
  }
  .modal-content-inr {
    overflow: scroll;
    height: 100%;
  }
  .modal-close {
    width: 30px;
    height: 30px;
    font-size: 24px;
  }
}

.modal_grade_list li {
  list-style: none
}

.modal_grade_list {
	display: grid;
	grid-template-columns: repeat(2,1fr);
	gap: 20px;
	font-size: 20px;
	margin: 0 auto 20px;
	font-weight: bold;
	max-width: 600px;
	border: 2px solid #1D2285;
	padding: 30px;
}

.modal_grade {
	background: #1D2285;
	color: #fff;
	font-size: 24px;
	padding: 5px 10px;
	display: inline-block;
	font-weight: bold;
}

.modal-txt {
	font-size: 18px;
	font-weight: bold;
	margin-bottom: 30px;
}

.modal-subttl {
	color: #1D2285;
	font-size: 18px;
	font-weight: bold;
	margin-bottom: 10px;
}

.modal-subtxt {
	font-size: 16px;
	font-weight: bold;
	margin-bottom: 30px;
}

.modal-note {
	font-size: 15px;
	font-weight: bold;
}

@media (max-width: 800px) {
	.modal_grade {
		font-size: 20px;
	}
	.modal_grade_list {
		padding: 15px;
		font-size: 18px;
		gap: 5px;
		grid-template-columns: 1fr;
		margin-bottom: 15px;
	}
	.modal-txt {
		margin-bottom: 20px;
		font-size: 14px;
	}
	.modal-subttl {
		font-size: 17px;
	}
	.modal-subtxt {
		font-size: 14px;
		margin-bottom: 15px;
	}
}
/*
	sec05
-------------------------------------------------- */

.sec05{
	margin: auto;
	padding: 100px 0 40px;
	text-align: center;
}

.sec05 h2 span{
	font-size: 0.4em;
	font-weight: normal;
	display: block;
	margin-bottom: 5px;
}

.content p.sec05_lead{
	font-size: 1.6em;
	line-height: 2;
	text-align: center;
	margin: 30px auto 47px;
}

.sec05_img01{
	width: 287px;
}

.sec05 .wrap_all{
	display: flex;
	justify-content: space-between;
	align-items: top;
	margin: 50px auto 0;
	width: 945px;
}



.sec05 .wrap_all div h3{
	font-size: 2.0em;
	color: #1D2285;
	margin-bottom: 13px;
	letter-spacing: -0.01em;
}

.sec05 .wrap_all div h3 span{
	background-color: #FFFF00;
	display: inline-block;
	padding: 0 5px;
}

.sec05 .wrap_all div img{
	width: 235px;
}

.sec05 .wrap_all div p{
	font-size: 1.4em;
	text-align: left;
	margin-top: 10px;
	width: 235px;
}

.sec05-rate {
	position: relative;
	display: flex;
	flex-direction: column;
	padding-top: 50px;
}

.sec05-rate::before {
	position: absolute;
	content: "";
	background: #EDF7FD;
	width: 300px;
	height: 300px;
	border-radius: 50%;
	left: 50%;
	top: 0;
	transform: translateX(-50%);
	z-index: -1;
}

.sec05-num-txt {
	font-size: 5em;
	color: #1D2285;
	font-weight: 600;
	letter-spacing: .1em;
}

.sec05-num-wrap {
	font-size: 10em !important;
	font-weight: 900;
	color: #D91112 !important;
	margin-top: -5% !important;
}

.sec05-num-wrap .par {
	font-size: 3rem;
	margin-left: -8%;
	position: relative;
}

.sec05-num-wrap .par sup {
	position: absolute;
	right: 0;
	top: -15%;
	font-size: 15px;
}

.sec05-note {
	color: #1D2285 !important;
	font-weight: bold;
	margin-top: 5% !important;
}

@media (max-width:820px) {

	.sec05{
		margin: auto;
		padding: 30px 0;
		text-align: center;
	}

	.sec05 h2 span{
		font-size: 0.6em;
		font-weight: bold;
		display: block;
		margin-bottom: 5px;
	}

	.content p.sec05_lead{
		font-size: 1.4em;
		line-height: 1.8;
		text-align: left;
		margin: 25px 7%;
	}

	.sec05_img01{
		width: 65%;
	}


	.sec05 .wrap_all{
		display: block;
		margin: 40px auto 0;
		width: 100%;
	}

	.sec05 .wrap_all div{
		width: 100%;
		text-align: center;
		padding: 15px 15px 0;
		margin: 0 auto 30px;
	}

	.sec05 .wrap_all div h3{
		font-size: 2.0em;
		color: #1D2285;
		margin-bottom: 13px;
		letter-spacing: -0.01em;
	}

	.sec05 .wrap_all div p{
		font-size: 1.4em;
		text-align: left;
		margin-top: 10px;
		width: 65%;
	}


	.sec05 .wrap_all div img{
		width: 65%;
	}

	.sec05-rate {
		padding-top: 30px;
	}
	
	.sec05-rate::before {
		width: 220px;
		height: 220px;
	}
	
	.sec05-num-txt {
		font-size: 4em;
	}
	
	.sec05-num-wrap {
		font-size: 7em !important;
		margin-top: -5% !important;
		padding-left: 1%;
	}
	
	.sec05-num-wrap .par {
		font-size: 2rem;
		margin-left: -10%;
	}
	
	.sec05-num-wrap .par sup {
		top: -25%;
		font-size: 13px;
	}
	
	.sec05-note {
		margin-top: 10% !important;
		width: 90%;
		text-align: left;
	}

}




/*
	sec06
-------------------------------------------------- */

.sec06{
	margin: 101px auto;
	background: #F4F4F4;
	position: relative;
	padding: 40px 0 30px;
}

.sec06 h2 span{
	font-size: 0.4em;
	font-weight: bold;
	display: block;
	margin-bottom: 5px;
}

.content p.sec06_lead{
	font-size: 1.6em;
	line-height: 2;
	text-align: center;
	margin: 30px auto 47px;
}


.sec06::before{
	content: url(../img/bg_top.svg);
	position: absolute;
  top: -101px;
}

.sec06::after{
	content: url(../img/bg_bottom.svg);
	position: absolute;
  bottom: -101px;
}

.sec06 .wrap_all{
	display: flex;
	justify-content: space-between;
	align-items: top;
	margin: 50px auto 0;
	width: 918px;
}

.sec06 .wrap_all div{
	width: 285px;
	text-align: center;
}

.sec06 .wrap_all div h3{
	font-size: 2.0em;
	color: #1D2285;
	margin-bottom: 10px;
}

.sec06 .wrap_all div p{
	font-size: 1.4em;
	line-height: 1.76;
	margin-top: 10px;
	text-align: left;
}


@media (max-width:820px) {
	.sec06{
		margin: 0px auto;
		background: #F4F4F4;
		position: relative;
		padding: 40px 0 20px;
		width: 100%;
	}

	.sec06::before{
		content: "";
		position: absolute;
	  top: -50px;
		display: inline-block;
	  width: 100%;
	  height: 50px;
	  background-image: url(../img/bg_top.svg);
	  background-size:cover;
		background-position: top;
	}

	.sec06::after{
		content: "";
    position: absolute;
    bottom: -50px;
    display: inline-block;
    width: 100%;
    height: 50px;
    background-image: url(../img/bg_bottom.svg);
    background-size:cover;
	}

	.sec06 h2 span{
		font-size: 0.6em;
		font-weight: bold;
		display: block;
		margin-bottom: 5px;
	}

	.content p.sec06_lead{
		font-size: 1.4em;
		line-height: 1.8;
		text-align: left;
		margin: 25px 7%;
	}

	.sec06 .wrap_all{
		display: block;
		margin: 0px auto 0;
		width: 75%;
	}

	.sec06 .wrap_all div{
		width: 100%;
		text-align: center;
	}

	.sec06 .wrap_all div h3{
		font-size: 2.0em;
		color: #1D2285;
		margin: 35px auto 12px;
		position: relative;
		width: 96%;
	}


}






/*
	characters
-------------------------------------------------- */


.p-characters {
	  background: #F4F4F4;
    position: relative;
		padding: 30px 0;
		margin: 100px auto 100px;
}

.p-characters::before{
	content: url(../img/bg_top.svg);
	position: absolute;
  top: -101px;
}

.p-characters::after{
	content: url(../img/bg_bottom.svg);
	position: absolute;
  bottom: -101px;
}

.p-characters-cont {
    position: absolute;
    top: -28px;
    left: 0;
    font-size: 160px;
    line-height: 140px;
    font-family: 'Poppins', sans-serif;
    font-weight: 700;
    color: #FFFFFF;
}

.p-characters-cont--features {
    top: 182px;
    left: -35px;
    color: #F7F8FA;
    z-index: -1;
    font-size: 237px;
    line-height: 332px;
    letter-spacing: 0;
}

.p-characters-cont--parents {
    color: #F7F8FA;
}

@media screen and (max-width:820px) {
		.p-characters{
			margin: 20px auto 60px;
			background: #F4F4F4;
			position: relative;
			padding: 30px 0 20px;
			width: 100%;
		}
    .p-characters-cont {
        top: -13px;
        left: -44px;
        font-size: 100px;
        -webkit-writing-mode: vertical-rl;
        -ms-writing-mode: tb-rl;
        writing-mode: vertical-rl;
        -webkit-text-orientation: sideways;
        text-orientation: sideways;
    }

    .p-characters-cont--alt {
        left: -36px;
    }

    .p-characters-cont--features {
        top: 197px;
        left: -42px;
        font-size: 100px;
        line-height: 140px;
    }
		.p-characters::before{
			content: "";
			position: absolute;
			top: -50px;
			display: inline-block;
			width: 100%;
			height: 50px;
			background-image: url(../img/bg_top.svg);
			background-size:cover;
			background-position: top;
		}

		.p-characters::after{
			content: "";
			position: absolute;
			bottom: -50px;
			display: inline-block;
			width: 100%;
			height: 50px;
			background-image: url(../img/bg_bottom.svg);
			background-size:cover;
		}
}

.top-vantan {
    position: relative;
    margin: 0 auto;
    max-width: 924px;
    box-sizing: border-box;
}

@media screen and (max-width:820px) {
    .top-vantan {
        max-width: 90%;
    }
}

.top-vantan__logo {
    width: 200px;
    margin: 0 auto;
}

@media screen and (max-width:820px) {
    .top-vantan__logo {
        width: 140px;
    }
}

.top-vantan__title {
    margin-top: 30px;
    font-size: 40px;
    line-height: 1;
    font-weight: 700;
    text-align: center;
}

@media screen and (max-width:820px) {
    .top-vantan__title {
        margin-top: 8px;
        font-size: 28px;
        line-height: 42px;
    }
}

.top-vantan__lead {
    margin-top: 38px;
    text-align: center;
}

@media screen and (max-width:820px) {
    .top-vantan__lead {
        margin-top: 32px;
        padding: 5px;
        text-align: left;
    }
}

.top-vantan__items {
    margin-top: 40px;
}

@media screen and (max-width:820px) {
    .top-vantan__items {
        margin-top: 33px;
    }

}

.top-vantan__item {
    width: 32.09%;
    padding: 30px;
    border-radius: 4px;
    background-color: #fff;
    box-sizing: border-box;
    text-align: center;
    display: flex;
    flex-flow: column;
    justify-content: center;
}

@media screen and (max-width:820px) {
    .top-vantan__item {
        width: 100%;
        padding: 24px;
    }
}

.top-vantan__item:not(:first-child) {
    margin-left: 1.86%;
}

@media screen and (max-width:820px) {
    .top-vantan__item:not(:first-child) {
        margin-top: 8px;
        margin-left: 0;
    }
}

@media screen and (min-width : 768px) {
    .top-vantan__item:nth-child(4) {
        margin-left: 0px;
    }

    .top-vantan__item:nth-child(n + 4) {
        margin-top: 16px;
    }
}

.top-vantan-sub {
    font-size: 16px;
    line-height: 24px;
}

@media screen and (max-width:820px) {
    .top-vantan-sub {
        font-size: 14px;
        line-height: 20px;
    }
}

.top-vantan-em {
    margin-top: 10px;
    font-size: 32px;
    line-height: 40px;
    font-weight: 900;
    color: #1D2285;
    text-align: center;
}

@media screen and (max-width:820px) {
    .top-vantan-em {
        font-size: 32px;
        line-height: 47px;
    }
}

.top-vantan-em > span {
    display: inline-block;
    font-size: 24px;
    line-height: 1;
    font-weight: 900;
}

.top-vantan-note {
    margin-top: 8px;
    font-size: 12px;
    line-height: 17px;
}

@media screen and (max-width:820px) {
    .top-vantan-note {
        margin-top: 0;
    }
}

.top-vantan__kadokawa {
    margin: 80px auto 20px;
    width: 233px;
}

@media screen and (max-width:820px) {
    .top-vantan__kadokawa {
        margin: 57px auto 10px;
    }
}

.top-vantan__catch {
    margin-top: 37px;
    text-align: center;
    font-size: 24px;
    line-height: 36px;
    font-weight: 700;
}

@media screen and (max-width:820px) {
    .top-vantan__catch {
        padding: 0 16px;
        margin-top: 32px;
        font-size: 20px;
        line-height: 30px;
    }
}

.top-vantan__lead {
    margin-top: 24px;
    text-align: center;
}

@media screen and (max-width:820px) {
    .top-vantan__lead {
				margin-top: 10px;
        text-align: left;
    }
}

.top-vantan-btn {
    margin-top: 24px;
}

@media screen and (max-width:820px) {
    .top-vantan-btn {
        margin-top: 40px;
    }
}
.l-bg-gray {
    background-color: #F7F8FA;
}
.c-text {
    font-size: 16px;
    line-height: 2;
    letter-spacing: 0;
}

.c-text--intro {
    margin-top: 36px;
    text-align: center;
}

@media screen and (max-width:820px) {
    .c-text {
        font-size: 14px;
    }

    .c-text--intro {
        margin-top: 20px;
        text-align: left;
    }
}

@media screen and (min-width : 768px) {
    .c-flex {
        display: flex;
    }

    .c-flex--jc-sb {
        justify-content: space-between;
    }

    .c-flex--jc-center {
        justify-content: center;
    }

    .c-flex--ai-fs {
        align-items: flex-start;
    }

    .c-flex--ai-ct {
        align-items: center;
    }

    .c-flex--wrap {
        flex-wrap: wrap;
    }
}


.top-vantan-em > span {
    font-size: 32px;
}

@media screen and (max-width:820px) {
    .u-pcOnly {
        display: none!important;
    }
}

@media screen and (min-width : 768px) {
    .u-spOnly {
        display: none!important;
    }
}




/*
	sec07
-------------------------------------------------- */

.sec07{
	background: #F4F4F4;
	position: relative;
	padding: 30px 0;
	margin: 100px auto 100px;
}

.sec07::before{
	content: url(../img/bg_top.svg);
	position: absolute;
  top: -101px;
}

.sec07::after{
	content: url(../img/bg_bottom.svg);
	position: absolute;
  bottom: -101px;
}

.sec07 .wrap_all{
	display: flex;
	justify-content:center;
	align-items: top;
	margin: 40px auto 0;
	width: 1036px;
}

.sec07 .wrap_all div.shadow{
	width: 325px;
	text-align: center;
	padding: 30px 15px 30px;
	margin: 0 15px;
}

.sec07 .wrap_all div.shadow{
	box-shadow: 0 0px 30px 0 rgba(0, 0, 0, .08);
}


.sec07 .wrap_all div h3{
	font-size: 1.8em;
	color: #1D2285;
	margin-bottom: 13px;
	letter-spacing: -0.01em;
}

.sec07 .wrap_all div p{
	font-size: 1.4em;
	text-align: left;
	margin-top: 10px;
}

.wrap_all .shadow .sec07_no{
	font-size: 2.2em;
	font-weight: 900;
	color: #002076;
	padding-bottom: 15px;
	position: relative;
	margin-bottom: 15px;
}

.wrap_all .shadow .sec07_no span{
	font-size: 0.6em;
	font-weight: 500;
	display: block;
}

.wrap_all .shadow .sec07_no::after {
    content: "";
    width: 20px;
    border-bottom: #002076 solid 2px;
    position: absolute;
    bottom: 0;
    left: 50%;
		transform: translateX(-50%);
}




@media (max-width:820px) {
	.sec07{
		margin: 20px auto 60px;
		background: #F4F4F4;
		position: relative;
		padding: 30px 0 20px;
		width: 100%;
	}

	.content .sec07 h2 {
	    font-size: 2.7em;
	}


	.sec07::before{
		content: "";
		position: absolute;
	  top: -50px;
		display: inline-block;
	  width: 100%;
	  height: 50px;
	  background-image: url(../img/bg_top.svg);
	  background-size:cover;
		background-position: top;
	}

	.sec07::after{
		content: "";
    position: absolute;
    bottom: -50px;
    display: inline-block;
    width: 100%;
    height: 50px;
    background-image: url(../img/bg_bottom.svg);
    background-size:cover;
	}

	.sec07 .wrap_all{
		display: block;
		margin: 20px auto 0;
		width: 100%;
	}

	.sec07 .wrap_all div{
		width: 100%;
		text-align: center;
		padding: 5px 15px 20px;
		margin: 0 auto 30px;
	}

	.sec07 .wrap_all div.shadow{
		margin: 0 auto 40px;
	}

	.sec07 .wrap_all div.shadow{
		box-shadow: 0 0px 30px 0 rgba(0, 0, 0, .08);
	}

	.sec07 .wrap_all div:nth-of-type(2).shadow{
		margin: 0 auto 0px;
	}



	.sec07 .wrap_all div h3{
		font-size: 1.7em;
		color: #1D2285;
		margin-bottom: 18px;
		letter-spacing: -0.01em;
	}

	.sec07 .wrap_all div p{
		font-size: 1.4em;
		text-align: left;
		margin-top: 10px;
	}

	.wrap_all .shadow .sec07_no{
		margin-bottom: 15px;
		padding-bottom: 10px;
	}

	.sec07 .wrap_all div.shadow{
		width: 90%;
		text-align: center;
		padding: 30px 15px 30px;
		margin: 0 15px;
	}

	.sec07 .wrap_all div.shadow:not(:last-child) {
		margin-bottom: 30px;
	}


	.wrap_all .shadow .sec07_no::after {
	    content: "";
	    width: 20px;
	    border-bottom: #002076 solid 2px;
	    margin: 20px auto 30px;
	    position: absolute;
	    bottom: -30px;
	    left: 50%;
	}


}





/*
	sec08
-------------------------------------------------- */

.sec08{
	margin: 0px auto;
	padding: 90px 0 30px;
}

.sec08 h2 span{
	font-size: 0.45em;
	font-weight: bold;
	display: block;
	margin-top: 30px;
}

.sec08 h3{
	font-size: 2.2em;
	font-weight: bold;
	display: block;
	margin-bottom: 22px;
	color: #1D2285;
	line-height: 1.7;
}

.sec08 .wrap_all{
	display: flex;
	justify-content: space-between;
	margin: 60px auto 0;
	width: 985px;
}

.sec08 .wrap_all p{
	font-size: 1.4em;
	line-height: 1.7;
}

.sec08 .wrap_all p.sec08_name01{
	margin: 20px 10px 0;
}

.sec08 .wrap_all p.sec08_name02{
	font-size: 2.0em;
	font-weight: bold;
	margin: 0px 10px 25px;
}

.sec08_prof{
	border: #E0E0E0 solid 1px;
	padding: 23px 20px;
}

.sec08 .sec08_prof p {
	font-size: 1.3em;
}

.sec08 p.sec08_prof_ttl {
	font-size: 1.8em;
	font-weight: bold;
	margin: 0px 0px 10px;
}

.sec08 .wrap_all div:nth-of-type(1){
	width: 325px;
}

.sec08 .wrap_all div:nth-of-type(2){
	width: 608px;
}






@media (max-width:820px) {
	.sec08{
		margin: 0px auto 0px;
		padding: 30px 0 30px;
	}

	.sec08 h2{
		font-size: 2.7em;
		font-weight: bold;
		display: block;
		margin-top: 0px;
	}

	.sec08 h2 span{
		font-size: 0.7em;
		font-weight: bold;
		display: block;
		margin-top: 20px;
	}

	.sec08 h3{
		font-size: 1.8em;
		font-weight: bold;
		display: block;
		margin-top: 30px;
		margin-bottom: 17px;
		color: #1D2285;
		line-height: 1.7;
		text-align: center;
	}

	.sec08 .wrap_all{
		display: block;
		margin: 20px auto 0;
		width: 86%;
	}

	.sec08 .wrap_all p{
		font-size: 1.4em;
		line-height: 1.7;
	}

	.sec08 .wrap_all p.sec08_name01{
		margin: 20px 10px 0;
	}

	.sec08 .wrap_all p.sec08_name02{
		font-size: 2.0em;
		font-weight: bold;
		margin: 0px 10px 25px;
	}

	.sec08_prof{
		border: #E0E0E0 solid 1px;
		padding: 23px 20px;
	}

	.sec08 .wrap_all .sec08_prof p{
		font-size: 1.3em;
	}

	.sec08 .wrap_all p.sec08_prof_ttl{
		font-size: 1.8em;
		font-weight: bold;
		margin: 0px 0px 10px;
	}

	.sec08 .wrap_all div:nth-of-type(1){
		width: 100%;
	}

	.sec08 .wrap_all div:nth-of-type(2){
		width: 100%;
	}

	.sec08_prof{
		margin-top: 30px;
	}

}



/*
	アクセス
-------------------------------------------------- */


.sec09{
	margin: 100px auto 100px;
	background: #F4F4F4;
	position: relative;
	padding: 40px 0;
}

.sec09::before{
	content: url(../img/bg_top.svg);
	position: absolute;
  top: -101px;
}

.sec09::after{
	content: url(../img/bg_bottom.svg);
	position: absolute;
  bottom: -101px;
}



@media screen and (max-width:820px) {

.sec09{
	margin: 60px auto 60px;
	background: #F4F4F4;
	position: relative;
	padding: 30px 0 20px;
	width: 100%;
}


.sec09::before{
	content: "";
	position: absolute;
	top: -50px;
	display: inline-block;
	width: 100%;
	height: 50px;
	background-image: url(../img/bg_top.svg);
	background-size:cover;
	background-position: top;
}

.sec09::after{
	content: "";
	position: absolute;
	bottom: -50px;
	display: inline-block;
	width: 100%;
	height: 50px;
	background-image: url(../img/bg_bottom.svg);
	background-size:cover;
}

}




.content .l-section p {
    font-size: 1.4em;
    line-height: 1.6;
    color: #000;
    margin: auto;
}


.l-section {
    margin: 0 auto;
    padding: 96px 32px 120px;
    max-width: 1104px;
    box-sizing: border-box;
    overflow: hidden;
}

.l-section img {
    display: block;
}

.l-section--corp {
    padding: 42px 32px 120px;
}

.l-section--base {
    padding: 96px 32px 120px;
}

.l-section--intro {
    padding: 96px 32px 112px;
}

.l-section--introAlt {
    padding: 96px 32px 0;
}

.l-section--anchor {
    padding: 48px 32px 120px;
}

.l-section--pb0 {
    padding: 96px 32px 0;
}

.l-section--article {
    padding: 80px 32px 120px;
}

.l-section--adjust {
    margin-top: -60px;
    padding: 108px 32px 120px;
}

@media screen and (max-width:820px) {
    .l-section {
        padding: 64px 16px;
    }

    .l-section--feature, .l-section--startup, .l-section--course, .l-section--admission {
        padding: 48px 16px 64px;
    }

    .l-section--base {
        padding: 48px 16px 64px;
    }

    .l-section--corp {
        padding: 75px 16px 64px;
    }

    .l-section--intro {
        padding: 48px 16px 104px;
    }

    .l-section--introAlt {
        padding: 48px 16px 0;
    }

    .l-section--anchor {
        padding: 8px 16px 64px;
    }

    .l-section--pb0 {
        padding: 64px 16px 0;
    }

    .l-section--article {
        padding: 48px 16px 64px;
    }

    .article-event {
        padding: 32px 16px 64px;
    }

    .l-section--adjust {
        margin-top: 0;
    }
}

.l-section--narrow {
    padding: 0px 32px 0px;
    max-width: 924px;
}

@media screen and (max-width:820px) {
    .l-section--narrow {
        padding: 0 ;
        max-width: 90%;
    }
}



.c-head-ja {
    margin-top: 5px;
    font-size: 40px;
    line-height: 60px;
    letter-spacing: 0;
    font-weight: 700;
    text-align: center;
}

.c-head-ja--small {
    margin-top: 4px;
    font-size: 32px;
    line-height: 46px;
}

@media screen and (max-width:820px) {
    .c-head-ja {
        margin-top: 4px;
        font-size: 28px;
        line-height: 42px;
    }

    .c-head-ja--small {
        margin-top: 6px;
        font-size: 20px;
        line-height: 28px;
    }
}

.c-head-ja--white {
    color: #FFFFFF;
}

.top-access {
    margin-top: 48px;
}

.top-access__img{
	max-width: 410px;
}

@media screen and (max-width:820px) {
    .top-access {
        margin-top: 20px;
    }
}

.top-access__item {
    width: calc((100% / 2) - (80px / 2));
}

@media screen and (min-width : 768px) {
    .top-access__item:nth-child(n + 3) {
        margin-top: 40px;
    }
}

@media screen and (max-width:820px) {
    .top-access__item {
        width: 100%;
    }

    .top-access__item:not(:first-child) {
        margin-top: 57px;
    }
}

.top-access__text {
    padding: 20px 8px 0;
}

@media screen and (max-width:820px) {
    .top-access__text {
        padding: 13px 16px 0;
    }
}

.top-access__title {
    font-size: 24px;
    line-height: 35px;
    font-weight: 700;
}

@media screen and (max-width:820px) {
    .top-access__title {
        font-size: 20px;
        line-height: 28px;
    }
}

.top-access__lead {
    margin-top: 17px;
    font-size: 14px;
    line-height: 20px;
    font-family: 'NotoSansCJKjp-Regular', 'NotoSansCJKjp-Medium', 'NotoSansCJKjp-Bold', 'NotoSansCJKjp-DemiLight', 'Noto Sans', 'Noto Sans CJK JP', 'Noto Sans', 'Helvetica', 'Arial', 'メイリオ', 'Meiryo', 'ヒラギノ角ゴ ProN', 'MS ゴシック', sans-serif;
}

@media screen and (max-width:820px) {
    .top-access__lead {
        margin-top: 16px;
    }
}

.top-access__link {
    margin-top: 4px;
    display: inline-block;
    font-size: 14px;
    line-height: 20px;
    color: #00B4A6;
    text-decoration: underline;
}

.top-access__link + .top-access__lead {
    margin-top: 12px;
}







/*
	CTA
-------------------------------------------------- */

.cta{
	margin: 101px auto 30px;
	background: #1D2285;
	position: relative;
	padding: 10px 0 ;
	text-align: center;
}

.cta::before{
	content: url(../img/bg2_top.svg);
	position: absolute;
  top: -101px;
	left: 0;
}

.cta::after{
	content: url(../img/bg2_bottom.svg);
	position: absolute;
  bottom: -101px;
	left: 0;
}

.cta h2{
	color: #fff;
	font-size: 3.4em;
	font-weight: 600;
	margin-bottom: 10px;
}

.cta img{
	width: 480px;
}



@media (max-width:820px) {
	.cta{
		margin: 40px auto 60px;
		background: #1D2285;
		position: relative;
		padding: 20px 0 ;
		z-index: 96;
	}

	.cta::before{
		content: "";
		position: absolute;
	  top: -49px;
		display: inline-block;
	  width: 100%;
	  height: 50px;
	  background-image: url(../img/bg2_top.svg);
	  background-size:cover;
		background-position: top;
	}

	.cta::after{
		content: "";
    position: absolute;
    bottom: -49px;
    display: inline-block;
    width: 100%;
    height: 50px;
    background-image: url(../img/bg2_bottom.svg);
    background-size:cover;
	}

	.cta h2{
		color: #fff;
		font-size: 2.3em;
		font-weight: 600;
		margin-bottom: 10px;
	}

	.cta img{
		width: 90%;
	}

}

.cta2{
	display: none;
}

.mb50{
	margin-bottom: 100px;
}

.pc{
	display: block;
	width: 985px;
	margin: 30px auto 0;
}

.sp{
	display: none;
}

@media (max-width:820px) {
	.sp{
		display: block;
	}

	.pc{
		display: none;
	}



	.cta2{
		position: sticky;
		bottom: 10px;
		left: 0;
		text-align: center;
		z-index: 300;
	}

	.cta2 img{
		width: 95%;
	}


	.float-button__wrap {
	    display: none;/*最初は隠す*/
	}


		.cta_wrap{
			width: 96%;
			margin: auto;
			display: flex;
			justify-content: space-between;
		}



}

/* 20250519追加 */
.smallclass {
	max-width: 90%;
	width: 90%;
	margin: 40px auto 0;
}
.smallclass-item + .smallclass-item {
	padding-top: 60px;
}

.smallclass-ttl{
	color: #1D2285;
	font-size: 23px;
	font-weight: bold;
	line-height: 1.3;
	margin-bottom: 20px;
}

.smallclass-ttl >span {
	color: #333;
	font-size: 16px;
  background: linear-gradient(transparent 50%, #ffee06 50%);
  padding-bottom: 3px;
}

.smallclass-layout {
	display: flex;
}

.smallclass-layout.reverse {
	display: flex;
	flex-direction: row-reverse;
}

.smallclass-layout .l-img {
	width: 50%;
	margin-right: 4%;
}

.smallclass-layout .l-desc {
	flex: 1;
	font-size: 16px;
	text-align: left;
	line-height: 1.7;
}

.smallclass-layout .l-desc p {
	font-size: 15px;
}

.smallclass-layout.reverse .l-img {
	margin-right: 0;
	margin-left: 4%;
}

.txt-color {
	color: #1D2285;
	font-weight: bold;
}

.school-difference {
	display: grid;
	grid-template-columns: 704px 1fr;
	gap: 15px;
}

.school-difference-card {
	display: grid;
	grid-template-columns: repeat(2,1fr);
	gap: 10px;
}

.school-difference-card li {
	background: #FFF0F0;
	padding: 3px;
}

.school-difference-card-ttl-wrap {
	display: flex;
	justify-content: space-between;
	border-bottom: 3px solid #FFFAFA;
}

.school-difference-card-job {
	display: flex;
	justify-content: center;
	align-items: center;
	text-align: center;
	width: 72px;
	background: #FFFAFA;
	color: #6A6A6A;
	font-weight: bold;
	font-size: 13px;
}

.school-difference-card-ttl {
	display: flex;
	align-items: center;
	font-weight: bold;
	text-align: left;
	padding: 5px;
}

.school-difference-card-ttl p {
	font-size: 15px;
	line-height: 1.2;
}

.school-difference-card-ttl img {
	margin-right: 5px;
}

.school-difference-ttl {
	font-size: 20px;
	font-weight: bold;
	margin-bottom: 15px;
}

.school-difference-card-desc {
	padding: 10px;
	text-align: left;
	line-height: 1.6;
}

.school-difference-card-desc p {
	font-size: 16px;
}

.red {
	color: #F12D00;
}

.school-difference-item-ttl {
	background: #F12D00;
	padding: 10px;
	color: #fff;
	font-size: 15px;
	font-weight: bold;
	margin-bottom: 10px;
}

.school-difference-item.gray {
	display: flex;
	flex-direction: column;
}

.school-difference-box {
	background: #eee;
	height: 100%;
	display: flex;
	justify-content: center;
	align-items: center;
	text-align: center;
}

.school-difference-item-ttl.gray {
	background: #A0A0A0;
}

.school-difference-box-ttl {
	font-weight: bold;
	margin-bottom: 10px;
	font-size: 15px !important;
}

.school-difference-box-supplement {
	font-size: 13px !important;
	font-weight: bold;
	color: #6A6A6A !important;
}

.school-difference-box-txtbox {
	padding: 25px 25px 0;
	font-size: 15px;
	text-align: left;
	line-height: 1.6;
}

@media (max-width: 750px) {
	.smallclass {
			margin: 30px auto 0;
	}
	.smallclass-item + .smallclass-item {
		padding-top: 30px;
	}
	.smallclass-ttl{
		font-size: 18px;
		margin-bottom: 15px;
	}

	.smallclass-ttl >span {
		font-size: 15px;
	}
	.smallclass-layout,
	.smallclass-layout.reverse {
		display: block;
	}
	.smallclass-layout .l-img,
	.smallclass-layout.reverse .l-img {
		width: 100%;
		display: block;
		margin-right: 0;
		margin-bottom: 20px;
	}

	.smallclass-layout .l-desc {
		line-height: 1.5;
	}

	.smallclass-layout .l-desc p,
	.school-difference-card-desc p {
		font-size: 14px;
	}

	.smallclass-layout.reverse .l-img {
		display: block;
		margin-bottom: 20px;
		margin-left: 0;
	}
	.school-difference {
		grid-template-columns: 1fr;
		gap: 15px;
	}

	.school-difference-card {
		display: grid;
		grid-template-columns: 1fr;
		gap: 10px;
	}

	.school-difference-card-ttl {
		font-size: 15px;
	}

	.school-difference-card-ttl img {
		margin-right: 5px;
	}

	.school-difference-ttl {
		font-size: 18px;
	}
	.school-difference-card-job {
		width: 65px;
		font-size: 11px;
	}
	.school-difference-item-ttl.gray {
		background: #A0A0A0;
	}
	.school-difference-box {
		padding: 15px 0;
	}
	.school-difference-box-txtbox {
		padding: 15px 10px 0;
	}
}

.content.sec10 {
	padding: 80px 0;
}
.content.sec10 h2 {
	margin-bottom: 40px;
}
.interview-layout {
  display: flex;
}

.interview-layout .l-img {
  width: 48%;
  margin-right: 4%;
}

.interview-layout .l-desc {
  flex: 1;
}

.interview-layout .l-dl {
  display: grid;
  grid-template-columns: 70px 1fr;
  gap: 10px;
  margin-bottom: 20px;
	font-weight: bold;
}

.interview-layout .l-dl dt {
  color: #fff;
	background: #1D2285;
  display: flex;
  align-items: center;
  justify-content: center;
	font-size: 14px;
}

.interview-layout .l-dl dd {
	font-size: 16px;
}


.interview-layout .l-message {
  background: #F5F5F7;
  padding: 20px;
}

.interview-layout .l-message+.l-message {
  margin-top: 15px;
}

.interview-layout .l-ttl {
  font-size: 20px;
  text-align: left;
  line-height: 1.5;
}

@media screen and (max-width: 767px) {
	.content.sec10 {
		padding: 50px 0;
	}
	.sec10 .wrap_all {
		width: 90%;
		margin: 0 auto;
	}
  .interview-layout {
    display: block;
  }
	.interview-layout .l-dl {
		align-items: flex-start;
	}

	.interview-layout .l-dl dt {
		line-height: 2;
		font-size: 12px;
	}

	.interview-layout .l-dl dd {
		font-size: 14px;
	}
  .interview-layout .l-img {
    width: 100%;
    margin-right: 0;
    margin-bottom: 20px;
  }
  .interview-layout .l-ttl {
    font-size: 16px;
		margin-bottom: 10px;
  }
}

/* 202603追加 */
.u-common-note {
	font-size: 11px;
	margin-top: 15px;
	text-align: left;
	line-height: 1.4;
	font-weight: 100;
	letter-spacing: 0.02em;
	display: block;
}

.c-commonTtl {
	font-size: 3.2em;
	line-height: 1.53;
	font-weight: 900;
	color: #1D2285;
	margin: auto;
	text-align: center;
}
@media screen and (max-width: 768px) {
	.c-commonTtl {
		font-size: 2em;
	}
}

.p-topBtnArea {
	background: #fff;
	position: relative;
	padding: 40px 0;
}
.p-topBtnList {
	display: grid;
	margin: 20px auto 0;
	gap: 40px;
	max-width: 1036px;
	width: 100%;
	grid-template-columns: repeat(3,1fr);
}
@media screen and (max-width: 768px) {
	.p-topBtnList {
		gap: 15px;
		width: 90%;
		grid-template-columns: 1fr;
		margin: 20px auto 0;
	}
}
.c-btnLink {
	display: block;
	width: 100%;
	text-align: center;
	padding: 13px 70px;
	border: 1px solid #292929;
	background: #fff;
	font-size: 16px;
	font-weight: 700;
	color: #1D2285 !important;
	transition: .3s ease;
}
.c-btnLink:hover {
	opacity: .7;
}
/* 202603追加 回遊ボタン */
.cont-link {
	padding-top: 40px;
}

.cont-link-inner {
	max-width: 1100px;
	width: 90%;
	margin: 0 auto;
}

.cont-link-txt {
	text-align: center;
	font-size: 18px;
	margin-bottom: 60px;
}

.cont-link-txt >span {
	background: linear-gradient(transparent 60%, #FFFF43 60%);
	font-weight: bold;
	line-height: 1.4;
}

.cont-link-ttl {
	text-align: center;
	font-weight: bold;
	font-size: 24px;
	padding: 0 40px;
	background: #fff;
	position: absolute;
	top: -35px;
	left: 50%;
	line-height: 1.3;
	transform: translateX(-50%);
}

.cont-link-ttl >.smaller {
	font-size: 17px;
	font-weight: bold;
}

.cont-link-box {
	border: 3px solid #F4F4F4;
	padding: 70px 20px 40px;
	position: relative;
}

.cont-link-list {
	display: flex;
	align-items: center;
	justify-content: center;
}

.cont-link-list >li +li {
	margin-left: 20px;
}

.cont-link-btn {
	display: block;
	width: 291px;
	text-align: center;
	color: #fff;
	position: relative;
	background: #1D2285;
	font-size: 14px;
	border-radius: 100px;
	padding: 13px 10px 10px;
	font-weight: bold;
	line-height: 1.4;
	transition: .3s;
}

.cont-link-btn >.smaller {
	font-size: 12px;
}

.cont-link-btn::before {
	content: "";
	width: 5px;
	height: 5px;
	border-top: 1px solid #fff;
	border-right: 1px solid #fff;
	position: absolute;
	right: 10px;
	top: 50%;
	transform: translateY(-50%) rotate(45deg);
}

@media screen and (max-width: 767px) {
	.cont-link {
			padding-top: 10px;
			padding-bottom: 0;
			margin-bottom: 40px;
	}
	.cont-link-list {
		display: block;
	}
	.cont-link-list >li +li {
		margin-left: 0;
		margin-top: 15px;
	}
	.cont-link-ttl {
		white-space: nowrap;
		font-size: 18px;
		padding: 0 15px;
		top: -30px;
	}
	.cont-link-ttl >.smaller {
		font-size: 15px;
	}
	.cont-link-btn {
		width: 100%;
	}
	.cont-link-txt {
		font-size: 14px;
		line-height: 1.6;
		margin-bottom: 40px;
	}
	.cont-link-box {
		padding: 40px 20px 20px;
	}
}