:root {
	--width-mobile: 100vw;
	--width-desktop: 213.33333vw;
	--max-width-desktop: 533.33333vw;
	--black: #1C1C1C;
	--red: #ED131C;
	--gray10: #F5F5F6;
	--gray20: #ECEDF0;
	--gray40: #E0E1E5;
	--gray60: #CACACB;
	--gray80: #7E7F81;
	--gray100: #666666;
	--bs-gutter-x: 11.11111vw;
}

@media (max-width: 768px) {
	:root {
		--bs-gutter-x: 3.33333vw;
	}
}

/* Media */
/* Content */
/* Common animations */
@-webkit-keyframes border-opacity {
	0% {
		border-color: transparent;
	}
	100% {
		border-color: inherit;
	}
}
@keyframes border-opacity {
	0% {
		border-color: transparent;
	}
	100% {
		border-color: inherit;
	}
}

@-webkit-keyframes translate-bottom-to-top {
	0% {
		-webkit-transform: translate3d(0, -100%, 0);
		        transform: translate3d(0, -100%, 0);
	}
	100% {
		-webkit-transform: translate3d(0, 0, 0);
		        transform: translate3d(0, 0, 0);
	}
}

@keyframes translate-bottom-to-top {
	0% {
		-webkit-transform: translate3d(0, -100%, 0);
		        transform: translate3d(0, -100%, 0);
	}
	100% {
		-webkit-transform: translate3d(0, 0, 0);
		        transform: translate3d(0, 0, 0);
	}
}

@-webkit-keyframes translate-left-to-right {
	0% {
		-webkit-transform: translate3d(-100%, 0, 0);
		        transform: translate3d(-100%, 0, 0);
	}
	100% {
		-webkit-transform: translate3d(0, 0, 0);
		        transform: translate3d(0, 0, 0);
	}
}

@keyframes translate-left-to-right {
	0% {
		-webkit-transform: translate3d(-100%, 0, 0);
		        transform: translate3d(-100%, 0, 0);
	}
	100% {
		-webkit-transform: translate3d(0, 0, 0);
		        transform: translate3d(0, 0, 0);
	}
}

@-webkit-keyframes translate-right-to-left {
	0% {
		-webkit-transform: translate3d(100%, 0, 0);
		        transform: translate3d(100%, 0, 0);
	}
	100% {
		-webkit-transform: translate3d(0, 0, 0);
		        transform: translate3d(0, 0, 0);
	}
}

@keyframes translate-right-to-left {
	0% {
		-webkit-transform: translate3d(100%, 0, 0);
		        transform: translate3d(100%, 0, 0);
	}
	100% {
		-webkit-transform: translate3d(0, 0, 0);
		        transform: translate3d(0, 0, 0);
	}
}

@-webkit-keyframes translate-nw-to-se {
	0% {
		-webkit-transform: translate3d(0, 0, 0);
		        transform: translate3d(0, 0, 0);
	}
	20% {
		-webkit-transform: translate3d(0, 0, 0);
		        transform: translate3d(0, 0, 0);
	}
	80% {
		-webkit-transform: translate3d(100%, -100%, 0);
		        transform: translate3d(100%, -100%, 0);
	}
	100% {
		-webkit-transform: translate3d(100%, -100%, 0);
		        transform: translate3d(100%, -100%, 0);
	}
}

@keyframes translate-nw-to-se {
	0% {
		-webkit-transform: translate3d(0, 0, 0);
		        transform: translate3d(0, 0, 0);
	}
	20% {
		-webkit-transform: translate3d(0, 0, 0);
		        transform: translate3d(0, 0, 0);
	}
	80% {
		-webkit-transform: translate3d(100%, -100%, 0);
		        transform: translate3d(100%, -100%, 0);
	}
	100% {
		-webkit-transform: translate3d(100%, -100%, 0);
		        transform: translate3d(100%, -100%, 0);
	}
}

@-webkit-keyframes opacity-0-to-1 {
	0% {
		opacity: 0;
	}
	100% {
		opacity: 1;
	}
}

@keyframes opacity-0-to-1 {
	0% {
		opacity: 0;
	}
	100% {
		opacity: 1;
	}
}

