/* CSS Document */ :root {
		--font-color-1: #1D1D1F;
		--font-color-2: #626263;
		--g1: #F5F5F7;
		--g2: #1D1D1F;
		
		--b1: #009BD6;
}

/*オリジナルscssの.slick-track:afterを打ち消し*/
/*.slick-track:after {
display: none;
}*/

/*------------------------
------------------------
body
------------------------
----------------------*/
body {
color: var(--font-color-1);
}

/*------------------------
------------------------
main
------------------------
----------------------*/
main {
	margin-top: 70px;
}
@media (min-width: 992px) {
main {
	margin-top: 90px;
}
body.home main {
	margin-top: 0px;
}
}

/*------------------------
------------------------
container
------------------------
----------------------*/
.container {
		padding-right: 24px;
		padding-left: 24px;
		margin-right: auto;
		margin-left: auto;
}
body:not(.home) .container {
		padding-right: 15px;
		padding-left: 15px;
}

/*幅広*/
.container2 {
		width: 100%;
		padding-right: 24px;
		padding-left: 24px;
		margin-right: auto;
		margin-left: auto;
}
@media (min-width: 576px) {
		.container2 {
				max-width: 540px;
		}
}
@media (min-width: 768px) {
		.container2 {
				max-width: 720px;
		}
}
@media (min-width: 992px) {
		.container2 {
				max-width: 960px;
		}
}
@media (min-width: 1200px) {
		.container-xl, .container-lg, .container-md, .container-sm, .container {
				max-width: 1170px;
		}
		.site-footer .bnr-block .container {
				max-width: 1200px;
		}
		.container2 {
				max-width: 1488px;
		}
}

/*slick.jsをoverflow:visibleにしてると右がはみ出す対策*/
/*現状slick.jsを使っているトップページに限定（下層のMVで一部要素が隠れてしまうので）*/
.home section {
overflow: hidden;
}

/*slick.jsの高さを揃える*/
.slick-track {
  display: flex;
}
.ec-slider-nav .slick-track,
.sg-slider-nav .slick-track,
.custom-grid-slick1 .slick-track {
  display: block;
}
.ec-slider-nav .slick-track {
transform: translate3d(0px, 0px, 0px) !important;
}
.slick-slide {
  height: auto;
}
.slick-slide > div,
.slick-slide > div > div {
  height: 100%;
}

.sg-slider-for .slick-slide > div,
.sg-slider-for .slick-slide > div > div,
.ec-slider-nav .slick-slide > div,
.ec-slider-nav .slick-slide > div > div,
.sg-slider-nav .slick-slide > div,
.sg-slider-nav .slick-slide > div > div {
  height: auto;
}


/*セクションコンテナの上下アキ*/
.cont-block1 {
		padding: 24px 0px;
}
#about-block {
	background: #dfdfdf;
}

#school-award-block {
padding-top: 0px;
}

@media (min-width: 992px) {
.cont-block1 {
		padding: 40px 0px;
}
}

/*背景グレー*/
.back-g1 {
		background: var(--g1);
}

/*フェードイン表示*/
.view, .fview {
  opacity: 0;
  -webkit-transition: all 1.5s ease 0.1s;
  transition: all 1.5s ease 0.1s;
  -webkit-transform: translate3d(0, 30px, 0);
  transform: translate3d(0, 30px, 0);
}



/*------------------------
黒いアウトラインボタンのスタイル変更
------------------------*/
main .btn-outline-dark {
  color: #fff;
  background-color: #C58647;
  border-color: #C58647;
}
main .btn-outline-dark:hover {
  color: #C58647;
  background-color: transparent;
  border-color: #C58647;
}
main .btn-outline-dark:focus, main .btn-outline-dark.focus {
  -webkit-box-shadow: 0 0 0 0.2rem rgba(24, 23, 24, 0.5);
          box-shadow: 0 0 0 0.2rem rgba(24, 23, 24, 0.5);
}
main .btn-outline-dark.disabled, main .btn-outline-dark:disabled {
  color: #fff;
  background-color: #C58647;
}
main .btn-outline-dark:not(:disabled):not(.disabled):active, main .btn-outline-dark:not(:disabled):not(.disabled).active, main .show > .btn-outline-dark.dropdown-toggle {
  color: #C58647;
  background-color: transparent;
  border-color: #C58647;
}
main .btn-outline-dark:not(:disabled):not(.disabled):active:focus, main .btn-outline-dark:not(:disabled):not(.disabled).active:focus, main .show > .btn-outline-dark.dropdown-toggle:focus {
  -webkit-box-shadow: 0 0 0 0.2rem rgba(24, 23, 24, 0.5);
          box-shadow: 0 0 0 0.2rem rgba(24, 23, 24, 0.5);
}



/*----------------------
------------------------
ヘッダー
------------------------
----------------------*/
.site-header {
		padding-top: 0px;
	/*box-shadow: 0px 2px 6px 0px rgba(0,0,0,0.1);*/
}
.site-header::before, .site-header::after {
		display: none;
}
.site-header.front-header .logo {
		background-image: url(images/logo/logo.svg);
}

.site-header .menu-toggle span,
.menu-active .on.site-header .menu-toggle span {
background-color: #333 !important;
}
.menu-toggle span:nth-of-type(2) {
opacity: 0;
}

@media (max-width: 991px) {
    .menu-toggle {
        display: block;
    }
}
@media (min-width: 992px) {
		.site-header .logo {
				width: min(25vw, 230px) !important;
				height: 50px !important;
				background: url(images/logo/logo.svg) center center/ 100% auto no-repeat;
				margin: 5px 0px 0px 40px;
				position: absolute;
				left: 0px;
				top: 0px;
		}
}
@media (min-width: 1050px) {
		.site-header .logo {
				margin-top: 20px;
		}
}
.site-header .header-head {
		top: 0px;
}
.site-header .inner, .site-header.on .inner {
		background: #fff;
		padding-top: 55px;
		padding-left: calc(100% - 1140px - 40px);
		padding-right: 40px;
		padding-bottom: 10px;
}
.site-header .inner:has(.dropdown:hover) {
		background: #fff;
}

/*----------------------
グローバルナビ
----------------------*/
.gnav {
		/*font-size: 1rem;*/
}
.gnav .dropdown {
		position: static;
	margin-left: 24px;
}
.site-header .gnav > ul > li > a,
.site-header.front-header .gnav > ul > li > a {
		color: var(--font-color-1);
		padding: 1rem 0.5rem;
}
/*.gnav .dropdown#nav-schools > a {
pointer-events: none;
}*/

.site-header.front-header.on .gnav ul > li > a:hover,
.site-header .gnav ul > li > a:hover {
background: #fff;
opacity: 0.5;
}

.site-header.front-header .header-head {
		font-size: 0;
}
.site-header .header-head .btn,
.site-header.front-header .header-head .btn {
		padding: 0.8em 1.2em;
		color: var(--font-color-1);
		font-size: 0.75rem;
}
.site-header .header-head .btn:last-child {
		background-color: #333336;
		color: #fff !important;
		transition: all 0.15s;
	margin-left: 15px;
}
.site-header .header-head .btn:last-child:hover,
.site-header.front-header .header-head .btn:last-child:hover {
		background-color: #333336;
		opacity: 0.7;
}

/*アイコンフォント（寄付）*/
.bg-donate-lt {
		background: url(images/reform/icon/icon-donate-light.svg) center center/100% auto no-repeat;
		display: inline-block;
		width: 1.5em;
		height: 1.5em;
		background-size: contain;
		-webkit-transition: all 0.25s;
		transition: all 0.25s;
		vertical-align: middle;
}
.bg-donate {
		background: url(images/reform/icon/icon-donate.svg) center center/100% auto no-repeat;
		display: inline-block;
		width: 1.5em;
		height: 1.5em;
		background-size: contain;
		-webkit-transition: all 0.25s;
		transition: all 0.25s;
		vertical-align: middle;
}

.btn-outline-dark .bg-donate {
		background: url(images/reform/icon/icon-donate.svg) center center/100% auto no-repeat;
}

/*.footer-head-link a:hover .bg-donate {
		background: url(images/reform/icon/icon-donate-light.svg) center center/100% auto no-repeat;
}*/

.footer-head-link a.btn-outline-dark:hover .bg-donate {
		background: url(images/reform/icon/icon-donate-light.svg) center center/100% auto no-repeat;
}

.site-header .dropdown-menu .dropdown-item,
.site-header.front-header .dropdown-menu .dropdown-item {
		color: var(--font-color-1);
		display: inline-block;
		text-align: left;
		padding: 0px;
		word-wrap: break-word;
		vertical-align: middle;
}
.dropdown-item:hover, .dropdown-item:focus {
background-color: transparent;
}

.bg-pin {
		background: url(images/reform/icon/icon-marker.svg) center center/100% auto no-repeat;
		display: inline-block;
		width: 1.5em;
		height: 1.5em;
		background-size: contain;
		-webkit-transition: all 0.25s;
		transition: all 0.25s;
		vertical-align: middle;
}
.slidebar-link .bg-pin {
		background: url(images/reform/icon/icon-marker.svg) center center/100% auto no-repeat;
}

.bg-cmap {
		background: url(images/reform/icon/cmap.svg) center center/100% auto no-repeat;
		display: inline-block;
		width: 1.5em;
		height: 1.5em;
		background-size: contain;
		-webkit-transition: all 0.25s;
		transition: all 0.25s;
		vertical-align: middle;
}
.slidebar-link .bg-cmap {
		background: url(images/reform/icon/cmap.svg) center center/100% auto no-repeat;
}


.bg-nfs {
		background: url(images/reform/icon/icon-nfs.svg) center center/100% auto no-repeat;
		display: inline-block;
		width: 1.5em;
		height: 1.5em;
		background-size: contain;
		-webkit-transition: all 0.25s;
		transition: all 0.25s;
		vertical-align: middle;
}
.bg-mail {
		background: url(images/reform/icon/icon-mail.svg) center center/100% auto no-repeat;
		display: inline-block;
		width: 1.5em;
		height: 1.5em;
		background-size: contain;
		-webkit-transition: all 0.25s;
		transition: all 0.25s;
		vertical-align: middle;
}
.bg-100 {
		background: url(images/reform/icon/icon-100.svg) center center/100% auto no-repeat;
		display: inline-block;
		width: 1.5em;
		height: 1.5em;
		background-size: contain;
		-webkit-transition: all 0.25s;
		transition: all 0.25s;
		vertical-align: middle;
}
.btn-outline-dark .bg-mail {
		background: url(images/reform/icon/icon-mail.svg) center center/100% auto no-repeat;
}
.btn-outline-dark .bg-nfs {
		background: url(images/reform/icon/icon-nfs.svg) center center/100% auto no-repeat;
}
.slidebar-link a:hover .bg-pin {
		background: url(images/reform/icon/icon-marker-light.svg) center center/100% auto no-repeat;
}
.slidebar-link a:hover .bg-cmap {
		background: url(images/reform/icon/cmap-light.svg) center center/100% auto no-repeat;
}
/*.slidebar-link a:hover .bg-mail,
.footer-head-link a:hover .bg-mail {
		background: url(images/reform/icon/icon-mail-light.svg) center center/100% auto no-repeat;
}*/
.slidebar-link a:hover .bg-mail,
.footer-head-link a.btn-outline-dark:hover .bg-mail {
		background: url(images/reform/icon/icon-mail-light.svg) center center/100% auto no-repeat;
}
.footer-head-link a.btn-outline-dark:hover .bg-nfs {
		background: url(images/reform/icon/icon-nfs-light.svg) center center/100% auto no-repeat;
}

