@charset "utf-8";



.col_w{
	color: #fff;
}

.curricaution{
	font-size:clamp(12px,1.4rem,14px);
	padding-bottom: .8rem;
}


/* ---------------------------------------
* common
------------------------------------------ */

main{
	position: relative;
}

.btn.sp{
	display: none;
}

.col-w{
	color: #fff;
}

.access a{
	display: block;
	text-decoration: underline;
}

.mainTop{
	overflow: hidden;
}

.btn-404{
	margin: 0 auto;
}

svg{
	width: 100%;
	height: 100%;
}

.bg{
	background-repeat: no-repeat;
	background-size: cover;
}

:root {
	--primary: #222222;
	--bg01: #222222;
	--bg02: #F5F5F5;
}

/* ---------------------------------------
* TOP
------------------------------------------ */

.mv{
	padding: 24rem 0 27rem;
	background-repeat: no-repeat;
	background-size: cover;
	background-image: url(../img/top/nxjibg.png);
	position: relative;
}

.mvImg{
	position: absolute;
}

.mvImg01{
	width: clamp(120px , 30rem , 320px);
	left: 0;
	top: 12rem;
}

.mvImg02{
	width: clamp(80px , 14rem , 160px);
	right: 4rem;
	top: 14rem;
}

.mvImg03{
	width: clamp(60px , 13rem , 140px);
	bottom: 10rem;
	left:3rem;
}

.mvImg04{
	width: clamp(160px , 24rem , 260px);
	right: 6rem;
	bottom: 6rem;
}
.mvImg05{
	width: clamp(60px , 15rem , 160px);
	right: 36rem;
	top: 8rem;
}

.mvImg06{
	width: clamp(60px , 15rem , 160px);
	left: 36rem;
	bottom: 10rem;
}

.mvWrap{
	position: relative;
	z-index: 2;
}

.mvTtl h2 p{
	transform: skew(-10deg);
	font-weight: 900;
	font-size: clamp(24px,6.4rem ,76px);
	line-height: 100%;
	letter-spacing: normal;
}

.mvTtl h2 p:not(:last-of-type){
	padding-bottom: 2rem;
}

.mvTtl h2 p span{
	display: inline-block;
	font-size: clamp(24px,8rem ,96px);
	line-height: 100%;
	letter-spacing: normal;
}

.mvTtl>p{
	font-size: clamp(20px,4.8rem ,56px);
	font-weight: 700;
	line-height: 100%;
	letter-spacing: normal;
	padding-top: 3rem;
}

.sec01{
	background-color: #000;
	position: relative;
	overflow: hidden;
}

.sec01Bg{
	width: clamp(320px ,60rem, 600px);
	position: absolute;
	left: 0;
	bottom: 0;
}

.sec01Wrap{
	position: relative;
	z-index: 2;
}

.sec01-l{
	width: 48rem;
}

.sec01Ttl p{
	font-size: clamp(14px,4rem ,48px);
	line-height: 100%;
	letter-spacing: normal;
	font-weight: 700;
}

.sec01Ttl p span{
	display: inline-block;
	font-size: clamp(14px,4.8rem ,52px);
	line-height: 100%;
	letter-spacing: normal;
	font-weight: 700;
}

.sec01Ttl p:last-of-type{
	padding-left: 4rem;
	padding-top: 0.6rem;
}

.sec01-r{
	width: 60rem;
}

.sec01Txt p{
	font-size: clamp(14px,2rem ,20px);
	font-weight: 700;
	line-height: 180%;
	letter-spacing: normal;
}

.sec01Txt p:not(:last-of-type){
	padding-bottom: 3rem;
}

.sec01Txt p span{
	display: inline-block;
	font-size: clamp(12px,1.2rem ,12px);
	vertical-align: super;
	margin: 0 0.2rem;
}

.sec01Other{
	width: 90%;
	padding: 2rem;
	margin-top: 2rem;
	background-color: #222222;
}

.sec01Other-defList:not(:last-of-type){
	margin-bottom: .8rem;
}

.sec01Other-defTtl,.sec01Other-defDesc{
	font-size: clamp(14px,1.4rem ,14px);
	font-weight: 400;
}

.sec01Other-defDesc{
	padding-left: 0.4rem;
}

.sec02-listItem:not(:last-of-type){
	padding-bottom: 6rem;
	margin-bottom: 6rem;
	border-bottom: solid 1px #DFDFDF;
}

.sec02-listImg{
	width: 48rem;
}

.sec02Txt{
	width: 54rem;
}

.sec02-listTtl p{
	padding-bottom: 2rem;
	margin-bottom: 3rem;
	border-bottom: solid 3px #000;
}

.sec02-listTtl p span{
	display: inline-block;
	vertical-align: middle;
	letter-spacing: normal;
}

.sec02-listTtl p span:first-of-type{
	font-size: clamp(14px,3.6rem ,40px);
	font-weight: 600;
	line-height: 100%;
}

.sec02-listTtl p span:last-of-type{
	font-size: clamp(14px,2.6rem ,30px);
	font-weight: 900;
	line-height: 160%;
	padding-left: 2rem;
}

.sec02Logo{
	width: 40rem;
}

.sec02Ttl{
	font-size: clamp(14px,4.8rem ,52px);
	font-weight: 900;
	line-height: 160%;
	letter-spacing: normal;
}

