@charset "UTF-8";

.l-main-releaseList{
	margin:25px 0 35px;
}

.l-main-releaseList__list{
	display:grid;
	gap:28px;
	grid-template-columns:repeat(auto-fit, 198px);
	margin-block:0;
}

.l-main-releaseList__button{
	display:none;
}

.l-main-openCampusHeading{
	display:flex;
	align-items:end;
	justify-content:center;
	margin:30px -10px;
	container:l-main-opencampusheading / inline-size;
	gap:15px;
}

.l-main-openCampusHeading__title{
	display:flex;
	flex-direction:column;
	align-items:center;
	justify-content:center;
	order:2;
	color:#fff;
	text-align:center;

	.p-course-cookery-2-special &{
		color:#1c1a1a;
	}

	.p-course-cookery-2-special .l-main-structure.of-openCampus:has(+ .l-main-info) &{
		color:#fff;
	}
}

.l-main-openCampusHeading__main{
	margin:0;
	font-size:1.4rem;
	font-weight:700;
}

.l-main-openCampusHeading__sub{
	margin:0;
	font-family:var(--font-en-roboto);
	font-size:5.3rem;
	font-weight:700;
	letter-spacing:-0.03em;
	line-height:1.01887;
	text-transform:uppercase;

	@container l-main-opencampusheading (max-width: 354px){
		font-size:3.9rem;
	}
}

.l-main-openCampusHeading__decoration{
	min-width:58px;
	max-width:58px;
	flex-grow:1;
	margin-bottom:1.6em;

	&:nth-of-type(1){
		order:1;
	}

	&:nth-of-type(2){
		order:3;
	}
}

.l-main-openCampusLead{
	margin:30px 0;
	color:#fff;
	font-size:1.8rem;
	letter-spacing:0.1em;
	text-align:center;

	> b{
		position:relative;
		display:inline-flex;
		flex-wrap:wrap;
		justify-content:center;
		padding:0 0.75em;
		margin-inline:2em;

		&::before, &::after{
			position:absolute;
			top:0;
			bottom:0;
			display:block;
			width:1px;
			border-radius:9em;
			background-color:currentcolor;
			content:"";
			margin-block:auto;
		}

		&::before{
			left:0;
			transform:rotate(-12.5deg);
		}

		&::after{
			right:0;
			transform:rotate(12.5deg);
		}
	}

	.p-course-cookery-2-special &{
		color:#1c1a1a;
	}

	.p-course-cookery-2-special .l-main-structure.of-openCampus:has(+ .l-main-info) &{
		color:#fff;
	}
}

.l-main-openCampusAreaButton{
	margin:30px -10px 0;

	& > :first-child{
		margin-top:0 !important;
	}

	& > :last-child{
		margin-bottom:0 !important;
	}
}

.l-main-openCampusList__list{
	margin-block:0;
}

.l-main-openCampusList__item{
	& > :first-child{
		margin-top:0 !important;
	}

	& > :last-child{
		margin-bottom:0 !important;
	}
}

.l-main-openCampusList__button{
	&.swiper-button-next, &.swiper-button-prev{
		display:none;
	}
}

.l-main-instagramLead{
	margin:15px 0;
	color:#000;
	font-size:1.8rem;
	letter-spacing:0.1em;
	text-align:center;

	b{
		position:relative;
		padding:0 0.75em;

		&::before, &::after{
			position:absolute;
			top:0;
			bottom:0;
			display:block;
			width:1px;
			border-radius:9em;
			background-color:currentcolor;
			content:"";
			margin-block:auto;
		}

		&::before{
			left:0;
			transform:rotate(-12.5deg);
		}

		&::after{
			right:0;
			transform:rotate(12.5deg);
		}
	}
}

.l-main-instagramContents{
	margin:15px -20px;
	gap:2px;
}

.l-main-instagramAreaButton{
	position:relative;
	z-index:1;
	margin-top:-15px;
	transform:translateY(-50%);

	& > :first-child{
		margin-top:0 !important;
	}

	& > :last-child{
		margin-bottom:0 !important;
	}
}

.l-main-layoutYouTube__areaHeading, .l-main-layoutYouTube__areaMedia, .l-main-layoutYouTube__areaButton{
	& > :first-child{
		margin-top:0 !important;
	}

	& > :last-child{
		margin-bottom:0 !important;
	}
}

.l-main-layoutYouTube__areaHeading{
	padding-bottom:30px;
}

.l-main-layoutYouTube__areaButton{
	padding-top:20px;
	text-align:center;
}

.l-main-info{
	position:relative;
	z-index:1;
	padding-top:calc((var(--decoration-space) + var(--bg-structure-height))/var(--content-width)*100vw);
	margin-top:calc((var(--decoration-space) + var(--bg-structure-height))/var(--content-width)*-100vw);
	background:url(../img/bg_structure-fabric-top_sp@2x.png) no-repeat 0 calc(var(--decoration-space)/var(--content-width)*100vw) / 100%;
	pointer-events:none;

	&::before{
		position:absolute;
		top:calc((var(--decoration-space) - 10)/var(--content-width)*100vw);
		left:calc(44/var(--content-width)*100vw);
		display:block;
		width:87px;
		height:67px;
		background:url(../img/bg_l-main-info-before_sp@2x.png) no-repeat 0 0 / 100%;
		content:"";
	}
}

.l-main-info__inner{
	padding:0 20px;
	padding-bottom:calc(50/var(--content-width)*100vw);
	margin-top:-4px;
	background:url(../img/bg_fabric@2x.jpg) 0 0 / 50% #f1f1f1;
}

.l-main-info__offset{
	max-width:960px;
	padding:40px 0;
	margin-inline:auto;
	pointer-events:auto;

	& > :first-child{
		margin-top:0 !important;
	}

	& > :last-child{
		margin-bottom:0 !important;
	}
}

.l-main-info__layoutButton{
	display:flex;
	flex-wrap:wrap;
	justify-content:center;
	margin:30px 0;
	gap:14px;
	text-align:center;
}

.l-main-info__layoutButtonItem{
	min-width:280px;
	flex:1;
}

.l-main-info__button{
	position:relative;
	display:inline-flex;
	width:100%;
	min-height:41px;
	align-items:center;
	justify-content:center;
	padding:5px 44px 5px 20px;
	border:1px solid #c41b1f;
	border-radius:9em;
	background-color:#fff;
	color:#c41b1f;
	font-size:1.4rem;
	font-weight:700;
	letter-spacing:0.1em;
	line-height:1.42857;

	&:any-link{
		-webkit-text-decoration:none;
		text-decoration:none;
	}

	&.of-request{
		min-height:73px;
		background-color:#c41b1f;
		color:#fff;
		font-size:1.9rem;
		line-height:1.47368;

		&::after{
			right:20px;
		}
	}

	&::after{
		position:absolute;
		top:0;
		right:8px;
		bottom:0;
		display:block;
		width:28px;
		height:28px;
		border-radius:50%;
		margin:auto 0;
		background:url(../img/bg_arrowRight.svg) no-repeat 50% 50% / 11px 10px #aa0f13;
		content:"";
	}
}

.l-main-info__buttonLabel{
	position:relative;

	.l-main-info__button[class*="of-"] &{
		&::before{
			position:absolute;
			top:0;
			bottom:0;
			left:0;
			display:block;
			margin:auto 0;
			background:no-repeat 0 0 / 100%;
			content:"";
		}
	}

	.l-main-info__button.of-contact &{
		padding-left:30px;

		&::before{
			width:21px;
			height:16px;
			background-image:url(../img/bg_button-of-contact.svg);
		}
	}

	.l-main-info__button.of-tel &{
		padding-left:23px;

		&::before{
			width:15px;
			height:24px;
			background-image:url(../img/bg_button-of-tel.svg);
		}
	}

	.l-main-info__button.of-request &{
		padding-left:27px;

		&::before{
			width:19px;
			height:26px;
			background-image:url(../img/bg_l-main-info__button-of-request.svg);
		}
	}
}

.l-main-structure__decoration{
	position:absolute;

	.c-media-image{
		container:none;
	}
}

.l-main-structure{
	&.of-instagram{
		:nth-child(1 of .l-main-structure__decoration){
			top:calc(80/var(--content-width)*100vw);
			left:calc(13/var(--content-width)*100vw);
		}

		:nth-child(2 of .l-main-structure__decoration){
			display:none;
		}

		:nth-child(3 of .l-main-structure__decoration){
			display:none;
		}

		:nth-child(4 of .l-main-structure__decoration){
			top:calc(106/var(--content-width)*100vw);
			right:calc(4/var(--content-width)*100vw);
		}
	}

	&.of-youtube{
		:nth-child(1 of .l-main-structure__decoration){
			top:calc(107/var(--content-width)*100vw);
			left:calc(17/var(--content-width)*100vw);
		}

		:nth-child(2 of .l-main-structure__decoration){
			top:calc(63/var(--content-width)*100vw);
			right:calc(11/var(--content-width)*100vw);
		}

		:nth-child(3 of .l-main-structure__decoration){
			display:none;
		}
	}
}

.l-footer{
	position:relative;
	z-index:2;
	padding-top:calc(50/var(--content-width)*100vw);
	margin-top:calc(50/var(--content-width)*-100vw);
	background:url(../img/bg_footer_sp.svg) no-repeat 0 0 / 100%;
}

.l-footer__inner{
	padding-top:44px;
	margin-top:-4px;
	background-color:#c41b1f;
}

.l-footer-menuGroup{
	flex-grow:1;
}

.l-footer-menuGroupInner{
	display:flex;
	flex-direction:column;
	justify-content:space-between;
	background-color:#c41b1f;
}

.l-footer-menu__list{
	display:grid;
	padding:0 30px 35px;
	margin:0;
	background-color:#c41b1f;
	color:#fff;
	font-size:1.2rem;
	font-weight:700;
	gap:12px 14px;
	grid-template-columns:repeat(2, 1fr);
}

.l-footer-menu__item{
	border-bottom:1px solid #e56669;
}

.l-footer-menu__link{
	position:relative;
	display:flex;
	min-height:26px;
	align-items:center;
	padding:0 10px 8px 0;

	&:any-link{
		color:currentcolor;
		-webkit-text-decoration:none;
		text-decoration:none;
	}

	&::after{
		position:absolute;
		top:0;
		right:10px;
		bottom:8px;
		display:block;
		width:8px;
		height:8px;
		margin:auto;
		background:url(../img/bg_arrowRight.svg) no-repeat 0 0 / 100%;
		content:"";
	}
}

.l-footer-menu__label{
	display:block;
	flex-grow:1;
	padding-right:18px;
}

.l-footer-areaUtility{
	padding:30px 30px 0;
	background-color:#aa0f13;
}

.l-footer-menuGroupInner, .l-footer-areaUtility{
	& > :first-child{
		margin-top:0 !important;
	}

	& > :last-child{
		margin-bottom:0 !important;
	}
}

.l-footer-utility__listGroup{
	margin:0;
	color:#fff;
	font-size:1.2rem;
}

.l-footer-utility__listGroupItem{
	&:not(:first-child){
		padding-top:30px;
	}

	&:not(:last-child){
		padding-bottom:31px;
		border-bottom:1px solid #c2474a;
	}
}

.l-footer-utility__listGroupTitle{
	display:block;
	margin-bottom:15px;
	font-weight:700;
}

.l-footer-utility__list{
	display:flex;
	flex-wrap:wrap;
	gap:8px 18px;
}

.l-footer-utility__item{
	position:relative;
	padding-left:15px;

	&::before{
		position:absolute;
		top:11px;
		left:0;
		display:block;
		width:8px;
		height:2px;
		border-radius:9em;
		background-color:#fff;
		content:"";
	}
}

.l-footer-utility__link{
	color:currentcolor;
	-webkit-text-decoration:none;
	text-decoration:none;
}

.l-footer-sns{
	margin:40px 0;
}

.l-footer-sns__list{
	display:flex;
	align-items:center;
	margin:0;
	gap:2px;
}

.l-footer-sns__item{
	flex:1;
}

.l-footer-sns__link{
	display:flex;
	min-height:60px;
	align-items:center;
	justify-content:center;
	background-color:#c41b1f;

	&:any-link{
		color:#fff;
		-webkit-text-decoration:none;
		text-decoration:none;
	}

	.l-footer-sns__item:first-child &{
		border-radius:10px 0 0 10px;
	}

	.l-footer-sns__item:last-child &{
		border-radius:0 10px 10px 0;
	}
}

.l-footer-sns__image{
	margin:auto;

	.l-footer-sns__item.of-youtube &{
		width:34px;
		height:23px;
	}

	.l-footer-sns__item.of-instagram &{
		width:33px;
		height:33px;
	}

	.l-footer-sns__item.of-twitter &{
		width:30px;
		height:31px;
	}
}

.l-footerArea-bottom{
	padding:33px 30px calc(55/var(--content-width)*100% + 8px);
	background-color:#aa0f13;
	color:#fff;
}

.l-footerArea-bottom__inner{
	display:flex;
	flex-direction:column-reverse;
	gap:15px;
}

.l-footer-copyright{
	font-size:1rem;
	line-height:1.7;
}

.l-footer-pagetop{
	min-height:40px;
	text-align:right;
}

.l-footer-pagetop__inner{
	position:fixed;
	z-index:var(--sitepagetop);
	right:30px;
	bottom:calc(63/var(--content-width)*100vw);
	left:30px;
	container:l-footer-area-bottom / inline-size;
	pointer-events:none;
}

.l-footer-pagetop__offset{
	max-width:1214px;
	margin-inline:auto;
}

.l-footer-pagetop__link{
	display:inline-block;
	pointer-events:auto;
	transform:translateX(23px);
}

.l-footer-pagetop__image{
	vertical-align:bottom;
}

.c-box-1, .c-box-1__offset, .c-box-1__foot{
	& > :first-child{
		margin-top:0 !important;
	}

	& > :last-child{
		margin-bottom:0 !important;
	}
}

.c-box-1{
	--bg-color:#fff;
	--border-color:#c41b1f;
	--heading-color:#c41b1f;

	border:2px solid var(--border-color);
	border-radius:20px;
	margin-top:30px;
	background-color:var(--bg-color);

	.p-course-confectionary &, .l-main-structure.of-confectionary &, &.of-confectionary{
		--bg-color:#fff;
		--border-color:#ff84a0;
		--heading-color:#ff84a0;
	}

	.p-course-cookery-2 &, .l-main-structure.of-cookery-2 &, .l-main-structure.of-cookery &, &.of-cookery-2{
		--bg-color:#fff;
		--border-color:#ff9a39;
		--heading-color:#ff9a39;
	}

	.p-course-cookery-1 &, .l-main-structure.of-cookery-1 &, &.of-cookery-1{
		--bg-color:#fff;
		--border-color:#50c7a9;
		--heading-color:#50c7a9;
	}

	&:has(.c-box-1__header > .c-text-titleSteps){
		margin-top:60px;
	}

	&.of-type-2{
		--bg-color:#fdf9f4;
	}

	&.of-type-3{
		--bg-color:#fff;
		--border-color:#fff;
		--heading-color:#000;
	}
}

.c-box-1__offset{
	padding:32px 20px 40px;

	&:has(.c-box-1__header > .c-text-titleSteps){
		padding-top:0;
	}
}

.c-box-1__header{
	margin-block:0 10px;

	&:has(.c-text-titleSteps){
		margin-bottom:-33px;
		text-align:center;
		transform:translateY(-33px);
	}

	& *{
		--color:var(--heading-color) !important;
	}

	& > :first-child{
		margin-top:0 !important;
	}

	& > :last-child{
		margin-bottom:0 !important;
	}
}

.c-box-2{
	--main-color:#c41b1f;

	margin-top:30px;

	.p-course-confectionary &, &.of-confectionary{
		--main-color:#ff84a0;
	}

	.p-course-cookery-2 &, &.of-cookery-2, &.of-cookery{
		--main-color:#ff9a39;
	}

	.p-course-cookery-1 &, &.of-cookery-1{
		--main-color:#50c7a9;
	}

	.l-main-structure.of-fabric &{
		--main-color:#000;
	}
}

.c-box-2__header{
	display:flex;
	align-items:center;
	justify-content:center;
	margin:0;
	color:var(--main-color);
	font-size:2rem;
	font-weight:700;
	letter-spacing:0.1em;
	line-height:1.6;
	text-align:center;

	&::before, &::after{
		display:inline-block;
		min-width:40px;
		height:1px;
		flex-grow:1;
		background-color:var(--main-color);
		content:"";
	}
}

.c-box-2__headerLabel{
	display:inline-block;
	padding:0 0.5em;
}

.c-box-2__inner{
	padding-top:20px;

	& > :first-child{
		margin-top:0 !important;
	}

	& > :last-child{
		margin-bottom:0 !important;
	}
}

.c-box-3, .c-box-3__layout, .c-box-3__areaHeading, .c-box-3__areaButton, .c-box-3__areaSupplementary{
	& > :first-child{
		margin-top:0 !important;
	}

	& > :last-child{
		margin-bottom:0 !important;
	}
}

.c-box-3{
	--main-color:rgb(196, 27, 31, 0.1);

	padding:25px 20px;
	border-radius:10px;
	margin-top:25px;
	background-color:var(--main-color);

	.c-box-1__foot &{
		border-radius:0 0 20px 20px;
	}
}

.c-box-3__layout{
	display:grid;
	gap:15px 30px;
}

.c-box-3__areaHeading{
	text-align:center;
}

.c-box-3__heading{
	color:#222;
	font-size:1.8rem;
	font-weight:700;
	line-height:1.61111;
}

.c-box-4{
	padding:20px;
	border-radius:10px;
	margin-top:15px;
	margin-bottom:10px;
	background-color:#f5f5f5;

	&.of-pin{
		position:relative;

		&::after{
			position:absolute;
			top:-6px;
			right:-6px;
			display:block;
			width:20px;
			height:23px;
			background:url(../img/bg_c-box-4-of-pin.svg) no-repeat 0 0 / 100%;
			content:"";
		}
	}

	& > :first-child{
		margin-top:0 !important;
	}

	& > :last-child{
		margin-bottom:0 !important;
	}
}