.footer-head-link a{
	padding: 1.1em 0.25em;
}

/*ハンバーガーメニュー*/
.header-sp-r{
display: flex;
}
.menu-toggle{
}
.menu-toggle span {
    left: 20px;
    width: 20px;
}

/*ヘッダー内寄付ボタン*/
.btn-donate {
display: block;
width: 30px;
height: 60px;
display: flex;
align-items: center;
}
.btn-donate .bg-donate {
width: 30px;
height: 20px;
color: var(--font-color-1);
}

@media (max-width: 991px) {
		 .site-header {
     padding-top: 0;
   }
		.site-header .header-head,
		.gnav {
				display: none;
		}
  .site-header .inner {
    padding: 5px 0px 5px 20px !important;
  }
}
@media (min-width: 992px) {
		.site-header .inner {
				width: 100%;
				max-width: 100%;
				margin: 0px;
				padding-top: 55px;
				padding-left: calc(100% - 1140px - 40px);
				padding-right: 40px;
				padding-bottom: 10px;
				justify-content: flex-end;
				background: rgba(255, 255, 255, 0.7);
		}
		
		/*ドロップダウンメニュー（設置校）*/
	/*	.gnav .dropdown .dropdown-menu {
				flex-wrap: wrap;
		}*/
		.site-header .dropdown-menu .dropdown-item {
				width: 30%;
				position: relative;
				transition: all 0.2s;
		}
		.site-header .dropdown-menu .dropdown-item:hover {
		opacity: 0.5;
		}

		.dropdown-toggle::after {
				content: "";
				display: inline-block;
				width: 0.5em;
				height: 0.5em;
				border-top: 0px;
				border-right: solid 2px var(--font-color-1);
				border-bottom: solid 2px var(--font-color-1);
				border-left: 0px;
				transform: rotate(45deg);
				/*position: absolute;
		right: 0.5em;
		top: 50%;
		margin-top: -0.5em;*/
				margin-left: 0.6em;
				vertical-align: 0.255em;
				transition: all 0.2s;
		}
		.dropdown-toggle:hover::after {
				transform: rotate(-135deg);
				margin-bottom: -0.255em;
		}
}

.gnav .dropdown .dropdown-menu {
		width: 100%;
		left: 0px;
		top: 82px;
		margin-top: 0px;
		background: #fff;
		text-align: center;
		display: flex;
		justify-content: space-between;
		column-gap: min(2vw, 40px);
		transform: translateY(-20px);
}
.gnav .dropdown#nav-schools .dropdown-menu {
		flex-wrap: wrap;
		padding: 32px;
}
.site-header.front-header .dropdown-menu .dropdown-item:hover {
background-color: transparent !important;
}


/*.site-header.front-header .dropdown:nth-child(5) .dropdown-menu {
		justify-content: center;
}*/

@media (min-width: 1200px) {
		.gnav .dropdown .dropdown-menu,
		.gnav .dropdown#nav-schools .dropdown-menu {
				flex-wrap: nowrap;
				justify-content: center;
		}
		.site-header .dropdown-menu .dropdown-item {
				width: 206px;
				font-size: min(0.9vw, 14px);
		}
		.site-header .dropdown:nth-child(2) .dropdown-menu .dropdown-item:nth-child(2),
		.site-header .dropdown:nth-child(3) .dropdown-menu .dropdown-item:nth-child(2) {
				font-size: min(0.7vw, 14px);
		}
}
.site-header .dropdown-menu .dropdown-item img {
		display: block;
		transition: all 0.2s;
}
.site-header .dropdown-menu .dropdown-item .ion-md-open {
position: absolute;
right: 0px;
bottom: 5px;
}


/*学園概要以降のドロップダウンメニュー*/
.gNav-inner-list {
width: 600px;
display: flex;
justify-content: space-around;
flex-wrap: wrap;
text-align: left;
column-gap: 40px;
padding: 32px 0px;
margin-bottom: 0px;
}
.gNav-inner-list dt {
width: 100%;
padding-bottom: 1em;
margin-bottom: 1em;
border-bottom: solid 1px #ccc;
}
.gNav-inner-list dd {
font-size: 0.87rem;
width: calc((100% - 40px) / 2);
margin-bottom: 0px;
}
.gNav-inner-list a {
display: block;
color: var(--font-color-1);
padding: 0.2em 0px;
position: relative;
}
.gNav-inner-list a:hover {
				opacity: 0.5;
}
.gNav-inner-list dd a::before {
    content: "";
    display: inline-block;
    width: 0.7em;
    height: 0px;
    margin-right: 0.5em;
    padding-top: calc(0.4em - 1px);
    margin-bottom: 0.5em;
    border-bottom: solid 1px var(--font-color-1);
    vertical-align: middle;
}
.gNav-inner-list dd a::after {
    content: "";
    display: block;
    width: 0.4em;
    height: 0.4em;
    border-top: solid 1px var(--font-color-1);
    border-right: solid 1px var(--font-color-1);
    transform: rotate(45deg);
    position: absolute;
    right: 0.5em;
    top: 50%;
    margin-top: -0.5em;
				transition: all 0.2s;
}
.gNav-inner-list dt a::after {
content: "";
display: block;
width: 20px;
height: 20px;
background: url(images/reform/common/arrow/arrow-bl.svg) center center / cover no-repeat;
position: absolute;
right: 0px;
top: 50%;
margin-top: -10px;
transition: all 0.2s;
}

.dropdown-menu-pic1 {
width: calc(100%  - 640px);
max-width: 600px;
}
.gNav-inner-list dd a:hover::after {
    right: 0.8em;
}
.gNav-inner-list dt a:hover::after {
    right: 0.5em;
}


/*左揃え用（space-betweenで要素数が奇数の場合に最後の要素がセンタ揃えになってしまう対策）*/
.gNav-inner-list::after {
content: "";
display: block;
width: calc((100% - 40px) / 2);
height: 1px;
}

/*カレント表示*/
.page-current {
				opacity: 0.5;
}

/*----------------------
サイドバー（スマホメニュー）
----------------------*/
		.slide-bar {
		background-color: #fff;
/*		visibility: visible !important;
		opacity: 1;
		pointer-events: auto;*/
		}
		
		.menu-active .site-header {
    background-color: transparent !important;
}
		
		.menu-active .site-header .logo {
		    background-image: url(images/logo/logo.svg) !important;
		}
		
/*		.slide-bar .title {
		border-bottom: solid 1px #CCCCCC;
		}*/
.slide-bar ul li a.aside-list-head,
.slide-bar a.link-single {
		/*pointer-events: none;*/
		border-bottom: solid 1px #CCCCCC;
		padding-top: 1.7rem;
		}
/*		.multi-collapse {
		padding: 0.6rem 0px;
		}*/
		.multi-collapse li:first-child {
		margin-top: 1.2em;
		}
		.multi-collapse li:last-child {
		margin-bottom: 1.2em;
		}
.slide-bar ul li.title {
	position: relative;
}

.slide-bar ul li a {
		color: var(--font-color-1);
		padding: 0.6rem 0px;
}
.slide-bar ul li a.aside-list-head {
    display: block;
				padding: 1.7rem 0px 0.6rem;
    line-height: 1;
}
.slide-bar ul li a.collapse-toggle {
				display: block;
    position: absolute;
    right: 0px;
				top: 0px;
				padding: 1.7rem 0px 0.6rem;
    font-size: 1.25em;
    border: none;
    width: 1em;
    height: 0.75em;
    line-height: 0.75em;
    text-align: center;
    font-weight: normal;
	box-sizing: content-box;
	font-style: normal;
	cursor: pointer;
}
.collapse-toggle::before {
display: block;
	position: relative;
content: "－";
width: 100%;
	height: 100%;
	border: none;
 right: 0px;
	/*top: 0px;*/
}
/*.collapse-toggle::before {
right: 0px;
margin-top: auto;
}*/
.collapse-toggle.collapsed::before {
    content: "+";
}


		.slide-bar ul li a.link {
		font-size: 0.933rem;
		}
		.slide-bar ul li a.link::before {
    content: "" !important;
    display: inline-block;
    width: 0.7em;
    height: 0px;
    margin-right: 0.2em;
    padding-top: calc(0.6em - 1px);
    margin-bottom: 0.5em;
    border-bottom: solid 1px var(--font-color-1);
    vertical-align: middle;
				position: static;
}
		.slide-bar ul li a.link .ion-md-open {
		font-size: 1em;
		position: absolute;
		right: 0px;
		top: 50%;
		margin-top: -0.5em;
		margin-right: 0.3em;
}
		
.slide-bar ul li > ul {
width: 100%;
background-color: #fff;
}

.slide-bar .inner {
width: calc(100% - 48px);
margin: auto;
}
.slide-bar ul li a.link.blank::after {
    content: "\f33b";
    display: inline-block;
    width: 1em;
    height: 1em;
    font-family: "Ionicons";
    speak: none;
    font-style: normal;
    font-weight: normal;
    font-variant: normal;
    text-transform: none;
    text-rendering: auto;
    line-height: 1;
    transition: all 0.25s;
    position: absolute;
    right: 0px;
    top: 50%;
    margin-top: -0.325em;
    font-size: 1em;
}


.link-single {
position: relative;
}
.link-single::after {
		content: "";
		display: block;
		width: 0.4em;
		height: 0.4em;
		border-top: solid 1px var(--font-color-1);
		border-right: solid 1px var(--font-color-1);
		transform: rotate(45deg);
		position: absolute;
		right: 0.5em;
		top: 50%;
		transition: all 0.2s;
}

.slidebar-link {
display: flex;
justify-content: space-between;
column-gap: 12px;
row-gap:12px;
flex-wrap: wrap;
margin: 32px 0px;
}
.slidebar-link .btn {
display: block;
width: calc(50% - 6px);
padding: 1em 0px;
}
.slidebar-link a:nth-child(-n+2) {
width: 100%;
}
.slidebar-link a:nth-child(n+3) {
font-size: 0.93rem;
}
.slidebar-link a.footer-head-link-sns {
	font-size: 1.7rem;
	padding: 0.1em 1.5em;
}


/*------------------------
------------------------
フッター
------------------------
------------------------*/
.site-footer {
		background: #F2F1EB;
		border-top-width: 0px;
}
.bnr-carousel .slick-list {
	line-height: 0;
}
.bnr-carousel .slick-slide {
width: 300px;
}
.site-footer .slick-track {
		padding: 32px 0px;
}
.bnr-carousel .bnr-item {
		padding: 0px 0.8rem;
}
.site-footer .bnr-block {
		background-color: #faf9f3;
}
.site-footer .info {
		width: 310px;
		flex-shrink: 0;
}
@media (max-width: 767px) {
.site-footer .info {
		margin: auto;
}
}
@media (max-width: 1199px) {
  .site-footer .info {
    width: 280px;
  }
}
.site-footer .info a {
		text-align: left;
		display: flex;
		justify-content: flex-start;
		align-items: center;
		line-height: 1.4em;
		color: var(--font-color-1);
}
.site-footer .info p {
margin-bottom: 0px;
}
.site-footer .info .bg-pin {
margin-left: 15px;
transition: all 0.2s;
}
.site-footer .info a:hover .bg-pin {
opacity: 0.5;
}
.footer-head::before {
		display: none;
}