.sec02Txt>p{
	font-weight: 700;
	line-height: 180%;
	letter-spacing: normal;
	padding-top: 2rem;
}


.sec03{
	background-color: var(--bg02);
}

.sec03-l{
	width: 54rem;
}

.sec03-r{
	width: 48rem;
}

.sec03MemWrap h4{
	width: 12rem;
	background-color: var(--bg01);
	font-weight: 900;
	color: #fff;
	padding: .6rem 0;
	text-align: center;
	line-height: 100%;
}

.member-list{
	column-gap: 2rem;
	row-gap: 2rem;
	padding-top: 2rem;
	align-items: flex-start;
}

.member-listItem{
	cursor: pointer;
	width: calc((100% - (2rem * 1)) / 2);
	background-color: #fff;
	padding: 1rem 2rem 1rem 1rem;
	border-radius: 10px;
	align-items: flex-start;
}

.member-listItem02{
	width: calc((100% - (2rem * 2)) / 3);
}

.member-listImg{
	width: 24%;
}

.member-listName{
	width: 72%;
}

.nameWrap{
	width: 80%;
}

.nameWrap p:first-of-type{
	font-size: clamp(10px,1.2rem ,12px);
	line-height: 160%;
	padding-bottom: 0.4rem;
}

.nameWrap p:last-of-type{
	font-size: clamp(16px,2rem ,20px);
	line-height: 160%;
	font-weight: 600;
}

.member-listItem02 .nameWrap p:last-of-type{
	font-size: clamp(12px,1.4rem ,16px);
}

.memArrow{
	position: relative;
	width: 3.8rem;
	height: 3.8rem;
	transition: all .3s;
}

.memberIntro.open .memArrow{
	transform: rotate(180deg);
}

.member-listItem02 .memArrow{
	width: 2.8rem;
	height: 2.8rem;
}

.memArrow svg{
	position: absolute;
	left: 0;
	top: 0;
	width: 100%;
	height: 100%;
}

.memberTxt{
	padding-top: 1rem;
	font-size: clamp(12px,1.4rem ,14px);
}

.memberTxt{
	display: none;
}

.mess-list{
	column-gap: 2rem;
}

.messImg{
	padding-top: 20px;
}

.sec04{
	background-color: var(--bg02);
}

.info-defList{
	padding: 3rem 0;
	border-bottom: 1px solid #D9D9D9;
}

.info-defList:first-of-type{
	padding-top: 0;
}

.info-defTitle{
	font-weight: 700;
	width: 23rem;
	flex: 0 0 23rem;
}

.info-defDesc{
	flex: 1 1 auto;
	font-weight: 700;
}

.info-defDesc a{
	display: block;
	text-decoration: underline;
}

.map{
	margin-top: 3rem;
	position: relative;
	padding-top: 37.5%;
	width: 100%;
}

.map iframe{
	width: 100%;
	height: 100%;
	position: absolute;
	left: 0;
	top: 0;
}

.info-contents,.accessWrap{
	width: 88.888%;
	margin: 0 auto;
}

.accessInfo-l{
	width: 42rem;
}

.accessInfo-r{
	width: 48rem;
}

.accessInfo-l h4,.accessInfo-r h4{
	padding-left: 3rem;
	font-size: clamp(12px,1.8rem ,18px);
	font-weight: 900;
	line-height: 160%;
	letter-spacing: normal;
	position: relative;
	margin-bottom: 1.6rem;
}

.accessInfo-l h4::before,.accessInfo-r h4::before{
	content: "";
	display: block;
	width: 2rem;
	height: 3px;
	background-color: #000;
	position: absolute;
	left: 0;
	top: 50%;
	transform: translateY(-50%);
}

.accessInfo-defList:not(:last-of-type){
	padding-bottom: 2rem;
}

.accessInfo-defTtl{
	flex:0 0 10rem;
	width: 10rem;
	line-height: 160%;
	letter-spacing: normal;
	font-weight: 900;
}

.accessInfo-defDesc{
	flex: 1 1 auto;
	line-height: 160%;
	letter-spacing: normal;
	font-weight: 900;
}

.accessInfo-l a{
	display: inline-block;
	padding: .6rem 2rem;
	background-color: var(--bg01);
	border: solid 2px var(--bg01);
	font-weight: 700;
	color: #fff;
	line-height: 160%;
	letter-spacing: normal;
	font-size: clamp(12px,2rem ,20px);
	margin-top: 3rem;
	transition: all .3s;
}

.accessInfo-l a:hover{
	background-color: #fff;
	color: var(--bg01);
}

.accessInfo-imgListItem{
	width: 23rem;
}

.accessInfo-r>p{
	font-size: clamp(12px,1.4rem ,14px);
	padding-top: 1rem;
	font-weight: 700;
	line-height: 160%;
	letter-spacing: normal;
}

/* ---------------------------------------
* 募集要項
------------------------------------------ */

.require-defList{
	align-items: flex-start;
	padding-bottom: 3rem;
	margin-bottom: 3rem;
	border-bottom: solid 3px #000;
}

.require-defList:first-of-type{
	padding-top: 3rem;
	border-top: solid 3px #000;
}

.require-defList:last-of-type{
	margin-bottom: 0;
}

.require-defTtl{
	flex: 0 0 11rem;
	width: 11rem;
	text-align: center;
	background-color: var(--bg01);
	color: #fff;
	font-weight: 700;
	padding: .4rem 0;
	line-height: 160%;
	letter-spacing: normal;
}

