@charset "UTF-8";

*,
::before,
::after {
	position: relative;
	z-index: auto;
	-webkit-box-sizing: border-box;
	box-sizing: border-box;
	min-height: 0;
}

html {
	width: 100%;
	height: 100%;
	overflow-y: auto;
	font-size: 100%;
	/* 16px */
	font-size: 5vmin;
	/* 画面最小幅320px時に16px */
	-ms-text-size-adjust: 100%;
	-webkit-text-size-adjust: 100%;
	-webkit-font-feature-settings: "palt" 1;
	font-feature-settings: "palt" 1;
}

@media (min-width:719px) {
	html {
		font-size: 2vw;
		/* 画面幅600px時:14.4px 〜 1000px時:16px */
		font-size: calc(16px - (1000px - 100vw) / 280 * 1.6);
	}
}

@media (min-width:1000px) {
	html {
		font-size: 1.6vw;
	}
}

@media (min-width:1250px) {
	html {
		font-size: 125%;
		/* 画面幅1250px以上で20px */
	}
}

@media print {
	html {
		font-size: 9pt;
	}
}

body {
	min-height: 100%;
	background-color: #fff;
	fill: #1e2380;
	color: #1e2380;
	font-size: 1rem;
	font-weight: 400;
}

body,
.sans-serif {
	font-family:
		Arial, Helvetica, Roboto, "Droid Sans",
		sans-serif;
}

.serif {
	font-family:
		"Times New Roman",
		serif;
}

html[lang="ja"] body,
html[lang="ja"] .sans-serif {
	font-family:
		"游ゴシック体", YuGothic, "游ゴシック Medium", "Yu Gothic Medium",
		"ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro",
		"メイリオ", Meiryo, "ＭＳ Ｐゴシック", "MS PGothic", Osaka,
		"Droid Sans Japanese";
}

html[lang="ja"] .serif {
	font-family:
		"游明朝", "Yu Mincho", "游明朝体", "YuMincho",
		"ヒラギノ明朝 Pro W3", "Hiragino Mincho Pro", "HiraMinProN-W3",
		"HGS明朝E", "ＭＳ Ｐ明朝", "MS PMincho";
}

html[lang="ja"] body[data-browser="IE"] {
	font-family:
		"ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro",
		"メイリオ", Meiryo, "ＭＳ Ｐゴシック", "MS PGothic",
}

a,
a::before,
a::after {
	-webkit-transition: all 0.2s 0s;
	transition: all 0.2s 0s;
}

a[href^="http"] {
	-ms-word-break: break-all;
	word-break: break-all;
}

h1,
h2,
h3,
h4,
h5,
h6 {
	font-size: 1em;
}

em,
address {
	font-style: normal;
}

hr {
	clear: both;
	border-style: solid;
	margin: 1.5rem 0;
}

img,
svg {
	max-width: 100%;
	vertical-align: bottom;
}

svg {
	height: 1em;
}

img:not([width]) {
	width: 100%;
}

img:not([height]) {
	height: auto;
}

figure figcaption {
	display: block;
	margin-top: 0.5em;
	line-height: 1.25;
	font-size: 0.625em;
	text-align: left;
}

p+p {
	margin-top: 1em;
}

.icn {
	display: inline-block;
	width: 1em;
	height: 1em;
	vertical-align: middle;
}

.logo {
	display: inline-block;
	vertical-align: bottom;
	line-height: 1;
}

.ib {
	display: inline-block;
}

.kn_bc {
	display: inline-block;
	margin-left: -0.3em;
	margin-right: -0.3em;
}

/* INNER */
.inner {
	clear: both;
}

.inner::after {
	content: '';
	clear: both;
	display: block;
}

.inner,
.-sp_inner,
.-tb_inner,
.-pc_inner {
	margin: auto;
}

.inner .inner,
.-sp_inner .inner,
.-tb_inner .inner,
.-pc_inner .inner {
	margin: auto;
}

.-is_sp,
.-is_tb,
.-is_pc {
	display: none;
}

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

	.inner,
	.-sp_inner {
		width: 90%;
	}

	.-is_sp {
		display: inherit;
	}

	.-no_sp {
		display: none;
	}
}