.footer-head-link {
	display: flex;
	justify-content: space-between;
	width: 100%;
	gap: 0.2vw;
}
.footer-head-link a {
		font-size: 1.066rem;
		padding: 1.3em 1.0em;
		margin-left: 0.75rem;
	margin-left: 0;
}
.footer-head-link a.footer-head-link-sns {
	width: calc((100% - 10px) / 2);	
		padding: 0.2em 1.5em;
	font-size: 2.3rem;
}
.footer-head-link .ion {
	margin-right: 5px;
}



@media (max-width: 767px) {
		.footer-head-link {
			flex-wrap: wrap;
		}
		.footer-head-link a {
				width: 100%;
				margin-bottom: 10px;
		}
}
@media (min-width: 768px) {
	.footer-head-link a {
		display: inline-block;
		font-size: 0.75rem;
		padding: 1.1em 0.5em;
		width: 33.33%;
	}
}
@media (max-width: 1199px) {
  .footer-head-link a {
    margin-left: 0;
  }
}
@media (min-width: 1200px) {
  .footer-head-link a {
    margin-left: 0.75rem;
	  margin-left: 0;
  }
}
.footer-mid {
		width: 96%;
		margin-left: auto;
		margin-right: auto;
		line-height: 1em;
		border-bottom: 1px solid #d0cbc4;
		padding-bottom: 32px;
}
.footer-mid-left, .footer-mid-right {
		width: 100%;
		display: flex;
		justify-content: space-between;
		align-items: center;
}
.for-current {
		padding-right: 1.5rem;
}
.ico-nav-name {
		font-weight: bold;
		padding-right: 1.5rem;
		letter-spacing: 0.05em;
}
.link-sdgs {
		padding-left: 1.5rem;
		border-left: solid 1px #d0cbc4;
}
.ico-nav {
		border-left: solid 1px #d0cbc4;
}
.footer-mid p {
		margin-bottom: 0px;
}
.footer-mid .ico-nav a {
		display: inline-block;
		width: 20px;
		height: 20px;
		margin-left: 1rem;
		overflow: hidden;
		transition: all 0.2s;
}
.footer-mid .ico-nav a:first-child {
		margin-left: 1.5rem;
}
.footer-mid .ico-nav a:hover {
opacity: 0.5;
}

.footer-mid .ico-nav img {
		vertical-align: top;
}
		.footer-nav {
		padding-top: 32px;
		}
@media (min-width: 768px) {
.footer-mid  {
		padding-bottom: 24px;
				width: 100%;
				display: flex;
				align-items: center;
				justify-content: space-between;
				margin-bottom: 24px;
		}
		.footer-nav {
		padding-top: 15px;
		}
}
@media (max-width: 991px) {
		.footer-mid-left {
				margin-bottom: 20px;
		}
		.link-sdgs {
				width: 60%;
		}
		.link-sdgs img {
				width: 100% !important;
				max-width: 280px;
		}
}
@media (min-width: 992px) {
		.footer-mid-left, .footer-mid-right {
				width: auto;
		}
}
@media (max-width: 767px) {
		.footer-nav .row {
				justify-content: space-between;
				width: 96%;
				margin-left: auto;
				margin-right: auto;
				padding: 0px;
		}
		.footer-nav .row .col-lg {
				padding: 0px;
				max-width: calc(50% - 10px);
		}
		.footer-nav .row .footer-nav-last-cont {
				width: 100%;
				max-width: 100%;
				flex: 0 0 100%;
				display: flex;
				justify-content: space-between;
				column-gap: 20px;
		}
		.footer-nav-last-item {
		  width: calc(50% - 10px);
		}
		
		.clo-lg-inner {
				width: 50%;
		}
}
@media (min-width: 992px) {
		.footer-nav {
				padding-top: 0px;
		}
		.footer-nav .row {
				justify-content: flex-end;
		}
		.footer-nav .col-md-4 {
				-webkit-box-flex: 0;
				-ms-flex: 0 0 33.3333333333%;
				flex: 0 0 33.3333333333%;
				max-width: 33.3333333333%;
		}
}
@media (min-width: 1200px) {
		.footer-head {
				padding-top: 40px;
				padding-bottom: 20px;
		}
		.site-footer .slick-track {
				padding: 41.5px 0px;
		}
		.site-footer .logo {
				margin-right: 1.5rem;
		}
		.site-footer .info {
				padding-left: 1.5rem;
				border-left: solid 1px #d0cbc4;
		}
		.site-footer .info .mb-md-1 {
				margin-bottom: 0px !important;
		}
}
/*footer nav*/
.footer-nav ul li a {
		padding: 0.1rem 0px;
		color: var(--font-color-1);
		font-size: 0.75rem;
		transition: all 0.2s;
}
.footer-nav ul li a:hover {
opacity: 0.5;
}
.footer-nav ul li:first-child {
		margin-bottom: 1em;
		border-bottom: 1px solid #d0cbc4;
		transition: all 0.2s;
}
.footer-nav ul li:first-child:hover {
		border-bottom: 1px solid #4DBB4F;
}


.footer-nav ul li:first-child a {
		padding-bottom: 0.5em;
		position: relative;
		font-size: 0.875rem;
}
.footer-nav ul li:first-child a::after {
		content: "";
		display: block;
		width: 0.4em;
		height: 0.4em;
		border-top: solid 1px var(--font-color-1);
		border-right: solid 1px var(--font-color-1);
		transform: rotate(45deg);
		position: absolute;
		right: 0.5em;
		top: 50%;
		margin-top: -0.5em;
		transition: all 0.2s;
}
.footer-nav ul li:first-child a:hover::after {
		right: 0.8em;
}
.footer-nav ul li:not(:first-child) a::before {
		content: "";
		display: inline-block;
		width: 0.7em;
		height: 0px;
		margin-right: 0.5em;
		padding-top: calc(0.4em - 1px);
		margin-bottom: 0.5em;
		border-bottom: solid 1px var(--font-color-1);
		vertical-align: middle;
}
.footer-sub-nav {
		padding: 1rem 0px;
		background: #ebe9df;
}
.footer-sub-nav .row {
margin-left: 0px;
margin-right: 0px;
}
.footer-sub-nav ul {
		justify-content: space-between;
		width: 94%;
		margin-left: auto;
		margin-right: auto;
}
.footer-sub-nav ul li {
		max-width: 50%;
		padding: 0px 0.5rem;
		margin-bottom: 0.5rem;
}
.footer-sub-nav ul li a {
		line-height: 1.3em;
		color: var(--font-color-1);
		transition: all 0.2s;
}
.footer-sub-nav ul li a:hover {
opacity: 0.5;
}

.footer-link a {
		padding: 0.3rem 0.5rem;
}
@media (min-width: 768px) {
		.footer-link a {
				padding: 1rem 0.5rem;
		}
		.footer-link .justify-content-between {
				column-gap: 0.2rem;
		}
.footer-nav ul li:first-child a {
		padding-bottom: 1em;
}
}
@media (min-width: 992px) {
		.footer-sub-nav ul {
				justify-content: center;
		}
		.footer-sub-nav ul li {
				padding: 0px 1rem;
				margin-bottom: 0px;
		}
}
.copy {
		margin-top: 1em !important;
}


/*------------------------
------------------------
トップページ
------------------------
------------------------*/

/*スマホとPCの切り替え*/
#school-group1-1,
#school-group2 {
display: none;
}

/*hero*/
/*@media (min-width: 768px) {
.mainimage-space .logo {
width: 285px;
height: 50px;
background: url(images/logo/logo.svg) center center/ 285px auto no-repeat ;
margin: 27.5px 0px 0px 40px;
}
.mainimage-space .logo span {
display: none;
}
}*/
@media (min-width: 1140px) {
		.mainimage-space {
				display: flex;
				justify-content: space-between;
				background: #fff;
		}
		.mainimage-nemu {
				width: 480px;
				position: relative;
		}
		.hero {
				width: calc(100% - 480px);
				border-bottom-left-radius: 28px;
				overflow: hidden;
		}
}
/*設置校*/
.school-list {
		display: flex;
		justify-content: space-between;
		flex-wrap: wrap;
		row-gap: 24px;
		column-gap: 24px;
		padding-left: 0px;
		padding: 24px 0px 12px;
		margin-bottom: 0px;
}
.school-list-item {
		width: calc((100% - 24px) / 2);
		aspect-ratio: 5 / 3;
		border-radius: 5px;
		overflow: hidden;
		text-align: center;
}
.school-list-item a {
		display: flex;
		height: 100%;
		justify-content: center;
		align-items: center;
		flex-direction: column;
		line-height: 1.5em;
		color: #fff;
		position: relative;
		transition: all 0.2s;
}
.school-list-item span {
		display: inline-block;
		position: relative;
		z-index: 4;
}
.school-list-item i {
		position: absolute;
		top: 0.5rem;
		right: 0.5em;
		z-index: 5;
}
.school-list-img {
position: absolute;
width: 100%;
height: 100%;
z-index: 1;
		transition: all 0.2s;
}
.school-list-item a:hover .school-list-img {
		transform: scale(1.05);
}
.school-list-item a::after {
content: "";
display: block;
width: 100%;
height: 100%;
background: rgba(51,102,153,0.5);
position: absolute;
left: 0px;
top: 0px;
z-index: 2;
		transition: all 0.2s;
}
.school-list-item a:hover::after {
background: rgba(51,102,153,0);
}

@media (min-width: 768px) {
		.school-list-item {
				width: calc((100% - 48px) / 3);
		}
}
@media (min-width: 1200px) {
		.school-list {
				padding: 40px 0px 20px;
		}
		.school-list-item {
				width: calc((100% - 120px) / 6);
		}
		.school-list-item {
				border-radius: 10px;
		}
}
/*attention-carousel*/
.attention-carousel {
		background: none;
		padding: 0px;
	line-height: 0;
}
/*.slick-slide {
width: 220px;
height: 108px;
}
@media (min-width: 768px) {
.slick-slide {
width: 453px;
height: 143px;
}
*/
.attention-bnr-body {
		width: 190px;
		/*height: 110px;*/
		margin: 12px 12px;
		padding: 8px 8px 4px;
		box-shadow: none;
		border-radius: 10px;
		border: solid 1px #ccc;
		transition: all 0.2s;
		overflow: hidden;
}
.attention-bnr-body:hover {
		box-shadow: 0px 0px 6px 2px rgba(0, 0, 0, 0.1);
}
.attention-bnr-body img {
		width: 110px;
		height: 55px;
		object-fit: contain;
		margin: 0px auto 0.2rem;
}
.attention-bnr-body:hover img {
transform: scale(1.05);
}

.attention-bnr .title {
		font-size: 0.85rem;
		margin-bottom: 0px;
		line-height: 1.3em;
}
.attention-bnr .title span {
display: inline-block;
}

