@charset "UTF-8";

.p-kv, .p-kv__inner, .p-kv-lead{
	& > :first-child{
		margin-top:0 !important;
	}

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

.p-kv__inner{
	position:relative;
}

.p-kv-heading{
	margin-block:0;
}

.p-kv-heading__viewport{
	display:block;
}

.p-kv-heading__image{
	width:100%;
	vertical-align:bottom;
}

.p-kv-image{
	position:absolute;
	z-index:-1;
	top:0;
}

.p-kv-image__viewport{
	display:block;
}

.p-kv-image__image{
	width:100%;
	vertical-align:bottom;
}

.p-kv-lead{
	position:absolute;
	top:calc(290/var(--content-width)*100vw);
	right:75px;
	left:75px;
	max-width:375px;
	margin:auto;
	color:#fff;

	.c-text-lead__text{
		font-size:max(1.4rem, 3vw);
	}
}

.p-kv-anchorLink{
	position:relative;
	z-index:2;
	pointer-events:none;
}

.p-kv-anchorLink__inner{
	position:absolute;
	right:10px;
	bottom:-10px;
	left:10px;
	margin-inline:auto;
}

.p-kv-anchorLink__link{
	display:flex;
	max-width:10rem;
	min-height:10rem;
	flex-direction:column;
	align-items:center;
	justify-content:center;
	border:2px solid currentcolor;
	border-radius:50%;
	margin-left:auto;
	background-color:#fff;
	color:#c41b1f;
	pointer-events:auto;
	text-align:center;

	&:any-link{
		position:relative;
		padding-bottom:18px;
		-webkit-text-decoration:none;
		text-decoration:none;

		&::after{
			position:absolute;
			right:0;
			bottom:5px;
			left:0;
			display:block;
			width:20px;
			height:20px;
			border-radius:50%;
			margin:auto;
			background:url(../../common/img/bg_arrowBottom.svg) no-repeat 50% 50% / 10px 10px #aa0f13;
			content:"";
		}
	}
}

.p-kv-anchorLink__label{
	font-feature-settings:"palt";
	font-weight:700;
	line-height:1.1;
}

.p-kv-anchorLink__labelTitle{
	display:block;
	font-size:0.8rem;
}

.p-kv-anchorLink__labelDate{
	font-size:1.8rem;
}

.p-kv-anchorLink__labelUnit{
	font-size:1.4rem;
}

.p-main-specialEventList__list{
	margin-block:0;
}

.p-main-specialEventCard{
	&:any-link{
		pointer-events:none;
	}
}

.p-main-specialEventCard__areaImage{
	overflow:hidden;
	border:2px solid #c41b1f;
	border-radius:15px;
	pointer-events:auto;

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

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

.p-calendar{
	--controls-width:110px;

	margin:15px -5px 0;
}

.p-calendar__list{
	margin:0;
}

.p-calendar__caption{
	display:grid;
	align-items:end;
	color:#fff;
	font-weight:500;
	grid-template-columns:4em 1fr var(--controls-width) 1fr 4em;
	line-height:1;
}

.p-calendar__year{
	padding-bottom:10px;
	font-size:1.8rem;
	grid-column:5 / 6;
	grid-row:1 / 2;
	text-align:right;
}

.p-calendar__month{
	display:inline-flex;
	min-width:60px;
	min-height:70px;
	flex-direction:column;
	justify-content:center;
	padding-bottom:5px;
	border-radius:9em 9em 0 0;
	background-color:#b10d11;
	gap:5px;
	grid-column:3 / 4;
	grid-row:1 / 2;
	margin-inline:auto;
	text-align:center;
}

.p-calendar__monthNumber{
	font-size:3.8rem;
}

.p-calendar__monthName{
	font-size:1rem;
}

.p-calendar__calendar{
	overflow:hidden;
	border-radius:5px;
}

.p-calendar__table{
	width:100%;
	background-color:#e1e1e1;
	border-collapse:separate;
	border-spacing:1px 2px;
	margin-block:-1px;
	table-layout:fixed;
}

.p-calendar__head{
	color:#000;
	text-align:center;
}

.p-calendar__cell{
	padding:0;
	background-color:#fff;

	&.of-sunday{
		color:#c41b1f;
	}

	&.of-saturday{
		color:#6d2e9a;
	}

	.p-calendar__head &{
		font-weight:500;
	}
}

.p-calendar__cellInner{
	padding:4px;

	.p-calendar__body &{
		min-height:54px;
	}

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

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

.p-calendar__day{
	display:block;
	color:#d9d9d9;
	font-size:1.4rem;
	font-weight:500;
	line-height:1;
	margin-block:8px;
	text-align:center;

	.p-calendar__cell[aria-current="date"] &{
		color:#c41b1f;
	}

	.p-calendar__cell[aria-current="date"] ~ * &, .p-calendar__row:has([aria-current="date"]) ~ .p-calendar__row &, .p-calendar__body:not(:has([aria-current="date"])) &{
		color:#000;
	}
}

.p-calendar__tag{
	display:flex;
	min-height:14px;
	align-items:center;
	justify-content:center;
	padding:2px;
	border-radius:5px;
	color:#222;
	font-size:0.8rem;
	font-weight:500;
	letter-spacing:-0.1em;
	line-height:1.25;
	text-align:center;

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

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

	&.of-visiting{
		background-color:#ffd4de;
	}

	&.of-online{
		background-color:#bfebff;
	}
}

.p-calendar__button{
	&.swiper-button-next, &.swiper-button-prev{
		display:none;
	}
}

.p-main-openCampusLead{
	margin:30px 0;
	font-size:1.8rem;
	letter-spacing:0.1em;
	line-height:1.5;
	text-align:center;
}

.p-main-openCampusLead__inner{
	position:relative;
	display:inline-grid;
	padding:0 1em;
	gap:5px;
	margin-inline:1em;

	&::before, &::after{
		position:absolute;
		top:0.5em;
		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-main-openCampusLead__text{
	display:inline-flex;
	flex-wrap:wrap;
	justify-content:center;

	> b{
		font-weight:700;
	}
}

.p-main-openCampusLead__timeInfo{
	display:inline-flex;
	min-height:28px;
	flex-wrap:wrap;
	align-items:center;
	justify-content:center;
	padding:3px 10px;
	border-radius:5px;
	background-color:#fff;
	color:var(--font-color);
	font-feature-settings:"palt";
	font-size:1.4rem;
	gap:2px 5px;
	margin-inline:auto;
	text-align:center;

	> b{
		font-weight:700;
	}

	> small{
		font-size:1rem;
	}
}

.p-panel-visiting, .p-panel-visiting__offset, .p-panel-visiting__eventInfoData, .p-panel-visiting__eventInfoLayoutButtonItem{
	& > :first-child{
		margin-top:0 !important;
	}

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

.p-panel-visiting{
	display:flex;
	flex-direction:column;
	border-radius:20px;
	background-color:#fff;

	.c-layout-cardGrid__cell &{
		height:100%;
	}
}

.p-panel-visiting__offset{
	display:flex;
	flex:1;
	flex-direction:column;
	padding:27px;
}

.p-panel-visiting__eventInfo{
	display:grid;
	gap:10px;
	margin-block:15px;
}

.p-panel-visiting__eventInfoTitle{
	display:flex;
	min-height:23px;
	align-items:center;
	justify-content:center;
	padding-bottom:10px;
	border-bottom:1px solid #f3d1d2;
	gap:5px;
}

.p-panel-visiting__eventInfoDate{
	font-size:1.4rem;
	font-weight:700;
}

.p-panel-visiting__eventInfoTag{
	display:inline-flex;
	min-height:19px;
	align-items:center;
	justify-content:center;
	padding:3px 8px 4px;
	border-radius:3px;
	background-color:#c41b1f;
	color:#fff;
	font-size:1.1rem;
	font-weight:700;
	line-height:1;
	text-align:center;
}

.p-panel-visiting__eventInfoMenu{
	font-size:1.6rem;
	font-weight:700;
	text-align:center;
	word-break:auto-phrase;
}

.p-panel-visiting__eventInfoLayoutButton{
	display:grid;
	gap:10px;
	margin-block:15px;
}

.p-heading-balloon{
	margin-block:40px 20px;
	text-align:center;

	.c-text-titleSteps{
		display:inline-flex;
		border-color:#c41b1f;
		background-color:#c41b1f;
		color:#fff;

		&::before{
			background-color:#c41b1f;
		}
	}
}

.p-list-flow{
	margin-block:30px;
}

.p-list-flow__list, .p-list-flow__panel, .p-list-flow__image, .p-list-flow__text{
	& > :first-child{
		margin-top:0 !important;
	}

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

.p-list-flow__list{
	margin-block:0;
}

.p-list-flow__item{
	&:not(:last-child){
		position:relative;
		margin-bottom:40px;

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

.p-list-flow__panel{
	position:relative;
	display:grid;
	padding-top:17px;
	gap:10px;
}

.p-list-flow__title{
	position:absolute;
	z-index:1;
	top:0;
	right:0;
	left:0;
	display:flex;
	min-height:34px;
	flex-wrap:wrap;
	align-items:center;
	justify-content:center;
	padding:8px 10px;
	border-radius:9em;
	background-color:#c41b1f;
	color:#fff;
	font-size:1.4rem;
	gap:5px;
	line-height:1.28571;
	margin-inline:0.5em;
	text-align:center;
}

.p-list-flow__titleMark{
	display:inline-flex;
	width:18px;
	height:18px;
	flex-shrink:0;
	align-items:center;
	justify-content:center;
	padding-top:1px;
	border-radius:50%;
	background-color:#fff;
	color:#c41b1f;
	font-family:var(--font-en-roboto);
	line-height:1;
	text-align:center;
}

.p-list-flow__button{
	&.swiper-button-next, &.swiper-button-prev{
		display:none;
	}
}

.p-accordion-qa, .p-accordion-qa__title, .p-accordion-qa__titleMark, .p-accordion-qa__titleLabel, .p-accordion-qa__answer, .p-accordion-qa__answerMark, .p-accordion-qa__answerInner{
	& > :first-child{
		margin-top:0 !important;
	}

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

.p-accordion-qa{
	margin-top:8px;
}

.p-accordion-qa__title{
	position:relative;
	display:flex;
	min-height:70px;
	align-items:center;
	padding:24px 46px 24px 40px;
	border-radius:10px;
	background-color:#fff;
	cursor:pointer;

	&::-webkit-details-marker{
		display:none;
	}

	&::before, &::after{
		position:absolute;
		top:0;
		bottom:0;
		display:block;
		margin:auto;
		background-color:#c41b1f;
		content:"";
		pointer-events:none;
	}

	&::before{
		right:20px;
		width:16px;
		height:2px;
	}

	&::after{
		right:27px;
		width:2px;
		height:16px;
	}

	.p-accordion-qa[open] &{
		border-radius:10px 10px 0 0;

		&::after{
			height:0;
		}
	}
}

.p-accordion-qa__titleMark, .p-accordion-qa__answerMark{
	position:absolute;
	top:28px;
	left:20px;
	font-family:var(--font-en-roboto);
	font-size:1.8rem;
	font-weight:700;
	line-height:1;
}

.p-accordion-qa__titleMark{
	color:#c41b1f;
}

.p-accordion-qa__titleLabel{
	flex-grow:1;
	font-weight:700;
}

.p-accordion-qa__answer{
	position:relative;
	padding:24px 20px 24px 40px;
	border-radius:0 0 10px 10px;
	background-color:#f8f8f8;
}

.p-accordion-qa__answerInner{
	flex-grow:1;
}

.p-dialog-opencampus{
	--max-width:1214px;
}

.p-dialog-opencampus__inner{
	padding:0;
	border-radius:20px;
}

.p-dialog-opencampus__head{
	padding:15px;
	border:2px solid #fff;
	border-radius:20px 20px 0 0;
	background-color:#f3ead7;
	background-image:url(../img/index_bg_dialog__head_01.svg), url(../img/index_bg_dialog__head_02.svg);
	background-position:0 0, 100% 100%;
	background-repeat:no-repeat, no-repeat;
	background-size:68px 81px, 46px 39px;
	text-align:center;
}

.p-dialog-opencampus__body{
	padding:25px 30px 40px;
}

.p-dialog-opencampus__bodyOffset{
	max-width:960px;
	margin-inline:auto;

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

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

.p-dialog-opencampus__placeButtonClose{
	top:-10px;
	right:-10px;
	width:50px;
	height:50px;
}

.p-dialog-opencampus__buttonClose{
	border-radius:50%;
	background-color:#c41b1f;

	&::before, &::after{
		max-width:50%;
	}
}

.p-dialog-opencampus__eventInfoTitle{
	display:flex;
	flex-wrap:wrap;
	align-items:baseline;
	justify-content:center;
	padding:20px 15px 0;
	filter:drop-shadow(0 0 3px #f3ead7);
	font-size:1.6rem;
	font-weight:700;
	gap:5px 0;
	line-height:1.4;
}

.p-dialog-opencampus__eventInfoValueMonth, .p-dialog-opencampus__eventInfoValueDay{
	font-size:2.2rem;
}

.p-dialog-opencampus__eventTimezone{
	font-size:1.4rem;
	font-weight:400;
}

.p-dialog-opencampus__eventLayout{
	display:flex;
	flex-direction:column;
	margin-top:25px;
	gap:22px 20px;
}

.p-dialog-opencampus__eventTitle{
	position:relative;
	display:flex;
	flex:1;
	justify-content:center;
	padding:15px;
	border-radius:5px;
	background-color:#fffaef;
}

.p-dialog-opencampus__eventLabel{
	font-size:1.6rem;
	font-weight:700;
	line-height:1.4375;
}

.p-main-structure__decoration{
	display:none;

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

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

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

@media (hover: hover){
	.p-kv-anchorLink__link{
		&:any-link{
			transition:opacity 0.3s;

			&:hover{
				opacity:0.7;
			}
		}
	}
	.p-main-specialEventCard{
		&:any-link{
			transition:opacity 0.5s;

			&:hover{
				opacity:0.7;
			}
		}
	}
	.p-main-specialEventList__pagination{
		&.swiper-pagination{
			.swiper-pagination-bullet{
				&:not(.swiper-pagination-bullet-active){
					transition:opacity 0.5s;

					&:hover{
						opacity:0.7;
					}
				}
			}
		}
	}
	.p-calendar__tag{
		&:any-link{
			transition:opacity 0.3s;

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

@media (scripting: enabled){
	.p-main-specialEventList.swiper{
		padding-bottom:40px;
		margin-right:-20px;
		margin-left:-20px;
	}

	.p-main-specialEventList__pagination{
		&.swiper-pagination{
			bottom:0 !important;

			.swiper-pagination-bullet-active{
				background-color:#c41b1f;
			}
		}
	}
	.p-calendar{
		&.swiper{
			margin-inline:-5px;
		}
	}

	.p-calendar__item{
		background-color:#c41a20;

		&.swiper-slide{
			display:flex;
			height:auto;
			flex-direction:column;
		}
	}

	.p-calendar__button{
		&.swiper-button-next, &.swiper-button-prev{
			top:30px;
			display:flex;
			width:9px;
			height:10px;
			margin:0;
			background-color:#fff;

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

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

			&::after{
				display:none;
			}
		}

		&.swiper-button-next{
			right:calc(50% - var(--controls-width)/2);
			clip-path:polygon(0 0, 0% 100%, 100% 50%);
		}

		&.swiper-button-prev{
			left:calc(50% - var(--controls-width)/2);
			clip-path:polygon(100% 0, 0 50%, 100% 100%);
		}
	}

	.p-calendar__controlsLabel{
		position:absolute;
		z-index:-1;
		top:100%;
	}
	.p-list-flow{
		&.swiper{
			&:not(:has(.swiper-pagination-lock)){
				padding-bottom:50px;
				margin-inline:-20px;
			}
		}
	}

	.p-list-flow__item{
		&.swiper-slide{
			&:not(:last-child){
				margin-bottom:0;

				&::after{
					display:none;
				}

				.p-list-flow__image{
					position:relative;

					&::after{
						position:absolute;
						top:0;
						right:0;
						bottom:0;
						display:block;
						width:10px;
						height:30px;
						margin:auto;
						background-color:#c41b1f;
						clip-path:polygon(0% 0%, 100% 50%, 0% 100%);
						content:"";
						transform:translateX(calc(100% + 15px));
					}
				}
			}
		}
	}

	.p-list-flow__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);
			}
		}
	}

	.p-list-flow__pagination.swiper-pagination{
		.swiper-pagination-bullet{
			width:12px;
			height:12px;
			background-color:#d9d9d9;
			opacity:1;

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

@media (scripting: enabled) and (hover: hover){
	.p-calendar__button{
		&.swiper-button-next, &.swiper-button-prev{
			&:not(.swiper-button-disabled){
				transition:opacity 0.3s;

				&:hover{
					opacity:0.7;
				}
			}
		}
	}
	.p-list-flow__button{
		&.swiper-button-next, &.swiper-button-prev{
			&:not(.swiper-button-disabled){
				transition:opacity 0.5s;

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

@media (scripting: enabled) and (width > 767px){
	.p-calendar{
		&.swiper{
			margin-inline:auto;
		}
	}

	.p-calendar__button{
		&.swiper-button-next, &.swiper-button-prev{
			top:38px;
			width:18px;
			height:21px;
		}
	}
	.p-list-flow{
		&.swiper{
			&:not(:has(.swiper-pagination-lock)){
				padding-bottom:40px;
				margin-inline:0;
			}
		}
	}

	.p-list-flow__item{
		&.swiper-slide{
			&:not(:last-child){
				.p-list-flow__image{
					&::after{
						width:15px;
						height:40px;
						transform:translateX(calc(100% + 16px));
					}
				}
			}
		}
	}

	.p-list-flow__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);
			}
		}
	}
}

@media (width > 767px){
	.p-kv{
		position:relative;
	}

	.p-kv-lead{
		position:absolute;
		top:calc(624/var(--content-width)*100vw);
		right:225px;
		left:225px;
		max-width:618px;

		.c-text-lead__text{
			font-size:min(2rem, 1.8229vw);
		}
	}

	.p-kv-anchorLink{
		position:absolute;
		inset:50% 0 0;
	}

	.p-kv-anchorLink__inner{
		position:sticky;
		max-width:1420px;
		inset:0 0 auto;
		padding-inline:30px;
	}

	.p-kv-anchorLink__link{
		max-width:16rem;
		min-height:16rem;

		&:any-link{
			&::after{
				bottom:10px;
				width:28px;
				height:28px;
				background-size:13px 13px;
			}
		}
	}

	.p-kv-anchorLink__labelTitle{
		font-size:1.2rem;
	}

	.p-kv-anchorLink__labelDate{
		font-size:2.8rem;
	}

	.p-kv-anchorLink__labelUnit{
		font-size:2.2rem;
	}
	.p-main-specialEventCard__areaImage{
		border-width:3px;
		border-radius:20px;
	}
	.p-calendar{
		--controls-width:152px;

		max-width:820px;
		margin:30px auto 0;
	}

	.p-calendar__year{
		padding-bottom:15px;
		font-size:2rem;
	}

	.p-calendar__month{
		min-width:80px;
		min-height:84px;
		padding-bottom:8px;
		gap:8px;
	}

	.p-calendar__monthNumber{
		font-size:4.4rem;
	}

	.p-calendar__monthName{
		font-size:1.2rem;
	}

	.p-calendar__calendar{
		border-radius:10px;
	}

	.p-calendar__cellInner{
		padding:8px 13px;

		.p-calendar__body &{
			min-height:84px;
		}
	}

	.p-calendar__day{
		font-size:1.8rem;
		margin-block:12px;
	}

	.p-calendar__tag{
		min-height:20px;
		border-radius:3px;
		font-size:1.2rem;
		padding-inline:4px;

		& + &{
			margin-top:4px;
		}
	}
	.p-main-openCampusLead{
		margin:35px 0 45px;
		font-size:2.6rem;
	}

	.p-main-openCampusLead__inner{
		&::before, &::after{
			width:2px;
		}
	}

	.p-main-openCampusLead__timeInfo{
		min-height:44px;
		padding:8px 20px;
		font-size:1.8rem;

		> small{
			font-size:1.4rem;
		}
	}
	.p-panel-visiting{
		border-radius:17px;
	}

	.p-panel-visiting__offset{
		padding:20px;
	}

	.p-panel-visiting__eventInfoTitle{
		min-height:20px;
	}

	.p-panel-visiting__eventInfoDate{
		font-size:1.3rem;
	}

	.p-panel-visiting__eventInfoTag{
		min-height:17px;
		padding:3px 5px 4px;
		font-size:1rem;
	}
	.p-heading-balloon{
		margin-top:50px;
	}
	.p-list-flow{
		margin-block:45px;
	}

	.p-list-flow__item{
		&:not(:last-child){
			margin-bottom:46px;

			&::after{
				width:40px;
				height:15px;
				transform:translateY(calc(100% + 16px));
			}
		}
	}

	.p-list-flow__panel{
		padding-top:19px;
		gap:15px;
	}

	.p-list-flow__title{
		min-height:38px;
		padding:9px 10px;
		font-size:1.6rem;
		margin-inline:15px;
	}

	.p-list-flow__titleMark{
		width:22px;
		height:22px;
	}
	.p-accordion-qa{
		margin-top:20px;
	}

	.p-accordion-qa__title{
		min-height:74px;
		padding-inline:60px 70px;

		&::before{
			right:30px;
			width:20px;
		}

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

	.p-accordion-qa__titleMark, .p-accordion-qa__answerMark{
		top:25px;
		left:30px;
		font-size:2.8rem;
	}

	.p-accordion-qa__answer{
		padding-inline:60px 30px;
	}
	.p-dialog-opencampus__head{
		background-size:141px 189px, 163px 100px;
		padding-block:25px;
	}

	.p-dialog-opencampus__body{
		padding-block:30px 50px;
	}

	.p-dialog-opencampus__placeButtonClose{
		top:-20px;
		right:-20px;
		width:80px;
		height:80px;
	}

	.p-dialog-opencampus__buttonClose{
		border-radius:50%;
		background-color:#c41b1f;

		&::before, &::after{
			height:2px;
		}
	}

	.p-dialog-opencampus__eventInfoTitle{
		max-width:960px;
		padding:30px 0 15px;
		border-bottom:1px solid rgba(34, 34, 34, 0.2);
		font-size:2.2rem;
		gap:10px 0;
		margin-inline:auto;
	}

	.p-dialog-opencampus__eventInfoValueMonth, .p-dialog-opencampus__eventInfoValueDay{
		font-size:2.8rem;
	}

	.p-dialog-opencampus__eventTimezone{
		font-size:1.8rem;
	}

	.p-dialog-opencampus__eventLayout{
		max-width:960px;
		flex-direction:row;
		margin:30px auto 0;
		grid-template-columns:repeat(2, 1fr);
	}

	.p-dialog-opencampus__eventTitle{
		padding:30px 20px 20px;
		border-radius:10px;
	}

	.p-dialog-opencampus__eventLabel{
		font-size:2rem;
	}

	.p-box-tagCourseGroup{
		--height:32px;
	}

	.p-text-tagCourse{
		font-size:1.5rem;
	}
	.p-main-structure__decoration{
		position:absolute;
		display:block;

		&.of-setting-1-1{
			top:calc(75/var(--content-width)*100vw);
			right:calc(290/var(--content-width)*100vw);
			max-width:calc(114/var(--content-width)*100vw);
		}

		&.of-setting-1-2{
			top:calc(175/var(--content-width)*100vw);
			left:calc(63/var(--content-width)*100vw);
			max-width:calc(131/var(--content-width)*100vw);
		}

		&.of-setting-1-3{
			top:calc(175/var(--content-width)*100vw);
			right:calc(70/var(--content-width)*100vw);
			max-width:calc(175/var(--content-width)*100vw);
		}

		&.of-setting-2-1{
			top:calc(140/var(--content-width)*100vw);
			left:0;
			max-width:calc(154/var(--content-width)*100vw);
		}

		&.of-setting-2-2{
			top:calc(150/var(--content-width)*100vw);
			right:calc(-25/var(--content-width)*100vw);
			max-width:calc(268/var(--content-width)*100vw);
		}

		&.of-setting-2-3{
			top:calc(260/var(--content-width)*100vw);
			left:calc(245/var(--content-width)*100vw);
			max-width:calc(115/var(--content-width)*100vw);
		}

		&.of-setting-2-4{
			top:calc(245/var(--content-width)*100vw);
			right:calc(270/var(--content-width)*100vw);
			max-width:calc(88/var(--content-width)*100vw);
		}

		&.of-setting-3-1{
			top:calc(115/var(--content-width)*100vw);
			left:calc(72/var(--content-width)*100vw);
			max-width:calc(159/var(--content-width)*100vw);
		}

		&.of-setting-3-2{
			top:calc(120/var(--content-width)*100vw);
			right:calc(75/var(--content-width)*100vw);
			max-width:calc(150/var(--content-width)*100vw);
		}

		&.of-setting-3-3{
			top:calc(316/var(--content-width)*100vw);
			left:calc(259/var(--content-width)*100vw);
			max-width:calc(110/var(--content-width)*100vw);
		}

		&.of-setting-3-4{
			top:calc(255/var(--content-width)*100vw);
			right:calc(264/var(--content-width)*100vw);
			max-width:calc(129/var(--content-width)*100vw);
		}

		&.of-setting-4-1{
			top:calc(110/var(--content-width)*100vw);
			left:calc(70/var(--content-width)*100vw);
			max-width:calc(160/var(--content-width)*100vw);
		}

		&.of-setting-4-2{
			top:calc(120/var(--content-width)*100vw);
			right:calc(65/var(--content-width)*100vw);
			max-width:calc(141/var(--content-width)*100vw);
		}

		&.of-setting-4-3{
			top:calc(232/var(--content-width)*100vw);
			left:calc(287/var(--content-width)*100vw);
			max-width:calc(87/var(--content-width)*100vw);
		}

		&.of-setting-4-4{
			top:calc(240/var(--content-width)*100vw);
			right:calc(245/var(--content-width)*100vw);
			max-width:calc(102/var(--content-width)*100vw);
		}

		&.of-setting-5-1{
			top:calc(163/var(--content-width)*100vw);
			left:calc(121/var(--content-width)*100vw);
			max-width:calc(129/var(--content-width)*100vw);
		}

		&.of-setting-5-2{
			top:calc(137/var(--content-width)*100vw);
			right:calc(90/var(--content-width)*100vw);
			max-width:calc(172/var(--content-width)*100vw);
		}

		&.of-setting-6-1{
			top:calc(165/var(--content-width)*100vw);
			left:calc(76/var(--content-width)*100vw);
			max-width:calc(175/var(--content-width)*100vw);
		}

		&.of-setting-6-2{
			top:calc(145/var(--content-width)*100vw);
			right:calc(65/var(--content-width)*100vw);
			max-width:calc(195/var(--content-width)*100vw);
		}
	}
}
