@charset "UTF-8";

@media screen and (max-width: 1200px) {}

@media screen and (max-width: 1024px) {}

@media screen and (max-width: 840px) {}

@media screen and (max-width: 500px) {}

@media screen and (max-width: 420px) {}

/*-----------------------------------------------------------------------------------------
10001 .gallery-banner
10002 .btn-more
10003 table.list-name
10004 table.detail
10005 ul.list-news dl
10006 .dl.card
10007 .page-title
10008 .coming-soon
10009 nav.program





20001 page TYPO
20002 list-style
20003 blockquote

----------------------------------------------------------------------------------------- */

main {
	border: 0px solid black;
	border-top: none;
}

main.index {
	padding-bottom: 0;
}

main.page-event {
	padding-bottom: 0;
}

/*
article {
	border:10px solid black;
} */



/*-----------------------------------------------------------------------------------------
10001 gallery-banner
----------------------------------------------------------------------------------------- */
.area-banner {
	padding: 6.0rem 0;
	background: #ECEEF4;
}

.area-banner h2 {
	font-size: 3.6rem;
	justify-content: space-between;
	align-items: center;
	display: flex;
	flex-wrap: wrap;
	font-weight: 600;
}

.area-banner h2 a {
	background: var(--color-font);
	color: White;
	font-size: 0.4em;
	padding: 0.2em 1em;
}

.area-banner h2::after {
	display: none;
}




ul.gallery-banner {
	width: 100%;
	height: auto;
	justify-content: flex-start;
	display: flex;
	flex-wrap: wrap;
	padding: 3.0rem 0;
	margin: 0;
}

ul.gallery-banner li {
	width: 25%;
	height: auto;
	justify-content: center;
	align-items: center;
	display: flex;
	flex-wrap: wrap;
	padding: 0.5rem;
	margin: 0;
	background: ;
}

ul.gallery-banner li a {
	border: 1px solid #ddd;
	width: 100%;
	height: 100%;
	min-height: 8.0rem;
	justify-content: center;
	align-items: center;
	display: flex;
	flex-wrap: wrap;
	padding: 0.3rem;
	margin: 0;
	background: white;
}

ul.gallery-banner li a img {
	width: 100%;
	height: auto;
}


@media screen and (max-width: 1200px) {}

@media screen and (max-width: 1024px) {
	ul.gallery-banner li {
		width: 25%;
		padding: 0.4rem;
	}
}

@media screen and (max-width: 840px) {
	ul.gallery-banner li {
		width: 33.33333%;
	}

	ul.gallery-banner {
		padding: 0;
	}
}

@media screen and (max-width: 500px) {
	ul.gallery-banner li {
		width: 50%;
	}
}

@media screen and (max-width: 420px) {}









/*-----------------------------------------------------------------------------------------
10002 .btn-more
----------------------------------------------------------------------------------------- */
.btn-more {
	justify-content: flex-start;
	display: flex;
	flex-wrap: wrap;
	padding: 0;
	margin: 0.2rem 0;
	width: 100%;
	font-size: 1.4rem;

}

.btn-more li {
	min-width: 25%;
	padding: 0.1rem;
	font-size: inherit;
	line-height: 1.2;
	justify-content: center;
	align-items: center;
	display: flex;
	flex-wrap: wrap;
}

.btn-more li a {
	border: 1px solid var(--color-font);
	width: 100%;
	height: auto;
	background: var(--color-font);
	color: white;
	padding: 0.75em 1.5em;
	font-size: inherit;
	line-height: inherit;
	justify-content: center;
	align-items: center;
	display: flex;
	flex-wrap: wrap;
	border-radius: 3px;
}

.btn-more.download li a {
	background: #004086;
}

.btn-more.center {
	justify-content: center;
}

.btn-more.large {
	font-size: 3.0rem;
}

.btn-more i {
	margin-left: 0.25em;
}

.btn-more.warnig li a {
	background: var(--color-red) !important;
	border: none;
	padding: 1em 2em
}




@media screen and (max-width: 1200px) {}

@media screen and (max-width: 1024px) {
	.btn-more.large {
		font-size: calc(3.0rem * 0.8);
	}
}