.attention-bnr p {
		display: none;
}
#Slider .slide {
		width: 190px;
}
.attention-bnr:hover {
		color: var(--font-color-1) !important;
}
@media (min-width: 992px) {
		.attention-bnr-body {
				display: flex;
				align-items: center;
				width: 453px;
				height: 143px;
				margin: 20px 20px 40px;
				padding: 24px;
		}
		.attention-bnr-body img {
				width: 190px;
				height: 95px;
				margin: 0px;
				margin-right: 16px;
		}
		.attention-bnr .title {
				font-size: 1.125rem;
		}
		.attention-bnr p {
				display: block;
		}
		.attention-bnr-txt {
				text-align: left;
		}
		#Slider .slide {
				width: 453px;
		}
}

/*ニュースとメディアの余計な色ベタを打ち消し*/
#news-block::before, #media-block::before {
		display: none;
}

/*セクションタイトル*/
.sec-title {
		font-family: inherit;
		font-weight: normal;
		line-height: 1rem;
		margin-bottom: 1rem;
}
.sec-title .main {
		display: block;
		color: #787878;
		font-size: 1rem;
		margin-bottom: 0.6em;
}
/*.sec-title.sm .main {
		margin-bottom: 0.2em;
}*/

.sec-title .main::before {
		display: inline-block;
		content: "";
		width: 8px !important; 
		height: 8px !important;
		border-radius: 50%;
		background: var(--b1);
		position: static;
		margin-bottom: 1px;
		margin-right: 0.3em;
}
.sec-title .sub {
		margin-left: 0px;
		font-size: 1.7rem;
		font-weight: bold;
}
.sec-title.sm .sub {
	font-size: 1.5rem;
}

/*タイトル下リンクテキスト*/
.txt-link-b1, .txt-link-b1:hover {
		display: inline-block;
		font-size: 0.857rem;
		color: var(--b1);
		margin-bottom: 1.2em;
		padding-right: 1em;
}
@media (min-width: 992px) {
.sec-title {
line-height: 1.6rem;
margin-bottom: 40px;
}
#news-block .sec-title {
margin-bottom: 30px;
}
	
	.sec-title.sm {
line-height: 1rem;
}
.sec-title .sub {
		font-size: 2.25rem;
}
}
.txt-link-b1::after {
		content: "";
		display: block;
		width: 0.5em;
		height: 0.5em;
		border-top: solid 2px var(--b1);
		border-right: solid 2px var(--b1);
		transform: rotate(45deg);
		margin-bottom: 1px;
		margin-left: 0.5em;
		transition: all 0.2s;
		position: absolute;
		right: 0px;
		top: 0.5em;
}
.txt-link-b1:hover::after {
		right: 0.3em;
}
@media (min-width: 992px) {
.txt-link-b1 {
position: absolute;
top: 0px;
right: 0px;
z-index: 2;
}
}

/*カテゴリーリンクボタン（現状はトップページニュースのみ）*/
.news-cat-list {
list-style: none;
padding-left: 0px;
margin: 0px 0px 34px 0px;
}
.news-cat-item {
display: inline-block;
}
.news-cat-item a {
display: inline-block;
height: 2.4rem;
line-height: 2.4rem;
margin-right: 4px;
margin-bottom: 8px;
padding: 0px 1.4rem;
background: #fff;
color: var(--b1);
border-radius: 1.41rem;
transition: all 0.2s;
font-size: 0.95rem
}
.news-cat-item a:hover,
.news-cat-item.active a {
background: var(--b1);
color: #fff;
}
@media (min-width: 992px) {
.news-cat-list {
margin: 0px 0px 40px 0px;
}
}


.category-tabs {
  margin-bottom: 20px;
}

.category-tabs .tab-nav {
  list-style: none;
  padding: 0;
  margin: 0;
  display: flex;
  border-bottom: 1px solid #ccc;
  flex-wrap: wrap;
}

.category-tabs .tab-nav li {
  margin-right: 10px;
  margin-bottom: -1px;
}

.category-tabs .tab-nav a {
  display: block;
  padding: 10px 15px;
  text-decoration: none;
  color: #333;
  background-color: #f5f5f5;
  border: 1px solid #ccc;
  border-bottom: none;
}

.category-tabs .tab-nav li.active a {
  background-color: #fff;
  border-bottom-color: #fff;
}

.category-tabs .tab-content {
  border: 1px solid #ccc;
  border-top: none;
  padding: 15px;
}

.category-tabs .tab-pane {
  display: none;
}

.category-tabs .tab-pane.active {
  display: block;
}
.post-cards {
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(250px, 1fr));
  gap: 20px;
  padding: 20px;
}

.post-card {
  border: 1px solid #ddd;
  border-radius: 5px;
  overflow: hidden;
  box-shadow: 0 2px 5px rgba(0,0,0,0.1);
  transition: transform 0.3s ease;
  display: flex;
  flex-direction: column;
}

.post-thumbnail {
  height: 200px;
  overflow: hidden;
}

.post-thumbnail img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.post-content {
  padding: 15px;
  flex-grow: 1;
  display: flex;
  flex-direction: column;
}

.post-title {
  margin: 0 0 10px;
  font-size: 1.2em;
  line-height: 1.3;
  max-height: 2.6em; /* 2行分の高さ */
  overflow: hidden;
  display: -webkit-box;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
}

.post-title a {
  color: #333;
  text-decoration: none;
}

.post-title a:hover {
  color: #0066cc;
}

.post-excerpt {
  font-size: 0.9em;
  color: #666;
  overflow: hidden;
  text-overflow: ellipsis;
  display: -webkit-box;
  -webkit-line-clamp: 3;
  -webkit-box-orient: vertical;
  flex-grow: 1;
}


/*slick.jsの左右矢印差し替え*/
.slick-prev:before, .slick-next:before {
content: "";
display: block;
width: 100%;
height: 100%;
text-indent: 52px;
overflow: hidden;
background: url(images/reform/icon/arrow-slick.svg) center center /contain no-repeat;
border-radius: 50%;
opacity: 0.5;
transition: all 0.3s; 
transform: rotate(0deg);
margin-top: -25px;
	box-shadow: 0px 0px 6px 2px rgba(0, 0, 0, 0.1);
}
.slick-next:before {
transform: rotate(180deg);
}
/*.slick-prev:before, .slick-next:before {
display: none;
}
.slick-prev:hover, .slick-prev:focus, .slick-next:hover, .slick-next:focus {
background: url(images/reform/icon/arrow-slick.svg) center center /contain no-repeat;
opacity: 1;
}*/
.slick-prev {
left: -25px;
}
.slick-next {
right: -25px;
}

/*----------------------
カスタムグリッド表示1（ニュース）
----------------------*/
.custom-grid-1-list {
		display: grid;
		grid-gap: 24px;
		grid-template-areas:
				"kiji1 kiji1"
				"kiji2 kiji3"
				"kiji4 kiji5";
				grid-template-columns: 1fr 1fr;
}
#kiji1 {
	grid-area: kiji1;
	}
	#kiji2 {
	grid-area: kiji2;
	}
	#kiji3 {
	grid-area: kiji3;
	}
	#kiji4 {
	grid-area: kiji4;
	}
	#kiji5 {
	grid-area: kiji5;
	}
	
	.custom-grid-1-pic-cont {
	overflow: hidden;
	}
	.custom-grid-1-pic {
	width: 100%;
	height: 0px;
	padding-top: 100%;
	box-sizing: content-box;
	background-size: cover;
	background-position: center center;
	transition: all 0.2s;
	}
.custom-grid-1-link:hover .custom-grid-1-pic {
    transform: scale(1.05);
}
	
	.custom-grid-1-link,
	.custom-grid-1-link:hover {
color: var(	--font-color-1);
}

	.custom-grid-1-info {
	padding: 0.2em 0.4em 0px;
	}

.custom-grid-1-date {
	display: inline-block;
font-size: 0.857rem;
margin-bottom: 0px;
line-height: 1em;
padding: 0.3em 0px 0.5em;
}

/*.custom-grid-1-catist {
margin-bottom: 0.5em;
}*/

.custom-grid-1-cat {
	display: inline-block;
	position: relative;
	top: -0.1em

}
.custom-grid-1-cat span {
display: inline-block;
font-size: 0.71rem;
color: #fff;
background: var(--g2);
padding: 0.3em 1.2em;
border-radius: 1em;
line-height: 1em;
text-transform: uppercase;
margin-left: 0.3em;
}
.custom-grid-1-tag {
margin-bottom: 0.5em;
}
.custom-grid-1-tag span {
font-size: 0.857rem;
color: var(--font-color-2);
line-height: 1em;
}
.custom-grid-1-tag span:not(:last-child)::after {
content:" / ";
display: inline-block;
}
.custom-grid-1-title {
font-size: 0.928rem;
line-height: 1.3em;
margin-bottom: 0px;
font-weight: normal;
}
.custom-grid-1-title-L {
font-size: 1rem;
font-weight: bold;
line-height: 1.3em;
margin-bottom: 0.8em;
}
.custom-grid-1-title-L {
display: inline-block;
font-weight: bold;
}
@media (min-width: 992px) {
.custom-grid-1-list {
		grid-template-areas:
				"kiji1 kiji1 kiji2 kiji3"
				"kiji1 kiji1 kiji4 kiji5";
				grid-template-columns:1fr 1fr 1fr 1fr;
}
	.custom-grid-1-item {
	border-radius: min(1.3vw,15px);
	background: #fff;
	overflow: hidden;
	transition: all 0.4s;
}
	.custom-grid-1-item:first-child {
	border-width: 0px;
	}
.custom-grid-1-item:hover {
/*transform: scale(1.01);*/
	box-shadow: 0px 0px 6px 2px rgba(0, 0, 0, 0.1);
}

	
.custom-grid-1-pic {
	padding-top: 54.2%;
 background-size: cover;
 background-position: center;
	background-repeat: no-repeat;
	}
	.custom-grid-1-item:first-child	.custom-grid-1-pic {
	padding-top: 78.1%;
	}
		.custom-grid-1-item:not(:first-child)	.custom-grid-1-link {
		display: block;
	border-style: solid;
	border-width: min(0.6vw, 11px);
	border-color: #fff;
}
	.custom-grid-1-info {
	padding: min(0.6vw, 11px);
		padding-bottom: 0px;
	}
	.custom-grid-1-item:first-child	.custom-grid-1-info {
	padding: min(0.6vw, 11px) min(1.2vw, 22px) min(1.2vw, 22px);
	}
	.custom-grid-1-date,
	.custom-grid-1-tag span {
font-size: 0.875rem;
}
.custom-grid-1-cat span {
font-size: 0.75rem;
}
.custom-grid-1-title {
font-size: 1rem;
line-height: 1.5em;
}
.custom-grid-1-title-L {
font-size: 1.5em;
}
}

/*----------------------
カスタムグリッド表示2（カルーセル用）
----------------------*/
.custom-grid-2-list .slick-list {
overflow: visible;
justify-content: flex-start !important;
margin-left: -12px;
}
	.custom-grid-2-item {
	width: 260px !important;
	margin: 0px 12px;
	border-radius: 11px;
	background: #f7f7f7;
	overflow: hidden;
	transition: all 0.4s;
}
.back-g1	.custom-grid-2-item {
	background: #fff;
}
.custom-grid-2-item:hover {
/*transform: scale(1.01);*/
	box-shadow: 0px 0px 6px 2px rgba(0, 0, 0, 0.1);
}

