@charset "UTF-8";

/* ----- FMT ----- */
.info_wrap,
.footer_container {
	font-family: 'Noto Sans JP', "游ゴシック体", YuGothic, "游ゴシック", "Yu Gothic", "Hiragino Kaku Gothic Pro", "ヒラギノ角ゴ Pro W3", "メイリオ", "Meiryo", "ＭＳ Ｐゴシック", "Arial", "Verdana", "sans-serif";
	font-size: 16px;
	color: #000;
	line-height: 1.5;
	font-weight: 400;
}
img {
	display: block;
	width: 100%;
}
.content_wrap {
	color: var(--txt-color);
	font-family: 'Noto Sans JP', sans-serif;
	font-size: 16px;
	line-height: 1.5;
	font-weight: 400;
	margin-top: 66px;
	width: 100%;
	position: relative;
	z-index: 0;
	*,*::before,*::after {
		box-sizing: border-box;
	}
}
.content-inner {
	width: 94.67%;
	margin-inline: auto;
	max-width: 980px;
}
figure {
	margin: 0 auto;
    width: 100%;
}
:root {
	--txt-color: #143058;
	--primary-color: #CB8300;
	--font-zen: "Zen Maru Gothic","Noto Sans JP",sans-serif;
}
.txt-link{
	color: var(--primary-color);
	text-decoration: underline;
	font-weight: 700;
	transition: .3s;
	&:hover {
		opacity: .5;
	}
}
.note-list__items {
	font-size: 12px;
	line-height: 1.58;
	letter-spacing: .02em;
}