.require-defDesc{
	flex: 1 1 auto;
	padding-left: 8rem;
	font-weight: 600;
	line-height: 160%;
}

.require-defDesc p:not(:last-of-type){
	padding-bottom: 1rem;
}

.exBtn{
	display: block;
	width: 36rem;
	text-align: center;
	background-color: #fff;
	border: solid 2px #000;
	padding: 2rem 0;
	font-size: clamp(14px, 1.4rem, 14px);
	margin-bottom: 1rem;
	transition: all .3s;
}

.exBtn:hover{
	background-color: #000;
	color: #fff;
}

.entryBtn{
	display: block;
	width: 48rem;
	margin: 0 auto;
	padding: 2.4rem 0;
	color: #fff;
	text-align: center;
	font-weight: 600;
	border: solid 2px var(--bg01);
	background-color: var(--bg01);
	font-size: clamp(16px, 2rem, 20px);
	transition: all .3s;
}

.entryBtn:hover{
	background-color: #fff;
	color: var(--bg01);
}

/* ---------------------------------------
* カリキュラム
------------------------------------------ */

.curriWrap:not(:first-of-type){
	padding-top: 6rem;
}

.curriSche{
	position: relative;
	margin-bottom: 3rem;
}

.curriSche::before,.curriSche::after{
	content: "";
	display: block;
	width: 37rem;
	height: 4px;
	background-color: #000;
	position: absolute;
	top: 50%;
	transform: translateY(-50%);
}

.curriSche::before{
	left: 0;
}

.curriSche::after{
	right: 0;
}

.curriSche h4{
	font-size: clamp(18px, 2.8rem, 28px);
	line-height: 160%;
	font-weight: 900;
}

.curriSche p{
	display: inline-block;
	background-color: var(--bg01);
	color: #fff;
	line-height: 160%;
	font-weight: 700;
	padding: .3rem 1rem;
	margin-top: 0.4rem;
}

.curriDetail{
	border: solid 2px var(--bg01);
}

.curriTtl{
	padding: 3rem 4rem;
	color: #fff;
	font-weight: 900;
	background-color: var(--bg01);
	font-size: clamp(16px, 1.8rem, 20px);
	line-height: 160%;
}

.curri-listItem:not(:last-of-type){
	border-bottom: solid 2px #222222;
}

.curriNum{
	flex : 0 0 14rem;
	width: 14rem;
	text-align: center;
	font-weight: 900;
}

.curriContents{
	flex: 1 1 auto;
	padding: 2rem 3rem;
	border-left: solid 2px var(--bg01);
}

.curriTheme{
	width: 59%;
}

.curriTheme>p{
	font-size: clamp(12px, 1.4rem, 14px);
	line-height: 160%;
	letter-spacing: normal;
	padding-bottom: 0.4rem;
}

.curriTheme h6{
	font-size: clamp(14px, 1.8rem, 20px);
	font-weight: 700;
	line-height: 160%;
	letter-spacing: normal;
	padding-bottom: 0.4rem;
}

.curriTxt{
	padding-top: 1rem;
	font-size: clamp(12px, 1.4rem, 14px);
	line-height: 160%;
	letter-spacing: normal;
}

.curriTeacher{
	width: 36.3%;
}

.teacherImg{
	width: 37.5%;
}

.teacherImg .img{
	background-repeat: no-repeat;
	background-size: cover;
}

.teacherImg .img::after{
	content: "";
	display: block;
	padding-top: 100%;
}

.teacherName{
	padding-left: 2rem;
}

.teacherName p:first-of-type{
	font-size: clamp(10px, 1.2rem, 12px);
	line-height: 160%;
	letter-spacing: normal;
	color: #808080;
}

.teacherName p:last-of-type{
	font-size: clamp(10px, 1.4rem, 14px);
	line-height: 160%;
	letter-spacing: normal;
	padding-top: 0.4rem;
}

/* ---------------------------------------
* 令和政経
------------------------------------------ */

.rewiwaMv{
	padding: 16rem 0 20rem;
	background-repeat: no-repeat;
	background-size: cover;
	background-image: url(../img/reiwa/mvbg.png);
}

.rewiwaMv-listImg{
	width: 48rem;
}

.rewiwaMv-listTxt{
	width: 54rem;
	padding-right: 6rem;
}

.rewiwaMv-listsubTtl p{
	transform: skew(-10deg);
	font-weight: 900;
	line-height: 100%;
	letter-spacing: normal;
	font-size: clamp(18px,2.8rem,32px);
}

.rewiwaMv-listsubTtl p span{
	display: inline-block;
	line-height: 100%;
	letter-spacing: normal;
	font-size: clamp(18px,4rem,48px);
}

.rewiwaMv-listTtl h2{
	padding: 2rem 0;
}

.rewiwaMv-listTtl>p{
	transform: skew(-10deg);
	font-weight: 900;
	line-height: 100%;
	letter-spacing: normal;
	font-size: clamp(14px,2.4rem,28px);
	position: relative;
}

.rewiwaMv-listTtl>p::before,.rewiwaMv-listTtl>p::after{
	content: "";
	display: block;
	width: 6rem;
	height: 4px;
	background-color: #fff;
	position: absolute;
	top: 50%;
	transform: translateY(-50%);
}

.rewiwaMv-listTtl>p::before{
	left: 0;
}