.c-box-student{
	--main-color:#c41b1f;

	display:flex;
	max-width:820px;
	flex-direction:column-reverse;
	border:2px solid var(--main-color);
	border-radius:20px;
	margin:45px auto 0;
	background-color:#fff;
	.p-course-confectionary &, &.of-confectionary{
		--main-color:#ff84a0;
	}

	.p-course-cookery-2 &, &.of-cookery-2, &.of-cookery{
		--main-color:#ff9a39;
	}

	.p-course-cookery-1 &, &.of-cookery-1{
		--main-color:#50c7a9;
	}

	.p-course-confectionary-special &{
		--main-color:#f5ccd0;
	}

	.p-cafe &{
		&.of-confectionary{
			--main-color:#f77579;
		}

		&.of-cookery-2{
			--main-color:#ea5506;
		}
	}
}

.c-box-student__head, .c-box-student__body, .c-box-student__layoutAreaText, .c-box-student__layoutAreaImage{
	& > :first-child{
		margin-top:0 !important;
	}

	& > :last-child{
		margin-bottom:0 !important;
	}
}

.c-box-student__head{
	display:flex;
	min-height:60px;
	align-items:center;
	padding:20px 15px;
	border-radius:0 0 16px 16px;
	background-color:var(--main-color);
	gap:5px;
}

.c-box-student__course{
	display:inline-flex;
	min-height:22px;
	flex-shrink:0;
	align-items:center;
	justify-content:center;
	padding:0 10px;
	border-radius:9em;
	background-color:#fff;
	color:var(--main-color);
	font-size:1.4rem;
	font-weight:700;
	text-align:center;
}

.c-box-student__profile{
	display:flex;
	flex-wrap:wrap;
	align-items:center;
	color:#fff;
}

.c-box-student__name{
	font-size:1.4rem;
	font-weight:700;
}

.c-box-student__school{
	font-feature-settings:"palt";
	font-size:1.2rem;
}

.c-box-student__body{
	display:flex;
	flex-grow:1;
	padding:20px 25px;
}

.c-box-student__layout{
	display:flex;
	flex-grow:1;
	gap:10px;
}

.c-box-student__layoutAreaText{
	flex-grow:1;
	font-size:1.2rem;
}

.c-box-student__layoutAreaImage{
	position:relative;
	flex-grow:1;
}

.c-box-student__viewport{
	position:absolute;
	right:-2px;
	bottom:-20px;
	display:block;
	pointer-events:none;
}

.c-box-student__image{
	vertical-align:bottom;
}

.c-box-tagCourseGroup{
	--height:19px;

	display:flex;
	flex-wrap:wrap;
	gap:3px;

	&.of-absolute{
		position:absolute;
		right:var(--padding-inline, auto);
		bottom:calc(100% - var(--height)/2);
		left:var(--padding-inline, auto);
	}

	:is(.p-top, .p-course-confectionary-special, .p-course-cookery-2-special) &{
		--height:17px;
	}
}

.c-button-1, .c-button-2{
	container:c-button / inline-size;
}

.c-button-1__button, .c-button-2__button{
	position:relative;
	display:inline-flex;
	align-items:center;
	justify-content:center;
	border-style:solid;
	border-radius:9em;
	font-weight:700;
	text-align:center;

	&:any-link{
		-webkit-text-decoration:none;
		text-decoration:none;
	}

	&::before, &::after{
		display:block;
		content:"";
	}

	&::after{
		position:absolute;
		top:0;
		bottom:0;
		border-radius:50%;
		margin:auto;
		background:url(../img/bg_arrowRight.svg) no-repeat 50% 50%;
	}

	&[href*=".doc"], &[href*=".docx"], &[href*=".ppt"], &[href*=".pptx"], &[href*=".xls"], &[href*=".xlsx"], &[href*=".zip"], &[href*=".pdf"]{
		&::after{
			background-image:url(../img/bg_download_01.svg);
		}
	}
}

.c-button-1__label, .c-button-2__label{
	[class*="c-button-"][class*="__button"][href^="tel:"] &, [class*="c-button-"][class*="__button"][href^="mailto:"] &{
		position:relative;

		&::before{
			position:absolute;
			top:0;
			bottom:0;
			left:0;
			display:block;
			background:no-repeat 0 0 / 100%;
			content:"";
			margin-block:auto;
		}
	}

	[class*="c-button-"][class*="__button"][href^="tel:"] &{
		&::before{
			background-image:url(../img/bg_button-of-tel.svg);
		}
	}

	[class*="c-button-"][class*="__button"][href^="mailto:"] &{
		&::before{
			background-image:url(../img/bg_button-of-contact.svg);
		}
	}
}

.c-button-1__button{
	border-color:#c41b1f;
	background-color:#c41b1f;
	color:#fff;

	&::after{
		background-color:#aa0f13;
	}
}

.c-button-1__label{
	[class*="c-button-"][class*="__button"][href^="tel:"] &, [class*="c-button-"][class*="__button"][href^="mailto:"] &{
		&::before{
			filter:brightness(0) saturate(100%) invert(100%) sepia(0%) saturate(0%) hue-rotate(27deg) brightness(102%) contrast(100%);
		}
	}
}

.c-button-2__button{
	border-color:currentcolor;
	background-color:#fff;
	color:#aa0f13;

	&::after{
		background-color:currentcolor;
	}

	.p-course-cookery-2-special .l-main-structure.of-openCampus:not(:has(+ .l-main-info)) &{
		background-color:#1c1a1a;
		color:#fff;

		&::after{
			background-image:url(../img/bg_arrowRight_03.svg);
		}
	}

	.p-course-cookery-2-special .l-main-structure.of-openCampus:has(+ .l-main-info) &{
		background-color:#fff;
		color:#1c1a1a;
	}
}

.c-card-column, .c-card-column__areaText, .c-card-column__areaImage, .c-card-column__head, .c-card-column__body{
	& > :first-child{
		margin-top:0 !important;
	}

	& > :last-child{
		margin-bottom:0 !important;
	}
}

.c-card-column{
	display:flex;
	flex-direction:column-reverse;
	margin-top:25px;
	container:c-card-column / inline-size;
	gap:10px;

	&:any-link{
		-webkit-text-decoration:none;
		text-decoration:none;
	}
}

.c-card-column__areaText{
	display:flex;
	flex-direction:column;
	gap:5px;
}

.c-card-column__head{
	text-align:center;
}

.c-card-column__title{
	font-size:1.8rem;
	font-weight:700;
	line-height:1.38889;
}

.c-card-release{
	display:flex;
	flex-direction:column-reverse;
	gap:10px;

	&:any-link{
		color:#000;
		-webkit-text-decoration:none;
		text-decoration:none;
	}
}

.c-card-release__areaText, .c-card-release__areaImage{
	& > :first-child{
		margin-top:0 !important;
	}

	& > :last-child{
		margin-bottom:0 !important;
	}
}

.c-card-release__areaText{
	display:flex;
	flex-direction:column;
}

.c-card-release__areaImage{
	overflow:hidden;
	border:2px solid #c41b1f;
	border-radius:15px;
	aspect-ratio:1 / 1;
}

.c-card-release__date{
	color:#666;
	font-size:1.2rem;
	font-weight:700;
}

.c-card-release__title{
	font-size:1.6rem;
	font-weight:700;
}

.c-card-school{
	display:flex;
	flex-direction:column-reverse;
	gap:16px;
}

.c-card-school__data, .c-card-school__image, .c-card-school__title, .c-card-c-card-school__desc, .c-card-school__address{
	& > :first-child{
		margin-top:0 !important;
	}

	& > :last-child{
		margin-bottom:0 !important;
	}
}

.c-card-school__data{
	display:flex;
	flex-direction:column;
	flex-grow:1;
	gap:8px;
}

.c-card-school__title, .c-card-school__image{
	img{
		width:100%;
	}
}

.c-card-school__address{
	font-size:1.2rem;
	letter-spacing:0.1em;
	line-height:1.41667;
}

.c-card-visiting, .c-card-visiting__event, .c-card-visiting__eventItem, .c-card-visiting__eventTitle{
	& > :first-child{
		margin-top:0 !important;
	}

	& > :last-child{
		margin-bottom:0 !important;
	}
}

.c-card-visiting{
	--border-color:#fff;
	--border-radius:10px;
	--border-size:3px;

	position:relative;
	display:flex;
	flex-grow:1;
	border:var(--border-size) solid var(--border-color);
	border-radius:calc(var(--border-radius) + var(--border-size));
	margin:0;
	background-color:var(--border-color);

	&:any-link{
		color:var(--font-color);
		-webkit-text-decoration:none;
		text-decoration:none;
	}

	.p-top &, .p-course-confectionary-special &{
		--border-color:#fff;
	}

	.p-course-cookery-2-special &{
		--border-color:#1c1a1a;
	}

	.p-course-cookery-2-special .l-main-structure:has(+ .l-main-info) &{
		--border-color:#fff;
	}
}

.c-card-visiting__inner{
	display:flex;
	flex-grow:1;
}

.c-card-visiting__date{
	--bg-color:#c41b1f;
	--color:#fff;
	--size:80px;
	--font-size:1.2rem;
	--top:-10px;
	--left:-11px;

	position:absolute;
	top:var(--top);
	left:var(--left);
	display:flex;
	min-width:var(--size);
	min-height:var(--size);
	flex-direction:column;
	align-items:center;
	justify-content:center;
	border-radius:50%;
	background-color:var(--bg-color);
	color:var(--color);
	font-size:var(--font-size);
	font-weight:900;
	line-height:1.5;
	text-align:center;

	:is(.p-top, .p-course-confectionary-special, .p-course-cookery-2-special) &{
		--size:65px;
		--font-size:1rem;
		--top:-16px;
		--left:-13px;
	}

	.p-top &, .p-course-confectionary-special &{
		--bg-color:#fff;
		--color:#c41b1f;
	}

	.p-course-cookery-2-special &{
		--bg-color:#1c1a1a;
		--color:#fff;
	}

	.p-course-cookery-2-special .l-main-structure:has(+ .l-main-info) &{
		--bg-color:#fff;
		--color:#1c1a1a;
	}
}

.c-card-visiting__event{
	display:flex;
	flex-grow:1;
}

.c-card-visiting__eventList{
	display:grid;
	flex-grow:1;
	gap:var(--border-size) 0;
}

.c-card-visiting__valueMonth, .c-card-visiting__valueDay{
	--font-size:1.5rem;

	font-size:var(--font-size);

	:is(.p-top, .p-course-confectionary-special, .p-course-cookery-2-special) &{
		--font-size:1.4rem;
	}
}

.c-card-visiting__eventItem{
	display:flex;
	flex-direction:column-reverse;
}

.c-card-visiting__eventTitle{
	--padding-block:10px;
	--padding-inline:15px;

	position:relative;
	padding:var(--padding-block) var(--padding-inline);
	background-color:#f0efeb;
	font-size:1.3rem;
	font-weight:700;

	:is(.p-top, .p-course-confectionary-special, .p-course-cookery-2-special) &{
		--padding-inline:10px;

		font-size:1.2rem;
	}

	.c-card-visiting__eventItem:last-child &{
		border-radius:0 0 var(--border-radius) var(--border-radius);
	}
}

.c-card-visiting__eventMedia{
	overflow:hidden;
	width:100%;
	flex-grow:1;
	flex-shrink:0;
	aspect-ratio:236 / 128;

	.c-card-visiting__eventItem:first-child &{
		border-radius:var(--border-radius) var(--border-radius) 0 0;
	}
}

.c-card-visiting__eventImage{
	width:100%;
	/* height:100%; */
	object-fit:cover;
	vertical-align:bottom;
}

.c-heading-1{
	--font-color:#c41b1f;

	.l-main-structure.of-confectionary &{
		--font-color:#ff84a0;
	}

	.l-main-structure.of-cookery-2 &, .l-main-structure.of-cookery &{
		--font-color:#ff9a39;
	}

	position:relative;
	display:flex;
	flex-direction:column;
	justify-content:center;
	padding-bottom:20px;
	margin:30px 0;
	color:var(--font-color);
	font-size:2.4rem;
	font-weight:700;
	letter-spacing:0.1em;
	line-height:1.45833;
	text-align:center;

	&::after{
		position:absolute;
		right:0;
		bottom:0;
		left:0;
		display:block;
		width:32px;
		height:2px;
		border-radius:9em;
		margin:auto;
		background-color:currentcolor;
		content:"";
	}
}

