@charset "utf-8";
/* CSS Document */
/* 広報室管理ページ用 */

/* -------------------------
@header
--------------------------*/

.juku_header {
    display: flex;
    align-items: center;
    justify-content: space-evenly;
    gap: 15px;
}

.head_inr {    
    text-align: center;
}

.jukulogo {
    width: 320px;
}

.jukulogo h1.h1logo {
    padding: 0;
    background: none !important;
    align-items: center;
    margin: 0 auto;
}

.jukulogo img {
    width: 100%;
}

.fukidashi, .chara {
    flex: 1;
}

.fukidashi img {
    max-width: 200px;
}
.chara img {
    max-width: 120px;
}


@media (max-width: 767px) {
    .jukulogo {
        width: 300px;
    }
    .jukulogo img {
        max-width: 300px;
        width: 100%;
    }
    .fukidashi img {
        max-width: 170px;
        width: 100%;
    }
    .chara img {
        max-width: 90px;
        width: 100%;
    }
}


@media (max-width: 569px) {
    .juku_header {
        flex-wrap: wrap;
        justify-content: center;
    }
    .jukulogo {
        flex: unset;
        order: 1;
        width:100%;
    }
    .fukidashi {
        flex: 1.5;
        order:2;
        max-width: 150px;
    }
    .chara {
        order:3;
        max-width: 80px;
    }
    .chara img, .fukidashi img {
        width: 100%;
    }
}




/* -------------------------
@keyframe top animation
--------------------------*/


@keyframes fuwafuwa {
	0% {
	  transform: translateY(0px);
	}
	50% {
	  transform: translateY(-5px);
	}
	100% {
	  transform: translateY(5px);
	}
}
  
.anime_fw {
	animation: fuwafuwa 3s ease-in-out infinite alternate;
}

@keyframes pikopiko1 {
	0% {
	  transform: rotate(-7deg);
	}
	to {
	  transform: rotate(3deg);
	}
}

.anime_piko1 {
	animation: pikopiko1 1.5s steps(2, start) infinite;
}

@keyframes pikopiko2 {
	0% {
	  transform: rotate(10deg);
	}
	to {
	  transform: rotate(-5deg);
	}
}

.anime_piko2 {
	animation: pikopiko2 1.5s steps(2, start) infinite;
}



/* -------------------------
@header menu
--------------------------*/


.menu {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    row-gap: 15px;
	margin: 2.5em 0;
}

.menu .item {
	position: relative;
    display: table;
	flex-basis: calc((100% - 40px) / 4);
    max-width: calc((100% - 40px) / 4);
    height: 66px;
    text-align: center;
    padding: 11px 0 7px 0;
    border-radius: 10px;
    border: 2.5px solid #beabe3;
    box-shadow: 0px 4px 0 #beabe3;
	transition: all 0.3s;
}

.menu .item:hover {
	box-shadow: 0px 1px 0px 0px #beabe3;
	transform: translateY(3px);
}

.menu .item p {
	color: #8e69c7;
	font-weight: bold;
	font-size: 1.2em;
	margin: 0 !important;
	padding: 0 !important;
	display: table-cell;
	vertical-align: middle;
	line-height: 1.3 !important;
}

.menu .item span {
	font-size: .95rem;
    font-weight: normal;
    display: block;
}

.menu .item a {
    position: absolute;
    width: 100%;
    height: 100%;
    top: 0;
    left: 0;
    text-indent: 100%;
    white-space: nowrap;
    overflow: hidden;
}

@media (max-width: 579px){
	.menu .item {
		flex-basis: calc((100% - 10px) / 2);
		max-width: calc((100% - 10px) / 2);
	}
}


/* -------------------------
@juku online event mokuji
--------------------------*/

.mokuji_box {
    padding: 5px 20px;
    border: 2px solid #d8d4f5;
}

.mokuji_tbl {
    width: 100%;
}

.mokuji_tbl th{
    width: 65px;
    text-align: left;
    padding: 3px 0;
}
.mokuji_tbl td {
    padding: 3px 0;
}

.mokuji_tbl td span a {
    font-size: 0.9em;
    line-height: 2.5;
}


/* -------------------------
@juku contents tile
--------------------------*/
#jukutile_main {
    margin: 0 0.5em;
}

.content ul.jukutile {
    display: flex;
    flex-wrap: wrap;
	margin: 20px 0;
    padding: 0;
    justify-content: flex-start;
    gap: 15px;
}