@-webkit-keyframes opacity-1-to-0 {
	0% {
		opacity: 1;
	}
	100% {
		opacity: 0;
	}
}

@keyframes opacity-1-to-0 {
	0% {
		opacity: 1;
	}
	100% {
		opacity: 0;
	}
}

@-webkit-keyframes rotate-90-cw {
	0% {
		-webkit-transform: rotate3d(0, 0, 1, 0deg);
		        transform: rotate3d(0, 0, 1, 0deg);
	}
	100% {
		-webkit-transform: rotate3d(0, 0, 1, 90deg);
		        transform: rotate3d(0, 0, 1, 90deg);
	}
}

@keyframes rotate-90-cw {
	0% {
		-webkit-transform: rotate3d(0, 0, 1, 0deg);
		        transform: rotate3d(0, 0, 1, 0deg);
	}
	100% {
		-webkit-transform: rotate3d(0, 0, 1, 90deg);
		        transform: rotate3d(0, 0, 1, 90deg);
	}
}

@-webkit-keyframes rotate-90-ccw {
	0% {
		-webkit-transform: rotate3d(0, 0, 1, 0deg);
		        transform: rotate3d(0, 0, 1, 0deg);
	}
	100% {
		-webkit-transform: rotate3d(0, 0, 1, -90deg);
		        transform: rotate3d(0, 0, 1, -90deg);
	}
}

@keyframes rotate-90-ccw {
	0% {
		-webkit-transform: rotate3d(0, 0, 1, 0deg);
		        transform: rotate3d(0, 0, 1, 0deg);
	}
	100% {
		-webkit-transform: rotate3d(0, 0, 1, -90deg);
		        transform: rotate3d(0, 0, 1, -90deg);
	}
}

body {
	min-width: var(--width-mobile);
}

.page-theme-ny .wrapper-bottom {
	background-image: url("../img/common/wrapper-bottom_ny_m.jpg");
}

.container {
	max-width: none;
}

section {
	padding: 5.55556vw 0;
}

.title {
	font-size: 10.55556vw;
	margin-bottom: 6.66667vw;
}

.button {
	font-size: 4.16667vw;
	border-radius: 3.33333vw;
}

.button.shadow {
	box-shadow: 0 1.11111vw 0.55556vw rgba(102, 0, 0, 0.18);
}

.swiper-scrollbar {
	height: 1.38889vw;
	margin-top: 5.55556vw;
}

.form__item {
	width: 100% !important;
}

.form__footer-checkbox {
	width: 4.44444vw;
	height: 4.44444vw;
	border-radius: 0.83333vw;
}

.form__footer-checkbox-icon:before {
	width: 4.44444vw;
	height: 4.44444vw;
}

.form__footer-txt {
	font-size: 3.33333vw;
	padding: 0 0 0 6.66667vw;
}

.form_vertical {
	width: 100%;
	padding: 8.33333vw 4.44444vw;
}

.form {
	border-radius: 4.44444vw;
	padding: 5.55556vw 3.33333vw;
}

.form__txt {
	font-size: 4.72222vw;
	margin-bottom: 3.33333vw;
}

.form__title {
	font-size: 6.66667vw;
	margin-bottom: 5.55556vw;
}

.form__items {
	gap: 3.33333vw;
	margin-bottom: 4.44444vw;
}

.form__item {
	height: 13.33333vw;
	border-radius: 2.22222vw;
}

.form__item input {
	font-size: 3.88889vw;
	padding: 0 3.33333vw;
}

.form__item_button {
	height: initial;
	grid-template-columns: initial;
	gap: 3.33333vw;
}

.form__item_button button {
	font-size: 4.44444vw;
	height: 13.33333vw;
	border-radius: 3.33333vw;
	box-shadow: 0 1.11111vw 0.55556vw rgba(102, 0, 0, 0.18);
}

.form__item_button a {
	font-size: 4.44444vw;
	height: 13.33333vw;
	border-radius: 3.33333vw;
	box-shadow: 0 1.11111vw 0.55556vw rgba(55, 55, 55, 0.18);
}

