body {
	padding-top: 70px;
}
section {
	position: relative;
	padding-top: 120px;
}
.mainvisual + section {
	padding-top: 40px;
}
h2 {
	font-family: 'Pacifico', cursive;
	font-size: 2.8rem;
}
h2 span {
	display: block;
	font-size: 1.6rem;
	font-family: 'Noto Sans JP';
	margin-top: 5px;
}


/*
---
---------------------------------------------------------------------------*/
.mainvisual {
	position: relative;
	overflow: hidden;
	display: flex;
	align-items: flex-start;
}
.mainvisual__flex__left {
	flex-grow: 1;
}
.mainvisual__image__wrapper:before {
	content: '';
	position: absolute;
	width: 13vw;
	height: 13vw;
	border-radius: 100%;
	background-image: url("../images/bgp-dotted-gray-62x62.png");
	top: 100px;
	right: 20px;
	z-index: 1;
}
.mainvisual__image__wrapper {
	width: 64%;
	background-size: cover;
	background-position: center;
	flex-shrink: 0;
}
.mainvisual__image__main {
	padding-bottom: 107.865169%;
	background-size: cover;
	background-position: center;
	background-image: url("../images/top-mainvisual-890x960.png");
	position: relative;
}
.mainvisual__image__main:before {
	content: "";
	position: absolute;
	top: -2px;
	bottom: -2px;
	left: -2px;
	right: 0;
	border-style: solid;
	border-color: #fff;
	border-width: 4px 0 4px 8px;
}
.mainvisual__check__wrapper {
	width: 55%;
	position: relative;
	background-image: url("../images/seitoku_check_03.png");
	background-size: 50px;
}
.mainvisual__check__wrapper:before {
	content: "";
	position: absolute;
	z-index: 1;
	top: -1px;
	bottom: -1px;
	left: 0;
	right: -2px;
	border-style: solid;
	border-color: #fff;
	border-width: 2px 3px 2px 0;
}
.mainvisual__check__main {
	padding-bottom: 185.714286%;
	background-size: cover;
	background-position: center;
	background-image: url("../images/top-mainvisual-cover-check-280x520.png");
}
.mainvisual__check__main:before {
	content: '';
	position: absolute;
	width: 15vw;
	height: 15vw;
	border-radius: 100%;
	right: 0;
	bottom: 10%;
	transform: translateX(50%);
	background-image: linear-gradient(135deg, #cccccc 10%, rgba(255,255,255,0) 10%, rgba(255,255,255,0) 50%, #cccccc 50%, #cccccc 60%, rgba(255,255,255,0) 60%, rgba(255,255,255,0) 100%);
	background-size: 14.14px 14.14px;
	z-index: 2;
}
.mainvisual__text__wrapper {
	position: relative;
	padding: 5vw 0 0 5vw;
	top: 5vw;
	left: 5vw;
	z-index: 2;
}
.mainvisual__text__bgt {
	position: absolute;
	top: 0;
	left: 0;
	z-index: -1;
}
.mainvisual__text__copy {
	font-size: 2.5rem;
	margin-right: -9vw;
}
.mainvisual__text__copy span {
	background-color: rgba(255, 255, 255, 0.3);
}
.mainvisual__scroll__wrapper {
	position: absolute;
	left: 30%;
	bottom: 0;
	padding-left: 30px;
	transform-origin: left bottom;
	transform: rotate(-90deg);
	z-index: 1;
}
.mainvisual__scroll__wrapper:before {
	content: '';
	position: absolute;
	left: 0;
	top: 50%;
	border-top: 1px solid ;
	width: 20px;
}


/*
---
---------------------------------------------------------------------------*/
.banner__slick__wrapper:before {
	top: 0;
	background-position: 0 0;
}
.banner__slick__wrapper:after {
	bottom: 0;
	background-position: 0 bottom;
}
.banner__slick__wrapper:before,
.banner__slick__wrapper:after {
	content: '';
	position: absolute;
	left: 0;
	right: 0;
	height: 40px;
	background-image: url("../images/bgp-top-banner.png");
	background-repeat: repeat-x;
	z-index: -1;
}
.banner__slick__wrapper {
	padding: 40px 0;
	position: relative;
}
.banner__slick__container {
	background-color: #E9F0F6;
}
.banner__slick__slick {
	max-width: 1060px;
	margin-left: auto;
	margin-right: auto;
	padding: 0 70px;
}
.banner__slick__slick .slick-prev {
	background-image: url("../images/arrow-border-14x26-white-prev.png");
}
.banner__slick__slick .slick-next {
	background-image: url("../images/arrow-border-14x26-white-next.png");
}
.banner__slick__slick .slick-arrow {
	width: 34px;
	height: 34px;
	background-size: 14px auto;
	background-position: center;
	background-repeat: no-repeat;
}
.banner__slick__slick .slick-slide {
	padding: 20px 10px;
}
.banner__slick__item:hover {
	color: #FE94AF;
}
.banner__slick__item {
	display: flex;
	background-color: #fff;
	box-shadow: 4px 4px 4px rgba(106, 106, 106, .25);
	min-height: 96px;
	color: inherit;
}
.banner__slick__thumb {
	width: 96px;
	background-size: cover;
	background-position: center;
	flex-shrink: 0;
}
.banner__slick__text {
	display: flex;
	padding: 10px;
	align-items: center;
}


/*
---
---------------------------------------------------------------------------*/
section.section__news {
	padding-top: 60px;
}
.news__wrapper {
	position: relative;
}
.news__container {
	max-width: 800px;
	margin-right: auto;
	margin-left: auto;
	position: relative;
}
.news__container:before,
.news__container:after {
	content: '';
	position: absolute;
	z-index: -1;
	width: 101.25%;
	padding-bottom: 82.5%;
	bottom: -80px;
	right: 50%;
}
.news__container:after {
	background-image: url("../images/top-news-cover-stripe-810x660.png");
	background-repeat: no-repeat;
	background-size: 100% auto;
	background-position: right bottom;
}
.news__container:before {
	background-image: linear-gradient(135deg, #f2f2f2 36.36%, #ffffff 36.36%, #ffffff 50%, #f2f2f2 50%, #f2f2f2 86.36%, #ffffff 86.36%, #ffffff 100%);
	background-size: 15.56px 15.56px;
}
.news__tab__wrapper {
	display: -webkit-flex;
	display: -moz-flex;
	display: -ms-flex;
	display: -o-flex;
	display: flex;
	align-items: center;
	margin-left: -20px;
	margin-right: -20px;
	justify-content: center;
}
.news__tab__item {
	padding: 0 20px;
}
.news__tab__inner:hover:before,
.news__tab__inner.active:before {
	transform-origin: left center;
	transform: scaleX(1);
}
.news__tab__inner:before {
	content: '';
	position: absolute;
	width: 14px;
	left: -20px;
	top: 50%;
	border-top: 1px solid #FE94AF;
	transform-origin: right center;
	transform: scaleX(0);
	transition: transform .5s;
}
.news__tab__inner {
	display: block;
	position: relative;
	color: inherit;
}

.news__articles__item {
	display: block;
	color: inherit;
	font-size: 1.4rem;
	padding: 20px 0;
	border-bottom: 1px solid #E6E6E6;
}
.news__articles__top {
	display: -webkit-flex;
	display: -moz-flex;
	display: -ms-flex;
	display: -o-flex;
	display: flex;
	align-items: center;
}
.news__articles__date {
	flex-shrink: 0;
	font-size: 1.2rem;
	color: #999;
}
.news__articles__cat span {
	font-size: 1.2rem;
	color: #fff;
	line-height: 1;
	padding: 3px 10px;
	background-color: #FE94AF;
	margin-right: 10px;
}
.news__articles__cat {
	display: -webkit-flex;
	display: -moz-flex;
	display: -ms-flex;
	display: -o-flex;
	display: flex;
	padding-left: 10px;
	margin-right: -10px;
}
.news__articles__bottom {
	transition: all .5s;
}
a:hover .news__articles__bottom {
	color: #FE94AF;
}


/*
---
---------------------------------------------------------------------------*/
.education__container {
	max-width: 1080px;
	padding-left: 20px;
	padding-right: 20px;
	margin-left: auto;
	margin-right: auto;
}
.education__h2:before {
	content: '';
	position: absolute;
	left: 100%;
	background-image: url("../images/kazari-education-92x52.png");
	background-size: 100% auto;
	background-repeat: no-repeat;
	width: 92px;
	height: 52px;
	top: -14px;
	transform: translateX(60px);
}
.education__h2 {
	position: relative;
}
.education__h2__wrapper {
	display: flex;
}
.education__text__wrapper {
	max-width: 50%;
}
.education__link__wrapper {
	padding-left: 80px;
	position: relative;
}
.education__link__wrapper:before {
	width: 84.615385%;
	height: 644px;
	background-position: right bottom;
	background-image: url("../images/top-education-bg-left-880x644.png");
	background-size: 100% auto;
	background-repeat: no-repeat;
	right: 62%;
	bottom: -22%;
}
.education__link__wrapper:after {
	width: 98.269231%;
	height: 746px;
	background-position: left top;
	background-image: url("../images/top-education-bg-right-1022x746.png");
	background-size: 100% auto;
	background-repeat: no-repeat;
	top: -69%;
	left: 50%;
}
.education__link__wrapper:before,
.education__link__wrapper:after {
	content: '';
	position: absolute;
	z-index: -2;
}
.education__link__flex {
	margin-left: -80px;
	margin-right: -80px;
}
.education__link__item:nth-of-type(even) {
	transform: translateY(-240px);
}
.education__link__item {
	padding: 0 80px;
	position: relative;
}
.education__link__inner {
	display: block;
	color: inherit;;
}
.education__link__thumb {
	position: relative;
}
a:hover .education__link__thumb:before {
	top: 20px;
	left: 20px;
	transition: all .5s;
}
.education__link__thumb:before {
	content: '';
	position: absolute;
	width: 100%;
	height: 100%;
	top: 60px;
	left: 60px;
	background-image: url("../images/seitoku_check_03.png");
	background-size: 50px;
	z-index: -1;
	transition: all .5s .5s;
	pointer-events: none;
}
.education__link__image {
	padding-bottom: 100%;
	background-size: cover;
	background-position: center;
}
a:hover .education__link__text {
	transform: translate(-40px, -40px);
	transition: all .5s;
}
.education__link__text {
	padding-left: 60px;
	transition: all .5s .5s;
}
.education__link__en {
	font-size: 2.4rem;
	padding-left: 20px;
}

.education__object1__wrapper:before {
	content: '';
	position: absolute;
	background-image: url("../images/illust-heart-60x60.png");
	background-size: 100% auto;
	background-repeat: no-repeat;
	background-position: 0 0;
	top: -40px;
	left: -40px;
	width: 60px;
	height: 60px;
}
.education__object1__wrapper {
	position: absolute;
	max-width: 236px;
	top: 0;
	left: 40px;
	transform: translate(-50%, -90px);
}

section.update2024 .education__object1__wrapper {
    left: 0;
}

.education__object2__wrapper:before {
	content: '';
	position: absolute;
	width: 136px;
	height: 120px;
	top: -70px;
	left: 90%;
	background-image: url("../images/illust-hukidashi-smile-136x120.png");
	background-size: 100% auto;
	background-repeat: no-repeat;
	background-position: 0 0;
}
.education__object2__wrapper {
	position: absolute;
	max-width: 170px;
	bottom: 100%;
	right: 0;
	transform: translate(-116px, 0px);
}


/*
---
---------------------------------------------------------------------------*/
.movie__wrapper {
	padding-top: 100px;
}
.movie__container h2 {
	padding-left: 20px;
	padding-right: 20px;
}
.movie__container:before {
	content: '';
	position: absolute;
	z-index: -3;
	background-image: url("../images/top-movie-bg-1112x662.png");
	background-repeat: no-repeat;
	background-position: center;
	background-size: 100% auto;
	width: 106.923077%;
	height: 662px;
	top: 50%;
	left: 50%;
	transform: translate(-50%, -50%);
}
.movie__container:after {
	content: '';
	position: absolute;
	z-index: -1;
	width: 18%;
	padding-bottom: 18%;
	border-radius: 100%;
	background-image: url("../images/bgp-dotted-gray-62x62.png");
	background-size: 56px;
	right: 0;
	top: 0;
	transform: translate(50%, -50%);
}
.movie__container {
	max-width: 1040px;
	margin-left: auto;
	margin-right: auto;
	position: relative;
}
.movie__slick__wrapper {
	padding: 0 55px;
}
.movie__slick__item {
	display: block;
	color: inherit;
	padding: 20px 15px 0;
}
a:hover .movie__slick__thumb:before {
	background-color: rgba(0,0,0,0.0);
	background-size: 38px auto;
}
.movie__slick__thumb:before {
	content: '';
	display: block;
	padding-bottom: 56.25%;
	background-color: rgba(0,0,0,0.30);
	background-image: url("../images/icon-movie-76x76-white.png");
	background-size: 76px auto;
	background-repeat: no-repeat;
	background-position: center;
	transition: all .5s;
}
.movie__slick__thumb {
	background-size: cover;
	background-position: center;
	position: relative;
	box-shadow: 0px 4px 8px rgba(106, 106, 106, .5);
}
.movie__slick__title {
	font-size: 1.8rem;
	display: flex;
	justify-content: center;
	padding: 0 40px;
}

.movie__object1__wrapper:before {
	content: '';
	position: absolute;
	background-image: url("../images/illust-point-40x44.png");
	width: 40px;
	height: 44px;
	background-size: 100% auto;
	background-repeat: no-repeat;
	top: -20px;
	left: -30px;
}
.movie__object1__wrapper:after {
	content: '';
	position: absolute;
	background-image: url("../images/illust-star-44x58.png");
	width: 44px;
	height: 58px;
	background-size: 100% auto;
	background-repeat: no-repeat;
	bottom: 40px;
	left: 120%;
}
.movie__object1__wrapper {
	position: absolute;
	max-width: 205px;
	bottom: 100%;
	right: 0;
	transform: translate(-60px, 60px);
}


/*
---
---------------------------------------------------------------------------*/
.insta__container:before {
	content: '';
	position: absolute;
	z-index: -1;
	height: 486px;
	width: 120.384615%;
	background-image: url("../images/top-insta-bg-orange-left-325x315.png"), url("../images/top-insta-bg-orange-center-362x321.png"), url("../images/top-insta-bg-orange-right-412x374.png");
	background-repeat: no-repeat, no-repeat, no-repeat;
	background-size: 25.958466% auto, 28.913738% auto, 32.907348%;
	background-position: left center, center bottom, right top;
	top: 140px;
	left: 50%;
	transform: translate(-50%, 0);
}
.insta__container:after {
	content: '';
	position: absolute;
	z-index: -1;
	height: 486px;
	width: 120.384615%;
	background-image: url("../images/top-insta-bg-dotted-left-325x315.png"), url("../images/top-insta-bg-stripe-right-412x374.png");
	background-repeat: no-repeat, no-repeat;
	background-size: 25.958466% auto, 32.907348%;
	background-position: left 70%, right top;
	top: 110px;
	left: 50%;
	transform: translate(-53%, 0);
}
.insta__container {
	position: relative;
	padding-top: 60px;
}
.insta__h2__wrapper {
	display: flex;
	justify-content: center;
}
.insta__h2:before {
	content: '';
	position: absolute;
	background-image: url("../images/illust-borderribbon-58x38.png");
	width: 58px;
	height: 38px;
	background-repeat: no-repeat;
	background-size: 100% auto;
	left: 100%;
	top: 0;
	transform: translate(20px, -10px);
}
.insta__h2 {
	position: relative;
}
.insta__flex__wrapper {
	padding-bottom: 60px;
	position: relative;
}
.insta__flex__inner:before {
	content: '';
	display: block;
	padding-bottom: 100%;
}
.insta__flex__inner {
	background-size: cover;
	background-position: center;
	box-shadow: 0px 4px 8px rgba(106, 106, 106, .5);
	display: block;
	color: inherit;;
}
.insta__flex__item:nth-of-type(3n+1) {
	transform: translateY(10px);
}
.insta__flex__item:nth-of-type(3n+2) {
	transform: translateY(60px);
}

.insta__slick__slick .slick-list {
	padding: 0 0 60px;
}
.insta__slick__slick {
	margin-left: -20px;
	margin-right: -20px;
}
.insta__slick__slick .slick-slide {
	padding: 20px;
	transition: transform .5s;
}
.insta__slick__inner:before {
	content: '';
	display: block;
	padding-bottom: 126%;
}
.insta__slick__inner {
	background-size: contain;
	background-position: center;
	display: block;
	color: inherit;
	background-repeat: no-repeat;
	background-color: #f2f2f2;
}
.slick-active .insta__slick__inner {
	box-shadow: 0px 4px 8px rgba(106, 106, 106, .5);
}
.insta__slick__slick .slick-current {
	transform: translateY(10px);
}
.insta__slick__slick .slick-current + .slick-slide {
	transform: translateY(60px);
}

.insta__object1__wrapper:before {
	content: '';
	position: absolute;
	background-image: url("../images/illust-3ribbon-94x58.png");
	width: 94px;
	height: 58px;
	background-repeat: no-repeat;
	background-size: 100% auto;
	top: -10px;
	right: 100%;
}
.insta__object1__wrapper {
	position: absolute;
	max-width: 202px;
	bottom: 100%;
	left: 0;
	transform: translateY(50px);
}


/*
---
---------------------------------------------------------------------------*/
.voice__container:after {
	content: '';
	position: absolute;
	z-index: -1;
	background-image: url("../images/top-voice-right-257x296.png");
	background-size: 100% auto;
	background-repeat: no-repeat;
	background-position: left bottom;
	height: 296px;
	width: 22.54386%;
	bottom: 0;
	left: 92%;
}
.voice__container:before {
	content: '';
	position: absolute;
	z-index: -1;
	background-image: url("../images/top-voice-left-1116x651.png");
	background-size: 100% auto;
	background-repeat: no-repeat;
	background-position: right top;
	height: 651px;
	width: 97.894737%;
	top: 0;
	right: 48%;
}
.voice__container {
	max-width: 1140px;
	margin-right: auto;
	margin-left: auto;
	position: relative;
}
.voice__flex__wrapper {
	max-width: 960px;
	padding: 0 0 50px 220px;
}
.voice__flex__flex {
	flex-direction: row-reverse;
}
a.voice__flex__inner p {
	position: relative;
	height: 100%;
}
a.voice__flex__inner:hover p:before {
	right: -15px;
}
a.voice__flex__inner p:before {
	content: '';
	position: absolute;
	width: 16px;
	height: 16px;
	transition: all .5s;
	right: -10px;
	bottom: -10px;
	background-image: url("../images/iconmonstr-arrow-right-circle-thin-32.png");
	background-repeat: no-repeat;
	background-size: 100% auto;
}
.voice__flex__inner {
	height: 100%;
	display: flex;
	flex-direction: column;
	justify-content: space-between;
	background-color: #fff;
	box-shadow: 4px 4px 8px rgba(106, 106, 106, .5);
	padding: 15px;
	color: inherit;
    font-size: 1.4rem !important;
}
.voice__flex__name {
	padding-top: 30px;
	text-align: right;
}
.voice__flex__item:nth-of-type(1) {
    transform: translate(40px, -40px);
}
.voice__flex__item:nth-of-type(2) {
	transform: translate(0px, 0px);
}
.voice__flex__item:nth-of-type(3) {
	transform: translate(-40px, 40px);
}
.voice__flex__item:nth-of-type(4) {
	transform: translate(-150px, 20px);
}
.voice__flex__item:nth-of-type(5) {
	transform: translate(-170px, 70px);
}
.voice__flex__item:nth-of-type(6) {
	transform: translate(-190px, 40px);
}
.voice__flex__item:nth-of-type(7) {
	transform: translate(-250px, 100px);
}
.voice__flex__item:nth-of-type(8) {
	transform: translate(-330px, 80px);
}

.voice__object1__wrapper:before {
	content: '';
	position: absolute;
	background-image: url("../images/illust-hukidashi-message-126x94.png");
	background-size: 100% auto;
	background-repeat: no-repeat;
	width: 126px;
	height: 94px;
	left: 50%;
	bottom: 87%;
	transform: translate(-50%, -50%);
}
.voice__object1__wrapper {
	position: absolute;
	max-width: 240px;
	bottom: 0;
	right: 0;
}
@media only screen and (min-width: 768px) {
	.voice__slick__slick {
		display: none;
	}
}


/*
---
---------------------------------------------------------------------------*/
.event__container:before {
	content: '';
	position: absolute;
	z-index: -1;
	width: 14%;
	padding-bottom: 14%;
	border-radius: 100%;
	background-image: url("../images/bgp-dotted-gray-62x62.png");
	background-size: 56px;
	left: 0;
	bottom: 0;
}
.event__container {
	max-width: 1300px;
	margin-left: auto;
	margin-right: auto;
	position: relative;
	padding-left: 300px;
}
.event__container__inner {
	max-width: 960px;
	margin-left: auto;
	position: relative;
}
.event__h2 {
	max-width: 532px;
	padding: 10px 20px 0;
	background-image: url("../images/kazari-event-532x88.png");
	background-repeat: no-repeat;
	background-size: 100% auto;
	background-position: center top;
	margin-left: auto;
	margin-right: auto;
}
.event__slick__slick .slick-slide {
	padding: 20px 10px;
}
.event__slick__slick {
	padding-left: 40px;
	padding-right: 40px;
}
.event__slick__item:hover {
	/*transform: translateY(-10px);*/
}
.event__slick__item {
	display: block;
	color: inherit;
	box-shadow: 4px 4px 8px rgba(106, 106, 106, .25);
	background-color: #fff;
	transition: all .5s;
}
.event__slick__title {
	background-color: #ECFC95;
	padding: 5px 20px;
	font-size: 2rem;
	min-height: 80px;
	display: flex;
	justify-content: center;
	align-items: center;
}
.event__slick__text:before {
	content: '';
	position: absolute;
	width: 40px;
	height: 40px;
	bottom: 0;
	right: 0;
	background-color: #FEC65B;
}
.event__slick__text__after {
	position: absolute;
	height: 40px;
	bottom: 0;
	left: 0;
	right: 0;
	display: flex;
	align-items: center;
	justify-content: center;
	text-align: center;
	color: inherit;
}
.event__slick__text__after:hover {
	background-color: #FEC65B;
	color: #fff;
}
.event__slick__text {
	background-color: #fff;
	padding: 20px 20px 80px;
	position: relative;
	min-height: 240px;
}

.event__object1__wrapper:before {
	content: '';
	position: absolute;
	background-image: url("../images/illust-onpu-70x64.png");
	background-repeat: no-repeat;
	background-size: 100% auto;
	width: 70px;
	height: 64px;
	top: 0;
	right: 0;
	transform: translate(90%, -90%);
}
.event__object1__wrapper:after {
	content: '';
	position: absolute;
	background-image: url("../images/illust-ribbon-62x54.png");
	background-repeat: no-repeat;
	background-size: 100% auto;
	width: 62px;
	height: 54px;
	bottom: 20%;
	left: -20px;
	transform: translate(-100%, 0%);
}
.event__object1__wrapper {
	position: absolute;
	max-width: 190px;
	left: -40px;
	bottom: 80px;
	transform: translateX(-100%);
}
.event__noevent__wrapper {
	min-height: 200px;
	display: flex;
	align-items: center;
	justify-content: center;
}


/*
---
---------------------------------------------------------------------------*/
.relay__container:before {
	content: '';
	position: absolute;
	z-index: -1;
	background-image: url("../images/top-relay-left-1053x637.png");
	background-size: 100% auto;
	background-repeat: no-repeat;
	background-position: right bottom;
	width: 95.727272%;
	height: 637px;
	right: 45%;
	top: 0;
}
.relay__container:after {
	content: '';
	position: absolute;
	z-index: -1;
	background-image: url("../images/top-relay-right-1021x637.png");
	background-size: 100% auto;
	background-repeat: no-repeat;
	background-position: left top;
	width: 92.818182%;
	height: 637px;
	left: 60%;
	top: 0;
	transform: translateY(-50%);
}
.relay__container {
	max-width: 1100px;
	margin-left: auto;
	margin-right: auto;
	position: relative;
}
.relay__h2__wrapper:before,
.relay__h2__wrapper:after {
	content: '';
	max-width: 190px;
	width: 100%;
	background-repeat: no-repeat;
	background-size: 190px auto;
	background-image: url("../images/kazari-relayblog-190x14.png");
	background-position: 0 14px;
}
.relay__h2__wrapper {
	display: flex;
	justify-content: center;
}
.relay__h2 {
	flex-shrink: 0;
	padding: 0 36px;
}
.relay__slick__slick {
	padding-left: 40px;
	padding-right: 40px;
}
.relay__slick__slick .slick-slide {
	padding: 20px 10px;
}
.relay__slick__item:hover {
	transform: translateY(-10px);
}
.relay__slick__item {
	display: block;
	color: inherit;
	box-shadow: 4px 4px 8px rgba(106, 106, 106, .25);
	background-color: #fff;
}
.relay__slick__thumb:before {
	content: '';
	display: block;
	padding-bottom: 66.666666666%;
}
.relay__slick__thumb {
	background-position: center;
	background-size: cover;
}
.relay__slick__text {
	background-color: #fff;
	padding: 20px;
}
.relay__slick__date {
	color: #979797;
	font-size: 1.2rem;
}


/*
---
---------------------------------------------------------------------------*/
.gallery__slick__wrapper {
	padding-bottom: 50px;
}
.gallery__slick__slick,
.gallery__slick__slick .slick-list {
	overflow: visible;
}
.gallery__slick__slick .slick-current {
	transform: translateY(60px);
}
.gallery__slick__slick .slick-current + .slick-slide {
	transform: translateY(40px);
}
.gallery__slick__slick .slick-current + .slick-slide + .slick-slide {
	transform: translateY(0px);
}
.gallery__slick__slick .slick-current + .slick-slide + .slick-slide + .slick-slide {
	transform: translateY(70px);
}
.gallery__slick__slick .slick-current + .slick-slide + .slick-slide + .slick-slide + .slick-slide {
	transform: translateY(20px);
}
.gallery__slick__slick .slick-slide {
	padding: 20px 10px;
	transition: transform 1s;
}
.gallery__slick__item:before {
	content: '';
	display: block;
	padding-bottom: 100%;
}
.gallery__slick__item {
	display: block;
	color: inherit;
	box-shadow: 4px 4px 8px rgba(106, 106, 106, .25);
	background-position: center;
	background-size: contain;
	background-color: #f2f2f2;
	background-repeat: no-repeat;
}
.gallery__slick__slick .slick-dots {
	transform: translateY(60px);
}


/*
---
---------------------------------------------------------------------------*/
.banner2__container:before {
	content: '';
	position: absolute;
	z-index: -1;
	background-image: url("../images/top-banner2-bg-1522x885.png");
	background-repeat: no-repeat;
	background-position: left top;
	background-size: 100% auto;
	width: 135.892857%;
	height: 885px;
	left: -10%;
	top: 0;
	transform: translateY(-50%);
}
.banner2__container {
	max-width: 1120px;
	margin-right: auto;
	margin-left: auto;
	position: relative;
	padding-bottom: 80px;
}
.banner2__slick__slick {
	padding: 0 50px;
}
.banner2__slick__item:hover:before {
	opacity: 0;
}
.banner2__slick__item:before {
	content: '';
	position: absolute;
	z-index: 0;
	top: 0;
	left: 0;
	right: 0;
	bottom: 0;
	background: #000;
	opacity: .5;
	transition: all .5s;
}
.banner2__slick__item span {
	position: relative;
	z-index: 1;
}
.banner2__slick__item {
	display: flex;
	color: #fff;
	align-items: center;
	justify-content: center;
	text-align: center;
	padding: 10px;
	position: relative;
	background-position: center;
	background-size: cover;
	min-height: 160px;
	background-color: #fff;
}
.banner2__slick__slick .slick-dots {
	margin-top: 25px;
}


/*
---
---------------------------------------------------------------------------*/
.emergency__wrapper {
	padding: 40px 20px 0;
}
.emergency__containerr {
	border: 6px solid #ce4a4a;
	padding: 20px;
	max-width: 1200px;
	margin-left: auto;
	margin-right: auto;
}
.emergency__containerr h2 {
	font-size: 2rem;
	color: #ce4a4a;
	font-family:inherit;
}


/*
---
---------------------------------------------------------------------------*/
.ytb__checkauth__wrapper {
	position: absolute;
	width: 100%;
	left: 0;
	top: 50%;
	transform: translateY(-50%);
}
.ytb__checkauth__flex {
	display: flex;
	justify-content: center;
	align-items: center;
}
.ytb__checkauth__flex button:disabled {
	opacity: 1;
	background-color: #666;
	color: #888;
}
.ytb__checkauth__flex button {
	padding: 5px 0;
	margin-left: 10px;
	-webkit-appearance: none;
	border: none;
	background-color: #eee;
	display: block;
	width: 70px;
}
.ytb__checkauth__flex input {
	padding: 5px;
	outline: none;
	-webkit-appearance: none;
	border: none;
	background-color: #fff;
	display: block;
	width: 180px;
	border-radius: 0;
}
.ytb__checkauth__error {
	color: #f00;
}

.shisetu__movie__subtext img {
	width: 14px;
	flex-shrink: 0;
	margin-right: 8px;
}
.shisetu__movie__subtext {
	display: flex;
	align-items: center;
	text-align: left;
	font-size: 1.2rem;
	justify-content: center;
}



@media only screen and (max-width: 1280px) {
section.update2024 .education__object1__wrapper {
    left:60px; 
}
}


@media only screen and (max-width: 1023px) {
	.mainvisual__text__wrapper {
		top: 20px;
		left: 10px;
	}
	.mainvisual__text__copy {
		margin-right: -13vw;
		font-size: 2.2rem;
	}
	.mainvisual__text__bgt {
		width: 220px;
	}
	

/*
---
---------------------------------------------------------------------------*/
	.education__object2__wrapper {
	}
	.education__object1__wrapper {
	}
    
    section.update2024 .education__object1__wrapper {
        top: 15px;
}
	.education__link__item {
		transform: translateX(40px);
	}
	.education__link__text {
		padding-left: 10px;
	}
	.education__link__en {
		padding-left: 0;
	}
	.education__link__thumb:before {
		top: 40px;
		left: 40px;
	}


/*
---
---------------------------------------------------------------------------*/
	.movie__slick__title {
		padding: 0;
	}
	.movie__wrapper {
		padding-top: 20px;
	}
	.movie__object1__wrapper {
	}


/*
---
---------------------------------------------------------------------------*/
	.insta__container:before {
		background-position: left 23%, center 52%, right top;
		top: 70px;
	}
	.insta__container:after {
		background-position: left 38%, right top;
		top: 50px;
	}
	.insta__object1__wrapper {
	}
	.insta__container {
		padding-top: 0;
		padding-bottom: 0;
	}
	.insta__flex__wrapper {
		padding-bottom: 0;
	}


/*
---
---------------------------------------------------------------------------*/
	.voice__flex__item:nth-of-type(1) {
		transform: translate(140px, -90px);
	}
    .voice__flex__item:nth-of-type(2) {
		transform: translate(100px, 0px);
	}
	.voice__flex__wrapper {
		padding: 0 220px 0 0;
	}
	.voice__flex__item:nth-of-type(3) {
		transform: translate(70px, -20px);
	}
	.voice__flex__item:nth-of-type(4) {
		transform: translate(0px, 20px);
	}
	.voice__flex__item:nth-of-type(5) {
		transform: translate(0px, 50px);
	}
	.voice__flex__item:nth-of-type(6) {
		transform: translate(0px, 0px);
	}
	.voice__flex__item:nth-of-type(7) {
        transform: translate(-50px, 70px);
        }
	.voice__flex__item:nth-of-type(8) {
        transform: translate(-110px, 60px);
    }
	.voice__object1__wrapper {
		width: 22%;
	}
	.voice__container:before {
		background-position: right center;
		right: 30%;
	}


/*
---
---------------------------------------------------------------------------*/
	.event__container {
		padding-left: 20%;
	}
	.event__object1__wrapper {
		left: 30px;
	}
	.event__object1__wrapper:before {
		transform: translate(50%, -50%);
	}


/*
---
---------------------------------------------------------------------------*/
	.banner2__container:before {
		transform: translateY(-30%);
	}


/*
---
---------------------------------------------------------------------------*/
	.emergency__wrapper {
		padding-top: 20px;
		padding-bottom: 20px;
	}
}


@media only screen and (max-width: 767px) {
	body {
		padding-top: 60px;
	}
	section {
		padding-top: 60px;
	}
	section.section__news {
		padding-top: 40px;
	}

/*
---
---------------------------------------------------------------------------*/
	.mainvisual {
		padding-top: 0px;
	}
	.mainvisual__text__copy {
		margin-right: -28vw;
	}
	.mainvisual__text__wrapper {
		padding: 20px 0 0px 10px;
		top: 0;
		left: 0;
	}
	.mainvisual__text__copy {
		font-size: 1.4rem;
	}
	.mainvisual__text__wrapper p {
		font-size: 1.2rem;
	}
	.mainvisual__text__bgt {
		width: 140px;
		max-width: none;
	}
	.mainvisual__check__main:before {
		background-image: linear-gradient(135deg, #cccccc 16.67%, rgba(255,255,255,0) 16.67%, rgba(255,255,255,0) 50%, #cccccc 50%, #cccccc 66.67%, rgba(255,255,255,0) 66.67%, rgba(255,255,255,0) 100%);
		background-size: 4.24px 4.24px;
	}
	.mainvisual__image__wrapper:before {
		top: 130px;
		background-size: 16px;
	}
	.mainvisual__image__wrapper {
		width: 70%;
	}
	.mainvisual__check__wrapper {
		z-index: 1;
		background-size: 20px;
	}
	.mainvisual__scroll__wrapper {
		font-size: 1.2rem;
	}


/*
---
---------------------------------------------------------------------------*/
	.banner__slick__slick {
		padding: 0 34px;
	}
	.banner__slick__wrapper {
		padding: 20px 0;
	}


/*
---
---------------------------------------------------------------------------*/
	.news__tab__wrapper {
		justify-content: flex-start;
		overflow-x: auto;
		margin-left: 0;
		-ms-overflow-style: none; /* IE, Edge 対応 */
		scrollbar-width: none;
	}
	.news__tab__wrapper::-webkit-scrollbar { /* Chrome, Safari 対応 */
		display: none;
	}
	.news__tab__item {
		flex-shrink: 0;
	}
	.news__tab__inner {
		font-size: 1.4rem;
	}
	.news__container:before, .news__container:after {
		bottom: -40px;
	}


/*
---
---------------------------------------------------------------------------*/
	.education__h2:before {
		transform: translateX(20px);
		width: 60px;
		top: -8px;
	}
	.education__text__wrapper {
		max-width: none;
	}
	.education__link__wrapper {
		padding-left: 0;
		padding-top: 60px;
	}
	.education__link__wrapper:before {
		bottom: auto;
		top: -60px;
		background-position: right top;
		width: 150vw;
		right: -50px;
		max-width: 880px;
	}
	.education__link__wrapper:after {
		top: auto;
		bottom: 80px;
		left: -50px;
		background-position: left bottom;
		width: 150vw;
		max-width: 1022px;
	}
	.education__link__item:nth-of-type(n) {
		transform: none;
	}
	.education__link__item + .education__link__item {
		padding-top: 40px;
	}
	.education__link__inner {
		max-width: 500px;
	}
	.education__link__item:nth-of-type(odd) .education__link__inner {
		padding-right: 60px;
	}
	.education__link__item:nth-of-type(even) .education__link__inner {
		padding-left: 20px;
		padding-right: 40px;
		padding-top: 50px;
		margin-left: auto;
	}
	.education__link__text {
		padding-left: 40px;
		padding-right: 30px;
	}
	.education__link__en {
		font-size: 2rem;
	}
	.education__link__text h5 {
		font-size: 1.6rem;
	}
	.education__object1__wrapper {
		left: 100px;
		transform: translate(-35px, -95%);
		width: 150px;
	}
	.education__object1__wrapper:before {
		width: 30px;
		top: -20px;
		left: -20px;
	}
    
    section.update2024 .education__object1__wrapper {
        left:100px; 
        top: 0;
        width: 130px;
}
	.education__object2__wrapper {
		width: 112px;
		transform: translate(50px, 110px);
		right: 100px;
	}
	.education__object2__wrapper:before {
		width: 68px;
		top: -40px;
	}


/*
---
---------------------------------------------------------------------------*/
	.movie__wrapper {
		padding-top: 0;
	}
	.movie__object1__wrapper {
		transform: translate(30px, 150px);
		width: 148px;
	}
	.movie__container:before {
		width: 140vw;
		max-width: 1112px;
		top: 43%;
	}
	.movie__slick__wrapper {
		padding: 0 38px;
	}
	.movie__object1__wrapper:before {
		width: 16px;
		left: -14px;
		top: -14px;
	}
	.movie__object1__wrapper:after {
		width: 20px;
		bottom: 14px;
		background-position: 0 bottom;
	}
	.movie__container:after {
		background-size: 25px;
		transform: translate(0%, 0%);
		top: 40px;
	}
	.movie__slick__thumb:before {
		background-size: 46px auto;
	}


/*
---
---------------------------------------------------------------------------*/
	.insta__h2:before {
		width: 40px;
		transform: translate(0px, -10px);
	}
	.insta__slick__slick {
		max-width: 380px;
		margin-left: auto;
		margin-right: auto;
		overflow: visible;
		padding: 0 40px;
	}
	.insta__slick__slick .slick-list {
		overflow: visible;
		padding: 0 0 40px;
	}
	.insta__container:before {
		left: 0;
		width: 770px;
		transform: translate(0%, 0);
		top: 100px;
		background-position: left 33%, 57% 38%, right top;
	}
	.insta__container:after {
		left: 0;
		width: 770px;
		transform: translate(0%, 0);
		top: 70px;
	}
	.insta__slick__slick .slick-current + .slick-slide {
		transform: translateY(40px);
	}
	.insta__object1__wrapper {
		left: -30px;
		width: 130px;
		transform: translateY(90px);
		z-index: -2;
	}
	.insta__object1__wrapper:before {
		width: 47px;
	}


/*
---
---------------------------------------------------------------------------*/
	.voice__flex__flex {
		display: none;
	}
	.voice__flex__wrapper {
		padding: 0;
	}
	.voice__slick__slick .slick-slide {
		padding: 0px 10px;
	}
	.voice__slick__slick {
/*		padding: 0 40px;*/
		overflow: visible;
	}
	.voice__slick__slick .slick-list {
		overflow: visible;
	}
	.voice__container {
		padding-bottom: 120px;
	}
	.voice__object1__wrapper {
		width: 90px;
		right: auto;
		left: 20px;
		z-index: 1;
	}
	.voice__object1__wrapper:before {
		content: none;
	}
	.voice__flex__name {
		font-size: 1.4rem;
	}
	.voice__container:before {
		background-position: right 7%;
		right: 25%;
		transform: scale(1.7);
		transform-origin: right 0;
		max-width: 380px;
	}
	.voice__container:after {
		content: none;
	}


/*
---
---------------------------------------------------------------------------*/
	.event__container {
		padding-left: 0;
	}
	.event__h2 {
		max-width: 410px;
		padding-top: 5px;
	}
	.event__object1__wrapper {
		bottom: 100%;
		left: auto;
		right: 10px;
		transform: translateX(0%);
		width: 122px;
	}
	.event__object1__wrapper:before {
		width: 30px;
		right: -10px;
		top: 0px;
		transform: translate(0%, -20%);
	}
	.event__object1__wrapper:after {
		width: 28px;
	}
	.event__container:before {
		bottom: 100%;
		background-size: 26px;
		left: auto;
		right: 80px;
	}
	.event__noevent__wrapper {
		min-height: 100px;
	}


/*
---
---------------------------------------------------------------------------*/
	.relay__h2__wrapper {
		padding: 0 20px;
	}
	.relay__container:after {
		transform: translateY(-16%);
	}


/*
---
---------------------------------------------------------------------------*/
	.banner2__container {
		padding-bottom: 40px;
	}
	.banner2__container:before {
		background-size: 1522px;
		transform: translateY(-50%);
	}


/*
---
---------------------------------------------------------------------------*/
	.emergency__containerr {
		padding: 14px;
	}
	.emergency__containerr h2 {
		font-size: 1.8rem;
	}
	.emergency__text {
		font-size: 1.4rem;
	}
}
@media only screen and (max-width: 600px) {
	.gallery__slick__wrapper {
		padding: 0 15% 20px 15%;
	}
	.gallery__slick__slick .slick-slide {
		transform: translateY(20px);
	}
	.gallery__slick__slick .slick-current {
		transform: translateY(0px);
	}
	.gallery__slick__slick .slick-current + .slick-slide {
		transform: translateY(40px);
	}
	.gallery__slick__slick .slick-dots {
		transform: translateY(20px);
	}
    
    
    
}


@media only screen and (max-width: 400px) {
	.mainvisual__text__copy {
		font-size: 3.4vw;
	}
}