.rewiwaMv-listTtl>p::after{
	right: 0;
}

.rewiwaMv-listSche{
	margin-top: 3rem;
	padding: 2rem 3rem;
	border: solid 2px #fff;
}

.rewiwaMv-listSche>p{
	font-weight: 900;
	line-height: 160%;
	letter-spacing: normal;
	font-size: clamp(14px,2rem,24px);
	padding-bottom: 1rem;
}

.sche-list{
	justify-content: center;
	column-gap: 5rem;
	position: relative;
}

.sche-list::after{
	content: "-";
	display: block;
	font-weight: 600;
	line-height: 100%;
	letter-spacing: normal;
	font-size: clamp(14px,4rem,40px);
	position: absolute;
	left: 0;
	right: 0;
	top: 50%;
	transform: translateY(-50%);
	text-align: center;
	margin: 0 auto;
}

.sche-listItem p{
	font-weight: 600;
	line-height: 100%;
	letter-spacing: normal;
	font-size: clamp(14px,2.4rem,28px);
}

.sche-listItem p span{
	display: inline-block;
	font-weight: 600;
	line-height: 100%;
	letter-spacing: normal;
	padding-right: 1rem;
	font-size: clamp(14px,3.6rem,40px);
}

.section-about{
	overflow: hidden;
	position: relative;
}

.aboutBg{
	position: absolute;
	left: -1.4rem;
	top: 7rem;
	z-index: -1;
}

.aboutBg p{
	font-size: clamp(100px,24rem,240px);
	opacity: .05;
	line-height: 100%;
	letter-spacing: normal;
	font-weight: 700;
}

.aboutWrap{
	padding-bottom: 6rem;
}

.about-l,.about-r{
	width: 54rem;
}

.aboutTtl p{
	font-weight: 900;
	line-height: 100%;
	letter-spacing: normal;
}

.aboutTtl p:first-of-type{
	font-size: clamp(16px,2.4rem ,28px);
}

.aboutTtl p:last-of-type{
	padding-top: 1.6rem;
	font-size: clamp(24px,3.6rem ,40px);
}

.aboutTtl p:last-of-type span{
	display: inline-block;
	font-size: clamp(32px,4.8rem ,52px);
	line-height: 100%;
	letter-spacing: normal;
}

.about-r{
	padding-top: 3rem;
}

.about-r p{
	font-weight: 600;
}

.aboutSlide{
	width: calc((488rem + 2rem) * 3);
}

.aboutSlideImg{
	width: 488rem;
}

.aboutData-list{
	margin-top: 8rem;
	padding: 0 6rem;
	border-top: solid 1px #DFDFDF;
}

.aboutData-listItem{
	width: calc(100% / 2);
	padding: 3rem 2rem 2rem 4rem;
	border-right: solid 1px #DFDFDF;
}

.aboutData-listItem:first-of-type{
	border-left: solid 1px #DFDFDF;
}

.dataTtl{
	display: inline-block;
	padding-left: 2rem;
	font-size: clamp(16px,2rem,24px);
	line-height: 100%;
	letter-spacing: normal;
	font-weight: 600;
	border-left: solid 2px #222;
}

.dataNum{
	padding-top: 6rem;
	text-align: right;
	font-weight: 600;
	font-size: clamp(20px,3rem,36px);
}

.dataNum span{
	display: inline-block;
	font-size: clamp(76px,9.6rem,100px);
	line-height: 100%;
}

.section-interview{
	background-color: var(--bg01);
}


.voiceSlide{
	position: relative;
	padding: 3rem 0;
	overflow: hidden;
	border-bottom: solid 1px rgba(255,255,255,.4);
}

.voiceSlide::after{
	content: "";
	position: absolute;
	left: 0;
	top: 0;
	display: block;
	width: 100%;
	height: 100%;
	background: rgba(34, 34, 34, 0);
	background: linear-gradient(180deg, rgba(34, 34, 34, 0) 0%, rgba(34, 34, 34, 1) 100%);
}

.scroll-infinity__wrap {
	display: flex;
	overflow: hidden;
}
.scroll-infinity__list {
	display: flex;
	list-style: none;
	padding: 0
}

.scroll-infinity__list--left {
	animation: infinity-scroll-left 1000s infinite linear 0.5s both;
}

.sup-list_left{
	animation: infinity-scroll-left 600s infinite linear 0.5s both;
}

.scroll-infinity__item {
	width: 255rem;
}

.scroll-infinity__item02{
	width: 291rem;
}

.scroll-infinity__item03{
	width: 282rem;
}

.scroll-infinity__item>img {
	width: 100%;
}

.scroll-infinity__list--right{
	animation :infinity-scroll-right 1000s infinite linear 0.5s both;
}

.sup-list_right{
	animation :infinity-scroll-right 600s infinite linear 0.5s both;
}

@keyframes infinity-scroll-left {
	from {
		transform: translateX(0);
	}
	to {
		transform: translateX(-100%);
	}
}

@keyframes infinity-scroll-right {
	from {
		transform: translateX(-100%);
	}
	to {
		transform: translateX(0%);
	}
}


.suplistWrap{
	overflow: hidden;
	padding-top: 2rem;
}

.suplistWrap .scroll-infinity__wrap:first-of-type{
	padding-bottom: 1.5rem;
}

.sup-list{
	list-style: none;
	padding: 0;
	column-gap: 1.5rem;
}