@media screen and (max-width: 840px) {
	.btn-more.large {
		font-size: calc(3.0rem * 0.7);
	}
}

@media screen and (max-width: 500px) {}

@media screen and (max-width: 420px) {}









/*-----------------------------------------------------------------------------------------
10003 table.list-name
----------------------------------------------------------------------------------------- */
table.list-name {
	width: auto;
	margin: 0 0 3.0rem;
}

table.list-name td {
	min-width: 6em;
	padding: 0.25em 1em;
	letter-spacing: 0.1em;
	border: none;
	font-size: 1.4rem;
}


table td:first-child {
	min-width: 15em;
	padding-left: 0em;
}

table td:last-child {
	min-width: 7em;
	padding-right: 1em;
	font-size: 1.9rem;
	font-weight: 600;
	letter-spacing: 0.05em;
}

@media screen and (max-width: 1200px) {}

@media screen and (max-width: 1024px) {}

@media screen and (max-width: 840px) {
	table.list-name {}

	table.list-name td {
		min-width: 6em;
		padding: 0.25em 0.5em;
		letter-spacing: 0;
		font-size: 1.3rem;
	}

	table.list-name td:first-child {
		min-width: 13em;
		padding-left: 0em;
	}

	table.list-name td:last-child {
		padding-right: 0.5em;
		font-size: 1.6rem;
		letter-spacing: 0;
	}
}

@media screen and (max-width: 500px) {
	table.list-name td:nth-child(2) {
		display: none;
	}
}

@media screen and (max-width: 420px) {}









/*-----------------------------------------------------------------------------------------
10004 table.detail
----------------------------------------------------------------------------------------- */
table.detail {
	width: auto;
	margin: 1.0rem 0;
	min-width: 50%;
}

table.detail th,
table.detail td {
	font-size: 1.5rem;
	padding: 0.5em 1em;
	font-weight: 400;
}

table.detail th {
	background: #eee;
	text-align: center;
	width: 12em;
	font-weight: 600;
}

@media screen and (max-width: 1200px) {}

@media screen and (max-width: 1024px) {}

@media screen and (max-width: 840px) {
	table.detail {
		width: auto;
		margin: 1.0rem 0;
	}

	table.detail th,
	table.detail td {
		padding: 0.5em 1em;
	}

	table.detail th {
		width: 10em;
	}

}

@media screen and (max-width: 500px) {}

@media screen and (max-width: 420px) {}









/*-----------------------------------------------------------------------------------------
10005 ul.list-news dl
	----------------------------------------------------------------------------------------- */
ul.list-news dl {
	padding: 1.5rem 0;
	margin: 0;
	display: flex;
	flex-wrap: wrap;
}

ul.list-news dl dt,
ul.list-news dl dd {
	padding: 0;
	margin: 0;
	width: 8em;
	font-size: 1.5rem;
}

ul.list-news dl dd {
	width: calc(100% - 8em);
	line-height: 1.7;
	color: var(--color-font);
}

ul.list-news dl dd b {
	font-size: 1.2em;
	display: block;
	margin-bottom: 0.2em;
}

ul.list-news time {
	font-size: inherit;
	line-height: 1;
	margin-top: 1.2em;
	display: block;
	padding: 0.37em 0;
	margin: 0;
}

@media screen and (max-width: 1200px) {}

@media screen and (max-width: 1024px) {}

@media screen and (max-width: 840px) {}

@media screen and (max-width: 500px) {

	ul.list-news dl dt,
	ul.list-news dl dd {
		width: 100%;
	}

	ul.list-news dl dt {
		background: #ddd;
		padding: 0.5em 1em;
		font-size: 1.3rem;
	}

	ul.list-news dl dd {
		width: 100%;
		padding: 0.5em 0;
	}
}

@media screen and (max-width: 420px) {}









/*-----------------------------------------------------------------------------------------
10006 .dl.card
----------------------------------------------------------------------------------------- */
dl.card {
	padding: 0;
	margin: 0 0 3.0rem 0;
}

dl.card dt,
dl.card dd {
	padding: 0;
	marign: 0;
	width: 10.0rem;
}