.content ul.jukutile li {
	background-image: none;
	margin: 0 0 0.5em 0;
	padding: 0;
}
.content ul.jukutile li:nth-child(n + 7) {
	margin: 0;
}

.featuretile {
	position: relative;
	width: 32%;
}

.featuretile h3.h3tile{
	background: none !important;
	color: #333333;
	font-size: 1em;
	line-height: 1.5;
	margin: 0.3em 0 !important;
	padding: 5px 10px;
	border: none !important;
	text-align: justify;
}
.featuretile p{
	padding: 0 0.7em;
	font-size: 0.9em;
	text-align: justify;
}

.featuretile img{
	width: 100%;
	border: 1px solid #cecece;
}

.cattagbtn {
	margin-right: 0.6em;
	line-height: 1 !important;
	border-radius: 50vh;
}

.cattagbtn a {
	align-items: center;
	margin: 0 auto;
	padding: 0.4em 1em 0.5em;
	color: #474956 !important;
	font-size: .8em;
	font-weight: bold;
	text-decoration: unset !important;
}

.type01 {
	background: #c5f5f5;
}
.type02 {
	background: #e2f5f5;
}
.type03 {
	background: #e3eeef;
}
.type04 {
	background: #ede8d9;
}
.type05 {
	background: #e0f1ca;
}
.type06 {
	background: #dceaff;
}
.type07 {
	background: #fde7de;
}
.type08 {
	background: #fbe4f3;
}
.type09 {
	background: #e9e6fb;
}
.type10 {
	background: #fdedbc;
}

.cattagbtn a:hover {
	opacity: 0.7 ;
}

@media (max-width: 850px){
	.featuretile {
		width: 48%;
	}
}

@media (max-width: 700px){
	.featuretile {
		width: 100%;
	}
	.content ul.jukutile li {
		margin: 0 0 1em 0;
	}
	.featuretile h3{
	    font-size: 1em;
	}
	.featuretile img{
		margin: auto;
	}
}



/* -------------------------
@about, hello
--------------------------*/

.col_hello {
	display: flex;
	margin-bottom: 20px;
}

.col_item_right {
	text-align: center;
}

.col_hello .col_item_right img {
	max-width: 130px;
}

@media (max-width: 579px){
	.col_hello, .col_hello br {
		display: block;
	}
}

.flyer {
	text-align: center;
}

.flyer img {
	max-width: 300px;
	width: 90%;
	border: solid 1px #cccccc;
}



/* -------------------------
@forms アンケート
--------------------------*/

.forms {
    margin-bottom: 2em;
}

/* -------------------------
@form present
--------------------------*/

.flex_col {
    display: flex;
    gap: 10px;
}

.fl_inner {
    flex: 1;
    padding: 10px;
    text-align: center;
}

.fl_inner img.wide {
    width: 100%;
}

.fl_inner img.slim {
    width: 60%;
}

.fl_inner img {
    padding: 2px;
    margin-bottom: 1em;
    border:1px solid #bcbcbf;
    transition: 0.3s;
}

.fl_inner img:hover {
    opacity: 0.7;
}

.fl_inner .dl_txt {
    padding: 0;
}

@media (max-width: 550px){
	.flex_col {
		display: block;
	}
    .fl_inner img.wide {
        width: 80%;
    }
    .fl_inner img.slim {
        width: 50%;
    }
}


/* -------------------------
@クイズ
--------------------------*/

.ans_ttl {
    font-weight: bold;
}


/* -------------------------
@open event caution
--------------------------*/

.waku {
    border: 1px solid #beabe3;
    padding: 20px 0 0;
}

.waku .w_ttl {
    font-weight: bold;
}


/* -------------------------
@open event tile
--------------------------*/

.tile_set {
	margin-bottom: 3em;
}

.tile_set ul.tile {
    display: flex;
    gap: 20px;
	flex-wrap: wrap;
}

.tile_set ul.tile li.box {
	display: flex;
	flex-direction: column;
    background-image: none;
    margin: 0;
    padding: 0 0 9px 0;
	width: 31%;
    border: 1px solid #cecece;
}

.tile_set ul.tile li.box .image img{
	width: 100%;
}

.tile_set ul.tile p {
	text-align: justify;
	line-height: 1.4 !important;
}

ul.tile {
    padding: 0 15px;
}

ul.tile .title {
	padding: 10px 15px;
	margin-bottom: 0;
	font-size: 1em;
	font-weight: bold;
}