/* ----- 汎用 ----- */
/* cta */
.cta-wrapper {
	max-width: 640px;
	margin-inline: auto;
}
.cta-btn {
	display: block;
	background: var(--txt-color);
	border: 2px solid #fff;
	border-radius: 16px;
	padding: 14px 13px 18px;
	color: #F5B136;
	font-size: 26px;
	font-weight: 900;
	font-family: var(--font-zen);
	text-align: center;
	margin-bottom: 16px;
	box-shadow: 0 3px 6px rgb(0 0 0/.16);
	&:active .cta-btn__ribbon {
		translate: 16px;
	}
}
.cta-btn__ribbon {
	display: block;
	width: 92.1%;
	margin: 6px auto 0;
	background: #fff;
	clip-path: polygon(0 0,calc(100% - 14px) 0,100% 50%,calc(100% - 14px) 100%,0 100%);
	color: var(--txt-color);
	font-size: 23px;
	padding-bottom: 2px;
	transition: .3s;
}
.qr-wrapper {
	display: grid;
	grid-template-columns: 1fr 100px;
	gap: 16px;
	background: #143058;
	border: 2px solid #fff;
	border-radius: 16px;
	box-shadow: 0 3px 6px rgb(0 0 0/.16);
	padding: 14px;
	margin-bottom: 16px;
	font-weight: 700;
	font-family: var(--font-zen);
}
.qr-ttl {
	background: #fff;
	clip-path: polygon(0 0,calc(100% - 14px) 0,100% 50%,calc(100% - 14px) 100%,0 100%);
	text-align: center;
	font-size: 18px;
	padding-block: 6px;
	margin-bottom: 8px;
}
.qr-txt {
	color: #F5B136;
	font-size: 16px;
	line-height: 1.5;
}
/* acc */
.acc__btn {
	display: block;
	width: fit-content;
	margin: 32px auto 0;
	padding: 3px 36px 5px 16px;
	background: #fff;
	font-weight: 700;
	letter-spacing: .02em;
	list-style: none;
	border-radius: 10vh;
	position: relative;
	cursor: pointer;
}
.acc__btn::-webkit-details-marker {
	display:none;
}
.acc__ico {
	display: block;
	width: 21px;
	height: 21px;
	position: absolute;
	top: 6px;
	right: 11px;
	background: var(--txt-color);
	border-radius: 50%;
	&::before,&::after {
		content: "";
		display: block;
		width: 12px;
		height: 2px;
		background: #fff;
		position: absolute;
		top: 50%;
		left: 50%;
		translate: -50% -50%;
	}
	&::after {
		rotate: 90deg;
		transition: rotate .3s;
	}
}
.acc[open] .acc__ico::after {
	rotate: 0deg;
}
.acc__content {
	max-width: 640px;
	margin: 11px auto 0;
	background: rgb(255 255 255/.6);
    transition: .6s ease-in-out;
	height: 0;
	overflow: hidden;
}
.acc__content__inner {
	padding: 16px 15px;
}
/* date */
.date {
	font-family: var(--font-zen)
}
.date__ttl {
	color: #fff;
	font-size: 14px;
	font-weight: 700;
	line-height: 1.43;
	letter-spacing: .02em;
	text-align: center;
	background: var(--txt-color);
	margin-bottom: 2px;
}
.date__dtl {
	font-size: 26px;
	font-weight: 700;
	line-height: 1;
	letter-spacing: .02em;
	text-align: center;
}
.date__dtl__small-txt {
	font-size: 15px;
	letter-spacing: .02em;
}
.date-note {
	font-size: 12px;
	line-height: 1.5;
	letter-spacing: .02em;
	margin-bottom: 30px;
}
/* animate */
.js-animate {
	opacity: 0;
	transition: .8s ease .1s;
}
.js-animate--active {
	opacity: 1;
}
/* to-top */
.to-top {
	display: block;
	width: 64px;
	height: 64px;
	position: fixed;
	right: 20px;
	bottom: 20px;
	background: #143058;
	border-radius: 50%;
	border: 2px solid #fff;
	box-shadow: 0 3px 6px rgb(0 0 0/.16);
	color: #F5B136;
	font-size: 14px;
	letter-spacing: -.05em;
	font-weight: 600;
	text-align: center;
	padding-block: 26px 0;
	opacity: 0;
	pointer-events: none;
	visibility: hidden;
	transition: .8s ease;
	&::before {
		content: "";
		display: block;
		width: 11px;
		height: 11px;
		border-left: 2px solid #fff;
		border-top: 2px solid #fff;
		rotate: 45deg;
		position: absolute;
		top: 14px;
		left: 50%;
		translate: -50% 0;
	}
	&.shown {
		opacity: 1;
		visibility: visible;
		pointer-events: auto;
	}
}
/* comingsoon & finish */
.comingsoon,.finish {
	position: relative;
	pointer-events: none;
	overflow: hidden;
	&::after {
		content: "Coming Soon";
		display: grid;
		place-content: center;
		background: rgb(255 255 255/.9);
		color: #000;
		font-size: 8vw;
		font-weight: 700;
		text-align: center;
		line-height: 1.2;
		position: absolute;
		inset: 0;
	}
}
/* finish */
.finish-txt {
	border: 2px solid #ff0000;
	background: #fff;
	padding-block: 8px;
	color: #ff0000;
	font-size: 18px;
	font-weight: 700;
	text-align: center;
	margin-block: 16px;
}
.finish::after {
	content: "終了しました";
	border: 2px solid #ff0000;
	color: #ff0000;
	font-size: 18px;
	width: 90%;
	height: 90%;
	left: 50%;
	top: 50%;
	translate: -50% -50%;
}