dl.card dd {
	padding: 0 0 0 2.0rem;
	marign: 0;
	width: calc(100% - 10.0rem);
	justify-content: flexstart;
	align-items: center;
	display: flex;
	flex-wrap: wrap;
}

dl.card img {
	border: 1px solid #ddd;
	padding: 3px;
	background: white;
}

dl.card .text {
	font-size: 1.6rem;
	font-weight: 600;
	line-height: 1.5;
	padding: 0;
	margin: 0 0 0.4em 0
}

dl.card .text span {
	display: block
}

dl.card .text.name {
	font-size: 2.2rem;
	margin-bottom: 0;
}

dl.card .text.name span {
	display: inline-block;
	margin-left: 1em;
}

@media screen and (max-width: 1200px) {}

@media screen and (max-width: 1024px) {
	.area-news {
		padding: 6.0rem 0;
	}

	.area-greeting .col-04 {
		width: 100%;
	}
}

@media screen and (max-width: 840px) {}

@media screen and (max-width: 500px) {
	dl.card dd {
		padding-left: 1.5rem;
	}

	dl.card img {
		padding: 2px;
	}

	dl.card .text {
		font-size: 1.4rem;
		font-weight: 600;
		line-height: 1.5;
		padding: 0;
		margin: 0 0 0.4em 0
	}

	dl.card .text span {
		display: block
	}

	dl.card .text.name {
		margin-bottom: 0;
	}

	dl.card .text.name span {
		display: block;
		margin-left: 0;
	}
}

@media screen and (max-width: 420px) {
	dl.card dt {
		width: 30%;
	}

	dl.card dd {
		width: 70%;
		padding-left: 1.0rem;

	}
}







/*-----------------------------------------------------------------------------------------
10007 .page-title
----------------------------------------------------------------------------------------- */
.page-title {
	background: #385587;
	background: url('../img/common/bg-leaflet.jpg');
	background-position: bottom left;
	background-size: cover;
	padding: 4vw 1vw;
	margin: 0;
	width: 100%;
}

main .page-title h2 {
	color: white;
	line-height: 1.5;
	font-size: 4.0rem;
	padding: 0;
	margin: 0;
	justify-content: center;
	align-items: center;
	display: flex;
	flex-wrap: wrap;
}

main .page-title h2 div {
	font-size: inherit;
	font-weight: 200;
}

main .page-title h2 span,
main .page-title h2 small {
	display: block;
	text-align: center;
	letter-spacing: 0.5em;
	text-indent: 0.5em
}

main .page-title h2 small {
	letter-spacing: 0.2em;
	font-size: 0.4em;
	text-transform: uppercase;
	margin-top: 0.25em;
	font-weight: 300
}

main .page-title h2::after {
	display: none;
}

@media screen and (max-width: 1200px) {}

@media screen and (max-width: 1024px) {
	.page-title {
		padding: 6vw 1vw;
	}

	main .page-title h2 {
		font-size: 4.6vw;
		letter-spacing: 0.1em
	}


	main .page-title h2 span,
	main .page-title h2 small {
		letter-spacing: 0.1em;
		text-indent: 0.1em
	}

	main .page-title h2 small {
		letter-spacing: inherit;
		font-size: 0.55em;
	}
}

@media screen and (max-width: 840px) {}

@media screen and (max-width: 500px) {}

@media screen and (max-width: 420px) {
	main .page-title h2 {
		font-size: 2.6rem;
		letter-spacing: 0
	}

	main .page-title h2 span,
	main .page-title h2 small {
		letter-spacing: 0;
		text-indent: 0
	}

	main .page-title h2 small {
		font-size: 0.6em;
	}
}









/*-----------------------------------------------------------------------------------------
10008 .coming-soon
----------------------------------------------------------------------------------------- */
.coming-soon {
	border: 1px solid #eee;
	background: #f5f5f5;
	justify-content: center;
	align-items: center;
	display: flex;
	flex-wrap: wrap;
	padding: 15vw 0;
	margin: 0;
	font-size: 2.4rem;
	line-height: 1;
	font-weight: 200;
}

.coming-soon p {
	font-size: 0.6em;
	width: 100%;
}