.custom-grid-2-link {
		display: block;
	border-style: solid;
	border-width: 10px;
	border-bottom-width: 4px;
	border-color: #f7f7f7;
}
.back-g1	.custom-grid-2-link {
	border-color: #fff;
}
.custom-grid-2-pic-cont {
overflow: hidden;
}
.custom-grid-2-pic {
	width: 100%;
	height: 0px;
/*	padding-top: 100%;*/
	padding-top: 54.2%;
	box-sizing: content-box;
 background-size: cover;
 background-position: center;
	background-repeat: no-repeat;
	transition: all 0.2s;
	}
	.custom-grid-2-link,
	.custom-grid-2-link:hover {
color: var(	--font-color-1);
}
.custom-grid-2-link:hover .custom-grid-2-pic {
transform: scale(1.05);
}

.custom-grid-2-date {
	display: inline-block;
	font-weight: bold;
margin-bottom: 0px;
line-height: 1em;
padding: 0.3em 0px;
}

@media (min-width: 992px) {
	.custom-grid-2-item {
	width: 342px !important;
	border-radius: min(1.3vw,15px);
	overflow: hidden;
}
.custom-grid-2-link {
	border-width: min(0.6vw, 11px);
}
/*.custom-grid-2-pic {
	padding-top: 54.2%;
	}*/
}

/*カスタムグリッド表示3（学園概要）*/
.custom-grid-3-list {
    margin: 0;
    padding: 0;
    line-height: 0;
}
.custom-grid-3-list .slick-list {
overflow: visible;
justify-content: flex-start !important;
margin-left: -12px;
}
	.custom-grid-3-item {
	width: 260px !important;
	margin: 0px 12px;
	border-radius: 11px;
	background: #f7f7f7;
	overflow: hidden;
	transition: all 0.4s;
}
.custom-grid-3-link {
		display: block;
width: 100%;
position: relative;
}
.custom-grid-3-item:hover,
.custom-grid-3-item-2:hover {
/*transform: scale(1.01);*/
	box-shadow: 0px 0px 6px 2px rgba(0, 0, 0, 0.1);
}
	.custom-grid-3-link,
	.custom-grid-3-link:hover {
color: var(	--font-color-1);
 background-size: cover;
 background-position: center;
	background-repeat: no-repeat;
}

	.custom-grid-3-info {
	height: 100%;
	padding: 75% 9% 9%;
	position: relative;
	z-index: 2;
}
	.custom-grid-3-info.cg3-lt {
background: linear-gradient(to bottom,  rgba(255,255,255,0) 0%,rgba(255,255,255,0) 60%,rgba(255,255,255,1) 100%);
}
.custom-grid-3-info.cg3-dk {
background: linear-gradient(to bottom,  rgba(0,0,0,0) 0%,rgba(0,0,0,0) 60%,rgba(0,0,0,1) 100%);
color: #fff;
}

.custom-grid-3-tag span {
font-size: 0.857rem;
color: var(--font-color-2);
line-height: 1em;
}
.custom-grid-3-info.cg3-dk .custom-grid-3-tag span {
color: #fff;
}
.custom-grid-3-tag span:not(:last-child)::after {
content:" / ";
display: inline-block;
}
.custom-grid-3-title {
font-size: 1.286rem;
line-height: 1.3em;
margin-bottom: 0px;
position: relative;
}
.custom-grid-3-title {
position: relative;
}
.custom-grid-3-title::after,
.custom-grid-3-title-2::after {
    content: "";
    display: block;
    width: 1.2em;
    height: 1.2em;
    background: url(images/reform/common/arrow/arrow-bl.svg) center center / cover no-repeat;
    position: absolute;
    right: 0px;
    top: 50%;
    margin-top: -0.6em;
    transition: all 0.2s;
}
.custom-grid-3-link:hover .custom-grid-3-title::after,
.custom-grid-3-link:hover .custom-grid-3-title-2::after {
    right: 0.5em;
}

.custom-grid-3-img {
width: 100%;
height: 0px;
padding-top: 100%;
background-size: cover;
position: absolute;
left: 0px;
top: 0px;
transition: all 0.2s;
}
	.custom-grid-3-link:hover .custom-grid-3-img {
	transform: scale(1.05);
}


@media (min-width: 992px) {
	.custom-grid-3-item {
	width: 342px !important;
	border-radius: min(1.3vw,15px);
	overflow: hidden;
	/*box-shadow: 0px 0px 6px 2px rgba(0, 0, 0, 0.1);*/
}
.custom-grid-3-link {
	border-width: min(0.6vw, 11px);
}
	.custom-grid-3-date,
	.custom-grid-3-tag span {
font-size: 0.875rem;
}
.custom-grid-3-title {
font-size: 1.5rem;
line-height: 1.5em;
}
}

@media (min-width: 992px) {
.custom-grid-3-list-2 {
	display: flex !important;
	justify-content: space-between;
	line-height: 0;
}
	.custom-grid-3-item-2 {
		width: calc((100% - 72px) / 4);
	border-radius: min(1.3vw,15px);
	background: #f7f7f7;
	overflow: hidden;
	transition: all 0.4s;
}
.custom-grid-3-title-2 {
	font-size: min(1.6vw, 24px);
 margin-bottom: 0px;
 line-height: 1.3em;
	position: relative;
}
.custom-grid-3-tag-2 {
 line-height: 1em;
	}
	.custom-grid-3-tag-2 span {
	color: var(--font-color-2);
 font-size: min(0.94vw, 14px);
}
}

/*カスタムグリッド表示4（書籍紹介）*/
.custom-grid-4-list .slick-list {
overflow: visible;
justify-content: flex-start !important;
margin-left: -12px;
}
	.custom-grid-4-item {
	width: 278px !important;
	margin: 0px 3px;
	border-radius: 11px;
	background: #fff;
	overflow: hidden;
	transition: all 0.4s;
}
	.custom-grid-4-item:hover {
	background: #f7f7f7;
	}

.custom-grid-4-link {
		display: block;
	padding: 15px 50px 5px;
}

.custom-grid-4-pic {
	width: 100%;
	height: 0px;
	padding-top: 100%;
	box-sizing: content-box;
 background-size: contain;
 background-position: center;
	background-repeat: no-repeat;
	}
	.custom-grid-4-link,
	.custom-grid-4-link:hover {
color: var(	--font-color-1);
}
.custom-grid-4-date {
	display: inline-block;
	font-weight: bold;
margin-bottom: 0px;
line-height: 1em;
padding: 0.3em 0px;
}

.custom-grid-4-title {
font-size: 1.143rem;
line-height: 1.3em;
padding-bottom: 0.5em;
margin-top: 0.5em;
margin-bottom: 0.5em;
border-bottom: solid 1px #ccc;
}
.custom-grid-4-author {
font-weight: bold;
}


@media (min-width: 992px) {
	.custom-grid-4-item {
	width: 360px !important;
	border-radius: min(1.3vw,15px);
	overflow: hidden;
}
.custom-grid-4-link {
	padding: 20px 40px 10px;
	border-width: min(0.6vw, 11px);
}
.custom-grid-4-info {
text-align: center;
}
.custom-grid-4-pic {
	padding-top: 54.2%;
	}
.custom-grid-4-title {
font-size: 1.25rem;
}
}

/*スライドショー変更*/
/*大枠*/
.ec-slider-wrap {
  display: flex;
		align-items: flex-end;
}
.ec-slider-wrap .slick-dotted.slick-slider {
margin-bottom: 0px;
}
.ec-slider-right {
  width: calc(100% - 24px);
		margin-left: 24px;
		position: relative;
}
.ec-slider-left {
		display: none;
}
@media (min-width: 992px) {

/*背景マーク*/
#main-visual {
background-image: url(images/reform/top/mv/bg.svg);
background-size: 650px auto;
background-repeat: no-repeat;
background-position: bottom 70px left 200px;
}

.ec-slider-left {
  width: 310px;
display: block;
}
.ec-slider-right {
  width: calc(100% - 310px);
		margin-left: 0px;
}
}
.ec-slider-wrap .ec-slider-nav {
}
/*.ec-slider-nav.slick-vertical .slick-slide {
  border: none;
  margin-top: -50px;
  margin-bottom: 50px;
}*/

/*大イメージ側*/
.ec-slider-for {
margin: 0;
padding: 0;
line-height: 0;
}
.slide-for {
position: relative;
border-bottom-left-radius: 20px;
overflow: hidden;
}
.slide-for a {
color: #fff;
}

/*.slide-for-bnr {
display: none;
}*/
.slide-for-bnr {
width: 100%;
display: flex;
	flex-wrap: wrap;
align-items: center;
justify-content: space-between;
position: absolute;
bottom: 0px;
left: 0px;
font-size: 16px;
height:50px;
line-height: 1.2em;
padding: 0px 1em;
background: #000;
}
#sFor1 .slide-for-bnr {
background: #FEA602;
}
#sFor2 .slide-for-bnr {
background: #4CC4CF;
}
#sFor3 .slide-for-bnr {
background: #5469AE;
}
#sFor4 .slide-for-bnr {
background: #B18B52;
}
#sFor5 .slide-for-bnr {
background: #4DBB4F;
}
#sFor6 .slide-for-bnr {
background: #F871BE;
}
#sFor7 .slide-for-bnr {
background: #FD6065;
}
#sFor8 .slide-for-bnr {
background: #333336;
}
#sFor9 .slide-for-bnr {
background: #F2F1EB;
color: var(--font-color-1);
}

/*#sFor9 a {
pointer-events: none;
}*/

.slide-for-bnr .slide-for-bnr-sub {
	display: block;
	width: 100%;
	font-style: normal;
	font-size: 11px;
}

.slide-for-bnr span {
display: inline-block;
}

.slide-for-bnr-txt {
width: calc(100% - 25px);
}
.slide-for-bnr-mk {
width: 25px;
height: 25px;
margin-bottom: 0px;
}

.slide-for-inner {
	display: none;
width: 100%;
position: absolute;
bottom: 135px;
left: 0px;
}
@media (min-width: 992px) {
.slide-for-inner {
	display: block;
max-width: 600px;
/*left: min(0.5vw * 20,126px);*/
	left: 126px;
}
/*#sFor2 .slide-for-inner {
max-width: 700px;
}
#sFor3 .slide-for-inner {
max-width: 660px;
}
#sFor4 .slide-for-inner {
max-width: 570px;
}
#sFor5 .slide-for-inner {
max-width: 750px;
}
#sFor6 .slide-for-inner {
max-width: 500px;
}

#sFor8 .slide-for-inner,
#sFor9 .slide-for-inner {
left: 0px;
max-width: 100%;
bottom: 215px;
}*/
#sFor2 .slide-for-inner {
max-width: 700px;
}
#sFor3 .slide-for-inner {
width: 660px;
}
#sFor4 .slide-for-inner {
width: 570px;
}
#sFor5 .slide-for-inner {
width: 750px;
}
#sFor6 .slide-for-inner {
width: 515px;
}
#sFor8 .slide-for-inner,
#sFor9 .slide-for-inner {
left: 0px;
width: 100%;
	max-width: inherit;
min-width: 1130px;
bottom: 215px;
}
}

.mark100 {
width: 124px;
margin: auto;
}
.school-logo {
width: 285px;
margin: auto !important;
	opacity: 0;
	transform: translateX(0.5em);
 transition: all 0.8s ease;
}
.slide-for-inner.mc-act .school-logo {
	transform: translateX(0);
 opacity: 1;
}