/* ----- common-bg ----- */
.common-bg {
	background: linear-gradient(45deg, #D9CFCE,#D9D0E5,#D9CFCE,#D9D0E5) fixed center/700% 700%;
	animation: bg-animate 6s ease infinite;
}
@keyframes bg-animate {
	0% {
		background-position: 0% 50%;
	}
	50% {
		background-position: 100% 50%;
	}
	100% {
		background-position: 0% 50%;
	}
}

/* ----- mv ----- */
.mv {
	margin-bottom: 24px;
}

/* ----- lead-txt ----- */
.lead-txt {
	background: rgb(20 48 88/.6);
	color: #fff;
	font-weight: 500;
	line-height: 1.875;
	letter-spacing: .07em;
	padding: 24px 10px;
	margin-bottom: 40px;
}

/* ----- sec--toc ----- */
.sec--toc {
	margin-bottom: 40px;
}
.sec--toc__ttl {
	width: 94.67%;
	margin: 0 auto 24px;
}
.sec--toc__list {
	display: grid;
	gap: 10px;
}
.sec--toc__list__link {
	display: grid;
	align-content: center;
	width: 93.87%;
	border: 3px solid var(--txt-color);
	min-height: 84px;
	padding-block: 7px;
	color: var(--txt-color);
	font-size: 21px;
	font-weight: 700;
	line-height: 1;
	letter-spacing: .07em;
	text-align: center;
	transition: .3s;
	position: relative;
	&::after {
		content: "";
		display: block;
		width: 19px;
		height: 12px;
		background: var(--txt-color);
		clip-path: polygon(0 0,100% 0,50% 100%);
		position: absolute;
		top: 50%;
		translate: 0 calc(-50% + 3px);
	}
	&:hover {
		background: #fff;
	}
}
.sec--toc__list__items:nth-child(odd) .sec--toc__list__link {
	border-left: 0;
	padding-inline: 11px 30px;
	border-radius: 0 10vh 10vh 0;
	&::after {
		right: 11px;
	}
}
.sec--toc__list__items:nth-child(2) .sec--toc__list__link {
	border-right: 0;
	padding-inline: 30px 11px;
	margin-inline: auto 0;
	border-radius: 10vh 0 0 10vh;
	letter-spacing: .025em;
	&::after {
		left: 11px;
	}
}
.sec--toc__list__link__small-txt {
	font-size: 14px;
	letter-spacing: .025em;
	line-height: 1;
}

/* ----- sec--talk ----- */
.sec--talk {
	margin-bottom: 49px;
}
.sec--talk__ttl {
	margin-bottom: 17px;
}
.sec--talk__date {
	margin-bottom: 8px;
}
.sec--talk__img {
	width: 80%;
	margin: 0 auto 20px;
}
.sec--talk__img-caption {
	font-size: 14px;
	font-weight: 500;
	letter-spacing: .02em;
	text-align: center;
	margin-top: 8px;
}
.sec--talk__img-caption__name {
	font-size: 16px;
	font-weight: 700;
	letter-spacing: .02em;
	margin-left: 8px;
}
.sec--talk-schedule__ttl {
	font-size: 48px;
	font-weight: 500;
	font-family: var(--font-zen);
	line-height: 1;
	letter-spacing: .02em;
	width: fit-content;
	margin: 0 auto 12px -3.2vw;
	padding-inline: 3.2vw 63px;
	position: relative;
	&::after {
		content: "";
		display: block;
		width: 100%;
		height: 1px;
		background: var(--txt-color);
		position: absolute;
		bottom: 3px;
		left: 0;
	}
}
.sec--talk-schedule__list {
	display: grid;
	gap: 8px;
	width: fit-content;
	margin: 0 auto 18px;
}
.sec--talk-schedule__list__items {
	display: grid;
	grid-template-columns: 42px 1fr;
	align-items: center;
}
.sec--talk-schedule__list__items--guest {
	margin-bottom: 16px;
}
.sec--talk-schedule__list__num {
	font-size: 18px;
	font-weight: 900;
	font-family: var(--font-zen);
	letter-spacing: .02em;
	min-width: 20px;
	&::after {
		content: ":";
		margin-inline: 8px;
	}
}
.sec--talk-schedule__list__date {
	display: flex;
	font-size: 14px;
	font-family: var(--font-zen);
	font-weight: 700;
}
.sec--talk-schedule__list__date__start {
	min-width: 135px;
}
.sec--talk-schedule__list__date__finish::before {
	content: "～";
	margin-inline: 6px;
}
.sec--talk-schedule__list__date__kanji {
	font-size: 12px;
	font-family: "Noto Sans JP",sans-serif;
}
.sec--talk-schedule__list__date__large-txt {
	font-size: 21px;
}
.sec--talk-schedule__list__items__img-wrapper {
	grid-area: 2/1/3/3;
	display: grid;
	grid-template-columns: 136px auto;
	align-items: center;
	justify-content: center;
	gap: 16px;
	margin-top: 8px;
}
.sec--talk-schedule__list__items__img-caption {
	font-size: 14px;
	font-weight: 500;
	letter-spacing: .02em;
}
.sec--talk-schedule__list__items__img-caption__name {
	display: block;
	font-size: 18px;
	font-weight: 700;
	letter-spacing: .02em;
}

/* ----- sec--present ----- */
.sec--present {
	padding-bottom: 56px;
}
.sec--present__ttl {
	margin-bottom: 24px;
}
.sec--present__date {
	margin-bottom: 14px;
}
.sec--present__txt {
	font-size: 15px;
	font-weight: 500;
	line-height: 1.6;
	letter-spacing: .02em;
	margin-bottom: 14px;
}
.sec--present__note-list {
	margin-bottom: 58px;
}
.sec--present__list {
	display: grid;
	gap: 50px;
	margin: 0 15px 32px;
}
.sec--present__list__ttl {
	font-family: var(--font-zen);
	text-align: center;
	position: relative;
}
.sec--present__list__ttl__balloon {
	width: fit-content;
	padding: 7px 10px;
	background: #fff;
	border-radius: 10vh;
	font-weight: 900;
	position: absolute;
	&::after {
		content: "";
		width: 10px;
		height: 9px;
		background: #fff;
		clip-path: polygon(0 0,calc(100% - 1px) 0,100% 100%);
		position: absolute;
		bottom: -8px;
		right: 30px;
	}
}
.sec--present__list__ttl__small-txt {
	display: block;
	font-weight: 900;
}
.sec--present__list__ttl__marker {
	font-size: 28px;
	font-weight: 900;
	line-height: 1.29;
	background: linear-gradient(to top,transparent 3px,#F5B136 3px,#F5B136 13px,transparent 13px);
}
.sec--present__list__ttl__date {
	display: block;
	font-weight: 500;
}
.sec--present__list__dtl {
	position: relative;
}
.sec--present__list__row--bag {
	.sec--present__list__ttl {
		margin-bottom: 22px;
	}
	.sec--present__list__ttl__balloon {
		top: -18px;
		left: calc(50% - 154px);
		&::after {
			right: 18px;
		}
	}
	.sec--present__list__ttl__date {
		margin-top: 3px;
	}
	.sec--present__list__dtl__badge {
		top: -20px;
	}
}
.sec--present__list__row--speaker {
	.sec--present__list__ttl {
		margin-bottom: 27px;
	}
	.sec--present__list__ttl__balloon {
		top: -18px;
		left: calc(50% - 156px);
		padding: 7px 7px 7px 10px;
		&::after {
			right: 18px;
		}
	}
	.sec--present__list__ttl__date {
		margin-top: 2px;
	}
	.sec--present__list__dtl__badge {
		top: -20px;
	}
}
.sec--present__list__dtl__badge {
	width: 85px;
	height: 85px;
	align-content: center;
	color: #fff;
	font-size: 12px;
	font-weight: 700;
	text-align: center;
	background: #993030;
	border-radius: 50%;
	position: absolute;
	left: -15px;
}
.sec--present__list__dtl__badge__middle-txt {
	font-size: 16px;
}
.sec--present__list__dtl__badge__large-txt {
	font-size: 20px;
	line-height: 1;
}
.sec--present__list__dtl__ticket {
	background: #fff;
	padding: 20px 15px 27px;
	margin-bottom: 8px;
}
.sec--present__list__dtl__list {
	display: grid;
	gap: 12px;
	margin-top: 14px;
}
.sec--present__list__dtl__list__row {
	display: grid;
	gap: 4px;
}
.sec--present__list__dtl__list__ttl {
	color: #fff;
	font-size: 15px;
	font-weight: 500;
	letter-spacing: .02em;
	text-align: center;
	padding-block: 2px;
	background: #29466F;
	border-radius: 100vh;
}
.sec--present__list__dtl__list__dtl {
	color: #29466F;
	font-size: 15px;
	line-height: 1.2;
	text-align: center
}
.sec--present__list__dtl__img__note {
	font-size: 12px;
	letter-spacing: .02em;
	text-align: right;
	margin-top: 4px;
}
.sec--present__list__dtl__anchor-link-wrapper {
	font-size: 12px;
	letter-spacing: .02em;
	text-align: center;
}
.sec--present__list__dtl__anchor-link {
	color: var(--txt-color);
	font-size: 16px;
	font-weight: 500;
	letter-spacing: .02em;
	text-decoration: underline;
	transition: .3s;
	&:hover {
		opacity: .5;
	}
}
.sec--present__btn-wrapper {
	margin-bottom: 24px;
}
.sec--present__btn {
	font-size: 25px;
}
.sec--present__btn-note {
	font-size: 12px;
	letter-spacing: .02em;
	text-align: center;
}
.sec--present-flow__ttl {
	background: var(--txt-color);
	color: #fff;
	font-size: 14px;
	font-weight: 700;
	letter-spacing: .02em;
	text-align: center;
	padding-block: 3px;
}
.sec--present-flow__list {
	padding: 9px;
	border: 1px solid var(--txt-color);
	margin-bottom: 16px;
}
.sec--present-flow__list__items:not(:last-child) {
	padding-bottom: 10px;
	margin-bottom: 10px;
	border-bottom: 1px solid var(--txt-color);
}
.sec--present-flow__list__list__ttl {
	font-weight: 700;
	letter-spacing: .07em;
}
.sec--present-flow__list__list__dtl {
	font-size: 14px;
	line-height: 1.5;
	letter-spacing: .07em;
	padding-right: 15px;
}
.sec--present-flow__list__list__dtl__marker {
	font-weight: 700;
	background: linear-gradient(to top,#F5B136 7px,transparent 7px);
}
.sec--present-flow__list__list__dtl__note {
	display: block;
	font-size: 12px;
}

/* ----- sec--program ----- */
.sec--program {
	padding-block: 41px 56px;
	background: url(../img/bg_program.png) repeat 0 0/19px 19px,
				#4D6890;
}
.sec--program__marquee {
	border-block: 1px solid #A4B3C9;
	padding-block: 8px 6px;
	display: flex;
	gap: 12px;
	overflow: hidden;
	margin-bottom: 32px;
}
.sec--program__marquee__list {
	display: flex;
	gap: 12px;
	animation: marquee 20s linear infinite;
	img {
		width: 70px;
		max-width: none;
	}
}
@keyframes marquee {
	0% {
		translate: 0;
	}
	100% {
		translate: -100%;
	}
}
.sec--program__content-inner {
	width: 86.4%;
}
.sec--program__ttl {
	color: #fff;
	font-size: 20px;
	font-weight: 700;
	letter-spacing: .02em;
	text-align: center;
	background: var(--txt-color);
	border-radius: 10vh;
	padding-top: 1px;
	margin-bottom: 16px;
}
.sec--program__img {
	width: 95.38%;
	margin: 0 auto 16px;
}
.sec--program__list {
	display: grid;
	gap: 16px;
	margin-bottom: 16px;
}
.sec--program__list__row {
	display: grid;
	gap: 4px;
}
.sec--program__list__ttl {
	color: #fff;
	font-weight: 700;
	letter-spacing: .02em;
	text-align: center;
	padding-bottom: 1px;
	background: var(--txt-color);
	border-radius: 10vh;
}
.sec--program__list__dtl {
	color: #fff;
	text-align: center;
}
.sec--program__btn-wrapper {
	margin-bottom: 32px;
}
.sec--program__btn {
	display: block;
	background: url(../img/bg_program02.png) no-repeat top 17px left 10px/68px auto,
				url(../img/bg_program02.png) no-repeat top 17px right 10px/68px auto,
				#F79F27;
	border-radius: 8px;
	color: var(--txt-color);
	font-size: 18px;
	font-weight: 700;
	line-height: 1.28;
	letter-spacing: .02em;
	text-align: center;
	padding-block: 12px;
	margin-bottom: 10px;
	transition: .3s;
	&:hover {
		color: #F79F27;
		background-color: var(--txt-color);
	}
}
.sec--program__btn-note {
	color: #fff;
	font-size: 12px;
	letter-spacing: .02em;
	text-align: center;
	margin-bottom: 8px;
}
.sec--program__btn-note--message {
	color: #fff;
	font-size: 12px;
	text-align: center;
}
.sec--program__btn-note--message__link {
	color: #fff;
	font-weight: 700;
}
.sec--program__box {
	background: #fff;
	border-radius: 8px;
	padding: 31px 15px 36px;
	position: relative;
	&::before {
		content: "";
		display: block;
		width: calc(100% - 16px);
		height: calc(100% - 16px);
		border: 1px solid var(--txt-color);
		border-radius: 5px;
		position: absolute;
		top: 50%;
		left: 50%;
		translate: -50% -50%;
		pointer-events: none;
	}
}
.sec--program__box__img {
	margin-bottom: 9px;
}
.sec--program__box__list {
	display: grid;
	gap: 12px;
	margin-bottom: 12px;
}
.sec--program__box__list__row {
	display: grid;
	gap: 4px;
}
.sec--program__box__list__ttl {
	color: #fff;
	font-size: 15px;
	font-weight: 500;
	letter-spacing: .02em;
	text-align: center;
	padding-block: 2px;
	background: #29466F;
	border-radius: 10vh;
}
.sec--program__box__list__dtl {
	font-size: 15px;
	line-height: 1.2;
	text-align: center;
	.note-list {
		margin-top: 4px;
	}
	.note-list__items {
		text-align: left;
	}
}
.sec--program__box__comingsoon {
	font-size: 20px;
	font-weight: 700;
	text-align: center;
	margin-bottom: 30px;
}
.sec--program__box__btn {
	display: block;
	color: var(--txt-color);
	font-size: 18px;
	font-weight: 700;
	letter-spacing: .02em;
	text-align: center;
	padding-block: 17px;
	background: #F79F27;
	border-radius: 8px;
	margin-bottom: 10px;
	transition: .3s;
	&:hover {
		color: #F79F27;
		background: var(--txt-color);
	}
}
.sec--program__box__btn-note {
	font-size: 12px;
	letter-spacing: .02em;
	text-align: center;
}

/* ----- footer ----- */
/* info_wrap */
.info_wrap {
	margin: 0 auto;
	padding: 8px 40px 20px;
	position: relative;
	background-color: #FFF;
}
.oshitabi_btn {
	display: block;
	border: 4px solid #000;
	background: #FFF;
	max-width: 740px;
	margin: 32px auto 0;
	font-size: 18px;
	font-weight: 700;
	font-family: "Zen Kaku Gothic New", sans-serif;
	text-align: center;
	border-radius: 10px;
	padding: 10px 30px 10px 5px;
	position: relative;
	transition: all .3s;
	&::after {
		content: "";
		position: absolute;
		top: 50%;
		right: 30px;
		height: 12px;
		width: 12px;
		border-top: 3px solid #000;
		border-right: 3px solid #000;
		translate: 0 -50%;
		rotate: 45deg;
		transition: all .3s;
	}
	&:hover {
		background: var(--txt-color);
		color: #F79F27;
		border-color: var(--txt-color);
		&::after {
			border-color: #F79F27;
		}
	}
}
.credit {
	text-align: center;
	margin-top: 16px;
	font-size: 12px;
}
.footer_container {
	position: relative;
	z-index: 100;
	background-color: #FFF;
	padding-top: 1px;
}
/* ----- mediaquery ----- */
@media(min-width:751px){
	.sp {
		display: none;
	}
	/* ----- FMT ----- */
	.content_wrap {
		margin-top: 90px;
	}

	/* ----- 汎用 ----- */
	/* cta */
	.cta-btn:hover .cta-btn__ribbon {
		translate: 16px;
	}
	/* date */
	.date {
		max-width: 640px;
		margin-inline: auto;
	}
	.date__ttl {
		font-size: 18px;
		margin-bottom: 4px;
	}
	.date__dtl {
		font-size: 32px;
	}
	.date__dtl__small-txt {
		font-size: 20px;
	}
	.date-note {
		text-align: center;
	}
	/* comingsoon */
	.comingsoon::after {
		font-size: 18px;
	}
	.finish::after {
		white-space: pre;
		content: "終了\Aしました";
	}

	/* ----- mv ----- */
	.mv {
		max-width: 1100px;
		margin: 0 auto 48px;
	}

	/* ----- lead-txt ----- */
	.lead-txt {
		background: rgb(20 48 88/.5);
		font-weight: 700;
		text-align: center;
		padding: 24px 10px;
		max-width: 700px;
		margin: 0 auto 48px;
	}

	/* ----- sec--toc ----- */
	.sec--toc {
		max-width: 980px;
		margin: 0 auto 96px;
	}
	.sec--toc__ttl {
		max-width: 355px;
		margin: 0 auto 32px;
	}
	.sec--toc__list {
		grid-template-columns: repeat(3,1fr);
	}
	.sec--toc__list__link {
		width: 100%;
	}
	.sec--toc__list__items:nth-child(odd) .sec--toc__list__link {
		padding-inline: 32px;
		border: 3px solid var(--txt-color);
		border-radius: 10vh;
		&::after {
			right: 11px;
		}
	}
	.sec--toc__list__items:nth-child(2) .sec--toc__list__link {
		padding-inline: 32px;
		border: 3px solid var(--txt-color);
		border-radius: 10vh;
		letter-spacing: .07em;
		&::after {
			left: auto;
			right: 11px;
		}
	}

	/* ----- sec--talk ----- */
	.sec--talk {
		margin-bottom: 96px;
	}
	.sec--talk__ttl {
		max-width: 672px;
		margin: 0 auto 32px;
	}
	.sec--talk__img {
		max-width: 420px;
		margin: 0 auto 30px;
	}
	.sec--talk__img-caption {
		font-size: 18px;
		margin-top: 12px;
	}
	.sec--talk__img-caption__name {
		font-size: 22px;
	}
	.sec--talk-schedule {
		max-width: 640px;
		margin-inline: auto;
	}
	.sec--talk-schedule__ttl {
		font-size: 64px;
		line-height: 1;
		margin-left: 0;
		padding-inline: 0 63px;
		&::after {
			bottom: 3px;
		}
	}
	.sec--talk-schedule__list {
		margin-bottom: 32px;
	}
	.sec--talk-schedule__list__items {
		grid-template-columns: 42px 1fr;
	}
	.sec--talk-schedule__list__items--guest {
		margin-bottom: 16px;
	}
	.sec--talk-schedule__list__num {
		font-size:  22px;
	}
	.sec--talk-schedule__list__date {
		font-size: 22px;
	}
	.sec--talk-schedule__list__date__start {
		min-width: 191px;
	}
	.sec--talk-schedule__list__date__kanji {
		font-size: 20px;
	}
	.sec--talk-schedule__list__date__large-txt {
		font-size: 30px;
	}
	.sec--talk-schedule__list__items__img-wrapper {
		grid-template-columns: 160px auto;
	}
	.sec--talk-schedule__list__items__img-caption {
		font-size: 18px;
	}
	.sec--talk-schedule__list__items__img-caption__name {
		font-size: 22px;
	}

	/* ----- sec--present ----- */
	.sec--present {
		padding-bottom: 96px;
	}
	.sec--present__ttl {
		max-width: 636px;
		margin: 0 auto 32px;
	}
	.sec--present__date {
		margin-bottom: 24px;
	}
	.sec--present__txt {
		font-size: 18px;
		text-align: center;
		margin-bottom: 14px;
	}
	.sec--present__note-list {
		width: fit-content;
		margin-inline: auto;
	}
	.sec--present__list {
		max-width: 520px;
		margin: 0 auto 32px;
	}
	.sec--present__list__dtl__list__ttl {
		font-size: 16px;
		padding-block: 4px;
	}
	.sec--present__list__dtl__list__dtl {
		font-size: 16px;
		text-align: left;
	}
	.sec--present__list__dtl__list__dtl--one-line {
		padding-block: 6px;
	}
	.sec--present__list__dtl__ticket {
		padding: 30px;
	}
	.sec--present__list__row--bag .sec--present__list__dtl__badge {
		top: -25px;
	}
	.sec--present__list__row--speaker .sec--present__list__dtl__badge {
		top: -25px;
	}
	.sec--present__list__dtl__list__row {
		display: grid;
		grid-template-columns: 112px 1fr;
		gap: 16px;
		align-items: start;
	}
	.sec--present__list__dtl__img--ticket {
		max-width: 480px;
		margin-inline: auto;
	}

	.sec--present__btn-wrapper {
		max-width: 400px;
		margin: 0 auto 40px;
	}
	.sec--present-flow {
		max-width: 640px;
		margin-inline: auto;
	}
	.sec--present-flow__ttl {
		font-size: 18px;
		padding-block: 6px;
	}
	.sec--present-flow__list {
		padding: 16px;
	}
	.sec--present-flow__list__items:not(:last-child) {
		padding-bottom: 16px;
		margin-bottom: 16px;
	}
	.sec--present-flow__list__list__ttl {
		font-size: 20px;
	}
	.sec--present-flow__list__list__dtl {
		font-size: 16px;
	}

	/* ----- sec--program ----- */
	.sec--program {
		padding-block: 96px;
	}
	.sec--program__marquee {
		padding-block: 8px 7px;
		gap: 20px;
		margin-bottom: 32px;
	}
	.sec--program__marquee__list {
		gap: 20px;
		img {
			width: 100px;
			max-width: none;
		}
	}
	.sec--program__content-inner {
		max-width: 640px;
	}
	.sec--program__ttl {
		padding-block: 6px;
		margin-bottom: 16px;
	}
	.sec--program__img {
		width: 100%;
	}
	.sec--program__list__row {
		display: grid;
		gap: 4px;
	}
	.sec--program__list__ttl {
		font-size: 18px;
		padding-block: 6px;
	}
	.sec--program__list__dtl {
		font-size: 18px;
	}
	.sec--program__btn-wrapper {
		margin-bottom: 32px;
	}
	.sec--program__btn {
		max-width: 400px;
		margin-inline: auto;
	}
	.sec--program__box {
		border-radius: 16px;
		padding: 30px;
		&::before {
			width: calc(100% - 30px);
			height: calc(100% - 30px);
			border-radius: 16px;
		}
	}
	.sec--program__box__img {
		margin-bottom: 9px;
	}
	.sec--program__box__list {
		gap: 20px;
		margin-bottom: 30px;
	}
	.sec--program__box__list__row {
		grid-template-columns: 160px 1fr;
		gap: 16px;
		align-items: start;
	}
	.sec--program__box__list__ttl {
		font-size: 16px;
		padding-block: 4px;
	}
	.sec--program__box__list__dtl {
		font-size: 16px;
		line-height: 1.5;
		text-align: left;
	}
	.sec--program__box__list__dtl--one-line {
		padding-block: 4px;
	}
	.sec--program__box__btn {
		max-width: 400px;
		margin: 0 auto 10px;
	}
	.sec--program__box__btn-note {
		font-size: 12px;
		letter-spacing: .02em;
		text-align: center;
	}


	/* ----- footer ----- */
	.info_wrap {
		margin: 0 auto;
		padding: 8px 20px 100px;
	}
	.oshitabi_btn {
		padding: 15px;
		font-size: 20px;
	}
}

@media(max-width:750px){
	.pc {
		display: none;
	}
}