@media print,
(min-width:720px) and (max-width:1249px) {

	.inner,
	.-tb_inner {
		width: 90%;
	}

	.-is_tb {
		display: inherit;
	}

	.-no_tb {
		display: none;
	}
}

@media print,
(min-width:1250px) {

	.inner,
	.-pc_inner {
		width: 90%;
		max-width: 1200px;
	}

	.-is_pc {
		display: inherit;
	}

	.-no_pc {
		display: none;
	}
}

[data-inview="true"],
[data-inview="true"]::before,
[data-inview="true"]::after {
	opacity: 1;
	-webkit-transition: all 0.5s 0.2s;
	transition: all 0.5s 0.2s;
}

[data-inview="false"],
[data-inview="false"]::before,
[data-inview="false"]::after {
	opacity: 0;
}

body .mfp-content .mfp-figure:after {
	background-color: #FFF;
}

body .mfp-image-holder .mfp-content {
	max-width: 90%;
}

@media print,
(min-width:1250px) {
	body .mfp-image-holder .mfp-content {
		max-width: 1200px;
	}
}


/* to_top */
a.to_top {
	display: block;
	position: fixed;
	bottom: -6em;
	right: 0;
	margin: 1rem;
	width: 3em;
	height: 3em;
	background-color: rgba(0, 0, 0, 0.3);
	color: #FFF;
	fill: #FFF;
	text-align: center;
	text-decoration: none;
	z-index: 2999;
	overflow: hidden;
}

a.to_top::before {
	content: '';
	display: block;
	position: absolute;
	top: 35%;
	right: 0;
	left: 0;
	margin: -0.3em auto auto;
	width: 1em;
	height: 1em;
	border-style: solid;
	border-width: 0.1em 0.1em 0 0;
	-webkit-transform: rotate(-45deg);
	transform: rotate(-45deg);
}

a.to_top.-active {
	bottom: 0;
}

a.to_top .btn_txt {
	display: inline-block;
	position: absolute;
	top: 50%;
	right: 0;
	left: 0;
	margin: auto;
	font-size: 0.6em;
	-ms-word-break: keep-all;
	word-break: keep-all;
	white-space: nowrap;
	line-height: 1.25;
}

@media only print {
	a.to_top {
		display: none;
	}
}






#header {
	background-color: #1e2380;
}

#header,
#header a {
	color: #FFF;
	fill: #FFF;
}

#header a {
	display: block;
	margin: 0;
	color: inherit;
	text-decoration: none;
}

@media (min-width:720px) {
	#header {
		height: 4rem;
	}
}


#header .hokusei_logo {
	padding: 1rem;
}

@media only screen and (max-width:719px) {
	#header .hokusei_logo {
		font-size: 1.25em;
		text-align: center;
	}
}

@media (min-width:720px) {
	#header .hokusei_logo {
		padding: 1rem;
	}
}


#header .head_menu {
	display: table;
	font-size: 0.8125em;
	line-height: 1;
}

#header .head_menu .menu {
	display: table-cell;
	padding: 1em;
	width: 10em;
	text-align: center;
	vertical-align: middle;
}

#header .head_menu .menu .icn {
	vertical-align: middle;
	font-size: 1.5em;
}

#header .head_menu .menu .btn_txt {
	display: inline-block;
	vertical-align: middle;
}

.head_menu .menu_examinee {
	background-color: #4574ac;
}

.head_menu .menu_document {
	background-color: #58bfbf;
}

.head_menu .menu_inquiry {
	background-color: #a2cc4f;
}

@media only screen and (max-width:719px) {
	#header .head_menu {
		font-size: 0.75em;
	}

	#header .head_menu .menu .btn_txt {
		margin-top: 0.25em;
		display: block;
	}
}

@media (min-width:720px) {
	#header .head_menu {
		position: absolute;
		top: 0;
		bottom: 0;
		right: 0;
		height: 100%;
		height: 4rem;
	}
}


#footer .copyright {
	padding: 1rem 0;
	background-color: #1e2380;
	color: #FFF;
	font-size: 0.6875em;
	text-align: center;
	line-height: 1;
}