.sup-listItem{
	width: 582.5rem;
	padding-right: 1.5rem;
}

.sup-listItem02{
	width: 619rem;
	padding-right: 1.5rem;
}

.sup-listItem img,.sup-listItem02 img{
	width: 100%;
}


.interviewWrap{
	padding-top: 8rem;
	border-left: solid 1px rgba(255,255,255,.4);
	border-right: solid 1px rgba(255,255,255,.4);
}

.interviewTxt{
	padding: 0 6rem 6rem;
}

.interviewTxt .ttlWrap{
	width: 54rem;
}

.interviewTxt .interviewSubttl{
	width: 42rem;
}

.interview-list{
	border-top: solid 1px rgba(255,255,255,.4);
	border-bottom: solid 1px rgba(255,255,255,.4);
}



.interview-listItem{
	width: calc(100% / 3);
}

.interview-listItem:not(:last-of-type){
	border-right: solid 1px rgba(255,255,255,.4);
}

.interview-listItem a{
	display: block;
	padding: 2rem 2rem 3rem 2rem;
}

.interview-listImg,.activity-listImg{
	overflow: hidden;
}

.interview-listImg .img,.activity-listImg .img{
	transition: all .3s;
	width: 100%;
	height: 100%;
	background-repeat: no-repeat;
	background-size: cover;
}

.interview-listItem a:hover .interview-listImg .img,.activity-listItem a:hover .activity-listImg .img{
	transform: scale(1.05);
}

.interview-listImg .img::after,.activity-listImg .img::after{
	content: "";
	display: block;
	padding-top: 62.5%;
}

.activity-listImg{
	border-radius: 10px;
}

.interview-listTxt{
	padding-top: 1.4rem;
}

.interview-listTxt p{
	font-weight: 600;
	color: #808080;
	font-size: clamp(12px,1.4rem,14px);
	line-height: 160%;
}

.interview-listTxt h4,.activity-listTxt h4{
	font-size: clamp(16px,1.8rem,18px);
	line-height: 140%;
	font-weight: 600;
	letter-spacing: normal;
	padding-top: 1rem;
}

.activity-listIcon{
	padding: 0.3rem 1.6rem .6rem;
	border: solid 1px #fff;
	border-radius: 2px;
	display: inline-block;
	line-height: 100%;
}

.activity-listIcon02{
	padding: 0.3rem 1.6rem .6rem;
	border: solid 1px #222;
	border-radius: 2px;
	display: inline-block;
	line-height: 100%;
}

.in-listIcon{
	margin-top:1rem;
}

.curriculumTxt .curriculumSubttl{
	width: 54rem;
}

.curriculumTxt>p{
	width: 48rem;
	font-weight: 600;
}

.curriculumDetail{
	margin-top: 4rem;
	padding: 3rem;
	border-radius: 10px;
	background-color: #F5F5F5;
}

.section-activity{
	background-color: var(--bg01);
}

.activity-list{
	column-gap: 3rem;
	row-gap: 4rem;
}

.activity-listItem{
	width: calc((100% - (3rem * 2)) / 3);
}

.activity-listItem a{
	display: block;
}

.activity-listTxt{
	padding-top: 2rem;
}


.mess-list{
	column-gap: 2rem;
}

.mess-listItem{
	width: calc((100% - (2rem * 1)) / 2);
	border: solid 1px #222;
	padding: 6rem 4rem 4rem;
	position: relative;
	background-color: #fff;
	clip-path: polygon(0% 0, 100% 0, 100% calc(100% - 2.196193265vw), calc(100% - 2.196193265vw) 100%, 0% 100%);
}

.mess-listItem02{
	width: 70%;
	margin: 0 auto;
	padding: 6rem 8rem 4rem;
}

.mess-listItem::after{
	content: "";
	position: absolute;
	bottom: 0;
	right: 0;
	width: 3.0206583681vw;
	height: 3.0206583681vw;
	border: 1px solid #050810;
	transform: translate(calc(50% + 0px), calc(50% + 0px)) rotate(45deg);
}

.mess-listItem h3{
	font-size: clamp(18px,2.4rem ,28px);
	font-weight: 600;
	letter-spacing: normal;
	line-height: 140%;
}

.mess-listTxt{
	padding: 2rem 0;
}

.mess-listTxt p{
	font-size: clamp(14px,1.4rem ,16px);
}

.mess-listTxt p:not(:last-of-type){
	padding-bottom: 3rem;
}

.mess-listName{
	font-size: clamp(14px,1.4rem ,16px);
	letter-spacing: normal;
	line-height: 160%;
	font-weight: 600;
	text-align: right;
}