.page-about .coming-soon {
	padding: 0;
	margin-top: 5vw
}

.page-about .coming-soon .text {
	padding: 6.0rem;
	margin: 0;
	width: 100%;
}

.page-about .coming-soon p {
	font-size: 2.0rem;
}


@media screen and (max-width: 1200px) {}

@media screen and (max-width: 1024px) {}

@media screen and (max-width: 840px) {}

@media screen and (max-width: 500px) {
	.coming-soon {
		padding: 20vw 0;
	}

	.page-about .coming-soon .text {
		padding: 4.5rem;
	}

	.page-about .coming-soon p {
		font-size: calc(2.0rem * 0.85);
	}


}

@media screen and (max-width: 420px) {}









/*-----------------------------------------------------------------------------------------
10009 nav.program
----------------------------------------------------------------------------------------- */
nav.program {
	border: 0px solid red;
	padding: 0;
	margin: 2.5vw 0 0 0;
}

nav.program ul {
	border-bottom: 2px solid var(--color-font);
	padding: 0;
	margin: 0;
}

nav.program ul li {
	border: 0px solid blue;
	padding: 0 0.5em 0 0;
	margin: 0;
	font-size: 1.8rem;
	font-weight: 400;
	line-height: 1;
	display: block;
}

nav.program ul li a {
	padding: 0.75em 1.5em;
	margin: 0;
	font-size: inherit;
	font-weight: inherit;
	line-height: inherit;
	display: block;
	background: #ddd;
	color: #999;
	border-radius: 0.8rem 0.8rem 0 0;
	border-bottom: 2px solid white;
	transition: 0.2s;
	color: transparent;
	text-shadow: 0 0 1px rgba(0, 0, 0, 0.5);
	justify-content: center;
	align-items: center;
	display: flex;
	flex-wrap: wrap;
}

nav.program ul li.current a {
	background: var(--color-font);
	border-bottom: 2px solid var(--color-font);
	color: white;
	pointer-events: none;
}

nav.program ul li a:hover {
	opacity: 0.5;
}

nav.program ul li.curren a:hover {
	opacity: 1
}

@media screen and (max-width: 1200px) {}

@media screen and (max-width: 1024px) {
	nav.program ul li {
		font-size: calc(1.8rem * 0.8);
		font-size: calc(1.8vw * 1.0);
	}

}

@media screen and (max-width: 840px) {
	nav.program {}

	nav.program ul {
		border: 2px solid var(--color-font);
		padding: 2px;
	}

	nav.program ul li {
		padding: 1px;
		width: 50%;
		font-size: calc(1.8rem * 1.0);
		font-size: calc(1.8vw * 1.2);
	}

	nav.program ul li a {
		padding: 0.5em;
		border-radius: 0;
		border-bottom: 2px solid #ddd;
		text-shadow: 0 0 1px rgba(0, 0, 0, 0.6);
		height: 100%;
	}
}

@media screen and (max-width: 500px) {
	nav.program ul li {
		font-size: 1.6rem;
	}
}

@media screen and (max-width: 420px) {
	nav.program ul li {
		width: 100%;
		font-size: 1.8rem;
	}
}









/*-----------------------------------------------------------------------------------------
20001 page TYPO
----------------------------------------------------------------------------------------- */
article h2 {
	font-size: 6.0rem;
	padding: 0;
	margin: 0;
	position: relative;
	width: 100%;
}

article h2::after {
	content: '';
	padding: 0;
	margin: 0;
	position: absolute;
	top: calc(50% - 1px);
	right: 0.15em;
	width: 0.5em;
	height: 2px;
	border: none;
	display: block;
	background: var(--color-font);
}