#footer .hokusei_logo {
	padding: 1rem;
	text-align: center;
	color: #000;
	fill: #000;
	font-size: 1.4em;
}


#banner {
	background-image: url(../images/main-header.jpg);
	background-size: cover;
	text-align: center;
}

#banner,
#bennre a {
	color: #1e2380;
	fill: #1e2380;
}

#banner>.inner::before {
	content: '';
	display: block;
	padding-top: 100%;
}

#banner .banner_logo {
	position: absolute;
	top: 50%;
	/*right: 0;*/
	left: 50%;
	font-size: 1.25em;
	transform: translate(-50%, -50%);
}

#banner .banner_logo svg.logo {
	width: 10.4375em;
	height: 6.25em;
}

#banner .banner_copy {
	position: absolute;
	top: 50%;
	left: 0;
	width: 8rem;
	transform: translate(0, -50%);
}

@media only screen and (max-width:719px) {
	#banner {
		background-position: 75% center;
	}

	#banner .banner_copy {
		font-size: 5vw;
		width: 5rem;
		transform: translate(0, -100%);
	}
}

@media (min-width:720px) {
	#banner>.inner::before {
		padding-top: 52%;
	}

	#banner .banner_logo {
		font-size: 1.667vw;
	}

	#banner .banner_copy {
		font-size: 3vw;
	}
}

@media (min-width:1200px) {
	#banner .banner_logo {
		width: 45%;
	}

	#banner .banner_copy {
		font-size: 1.8rem;
	}
}


#copy {
	text-align: center;
}

#copy>.inner {
	padding: 1.5rem 0;
}

#copy p {
	line-height: 1.75;
}

#copy strong {
	font-size: 1.25em;
}

@media only screen and (max-width:719px) {
	#copy {
		font-size: 0.875em;
	}
}


.sect_block.visual_head {
	margin-bottom: 3rem;
}

.sect_block .sect_head {
	text-align: center;
}

.sect_block .sect_head .sect_title {
	font-size: 1.375em;
	letter-spacing: 0.2em;
	text-indent: 0.2em;
}

.sect_block .sect_head .sect_notice {
	position: absolute;
	top: 75%;
	right: 0;
	left: 0;
	margin: auto;
	padding: 0.75em;
	width: 16em;
	border: solid 1px;
	background-color: rgba(0, 0, 0, 0.5);
	font-size: 0.75em;
	-webkit-transform: translate(0, -50%);
	transform: translate(0, -50%);
}

.sect_block.visual_head .sect_head {
	background-repeat: no-repeat;
	background-size: cover;
	background-position: center center;
	color: #FFF;
}

.sect_block.visual_head .sect_body .inner {
	padding: 1.5rem 0;
}

.sect_block.visual_head .sect_head .inner::before {
	content: '';
	display: block;
}

.sect_block.visual_head .sect_head .sect_title {
	position: absolute;
	right: 0;
	left: 0;
	-webkit-transform: translate(0, -50%);
	transform: translate(0, -50%);
}

@media only screen and (max-width:719px) {
	.sect_block.visual_head .sect_head .sect_title {
		/* top: 35%; */
		top: 50%;
	}

	.sect_block.visual_head .sect_head .inner::before {
		padding-top: 50%;
	}

	.sect_block.visual_head .movie_list>.movie_block {
		-ms-flex-basis: 14rem;
		-ms-flex-preferred-size: 14rem;
		flex-basis: 14rem;
	}
}

@media (min-width:720px) {
	.sect_block.visual_head .sect_head .inner::before {
		padding-top: 28%;
	}

	.sect_block.visual_head .sect_head .sect_title {
		top: 50%;
	}
}

.cont_menu {
	font-size: .8125em;
	text-align: center;
	overflow: hidden;
	color: #FFF;
	fill: #FFF;
	margin: 2rem 0;
}

.cont_menu .inner {}

.cont_menu .menu_list {
	list-style: none;
	display: flex;
	justify-content: space-between;
}

.cont_menu .menu_list>li {}

.cont_menu a {
	color: #fff;
	fill: inherit;
	text-decoration: none;
	line-height: 1.5;
	background-color: #1e2380;
	display: inline-flex;
	border-radius: 0.5em;
}

