@charset 'UTF-8';
:root {
	--main-green: #0aa534;
	--pale-green: #d6f5eb;
	--light-green: #43bb73;
	--gray: #ccc;
}
/* Slider */
.slick-loading .slick-list
{
    background: #fff url('../ajax-loader.gif') center center no-repeat;
}

#main-visual > .slider > .slick-list {
	height: auto;
}
@media screen and (min-width: 1025px) {
	#main-visual > .slider > .slick-list {
		/*max-height: 500px;*/
	}
}

/* Icons */
@font-face
{
    font-family: 'slick';
    font-weight: normal;
    font-style: normal;
    src: url('../fonts/slick.eot');
    src: url('../fonts/slick.eot?#iefix') format('embedded-opentype'), url('../fonts/slick.woff') format('woff'), url('../fonts/slick.ttf') format('truetype'), url('../fonts/slick.svg#slick') format('svg');
}
/* Arrows */
.slick-prev,
.slick-next
{
    font-size: 0;
    line-height: 0;
    position: absolute;
    top: 50%;
    display: block;
    width: 5rem;
    height: 5rem;
    padding: 0;
    -webkit-transform: translate(0, -50%);
    -ms-transform: translate(0, -50%);
    transform: translate(0, -50%);
    cursor: pointer;
    color: transparent;
    border: none;
    outline: none;
    background: transparent;
}
.slick-prev:hover,
.slick-prev:focus,
.slick-next:hover,
.slick-next:focus
{
    color: transparent;
    outline: none;
    background: transparent;
}
.slick-prev:hover:before,
.slick-prev:focus:before,
.slick-next:hover:before,
.slick-next:focus:before
{
    opacity: 1;
}
.slick-prev.slick-disabled:before,
.slick-next.slick-disabled:before
{
    opacity: .25;
}

.slick-prev:before,
.slick-next:before
{
    font-family: 'slick';
    font-size: 20px;
    line-height: 1;

    opacity: .75;
    color: white;

    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
}
.slick-prev
{
    left: -25px;
}
[dir='rtl'] .slick-prev
{
    right: -25px;
    left: auto;
}
.slick-prev:before
{
    content: 'ↁE;
}
[dir='rtl'] .slick-prev:before
{
    content: 'ↁE;
}
.slick-next
{
    right: -25px;
}
[dir='rtl'] .slick-next
{
    right: auto;
    left: -25px;
}
.slick-next:before
{
    content: 'ↁE;
}
[dir='rtl'] .slick-next:before
{
    content: 'ↁE;
}
.nv_right, .nv_left, .nv_right-program {
	height: 4rem; width: 4rem;
    background: rgba(96, 74, 64, .35);
    display: block;
    position: absolute;
    z-index: 2;
    border-radius: 1000px;
    top: 50%;
    right: 0vw;
    transform: translate(50%, -50%);
}
.nv_right:hover, .nv_left:hover, .nv_right-program:hover {
	cursor: pointer;
}
.nv_right-program {
	height: 5rem; width: 5rem;
}
.nv_right {
    top: 50%;
    left: 0vw;
    transform: translate(-50%, -50%);
}
.nv_right::before,
.nv_right-program::before,
.nv_left::before {
	content: '\e408';
    font-family: 'Material Symbols Outlined';
	display: block;
    position: absolute;
    right: 0;
    top: 50%;
    transform: translateY(-50%);
    color: var(--white);
    font-size: 2.5rem;
	speak: none;
	pointer-events: none;
}
.nv_left::before,
.nv_right-program::before {
	content: '\e409';
    font-family: 'Material Symbols Outlined';
	left: 0;
	right: auto;
    transform: translateY(-50%);
	speak: none;
}
@media screen and (min-width: 600px) {
.nv_left::before {
			content: '\e409';
    font-family: 'Material Symbols Outlined';	
speak: none;
    right: 50%;
    transform: translate(50%, -50%);
}
.nv_right::before {
		content: '\e408';
    font-family: 'Material Symbols Outlined';
speak: none;
	left: 50%;
	right: auto;
    transform: translate(-50%, -50%);	
	}	
}
/*矢印の位置*/
@media screen and (min-width: 1169px) {
.nv_right, .nv_left{
	height: 4rem; width: 4rem;
    background: rgba(96, 74, 64, .35);
    right: 20%;
}
.nv_right {
    background: rgba(96, 74, 64, .35);
    left: 20%;
	}
.nv_left::before {
	content: '\e409';
    font-family: 'Material Symbols Outlined';
speak: none;
}
}

.program-image { overflow: hidden; }
.program-image .nv_right, .program-image .nv_left {
	height: 4rem; width: 4rem;
    right: 0;
	cursor: pointer;
}
.program-image .nv_right {
	left: 0;
}
@media screen and (min-width: 599px) {
.program-image .nv_left::before {
position: relative;
	left: -50%;
}
}
.program-image .nv_right::before {
position: relative;
    left: calc(100% - 0.35rem);
transform: translate(-50%, -50%);
}

@media (min-width: 769px) and (max-width: 1168px) {
.nv_right, .nv_left{
    background: rgba(96, 74, 64, .35);
    right: 20%;
}
.nv_right {
    background: rgba(96, 74, 64, .35);
    left: 20%;
	}
.nv_right:before {
	content: '\e408';
    font-family: 'Material Symbols Outlined';
	speak: none;
	}
}
@media (min-width: 600px) and (max-width: 768px) {
.nv_right, .nv_left{
    background: rgba(96, 74, 64, .35);
    right: 15%;
}
.nv_right {
    background: rgba(96, 74, 64, .35);
    left: 15%;
	}
.nv_right::before {
	content: '\e408';
    font-family: 'Material Symbols Outlined';
speak: none;
}
}
/* Dots */
.slick-dots
{
    position: absolute;
    bottom: 0.5rem;
    display: block;
    width: 100%;
    padding: 0;
    margin: 0;
    list-style: none;
    text-align: center;
    z-index: 1;
	bottom: -.5rem;
}
.slider-program .slick-dots {
	bottom: -2.75rem;
}
.slider-topic .slick-dots {
	bottom: -2.75rem;
}
@media screen and (min-width: 1025px) {
.school-top .slick-dots {
	bottom: -3.25rem
}
}
.slick-dots li
{
    position: relative;
    display: inline-block;
    width: 1.5rem;
    height: 2rem;
    margin: 0 .5rem;
    padding: 0;
    cursor: pointer;
}
.slick-dots li button
{
    font-size: 0;
    line-height: 0;
    display: block;
    width: 1.5rem;
    height: 2rem;
    padding: 0;
    cursor: pointer;
    color: transparent;
    border: 0;
    outline: none;
    background: transparent;
	box-shadow: none;
}
.slick-dots li button:hover,
.slick-dots li button:focus
{
    outline: none;
}
.slick-dots li button:hover:before,
.slick-dots li button:focus:before
{
    opacity: 1;
}
.slick-dots li button:before
{
    font-family: 'slick';
    font-size: 1rem;
    line-height: 1rem;
    position: absolute;
    top: 0;
    left: 0;
    width: 0;
    height: 0;
    content: '';
    text-align: center;
	display: block;
    width: 1rem;
    height: 1rem;
    border-radius: 10px;
    color: var(--gray);
	background: var(--gray);
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
}
.slick-dots li.slick-active button:before
{
    color: #143ca0;
	background: #143ca0;
	
}