.header {
	padding: 4.44444vw 0;
}

.header.fix {
	padding: 3.33333vw 0;
}

.header__logo {
	width: 8.88889vw;
}

.header__logo img:last-child {
	display: none;
}

.header__button {
	font-size: 3.61111vw;
	border-radius: 277.5vw;
	padding: 2.22222vw 4.44444vw;
}

.main {
	margin: 0 calc(-1 * var(--bs-gutter-x));
	padding: 0 0 5.55556vw;
}

.main__content {
	background: url("../img/main/bg-mb-new.jpg") no-repeat top center/contain;
	border-radius: 2.22222vw;
	padding: 83.33333vw 0 0;
}

.main__info {
	background: white;
	gap: 3.33333vw;
	border-radius: 4.44444vw;
	padding: 3.33333vw;
}

.main__info-title {
	font-size: 12.22222vw;
	line-height: 100%;
	text-align: center;
	max-width: initial;
}

.main__info-button {
	width: 100%;
	padding: 4.44444vw 0;
}

.courses__title {
	font-size: 10.55556vw;
	max-width: 95%;
	margin-bottom: 6.66667vw;
}

.courses__content {
	grid-template-columns: initial;
	gap: 5.55556vw;
	margin: 0 calc(-1 * var(--bs-gutter-x));
}

.courses__item {
	min-height: 111.11111vw;
	border-radius: 4.44444vw;
	padding: 3.33333vw;
}

.courses__item-title {
	font-size: 7.22222vw;
}

.courses__item-button {
	padding: 4.44444vw 0;
}

.courses__item:nth-of-type(1) {
	background-image: url("../img/courses/bg-1-mb.jpg");
}

.courses__item:nth-of-type(2) {
	background-image: url("../img/courses/bg-2-mb.jpg");
}

.courses__item:nth-of-type(3) {
	background-image: url("../img/courses/bg-3-mb.jpg");
}

.info__content {
	gap: 3.33333vw;
}

.info__item {
	border-radius: 3.33333vw;
}

.info__item-summary {
	font-size: 4.44444vw;
	border-radius: 3.33333vw;
	padding: 3.33333vw 10vw 3.33333vw 3.33333vw;
}

.info__item-summary::before, .info__item-summary::after {
	width: 3.88889vw;
	height: 0.55556vw;
	right: 3.88889vw;
}

.info__item-details-content {
	font-size: 3.88889vw;
	gap: 4.44444vw;
	padding: 5.55556vw 3.33333vw 5.55556vw 3.33333vw;
}

.info__item-details-content > div {
	gap: 3.33333vw;
}

.info__item-details-content h3 {
	font-size: 3.88889vw;
}

.info__item-details-content ul {
	gap: 3.33333vw;
	padding-left: 3.88889vw;
}

.info__item-details-content ol {
	gap: 3.33333vw;
	padding-left: 4.44444vw;
}

.info__item-details-content ol li {
	padding-left: 1.66667vw;
}

.info__item-details-content ol li::marker {
	font-size: 3.88889vw;
}

.info__item-details-content a {
	text-decoration-thickness: 1px;
	text-underline-offset: 0.55556vw;
}

.info__item-details-content sup {
	font-size: 6.66667vw;
	top: 1.66667vw;
}

.info__item-details-content sup.middle {
	font-size: 10vw;
	top: 2.22222vw;
}

.info__item-details .content__center br {
	display: block;
}

.info > p {
	margin-top: 6.66667vw;
}

.timeTable {
	display: none;
}

.timeTable_mb {
	display: block;
}

.timeTable__title {
	font-size: 4.72222vw !important;
	color: #1C1C1C;
	background: none;
	text-align: initial;
	margin-bottom: 3.33333vw !important;
}

.timeTable__item {
	background: white;
	border-radius: 4.44444vw;
	padding: 3.33333vw;
}

.timeTable__item-info-title {
	font: 700 3.88889vw/120% 'Raleway', serif;
	margin-bottom: 3.88889vw;
}

.timeTable__item-info-txt {
	font: 500 3.88889vw/120% 'Raleway', serif;
}