.cont_menu a:after {
	content: " ";
	display: block;
	height: 0.75em;
	width: 0.75em;
	border-top: 2px solid #fff;
	border-right: 2px solid #fff;
	transform: rotate(45deg);
	position: absolute;
	right: 1em;
}

@media only screen and (max-width:719px) {
	.cont_menu {
		margin: 1rem 0;
		font-size: 0.75em;
	}

	.cont_menu .menu_list {
		flex-wrap: wrap;
		text-align: left;
	}

	.cont_menu .menu_list>li {
		width: 49%;
		margin-bottom: 0.2rem;
	}

	.cont_menu .menu_list a {
		padding: 0.5em;
		display: block;

	}

	.cont_menu .menu_list a:after {
		top: 50%;
		right: 0.5em;
		transform: translateY(-50%) rotate(45deg);
	}

	.cont_menu .menu_list a::before {
		/*content: '';
		display: inline-block;
		margin-left: -1em;
		margin-right: .2em;
		width: 0;
		height: 0;
		border-style: solid;
		border-width: .6em .4em 0;
		border-color: #FFF transparent;*/
	}
}

@media (min-width:720px) {
	.cont_menu .menu_list>li {
		width: 24%;
		border-style: solid;
		border-width: 0 1px 0 0;
		border-color: rgba(255, 255, 255, .5);
	}

	.cont_menu .menu_list>li:first-child {
		border-left-width: 1px;
	}

	.cont_menu a {
		display: flex;
		justify-content: center;
		-ms-align-items: center;
		align-items: center;
		height: 4em;
	}

	.cont_menu a:hover::after {
		content: '';
		display: block;
		position: absolute;
		top: 100%;
		right: 0;
		left: 0;
		margin: auto;
		width: 0;
		height: 0;
		border-style: solid;
		border-width: .5em .3em 0;
		border-color: #FFF transparent;
	}
}

.faculty_block:not(:last-child) {
	margin-bottom: 1.5rem;
	padding-bottom: 1.5rem;
	border-bottom: solid 1px;
}

.faculty_block .faculty_title {
	margin-bottom: 0.5rem;
	font-size: 1.25em;
	font-weight: bold;
	letter-spacing: 0.1em;
}

.faculty_block .faculty_title::before {
	content: '';
	display: inline-block;
	margin-bottom: 0.2em;
	margin-right: 0.25em;
	width: 1em;
	height: 1em;
	background-image: url(../images/arr.svg);
	background-position: center center;
	background-size: 1em 1em;
	font-size: 1.25em;
	vertical-align: middle;
}

.movie_list {
	list-style: none;
	display: -ms-flex;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-ms-flex-wrap: wrap;
	flex-wrap: wrap;
	margin: auto auto -1rem;
	padding: 0;
}

.movie_list>.movie_block {
	-ms-flex-shrink: 0;
	-ms-flex-negative: 0;
	flex-shrink: 0;
	-ms-flex-grow: 0;
	-webkit-box-flex: 0;
	-ms-flex-positive: 0;
	flex-grow: 0;
	margin-bottom: 1rem;
	text-align: left;
}

.movie_list>.movie_block .movie[href=""] {
	pointer-events: none;
}

.movie_list>.movie_block p {
	text-align: justify;
}

.movie_block .movie {
	display: block;
	overflow: hidden;
	line-height: 1;
	vertical-align: bottom;
	background-color: #000;
	color: #FFF;
	fill: #FFF;
}

.movie_block .movie::before {
	content: '';
	display: block;
	padding-top: 56.25%;
}

.movie_block .movie:not([href=""])::before {
	background-color: rgba(0, 0, 0, 0.5);
	z-index: 10;
}

#pickup .movie_block .movie::before {
	visibility: hidden;
}

.movie_block .movie:not([href=""])::after {
	content: '';
	display: block;
	position: absolute;
	top: 0;
	bottom: 0;
	right: 0;
	left: 0;
	margin: auto;
	width: 0;
	height: 0;
	border-style: solid;
	border-width: 0.8em 0 0.8em 1.5em;
	border-color: transparent #FFF;
	z-index: 20;
}