.interview-listImg02{
	border-radius: 0;
}



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

	.curricaution{
		font-size:1.2rem;
		padding-bottom: .8rem;
	}

	/* ---------------------------------------
	* common
	------------------------------------------ */

	.btn.sp{
		display: flex;
	}

	.btn.pc{
		display: none;
	}

	.btn{
		margin: 0 auto;
	}

	.nav-other02{
		padding-right: 10px;
	}

	.nav-other02 li a{
		display: block;
		font-size: 12px;
	}

	.bar{
		height: 3vw;
	}

	.support{
		padding-top: 20px;
	}

	.support p{
		font-size: 14px;
	}

	.supportLogo{
		width: 150px;
		margin-left: 10px;
	}

	/* ---------------------------------------
	* TOP
	------------------------------------------ */

	.mv{
		padding: 20rem 0;
	}


	.mvImg01{
		width: 10rem;
		left: 0;
		top: 10rem;
	}

	.mvImg02{
		width: 9rem;
		right: 0px;
		top: 9rem;
	}

	.mvImg03{
		width: 9rem;
		bottom: 6rem;
		left: 0rem;
	}

	.mvImg04{
		width: 10rem;
		right: 0rem;
		bottom: 8rem;
	}

	.mvImg05{
		width: 8rem;
		right: 14rem;
		top: 6rem;
	}

	.mvImg06{
		width: 8rem;
		left: 15rem;
		bottom: 3rem;
	}

	.mvTtl h2 p{
		font-size: 2.4rem;
	}

	.mvTtl h2 p:not(:last-of-type){
		padding-bottom: 1rem;
	}

	.mvTtl h2 p span{
		font-size: 3.6rem;
	}

	.mvTtl>p{
		font-size: 2rem;
		padding-top: 2rem;
	}

	.sec01{
		padding-top: 6rem;
	}

	.sec01Bg{
		width: 30rem;
	}

	.sec01-l{
		width: 100%;
	}

	.sec01Ttl p{
		font-size: 3.2rem;
	}

	.sec01Ttl p span{
		font-size: 3.6rem;
	}

	.sec01Ttl p:last-of-type{
		padding-left: 0;
		padding-top: 0.6rem;
	}

	.sec01-r{
		padding-top: 3rem;
		width: 100%;
	}

	.sec01Txt p{
		font-size: 1.4rem;
	}

	.sec01Txt p:not(:last-of-type){
		padding-bottom: 2rem;
	}

	.sec01Txt p span{
		font-size: 1rem;
	}

	.sec01Other{
		width: 100%;
		padding: 3rem;
	}

	.sec01Other-defList:not(:last-of-type){
		margin-bottom: 1rem;
	}

	.sec01Other-defTtl,.sec01Other-defDesc{
		font-size: 1.2rem;
	}

	.sec01Other-defDesc{
		padding-left: 1rem;
	}

	.sec02-listItem:not(:last-of-type){
		padding-bottom: 4rem;
		margin-bottom: 4rem;
	}

	.sec02-listImg{
		width: 100%;
	}

	.sec02Txt{
		width: 100%;
		padding-top: 3rem;
	}

	.sec02-listTtl p span:first-of-type{
		font-size: 2rem;
	}

	.sec02-listTtl p span:last-of-type{
		font-size: 2rem;
		padding-left: 1rem;
	}

	.sec02Logo{
		width: 80%;
		padding-bottom: 1rem;
	}

	.sec02Ttl{
		font-size: 3.2rem;
	}

	.sec02Txt>p{
		padding-top: 2rem;
	}


	.sec03-l{
		width: 100%;
	}

	.sec03-r{
		width: 100%;
		padding-top: 2rem;
	}

	.sec03MemWrap h4{
		width: 12rem;
	}

	.member-list{
		column-gap: 2rem;
		row-gap: 2rem;
		padding-top: 2rem;
	}

	.member-listItem{
		width: 100%;
	}

	.member-listItem:not(:last-of-type){
		margin-bottom: 1.6rem;
	}

	.member-listItem02{
		width: 100%;
	}

	.member-listImg{
		width: 20%;
	}

	.member-listName{
		width: 75%;
	}

	.nameWrap{
		width: 85%;
	}

	.nameWrap p:first-of-type{
		font-size: 1rem;
	}

	.nameWrap p:last-of-type{
		font-size: 1.2rem;
	}

	.member-listItem02 .nameWrap p:last-of-type{
		font-size: 1.2rem;
	}

	.memArrow{
		width: 2.4rem;
		height: 2.4rem;
	}

	.member-listItem02 .memArrow{
		width: 2.4rem;
		height: 2.4rem;
	}

	.memberTxt{
		font-size: 1.2rem;
	}

	.info-defList{
		padding: 2rem 0;
	}

	.info-defTitle{
		width: 100%;
	}

	.info-defDesc{
		padding-top: 1rem;
	}

	.map{
		margin-top: 3rem;
		padding-top: 50%;
	}

	.accessInfo-l{
		width: 100%;
	}

	.accessInfo-r{
		width: 100%;
		padding-top: 3rem;
	}

	.accessInfo-l h4,.accessInfo-r h4{
		font-size: 1.6rem;
		margin-bottom: 1.6rem;
	}

	.accessInfo-defList:not(:last-of-type){
		padding-bottom: 2rem;
	}

	.accessInfo-defTtl{
		width: 100%;;
	}

	.accessInfo-defDesc{
		padding-top: .4rem;
		font-weight: 400;
	}

	.accessInfo-l a{
		font-size: 1.4rem;
		margin-top: 2rem;
	}

	.accessInfo-l a:hover{
		background-color: #fff;
		color: var(--bg01);
	}

	.accessInfo-imgListItem{
		width: 16rem;
	}

	.accessInfo-r>p{
		font-size: 1.2rem;
	}

	/* ---------------------------------------
	* 募集要項
	------------------------------------------ */

	.require-defList{
		padding-bottom: 3rem;
		margin-bottom: 3rem;
		border-bottom: solid 2px #000;
	}

	.require-defList:first-of-type{
		padding-top: 3rem;
		border-top: solid 2px #000;
	}

	.require-defTtl{
		flex: unset;
		width: 11rem;
	}

	.require-defDesc{
		padding-left: 0;
		padding-top: 1rem;
	}

	.exBtn{
		width: 100%;
	}

	.entryBtn{
		width: 100%;
		padding: 2rem 0;
		font-size: 1.6rem;
	}



	/* ---------------------------------------
	* カリキュラム
	------------------------------------------ */

	.curriWrap:not(:first-of-type){
		padding-top:4rem;
	}

	.curriSche{
		margin-bottom: 3rem;
	}

	.curriSche::before,.curriSche::after{
		display: none;
	}

	.curriSche h4{
		font-size: 1.8rem;
	}

	.curriDetail{
		border: solid 2px var(--bg01);
	}

	.curriTtl{
		text-align: center;
		padding: 2rem;
		font-size: 1.6rem;
	}

	.curriNum{
		flex : unset;
		width: 100%;
		padding: 2rem 0;
		font-size: 1.6rem;
	}

	.curriContents{
		padding: 2rem 2rem;
		border-left: unset;
		border-top: solid 2px var(--bg01);
	}

	.curriTheme{
		width: 100%;
	}

	.curriTheme>p{
		font-size: 1.2rem;
	}

	.curriTheme h6{
		font-size: 1.6rem;
	}

	.curriTxt{
		padding-top: 1rem;
		font-size: 1.2rem;
	}

	.curriTeacher{
		width: 100%;
		padding-top: 2rem;
	}

	.teacherImg{
		width: 30%;
	}

	.teacherName{
		padding-left: 2rem;
	}

	.teacherName p:first-of-type{
		font-size: 1rem;
	}

	.teacherName p:last-of-type{
		font-size: 1.2rem;
	}

	.info-contents,.accessWrap{
		width: 100%;
		margin: 0 auto;
	}

	/* ---------------------------------------
	* 令和政経
	------------------------------------------ */

	.rewiwaMv{
		padding: 10rem 0 8rem;
		background-image: url(../img/reiwa/mvbgsp.png);
	}

	.rewiwaMv-listImg{
		width: 100%;
	}

	.rewiwaMv-listTxt{
		width: 100%;
		padding-right: 0;
		padding-top: 3rem;
	}

	.rewiwaMv-listsubTtl{
		text-align: center;
	}

	.rewiwaMv-listsubTtl p{
		font-size: 2rem;
	}

	.rewiwaMv-listsubTtl p span{
		font-size: 2.8rem;
	}

	.rewiwaMv-listTtl h2{
		padding: 2rem 0;
	}

	.rewiwaMv-listTtl>p{
		font-size: 1.6rem;
	}

	.rewiwaMv-listTtl>p::before,.rewiwaMv-listTtl>p::after{
		width: 4rem;
		height: 3px;
	}

	.rewiwaMv-listSche{
		margin-top: 3rem;
		padding: 2rem 2rem;
	}

	.rewiwaMv-listSche>p{
		font-size: 1.6rem;
		padding-bottom: 1rem;
	}

	.sche-list{
		column-gap: 3rem;
	}

	.sche-list::after{
		font-size: 1.6rem;
	}

	.sche-listItem p{
		font-size: 1.4rem;
	}

	.sche-listItem p span{
		display: inline-block;
		font-weight: 600;
		line-height: 100%;
		letter-spacing: normal;
		padding-right: 1rem;
		font-size: 2.4rem;
	}


	.aboutBg{
		left: -1rem;
		top: 6rem;
	}

	.aboutBg p{
		font-size: 14rem;
	}

	.aboutWrap{
		padding-bottom: 4rem;
	}

	.about-l,.about-r{
		width: 100%;
	}

	.aboutTtl p:first-of-type{
		font-size: 1.8rem;
	}

	.aboutTtl p:last-of-type{
		padding-top: 1.6rem;
		font-size: 2.4rem;
	}

	.aboutTtl p:last-of-type span{
		font-size: 3.6rem;
	}

	.about-r{
		padding-top: 3rem;
	}

	.aboutSlide{
		width: calc((130rem + 1rem) * 3);
	}

	.aboutSlideImg{
		width: 130rem;
	}

	.aboutData-list{
		margin-top: 4rem;
		padding: 0 2rem;
	}

	.aboutData-listItem{
		width: 100%;
		padding: 3rem;
		border-left: solid 1px #DFDFDF;
	}

	.aboutData-listItem:not(:last-of-type){
		border-bottom: solid 1px #DFDFDF;
	}

	.dataTtl{
		font-size: 1.8rem;
	}

	.dataNum{
		padding-top: 4rem;
		font-size: 2.4rem;
	}

	.dataNum span{
		font-size: 7.6rem;
	}

	.interviewWrap{
		padding-top: 4rem;
	}

	.interviewTxt{
		padding: 0 2rem 4rem;
	}

	.interviewTxt .ttlWrap{
		width: 100%;
	}

	.interviewTxt .interviewSubttl{
		width: 100%;
		padding-top: 2rem;
	}

	.interview-listItem{
		width: 100%;
	}

	.interview-listItem:not(:last-of-type){
		border-right: unset;
		border-bottom: solid 1px rgba(255,255,255,.4);
	}

	.interview-listTxt p{
		font-size: 1.4rem;
	}

	.interview-listTxt h4,.activity-listTxt h4{
		font-size: 1.6rem;
	}

	.curriculumTxt .curriculumSubttl{
		width: 100%;
	}

	.curriculumTxt>p{
		width: 100%;
		padding-top: 2rem;
	}

	.curriculumDetail{
		margin-top: 3rem;
		padding: 2rem;
		overflow: scroll;
	}

	.curriculumImg{
		width: 200%;
	}


	.activity-listItem{
		width: 100%;
	}

	.activity-listItem:not(:last-of-type){
		margin-bottom: 4rem;
	}

	.activity-listTxt{
		padding-top: 2rem;
	}


	.mess-listItem{
		width: 100%;
		padding: 3rem;
	}

	.mess-listItem:not(:last-of-type){
		margin-bottom: 3rem;
	}

	.mess-listItem h3{
		font-size: 2rem;
	}

	.mess-listTxt p{
		font-size: 1.4rem;
	}

	.mess-listTxt p:not(:last-of-type){
		padding-bottom: 2rem;
	}

	.mess-listName{
		font-size: 1.4rem;
	}

	.sup-listItem {
		width: 500rem;
		padding-right: 1rem;
	}

	.sup-listItem02 {
		width: 540rem;
		padding-right: 1rem;
	}


}