.timeTable__item-info:nth-of-type(1) .timeTable__item-info-title {
	font-size: 4.72222vw;
}

.timeTable__item-info:nth-of-type(1) .timeTable__item-info-txt {
	font-size: 4.44444vw;
	letter-spacing: -.01em;
	font-weight: 600;
}

.timeTable__item-info:nth-of-type(1) .timeTable__item-info-txt div {
	font-size: 4.16667vw;
	color: #7E7F81;
}

.timeTable__item hr {
	background: #ECEDF0;
	margin: 2.77778vw 0;
}

.timeTable__item hr:last-child {
	display: none;
}

.timeTable__footnote {
	font-size: 3.88889vw;
	margin-top: 3.33333vw;
}

.protocols__filter {
	display: grid;
	grid-template-columns: initial;
	gap: 3.33333vw;
	margin-bottom: 3.33333vw;
}

.protocols__filter-item {
	min-height: 27.77778vw;
	gap: 1.11111vw;
	border-radius: 4.44444vw;
	padding: 3.33333vw;
}

.protocols__filter-item-title {
	font-size: 4.72222vw;
}

.protocols__filter-item-code {
	font-size: 4.16667vw;
}

.protocols__filter-item-icon {
	right: 3.33333vw;
	bottom: 3.33333vw;
	width: 10vw;
}

.protocols .info__item-summary {
	font-size: 4.72222vw;
	padding: 3.33333vw 4.44444vw;
}

.protocols .info__item-summary::before {
	width: 2.22222vw;
	height: 2.22222vw;
}

.protocols .info__item-details-content {
	padding: 0 0 3.33333vw 0;
}

.protocols .info__item-details-content ul li {
	font-size: 3.88889vw;
	line-height: 140%;
}

.protocols .info__item-details-content ul li span:not([class]) {
	font-size: 2.77778vw;
}

.protocols .info__item.active > .info__item-summary:before {
	-webkit-transform: rotate(90deg) translateY(0) translateX(-60%);
	        transform: rotate(90deg) translateY(0) translateX(-60%);
	transition: all 0.5s ease;
}

.notice__content {
	background-image: url("../img/notice/bg-mb.jpg");
	grid-template-columns: initial;
	gap: 6.66667vw;
	border-radius: 4.44444vw;
	padding: 6.66667vw;
}

.notice__info-title {
	font-size: 8.88889vw;
	max-width: 50vw;
	margin-bottom: 3.33333vw;
}

.notice__info-txt {
	font-size: 3.88889vw;
	gap: 2.22222vw;
}

.notice__img {
	padding-top: 6.66667vw;
}

.notice__img img {
	width: 52.77778vw;
}

.notice__button {
	display: flex;
	width: 100%;
	padding: 4.44444vw 0;
}

.footer {
	font-size: 3.88889vw;
	padding: 6.66667vw 0;
}

.footer__content {
	flex-direction: column;
	align-items: initial;
}

.footer__logo {
	width: 69.44444vw;
	margin-bottom: 6.66667vw;
}

.footer__synergy {
	margin-left: initial;
	margin-bottom: 1.66667vw;
}

.footer__policy {
	margin-left: initial;
}

.modalbox__close {
	width: 10vw;
	height: 10vw;
	right: initial;
	left: 50%;
	-webkit-transform: translateX(-50%);
	        transform: translateX(-50%);
	top: -12.5vw;
	border-radius: 1.66667vw;
	overflow: hidden;
}

.modalbox__window {
	width: calc(100% - 5vw);
	border-radius: 4.44444vw;
}

.modalbox__window {
	position: relative;
	top: 7.5%;
	padding: 6.66667vw 3.33333vw;
}

.modalbox .form {
	width: 100%;
	border-radius: 4.44444vw;
}

.modalbox .form__title {
	font-size: 6.66667vw;
	line-height: 120%;
}

.modalbox .form__item_button {
	margin-top: 2.77778vw;
}

.modalbox .form__footer-text {
	font-size: 2.77778vw;
}

.modalbox .form__footer-text a,
.modalbox .form__footer-text a:hover {
	font-size: 2.77778vw;
}