.movie_block .movie>iframe,
.movie_block .movie>img {
	position: absolute;
	top: 0;
	bottom: 0;
	right: 0;
	left: 0;
	width: 100%;
	height: 100%;
}

.movie_block .movie_title {
	font-weight: normal;
	line-height: 1.5;
}

.movie_block .movie_title span {
	display: block;
	font-size: 0.8em;
}

@media only screen and (max-width:719px) {
	.movie_list>.movie_block {
		margin: 1rem auto;
		-ms-flex-basis: 16rem;
		-ms-flex-preferred-size: 16rem;
		flex-basis: 16rem;
	}

	.movie_block .movie_title {
		font-size: 0.875em;
	}
}

@media (min-width:720px) {
	.movie_list>.movie_block {
		width: 32%;
	}

	.movie_list>.movie_block:not(:nth-child(3n + 0)) {
		margin-right: 2%;
	}

	.movie_list>.movie_block:first-child:last-child {
		margin-left: auto;
		margin-right: auto;
	}

	.movie_block .movie_title {
		font-size: 1em;
	}


}

.footnote {
	padding-left: 1em;
	font-size: .75em;
}

.footnote::before {
	content: '※';
	display: inline-block;
	margin-left: -1em;
	width: 1em;
}

.exbn {
	margin: 2em 0;
}

.exbn a {
	display: block;
	width: 90%;
	max-width: 550px;
	margin: 0 auto;
}


#pickup.sect_block {
	padding: 1.5rem 0;
	background: linear-gradient(0deg, #ffffff 0%, #f8d2e2 100%);
	color: #e85298;
	fill: #e85298;
}

#pickup.sect_block .sect_head {
	margin-bottom: 1rem;
}

#pickup.sect_block .sect_head .sect_title {
	display: inline-block;
	padding: 0.5em 1em;
	line-height: 1;
}

#pickup.sect_block .sect_head .sect_title::before,
#pickup.sect_block .sect_head .sect_title::after {
	content: '';
	display: block;
	position: absolute;
	top: 0;
	bottom: 0;
	width: 0;
	border-left: solid 1px;
}

#pickup.sect_block .sect_head .sect_title::before {
	left: 0;
	-webkit-transform: rotate(-15deg);
	-ms-transform: rotate(-15deg);
	-o-transform: rotate(-15deg);
	transform: rotate(-15deg);
}

#pickup.sect_block .sect_head .sect_title::after {
	right: 0;
	-webkit-transform: rotate(15deg);
	-ms-transform: rotate(15deg);
	-o-transform: rotate(15deg);
	transform: rotate(15deg);
}


#pickup.sect_block .pickup_slide .movie_block {
	margin-right: 5vw;
	margin-left: 5vw;
	-webkit-transition: all .4s;
	-o-transition: all .4s;
	transition: all .4s;

}
@media (min-width:719px) {
	#pickup.sect_block .pickup_slide .movie_block {
		margin-right: 2vw;
		margin-left: 2vw;
	}
}

#pickup.sect_block .pickup_slide .movie_block.slick-current {
	margin-top: 0;
}

#pickup.sect_block .pickup_slide .slick-arrow {
	display: block;
	left: 50%;
	width: 1em;
	height: 1em;
	-webkit-transform: translate(-50%, -50%);
	-ms-transform: translate(-50%, -50%);
	-o-transform: translate(-50%, -50%);
	transform: translate(-50%, -50%);
	z-index: 1001;
}

#pickup.sect_block .pickup_slide .slick-arrow::before {
	content: '';
	display: block;
	width: 1.5em;
	height: 1.5em;
	border: solid 4px #e85298;
	font-size: 1em;
	-webkit-transform: rotate(45deg);
	-ms-transform: rotate(45deg);
	-o-transform: rotate(45deg);
	transform: rotate(45deg);
}

#pickup.sect_block .pickup_slide .slick-arrow.slick-next::before {
	border-left-width: 0;
	border-bottom-width: 0;
}

#pickup.sect_block .pickup_slide .slick-arrow.slick-prev::before {
	border-top-width: 0;
	border-right-width: 0;
}