.cvArea{
	padding: 12rem 0;	
	background-repeat: no-repeat;
	background-size: cover;
	background-image: url(../img/common/cvBg.png);
}

.cv-l{
	width: 50rem;
}

.cvTtl h4{
	font-size: clamp(18px,2.4rem,28px);
	font-weight: 900;
	line-height: 100%;
	letter-spacing: normal;
	transform: skew(-10deg);
	padding-bottom: 2rem;
}

.cvTtl h4 span{
	display: inline-block;
	font-size: clamp(24px,3.2rem,40px);
}

.cv-l>p{
	font-weight: 600;
	letter-spacing: normal;
	padding-top: 4rem;
}

.cv-r{
	width: 36rem;
}

.cv-btnListItem:not(:last-of-type){
	margin-bottom: 2rem;
}

.cv-btnListItem a{
	display: block;
	background-color: #000000;
	border: solid 2px #000000;
	color: #fff;
	font-size: clamp(14px,1.8rem,18px);
	line-height: 160%;
	letter-spacing: normal;
	font-weight: 600;
	padding: 2.4rem 0;
	transition: all .3s;
}

.cv-btnListItem02 a{
	background-color: #fff;
	border: solid 2px #fff;
	color: #000;
}

.cv-btnListItem a:hover{
	background-color: #fff;
	color: #000;
}