@media (min-width: 992px) {
.copy100 {
display: flex;
justify-content: center;
align-items: center;
margin-bottom: 10px;
}
.mark100 {
width: 136px;
margin: 0px;
}
.copy100 .mcopy span {
display: block;
margin-left: 40px;
text-align: left;
}

.school-logo {
width: 367px;
}
}

.encopy {
margin-bottom: -3px;
text-shadow: 0px 2px 5px rgba(0,0,0,1);
line-height: 1em;
	opacity: 0;
	transform: translateX(0.5em);
 transition: all 0.8s ease;
}
.slide-for-inner.mc-act .encopy {
	transform: translateX(0);
 opacity: 1;
}


.encopy::before {
content: "";
display: inline-block;
width: 0.5em;
height: 0.5em;
border-radius: 50%;
background: var(--b1);
vertical-align: middle;
margin-right: 0.3em;
margin-top: -0.1em;
}

.mcopy {
font-size: 1.9rem;
line-height: 1.3em;
text-shadow: 0px 2px 5px rgba(0,0,0,1);
margin-bottom: 0.5em;
letter-spacing: 0px;
}
.mcopy span:first-child {
display: none;
}
.mcopy span i {
	display: inline-block;
	font-style: normal;
	opacity: 0;
	transform: translateX(0.5em);
	transform: translateY(0.5em);
	transform-origin: center center;
 transition: all 0.8s ease;
}
.slide-for-inner.mc-act .mcopy span i {
	transform: translateX(0);
	transform: translateY(0);
 opacity: 1;
}
.mc-txt1 {
	transition-delay: 100ms !important;
}
.mc-txt2 {
	transition-delay: 200ms !important;
}
.mc-txt3 {
	transition-delay: 300ms !important;
}
.mc-txt4 {
	transition-delay: 400ms !important;
}
.mc-txt5 {
	transition-delay: 500ms !important;
}
.mc-txt6 {
	transition-delay: 600ms !important;
}
.mc-txt7 {
	transition-delay: 700ms !important;
}
.mc-txt8 {
	transition-delay: 800ms !important;
}
.mc-txt9 {
	transition-delay: 900ms !important;
}
.mc-txt10 {
	transition-delay: 1000ms !important;
}
.mc-txt11 {
	transition-delay: 1100ms !important;
}
.mc-txt12 {
	transition-delay: 1200ms !important;
}
.mc-txt13 {
	transition-delay: 1300ms !important;
}
.mc-txt14 {
	transition-delay: 1400ms !important;
}
.mc-txt15 {
	transition-delay: 1500ms !important;
}
.mc-txt16 {
	transition-delay: 1600ms !important;
}
.mc-txt17 {
	transition-delay: 1700ms !important;
}
.mc-txt18 {
	transition-delay: 1800ms !important;
}
.mc-txt19 {
	transition-delay: 1900ms !important;
}
.mc-txt20 {
	transition-delay: 2000ms !important;
}


@media (min-width: 992px) {
.mcopy {
font-size: 2.8rem;
}
.mcopy span {
display: inline-block;
}
}
.scopy-pc {
display: none;
font-size: 1.125rem;
font-weight: bold;
line-height: 1.6em;
text-shadow: 0px 2px 5px rgba(0,0,0,1);
}

.scopy-sp {
font-size: 1.2rem;
font-weight: bold;
line-height: 1.4em;
text-shadow: 0px 2px 5px rgba(0,0,0,1);
}
.scopy-sp span {
display: inline-block;
}

.mv-link-detail {
text-align: center;
	opacity: 0;
	transform: translateX(0.5em);
	transform-origin: center center;
 transition: all 0.8s ease;
}
.slide-for-inner.mc-act .mv-link-detail {
	transform: translateX(0);
 opacity: 1;
}


.mv-link-detail span {
display: inline-block;
height: 3em;
line-height: 3em;
border-radius: 1.5em;
padding: 0px 3em;
background: #fff;
color: var(--font-color-1);
position: relative;
}
@media (min-width: 992px) {
.mv-link-detail {
text-align: left;
}
#sFor8 .mv-link-detail {
text-align: center;
}
.mv-link-detail span {
font-size: 0.875rem;
}
}
.mv-link-detail span::after {
		content: "";
		display: inline-block;
		width: 0.5em;
		height: 0.5em;
		margin-left: 0.8em;
		margin-top: -0.1em;
		border-top: solid 2px var(--font-color-1);
		border-right: solid 2px var(--font-color-1);
		transform: rotate(45deg);
		position: absolute;
		right: 2em;
		top: 50%;
		margin-top: -0.2em;
		transition: all 0.2s;
}
#sFor8 .mv-link-detail span::after {
display: none;
}
.slide-for a:hover .mv-link-detail span::after {
		right: 2.3em;
}

.slide-img {
height: 449px;
/*margin: 69px 0px;*/
	margin-bottom: 50px;
width: 100%;
overflow: hidden;
}

/*#sFor2 .slide-img,
#sFor5 .slide-img {
background-position: left center !important;
}
#sFor3 .slide-img {
background-position: right center !important;
}*/

@media (min-width: 992px) {
.slide-img {
min-width: 1042px;
height: 648px;
margin: 0px;
/*height: 90vh;
min-height: 700px;
max-height: 900px;*/
}
}

/*ページャー*/
.ec-slider-for .slick-dots {
bottom: 101.5px;
}

.ec-slider-for .slick-dots li {
width: auto;
height: auto;
margin: 0px 6.5px;
}

.ec-slider-for .slick-dots li button {
    height: 10px;
    width: 10px;
    background-color: #fff;
    border: none;
    padding: 5px;
}
@media (min-width: 992px) {
.ec-slider-for .slick-dots {
min-width: 1130px;
bottom: 48.5px;
}
.ec-slider-for .slick-dots li button {
    height: 13px;
    width: 13px;
}
}
.ec-slider-for .slick-dots li.slick-active button {
    color: var(--b1);
    opacity: 1;
    background-color: var(--b1);
}

/*一時停止トグル*/
.play-toggle {
width: 25px;
height: 25px;
position: absolute;
bottom: 95px;
z-index: 2;
left: 50%;
margin-left: 95px;
cursor: pointer;
}
.play-toggle:hover {
transform: scale(1.2);
}
.c-play {
display: none;
}
@media (min-width: 992px) {
.play-toggle {
width: 30px;
height: 30px;
bottom: 42px;
left: 565px;
margin-left: 115px;
}
}
@media (min-width: 1440px) {
.play-toggle {
left: 50%;
	}
}
.sns-link {
position: fixed;
bottom: 5px;
right: 5px;
z-index: 10;
list-style: none;
padding-left: 0px;
margin-bottom: 0px;
display: none;
}
.sns-link li {
margin-top: 7px;
}
.sns-link a {
display: flex;
background: #fff;
width: 90px;
height: 60px;
align-items: center;
justify-content: center;
border-radius: 5px;
box-shadow: 0px 0px 6px 2px rgba(0, 0, 0, 0.2);
transform: all 0.2s;
}

.sns-link i {
font-size: 32.4px;
color: var(--font-color-1);
transition: all 0.2s;
}
.sns-link .sns-link-ig i {
font-size: 48px;
}

.sns-link a:hover {
	box-shadow: 0px 0px 6px 2px rgba(0, 0, 0, 0.1);
}
.sns-link a:hover i {
	color: #ccc;
	}

.sns-link .sns-link-100 a{
	border-radius: 6px;
	overflow: hidden;
}
.sns-link .sns-link-100 img{
	width: 100%;
}
.sns-link .sns-link-100 img:hover{
	opacity: 0.7;
}

/*ナビコンテナ側*/
.ec-slider-nav-ti {
font-size: 1.125rem;
font-weight: bold;
padding: 21px 0px 10px 24px;
margin-bottom: 0px;
}

.ec-slider-left-inner {
padding-left: 10px;
/*padding-top: 160px;*/
}
.ec-slider-left-inner .slick-list {
overflow: visible;
padding: 0px !important;
	max-height: 465px;
}
.ec-slider-left-inner .slick-slide {
}
.slide-nav {
line-height: 1em;
}

.slide-nav-link {
color: var(--font-color-1);
position: relative;
font-size: 0.8rem;
	line-height: 1em;
}
@media (min-width: 992px) {
		.slide-nav-link::after {
		content: "";
		display: block;
		height: 1px;
		width: 0px;
		transition: all 0.6s;
		position: absolute;
		bottom: 0px;
		left: 0px;
		}
		.slide-nav-link:hover::after {
		width: 100%;
		}
		#sNav1 .slide-nav-link::after {
		background: #FEA602;
		}
		#sNav2 .slide-nav-link::after {
		background: #4CC4CF;
		}
		#sNav3 .slide-nav-link::after {
		background: #5469AE;
		}
		#sNav4 .slide-nav-link::after {
		background: #B18B52;
		}
		#sNav5 .slide-nav-link::after {
		background: #4DBB4F;
		}
		#sNav6 .slide-nav-link::after {
		background: #F871BE;
		}
		#sNav7 .slide-nav-link::after {
		background: #FD6065;
		}
}
.ec-slider-nav .slick-track {
	counter-reset: mycounter;
}
.ec-slider-nav .slick-slide {
 counter-increment: mycounter;
}
.ec-slider-nav .slick-slide:first-child {
	display: none !important;
}

.slide-nav-info {
/*height: 65px;*/
display: flex;
justify-content: space-between;
align-items: center;
padding: 20px 25px 18px 24px;
}
.slide-nav-txt {
display: inline-block;
position: relative;
color: var(--font-color-1);
transition:  all 0.2em;
}
.slide-nav-link:hover .slide-nav-txt {
font-weight: bold;
color: var(--font-color-1);
}

.slide-nav-txt::before {
content: counter(mycounter, decimal-leading-zero);
position: absolute;
top: -1.3em;
left: 0px;
color: #D0D0D0;
font-size: 0.875em;
}
.slide-nav-mk {
display: inline-block;
width: 20px;
aspect-ratio: 1/1;
margin-bottom: 0px;
transition: all 0.2s;
}
.slide-nav-link:hover .slide-nav-mk {
margin-right: 0.3em;
}


/*ナビコンテナ上側バナー*/
.fv-bnr-space {
width: 250px;
	margin-bottom: 10px;
	margin-left: 25px;
}
.fv-bnr-item a {
display: block;
border-radius: 10px;
box-shadow: 0px 0px 6px 2px rgba(0, 0, 0, 0.1);
overflow: hidden;
}
.fv-bnr-item img {
vertical-align: bottom;
}




/*下部「設置校」スライドショー*/
/*大枠*/
@media (min-width: 992px) {
.sg-slider-wrap {
  display: flex;
		width: 100%;
		max-width: calc(936px + ((100vw - 936px) / 2));
		margin-left: calc((100vw - 936px) / 2);
		padding-top: 100px;
		/*padding-left: 24px;*/
		background: #fff;
		border-radius: 15px 0px 0px 15px;
	box-shadow: 0px 0px 6px 2px rgba(0, 0, 0, 0.1);
	overflow: hidden;
}
}
@media (min-width: 1200px) {
.sg-slider-wrap {
		max-width: 100%;
		margin-left: 24px;
		}
}
@media (min-width: 1500px) {
.sg-slider-wrap {
		max-width: calc(1460px + ((100vw - 1460px) / 2));
		margin-left: calc((100vw - 1460px) / 2);
		}
}