article h3 {
	font-size: 2.0rem;
	background: var(--color-font);
	background: linear-gradient(180deg, #333 0%, #555 100%);
	color: white;
	padding: 0.4em 1em;
	margin: 2em 0 0.25em 0;
	letter-spacing: 0.05em;
	display: block;
	line-height: 1.4;
}

article h3:first-child {
	margin-top: 0em;
}

article h3 small {
	color: white;
	display: inline-block;
}

article h4 {
	color: var(--color-font);
	padding: 0;
	margin: 2.0em 0 0.5em 0;
	letter-spacing: 0.01em;
	line-height: 1.5;
	font-size: 2.0rem;
	font-weight: 600;
}

article h5,
article h6 {
	font-size: 10.0rem;
	color: orange
}

article p {
	font-size: inherit;
	line-height: 1.9;
	margin: 0.5em 0;
}

article p a {
	font-weight: 600;
}


@media screen and (max-width: 1200px) {}

@media screen and (max-width: 1024px) {
	article h2 {
		font-size: calc(6.0rem * 0.8);
	}

	article h3 {
		font-size: calc(2.0rem * 1.0);
	}


	article h4 {
		font-size: calc(2.0rem * 1.0);
	}

	article h5,
	article h6 {
		font-size: calc(10.0rem * 1.0);
	}

	article p {
		font-size: calc(1.5rem * 1.0);
	}
}

@media screen and (max-width: 840px) {
	article h2 {
		font-size: calc(6.0rem * 0.75);
	}

	article h3 {
		font-size: calc(2.0rem * 1.1);
	}


	article h4 {
		font-size: calc(2.0rem * 1.1);
	}

	article h5,
	article h6 {
		font-size: calc(10.0rem * 1.1);
	}

	article p {
		font-size: calc(1.5rem * 1.1);
	}
}

@media screen and (max-width: 500px) {
	article h2 {
		font-size: calc(6.0rem * 0.70);
	}

	article h3 {
		font-size: calc(2.0rem * 1.0);
	}


	article h4 {
		font-size: calc(2.0rem * 1.0);
	}

	article h5,
	article h6 {
		font-size: calc(10.0rem * 1.0);
	}

	article p {
		font-size: calc(1.5rem * 1.0);
	}
}

@media screen and (max-width: 420px) {}









/*-----------------------------------------------------------------------------------------
20002 list-style
----------------------------------------------------------------------------------------- */
article ol,
article ul {
	/* background:rgba(255, 255, 0, 0.2); */
	padding: 0;
	margin: 0.5em 0;
	font-size: inherit
}

article ul {
	background: transparent
}

article ol li {
	list-style: disc;
	list-style-position: outside;
	padding: 0;
	margin: 0 0 0.5em 1.75em;
	font-size: inherit;
	line-height: 1.6;
	position: relative;
}

article ol.numbered li {
	list-style: decimal;
}

article ol.caution li {
	list-style: none;
}

article ol.caution li::before {
	content: '※';
	position: absolute;
	top: 0;
	left: -1.2em;
}

@media screen and (max-width: 1200px) {}

@media screen and (max-width: 1024px) {
	article ol li {
		font-size: calc(1.5rem * 1.0);
	}
}

@media screen and (max-width: 840px) {
	article ol li {
		font-size: calc(1.5rem * 1.1);
	}
}

@media screen and (max-width: 500px) {
	article ol li {
		font-size: calc(1.5rem * 1.0);
	}
}

@media screen and (max-width: 420px) {}









/*-----------------------------------------------------------------------------------------
20003 blockquote
----------------------------------------------------------------------------------------- */
article blockquote {
	border-left: 1px solid var(--color-font);
	width: calc(100% - 1.0rem);
	margin: 2px 0 0 1.0rem;
	padding: 1.5rem 3.0rem
}


@media screen and (max-width: 1200px) {}

@media screen and (max-width: 1024px) {}

@media screen and (max-width: 840px) {
	article 2blockquote {
		padding: 1.5rem
	}
}

@media screen and (max-width: 500px) {}

@media screen and (max-width: 420px) {}









/*-----------------------------------------------------------------------------------------
30001 area-registartion
----------------------------------------------------------------------------------------- */
.area-registartion {
	padding: 0 0 3.0rem 0;
}

@media screen and (max-width: 1200px) {}

@media screen and (max-width: 1024px) {}

@media screen and (max-width: 840px) {}

@media screen and (max-width: 500px) {}

@media screen and (max-width: 420px) {}








/*-----------------------------------------------------------------------------------------
40001 program
----------------------------------------------------------------------------------------- */
blockquote.program {
	background: white;
	border: none;
	margin: 1.5rem 0 6.0rem;
	border-top: 0.0rem solid #ddd;
	border-left: 0.5rem solid #ddd;
	box-shadow: 1.5rem 1.5rem 3.0rem rgba(0, 0, 0, 0.1);
	padding: 3.0rem;
	width: 100%;
}

blockquote.program dl {
	font-size: 3.0rem;
	font-weight: 600;
	line-height: 1.4;
	justify-content: flex-start;
	display: flex;
	flex-wrap: wrap;
	padding: 1.0rem 0;
	margin: 0;
}

blockquote.program dl dt,
blockquote.program dl dd {
	border: 0px solid green;
	padding: 0;
	margin: 0;
	width: 16rem;
	color: #333;
	font-size: inherit;
	line-height: inherit;
}

blockquote.program dl dd {
	width: calc(100% - 16rem);
	padding-left: 3.0rem;
}

blockquote.program small {
	font-size: 1.7rem;
}

blockquote.program small small {
	font-size: 0.8em;
	padding: 0 0.3em;
}

blockquote.program dl.midashi-1 {
	background: #ddd;
	background: linear-gradient(-5deg, #eee 0%, #ccc 100%);
	padding-right: 1.5rem
}

blockquote.program dl.midashi-1 dt b {
	background: #333;
	color: white;
	padding: 0 0 0.1em;
	display: block;
	text-align: center;
	margin: 0 0 0 -0.3em;
}

blockquote.program dl dd div {
	font-size: 1.7rem;
	display: block;
	margin-top: 0.5em;
}



blockquote.program dl.midashi-2 {
	font-size: 2.2rem;
}

blockquote.program dl.midashi-2 dt {
	text-align: right;
	font-weight: 600;
	color: #FE0132
}


@media screen and (max-width: 1200px) {}

@media screen and (max-width: 1024px) {}

@media screen and (max-width: 640px) {
	blockquote.program {
		border: 1px solid #eee;
		padding: 1.5rem;
	}

	blockquote.program dl {
		font-size: calc(3.0rem * 0.8);
	}

	blockquote.program dl dt,
	blockquote.program dl dd {
		width: 100%;
	}

	blockquote.program dl dd {
		width: 100%;
		padding-left: 0;
	}

	blockquote.program small {
		font-size: calc(1.7rem * 1.0);
	}


	blockquote.program dl.midashi-1 {
		padding: 1.5rem;
	}

	blockquote.program dl.midashi-1 dt b {
		margin: 0 0 0.4em 0;
		padding: 0.2em;
	}

	blockquote.program dl.midashi-2 {
		padding: 1.5rem 1.0rem;
		border-bottom: 1px dashed #bbb
	}

	blockquote.program dl.midashi-2 dt {
		text-align: left;
	}

	p.sign {
		font-size: 1.8vw !important;
	}

}

@media screen and (max-width: 500px) {}

@media screen and (max-width: 420px) {
	blockquote.program {}

	blockquote.program dl {
		font-size: calc(3.0rem * 0.65);
	}


	blockquote.program small {
		font-size: calc(1.7rem * 0.8);
	}


	blockquote.program dl.midashi-2 {
		font-size: calc(2.2rem * 0.7);
	}
}




.live blockquote.program {}

.live blockquote.program dl {
	font-size: 2.4rem;
	margin: 0;
}

.live blockquote.program dl dt,
.live blockquote.program dl dd {
	width: 23rem;
}

.live blockquote.program dl dd {
	width: calc(100% - 23rem);
}



.live blockquote.program small {
	font-size: 1.7rem;
}

.live blockquote.program dl.midashi-1 {}

.live blockquote.program dl.midashi-1 dt b {
	background: #004086
}

.live blockquote.program dl dd div {
	font-size: 1.7rem;
}

.live blockquote.program dl.midashi-2 {
	font-size: 1.8rem;
}

.live blockquote.program dl.midashi-2 dt {
	color: #333
}

.live blockquote.program ul {
	border-top: 1px solid #333;
	padding: 0;
	margin: 1.3rem 0;
}

.live blockquote.program ul li {
	width: 100%;
	justify-content: flex-end;
	display: flex;
	flex-wrap: wrap;
	padding: 0;
	margin: 0.5em 0;
}

.live blockquote.program ul li b {
	width: 10em;
	padding: 0;
	margin: 0;
	justify-content: flex-end;
	align-items: flex-end;
	display: flex;
	flex-wrap: wrap;
}

.live blockquote.program ul li b::after {
	content: '先生';
	font-weight: 400;
	font-size: 0.7em;
	margin-left: 0.5em;
	vertical-align: middle;
	padding: 0 0 0.05em 0;
}

.live blockquote.program ul li small {
	width: calc(100% - 16em);
	text-align: right;
	padding: 0 0 0.1em 0;
	margin: 0;
	font-size: 0.7em;
	justify-content: flex-end;
	align-items: flex-end;
	display: flex;
	flex-wrap: wrap;
	color: #333;
}

.live blockquote.program ul li strong {
	font-size: 2.4rem;
	width: 100%;
	text-align: right;
	margin-bottom: 0.5em;
}

.live h4 {
	text-align: center;
	font-size: 12.0rem;
	font-weight: 300;
	font-family: 'Oswald', sans-serif;
	padding: 0;
	margin: 0;
	line-height: 1;
}

.live h4 span,
.live h4 small {
	display: block;
	font-size: inherit;
	font-weight: inherit;
	line-heihgt: inherit;
	paddig: 0;
	margin: 0;
}

.live h4 small {
	font-size: 0.22em;
	margin-top: 0.5em;
	font-weight: 400;
}




@media screen and (max-width: 1200px) {}

@media screen and (max-width: 1024px) {}

@media screen and (max-width: 640px) {
	.live blockquote.program dl {
		font-size: calc(2.4rem * 0.8);
	}

	.live blockquote.program dl dt,
	.live blockquote.program dl dd {
		width: 100%;
	}

	.live blockquote.program dl dd {
		width: 100%;
		padding-left: 0;
		font-size: calc(2.4rem * 0.8);
	}

	.live blockquote.program dl.midashi-2 {
		font-size: calc(1.8rem * 1.0);
		border-bottom: 0px dashed #bbb
	}


	.live h4 {
		font-size: calc(12.0rem * 0.8);
	}
}

@media screen and (max-width: 500px) {
	.live blockquote.program ul li {
		margin: 1em 0;
		justify-content: flex-start;
	}

	.live blockquote.program ul li b {
		width: 100%;
		justify-content: flex-start;
	}

	.live blockquote.program ul li small {
		width: 100%;
		margin-bottom: 0.25em;
		justify-content: flex-start;
		text-align: left;
	}

	.live blockquote.program ul li strong {
		width: 100%;
		justify-content: flex-start;
		text-align: left;
	}

}

@media screen and (max-width: 420px) {
	.live blockquote.program dl {
		font-size: calc(2.4rem * 0.65);
	}

	.live blockquote.program dl.midashi-2 {
		font-size: calc(1.8rem * 0.7);
	}

	.live blockquote.program dl dt {
		font-size: calc(1.8rem * 0.9);
	}

	.live h4 {
		font-size: calc(12.0rem * 0.5);
	}
}









.day-one.live h4,
.day-one.live blockquote.program dl dt {
	color: #004086
}

.day-two.live h4,
.day-two.live blockquote.program dl dt {
	color: #008086
}

.day-two.live blockquote.program dl.midashi-1 dt b {
	background: #008086
}









/* .medical-program blockquote.program {
	 background: white;
	 border: none;
	 margin: 1.5rem 0 6.0rem;
	 border-top: 0.0rem solid #ddd;
	 border-left: 0.5rem solid #ddd;
	 box-shadow: 1.5rem 1.5rem 3.0rem rgba(0, 0, 0, 0.1);
	 padding: 3.0rem;
	 width: 100%;
 }

 .medical-program blockquote.program dl {
	 font-size: 3.0rem;
	 font-weight: 600;
	 line-height: 1.4;
	 justify-content: flex-start;
	 display: flex;
	 flex-wrap: wrap;
	 padding: 1.5rem 0;
	 margin: 0;
 }

 .medical-program blockquote.program dl dt,
 .medical-program blockquote.program dl dd {
	 border: 0px solid green;
	 padding: 0;
	 margin: 0;
	 width: 16rem;
	 color: #333;
	 font-size: inherit;
	 line-height: inherit;
 }

 .medical-program blockquote.program dl dd {
	 width: calc(100% - 16rem);
	 padding-left: 3.0rem;
 }

 .medical-program blockquote.program small {
	 font-size: 1.7rem;
 }

 .medical-program blockquote.program small small {
	 font-size: 0.8em;
	 padding: 0 0.3em;
 }

 .medical-program blockquote.program dl.midashi-1 {
	 background: #ddd;
	 background: linear-gradient(-5deg, #eee 0%, #ccc 100%);
	 padding-right: 1.5rem
 }

 .medical-program blockquote.program dl.midashi-1 dt b {
	 background: #333;
	 color: white;
	 padding: 0 0 0.1em;
	 display: block;
	 text-align: center;
	 margin: 0 0 0 -0.3em;
 }

 .medical-program blockquote.program dl dd div {
	 font-size:1.7rem;
	 display:block;
	 margin-top:0.5em;
 }



 .medical-program blockquote.program dl.midashi-2 {
	 font-size: 2.2rem;
 }

 .medical-program blockquote.program dl.midashi-2 dt {
	 text-align: right;
	 font-weight: 600;
	 color: #FE0132
 }


 @media screen and (max-width: 1200px) {}

 @media screen and (max-width: 1024px) {}

 @media screen and (max-width: 640px) {
	 .medical-program blockquote.program {
		 border: 1px solid #eee;
		 padding: 1.5rem;
	 }

	 .medical-program blockquote.program dl {
		 font-size: calc(3.0rem * 0.8);
	 }

	 .medical-program blockquote.program dl dt,
	 .medical-program blockquote.program dl dd {
		 width: 100%;
	 }

	 .medical-program blockquote.program dl dd {
		 width: 100%;
		 padding-left: 0;
	 }

	 .medical-program blockquote.program small {
		 font-size: calc(1.7rem * 1.0);
	 }


	 .medical-program blockquote.program dl.midashi-1 {
		 padding: 1.5rem;
	 }

	 .medical-program blockquote.program dl.midashi-1 dt b {
		 margin: 0 0 0.4em 0;
		 padding: 0.2em;
	 }

	 .medical-program blockquote.program dl.midashi-2 {
		 padding: 1.5rem 1.0rem;
		 border-bottom: 1px dashed #bbb
	 }

	 .medical-program blockquote.program dl.midashi-2 dt {
		 text-align: left;
	 }

	 .medical-program p.sign {
		 font-size:1.8vw !important;
	 }

 }

 @media screen and (max-width: 500px) {}

 @media screen and (max-width: 420px) {
	 .medical-program blockquote.program {
	 }

	 .medical-program blockquote.program dl {
		 font-size: calc(3.0rem * 0.65);
	 }


	 .medical-program blockquote.program small {
		 font-size: calc(1.7rem * 0.8);
	 }


	 .medical-program blockquote.program dl.midashi-2 {
		 font-size: calc(2.2rem * 0.7);
	 }
 }



 */



.medical-program h3.title {
	font-size:4.5rem;
	text-align:center;
	font-weight:600;
	background:transparent;
	color:#333;
	line-height:1.4;
}

.medical-program h3.title span,
.medical-program h3.title small {
	font-size:inherit;
	font-weight:inherit;
	color:inherit;
	line-height:inherit;
	display:block;
	padding:0;

}

.medical-program h3.title small {
	font-size:0.6em;
	font-weight:400;
	margin-top:0.65em;
	line-height:1.6;
}

@media screen and (max-width: 1200px) {}

@media screen and (max-width: 1024px) {}

@media screen and (max-width: 840px) {
	.medical-program h3.title {
		font-size:calc( 4.5vw * 1.5);
	}

	.medical-program h3.title small {
		font-size:calc( 4.5vw * 0.7);
	}
}

@media screen and (max-width: 500px) {}

@media screen and (max-width: 420px) {}