.cv-btnListItem02 a:hover{
	background-color: #000;
	color: #fff;
}

.cvArea02{
	position: relative;
	overflow: hidden;
	background-color: var(--bg01);
}

.cvBg{
	position: absolute;
	left: 0;
	top: 0;
}

.cvArea02 a{
	position: relative;
	z-index: 2;
	padding: 10rem 6rem;
}

.cv02-l>p{
	font-weight: 700;
	padding-top: 4rem;
}

.cv02-r{
	width: 10rem;
	height: 10rem;
	position: relative;
	transform: translateX(-2rem);
	transition: all .5s;
}

.cvArea02 a:hover .cv02-r{
	transform: translateX(0);
}

.cv02-r svg{
	position: absolute;
	left: 0;
	top: 0;
}


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


	.cvArea{
		padding: 8rem 0;	
	}

	.cv-l{
		width: 100%;
	}

	.cvTtl h4{
		text-align: center;
		font-size: 1.8rem;
		padding-bottom: 2rem;
	}

	.cvTtl h4 span{
		font-size: 2.4rem;
	}

	.cv-l>p{
		text-align: center;
		padding-top: 3rem;
	}

	.cv-r{
		width: 100%;
		padding-top: 3rem;
	}

	.cv-btnListItem:not(:last-of-type){
		margin-bottom: 2rem;
	}

	.cv-btnListItem a{
		display: block;
		background-color: #000000;
		border: solid 2px #000000;
		color: #fff;
		font-size: clamp(14px,1.8rem,18px);
		line-height: 160%;
		letter-spacing: normal;
		font-weight: 600;
		padding: 2.4rem 0;
		transition: all .3s;
	}

	.cv-btnListItem02 a{
		background-color: #fff;
		border: solid 2px #fff;
		color: #000;
	}

	.cv-btnListItem a:hover{
		background-color: #fff;
		color: #000;
	}

	.cv-btnListItem02 a:hover{
		background-color: #000;
		color: #fff;
	}

	.cvBg{
		display: none;
	}

	.cvArea02 a{
		text-align: center;
		padding: 8rem 3rem;
	}

	.cv02-l>p{
		font-weight: 700;
		padding-top: 2rem;
	}

	.cv02-r{
		width: 8rem;
		height: 8rem;
		margin: 4rem auto 0;
		transform: translateX(0);
	}

}

.curriculum-filter{
	column-gap: 1rem;
	row-gap: 1rem;
}

.curriculum-filter a{
	display: inline-block;
	padding: 1.2rem 4rem;
	border: solid 2px #222222;
	background-color: #fff;
	line-height: 160%;
	letter-spacing: normal;
	font-weight: 900;
	transition: all .3s;
}

.curriculum-filter a:hover{
	background-color: #222;
	color: #fff;
}

.btn-year.active{
	background-color: #222;
	color: #fff;
}