ul.tile .text {
	padding: 0 15px;
    font-size: 0.9em;
	margin-bottom: 1em;
}

@media (max-width: 767px){
	.tile_set ul.tile li.box {
		width: 48%;
	}
}
@media (max-width: 600px){
	.tile_set ul.tile li.box {
		width: 46%;
	}
}
@media (max-width: 550px){
	.tile_set ul.tile li.box {
		width: 100%;
	}
}

.tile_set .link {
	padding: 0 15px;
	margin-bottom: 0.4em;
}

.tile_set .link a {
	color: #d108d5;
    font-size: 0.95em;
}

.tile_set .link img {
	width: 24px;
	height: 24px;
	margin-right: 5px;
}







/* slick.css ここから下は編集しない================================= */
/* Slider */

.slick-slider{
    position: relative;

    display: block;
    box-sizing: border-box;

    -webkit-user-select: none;
       -moz-user-select: none;
        -ms-user-select: none;
            user-select: none;

    -webkit-touch-callout: none;
    -khtml-user-select: none;
    -ms-touch-action: pan-y;
        touch-action: pan-y;
    -webkit-tap-highlight-color: transparent;
}

.slick-list{
    position: relative;
    display: block;
    overflow: hidden;

    margin: 0;
    padding: 0;
}
.slick-list:focus{
    outline: none;
}
.slick-list.dragging{
    cursor: pointer;
    cursor: hand;
}

.slick-slider .slick-track,.slick-slider .slick-list{
    -webkit-transform: translate3d(0, 0, 0);
       -moz-transform: translate3d(0, 0, 0);
        -ms-transform: translate3d(0, 0, 0);
         -o-transform: translate3d(0, 0, 0);
            transform: translate3d(0, 0, 0);
}

.slick-track{
    position: relative;
    top: 0;
    left: 0;

    display: block;
    margin-left: auto;
    margin-right: auto;
}
.slick-track:before,.slick-track:after{
    display: table;

    content: '';
}
.slick-track:after{
    clear: both;
}
.slick-loading .slick-track{
    visibility: hidden;
}

.slick-slide{
    display: none;
    float: left;

    height: 100%;
    min-height: 1px;
}
[dir='rtl'] .slick-slide{
    float: right;
}
.slick-slide img{
    display: block;
}
.slick-slide.slick-loading img{
    display: none;
}
.slick-slide.dragging img{
    pointer-events: none;
}
.slick-initialized .slick-slide{
    display: block;
}
.slick-loading .slick-slide{
    visibility: hidden;
}
.slick-vertical .slick-slide{
    display: block;

    height: auto;

    border: 1px solid transparent;
}
.slick-arrow.slick-hidden {
    display: none;
}


/* -------------------------
@slide
--------------------------*/

/* slick-theme.css ================================= */
/* @charset 'UTF-8'; */
/* Slider */


/* Arrows */
.slick-prev,.slick-next{
    font-size: 0;
    line-height: 0;

    position: absolute;
    top: 50%;

    display: block;

    width: 20px;
    height: 20px;
    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: '←';
}
[dir='rtl'] .slick-prev:before{
    content: '→';
}

.slick-next{
    right: -25px;
}
[dir='rtl'] .slick-next{
    right: auto;
    left: -25px;
}
.slick-next:before{
    content: '→';
}
[dir='rtl'] .slick-next:before{
    content: '←';
}

/* Dots */
.slick-dotted.slick-slider{
	margin-bottom: 30px;
}

.slick-dots{
    position: absolute;
    bottom: -25px;

    display: block;

    width: 100%;
    padding: 0;
    margin: 0;

    list-style: none;

    text-align: center;
}
.slick-dots li{
    position: relative;

    display: inline-block;

    width: 20px;
    height: 20px;
    margin: 0 5px;
    padding: 0;

    cursor: pointer;
}
.slick-dots li button{
    font-size: 0;
    line-height: 0;

    display: block;

    width: 20px;
    height: 20px;
    padding: 5px;

    cursor: pointer;

    color: transparent;
    border: 0;
    outline: none;
    background: transparent;
}
.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: 6px;
    line-height: 20px;

    position: absolute;
    top: 0;
    left: 0;

    width: 20px;
    height: 20px;

    content: '•';
    text-align: center;

    opacity: .25;
    color: black;

    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
}
.slick-dots li.slick-active button:before{
    opacity: .75;
    color: black;
}