.sg-slider-wrap .slick-dotted.slick-slider {
margin-bottom: 0px;
}
.sg-slider-right {
  width: calc(100% - 24px);
		margin-left: 24px;
		position: relative;
}
.sg-slider-left {
		display: none;
}
@media (min-width: 992px) {
.sg-slider-left {
  width: 510px;
		padding-left: 60px;
display: block;
}
.sg-slider-right {
  width: calc(100% - 510px);
		margin-left: 0px;
}
}
.sg-slider-wrap .sg-slider-nav {
}
/*.sg-slider-nav.slick-vertical .slick-slide {
  border: none;
  margin-top: -50px;
  margin-bottom: 50px;
}*/

/*大イメージ側*/
.sg-slider-for {
margin: 0;
padding: 0;
line-height: 0;
}
.sg-for-item {
position: relative;
height: 587px;
width: 100%;
overflow: hidden;
}
@media (min-width: 992px) {
.sg-for-item {
height: 90vh;
max-height: 720px;
}
}

/*動画用*/
.video {
height: 587px !important;
width: 100%;
overflow: hidden;
position: relative;
}
@media (min-width: 992px) {
.video {
height: 90vh !important;
max-height: 720px;
}
}
.video video {
  display: block;
  position: absolute;
  top: 50%;
  left: 50%;
  min-width: 100%;
  min-height: 100%;
  width: auto;
  height: auto;
  -webkit-transform: translate(-50%, -50%);
  transform: translate(-50%, -50%);
}



/*ナビコンテナ側*/
.sg-slider-nav-ti {
font-size: 1.5rem;
font-weight: bold;
/*padding: 21px 0px 10px 24px;*/
margin-bottom: 0px;
}
.sg-slider-left-inner .slick-list {
overflow: visible;
padding: 0px !important;
}
.sg-slider-left-inner .slick-track {
transform: translate3d(0px, 0px, 0px) !important;
}
.sg-slider-left-inner .slick-slide {
}
.sg-nav-item {
width: 390px !important;
line-height: 1em;
border-bottom: solid 1px #ccc;
}

.sg-slider-nav .slick-track {
	counter-reset: mycounter;
}
.sg-slider-nav .slick-slide {
 counter-increment: mycounter;
}
.sg-nav-top {
font-size: 1.25rem;
line-height: 1em;
font-weight: bold;
padding: 28px 5px;
position: relative;
cursor: pointer;
}
.sg-slider-nav .slick-slide:first-child .sg-nav-top {
padding-top: 0px;
}

.sg-nav-top::after {
content: "";
display: inline-block;
width: 0.5em;
height: 0.5em;
border-right: solid 3px #626263;
border-bottom: solid 3px #626263;
transform: rotate(45deg);
position: absolute;
right: 5px;
top: 50%;
margin-top: -0.4em;
}
.sg-nav-top.sg-nav-open::after {
transform: rotate(-135deg);
}

.sg-slider-nav .slick-slide:first-child .sg-nav-top::after {
top: 0.5em;
}
.sg-nav-btm {
padding: 0px 5px 32px;
display: none;
}
.sg-nav-btm-txt {
display: inline-block;
margin-bottom: 20px;
}
.sg-nav-btm-link a {
display: inline-block;
font-size: 0.875rem;
color: #fff;
height: 3em;
line-height: 3em;
background: var(--b1);
border-radius: 1.5em;
padding: 0px 3em;
}
.sg-nav-btm-link .ion-md-open {
margin-left: 0.3em;
}


/*------------------------
------------------------
下層ページ
------------------------
------------------------*/

/*------------------------
共通パーツ
------------------------*/
.heading01 {
font-size: 1.466rem;
text-align: center;
margin-bottom: 24px;
padding-bottom: 0px;
}
.heading01::after {
display: none;
}
.heading01 span {
display: inline-block;
}

.heading02 {
font-size: 1.33rem;
padding-bottom: 10px;
margin-bottom: 22px;
}
.heading02::after {
content: "";
display: block;
width: 100%;
height: 3px;
background: url(images/reform/common/line.svg) left top / 100% no-repeat;
position: absolute;
bottom: 0px;
left: 0px;
}
.heading03 {
font-family: YakuHanJP, "Noto Sans Japanese", sans-serif;
font-size: 1.066rem;
font-weight: bold;
line-height: 1.3em;
border-left: 3px solid #626263;
padding: 5px 0px 5px 0.6em; 
margin-bottom: 6px;
}
.heading01 span,
.heading02 span,
.heading03 span {
display: inline-block;
}


@media (min-width: 768px) {
.heading03 {
font-size: 1.125rem;
padding: 7.5px 0px 7.5px 0.6em; 
margin-bottom: 8px;
}
}

/*.sentence {
font-size: 0.933rem;
line-height: 1.7em;
margin-bottom: 44px;
}*/
.page-lead {
font-size: 0.933rem;
line-height: 1.7em;
margin-bottom: 44px;
}
@media (min-width: 768px) {
.heading01 {
font-size: 2rem;
}
/*.sentence {
width: auto;
max-width: 888px;
margin: auto;
font-size: 1.25rem;
line-height: 1.8em;
margin-bottom: 60px;
}*/
.page-lead {
width: auto;
max-width: 888px;
margin: auto;
font-size: 1.25rem;
line-height: 1.8em;
margin-bottom: 60px;
}
}

/*パンクズ*/
.breadcrumb {
text-align: left;
font-size: 0.87rem;
}
.breadcrumb a {
color: #C58647;
}

/*画像の角丸*/
.radius-10 {
border-radius: 10px;
overflow: hidden;
}


/*------------------------
下層新規メインイメージ（リニューアル 画像あり）
------------------------*/
.mv-u-1 {
display: flex;
align-items: center;
position: relative;
overflow: hidden;
color: #fff;
/*margin-top: 65px;*/
}

.mv-u-1-inner {
display: inline-block;
padding: 0px 15px 24px 0px;
}
.mv-u-1 .mv-u-1-inner {
position: absolute;
bottom: 0px;
left: 0px;
padding-left: 15px;
}

@media (min-width: 576px) {
.mv-u-1 .mv-u-1-inner {
 max-width: 540px;
	margin-left: calc((100% - 540px) / 2);
    }
}
@media (min-width: 768px) {
.mv-u-1 .mv-u-1-inner {
	max-width: 720px;
	margin-left: calc((100% - 720px) / 2);
    }
}
@media (min-width: 992px) {
/*.mv-u-1 {
margin-top: 105px;
}*/
.mv-u-1 .mv-u-1-inner {
max-width: 960px;
margin-left: calc((100% - 960px) / 2);
margin-bottom: -74px;
bottom: 20%;
}
	.page-id-41 .mv-u-1 .mv-u-1-inner {
bottom: 80%;
	}
	.page-id-46 .mv-u-1 .mv-u-1-inner {
bottom: 15%;
	}
}
@media (min-width: 1200px) {
.mv-u-1 .mv-u-1-inner {
	max-width: 1170px;
	margin-left: calc((100% - 1170px) / 2);
    }
}


.mv-u-1-encopy {
margin-bottom: 7px;
line-height: 1em;
}
.mv-u-1-encopy::before {
content: "";
display: inline-block;
width: 0.5em;
height: 0.5em;
border-radius: 50%;
background: var(--b1);
vertical-align: middle;
margin-right: 0.3em;
margin-top: -0.1em;
}

.mv-u-1-mcopy {
font-family: YakuHanJP, "Noto Sans Japanese", sans-serif;
font-weight: bold;
font-size: 2.13rem;
line-height: 1.3em;
margin-bottom: 0.2em;
letter-spacing:-.4em;
}
.mv-u-1-mcopy span {
display: inline-block;
letter-spacing:normal;
}
@media (min-width: 992px) {
.mv-u-1-mcopy {
font-size: 2.8rem;
}
}
.mv-u-1-cat {
display: flex;
font-size: 1.2rem;
align-items: center;
}
.mv-u-1-cat-txt {
margin-left: 1em;
}
.mv-u-1-cat-line {
display: block;
height: 1px;
margin-top: calc((1em - 1px) / 2);
margin-bottom: calc((1em - 1px) / 2);
background: #fff;
}
.mv-u-1-cat-line.cat-line-5 {
width: calc(100% - 5em);
}
.mv-u-1-cat-line.cat-line-8 {
width: calc(100% - 8em);
}
.mv-u-1-cat-line.cat-line-9 {
width: calc(100% - 9em);
}
.mv-u-1-cat-line.cat-line-11 {
width: calc(100% - 11em);
}

.mv-u-1-hash {
	font-weight: bold;
}

.date {
font-family: YakuHanJP, -apple-system, BlinkMacSystemFont, "Helvetica Neue", "游ゴシック Medium", "Yu Gothic", YuGothic, YuGothicMedium, "Hiragino Kaku Gothic ProN", Meiryo, "Segoe UI", Roboto, sans-serif;
	color: var(--font-color-1);
}
/*下層新規メインイメージ リニューアル 画像ありのラインシャドウ*/
.mv-u-1-cat-line-shadow {
box-shadow: 0px 0px 6px 2px rgba(0, 0, 0, 0.1);
}
/*下層新規メインイメージ リニューアル 画像ありのテキストシャドウ*/
.hero-text-shadow {
text-shadow: 0px 2px 5px rgba(0,0,0,1);
}

@media (min-width: 768px) {
.mv-u-1-cat {
font-size: 1.25rem;
}
}

.mv-u-1-img {
width: 100%;
height: 460px;
overflow: hidden;
}

@media (min-width: 992px) {
.mv-u-1-img {
height: 620px;
margin: 0px;
}
}

/*------------------------
下層新規メインイメージ（リニューアル 画像なし）
------------------------*/
.page-hero.offthum::before,
.blog .page-hero.offthum::before,
.category .page-hero.offthum::before,
.archive .page-hero.offthum::before,
.awards-media .page-hero.offthum::before,
.tax-media_cat .page-hero.offthum::before,
.single-post .page-hero.offthum::before,
.single-media .page-hero.offthum::before {
	background-color: #F5F5F7;
}

.page-hero .page-title,
.blog .page-hero .page-title,
.category .page-hero .page-title,
.archive .page-hero .page-title,
.awards-media .page-hero .page-title,
.tax-media_cat .page-hero .page-title,
.single-post .page-hero .page-title,
.single-media .page-hero .page-title {
	color: var(--font-color-1);
}
.page-hero .mv-u-1-cat-line,
.blog .page-hero .mv-u-1-cat-line,
.category .page-hero .mv-u-1-cat-line,
.archive .page-hero .mv-u-1-cat-line,
.awards-media .page-hero .mv-u-1-cat-line,
.tax-media_cat .page-hero .mv-u-1-cat-line,
.single-post .page-hero .mv-u-1-cat-line,
.single-media .page-hero .mv-u-1-cat-line {
background: var(--font-color-1);
}