.c-heading-2{
	--font-color:#c41b1f;
	--bg-point:linear-gradient(90deg, #fffce0 0%, #ffede4 100%);

	display:flex;
	flex-direction:column;
	justify-content:center;
	margin-top:25px;
	color:var(--font-color);
	letter-spacing:0.1em;
	text-align:center;

	&:has(.c-heading-2__point){
		position:relative;
		padding-bottom:15px;
		margin-bottom:25px;

		&::after{
			position:absolute;
			right:0;
			bottom:0;
			left:0;
			display:block;
			width:80px;
			height:1px;
			border-radius:9em;
			margin:auto;
			background-color:currentcolor;
			content:"";
			opacity:0.2;
		}
	}
	.p-course-confectionary &, .of-type-2.of-confectionary &{
		--font-color:#ff84a0;
		--bg-point:#fff;
	}

	.p-course-cookery-2 &, .of-type-2.of-cookery-2 &{
		--font-color:#ff9a39;
		--bg-point:#fff;
	}

	.p-course-cookery-1 &{
		--font-color:#50c7a9;
		--bg-point:#fff;
	}

	.l-main-structure__inner.of-type-3 &{
		--font-color:#fff;
		--bg-point:#c41b1f;

		&::after{
			opacity:1;
		}
	}
}

.c-heading-2__title{
	display:flex;
	flex-direction:column;
	justify-content:center;
	margin:0;
	font-size:2.2rem;
	font-weight:700;
	line-height:1.59091;
}

.c-heading-2__point{
	position:relative;
	display:inline-flex;
	min-width:58px;
	min-height:58px;
	flex-direction:column;
	align-items:center;
	justify-content:center;
	padding-top:5px;
	border:2px solid currentcolor;
	border-radius:8px;
	margin:0 auto 8px;
	background:var(--bg-point);
	font-family:var(--font-en-din-condensed);
	line-height:1;
	text-align:center;

	&::before, &::after{
		position:absolute;
		right:8px;
		left:8px;
		display:block;
		margin:auto;
		content:"";
	}

	&::before{
		bottom:-8px;
		height:8px;
		background-color:currentcolor;
		clip-path:polygon(38px 2px, 38px 0, 0 0, 0 2px, 14px 2px, 19px 7px, 24px 2px);
	}

	&::after{
		bottom:-5px;
		height:6px;
		background:inherit;
		clip-path:polygon(0 0, 0 1px, 15px 1px, 19px 5px, 23px 1px, 38px 1px, 38px 0);
	}
}

.c-heading-2__pointLabel{
	font-size:1.5rem;
	font-weight:400;
	letter-spacing:0.02em;
}

.c-heading-2__pointNumber{
	font-size:3.4rem;
	font-weight:400;
	letter-spacing:0.04em;
}

.c-heading-2__subTitle{
	font-size:1.4rem;
	font-weight:700;
	line-height:1.78571;
}

.c-heading-3{
	--color:#c41b1f;

	.p-course-confectionary &{
		--color:#ff84a0;
	}

	.p-course-cookery-2 &{
		--color:#ff9a39;
	}

	.p-course-cookery-1 &{
		--color:#50c7a9;
	}

	display:flex;
	align-items:center;
	justify-content:center;
	margin:30px 0 20px;
	color:var(--color);
	font-size:2rem;
	font-weight:700;
	gap:0 0.5em;
	letter-spacing:0.1em;
	line-height:1.6;
	text-align:center;

	&:not(.of-wing){
		flex-direction:column;
	}

	&.of-wing{
		&::before, &::after{
			display:block;
			min-width:2em;
			height:1px;
			flex-grow:1;
			background-color:currentcolor;
			content:"";
		}
	}
}

.c-heading-3__title{
	display:inline-flex;
	margin:0;
	font-weight:inherit;
}

small.c-heading-3__title{
	font-size:1.4rem;
}

.c-heading-4{
	--color:#c41b1f;

	margin:25px 0 15px;
	color:var(--color);
	font-size:1.8rem;
	font-weight:700;
	letter-spacing:0.1em;
	line-height:1.61111;
	text-align:center;
}

.c-heading-5{
	padding-bottom:9px;
	border-bottom:1px solid rgba(34, 34, 3, 0.2);
	margin-block:75px 18px;

	&.of-sizeLv-3{
		padding-bottom:8px;
		margin-block:60px 16px;
	}

	&.of-sizeLv-4{
		padding-bottom:7px;
		margin-block:45px 14px;
	}

	&.of-sizeLv-5{
		padding-bottom:6px;
		margin-block:30px 12px;
	}

	&.of-sizeLv-6{
		padding-bottom:5px;
		margin-block:15px 10px;
	}

	& + *{
		margin-top:0 !important;
	}
}

.c-heading-5__title{
	display:flex;
	margin:0;
	font-size:2.4rem;
	font-weight:700;
	gap:0 1em;
	line-height:1.4;

	.c-heading-5.of-sizeLv-3 &{
		font-size:2.2rem;
	}

	.c-heading-5.of-sizeLv-4 &{
		font-size:2rem;
	}

	.c-heading-5.of-sizeLv-5 &{
		font-size:1.8rem;
	}

	.c-heading-5.of-sizeLv-6 &{
		font-size:1.6rem;
	}
}

.c-heading-5__mark{
	flex-shrink:0;
}

.c-heading-5__label{
	flex-grow:1;
}

.c-heading-appeal{
	--main-color:#c41b1f;

	.p-course-confectionary &, &.of-confectionary{
		--main-color:#ff84a0;
	}

	.p-course-cookery-2 &, &.of-cookery-2, &.of-cookery{
		--main-color:#ff9a39;
	}

	.p-course-cookery-1 &, &.of-cookery-1{
		--main-color:#50c7a9;
	}

	margin-block:25px 20px;
	color:var(--main-color);
	font-feature-settings:"palt";
	font-weight:700;
	font-size:1.6rem;
	line-height:1.625;
	text-align:center;
}

.c-heading-appeal__title{
	position:relative;
	display:inline-flex;
	flex-wrap:wrap;
	align-items:center;
	justify-content:center;
	padding:0 2em;

	&::before, &::after{
		position:absolute;
		top:5px;
		bottom:0;
		display:block;
		width:2px;
		border-radius:9em;
		background-color:currentcolor;
		content:"";
	}

	&::before{
		left:1em;
		transform:rotate(-15deg);
	}

	&::after{
		right:1em;
		transform:rotate(15deg);
	}
}

.c-layout-cardGrid, .c-layout-cardGrid__cell{
	& > :first-child{
		margin-top:0 !important;
	}

	& > :last-child{
		margin-bottom:0 !important;
	}
}

.c-layout-cardGrid{
	--col-size:1;
	--col-gap:0;
	--row-gap:0;

	display:grid;
	margin-top:10px;
	gap:var(--row-gap) var(--col-gap);
	grid-template-columns:repeat(var(--col-size), 1fr);
}

.c-layout-cardGrid__cell{
	&.of-full{
		grid-column:1 / calc(var(--col-size) + 1);
	}
}

.c-layout-column, .c-layout-column__cell{
	& > :first-child{
		margin-top:0 !important;
	}

	& > :last-child{
		margin-bottom:0 !important;
	}
}

.c-layout-column{
	--col-size:1;
	--col-gap:0;
	--row-gap:0;

	display:flex;
	flex-wrap:wrap;
	margin-top:10px;
	gap:var(--row-gap) var(--col-gap);

	&.of-jc-center{
		justify-content:center;
	}
}

.c-layout-column__cell{
	max-width:calc((100% - var(--col-gap)*(var(--col-size) - 1))/var(--col-size));
	flex-basis:100%;
}

.c-layout-mediaFlex{
	--margin-top:10px;
	--row-gap:25px;
	--col-gap:25px;
	--media-area-max-width:50%;

	display:flex;
	flex-direction:column;
	margin-top:var(--margin-top);
	gap:var(--row-gap) var(--col-gap);
}

.c-layout-mediaFlex__areaMedia, .c-layout-mediaFlex__areaText{
	& > :first-child{
		margin-top:0 !important;
	}

	& > :last-child{
		margin-bottom:0 !important;
	}
}

.c-layout-mediaFlex__areaText{
	flex-grow:1;
}

.c-link-1{
	margin-block:5px 10px;
}

.c-link-1__link{
	position:relative;
	display:inline-flex;
	padding-right:16px;
	font-size:1.4rem;
	font-weight:700;

	&::after{
		position:absolute;
		top:8px;
		right:0;
		display:block;
		width:11px;
		height:10px;
		background:url(../img/bg_arrowRight_02.svg) no-repeat 0 0 / 100%;
		content:"";
	}

	.c-link-1.of-allowTop &{
		&::after{
			transform:rotate(-90deg);
		}
	}

	.c-link-1.of-allowBottom &{
		&::after{
			transform:rotate(90deg);
		}
	}
}

.c-link-hash{
	position:relative;
	display:inline-block;
	padding-right:18px;

	&::after{
		position:relative;
		top:-0.05em;
		display:inline-block;
		width:1.1547em;
		height:1em;
		margin-left:0.4em;
		background-color:currentcolor;
		clip-path:polygon(0 0, 50% 100%, 100% 0);
		content:"";
		vertical-align:middle;
	}

	&.of-top{
		&::after{
			clip-path:polygon(50% 0%, 0% 100%, 100% 100%);
		}
	}
}

.c-list-History{
	margin-top:25px;
}

.c-list-History__list{
	display:grid;
	margin:0;
	gap:0 16px;
	grid-template-columns:max-content 1fr;
}

.c-list-History__item{
	display:grid;
	grid-column:1 / 3;
	grid-template-columns:subgrid;
}

.c-list-History__era, .c-list-History__event{
	padding:10px 0;

	.c-list-History__item:first-child &{
		padding-top:0;
	}

	& > :first-child{
		margin-top:0 !important;
	}

	& > :last-child{
		margin-bottom:0 !important;
	}
}

.c-list-History__era{
	position:relative;
	padding-right:22px;
	grid-column:1 / 2;
	justify-self:end;

	&::before, &::after{
		position:absolute;
		display:block;
		margin:auto;
		background-color:#c41b1f;
		content:"";
	}

	&::before{
		top:17px;
		right:0;
		width:12px;
		height:12px;
		border-radius:50%;
	}

	&::after{
		top:0;
		right:5px;
		bottom:0;
		width:2px;
	}

	.c-list-History__item:first-child &{
		&::before, &::after{
			top:7px;
		}
	}

	.c-list-History__item:last-child &{
		&::after{
			bottom:calc(100% - 17px);
		}
	}
}

.c-list-History__event{
	border-bottom:1px solid rgb(0, 0, 0, 0.2);
	grid-column:2 / 3;
}

.c-list-bullet-1{
	margin:8px 0;
	color:#222;
	font-size:1.4rem;
	letter-spacing:0.1em;
	line-height:1.42857;
}

.c-list-bullet-1__item{
	position:relative;
	padding-left:20px;

	& + &{
		margin-top:5px;
	}

	&::before{
		position:absolute;
		top:10px;
		left:8px;
		display:block;
		width:3px;
		height:3px;
		border-radius:50%;
		background-color:currentcolor;
		content:"";
	}

	> [class*=c-list-]{
		padding-top:5px;
	}

	& > :first-child{
		margin-top:0 !important;
	}

	& > :last-child{
		margin-bottom:0 !important;
	}
}

.c-list-bullet-2{
	margin:6px 0;
	color:#222;
	font-size:1.4rem;
	letter-spacing:0.02em;
	line-height:1.42857;
}

.c-list-bullet-2__item{
	position:relative;
	padding-left:16px;

	& + &{
		margin-top:5px;
	}

	&::before{
		position:absolute;
		top:7px;
		left:0;
		display:block;
		width:8px;
		height:8px;
		border-radius:50%;
		background-color:#c41b1f;
		content:"";
	}

	> [class*=c-list-]{
		padding-top:5px;
	}

	& > :first-child{
		margin-top:0 !important;
	}

	& > :last-child{
		margin-bottom:0 !important;
	}
}

.c-list-desc-1{
	margin-top:15px;
}

.c-list-desc-1__item{
	& + &{
		margin-top:40px;
	}

	.c-list-desc-1 .c-list-desc-1 &, .c-list-desc-3 &{
		& + &{
			margin-top:10px;
		}
	}
}

.c-list-desc-1__title{
	color:#222;
	font-feature-settings:"palt";
	font-size:1.6rem;
	font-weight:700;
	letter-spacing:0.02em;
	line-height:1.6;

	.c-list-desc-1 .c-list-desc-1 &, .c-list-desc-3 &{
		font-size:1.4rem;
	}

	.l-main-structure__inner.of-type-3 &{
		color:#c41b1f;
	}
}

.c-list-desc-1__desc{
	padding-top:5px;

	.c-list-desc-1 .c-list-desc-1 &, .c-list-desc-3 &{
		padding-top:0;
	}

	& > :first-child{
		margin-top:0 !important;
	}

	& > :last-child{
		margin-bottom:0 !important;
	}
}

.c-list-desc-2{
	--bg-color:#c41b1f;

	.p-course-confectionary &, .of-confectionary &, &.of-confectionary{
		--bg-color:#ff84a0;
	}

	.p-course-cookery-2 &, .of-cookery-2 &, &.of-cookery-2, .of-cookery &, &.of-cookery{
		--bg-color:#ff9a39;
	}

	.p-course-cookery-1 &, .of-cookery-1 &, &.of-cookery-1{
		--bg-color:#50c7a9;
	}

	margin-top:15px;
}

.c-list-desc-2__title{
	display:flex;
	min-height:30px;
	flex-wrap:wrap;
	align-items:center;
	justify-content:center;
	padding:6px 20px;
	border-radius:9em;
	background-color:var(--bg-color);
	color:#fff;
	font-size:1.4rem;
	font-weight:700;
	gap:5px;
	letter-spacing:0.1em;
	line-height:1.28571;
	text-align:center;
}

.c-list-desc-2__desc{
	padding-top:10px;

	& + .c-list-desc-2__title{
		margin-top:15px;
	}

	& > :first-child{
		margin-top:0 !important;
	}

	& > :last-child{
		margin-bottom:0 !important;
	}
}

.c-list-desc-3{
	--bg-color:rgba(196, 27, 31, 0.1);

	display:grid;
	margin-top:10px;
	gap:10px;
}

.c-list-desc-3__item{
	display:grid;
	gap:5px;
}

.c-list-desc-3__title{
	padding:5px 10px;
	background-color:var(--bg-color);
	font-size:1.4rem;
	font-weight:700;
	gap:5px;
}

.c-list-desc-3__disc{
	& > :first-child{
		margin-top:0 !important;
	}

	& > :last-child{
		margin-bottom:0 !important;
	}
}

.c-list-forExample{
	--main-color:#c41b1f;
	--border-color:#faecda;

	margin-top:15px;
	text-align:center;
}

.c-list-forExample__title{
	position:relative;
	display:inline-flex;
	align-items:center;
	justify-content:center;
	padding:0 16px;
	color:var(--main-color);
	font-feature-settings:"palt";
	font-size:2rem;
	font-weight:700;
	letter-spacing:0.1em;
	line-height:1.6;
	text-align:center;

	&::before, &::after{
		position:absolute;
		top:5px;
		bottom:0;
		display:block;
		width:2px;
		border-radius:9em;
		background-color:currentcolor;
		content:"";
	}

	&::before{
		left:4px;
		transform:rotate(-15deg);
	}

	&::after{
		right:4px;
		transform:rotate(15deg);
	}
}

.c-list-forExample__data{
	padding-top:10px;
	text-align:left;

	& > :first-child{
		margin-top:0 !important;
	}

	& > :last-child{
		margin-bottom:0 !important;
	}
}

.c-list-merit{
	--main-color:#c41b1f;

	.p-course-confectionary &, .of-confectionary &, &.of-confectionary{
		--main-color:#ff84a0;
	}

	.p-course-cookery-2 &, .of-cookery-2 &, &.of-cookery-2, .of-cookery &, &.of-cookery{
		--main-color:#ff9a39;
	}

	.p-course-cookery-1 &, .of-cookery-1 &, &.of-cookery-1{
		--main-color:#50c7a9;
	}

	display:grid;
	gap:10px 5px;
	grid-template-columns:min-content 1fr;
}

.c-list-merit__item, .c-list-merit__inner, .c-list-merit__disc{
	& > :first-child{
		margin-top:0 !important;
	}

	& > :last-child{
		margin-bottom:0 !important;
	}
}

.c-list-merit__item, .c-list-merit__inner, .c-list-merit__title{
	display:grid;
	grid-column:1 / 3;
	grid-template-columns:subgrid;
}

.c-list-merit__title{
	font-weight:700;
}

.c-list-merit__titleMark{
	display:flex;
	min-width:20px;
	min-height:20px;
	align-items:center;
	align-self:start;
	justify-content:center;
	border-radius:50%;
	background-color:var(--main-color);
	color:#fff;
	font-family:var(--font-en-roboto);
	grid-column:1 / 2;
	grid-row:1 / 2;
	line-height:1;
	transform:translateY(3px);
}

.c-list-merit__titleLabel{
	grid-column:2 / 3;
	grid-row:1 / 2;
}

.c-list-merit__disc{
	grid-column:2 / 3;
	grid-row:2 / 3;
}

.c-list-notes{
	display:grid;
	margin-top:5px;
	font-size:1rem;
	grid-template-columns:max-content 1fr;
	letter-spacing:0.1em;
	line-height:1.4;

	.c-list-notes__item &{
		grid-column:2 / 3;
	}

	[class*="c-list-"]:not(.c-list-bullet-1__item >) &{
		margin:0;
	}
}

.c-list-notes__item{
	display:grid;
	gap:5px;
	grid-column:1 / 3;
	grid-template-columns:subgrid;

	& > :not(.c-list-notes__inner){
		grid-column:2 / 3;
	}

	& > :first-child{
		margin-top:0 !important;
	}

	& > :last-child{
		margin-bottom:0 !important;
	}
}

.c-list-notes__inner{
	display:grid;
	gap:2px;
	grid-column:1 / 3;
	grid-template-columns:subgrid;

	& + *{
		margin-top:0 !important;
	}
}

.c-list-notes__mark{
	grid-column:1 / 2;
	justify-self:end;
}

.c-list-notes__text{
	grid-column:2 / 3;
}

.c-list-qualification{
	--main-color:#c41b1f;
	--bg-color:#fdf9f4;

	margin-top:15px;

	&.of-confectionary{
		--main-color:#ff84a0;
		--bg-color:rgba(255, 132, 160, 0.1);
	}

	&.of-cookery{
		--main-color:#50c7a9;
		--bg-color:rgba(80, 199, 169, 0.1);
	}
}

.c-list-qualification__list{
	display:flex;
	flex-direction:column;
	justify-content:center;
	margin:0 auto;
	gap:7px;
}

.c-list-qualification__item{
	display:flex;
	min-height:30px;
	align-items:center;
	justify-content:center;
	border-radius:9em;
	background-color:var(--main-color);
	color:#fff;
	font-size:1.4rem;
	font-weight:700;
	letter-spacing:0.1em;
	line-height:1.28571;
	text-align:center;
}

.c-list-referenceSteps{
	margin:90px 0 30px;
}

.c-list-referenceSteps__item, .c-list-referenceSteps__body, .c-list-referenceSteps__layout, .c-list-referenceSteps__layoutAreaText, .c-list-referenceSteps__layoutAreaList, .c-list-referenceSteps__layoutAreaNotes{
	& > :first-child{
		margin-top:0 !important;
	}

	& > :last-child{
		margin-bottom:0 !important;
	}
}

.c-list-referenceSteps__item{
	border:2px solid #faecda;
	border-radius:20px;
	background:#fff;

	& + &{
		position:relative;
		margin-top:85px;

		&::before{
			position:absolute;
			right:0;
			bottom:calc(100% + 50px);
			left:0;
			display:block;
			width:100px;
			height:20px;
			margin:auto;
			background-color:#c41b1f;
			clip-path:polygon(0% 0%, 100% 0%, 50% 100%);
			content:"";
		}
	}
}

.c-list-referenceSteps__head{
	padding:0 50px;
	margin-bottom:-33px;
	transform:translateY(-33px);
}

.c-list-referenceSteps__body{
	padding:15px 20px 30px;
}

.c-list-referenceSteps__layoutAreaList{
	margin-top:15px;
}

.c-list-referenceSteps__layoutAreaNotes{
	margin-top:5px;
}

.c-list-symbol{
	display:grid;
	margin:8px 0;
	font-size:1.4rem;
	gap:5px;
	grid-template-columns:max-content 1fr;
	line-height:1.14286;

	.c-list-symbol__item &{
		grid-column:2 / 3;
	}

	[class*="c-list-"] &{
		margin:0;
	}
}

.c-list-symbol__item{
	display:grid;
	gap:5px;
	grid-column:1 / 3;
	grid-template-columns:subgrid;

	& > :not(.c-list-symbol__inner){
		grid-column:2 / 3;
	}

	& > :first-child{
		margin-top:0 !important;
	}

	& > :last-child{
		margin-bottom:0 !important;
	}
}

.c-list-symbol__inner{
	display:grid;
	gap:0 0.2em;
	grid-column:1 / 3;
	grid-template-columns:subgrid;

	> :not(.c-list-symbol__mark, .c-list-symbol__text){
		grid-column:1 / 3;
		margin-block:0 !important;
	}

	& + *{
		margin-top:0 !important;
	}
}

.c-list-symbol__mark{
	grid-column:1 / 2;
	text-align:right;
}

.c-list-symbol__text{
	grid-column:2 / 3;

	& > :first-child{
		margin-top:0 !important;
	}

	& > :last-child{
		margin-bottom:0 !important;
	}
}

.c-media-iframe{
	--aspect-ratio:4 / 3;

	margin-top:20px;
	text-align:center;
}

.c-media-iframe__inner{
	display:inline-flex;
	flex-direction:column-reverse;
	row-gap:5px;

	.c-media-iframe.of-full &{
		display:flex;
	}

	.c-media-iframe.of-corner-r &{
		overflow:hidden;
		border-radius:10px;
	}
}

.c-media-iframe__caption{
	text-align:left;

	&:empty{
		display:none;
	}
}

.c-media-iframe__iframe{
	display:inline-block;
	width:auto;
	max-width:100%;
	height:auto;
	aspect-ratio:var(--aspect-ratio);

	.c-media-iframe.of-full &{
		display:block;
		width:100vw;
	}
}

.c-media-image{
	margin-top:20px;
	container:c-media-image / inline-size;
	text-align:center;

	&.of-objectFit-cover{
		height:100%;

		*{
			height:100%;
		}
	}

	&.of-scrollable[tabindex="0"]{
		overflow-x:auto;
	}

	& > :first-child{
		margin-top:0 !important;
	}

	& > :last-child{
		margin-bottom:0 !important;
	}
}

.c-media-image__inner{
	display:inline-flex;
	flex-direction:column-reverse;
	row-gap:10px;

	.c-media-image.of-full &{
		display:flex;
	}
}

.c-media-image__caption{
	display:inline-flex;
	flex-direction:column;
	gap:5px;
	text-align:center;

	&:empty{
		display:none;
	}
}

.c-media-image__captionTitle{
	display:inline-flex;
	font-size:1.8rem;
	font-weight:700;
	gap:10px;
	margin-inline:auto;
	text-align:center;
}

.c-media-image__captionDisc{
	font-size:1.4rem;
	text-align:left;
}

.c-media-image__viewport{
	display:inline-block;
	margin-inline:auto;
	vertical-align:bottom;

	.c-media-image.of-full &{
		display:block;
		margin-inline:0;
	}

	.c-media-image.of-frameLine &{
		border:2px solid #c41b1f;
	}

	.c-media-image.of-corner-r &{
		overflow:hidden;
		border-radius:10px;
	}

	.c-media-image.of-circle &{
		overflow:hidden;
		border-radius:50%;
	}
}

.c-media-image__image{
	vertical-align:bottom;

	.c-media-image.of-objectFit-cover &{
		width:100%;
		object-fit:cover;
	}

	.c-media-image.of-scrollable[tabindex="0"] &{
		max-width:none;
	}
}

.c-panel-collabo{
	--head-bg-color:#ffe3e4;
	--head-border-color:#fff;
	--head-font-color:#c41b1f;
	--panel-border-color:#fff;
	--genre-bg-color:#c41b1f;

	max-width:960px;
	margin:25px auto;

	.p-course-cookery-2 &, &.of-cookery-2{
		--head-bg-color:#ff9a39;
		--head-border-color:#ff9a39;
		--head-font-color:#fff;
		--panel-border-color:#ff9a39;
		--genre-bg-color:#ff9a39;
	}
}

.c-panel-collabo__head, .c-panel-collabo__body, .c-panel-collabo__headInner, .c-panel-collabo__bodyInner, .c-panel-collabo__bodyFoot, .c-panel-collabo__bodyFootInner{
	& > :first-child{
		margin-top:0 !important;
	}

	& > :last-child{
		margin-bottom:0 !important;
	}
}

.c-panel-collabo__head{
	position:relative;
	z-index:0;
	padding:0 10px;

	&::after{
		position:absolute;
		z-index:-1;
		display:block;
		border:2px solid var(--panel-border-color);
		border-radius:20px 20px 0 0;
		border-bottom:none;
		background-color:#fff;
		content:"";
		inset:50% 0 -15px;
	}
}

.c-panel-collabo__headInner{
	display:flex;
	max-width:820px;
	min-height:60px;
	align-items:center;
	justify-content:center;
	padding:13px 25px;
	border:2px solid var(--head-border-color);
	border-radius:9em;
	background-color:var(--head-bg-color);
	color:var(--head-font-color);
	margin-inline:auto;
	text-align:center;
}

.c-panel-collabo__title{
	font-size:1.6rem;
	font-weight:700;
	letter-spacing:0.1em;
	line-height:1.375;
}

.c-panel-collabo__body{
	padding:0 20px;
	border:2px solid var(--panel-border-color);
	border-radius:0 0 20px 20px;
	border-top:none;
	background-color:#fff;
	font-size:1.2rem;
}

.c-panel-collabo__bodyInner{
	padding:15px 0 20px;

	&:not(.of-wide){
		max-width:820px;
		margin-inline:auto;
	}
}

.c-panel-collabo__bodyFoot{
	padding-bottom:30px;

	&:has(.swiper){
		padding:25px 20px 30px;
		border-radius:0 0 22px 22px;
		background-color:#f9f9f9;
		margin-inline:-20px;
	}
}

.c-panel-collabo__bodyFootInner{
	max-width:820px;
	margin-inline:auto;
}

.c-panel-collabo__namePlate{
	display:flex;
	flex-direction:column;
	align-items:center;
	justify-content:center;
	margin-bottom:15px;
	gap:5px;
	line-height:1.2;
	text-align:center;
}

.c-panel-collabo__namePlateMain{
	display:inline-flex;
	align-items:center;
	font-weight:700;
}

.c-panel-collabo__namePlateGenre{
	color:var(--genre-bg-color);
}

.c-panel-collabo__namePlateName{
	font-size:2rem;
	margin-inline:0.3em;
}

.c-panel-collabo__namePlateHonorific{
	align-self:flex-end;
}

.c-panel-collabo__namePlateSub{
	font-weight:400;
}

.c-panel-person, .c-panel-person__areaSub, .c-panel-person__careerData, .c-panel-person__careerItem{
	& > :first-child{
		margin-top:0 !important;
	}

	& > :last-child{
		margin-bottom:0 !important;
	}
}

.c-panel-person{
	position:relative;
	z-index:1;
}

.c-panel-person__areaMain{
	font-size:1.2rem;

	& > :last-child{
		margin-bottom:0 !important;
	}
}

.c-panel-person__lead{
	margin:-24px 0 20px -10px;
	font-size:1.4rem;
}

.c-panel-person__leadText{
	padding:5px;
	background-color:#cb2d27;
	color:#fff;
	font-weight:400;
}

.c-panel-person__namePlate{
	font-size:1.6rem;
	font-weight:500;
	margin-block:20px;

	small{
		font-size:1.4rem;
	}
}

.c-panel-person__namePlateTitle{
	display:block;
}

.c-panel-person__namePlateName{
	display:block;
}

.c-panel-person__areaSub{
	padding-top:1em;
	border-top:1px solid #1c1c1c;
	margin-top:1em;
	font-size:1.2rem;
}

.c-panel-person__careerTitle{
	position:relative;
	display:inline-flex;
	align-items:center;
	padding-inline:0.6em;

	&::before, &::after{
		position:absolute;
		top:50%;
		display:block;
		width:0.5em;
		height:1em;
		margin-top:0.0833em;
		background-color:currentcolor;
		content:"";
		transform:translateY(-50%);
	}

	&::before{
		left:0;
		clip-path:polygon(0% 50%, 100% 0%, 100% 10%, 16.25% 50%, 100% 90%, 100% 100%);
	}

	&::after{
		right:0;
		clip-path:polygon(100% 50%, 0% 0%, 0% 10%, 83.75% 50%, 0% 90%, 0% 100%);
	}
}

.c-panel-person__careerData{
	margin-top:1em;
}

.c-panel-person__careerList{
	display:grid;
	gap:5px;
}

.c-panel-person__careerItem{
	display:flex;
	gap:5px;

	*:first-child{
		flex-shrink:0;
	}

	*:not(:first-child){
		flex-grow:1;
	}
}

.c-table-1{
	--main-color:#c41b1f;
	--th-color:#f9ecdd;

	margin:10px auto;

	& + &{
		margin-top:25px;
	}

	&.of-confectionary{
		--main-color:#ff84a0;
	}

	&.of-cookery{
		--main-color:#ff9a39;
	}
}

.c-table-1__inner{
	overflow:hidden;
	min-width:fit-content;
	border:1px solid #cac0b5;
	border-radius:10px;
}

.c-table-1__table{
	width:100%;
	text-align:center;
}

.c-table-1__caption{
	padding:5px 10px;
	background-color:var(--main-color);
	color:#fff;
	font-weight:700;

	small{
		display:inline-block;
		font-size:1.2rem;
	}
}

.c-table-1__cell{
	padding:10px;
	border:1px solid #cac0b5;
	vertical-align:middle;

	.c-table-1__head &{
		background-color:var(--th-color);

		&.of-confectionary, &.of-cookery{
			padding:5px 10px;
			color:#fff;
		}

		&.of-confectionary{
			--th-color:#ff84a0;
		}

		&.of-cookery{
			--th-color:#ff9a39;
		}
	}

	.c-table-1__body &{
		background-color:#fff;
	}

	&[scope]{
		font-weight:700;

		sup{
			font-weight:400;
		}
	}

	&.of-border-bottom-0, &[rowspan]{
		border-bottom-width:0;
	}

	&.of-border-left-0, &:first-child{
		border-left-width:0;
	}

	&.of-border-right-0, &:last-child{
		border-right-width:0;
	}

	.c-table-1:not(:has(.c-table-1__head)) &{
		&[scope]{
			background-color:#f9ecdd;
		}
	}

	.c-table-1:not(:has(.c-table-1__caption)) .c-table-1__head .c-table-1__row:first-child &, .c-table-1:not(:has(.c-table-1__caption), :has(.c-table-1__head)) .c-table-1__body .c-table-1__row:first-child &{
		border-top-width:0;
	}

	.c-table-1__row:last-child &{
		border-bottom-width:0;
	}

	& > :first-child{
		margin-top:0 !important;
	}

	& > :last-child{
		margin-bottom:0 !important;
	}
}

.c-text-balloon{
	position:relative;
	padding:15px;
	border-radius:10px;
	margin:auto 0 auto 5px;
	background-color:#fff0e2;
	font-size:1.4rem;
	text-align:center;

	&::before{
		position:absolute;
		top:0;
		bottom:0;
		left:-5px;
		display:block;
		width:16px;
		height:16px;
		margin:auto;
		background-color:inherit;
		content:"";
		transform:rotate(45deg);
	}
}

.c-text-emphasis-1{
	color:#c41b1f;
	font-style:normal;
	font-weight:700;
}

.c-text-etc{
	margin-left:3em;
}

.c-text-group{
	margin-top:10px;

	& + &{
		margin-top:1em;
	}

	& > :first-child{
		margin-top:0 !important;
	}

	& > :last-child{
		margin-bottom:0 !important;
	}
}

.c-text-infoTime{
	position:relative;
	display:inline-block;
	padding:0 1em;
	margin-top:5px;
	font-size:1.2rem;
	letter-spacing:0.1em;
	line-height:1.41667;

	&::before, &::after{
		position:absolute;
		top:0;
		bottom:0;
		display:block;
		width:7px;
		height:7px;
		margin:auto;
		background-color:currentcolor;
		content:"";
	}

	&::before{
		left:0;
		clip-path:polygon(0% 50%, 100% 0%, 100% 10%, 16.25% 50%, 100% 90%, 100% 100%);
	}

	&::after{
		right:0;
		clip-path:polygon(100% 50%, 0% 0%, 0% 10%, 83.75% 50%, 0% 90%, 0% 100%);
	}
}

.c-text-lead{
	margin:10px 0;
	container:c-text-lead / inline-size;
	text-align:center;

	& + &{
		margin-top:1em;
	}

	& > :first-child{
		margin-top:0 !important;
	}

	& > :last-child{
		margin-bottom:0 !important;
	}
}

.c-text-lead__text{
	font-size:1.4rem;
}

.c-text-tagCourse{
	--tag-bg-color:#c41b1f;
	--tag-color:#fff;
	--font-size:1rem;

	display:inline-flex;
	min-height:var(--height, 19px);
	align-items:center;
	justify-content:center;
	padding:2px 1em;
	border-radius:9em;
	background-color:var(--tag-bg-color);
	color:var(--tag-color);
	font-size:var(--font-size);
	font-weight:700;
	line-height:1;
	text-align:center;

	&.of-confectionary{
		--tag-bg-color:#ff84a0;
	}

	&.of-cookery-2{
		--tag-bg-color:#ff9a39;
	}

	&.of-cookery-1{
		--tag-bg-color:#50c7a9;
	}

	:is(.p-top, .p-course-confectionary-special, .p-course-cookery-2-special) &{
		--font-size:0.8rem;
	}

	.p-course-cookery-2-special &{
		--tag-color:#222;
	}

	.p-course-cookery-2-special .l-main-structure:has(+ .l-main-info) &{
		--tag-color:#fff;
	}
}

.c-text-tagFloor{
	display:inline-flex;
	min-width:44px;
	min-height:24px;
	align-items:center;
	justify-content:center;
	padding:2px 12px;
	border-radius:9em;
	margin:auto 0;
	background-color:#c41b1f;
	color:#fff;
	font-family:var(--font-en-roboto);
	font-size:1.6rem;
	font-weight:700;
	line-height:1;
	text-align:center;
}

.c-text-tagQualification{
	--main-color:#c41b1f;

	display:inline-flex;
	min-width:55px;
	min-height:16px;
	align-items:center;
	justify-content:center;
	padding:0 6px;
	border-radius:2px;
	background-color:var(--main-color);
	color:#fff;
	font-size:1rem;
	font-weight:400;
	letter-spacing:0.1em;
	line-height:1;
	margin-inline:0.5em;
	text-align:center;
	white-space:nowrap;

	.p-course-confectionary &, &.of-confectionary{
		--main-color:#ff84a0;
	}

	.of-confectionary .c-list-desc-2__title &{
		--main-color:#ff84a0;

		background-color:#fff;
		color:var(--main-color);
	}

	.p-course-cookery-2 &, &.of-cookery-2, .p-course-cookery &, &.of-cookery{
		--main-color:#ff9a39;
	}

	.of-cookery-2 .c-list-desc-2__title &, .of-cookery .c-list-desc-2__title &{
		--main-color:#ff9a39;

		background-color:#fff;
		color:var(--main-color);
	}

	.p-course-cookery-1 &, &.of-cookery-1{
		--main-color:#50c7a9;
	}
}

.c-text-timeRequired{
	display:flex;
	flex-wrap:wrap;
	align-items:baseline;
	justify-content:space-between;
	padding-bottom:10px;
	border-bottom:1px solid rgba(34, 34, 34, 0.2);
}

.c-text-timeRequired__location{
	font-size:1.4rem;
}

.c-text-timeRequired__locationName{
	font-size:1.6rem;
	font-weight:700;
}

.c-text-timeRequired__time{
	flex-shrink:0;
	margin-left:auto;
	font-size:1.4rem;
	font-weight:700;
}

.c-text-timeRequired__timeValue{
	font-family:var(--font-en-roboto);
	font-size:2.6rem;
	line-height:1;
}

.c-text-titleSteps{
	--main-color:#c41b1f;

	position:relative;
	display:flex;
	min-width:150px;
	/* height:100%; */
	min-height:66px;
	border:2px solid currentcolor;
	border-radius:10px;
	margin-bottom:6px;
	background-color:#fff;
	color:var(--main-color);

	&::before, &::after{
		position:absolute;
		right:50px;
		left:50px;
		display:block;
		max-width:38px;
		margin:auto;
		content:"";
	}

	&::before{
		bottom:-8px;
		height:8px;
		background-color:currentcolor;
		clip-path:polygon(38px 2px, 38px 0, 0 0, 0 2px, 14px 2px, 19px 7px, 24px 2px);
	}

	&::after{
		bottom:-5px;
		height:6px;
		background-color:inherit;
		clip-path:polygon(0 0, 0 1px, 15px 1px, 19px 5px, 23px 1px, 38px 1px, 38px 0);
	}

	.c-box-1__header &{
		display:inline-flex;
		background-color:var(--main-color);
	}

	.p-course-confectionary &, &.of-confectionary{
		--main-color:#ff84a0;
	}

	.p-course-cookery-2 &, &.of-cookery-2, .p-course-cookery &, &.of-cookery{
		--main-color:#ff9a39;
	}

	.p-course-cookery-1 &, &.of-cookery-1{
		--main-color:#50c7a9;
	}
}

.c-text-titleSteps__step{
	display:flex;
	min-width:47px;
	flex-direction:column;
	flex-shrink:0;
	align-items:center;
	justify-content:center;
	padding-top:6px;
	border-radius:8px 0 0 8px;
	border-right:2px solid currentcolor;
	background-color:#fff;
	font-family:var(--font-en-din-condensed);
	line-height:1;
	text-align:center;
}

.c-text-titleSteps__stepLabel{
	font-size:1.6rem;
	font-weight:400;
	letter-spacing:0.02em;
}

.c-text-titleSteps__stepNumber{
	font-size:3rem;
	font-weight:400;
}

.c-text-titleSteps__label{
	flex-grow:1;
	align-content:center;
	padding:6px 8px 5px;
	border-radius:0 8px 8px 0;
	background-color:inherit;
	font-feature-settings:"palt";
	font-weight:700;
	letter-spacing:0.2em;

	&:only-child{
		border-radius:8px;
		text-align:center;
	}

	.c-box-1__header &{
		color:#fff;
	}
}

.c-carousel-spCentered{
	.swiper-wrapper{
		margin:0;
	}

	& > :first-child{
		margin-top:0 !important;
	}

	& > :last-child{
		margin-bottom:0 !important;
	}
}

.c-carousel-spImageGallery{
	.swiper-wrapper{
		margin:0;
	}

	& > :first-child{
		margin-top:0 !important;
	}

	& > :last-child{
		margin-bottom:0 !important;
	}
}

.c-carousel-steps{
	margin-block:30px;
}

.c-carousel-steps__title, .c-carousel-steps__image, .c-carousel-steps__text{
	& > :first-child{
		margin-top:0 !important;
	}

	& > :last-child{
		margin-bottom:0 !important;
	}
}

.c-carousel-steps__title{
	padding-bottom:15px;
}

.c-carousel-steps__text{
	padding:15px 10px 0;
}

.c-dialog-1, .c-dialog-1__inner, .c-dialog-1__head, .c-dialog-1__body{
	& > :first-child{
		margin-top:0 !important;
	}

	& > :last-child{
		margin-bottom:0 !important;
	}
}

.c-dialog-1{
	--bg-color:#fff;
	--max-width:calc(100% - 76px);

	display:flex;
	width:100%;
	max-width:var(--max-width);
	flex-direction:column;
	margin:auto;

	[tabindex="0"]{
		overflow:auto;
		scroll-behavior:smooth;
	}
}

.c-dialog-1__inner{
	display:flex;
	height:100%;
	max-height:100vh;
	flex-direction:column;
	padding:8px;
	background-color:var(--bg-color);
}

.c-dialog-1__head{
	flex-shrink:0;
	margin-block:0;

	.c-dialog-1.of-head-hidden &{
		position:absolute;
		z-index:-1;
	}
}

.c-dialog-1__body{
	flex-grow:1;
}

.c-dialog-1__placeButtonClose{
	position:absolute;
	top:-22px;
	right:-21px;
	width:16px;
	height:16px;
}

.c-dialog-1__buttonClose{
	position:relative;
	width:100%;
	height:100%;

	&::before, &::after{
		position:absolute;
		display:block;
		width:100%;
		height:2px;
		margin:auto;
		background-color:#fff;
		content:"";
		inset:0;
	}

	&::before{
		transform:rotate(45deg);
	}

	&::after{
		transform:rotate(135deg);
	}
}

.c-dialog-1__buttonCloseLabel{
	position:absolute;
	z-index:-1;
}

.u-ta-left{
	text-align:left !important;
}

.u-ta-center{
	text-align:center !important;
}

.u-ta-right{
	text-align:right !important;
}

.u-va-top{
	vertical-align:top !important;
}

.u-va-middle{
	vertical-align:middle !important;
}

.u-va-bottom{
	vertical-align:bottom !important;
}

.u-nowrap{
	white-space:nowrap !important;
}

.u-break-all{
	word-break:break-all !important;
}

.u-break-word{
	overflow-wrap:break-word !important;
	word-break:normal !important;
}

.u-break-wbr{
	line-break:strict;
	overflow-wrap:break-word;
	word-break:keep-all;
}

.u-break-text{
	display:inline-block;
}

.u-w-5per{
		width:5% !important;
	}

.u-w-10per{
		width:10% !important;
	}

.u-w-15per{
		width:15% !important;
	}

.u-w-20per{
		width:20% !important;
	}

.u-w-25per{
		width:25% !important;
	}

.u-w-30per{
		width:30% !important;
	}

.u-w-35per{
		width:35% !important;
	}

.u-w-40per{
		width:40% !important;
	}

.u-w-45per{
		width:45% !important;
	}

.u-w-50per{
		width:50% !important;
	}

.u-w-55per{
		width:55% !important;
	}

.u-w-60per{
		width:60% !important;
	}

.u-w-65per{
		width:65% !important;
	}

.u-w-70per{
		width:70% !important;
	}

.u-w-75per{
		width:75% !important;
	}

.u-w-80per{
		width:80% !important;
	}

.u-w-85per{
		width:85% !important;
	}

.u-w-90per{
		width:90% !important;
	}

.u-w-95per{
		width:95% !important;
	}

.u-w-100per{
		width:100% !important;
	}

.u-layer-relative-zIndex-1{
	position:relative;
	z-index:1;
}

@media (hover: hover){
	.l-main-releaseList__button{
		&.swiper-button-next, &.swiper-button-prev{
			&:not(.swiper-button-disabled){
				transition:opacity 0.5s;

				&:hover{
					opacity:0.7;
				}
			}
		}
	}
	.l-main-openCampusList__button{
		&.swiper-button-next, &.swiper-button-prev{
			&:not(.swiper-button-disabled){
				transition:opacity 0.5s;

				&:hover{
					opacity:0.7;
				}
			}
		}
	}
	.l-main-info__button{
		&:any-link{
			transition:opacity 0.3s;

			&:hover{
				opacity:0.7;
			}
		}
	}
	.l-footer-logo__link{
		&:any-link{
			.l-footer-logo__image{
				transition:opacity 0.3s;
			}

			&:hover{
				.l-footer-logo__image{
					opacity:0.7;
				}
			}
		}
	}

	.l-footer-menu__link{
		&:any-link, &[role="button"]{
			transition:opacity 0.3s;

			&:hover{
				opacity:0.7;
			}
		}
	}

	.l-footer-utility__link{
		&:any-link{
			&:hover{
				-webkit-text-decoration:underline;
				text-decoration:underline;
			}
		}
	}

	.l-footer-sns__link{
		&:any-link{
			transition:opacity 0.3s;

			&:hover{
				opacity:0.7;
			}
		}
	}
	.c-button-1__button, .c-button-2__button{
		&:any-link, &[role="button"]{
			transition:opacity 0.3s;

			&:hover{
				opacity:0.7;
			}
		}
	}

	button{
		&.c-button-1__button, &.c-button-2__button{
			transition:opacity 0.3s;

			&:hover{
				opacity:0.7;
			}
		}
	}
	.c-card-column{
		&:any-link{
			transition:opacity 0.5s;

			&:hover{
				opacity:0.7;
			}
		}
	}
	.c-card-release{
		&:any-link{
			transition:opacity 0.5s;

			&:hover{
				opacity:0.7;
			}
		}
	}
	.c-card-visiting{
		&:any-link{
			transition:color 0.3s, background-color 0.3s, border-color 0.3s;

			&:hover{
				--border-color:#c41b1f;

				.p-top &, .p-course-confectionary-special &{
					--border-color:#c41b1f;
				}

				.p-course-cookery-2-special &{
					--border-color:#fff;
				}

				.p-course-cookery-2-special .l-main-structure:has(+ .l-main-info) &{
					--border-color:#1c1a1a;
				}
			}
		}
	}
	.c-link-1__label{
		&:any-link{
			transition:opacity 0.3s;

			&:hover{
				opacity:0.7;
				-webkit-text-decoration:none;
				text-decoration:none;
			}
		}
	}
	.c-link-hash{
		&:any-link{
			transition:opacity 0.3s;

			&:hover{
				opacity:0.7;
			}
		}
	}
	.c-media-image__inner{
		&:any-link{
			transition:opacity 0.3s;

			&:hover{
				opacity:0.7;
			}
		}
	}
	.c-carousel-spCentered__button{
		&.swiper-button-next, &.swiper-button-prev{
			&:not(.swiper-button-disabled){
				transition:opacity 0.5s;

				&:hover{
					opacity:0.7;
				}
			}
		}
	}

	.c-carousel-spCentered__pagination{
		&.swiper-pagination{
			.swiper-pagination-bullet{
				&:not(.swiper-pagination-bullet-active){
					transition:opacity 0.5s;

					&:hover{
						opacity:0.7;
					}
				}
			}
		}
	}
	.c-carousel-spImageGallery__pagination{
		&.swiper-pagination{
			.swiper-pagination-bullet{
				&:not(.swiper-pagination-bullet-active){
					transition:opacity 0.5s;

					&:hover{
						opacity:0.7;
					}
				}
			}
		}
	}
	.c-carousel-steps__button{
		&.swiper-button-next, &.swiper-button-prev{
			&:not(.swiper-button-disabled){
				transition:opacity 0.5s;

				&:hover{
					opacity:0.7;
				}
			}
		}
	}

	.c-carousel-steps__pagination{
		&.swiper-pagination{
			.swiper-pagination-bullet{
				&:not(.swiper-pagination-bullet-active){
					transition:opacity 0.5s;

					&:hover{
						opacity:0.7;
					}
				}
			}
		}
	}
}

@media (scripting: enabled){
	.l-main-releaseList.swiper{
		margin-right:-20px;
		margin-left:-20px;
	}

	.l-main-releaseList__list.swiper-wrapper{
		gap:0;
	}

	.l-main-releaseList__button{
		display:flex;

		&.swiper-button-lock{
			display:none !important;
		}

		&.swiper-button-next, &.swiper-button-prev{
			top:calc(100/var(--content-width)*100vw);
			bottom:auto;
			display:flex;
			width:45px;
			height:45px;
			border:2px solid currentcolor;
			border-radius:50%;
			background-color:#fff;
			color:#c41b1f;

			&::after{
				color:currentcolor;
			}

			&.swiper-button-disabled{
				border-color:#bcbcbc;
				background-color:#d9d9d9;
				color:#fff;
				pointer-events:auto;
			}
		}

		&.swiper-button-next{
			right:calc(5/var(--content-width)*100vw);

			&::after{
				transform:translate(1px, 0) scale(0.4);
			}
		}

		&.swiper-button-prev{
			left:calc(5/var(--content-width)*100vw);

			&::after{
				transform:translate(-1px, 0) scale(0.4);
			}
		}
	}
	.l-main-openCampusList.swiper{
		margin-right:-20px;
		margin-left:-20px;
	}

	.l-main-openCampusList{
		&.swiper{
			padding-top:24px;
			margin-top:-24px;
		}
	}

	.l-main-openCampusList__item{
		&.swiper-slide{
			display:flex;
			height:auto;
		}
	}

	.l-main-openCampusList__button{
		&.swiper-button-next, &.swiper-button-prev{
			top:50%;
			display:flex;
			width:44px;
			height:44px;
			border:3px solid currentcolor;
			border-radius:50%;
			background-color:#fff;
			color:#c41b1f;

			&::after{
				color:currentcolor;
			}

			&.swiper-button-lock{
				display:none !important;
			}

			&.swiper-button-disabled{
				border-color:#bcbcbc;
				background-color:#d9d9d9;
				color:#fff;
				pointer-events:auto;
			}
		}

		&.swiper-button-next{
			right:calc(5/var(--content-width)*100vw);

			&::after{
				transform:translate(1px, 0) scale(0.4);
			}
		}

		&.swiper-button-prev{
			left:calc(5/var(--content-width)*100vw);

			&::after{
				transform:translate(-1px, 0) scale(0.4);
			}
		}
	}
	.js-tabs__tabpanel{
		&.is-hidden{
			display:none;
		}
	}
	.js-dialog{
		--dialog-space-block:10px;

		position:relative;
		overflow:hidden;
		width:0;
		height:0;
		opacity:0;
		transition:opacity 0.3s, visibility 0.3s;
		-webkit-user-select:text;
		        user-select:text;
		visibility:hidden;

		&.is-show{
			position:fixed;
			z-index:var(--dialog);
			top:50%;
			right:0;
			left:0;
			display:flex;
			overflow:visible;
			width:100%;
			height:auto;
			max-height:calc(100% - var(--dialog-space-block));
			flex-direction:column;
			margin:auto;
			opacity:1;
			transform:translateY(-50%);
			visibility:visible;
		}
	}
	.c-carousel-steps{
		&.swiper{
			padding-bottom:45px;
			margin-inline:-20px;
		}
	}

	.c-carousel-steps__button{
		&.swiper-button-next, &.swiper-button-prev{
			top:50%;
			display:flex;
			width:44px;
			height:44px;
			border:3px solid currentcolor;
			border-radius:50%;
			background-color:#fff;
			color:#c41b1f;

			&::after{
				color:currentcolor;
			}

			&.swiper-button-disabled{
				border-color:#bcbcbc;
				background-color:#d9d9d9;
				color:#fff;
				pointer-events:auto;
			}

			&.swiper-button-lock{
				display:none !important;
			}
		}

		&.swiper-button-next{
			right:calc(5/var(--content-width)*100vw);

			&::after{
				transform:translate(1px, 0) scale(0.4);
			}
		}

		&.swiper-button-prev{
			left:calc(5/var(--content-width)*100vw);

			&::after{
				transform:translate(-1px, 0) scale(0.4);
			}
		}
	}

	.c-carousel-steps__pagination{
		&.swiper-pagination{
			.swiper-pagination-bullet-active{
				background-color:#c41b1f;
			}
		}
	}
}

@media (scripting: enabled) and (width <= 767px){
	.l-main-releaseList.swiper{
		& + .c-button-1{
			.c-button-1__button{
				min-width:auto;
			}
		}
	}
	.c-carousel-spCentered{
		&.swiper{
			padding-bottom:45px;
			margin-inline:-20px;
		}
	}

	.c-carousel-spCentered__button{
		&.swiper-button-next, &.swiper-button-prev{
			top:calc(85/var(--content-width)*100vw);
			display:flex;
			width:44px;
			height:44px;
			border:3px solid currentcolor;
			border-radius:50%;
			background-color:#fff;
			color:#c41b1f;

			&::after{
				color:currentcolor;
			}

			&.swiper-button-disabled{
				border-color:#bcbcbc;
				background-color:#d9d9d9;
				color:#fff;
				pointer-events:auto;
			}

			&.swiper-button-lock{
				display:none !important;
			}
		}

		&.swiper-button-next{
			right:calc(5/var(--content-width)*100vw);

			&::after{
				transform:translate(1px, 0) scale(0.4);
			}
		}

		&.swiper-button-prev{
			left:calc(5/var(--content-width)*100vw);

			&::after{
				transform:translate(-1px, 0) scale(0.4);
			}
		}
	}

	.c-carousel-spCentered__pagination{
		&.swiper-pagination{
			.swiper-pagination-bullet-active{
				background-color:#c41b1f;
			}
		}
	}
	.c-carousel-spImageGallery{
		&.swiper{
			padding-bottom:45px;
			margin-inline:-20px;
		}
	}

	.c-carousel-spImageGallery__pagination{
		&.swiper-pagination{
			.swiper-pagination-bullet-active{
				background-color:#c41b1f;
			}
		}
	}
}

@media (scripting: enabled) and (width <= 767px) and (width >= 1020px){
	.l-main-releaseList__button{
		&.swiper-button-next, &.swiper-button-prev{
			top:8.33333vw;
		}

		&.swiper-button-next{
			right:calc(15/var(--content-width)*100vw);
		}

		&.swiper-button-prev{
			left:calc(15/var(--content-width)*100vw);
		}
	}
}

@media (scripting: enabled) and (width > 767px){
	.l-main-releaseList__button{
		&.swiper-button-next, &.swiper-button-prev{
			top:calc(70/var(--content-width)*100vw);
			width:65px;
			height:65px;
			border-width:3px;
		}

		&.swiper-button-next{
			right:calc(70/var(--content-width)*100vw);

			&::after{
				transform:translate(2px, 0) scale(0.5);
			}
		}

		&.swiper-button-prev{
			left:calc(70/var(--content-width)*100vw);

			&::after{
				transform:translate(-2px, 0) scale(0.5);
			}
		}
	}
	.l-main-openCampusList{
		&.swiper{
			padding-left:24px;
		}
	}

	.l-main-openCampusList__button{
		&.swiper-button-next, &.swiper-button-prev{
			width:65px;
			height:65px;
		}

		&.swiper-button-next{
			right:0;

			&::after{
				transform:translate(1px, 0) scale(0.4);
			}
		}

		&.swiper-button-prev{
			left:0;

			&::after{
				transform:translate(-1px, 0) scale(0.4);
			}
		}
	}
	.l-footer-pagetop__inner{
		transition:transform 0.5s;

		.p-top:has(.l-nav-floating) &{
			transform:translateY(0);
		}

		.p-top.is-not-firstview:has(.l-nav-floating) &{
			transform:translateY(-66px);
		}
	}
	.c-carousel-steps{
		&.swiper{
			max-width:990px;
			padding-bottom:60px;
			margin-inline:-15px;
			padding-inline:75px;
		}
	}

	.c-carousel-steps__itemInner{
		opacity:0;
		pointer-events:none;
		transition:opacity 0.3s;

		.swiper-slide-active &, .swiper-slide-active + * &, .swiper-slide-active + * + * &{
			opacity:1;
			pointer-events:auto;
		}
	}

	.c-carousel-steps__button{
		&.swiper-button-next, &.swiper-button-prev{
			width:65px;
			height:65px;
		}

		&.swiper-button-next{
			right:0;

			&::after{
				transform:translate(1px, 0) scale(0.4);
			}
		}

		&.swiper-button-prev{
			left:0;

			&::after{
				transform:translate(-1px, 0) scale(0.4);
			}
		}
	}

	.c-carousel-steps__pagination{
		&.swiper-pagination{
			.swiper-pagination-bullet{
				width:12px;
				height:12px;
				margin-inline:5px;
			}
		}
	}
}

@media (width <= 767px){
	.c-button-1, .c-button-2{
		&:not(.of-sizeFixed-pc){
			margin-top:20px;
		}
	}

	.c-button-1__button, .c-button-2__button{
		[class*="c-button-"]:not(.of-sizeFixed-pc) &{
			min-width:163px;
			max-width:242px;
			min-height:40px;
			padding:9px 44px 9px 36px;
			border-width:1px;
			font-size:1.4rem;
			line-height:1.42857;

			@container c-button (max-width: 162px){
				min-width:auto;
				padding-left:16px;

				&::before{
					max-width:28px;
					flex-grow:1;
				}
			}

			&::after{
				right:8px;
				width:28px;
				height:28px;
				background-size:11px 10px;
			}

			&[href*=".doc"], &[href*=".docx"], &[href*=".ppt"], &[href*=".pptx"], &[href*=".xls"], &[href*=".xlsx"], &[href*=".zip"], &[href*=".pdf"]{
				&::after{
					background-size:14px 15px;
				}
			}
		}
	}

	.c-button-1, .c-button-2{
		&.of-sizeFixed-pc{
			margin-top:30px;
		}
	}

	.c-button-1__button, .c-button-2__button{
		[class*="c-button-"].of-sizeFixed-pc &{
			min-width:335px;
			max-width:424px;
			min-height:58px;
			padding:14px 60px 14px 50px;
			border-width:2px;
			font-size:1.8rem;
			line-height:1.44444;

			@container c-button (max-width: 334px){
				min-width:auto;
				padding-left:20px;

				&::before{
					max-width:40px;
					flex-grow:1;
				}
			}

			&::after{
				right:10px;
				width:40px;
				height:40px;
				background-size:15px 14px;
			}

			&[href*=".doc"], &[href*=".docx"], &[href*=".ppt"], &[href*=".pptx"], &[href*=".xls"], &[href*=".xlsx"], &[href*=".zip"], &[href*=".pdf"]{
				&::after{
					background-size:20px 22px;
				}
			}
		}
	}

	.c-button-1__label, .c-button-2__label{
		[class*="c-button-"]:not(.of-sizeFixed-pc) [class*="c-button-"][class*="__button"][href^="tel:"] &{
			padding-left:23px;

			&::before{
				width:15px;
				height:24px;
			}
		}

		[class*="c-button-"]:not(.of-sizeFixed-pc) [class*="c-button-"][class*="__button"][href^="mailto:"] &{
			padding-left:29px;

			&::before{
				width:21px;
				height:16px;
			}
		}

		[class*="c-button-"].of-sizeFixed-pc [class*="c-button-"][class*="__button"][href^="tel:"] &{
			padding-left:30px;

			&::before{
				width:20px;
				height:32px;
			}
		}

		[class*="c-button-"].of-sizeFixed-pc [class*="c-button-"][class*="__button"][href^="mailto:"] &{
			padding-left:36px;

			&::before{
				width:26px;
				height:21px;
			}
		}
	}
	.c-card-column__title{
		@container c-card-column (max-width: 215px){
			font-size:1.4rem;
		}
	}

	.c-card-column__body{
		@container c-card-column (max-width: 215px){
			font-size:1.2rem;
		}
	}
	.c-layout-cardGrid{
		&.of-sp-col-2{
			--col-size:2;
		}

			&.of-sp-rowGap-5px{
				--row-gap:5px;
			}

			&.of-sp-rowGap-10px{
				--row-gap:10px;
			}

			&.of-sp-rowGap-15px{
				--row-gap:15px;
			}

			&.of-sp-rowGap-20px{
				--row-gap:20px;
			}

			&.of-sp-rowGap-25px{
				--row-gap:25px;
			}

			&.of-sp-rowGap-30px{
				--row-gap:30px;
			}

			&.of-sp-rowGap-35px{
				--row-gap:35px;
			}

			&.of-sp-rowGap-40px{
				--row-gap:40px;
			}

			&.of-sp-rowGap-45px{
				--row-gap:45px;
			}

			&.of-sp-rowGap-50px{
				--row-gap:50px;
			}

			&.of-sp-rowGap-55px{
				--row-gap:55px;
			}

			&.of-sp-rowGap-60px{
				--row-gap:60px;
			}

			&.of-sp-rowGap-65px{
				--row-gap:65px;
			}

			&.of-sp-rowGap-70px{
				--row-gap:70px;
			}

			&.of-sp-rowGap-75px{
				--row-gap:75px;
			}

			&.of-sp-rowGap-80px{
				--row-gap:80px;
			}

			&.of-sp-rowGap-85px{
				--row-gap:85px;
			}

			&.of-sp-rowGap-90px{
				--row-gap:90px;
			}

			&.of-sp-rowGap-95px{
				--row-gap:95px;
			}

			&.of-sp-rowGap-100px{
				--row-gap:100px;
			}

			&.of-sp-colGap-5px{
				--col-gap:5px;
			}

			&.of-sp-colGap-10px{
				--col-gap:10px;
			}

			&.of-sp-colGap-15px{
				--col-gap:15px;
			}

			&.of-sp-colGap-20px{
				--col-gap:20px;
			}

			&.of-sp-colGap-25px{
				--col-gap:25px;
			}

			&.of-sp-colGap-30px{
				--col-gap:30px;
			}

			&.of-sp-colGap-35px{
				--col-gap:35px;
			}

			&.of-sp-colGap-40px{
				--col-gap:40px;
			}

			&.of-sp-colGap-45px{
				--col-gap:45px;
			}

			&.of-sp-colGap-50px{
				--col-gap:50px;
			}

			&.of-sp-colGap-55px{
				--col-gap:55px;
			}

			&.of-sp-colGap-60px{
				--col-gap:60px;
			}

			&.of-sp-colGap-65px{
				--col-gap:65px;
			}

			&.of-sp-colGap-70px{
				--col-gap:70px;
			}

			&.of-sp-colGap-75px{
				--col-gap:75px;
			}

			&.of-sp-colGap-80px{
				--col-gap:80px;
			}

			&.of-sp-colGap-85px{
				--col-gap:85px;
			}

			&.of-sp-colGap-90px{
				--col-gap:90px;
			}

			&.of-sp-colGap-95px{
				--col-gap:95px;
			}

			&.of-sp-colGap-100px{
				--col-gap:100px;
			}
	}

	.c-layout-cardGrid__cell{
		.c-layout-cardGrid[class*="of-sp-col-"] &{
			& > [class*="c-box-"]{
				height:100%;
			}
		}
	}
	.c-layout-column{
		&.of-sp-col-2{
			--col-size:2;
		}

			&.of-sp-rowGap-5px{
				--row-gap:5px;
			}

			&.of-sp-rowGap-10px{
				--row-gap:10px;
			}

			&.of-sp-rowGap-15px{
				--row-gap:15px;
			}

			&.of-sp-rowGap-20px{
				--row-gap:20px;
			}

			&.of-sp-rowGap-25px{
				--row-gap:25px;
			}

			&.of-sp-rowGap-30px{
				--row-gap:30px;
			}

			&.of-sp-rowGap-35px{
				--row-gap:35px;
			}

			&.of-sp-rowGap-40px{
				--row-gap:40px;
			}

			&.of-sp-rowGap-45px{
				--row-gap:45px;
			}

			&.of-sp-rowGap-50px{
				--row-gap:50px;
			}

			&.of-sp-rowGap-55px{
				--row-gap:55px;
			}

			&.of-sp-rowGap-60px{
				--row-gap:60px;
			}

			&.of-sp-rowGap-65px{
				--row-gap:65px;
			}

			&.of-sp-rowGap-70px{
				--row-gap:70px;
			}

			&.of-sp-rowGap-75px{
				--row-gap:75px;
			}

			&.of-sp-rowGap-80px{
				--row-gap:80px;
			}

			&.of-sp-rowGap-85px{
				--row-gap:85px;
			}

			&.of-sp-rowGap-90px{
				--row-gap:90px;
			}

			&.of-sp-rowGap-95px{
				--row-gap:95px;
			}

			&.of-sp-rowGap-100px{
				--row-gap:100px;
			}

			&.of-sp-colGap-5px{
				--col-gap:5px;
			}

			&.of-sp-colGap-10px{
				--col-gap:10px;
			}

			&.of-sp-colGap-15px{
				--col-gap:15px;
			}

			&.of-sp-colGap-20px{
				--col-gap:20px;
			}

			&.of-sp-colGap-25px{
				--col-gap:25px;
			}

			&.of-sp-colGap-30px{
				--col-gap:30px;
			}

			&.of-sp-colGap-35px{
				--col-gap:35px;
			}

			&.of-sp-colGap-40px{
				--col-gap:40px;
			}

			&.of-sp-colGap-45px{
				--col-gap:45px;
			}

			&.of-sp-colGap-50px{
				--col-gap:50px;
			}

			&.of-sp-colGap-55px{
				--col-gap:55px;
			}

			&.of-sp-colGap-60px{
				--col-gap:60px;
			}

			&.of-sp-colGap-65px{
				--col-gap:65px;
			}

			&.of-sp-colGap-70px{
				--col-gap:70px;
			}

			&.of-sp-colGap-75px{
				--col-gap:75px;
			}

			&.of-sp-colGap-80px{
				--col-gap:80px;
			}

			&.of-sp-colGap-85px{
				--col-gap:85px;
			}

			&.of-sp-colGap-90px{
				--col-gap:90px;
			}

			&.of-sp-colGap-95px{
				--col-gap:95px;
			}

			&.of-sp-colGap-100px{
				--col-gap:100px;
			}
	}

	.c-layout-column__cell{
		.c-layout-column[class*="of-sp-col-"] &{
			& > [class*="c-box-"]{
				height:100%;
			}
		}
	}
	.c-layout-mediaFlex{
		&.of-sp-reverse{
			flex-direction:column-reverse;

			.c-layout-cardGrid[class*="of-sp-col-"] &, .c-layout-column[class*="of-sp-col-"] &{
				display:flex;
				height:100%;
				flex-direction:column;
			}
		}

		&.of-sp-left{
			flex-direction:row-reverse;
		}

		&.of-sp-right{
			flex-direction:row;
		}

		&.of-sp-left, &.of-sp-right{
			&.of-sp-ai-center{
				align-items:center;
			}

			&.of-sp-ai-end{
				align-items:flex-end;
			}

			&.c-layout-mediaFlex.of-widen-areaMedia{
				--media-area-max-width:57.3%;
			}

			.c-layout-mediaFlex__areaMedia{
				max-width:var(--media-area-max-width);
				flex-shrink:0;
			}

			.c-media-image{
				container:none;
			}
		}

			&.of-sp-rowGap-5px{
				--row-gap:5px;
			}

			&.of-sp-rowGap-10px{
				--row-gap:10px;
			}

			&.of-sp-rowGap-15px{
				--row-gap:15px;
			}

			&.of-sp-rowGap-20px{
				--row-gap:20px;
			}

			&.of-sp-rowGap-25px{
				--row-gap:25px;
			}

			&.of-sp-rowGap-30px{
				--row-gap:30px;
			}

			&.of-sp-rowGap-35px{
				--row-gap:35px;
			}

			&.of-sp-rowGap-40px{
				--row-gap:40px;
			}

			&.of-sp-rowGap-45px{
				--row-gap:45px;
			}

			&.of-sp-rowGap-50px{
				--row-gap:50px;
			}

			&.of-sp-rowGap-55px{
				--row-gap:55px;
			}

			&.of-sp-rowGap-60px{
				--row-gap:60px;
			}

			&.of-sp-rowGap-65px{
				--row-gap:65px;
			}

			&.of-sp-rowGap-70px{
				--row-gap:70px;
			}

			&.of-sp-rowGap-75px{
				--row-gap:75px;
			}

			&.of-sp-rowGap-80px{
				--row-gap:80px;
			}

			&.of-sp-colGap-5px{
				--col-gap:5px;
			}

			&.of-sp-colGap-10px{
				--col-gap:10px;
			}

			&.of-sp-colGap-15px{
				--col-gap:15px;
			}

			&.of-sp-colGap-20px{
				--col-gap:20px;
			}

			&.of-sp-colGap-25px{
				--col-gap:25px;
			}

			&.of-sp-colGap-30px{
				--col-gap:30px;
			}

			&.of-sp-colGap-35px{
				--col-gap:35px;
			}

			&.of-sp-colGap-40px{
				--col-gap:40px;
			}

			&.of-sp-colGap-45px{
				--col-gap:45px;
			}

			&.of-sp-colGap-50px{
				--col-gap:50px;
			}

			&.of-sp-colGap-55px{
				--col-gap:55px;
			}

			&.of-sp-colGap-60px{
				--col-gap:60px;
			}
	}

	.c-layout-mediaFlex__areaText{
		:is(.c-layout-cardGrid, .c-layout-column)[class*="of-sp-col-"] .c-layout-mediaFlex.of-sp-reverse &{
			display:flex;
			flex-direction:column;

			& > *:has(+ [class*="c-button-"]:last-child){
				margin-bottom:auto;
			}
		}
	}
	.c-media-iframe{
		&.of-sp-ar-wide{
			--aspect-ratio:16 / 9;
		}

		&.of-sp-ar-wxga{
			--aspect-ratio:16 / 10;
		}

		&.of-sp-ar-cinemascope{
			--aspect-ratio:2.35 / 1;
		}

		&.of-sp-ar-vertical{
			--aspect-ratio:9 / 16;
		}

		&.of-sp-ar-square{
			--aspect-ratio:1 / 1;
		}
	}
	.c-media-image__image{
		.c-layout-index__item &, .c-media-image.of-full:not(.c-layout-mediaFlex:is(.of-sp-left, .of-sp-right) .of-full) &{
			width:100%;
		}
	}
	.c-panel-collabo__bodyInner{
		.c-layout-mediaFlex__areaMedia{
			margin-inline:-20px;
		}
	}
	.c-table-1{
		&.of-sp-scrollable[tabindex="0"]{
			overflow-x:auto;
		}
	}

	.c-table-1__table{
		.c-table-1.of-sp-scrollable &{
			white-space:nowrap;
		}
	}
	.c-text-balloon{
		&.of-sp-right{
			margin:auto 5px auto 0;

			&::before{
				inset:0 -5px 0 auto;
			}
		}

		&.of-sp-bottom{
			margin:0 auto 5px;

			&::before{
				inset:auto 0 -5px;
			}
		}
	}
	.c-text-titleSteps__label{
		.c-text-titleSteps:not(.of-sizeFixed-pc) &{
			font-size:1.8rem;
			line-height:1.38889;
		}

		.c-text-titleSteps.of-sizeFixed-pc &{
			font-size:2rem;
			line-height:1.4;
		}
	}
			.u-sp-mt-0{
				margin-top:0 !important;
			}
			.u-sp-mt-5px{
				margin-top:5px !important;
			}
			.u-sp-mt-10px{
				margin-top:10px !important;
			}
			.u-sp-mt-15px{
				margin-top:15px !important;
			}
			.u-sp-mt-20px{
				margin-top:20px !important;
			}
			.u-sp-mt-25px{
				margin-top:25px !important;
			}
			.u-sp-mt-30px{
				margin-top:30px !important;
			}
			.u-sp-mt-35px{
				margin-top:35px !important;
			}
			.u-sp-mt-40px{
				margin-top:40px !important;
			}
			.u-sp-mt-45px{
				margin-top:45px !important;
			}
			.u-sp-mt-50px{
				margin-top:50px !important;
			}
			.u-sp-mt-55px{
				margin-top:55px !important;
			}
			.u-sp-mt-60px{
				margin-top:60px !important;
			}
			.u-sp-mt-65px{
				margin-top:65px !important;
			}
			.u-sp-mt-70px{
				margin-top:70px !important;
			}
			.u-sp-mt-75px{
				margin-top:75px !important;
			}
			.u-sp-mt-80px{
				margin-top:80px !important;
			}
			.u-sp-mt-85px{
				margin-top:85px !important;
			}
			.u-sp-mt-90px{
				margin-top:90px !important;
			}
			.u-sp-mt-95px{
				margin-top:95px !important;
			}
			.u-sp-mt-100px{
				margin-top:100px !important;
			}
			.u-sp-mb-0{
				margin-bottom:0 !important;
			}
			.u-sp-mb-5px{
				margin-bottom:5px !important;
			}
			.u-sp-mb-10px{
				margin-bottom:10px !important;
			}
			.u-sp-mb-15px{
				margin-bottom:15px !important;
			}
			.u-sp-mb-20px{
				margin-bottom:20px !important;
			}
			.u-sp-mb-25px{
				margin-bottom:25px !important;
			}
			.u-sp-mb-30px{
				margin-bottom:30px !important;
			}
			.u-sp-mb-35px{
				margin-bottom:35px !important;
			}
			.u-sp-mb-40px{
				margin-bottom:40px !important;
			}
			.u-sp-mb-45px{
				margin-bottom:45px !important;
			}
			.u-sp-mb-50px{
				margin-bottom:50px !important;
			}
			.u-sp-mb-55px{
				margin-bottom:55px !important;
			}
			.u-sp-mb-60px{
				margin-bottom:60px !important;
			}
			.u-sp-mb-65px{
				margin-bottom:65px !important;
			}
			.u-sp-mb-70px{
				margin-bottom:70px !important;
			}
			.u-sp-mb-75px{
				margin-bottom:75px !important;
			}
			.u-sp-mb-80px{
				margin-bottom:80px !important;
			}
			.u-sp-mb-85px{
				margin-bottom:85px !important;
			}
			.u-sp-mb-90px{
				margin-bottom:90px !important;
			}
			.u-sp-mb-95px{
				margin-bottom:95px !important;
			}
			.u-sp-mb-100px{
				margin-bottom:100px !important;
			}
	.u-pc-only{
		display:none !important;
	}
}

@media (width <= 870px) and (width > 767px){
	.c-dialog-1__placeButtonClose{
		right:0 !important;
	}
}

@media (width > 767px){
	.l-main-openCampusHeading{
		margin:65px 0;
		gap:35px;
	}

	.l-main-openCampusHeading__main{
		font-size:1.8rem;
	}

	.l-main-openCampusHeading__sub{
		font-size:8.6rem;
	}

	.l-main-openCampusHeading__decoration{
		min-width:107px;
		max-width:107px;
		margin-bottom:1.5em;
	}

	.l-main-openCampusLead{
		margin:60px 0 45px;
		font-size:2.6rem;

		b{
			&::before, &::after{
				width:2px;
			}
		}
	}

	.l-main-openCampusAreaButton{
		max-width:424px;
		margin:40px auto 0;
	}
	.l-main-instagramLead{
		margin:30px 0;
		font-size:2.6rem;

		b{
			&::before, &::after{
				width:2px;
			}
		}
	}

	.l-main-instagramContents{
		gap:3px;
		margin-block:30px;
	}

	.l-main-instagramAreaButton{
		margin-top:30px;
		transform:translateY(0);
	}
	.l-main-layoutYouTube{
		display:grid;
		max-width:1214px;
		gap:30px 40px;
		grid-template-columns:minmax(300px, 1fr) minmax(350px, 688px);
		margin-inline:auto;
	}

	.l-main-layoutYouTube__areaHeading{
		align-self:end;
		padding-bottom:0;
		grid-column:1 / 2;
		grid-row:1 / 2;
	}

	.l-main-layoutYouTube__areaMedia{
		grid-column:2 / 3;
		grid-row:1 / 3;
	}

	.l-main-layoutYouTube__areaButton{
		padding-top:0;
		grid-column:1 / 2;
		grid-row:2 / 3;
	}
	.l-main-info{
		background-image:url(../img/bg_structure-fabric-top_pc@2x.png);
		background-position-y:calc(var(--decoration-space)/var(--content-width)*100vw);

		&::before{
			top:calc((var(--decoration-space) - 37)/var(--content-width)*100vw);
			left:calc(99/var(--content-width)*100vw);
			width:213px;
			height:164px;
			background-image:url(../img/bg_l-main-info-before_pc@2x.png);
		}
	}

	.l-main-info__inner{
		padding-bottom:calc(60/var(--content-width)*100vw);
	}

	.l-main-info__offset{
		padding:80px 0 88px;
	}

	.l-main-info__layoutButton{
		margin:50px 0;
		gap:12px 8px;
	}

	.l-main-info__layoutButtonItem{
		min-width:470px;
		max-width:470px;
	}

	.l-main-info__button{
		min-height:77px;
		padding:17px 75px 17px 35px;
		border-width:2px;
		font-size:2.6rem;
		line-height:1.46154;

		&.of-request{
			width:auto;
			min-height:121px;
			padding-right:114px;
			padding-left:114px;
			font-size:3.2rem;
		}

		&::after{
			right:15px;
			width:52px;
			height:52px;
			background-size:20px 18px;
		}
	}

	.l-main-info__buttonLabel{
		.l-main-info__button.of-contact &{
			padding-left:47px;

			&::before{
				width:38px;
				height:30px;
			}
		}

		.l-main-info__button.of-tel &{
			padding-left:44px;

			&::before{
				width:28px;
				height:45px;
			}
		}

		.l-main-info__button.of-request &{
			padding-left:44px;

			&::before{
				width:32px;
				height:44px;
			}
		}
	}
	.l-main-structure{
		&.of-instagram{
			:nth-child(1 of .l-main-structure__decoration){
				top:calc(120/var(--content-width)*100vw);
				left:calc(71/var(--content-width)*100vw);
			}

			:nth-child(2 of .l-main-structure__decoration){
				top:calc(246/var(--content-width)*100vw);
				left:calc(231/var(--content-width)*100vw);
				display:block;
			}

			:nth-child(3 of .l-main-structure__decoration){
				top:calc(271/var(--content-width)*100vw);
				right:calc(254/var(--content-width)*100vw);
				display:block;
			}

			:nth-child(4 of .l-main-structure__decoration){
				top:calc(134/var(--content-width)*100vw);
				right:calc(59/var(--content-width)*100vw);
			}
		}

		&.of-youtube{
			:nth-child(1 of .l-main-structure__decoration){
				top:calc(142/var(--content-width)*100vw);
				left:calc(35/var(--content-width)*100vw);
			}

			:nth-child(2 of .l-main-structure__decoration){
				top:calc(27/var(--content-width)*100vw);
				right:calc(89/var(--content-width)*100vw);
			}

			:nth-child(3 of .l-main-structure__decoration){
				top:calc(581/var(--content-width)*100vw);
				left:calc(436/var(--content-width)*100vw);
				display:block;
			}
		}
	}
	.l-footer{
		padding-top:calc(60/var(--content-width)*100vw);
		margin-top:calc(60/var(--content-width)*-100vw);
		background-image:url(../img/bg_footer_pc.svg);
	}

	.l-footer__inner{
		padding:46px 20px 0;
		background-color:#c41b1f;
	}

	.l-footer-menuGroupInner{
		padding:60px 20px 80px;
		gap:40px;
	}

	.l-footer-menu, .l-footer-areaUtility{
		width:100%;
		max-width:1214px;
		margin-inline:auto;
	}

	.l-footer-menu__list{
		display:grid;
		justify-content:center;
		padding:0 0 40px;
		font-size:1.3rem;
		gap:14px 16px;
		grid-template-columns:repeat(auto-fit, minmax(187px, 1fr));
		grid-template-rows:auto;
	}

	.l-footer-menu__link{
		min-height:29px;
		padding:0 10px 5px 0;

		&::after{
			right:12px;
			bottom:4px;
			width:10px;
			height:9px;
		}
	}

	.l-footer-menu__label{
		padding-right:20px;

		&::after{
			display:none;
		}
	}

	.l-footer-areaUtility{
		padding:35px 50px 43px;
	}

	.l-footer-utility__listGroupItem{
		&:not(:first-child){
			padding-top:12px;
		}

		&:not(:last-child){
			padding-bottom:13px;
		}
	}

	.l-footer-utility__listGroupTitle{
		margin-bottom:5px;
	}

	.l-footer-utility__list{
		gap:5px 15px;
	}

	.l-footer-sns{
		margin:17px 0;
	}

	.l-footer-sns__list{
		display:inline-flex;
	}

	.l-footer-sns__item{
		min-width:64px;
	}

	.l-footer-sns__link{
		min-height:37px;

		.l-footer-sns__item:first-child &{
			border-radius:6px 0 0 6px;
		}

		.l-footer-sns__item:last-child &{
			border-radius:0 6px 6px 0;
		}
	}

	.l-footer-sns__image{
		.l-footer-sns__item.of-youtube &{
			width:21px;
			height:14px;
		}

		.l-footer-sns__item.of-instagram &{
			width:20px;
			height:20px;
		}

		.l-footer-sns__item.of-twitter &{
			width:18px;
			height:19px;
		}
	}

	.l-footerArea-bottom{
		padding:30px 20px 84px;
		background-color:transparent;
		margin-inline:-20px;
	}

	.l-footerArea-bottom__inner{
		gap:1px;
	}

	.l-footer-copyright{
		width:100%;
		max-width:1214px;
		margin-inline:auto;
	}

	.l-footer-pagetop{
		margin-inline:-20px;
	}

	.l-footer-pagetop__inner{
		right:20px;
		bottom:18px;
		left:20px;
		transform:translateY(-66px);
	}

	.l-footer-pagetop__link{
		transform:translateX(53px);

		@container l-footer-area-bottom (max-width: 1320px){
			transform:translateX(0);
		}
	}

	.l-footer-pagetop__image{
		vertical-align:bottom;
	}
	.c-box-1{
		margin-top:50px;

		&:has(.c-box-1__header > .c-text-titleSteps){
			margin-top:80px;
		}
	}

	.c-box-1__offset{
		max-width:860px;
		padding:36px 20px 40px;
		margin-inline:auto;
	}

	.c-box-1__header{
		margin-block:0 15px;
	}
	.c-box-2{
		padding:0 30px;
		border:1px solid var(--main-color);
		border-top:none;
		margin-top:60px;
	}

	.c-box-2__header{
		align-items:flex-start;
		margin:0 -30px -3.8rem;
		font-size:2.4rem;
		line-height:1.58333;
		transform:translateY(-1.9rem);

		&::before, &::after{
			min-width:60px;
			margin-top:1.9rem;
		}
	}

	.c-box-2__inner{
		max-width:820px;
		padding:40px 0;
		margin-inline:auto;
	}
	.c-box-3{
		padding:25px 30px;

		.c-box-1__foot &{
			padding-block:40px 50px;
		}
	}

	.c-box-3__layout{
		max-width:820px;
		grid-template-columns:repeat(2, 1fr);
		margin-inline:auto;
	}

	.c-box-3__areaHeading{
		grid-column:1 / 2;
		grid-row:1 / 2;
		text-align:left;
	}

	.c-box-3__areaButton{
		align-self:center;
		grid-column:2 / 3;
		grid-row:1 / 3;
	}

	.c-box-3__areaSupplementar{
		grid-column:1 / 2;
		grid-row:2 / 3;
	}

	.c-box-3__heading{
		font-size:2.2rem;
	}
	.c-box-4{
		margin-top:25px;

		&:not(.of-pin){
			padding:25px 30px;
		}
	}
	.c-box-student{
		position:relative;
		border:2px solid var(--main-color);
		border-radius:20px;
		margin-top:45px;
	}

	.c-box-student__head{
		min-height:60px;
		padding:20px;
		border-radius:0 0 16px 16px;
		gap:5px 10px;
	}

	.c-box-student__course{
		min-height:22px;
		padding:0 10px;
		font-size:1.4rem;
	}

	.c-box-student__name{
		font-size:1.4rem;
	}

	.c-box-student__school{
		font-size:1.2rem;
	}

	.c-box-student__body{
		padding:20px 25px;
	}

	.c-box-student__layout{
		gap:10px;
	}

	.c-box-student__layoutAreaText{
		font-size:1.5rem;
	}

	.c-box-student__layoutAreaImage{
		position:static;
	}

	.c-box-student__viewport{
		bottom:-2px;
	}
	.c-box-tagCourseGroup{
		gap:5px;

		:is(.p-top, .p-course-confectionary-special, .p-course-cookery-2-special) &{
			--height:25px;
		}
	}
	.c-button-1, .c-button-2{
		&:not(.of-sizeFixed-sp){
			margin-top:30px;
		}
	}

	.c-button-1__button, .c-button-2__button{
		[class*="c-button-"]:not(.of-sizeFixed-sp) &{
			min-width:335px;
			min-height:58px;
			padding:14px 60px 14px 50px;
			border-width:2px;
			font-size:1.8rem;
			line-height:1.44444;

			@container c-button (max-width: 334px){
				min-width:auto;
				padding-left:20px;

				&::before{
					max-width:40px;
					flex-grow:1;
				}
			}

			&::after{
				right:10px;
				width:40px;
				height:40px;
				background-size:15px 14px;
			}

			&[href*=".doc"], &[href*=".docx"], &[href*=".ppt"], &[href*=".pptx"], &[href*=".xls"], &[href*=".xlsx"], &[href*=".zip"], &[href*=".pdf"]{
				&::after{
					background-size:20px 22px;
				}
			}
		}
	}

	.c-button-1, .c-button-2{
		&.of-sizeFixed-sp{
			margin-top:20px;
		}
	}

	.c-button-1__button, .c-button-2__button{
		[class*="c-button-"].of-sizeFixed-sp &{
			min-width:163px;
			max-width:242px;
			min-height:40px;
			padding:9px 44px 9px 36px;
			border-width:1px;
			font-size:1.4rem;
			line-height:1.42857;

			@container c-button (max-width: 162px){
				min-width:auto;
				padding-left:16px;

				&::before{
					max-width:28px;
					flex-grow:1;
				}
			}

			&::after{
				right:8px;
				width:28px;
				height:28px;
				background-size:11px 10px;
			}

			&[href*=".doc"], &[href*=".docx"], &[href*=".ppt"], &[href*=".pptx"], &[href*=".xls"], &[href*=".xlsx"], &[href*=".zip"], &[href*=".pdf"]{
				&::after{
					background-size:14px 15px;
				}
			}
		}
	}

	.c-button-1__label, .c-button-2__label{
		[class*="c-button-"]:not(.of-sizeFixed-sp) [class*="c-button-"][class*="__button"][href^="tel:"] &{
			padding-left:30px;

			&::before{
				width:20px;
				height:32px;
			}
		}

		[class*="c-button-"]:not(.of-sizeFixed-sp) [class*="c-button-"][class*="__button"][href^="mailto:"] &{
			padding-left:36px;

			&::before{
				width:26px;
				height:21px;
			}
		}

		[class*="c-button-"].of-sizeFixed-sp [class*="c-button-"][class*="__button"][href^="tel:"] &{
			padding-left:23px;

			&::before{
				width:15px;
				height:24px;
			}
		}

		[class*="c-button-"].of-sizeFixed-sp [class*="c-button-"][class*="__button"][href^="mailto:"] &{
			padding-left:29px;

			&::before{
				width:21px;
				height:16px;
			}
		}
	}
	.c-card-column{
		margin-top:25px;
		gap:15px;

		&.of-pc-imageLeft{
			flex-direction:row-reverse;
		}
	}

	.c-card-column__areaText{
		.c-card-column.of-pc-imageLeft &{
			flex-grow:1;
		}
	}

	.c-card-column__areaImage{
		.c-card-column.of-pc-imageLeft &{
			width:100%;
			max-width:56.5%;
			flex-grow:1;
			flex-shrink:0;
		}
	}

	.c-card-column__head{
		.c-card-column.of-pc-imageLeft &{
			text-align:left;
		}
	}

	.c-card-column__title{
		font-size:2.2rem;

		.c-card-column.of-pc-imageLeft &{
			@container c-card-column (max-width: 480px){
				font-size:1.8rem;
			}
		}
	}

	.c-card-column__body{
		@container c-card-column (max-width: 320px){
			font-size:1.5rem;
		}

		@container c-card-column (max-width: 273.33333px){
			font-size:1.4rem;
		}

		.c-card-column.of-pc-imageLeft &{
			@container c-card-column (max-width: 480px){
				font-size:1.4rem;
			}
		}
	}
	.l-main-releaseList{
		margin:45px 0 30px;
	}

	.c-card-release__areaImage{
		border-width:3px;
	}
	.c-card-c-card-school__desc{
		font-size:1.5rem;
	}

	.c-card-school__address{
		font-size:1.4rem;
	}
	.c-card-visiting{
		--border-size:4px;
	}

	.c-card-visiting__date{
		--size:70px;
		--font-size:1.2rem;
		--top:-12px;
		--left:-12px;

		:is(.p-top, .p-course-confectionary-special, .p-course-cookery-2-special) &{
			--size:93px;
			--font-size:1.4rem;
			--top:-23px;
			--left:-19px;
		}
	}

	.c-card-visiting__valueMonth, .c-card-visiting__valueDay{
		--font-size:1.5rem;

		:is(.p-top, .p-course-confectionary-special, .p-course-cookery-2-special) &{
			--font-size:2rem;
		}
	}

	.c-card-visiting__eventTitle{
		:is(.p-top, .p-course-confectionary-special, .p-course-cookery-2-special) &{
			--padding-block:15px;

			font-size:1.7rem;
		}
	}
	.c-heading-1{
		padding-bottom:17px;
		margin:50px 0;
		font-size:3.6rem;
		line-height:1.44444;

		&::before{
			width:50px;
		}
	}
	.c-heading-2{
		margin-top:40px;

		&:has(.c-heading-2__point){
			padding-bottom:18px;
			margin-bottom:40px;
		}
	}

	.c-heading-2__title{
		font-size:3rem;
		line-height:1.6;
	}

	.c-heading-2__point{
		min-width:70px;
		min-height:70px;
		margin-bottom:10px;

		&::before{
			bottom:-8px;
			height:8px;
			clip-path:polygon(50px 2px, 50px 0, 0 0, 0 2px, 19px 2px, 25px 8px, 31px 2px);
		}

		&::after{
			bottom:-5px;
			height:6px;
			clip-path:polygon(0 0, 0 1px, 20px 1px, 25px 6px, 30px 1px, 50px 1px, 50px 0);
		}
	}

	.c-heading-2__pointLabel{
		font-size:1.8rem;
	}

	.c-heading-2__pointNumber{
		font-size:4rem;
	}

	.c-heading-2__subTitle{
		font-size:1.6rem;
		line-height:1.8125;
	}
	.c-heading-3{
		margin:40px 0 30px;
		font-size:2.4rem;
		line-height:1.58333;
	}

	small.c-heading-3__title{
		font-size:1.6rem;
	}
	.c-heading-4{
		margin:35px 0 25px;
		font-size:2.2rem;
		line-height:1.59091;
	}
	.c-heading-5{
		padding-bottom:12px;
		margin-block:70px 20px;

		&.of-sizeLv-3{
			padding-bottom:11px;
			margin-block:60px 18px;
		}

		&.of-sizeLv-4{
			padding-bottom:10px;
			margin-block:50px 16px;
		}

		&.of-sizeLv-5{
			padding-bottom:9px;
			margin-block:40px 14px;
		}

		&.of-sizeLv-6{
			padding-bottom:8px;
			margin-block:30px 12px;
		}
	}

	.c-heading-5__title{
		font-size:3.6rem;

		.c-heading-5.of-sizeLv-3 &{
			font-size:3rem;
		}

		.c-heading-5.of-sizeLv-4 &{
			font-size:2.4rem;
		}

		.c-heading-5.of-sizeLv-5 &{
			font-size:2.2rem;
		}

		.c-heading-5.of-sizeLv-6 &{
			font-size:1.8rem;
		}
	}
	.c-heading-appeal{
		margin-top:60px;
		font-size:1.8rem;
	}
	.c-layout-cardGrid{
		margin:15px 0;

		&.of-pc-auto-fit{
			--grid-width:var(--structure-offset-max-width, calc(var(--content-width)*1px));

			grid-template-columns:repeat(
					auto-fit,
					minmax(
						calc((var(--grid-width) - (var(--col-gap)*(var(--col-size) - 1)))/var(--col-size)),
						1fr
					)
				);
		}
		&.of-pc-col-2{
			--col-size:2;
		}

		&.of-pc-col-3{
			--col-size:3;
		}

		&.of-pc-col-4{
			--col-size:4;
		}

			&.of-pc-rowGap-5px{
				--row-gap:5px;
			}

			&.of-pc-rowGap-10px{
				--row-gap:10px;
			}

			&.of-pc-rowGap-15px{
				--row-gap:15px;
			}

			&.of-pc-rowGap-20px{
				--row-gap:20px;
			}

			&.of-pc-rowGap-25px{
				--row-gap:25px;
			}

			&.of-pc-rowGap-30px{
				--row-gap:30px;
			}

			&.of-pc-rowGap-35px{
				--row-gap:35px;
			}

			&.of-pc-rowGap-40px{
				--row-gap:40px;
			}

			&.of-pc-rowGap-45px{
				--row-gap:45px;
			}

			&.of-pc-rowGap-50px{
				--row-gap:50px;
			}

			&.of-pc-rowGap-55px{
				--row-gap:55px;
			}

			&.of-pc-rowGap-60px{
				--row-gap:60px;
			}

			&.of-pc-rowGap-65px{
				--row-gap:65px;
			}

			&.of-pc-rowGap-70px{
				--row-gap:70px;
			}

			&.of-pc-rowGap-75px{
				--row-gap:75px;
			}

			&.of-pc-rowGap-80px{
				--row-gap:80px;
			}

			&.of-pc-rowGap-85px{
				--row-gap:85px;
			}

			&.of-pc-rowGap-90px{
				--row-gap:90px;
			}

			&.of-pc-rowGap-95px{
				--row-gap:95px;
			}

			&.of-pc-rowGap-100px{
				--row-gap:100px;
			}

			&.of-pc-colGap-5px{
				--col-gap:5px;
			}

			&.of-pc-colGap-10px{
				--col-gap:10px;
			}

			&.of-pc-colGap-15px{
				--col-gap:15px;
			}

			&.of-pc-colGap-20px{
				--col-gap:20px;
			}

			&.of-pc-colGap-25px{
				--col-gap:25px;
			}

			&.of-pc-colGap-30px{
				--col-gap:30px;
			}

			&.of-pc-colGap-35px{
				--col-gap:35px;
			}

			&.of-pc-colGap-40px{
				--col-gap:40px;
			}

			&.of-pc-colGap-45px{
				--col-gap:45px;
			}

			&.of-pc-colGap-50px{
				--col-gap:50px;
			}

			&.of-pc-colGap-55px{
				--col-gap:55px;
			}

			&.of-pc-colGap-60px{
				--col-gap:60px;
			}

			&.of-pc-colGap-65px{
				--col-gap:65px;
			}

			&.of-pc-colGap-70px{
				--col-gap:70px;
			}

			&.of-pc-colGap-75px{
				--col-gap:75px;
			}

			&.of-pc-colGap-80px{
				--col-gap:80px;
			}

			&.of-pc-colGap-85px{
				--col-gap:85px;
			}

			&.of-pc-colGap-90px{
				--col-gap:90px;
			}

			&.of-pc-colGap-95px{
				--col-gap:95px;
			}

			&.of-pc-colGap-100px{
				--col-gap:100px;
			}
	}

	.c-layout-cardGrid__cell{
		.c-layout-cardGrid[class*="of-pc-col-"] &{
			& > [class*="c-box-"]{
				height:100%;
			}
		}
	}
	.c-layout-column{
		margin:15px 0;
		&.of-pc-col-2{
			--col-size:2;
		}

		&.of-pc-col-3{
			--col-size:3;
		}

		&.of-pc-col-4{
			--col-size:4;
		}

			&.of-pc-rowGap-5px{
				--row-gap:5px;
			}

			&.of-pc-rowGap-10px{
				--row-gap:10px;
			}

			&.of-pc-rowGap-15px{
				--row-gap:15px;
			}

			&.of-pc-rowGap-20px{
				--row-gap:20px;
			}

			&.of-pc-rowGap-25px{
				--row-gap:25px;
			}

			&.of-pc-rowGap-30px{
				--row-gap:30px;
			}

			&.of-pc-rowGap-35px{
				--row-gap:35px;
			}

			&.of-pc-rowGap-40px{
				--row-gap:40px;
			}

			&.of-pc-rowGap-45px{
				--row-gap:45px;
			}

			&.of-pc-rowGap-50px{
				--row-gap:50px;
			}

			&.of-pc-rowGap-55px{
				--row-gap:55px;
			}

			&.of-pc-rowGap-60px{
				--row-gap:60px;
			}

			&.of-pc-rowGap-65px{
				--row-gap:65px;
			}

			&.of-pc-rowGap-70px{
				--row-gap:70px;
			}

			&.of-pc-rowGap-75px{
				--row-gap:75px;
			}

			&.of-pc-rowGap-80px{
				--row-gap:80px;
			}

			&.of-pc-rowGap-85px{
				--row-gap:85px;
			}

			&.of-pc-rowGap-90px{
				--row-gap:90px;
			}

			&.of-pc-rowGap-95px{
				--row-gap:95px;
			}

			&.of-pc-rowGap-100px{
				--row-gap:100px;
			}

			&.of-pc-colGap-5px{
				--col-gap:5px;
			}

			&.of-pc-colGap-10px{
				--col-gap:10px;
			}

			&.of-pc-colGap-15px{
				--col-gap:15px;
			}

			&.of-pc-colGap-20px{
				--col-gap:20px;
			}

			&.of-pc-colGap-25px{
				--col-gap:25px;
			}

			&.of-pc-colGap-30px{
				--col-gap:30px;
			}

			&.of-pc-colGap-35px{
				--col-gap:35px;
			}

			&.of-pc-colGap-40px{
				--col-gap:40px;
			}

			&.of-pc-colGap-45px{
				--col-gap:45px;
			}

			&.of-pc-colGap-50px{
				--col-gap:50px;
			}

			&.of-pc-colGap-55px{
				--col-gap:55px;
			}

			&.of-pc-colGap-60px{
				--col-gap:60px;
			}

			&.of-pc-colGap-65px{
				--col-gap:65px;
			}

			&.of-pc-colGap-70px{
				--col-gap:70px;
			}

			&.of-pc-colGap-75px{
				--col-gap:75px;
			}

			&.of-pc-colGap-80px{
				--col-gap:80px;
			}

			&.of-pc-colGap-85px{
				--col-gap:85px;
			}

			&.of-pc-colGap-90px{
				--col-gap:90px;
			}

			&.of-pc-colGap-95px{
				--col-gap:95px;
			}

			&.of-pc-colGap-100px{
				--col-gap:100px;
			}
	}

	.c-layout-column__cell{
		.c-layout-column[class*="of-pc-col-"] &{
			& > [class*="c-box-"]{
				height:100%;
			}
		}
	}
	.c-layout-mediaFlex{
		--margin-top:15px;
		--row-gap:50px;
		--col-gap:50px;

		&.of-pc-reverse{
			flex-direction:column-reverse;

			.c-layout-cardGrid[class*="of-pc-col-"] &, .c-layout-column[class*="of-pc-col-"] &{
				height:100%;
			}
		}

		&.of-pc-left{
			flex-direction:row-reverse;
		}

		&.of-pc-right{
			flex-direction:row;
		}

		&.of-pc-left, &.of-pc-right{
			&.of-pc-ai-center{
				align-items:center;
			}

			&.of-pc-ai-end{
				align-items:flex-end;
			}

			&.c-layout-mediaFlex.of-widen-areaMedia{
				--media-area-max-width:57.3%;
			}

			.c-layout-mediaFlex__areaMedia{
				max-width:var(--media-area-max-width);
				flex-shrink:0;
			}

			.c-media-image{
				container:none;
			}
		}

			&.of-pc-rowGap-5px{
				--row-gap:5px;
			}

			&.of-pc-rowGap-10px{
				--row-gap:10px;
			}

			&.of-pc-rowGap-15px{
				--row-gap:15px;
			}

			&.of-pc-rowGap-20px{
				--row-gap:20px;
			}

			&.of-pc-rowGap-25px{
				--row-gap:25px;
			}

			&.of-pc-rowGap-30px{
				--row-gap:30px;
			}

			&.of-pc-rowGap-35px{
				--row-gap:35px;
			}

			&.of-pc-rowGap-40px{
				--row-gap:40px;
			}

			&.of-pc-rowGap-45px{
				--row-gap:45px;
			}

			&.of-pc-rowGap-50px{
				--row-gap:50px;
			}

			&.of-pc-rowGap-55px{
				--row-gap:55px;
			}

			&.of-pc-rowGap-60px{
				--row-gap:60px;
			}

			&.of-pc-rowGap-65px{
				--row-gap:65px;
			}

			&.of-pc-rowGap-70px{
				--row-gap:70px;
			}

			&.of-pc-rowGap-75px{
				--row-gap:75px;
			}

			&.of-pc-rowGap-80px{
				--row-gap:80px;
			}

			&.of-pc-colGap-5px{
				--col-gap:5px;
			}

			&.of-pc-colGap-10px{
				--col-gap:10px;
			}

			&.of-pc-colGap-15px{
				--col-gap:15px;
			}

			&.of-pc-colGap-20px{
				--col-gap:20px;
			}

			&.of-pc-colGap-25px{
				--col-gap:25px;
			}

			&.of-pc-colGap-30px{
				--col-gap:30px;
			}

			&.of-pc-colGap-35px{
				--col-gap:35px;
			}

			&.of-pc-colGap-40px{
				--col-gap:40px;
			}

			&.of-pc-colGap-45px{
				--col-gap:45px;
			}

			&.of-pc-colGap-50px{
				--col-gap:50px;
			}

			&.of-pc-colGap-55px{
				--col-gap:55px;
			}

			&.of-pc-colGap-60px{
				--col-gap:60px;
			}
	}

	.c-layout-mediaFlex__areaText{
		:is(.c-layout-cardGrid, .c-layout-column)[class*="of-pc-col-"] .c-layout-mediaFlex.of-pc-reverse &{
			display:flex;
			flex-direction:column;

			& > *:has(+ [class*="c-button-"]:last-child){
				margin-bottom:auto;
			}
		}
	}
	.c-link-1{
		margin-block:10px 15px;
	}

	.c-link-1__link{
		padding-right:18px;
		font-size:1.6rem;

		&::after{
			top:10px;
			width:13px;
			height:12px;
		}
	}
	.c-list-History{
		margin-top:45px;
	}

	.c-list-History__era, .c-list-History__event{
		padding:15px 0;
	}

	.c-list-History__era{
		padding-right:26px;

		&::before{
			top:23px;
			width:14px;
			height:14px;
		}

		&::after{
			right:6px;
		}

		.c-list-History__item:first-child &{
			&::before, &::after{
				top:8px;
			}
		}

		.c-list-History__item:last-child &{
			&::after{
				bottom:calc(100% - 23px);
			}
		}
	}
	.c-list-bullet-1{
		margin:10px 0;
		font-size:1.6rem;
		line-height:1.375;
	}

	.c-list-bullet-1__item{
		padding-left:22px;

		& + &{
			margin-top:5px;
		}

		&::before{
			top:11px;
			width:4px;
			height:4px;
		}
	}
	.c-list-bullet-2{
		margin:12px 0;
		font-size:1.6rem;
		line-height:1.375;
	}

	.c-list-bullet-2__item{
		padding-left:18px;

		& + &{
			margin-top:5px;
		}

		&::before{
			top:8px;
		}
	}
	.c-list-desc-1{
		margin-top:20px;
	}

	.c-list-desc-1__title{
		font-size:1.8rem;

		.c-list-desc-1 .c-list-desc-1 &, .c-list-desc-3 &{
			font-size:1.6rem;
		}
	}

	.c-list-desc-1__desc{
		padding-top:10px;

		.c-list-desc-1 .c-list-desc-1 &, .c-list-desc-3 &{
			padding-top:5px;
		}
	}
	.c-list-desc-2{
		margin-top:25px;
	}

	.c-list-desc-2__title{
		min-height:36px;
		padding:8px 20px;
		font-size:1.6rem;
		line-height:1.25;
	}

	.c-list-desc-2__desc{
		padding-top:15px;

		& + .c-list-desc-2__title{
			margin-top:25px;
		}
	}
	.c-list-desc-3{
		margin-top:15px;
		gap:15px;
	}

	.c-list-desc-3__title{
		padding:2px 10px;
		font-size:1.6rem;
	}
	.c-list-forExample{
		padding:30px 40px 50px;
		border:2px solid var(--border-color);
		border-radius:10px;
		margin-top:25px;
		background:#fff;
	}

	.c-list-forExample__data{
		padding-top:15px;
	}
	.c-list-merit{
		&.of-col{
			gap:15px;
			grid-template-columns:repeat(2, 1fr);
		}
	}

	.c-list-merit__item{
		.c-list-merit.of-col &{
			gap:10px 5px;
			grid-column:auto;
			grid-template-columns:min-content 1fr;
		}
	}

	.c-list-merit__titleMark{
		min-width:24px;
		min-height:24px;
	}
	.c-list-notes{
		margin-top:10px;
		font-size:1.2rem;
		letter-spacing:0.1em;
		line-height:1.41667;

		[class*="c-list-"]:not(.c-list-bullet-1__item >) &{
			margin:0;
		}
	}
	.c-list-qualification{
		padding:30px 25px;
		margin-top:25px;
		background-color:var(--bg-color);
	}

	.c-list-qualification__list{
		gap:10px;
	}

	.c-list-qualification__item{
		min-height:36px;
		font-size:1.6rem;
		line-height:1.1875;
	}
	.c-list-referenceSteps{
		margin-top:65px 0 30px;
	}

	.c-list-referenceSteps__item{
		padding:0 20px;
	}

	.c-list-referenceSteps__head{
		max-width:440px;
		padding:0;
		margin-inline:auto;
	}

	.c-list-referenceSteps__body{
		max-width:820px;
		padding:20px 0 50px;
		font-size:1.5rem;
		letter-spacing:0.1em;
		margin-inline:auto;
	}

	.c-list-referenceSteps__layout{
		display:grid;
		gap:10px 30px;
		grid-template-columns:1fr minmax(200px, 320px);
		grid-template-rows:auto 1fr;
	}

	.c-list-referenceSteps__layoutAreaText{
		grid-column:1 / 2;
	}

	.c-list-referenceSteps__layoutAreaList{
		margin-top:0;
		grid-column:2 / 3;
		grid-row:1 / 3;
	}

	.c-list-referenceSteps__layoutAreaNotes{
		margin-top:0;
		grid-column:1 / 2;
	}
	.c-list-symbol{
		margin:8px 0;
		font-size:1.6rem;
		letter-spacing:0.04em;
		line-height:1.4375;

		[class*="c-list-"] &{
			margin:0;
		}
	}
	.c-media-iframe{
		margin-top:30px;

		&.of-pc-ar-wide{
			--aspect-ratio:16 / 9;
		}

		&.of-pc-ar-wxga{
			--aspect-ratio:16 / 10;
		}

		&.of-pc-ar-cinemascope{
			--aspect-ratio:2.35 / 1;
		}

		&.of-pc-ar-vertical{
			--aspect-ratio:9 / 16;
		}

		&.of-pc-ar-square{
			--aspect-ratio:1 / 1;
		}
	}
	.c-media-image{
		margin-top:30px;
	}

	.c-media-image__inner{
		row-gap:15px;
	}

	.c-media-image__caption{
		gap:10px;
	}

	.c-media-image__captionTitle{
		font-size:2.2rem;
	}

	.c-media-image__captionDisc{
		font-size:1.5rem;
	}

	.c-media-image__image{
		.c-media-image.of-full:not(.c-layout-mediaFlex:is(.of-pc-left, .of-pc-right) .of-full) &{
			width:100%;
		}
	}
	.c-panel-collabo{
		margin-block:30px;
	}

	.c-panel-collabo__headInner{
		min-height:70px;
		padding:18px 35px;
		border-width:3px;
	}

	.c-panel-collabo__title{
		font-size:2.2rem;
		line-height:1.40909;
	}

	.c-panel-collabo__body{
		font-size:1.4rem;
	}

	.c-panel-collabo__bodyInner{
		padding:20px 0 40px;
	}

	.c-panel-collabo__bodyFoot{
		padding:40px 20px;
		border-radius:0 0 22px 22px;
		background-color:#f9f9f9;
		margin-inline:-20px;

		&:has(.swiper){
			padding-right:0;
			padding-left:0;
		}
	}

	.c-panel-collabo__namePlate{
		margin-bottom:25px;
	}
	.c-panel-person__areaMain{
		font-size:2rem;
	}

	.c-panel-person__lead{
		margin:-30px 0 30px -20px;
		font-size:2rem;

		.c-layout-mediaFlex.of-pc-left &, .c-layout-mediaFlex.of-pc-right &{
			margin:5px 0 40px;
			font-size:2.4rem;
		}
	}

	.c-panel-person__leadText{
		padding:10px;
	}

	.c-panel-person__namePlate{
		font-size:2.8rem;
		margin-block:30px;

		small{
			font-size:2.4rem;
		}

		.c-layout-mediaFlex.of-pc-left &, .c-layout-mediaFlex.of-pc-right &{
			font-size:2.6rem;

			small{
				font-size:2.2rem;
			}
		}
	}

	.c-panel-person__job{
		&.of-pc-sizeBig{
			font-size:2.4rem;
		}
	}

	.c-panel-person__areaSub{
		font-size:2rem;
	}
	.c-table-1{
		margin-block:10px;

		&.of-sp-scrollable[tabindex="0"]{
			overflow-x:auto;
		}

		& + &{
			margin-top:25px;
		}
	}

	.c-table-1__table{
		.c-table-1.of-pc-scrollable &{
			white-space:nowrap;
		}
	}

	.c-table-1__caption{
		small{
			font-size:1.4rem;
		}
	}

	.c-table-1__cell{
		padding:15px 10px;

		.c-table-1__head &{
			&.of-confectionary, &.of-cookery{
				padding:5px 10px;
			}
		}

		&[scope]{
			font-weight:700;

			sup{
				font-weight:400;
			}
		}
	}
	.c-text-balloon{
		font-size:1.6rem;
		padding-inline:20px;

		&.of-pc-right{
			margin:auto 5px auto 0;

			&::before{
				inset:0 -5px 0 auto;
			}
		}

		&.of-pc-bottom{
			margin:0 auto 5px;

			&::before{
				inset:auto 0 -5px;
			}
		}
	}
	.c-text-group{
		margin-top:15px;
	}
	.c-text-infoTime{
		font-size:1.4rem;

		&::before, &::after{
			top:1px;
			width:9px;
			height:9px;
		}
	}
	.c-text-lead{
		margin:15px 0;
	}

	.c-text-lead__text{
		font-size:1.8rem;

		@container c-text-lead (max-width: 680px){
			font-size:1.6rem;
		}
	}
	.c-text-tagCourse{
		min-height:var(--height, 25px);

		:is(.p-top, .p-course-confectionary-special, .p-course-cookery-2-special) &{
			--font-size:1.2rem;

			padding-block:3px;
		}
	}
	.c-text-tagFloor{
		min-width:53px;
		min-height:28px;
		padding:1px 12px 0;
		font-size:1.6rem;
	}
	.c-text-tagQualification{
		min-width:64px;
		min-height:19px;
		font-size:1.2rem;
	}
	.c-text-timeRequired__location{
		font-size:1.6rem;
	}

	.c-text-timeRequired__locationName{
		font-size:2rem;
	}

	.c-text-timeRequired__time{
		font-size:1.6rem;
	}

	.c-text-timeRequired__timeValue{
		font-size:3rem;
	}
	.c-text-titleSteps__label{
		.c-text-titleSteps:not(.of-sizeFixed-sp) &{
			font-size:2rem;
			line-height:1.4;
		}

		.c-text-titleSteps.of-sizeFixed-sp &{
			font-size:1.8rem;
			line-height:1.38889;
		}
	}
	.c-carousel-spCentered{
		.swiper-wrapper{
			display:grid;
		}
	}

	.c-carousel-spCentered__button{
		&.swiper-button-next, &.swiper-button-prev{
			display:none;
		}
	}

	.c-carousel-spCentered__pagination.swiper-pagination{
		display:none;
	}
	.c-carousel-spImageGallery{
		.swiper-wrapper{
			display:grid;
		}
	}

	.c-carousel-spImageGallery__pagination.swiper-pagination{
		display:none;
	}
	.c-carousel-steps{
		margin-block:50px;
	}

	.c-carousel-steps__text{
		font-size:1.4rem;
	}
	.c-dialog-1{
		--max-width:820px;
	}

	.c-dialog-1__inner{
		padding:40px;
	}

	.c-dialog-1__placeButtonClose{
		position:absolute;
		top:-35px;
		right:-26px;
		width:24px;
		height:24px;
	}

	.c-dialog-1__buttonClose{
		&::before, &::after{
			height:4px;
		}
	}
			.u-pc-mt-0{
				margin-top:0 !important;
			}
			.u-pc-mt-5px{
				margin-top:5px !important;
			}
			.u-pc-mt-10px{
				margin-top:10px !important;
			}
			.u-pc-mt-15px{
				margin-top:15px !important;
			}
			.u-pc-mt-20px{
				margin-top:20px !important;
			}
			.u-pc-mt-25px{
				margin-top:25px !important;
			}
			.u-pc-mt-30px{
				margin-top:30px !important;
			}
			.u-pc-mt-35px{
				margin-top:35px !important;
			}
			.u-pc-mt-40px{
				margin-top:40px !important;
			}
			.u-pc-mt-45px{
				margin-top:45px !important;
			}
			.u-pc-mt-50px{
				margin-top:50px !important;
			}
			.u-pc-mt-55px{
				margin-top:55px !important;
			}
			.u-pc-mt-60px{
				margin-top:60px !important;
			}
			.u-pc-mt-65px{
				margin-top:65px !important;
			}
			.u-pc-mt-70px{
				margin-top:70px !important;
			}
			.u-pc-mt-75px{
				margin-top:75px !important;
			}
			.u-pc-mt-80px{
				margin-top:80px !important;
			}
			.u-pc-mt-85px{
				margin-top:85px !important;
			}
			.u-pc-mt-90px{
				margin-top:90px !important;
			}
			.u-pc-mt-95px{
				margin-top:95px !important;
			}
			.u-pc-mt-100px{
				margin-top:100px !important;
			}
			.u-pc-mb-0{
				margin-bottom:0 !important;
			}
			.u-pc-mb-5px{
				margin-bottom:5px !important;
			}
			.u-pc-mb-10px{
				margin-bottom:10px !important;
			}
			.u-pc-mb-15px{
				margin-bottom:15px !important;
			}
			.u-pc-mb-20px{
				margin-bottom:20px !important;
			}
			.u-pc-mb-25px{
				margin-bottom:25px !important;
			}
			.u-pc-mb-30px{
				margin-bottom:30px !important;
			}
			.u-pc-mb-35px{
				margin-bottom:35px !important;
			}
			.u-pc-mb-40px{
				margin-bottom:40px !important;
			}
			.u-pc-mb-45px{
				margin-bottom:45px !important;
			}
			.u-pc-mb-50px{
				margin-bottom:50px !important;
			}
			.u-pc-mb-55px{
				margin-bottom:55px !important;
			}
			.u-pc-mb-60px{
				margin-bottom:60px !important;
			}
			.u-pc-mb-65px{
				margin-bottom:65px !important;
			}
			.u-pc-mb-70px{
				margin-bottom:70px !important;
			}
			.u-pc-mb-75px{
				margin-bottom:75px !important;
			}
			.u-pc-mb-80px{
				margin-bottom:80px !important;
			}
			.u-pc-mb-85px{
				margin-bottom:85px !important;
			}
			.u-pc-mb-90px{
				margin-bottom:90px !important;
			}
			.u-pc-mb-95px{
				margin-bottom:95px !important;
			}
			.u-pc-mb-100px{
				margin-bottom:100px !important;
			}
	.u-sp-only{
		display:none !important;
	}
}