#pickup.sect_block .pickup_slide .slick-dots {
	position: relative;
	bottom: auto;
}

#pickup.sect_block .pickup_slide .slick-dots>li button::before {
	content: '■';
	color: #e85298;
	width: 1em;
	height: 1em;
	line-height: 1;
	font-size: 1rem;
}

@media only screen and (max-width:719px) {
	#pickup.sect_block {
		height: 120vw;
	}

	#pickup.sect_block .pickup_slide .movie_block {
		width: 16rem;
	}

	#pickup.sect_block .pickup_slide .slick-arrow {
		top: 4.5rem;
		font-size: .75em;
	}

	#pickup.sect_block .pickup_slide .slick-arrow.slick-next {
		margin-left: 8.5rem;
	}

	#pickup.sect_block .pickup_slide .slick-arrow.slick-prev {
		margin-left: -8.5rem;
	}

	#pickup.sect_block .pickup_slide .slick-arrow.slick-prev::before {
		margin-left: -.5em;
	}
}

@media (min-width:720px) {
	#pickup.sect_block {
		height: 42vw;
	}

	#pickup.sect_block .pickup_slide .movie_block {
		margin-top: 2.6vw;
		width: 26vw;
	}

	#pickup.sect_block .pickup_slide .movie_block.slick-current {
		width: 36vw;
	}

	#pickup.sect_block .pickup_slide .slick-arrow.slick-next {
		margin-left: 23vw;
	}

	#pickup.sect_block .pickup_slide .slick-arrow.slick-prev {
		margin-left: -23vw;
	}

	#pickup.sect_block .pickup_slide .slick-arrow {
		top: 10.125vw;
		font-size: 1.5em;
	}

	#pickup.sect_block .pickup_slide .slick-arrow.slick-next::before {
		margin-left: -.5em;
	}

	/*20231120暫定措置追加*/
	#pickup.sect_block .pickup_slide {
		display: flex;
		justify-content: center;
	}
}

#introduction.sect_block {
	padding: 1.5rem 0;
	background-color: #dff2fc;
	background-image: url(../images/introduction-bg.jpg);
	background-repeat: no-repeat;
	background-size: cover;
	background-position: center center;
	text-align: center;
}

#introduction.sect_block .sect_head {
	margin-bottom: 1rem;
}

#school_subject.sect_block .sect_head {
	background-color: #1a678b;
	background-image: url(../images/school_subject-header.jpg);
}

#trial_lesson.sect_block .sect_head {
	background-color: #6f4c68;
	background-image: url(../images/trial_lesson-header.jpg);
}

#campus_tour.sect_block .sect_head {
	background-color: #5db6e7;
	background-image: url(../images/campus_tour-header.jpg);
}

#campus_tour.sect_block .movie_list>.movie_block:first-child {
	margin-left: auto;
}

#campus_tour.sect_block .movie_list>.movie_block:last-child {
	margin-right: auto;
}

#campus_tour.sect_block .movie_block p {
	margin-top: -.25em;
	font-size: .9em;
	text-align: justify;
}

#talk_session.sect_block .sect_head {
	background-color: #f5ab2d;
	background-image: url(../images/talk_session-header.jpg);
}

#talk_session.sect_block .movie_list {
	justify-content: center;
}


#hokusei_life.sect_block .sect_head {
	background-color: #56bca9;
	background-image: url(../images/hokusei_life-header.jpg);
}

#hokusei_life.sect_block .movie_list>.movie_block:first-child {
	margin-left: auto;
}

#hokusei_life.sect_block .movie_list>.movie_block:last-child {
	margin-right: auto;
}

#hokusei_life.sect_block .movie_block p {
	margin-top: -.25em;
	font-size: .9em;
	text-align: justify;
}

/* 2025/4 追記 */
.notice-text {
	text-align: center;
	font-size: 0.8em;
	padding-top: 0.5rem;
}
.faculty_block .notice-text{
	padding-top: 0.8rem;
	text-align: left;

}
@media screen and (max-width:720px) {
	.faculty_block .notice-text{
		text-align: center;
	}		
}

/* figcaption small{
	font-size: 0.8rem;
} */