/*------------------------
記事ページ
------------------------*/
.post-head .date {
	font-family: YakuHanJP, -apple-system, BlinkMacSystemFont, "Helvetica Neue", "游ゴシック Medium", "Yu Gothic", YuGothic, YuGothicMedium, "Hiragino Kaku Gothic ProN", Meiryo, "Segoe UI", Roboto, sans-serif;
	font-weight: bold;
	color: #626263;
}
.post-head .date::before {
	display: none;
}
.post-head .date::after {
content: "";
display: block;
width: 100%;
height: 3px;
background: url(images/reform/common/line.svg) left top /100% no-repeat;
position: static;
	margin-top: 10px;
	margin-left: 0px;
}
@media (min-width: 768px) {
.post-head .date {
	font-size: 1.5rem;
	margin-bottom: 1.3rem;
}
.post-head .title {
	font-size: 2rem;
}
}
/*記事ページ ソーシャルアイコン*/
	.share-btn a {
		transition: all 0.2s;
	}
	.share-btn a.fb {
		background: url(images/reform/icon/sns/icon-sns-fb-l.svg) center center / contain no-repeat;
	}
	.share-btn a.tw {
		background: url(images/reform/icon/sns/icon-sns-tw-l.svg) center center / contain no-repeat;
	}
	.share-btn a.line {
		background: url(images/reform/icon/sns/icon-sns-ln-l.svg) center center / contain no-repeat;
	}
		.share-btn a:hover {
			opacity: 0.5;
	}
	.share-btn a.fb:hover,
	.share-btn a.tw:hover,
	.share-btn a.line:hover {
		background-color: transparent;
		
	}
	
/*------------------------
7つの強みページ 下部ナビバナー
------------------------*/
.page-bnr .body {
position: relative;
border-bottom: none;
font-size: 0.666rem;
padding: 12px 1.5em 12px 0px;
line-height: 1em;
transition: all 0.2s;
	background-color: transparent;
}
.page-bnr i.ion {
font-weight: bold;
position: absolute;
right: 0px;
top: 50%;
margin-top: -7px;
transition: all 0.2s;
}
.page-arrow + .ion {
color: var(--font-color-1);
	font-size: 1em;
	opacity: 1;
}

.page-bnr {
color: var(--font-color-1);
}
.page-bnr:hover {
box-shadow: none;
color: var(--font-color-1) !important;
}
.page-bnr:hover .body {
	opacity: 0.5;
}

.page-bnr:hover i.ion {
right: 5px;
}
.page-arrow {
	width: 100%;
	height: 0px;
	border: none;
 border-style: solid;
 border-width: 0 0 1px 0;
 border-color: transparent transparent #4444CB transparent;
 position: absolute;
 bottom: 0px;
 right: 0px;
 -webkit-transition: all 0.25s;
 transition: all 0.25s;
}
.page-bnr:hover .page-arrow {
 border-width: 0 0 1px 0;
}

@media (min-width: 768px) {
.page-bnr .body {
font-size: 1rem;
}
}
/*------------------------
創立100周年に向けて
------------------------*/
.history-block {
background: #F5F5F7;
color: #333;
}
/*.history-list {
display: flex;
justify-content: space-between;
}*/
.history-block .history-list dt .y {
display: flex;
justify-content: flex-start;
align-items: center;
}
.history-gengou {
display: inline-block;
font-size: 0.8em;
color: #787878;
font-style: normal;
vertical-align: middle;
margin-left: 1em;
}

.spirit-block .history-list dd,
.history-block .history-list dd {
line-height: 1.5em;
}

.history-block .history-list dt::before {
background-color: #d9d9d9;
}
.spirit-block .history-list dt,
.history-block .history-list dt,
.spirit-block .history-list dd,
.history-block .history-list dd {
border-color: #d0d0d0;
}
.history-block .history-list::before,
.history-block .history-list dt::after {
background-color: #d0d0d0;
}
.history-block .history-list dt .y span {
color: #333;
}
.history-block .wp-caption figcaption {
color: #333;
}

.history-block .history-end-copy {
color: #878787;
text-align: center;
font-size: 1.6rem;
}


@media (min-width: 768px) {
.spirit-block .history-list,
.history-block .history-list {
display: flex;
justify-content: space-between;
align-items: stretch;
}
.spirit-block .history-list dt,
.history-block .history-list dt {
width: 150px;
    border-top: 1px solid #d0d0d0;
    border-left: 1px solid #d0d0d0;
    border-bottom: 1px solid #d0d0d0;
    border-right: none;
				height: 100%;
display: flex;
align-items: center;
padding: 1.5rem 0px;
}
.spirit-block .history-list dt .y,
.history-block .history-list dt .y {
width: 100%;
flex-wrap: wrap;
justify-content: center;
align-items: center;
text-align: center;
border-right: solid 1px #d0d0d0;
padding-left: 0.5rem;
}
.history-block .history-list dt .y span {
display: block;
width: 100%;
margin-right: 0px;
margin-bottom: 0.2em;
font-size: 2.5rem;
line-height: 1em;
}
.spirit-block .history-list dt .y i,
.history-block .history-list dt .y i {
display: block;
width: 100%;
margin-left: 0px;
line-height: 1em;
}
.spirit-block .history-list dd,
.history-block .history-list dd {
width: calc(100% - 150px);
    border-top: 1px solid #d0d0d0;
    border-left: none;
    border-bottom: 1px solid #d0d0d0;
    border-right: 1px solid #d0d0d0;
				margin-bottom: 0px;
				padding-bottom: 0px;
display: flex;
align-items: center;
}
.history-block .history-end-copy {
padding-top: 24px;
margin-bottom: 0px;
font-size: 1.75rem;
}
}

@media (max-width: 992px) {
	.fullimg-row .head .thumbnail {
	border-radius: 10px;
		overflow: hidden;
	}
}


.fullimg-row:nth-child(even) .head {
	border-radius: 10px 0px 0px 10px;
	overflow: hidden;
}


.fullimg-row:nth-child(odd) .head {
	border-radius: 0px 10px 10px 0px;
	overflow: hidden;
}



/*------------------------
幸せで豊かな「食文化」
------------------------*/
.collabo-cont {
background: #F5F5F7;
padding: 15px;
}
.collabo-cont ul {
list-style-type: none;
padding-left: 0px;
}

.collabo-ti {
font-family: YakuHanJP, "Noto Sans Japanese", sans-serif;
font-size: 1.333rem;
font-weight: bold;
text-align: center;
line-height: 1.2em;
padding-bottom: 18px;
margin-bottom: 16px;
position: relative;
}
.collabo-ti::after {
content: "";
display: block;
width: 100%;
height: 3px;
background: url(images/reform/common/line.svg) left top /100% no-repeat;
position: absolute;
bottom: 0px;
left: 0px;
}
.collabo-ti span {
display: inline-block;
}
.collabo-note {
margin-bottom: 15px;
}
.collabo-note-attention {
color: #C58647;
font-weight: bold;
}
@media (min-width: 768px) {
.collabo-ti {
font-size: 1.5rem;
text-align: left;
}
.collabo-note {
margin-bottom: 32px;
}
}
.collabo-list {
display: flex;
flex-wrap: wrap;
margin-bottom: 0px;
row-gap: 15px;
}
.collabo-item {
border: solid 16px #fff;
background:  #fff;
}
@media (min-width: 768px) {
.collabo-cont {
padding: 30px;
}
.collabo-list {
column-gap: 15px;
flex-wrap: wrap;
align-items: flex-start;
}
.collabo-item {
width: calc((100% - 15px) / 2);
}
}
@media (min-width: 1200px) {
.collabo-cont {
padding: 45px;
}
.collabo-list {
column-gap: 30px;
row-gap: 30px;
flex-wrap: wrap;
}
.collabo-item {
width: calc((100% - 60px) / 3);
}
}

.collabo-item-top {
display: flex;
justify-content: space-between;
column-gap: 20px;
align-items: flex-end;
}
.collabo-item-l {
width: calc(100% - 198px);
}
.collabo-item-l img {
vertical-align: bottom;
}
.collabo-item-r {
width: 182px;
}
@media (min-width: 768px) {
.collabo-item-l {
width: calc(100% - 148px);
}
}
.collabo-item-r p {
margin-bottom: 0px;
}
.chef-name {
font-size: 1.33rem;
line-height: 1em;
font-weight: bold;
margin-bottom: 5px;
font-family: YakuHanJP, "Noto Sans Japanese", sans-serif;
}
.chef-name span {
font-size: 0.8em;
}
.chef-region {
font-size: 0.66rem;
line-height: 1em;
}
.chef-region span {
display: inline-block;
color: #fff;
background: var(--font-color-1);
padding: 0px 1.2em;
height: 2em;
line-height: 2em;
border-radius: 1em;
}
.rest-name {
display: inline-block;
font-size: 0.66rem;
color: #787878;
margin: 0px;
line-height: 1.3em;
}
.rest-name span {
display: inline-block;
}
@media (min-width: 768px) {
.chef-region {
margin-bottom: 2px !important;
}
.rest-name {
font-size: 0.75rem;
line-height: 1.3em;
}
}
.rest-link {
font-size: 0.466rem;
margin-top: -0.5em;
}
.rest-link a {
color: #787878;
transition: all 0.2s;
}
.rest-link a .ion {
display: inline-block;
font-size: 1.5em;
margin-left: 0.5em;
}
.rest-link a:hover {
color: var(--font-color-1);
}
.chef-gakkai img {
width: 87px;
}
.shef-coop {
display: inline-block;
font-size: 0.56rem;
margin-left: 1em;
}
.collabo-item-info-cont {
background: #F5F5F7;
border-radius: 5px;
margin-top: 16px;
}
.collabo-item-info-btn {
width: 100%;
height: 25px;
position: relative;
cursor: pointer;
}
.collabo-item-info-btn::after {
content: "";
display: block;
width: 6px;
height: 6px;
border-top: 2px solid #626263;
border-right: 2px solid #626263;
transform: rotate(135deg);
position: absolute;
top: 10px;
left: 50%;
margin-left: -4px;
transition: all 0.2s;
}
.collabo-item-info-btn.c-open::after {
transform: rotate(-45deg);
}
.collabo-item-info-btn + div {
display: none;
}

.collabo-item-info-inner {
padding: 0px 16px 10px;
flex-wrap: wrap;
row-gap:14px;
display: flex;
}

.collabo-item-info {
}
.collabo-item-info-ti {
font-family: YakuHanJP, "Noto Sans Japanese", sans-serif;
font-size: 1.066rem;
font-weight: bold;
height: 26px;
line-height: 26px;
border-left: 3px solid #626263;
padding-left: 0.6em;
}
.collabo-item-info-txt {
font-size: 0.8rem;
line-height: 1.5em;
padding-left: 1.2em;
}
@media (min-width: 768px) {
.collabo-item-info-ti {
font-size: 1.125rem;
height: 33px;
line-height: 33px;
}
.collabo-item-info-txt {
font-size: 0.875rem;
}
}
.collabo-item-menu {
padding-left: 0px;
}
.collabo-item-menu li {
padding-left: 1em;
position: relative
}
.collabo-item-menu li::before {
content: "";
display: block;
width: 0.3em;
height: 0.3em;
background: #787878;
border-radius: 50%;
position: absolute;
left: 0px;
top: 50%;
margin-top: -0.15em;
}


/*------------------------
教職員心得
------------------------*/
@media (max-width: 575px) {
.kn-book {
	width: 75%;
	margin: auto;
}
}

/*------------------------
2026年4月 100thにまつわる修正対応
------------------------*/
.ec-slider-ex-banner{
	width: 252px;
	display: block;
	margin: 0 auto 15px 21px;
}
.ec-slider-ex-banner img{
	width: 100%;
	box-shadow: 4px 4px 6px rgba(0,0,0,0.2);
}

@media (min-width: 768px) {
	
}
