@charset "UTF-8";
*{margin:0;padding:0;text-decoration:none;box-sizing: border-box;}fieldset{border:0}body{line-height:1.8}body,dd,dl,dt,form,h1,h2,h3,h4,h5,h6,input,li,ol,p,select,ul{margin:0;padding:0}img{border:0;vertical-align:top;width:100%;height:auto}a{text-decoration:none}em{font-style:normal}ul li{list-style-type:none;list-style-image:none;list-style:none}address{font-style:normal}strong{font-weight:bold}
html{font-size: 62.5%;}
body{font-size: 1.5rem;}



/* opening
--------------------- */
.opening {
    width: 100%;
    height: 100vh;
    position: relative;
    position: fixed;
    top: 0;
    left: 0;
    z-index: 99999999;
    display: flex;
    align-items: center;
    justify-content: center;
	pointer-events: none;
}
.opening__mask{
    width: 100%;
    height: 100%;
    position: absolute;
    top: 0;
    left: 0;
    background-color: rgba(255,255,255,1);
    z-index: 1;
	pointer-events: none;
}
.opening__logo{
    display: block;
    width: 250px;
    height: auto;
    z-index: 2;
    opacity: 0;/*予め透明に*/
	pointer-events: none;
}

	







/* body
----------------------------*/
body {
	font-family: "IBM Plex Sans JP" , "Hiragino Sans", "Hiragino Kaku Gothic ProN", Meiryo, sans-serif;
	font-weight: 400;
	color: #2B2B2B;
	padding: 0;
	margin: 0;
	letter-spacing: 0;
	-webkit-font-smoothing: antialiased;
	-webkit-text-size-adjust: 100%;
	font-feature-settings: "palt";
	text-align: justify;
	text-justify: inter-ideograph;
	-ms-text-justify: inter-ideograph;
}
.en {
	font-family: "Mulish", sans-serif;
	font-weight: 500;
}





/* header
----------------------------*/
#header {
	display: flex;
	justify-content: space-between;
	align-items: center;
	width: 100%;
	height: 70px;
	background: #fff;
	position: fixed;
	top: 0;
	left: 0;
	z-index: 5;
}
	#header .logo {
		padding-left: 20px;
	}
		#header .logo a {
			display: flex;
			justify-content: flex-start;
			align-items: center;
			line-height: 1;
		}
			#header .logo a img {
				width: 112px;
			}

			#header .logo a span {
				display: block;
				font-size: 1.1rem;
				font-weight: 500;
				line-height: 1;
				padding-left: 15px;
			}


	#header .btn-list {
		width: 350px;
		margin-right: 70px;
	}
		#header .btn-list li {
			width: 32%;
		}
			#header .btn-list li a {
				display: block;
				height: 40px;
				padding-top: 5px;
				border-radius: 5px;
				font-size: 1.3rem;
				font-weight: 700;
				line-height: 1.2em;
				text-align: center;
				color: #fff;
			}
			#header .btn-list li:nth-child(1) a {
				background: #000;
			}
			#header .btn-list li:nth-child(2) a {
				background: #008AE6;
			}
			#header .btn-list li:nth-child(3) a {
				background: #0000AD;
			}
			#header .btn-list li a:hover {
				background: #7f08b7;
			}
				#header .btn-list li a span {
					font-size: 1.0rem;
				}


	#header .menubtn {
		width: 40px;
		height: 40px;
		position: fixed;
		top: 15px;
		right: 15px;
		transition: 0.3s;
		-webkit-transition: 0.3s;
	}
		#header .menubtn .menu {
			display: block;
			position: relative;
			cursor: pointer;
			width: 40px;
			height: 40px;
			background: #F2F2F2;
			border-radius: 5px;
			transition: 0.3s;
			-webkit-transition: 0.3s;
		}
		#header .menubtn .menu.active {
			background: #313131;
		}
			#header .menubtn .menu .openbtn-area {
				transition: all .4s;
			}
				#header .menubtn .menu span {
					width: 16px !important;
					display: inline-block;
					transition: all .4s;
					position: absolute;
					left: 50%;
					margin-left: -8px;
					height: 1px;
					background: #313131;
				}
				#header .menubtn .menu span:nth-of-type(1) {
					top: 14px;	
				}
				#header .menubtn .menu span:nth-of-type(2) {
					top: 19px;
				}
				#header .menubtn .menu span:nth-of-type(3) {
					top: 24px;
				}

			#header .menubtn .menu.active .openbtn-area {
				transform: rotateY(-360deg);
			}
				#header .menubtn .menu.active span:nth-of-type(1) {
					width: 16px !important;
					top: 19px;
					left: 50%;
					margin-left: -8px;
					transform: translateY(0) rotate(-155deg);
					background: #fff;
				}
				#header .menubtn .menu.active span:nth-of-type(2) {
					opacity: 0;
				}
				#header .menubtn .menu.active span:nth-of-type(3) {
					width: 16px !important;
					top: 19px;
					left: 50%;
					margin-left: -8px;
					transform: translateY(0) rotate(155deg);
					background: #fff;
				}
@media screen and (max-width: 899px) {
	#header {
		height: 60px;
	}
		#header .logo {
			padding-left: 12px;
		}
			#header .logo a img {
				width: 100px;
			}

			#header .logo a span {
				font-size: 1.0rem;
				padding-left: 12px;
			}


	#header .btn-list {
		width: 100px;
		margin-right: 60px;
	}
		#header .btn-list li {
			width: 100%;
		}
			#header .btn-list li:nth-child(1) {
				display: none;
			}
			#header .btn-list li:nth-child(3) {
				display: none;
			}


		#header .menubtn {
			top: 10px;
			right: 10px;
		}
}



	

/* menubox
----------------------------*/
#menubox {
	display: none;
	width: 310px;
	padding: 10px 30px;
	border-radius: 5px;
	background: #fff;
	box-shadow: 0px 10px 10px -6px rgba(0, 0, 0, 0.1);
	position: fixed;
	top: 80px;
	right: 10px;
	z-index: 100;
}
	#menubox ul.aclist li {
		border-bottom: dashed 1px #ddd;
	}
		#menubox ul.aclist li a {
			display: block;
			background: url("../img/icon_arrow_blue.svg") no-repeat right 5px center / 20px;
			padding: 20px 0 15px 0;
			font-size: 1.2rem;
			font-weight: 500;
			line-height: 1.6em;
		}
		#menubox ul.aclist li a:hover {
			background: url("../img/icon_arrow_blue.svg") no-repeat right 0 center / 20px;
		}
			#menubox ul.aclist li a .en {
				font-size: 2.0rem;
			}

		#menubox ul.btn-list {
			margin-top: 20px;
			padding-bottom: 25px;
		}
			#menubox ul.btn-list li {
				width: 100%;
				margin-bottom: 10px;
			}
			#menubox ul.btn-list li:nth-last-child(1) {
				margin-bottom: 0;
			}
				#menubox ul.btn-list li a {
					display: block;
					width: 100%;
					height: 54px;
					padding-top: 10px;
					padding-left: 20px;
					border-radius: 10px;
					font-size: 1.6rem;
					font-weight: 700;
					line-height: 1.1em;
					color: #fff;
				}
				#menubox ul.btn-list li:nth-child(1) a {
					background: #000 url("../img/icon_arrow_yellow.svg") no-repeat right 20px center / 20px;
				}
				#menubox ul.btn-list li:nth-child(2) a {
					background: #008AE6 url("../img/icon_arrow_yellow.svg") no-repeat right 20px center / 20px;
				}
				#menubox ul.btn-list li:nth-child(3) a {
					background: #0000AD url("../img/icon_arrow_yellow.svg") no-repeat right 20px center / 20px;
				}
				#menubox ul.btn-list li a:hover {
					background: #7f08b7 url("../img/icon_arrow_yellow.svg") no-repeat right 15px center / 20px;
				}
					#menubox ul.btn-list li a span {
						font-size: 1.2rem;
					}
@media screen and (max-width: 899px) {
	#menubox {
		width: 270px;
		padding: 5px 20px;
		position: fixed;
		top: 70px;
	}
		#menubox ul.aclist li a {
			background: url("../img/icon_arrow_blue.svg") no-repeat right 0 center / 18px;
			padding: 20px 0 15px 0;
			font-size: 1.1rem;
			letter-spacing: 0;
			line-height: 1.6em;
		}
		#menubox ul.aclist li a:hover {
			background: url("../img/icon_arrow_blue.svg") no-repeat right 0 center / 18px;
		}
			#menubox ul.aclist li a .en {
				font-size: 1.8rem;
			}

		#menubox ul.btn-list {
			padding-bottom: 20px;
		}
				#menubox ul.btn-list li a {
					height: 54px;
					padding-left: 15px;
					font-size: 1.5rem;
				}
				#menubox ul.btn-list li:nth-child(1) a {
					background: #000 url("../img/icon_arrow_yellow.svg") no-repeat right 15px center / 18px;
				}
				#menubox ul.btn-list li:nth-child(2) a {
					background: #008AE6 url("../img/icon_arrow_yellow.svg") no-repeat right 15px center / 18px;
				}
				#menubox ul.btn-list li:nth-child(3) a {
					background: #0000AD url("../img/icon_arrow_yellow.svg") no-repeat right 15px center / 18px;
				}
				#menubox ul.btn-list li a:hover {
					background: #7f08b7 url("../img/icon_arrow_yellow.svg") no-repeat right 15px center / 18px;
				}
					#menubox ul.btn-list li a span {
						font-size: 1.1rem;
					}
}



	

/* 共通
----------------------------*/
.sp {
	display: none;
}

.blue {
	color: #0000AD;
}
.gray {
	color: #F2F2F2;
}
.white {
	color: #fff;
}

a {
	color: #2B2B2B;
	text-decoration: none;
	transition: 0.3s;
	-webkit-transition: 0.3s;
}
a:before {
	transition: 0.3s;
	-webkit-transition: 0.3s;
}

.flex {
	display: flex;
	-ms-flex-wrap: wrap;
	flex-wrap: wrap;
}
.flex-start {
	display: flex;
	display: -webkit-flex;
	justify-content: space-between;
}
.flex-end {
	display: flex;
	-webkit-box-orient: horizontal;
	-webkit-box-direction: reverse;
	 -ms-flex-direction: row-reverse;
		 flex-direction: row-reverse;
}
.flex-center {
	display: flex;
	justify-content: center;
	-ms-flex-wrap: wrap;
	flex-wrap: wrap;
}

.wrap-top {
	padding-top: 100px;
}
.wrap-bottom {
	padding-bottom: 100px;
}

.inner {
	max-width: 1200px;
	margin: 0 auto;
	position: relative;
}

.title {
	margin-bottom: 50px;
	text-align: center;
}
	.title .en {
		font-size: 11.7rem;
		font-weight: 500;
		line-height: 1;
	}

	.title h2 {
		font-size: 3.6rem;
		font-weight: 700;
		line-height: 1.3em;
	}

.txt {
	font-size: 1.6rem;
	font-weight: 400;
	line-height: 1.8em;
}

.entry-btn {
	width: 480px;
	margin: 0 auto;
}
	.entry-btn a {
		display: block;
		height: 80px;
		border-radius: 5px;
		padding-top: 8px;
		background: #008AE6 url("../img/icon_arrow_yellow.svg") no-repeat right 20px center / 20px;
		font-size: 2.8rem;
		font-weight: 600;
		line-height: 1.0em;
		color: #fff;
		text-align: center;
	}
	.entry-btn a:hover {
		background: #7f08b7 url("../img/icon_arrow_yellow.svg") no-repeat right 15px center / 20px;
	}
		.entry-btn a span {
			font-size: 1.8rem;
		}

.img-wrap {
    clip-path: inset(0 100% 0 0);
    overflow: hidden;
}
@media screen and (max-width: 1399px) {
	.wrap-top {
		padding-top: 8vw;
	}
	.wrap-bottom {
		padding-bottom: 8vw;
	}

	.inner {
		max-width: 100%;
		padding: 0 5vw;
	}

	.title {
		margin-bottom: 4vw;
	}
		.title .en {
			font-size: 8.6vw;
		}

		.title h2 {
			font-size: 2.6vw;
		}

	.txt {
		font-size: 1.2vw;
	}

	.entry-btn {
		width: 40%;
	}
		.entry-btn a {
			height: auto;
			padding: 0.8vw;
			background: #008AE6 url("../img/icon_arrow_yellow.svg") no-repeat right 1.5vw center / 1.6vw;
			font-size: 2.0vw;
			line-height: 1.1em;
		}
		.entry-btn a:hover {
			background: #7f08b7 url("../img/icon_arrow_yellow.svg") no-repeat right 1.2vw center / 1.6vw;
		}
			.entry-btn a span {
				font-size: 1.4vw;
			}
}
@media screen and (max-width: 899px) {
	.sp {
		display: block;
	}
	.pc {
		display: none !important;
	}
	
	.wrap-top {
		padding-top: 15vw;
	}
	.wrap-bottom {
		padding-bottom: 15vw;
	}

	.inner {
		padding: 0 7vw;
	}

	.title {
		margin-bottom: 8vw;
	}
		.title .en {
			font-size: 15.0vw;
			margin-bottom: 1vw;
		}

		.title h2 {
			font-size: 6.6vw;
			line-height: 1.2em;
		}

	.txt {
		font-size: 3.8vw;
		line-height: 1.6em;
	}

	.entry-btn {
		width: 80%;
	}
		.entry-btn a {
			height: auto;
			padding: 3vw;
			background: #008AE6 url("../img/icon_arrow_yellow.svg") no-repeat right 4vw center / 5vw;
			font-size: 5.0vw;
			line-height: 1.1em;
		}
		.entry-btn a:hover {
			background: #7f08b7 url("../img/icon_arrow_yellow.svg") no-repeat right 4vw center / 5vw;
		}
			.entry-btn a span {
				font-size: 3.8vw;
			}
}



	

/* fv
----------------------------*/
#fv {
	width: 100%;
	height: 100vh;
	background: linear-gradient(90deg, #fff, #E2F0F7, #E2F0F7) fixed;
	background-size: 800% 800%;
	animation: GradietionAnimation 9s ease infinite;
	position: relative;
}
@keyframes GradietionAnimation { 
  0% {background-position:0% 50%}
  50% {background-position:100% 50%}
  100% {background-position:0% 50%}
}
		#fv .txt-top {
			width: 616px;
			margin: 0;
			position: absolute;
			top: 70px;
			left: 0;
			z-index: 0;
		}
		#fv .txt-bottom {
			width: 784px;
			margin: 0;
			position: absolute;
			bottom: -5px;
			right: 0;
			z-index: 0;
		}

		#fv h1 {
			font-size: 11.7rem;
			font-weight: 600;
			line-height: 0.95em;
			position: absolute;
			top: 28%;
			right: 4%;
			z-index: 1;
		}

		#fv .text {
			width: 35%;
			position: absolute;
			top: 48%;
			left: 7%;
			z-index: 1;
		}
			#fv .text h2 {
				font-size: 3.2rem;
				font-weight: 700;
				line-height: 1.3em;
				margin-bottom: 20px;
			}

			#fv .text ul.btn-list {
				margin-top: 30px;
			}
				#fv .text ul.btn-list li {
					width: 100%;
					max-width: 200px;
				}
				#fv .text ul.btn-list li:nth-child(1) {
					margin-right: 20px;
				}
				#fv .text ul.btn-list li a {
					display: block;
					width: 100%;
					height: 60px;
					padding-top: 10px;
					padding-left: 20px;
					border-radius: 10px;
					font-size: 1.8rem;
					font-weight: 700;
					line-height: 1.1em;
					color: #fff;
				}
				#fv .text ul.btn-list li:nth-child(1) a {
					background: #008AE6 url("../img/icon_arrow_yellow.svg") no-repeat right 20px center / 20px;
				}
				#fv .text ul.btn-list li:nth-child(2) a {
					background: #0000AD url("../img/icon_arrow_yellow.svg") no-repeat right 20px center / 20px;
				}
				#fv .text ul.btn-list li a:hover {
					background: #7f08b7 url("../img/icon_arrow_yellow.svg") no-repeat right 15px center / 20px;
				}
					#fv .text ul.btn-list li a span {
						font-size: 1.3rem;
					}
@media screen and (max-width: 1399px) {
	#fv {
		padding-top: 70px;
		height: auto;
	}
			#fv .txt-top {
				width: 44%;
				position: static;
			}

			#fv .txt-bottom {
				width: 57%;
			}

			#fv h1 {
				font-size: 8.5vw;
				line-height: 0.95em;
				top: 28%;
				right: 4%;
			}

			#fv .text {
				width: 40%;
				padding-top: 4vw;
				padding-left: 5vw;
				padding-bottom: 12vw;
				position: static;
			}
				#fv .text h2 {
					font-size: 2.4vw;
					margin-bottom: 1.5vw;
				}
	
				#fv .text .txt {
					font-size: 1.15vw;
				}

				#fv .text ul.btn-list {
					width: 90%;
					margin-top: 2vw;
				}
					#fv .text ul.btn-list li {
						width: 48%;
						max-width: 100%;
					}
					#fv .text ul.btn-list li:nth-child(1) {
						margin-right: 4%;
					}
					#fv .text ul.btn-list li a {
						height: auto;
						padding: 0.7vw 1.3vw;
						border-radius: 10px;
						font-size: 1.3vw;
					}
					#fv .text ul.btn-list li:nth-child(1) a {
						background: #008AE6 url("../img/icon_arrow_yellow.svg") no-repeat right 1.3vw center / 1.4vw;
					}
					#fv .text ul.btn-list li:nth-child(2) a {
						background: #0000AD url("../img/icon_arrow_yellow.svg") no-repeat right 1.3vw center / 1.4vw;
					}
					#fv .text ul.btn-list li a:hover {
						background: #7f08b7 url("../img/icon_arrow_yellow.svg") no-repeat right 1.0vw center / 1.4vw;
					}
						#fv .text ul.btn-list li a span {
							font-size: 0.9vw;
						}
}
@media screen and (max-width: 899px) {
	#fv {
		padding-top: 60px;
		overflow: hidden;
	}
			#fv .txt-top {
				width: 60%;
				position: static;
			}

			#fv .txt-bottom {
				width: 100%;
				position: static;
			}

			#fv h1 {
				font-size: 9.6vw;
				white-space: nowrap;
				line-height: 1;
				position: static;
				padding-top: 8vw;
				padding-left: 7vw;
			}

			#fv .text {
				width: 100%;
				padding-top: 6vw;
				padding-left: 7vw;
				padding-right: 7vw;
				padding-bottom: 10vw;
				position: static;
			}
				#fv .text h2 {
					font-size: 6.4vw;
					margin-bottom: 3vw;
				}
	
				#fv .text .txt {
					font-size: 3.8vw;
				}

				#fv .text ul.btn-list {
					width: 100%;
					margin-top: 4vw;
				}
					#fv .text ul.btn-list li {
						width: 48%;
						max-width: 100%;
					}
					#fv .text ul.btn-list li a {
						padding: 2.5vw 4vw 2vw 4vw;
						font-size: 4.0vw;
					}
					#fv .text ul.btn-list li:nth-child(1) a {
						background: #008AE6 url("../img/icon_arrow_yellow.svg") no-repeat right 4vw center / 5vw;
					}
					#fv .text ul.btn-list li:nth-child(2) a {
						background: #0000AD url("../img/icon_arrow_yellow.svg") no-repeat right 4vw center / 5vw;
					}
					#fv .text ul.btn-list li a:hover {
						background: #7f08b7 url("../img/icon_arrow_yellow.svg") no-repeat right 4vw center / 5vw;
					}
						#fv .text ul.btn-list li a span {
							font-size: 3.1vw;
						}
}



	

/* news
----------------------------*/
#news {
	width: 100%;
	background: linear-gradient(90deg, #fff, #E2F0F7, #E2F0F7) fixed;
	background-size: 800% 800%;
	animation: GradietionAnimation 9s ease infinite;
}
	#news .n-tit {
		width: 180px;
	}
		#news .n-tit .en {
			font-size: 4.0rem;
			font-weight: 500;
			line-height: 1;
			margin-bottom: 10px;
		}
		#news .n-tit h2 {
			font-size: 1.6rem;
			font-weight: 500;
			line-height: 1;
		}

	#news .text {
		width: -webkit-calc(100% - 180px);
		width: calc(100% - 180px);
	}
		#news .text dl {
			display: flex;
			justify-content: flex-start;
			align-items: center;
			background: #fff;
			border-radius: 5px;
			margin-bottom: 10px;
			padding: 20px 0;
			font-size: 1.6rem;
			line-height: 1.6em;
		}
		#news .text dl:nth-last-child(1) {
			margin-bottom: 0;
		}
			#news .text dl dt {
				width: 140px;
				text-align: center;
			}
			#news .text dl dd {
				width: -webkit-calc(100% - 140px);
				width: calc(100% - 140px);
				padding-right: 20px;
			}
				#news .text dl dd a {
					color: #008AE6;
					text-decoration: underline;
				}
				#news .text dl dd a:hover {
					text-decoration: none;
				}
@media screen and (max-width: 1399px) {
	#news .n-tit {
		width: 20%;
	}
		#news .n-tit .en {
			font-size: 3.4vw;
			margin-bottom: 1vw;
		}
		#news .n-tit h2 {
			font-size: 1.4vw;
		}

	#news .text {
		width: 80%;
	}
		#news .text dl {
			margin-bottom: 1vw;
			padding: 2vw 0;
		}
			#news .text dl dt {
				width: 17%;
			}
			#news .text dl dd {
				width: 83%;
				padding-right: 2vw;
			}
}
@media screen and (max-width: 899px) {
	#news .inner {
		display: block;
	}
		#news .n-tit {
			display: flex;
			justify-content: flex-start;
			align-items: center;
			width: 100%;
			margin-bottom: 4vw;
		}
			#news .n-tit .en {
				font-size: 6.4vw;
				margin-bottom: 0;
				margin-right: 2vw;
			}
			#news .n-tit h2 {
				margin-top: 2vw;
				font-size: 3.4vw;
			}

		#news .text {
			width: 100%;
		}
			#news .text dl {
				display: block;
				margin-bottom: 3vw;
				padding: 4vw 4vw;
				font-size: 3.4vw;
			}
				#news .text dl dt {
					width: 100%;
					text-align: left;
					margin-bottom: 1.5vw;
				}
				#news .text dl dd {
					width: 100%;
					padding-right: 0;
				}
}



	

/* keyword
----------------------------*/
#keyword {
	width: 100%;
	background: linear-gradient(90deg, #fff, #E2F0F7, #E2F0F7) fixed;
	background-size: 800% 800%;
	animation: GradietionAnimation 9s ease infinite;
	position: relative;
}
	#keyword .text {
		text-align: center;
		margin-bottom: 20px;
	}
	#keyword .text:nth-last-of-type(1) {
		margin-bottom: 0;
	}
		#keyword .text img {
			width: auto;
			height: 99.9px;
		}
@media screen and (max-width: 1399px) {
	#keyword .text {
		margin-bottom: 2vw;
	}
		#keyword .text img {
			height: 7.3vw;
		}
}
@media screen and (max-width: 899px) {
	#keyword .text {
		margin-bottom: 4vw;
	}
		#keyword .text img {
			height: 7.1vw;
		}
}



	

/* line-up
----------------------------*/
#line-up ul.tab {
	margin-bottom: 40px;
	border: solid 1px #ddd;
	border-radius: 5px;
}
	#line-up ul.tab li {
		width: 50%;
		height: 54px;
		line-height: 58px;
		font-size: 2.0rem;
		font-weight: 700;
		text-align: center;
		cursor: pointer;
	}
	#line-up ul.tab li:nth-child(1) {
		border-right: solid 1px #ddd;
		border-radius: 5px 0 0 5px;
	}
	#line-up ul.tab li:nth-child(2) {
		border-radius: 0 5px 5px 0;
	}
	#line-up ul.tab li.select {
		background: #2B2B2B;
		color: #fff;
		position: relative;
	}
	#line-up ul.tab li.select:before {
		content: "";
		width: 0;
		height: 0;
		border-style: solid;
		border-color: #2b2b2b transparent transparent transparent;
		border-width: 8px 10px 0px 10px;
		position: absolute;
		bottom: -8px;
		left: 50%;
		margin-left: -10px;
	}

#line-up .cell {
	padding: 0 3%;
}
#line-up .cell.hide {
	display: none;
}

#line-up .txt {
	padding: 30px 0 0 0;
}
@media screen and (max-width: 1399px) {
	#line-up ul.tab {
		margin-bottom: 4vw;
	}
		#line-up ul.tab li {
			height: auto;
			padding: 1.4vw 0 1.1vw 0;
			line-height: 1;
			font-size: 1.4vw;
		}

	#line-up .cell {
		padding: 0;
	}

	#line-up .txt {
		padding: 2vw 0 0 0;
	}
}
@media screen and (max-width: 899px) {
	#line-up ul.tab {
		margin-bottom: 7vw;
	}
		#line-up ul.tab li {
			height: auto;
			padding: 3.4vw 0 3.0vw 0;
			line-height: 1.2em;
			font-size: 3.8vw;
		}

	#line-up .cell {
		padding: 0;
	}
		#line-up .cell img {
			width: 200%;
		}

	#line-up .txt {
		padding: 6vw 0 0 0;
	}
}



	

/* program
----------------------------*/
#program {
	padding-left: 50px;
	padding-right: 50px;
}
	#program .bg {
		background: #F5F5F5;
		border-radius: 5px;
	}
		#program .bg .bnr-area {
			margin-bottom: 70px;
		}
			#program .bg .bnr-area .box {
				background: url("../img/program_bnr_bg.jpg") no-repeat center / cover;
				border-radius: 5px;
				overflow: hidden;
				padding: 60px;
				margin-bottom: 50px;
			}
			#program .bg .bnr-area .box:nth-last-child(1) {
				background: url("../img/program_bnr_bg02.jpg") no-repeat center / cover;
			}
			#program .bg .bnr-area .box:nth-last-child(1) {
				margin-bottom: 0;
			}
				#program .bg .bnr-area .box .text {
					width: 50%;
					color: #fff;
					padding-right: 5%;
				}
					#program .bg .bnr-area .box .text .head {
						display: inline-block;
						background: #FF0;
						padding: 9px 5px 5px 5px;
						font-size: 2.0rem;
						font-weight: 700;
						line-height: 1;
						color: #0000AD;
						margin-bottom: 18px;
					}

					#program .bg .bnr-area .box .text h3 {
						font-size: 5.0rem;
						font-weight: 700;
						line-height: 1.0em;
						text-align: left;
						margin-bottom: 8px;
					}

					#program .bg .bnr-area .box .text h4 {
						font-size: 2.2rem;
						font-weight: 700;
						line-height: 1.3em;
						margin-bottom: 20px;
					}

					#program .bg .bnr-area .box .text .txt {
						font-weight: 500;
						margin-bottom: 25px;
						text-align: left;
					}

					#program .bg .bnr-area .box .text .label {
						display: inline-block;
						border: solid 1px #fff;
						padding: 10px 10px 6px 10px;
						font-size: 2.0rem;
						font-weight: 700;
						color: #FF0;
						line-height: 1.3em;
						text-align: left;
					}

				#program .bg .bnr-area .box .pht {
					width: 50%;
					border-radius: 5px;
					overflow: hidden;
				}
					#program .bg .bnr-area .box .pht img {
						width: 100%;
						height: 100%;
						object-fit: cover;
					}

		#program .sort .cell {
			display: flex;
			justify-content: space-between;
			align-items: center;
			padding: 15px 0;
			margin-bottom: 0;
		}
			#program .sort .cell .head {
				width: 200px;
			}
				#program .sort .cell .head h3 {
					font-size: 2.0rem;
					font-weight: 700;
					line-height: 1.3em;
				}

				#program .sort .cell .head a.btn-jobs {
					display: block;
					width: 80%;
					margin-top: 12px;
				}

			#program .sort .cell ul.keyword-box {
				width: -webkit-calc(100% - 200px);
				width: calc(100% - 200px);
				display: flex;
				-ms-flex-wrap: wrap;
				flex-wrap: wrap;
			}
				#program .sort .cell ul.keyword-box li {
					width: 32%;
					margin-right: 2%;
				}
				#program .sort .cell ul.keyword-box li:nth-child(3n) {
					margin-right: 0;
				}
				#program .sort .cell ul.keyword-box li:nth-child(4) {
					margin-top: 2%;
				}
				#program .sort .cell ul.keyword-box li:nth-child(5) {
					margin-top: 2%;
				}
					#program .sort .cell ul.keyword-box li input {
						clip: rect(1px, 1px, 1px, 1px);
						position: absolute;
					}
						#program .sort .cell ul.keyword-box li label.keyword_tag {
							display: flex;
							justify-content: center;
							align-items: center;
							padding: 0 10px;
							height: 50px;
							border-radius: 5px;
							font-size: 1.4rem;
							font-weight: 500;
							line-height: 1.1em;
							background: none;
							background: #fff;
							text-align: center;
							transition: all .2s;
							cursor: pointer;	
						}

						#program .sort .cell ul.keyword-box li input[type="radio"]:checked + label{
							background: #0000AD;
							color: #fff;
						}

		#program .sort .reset {
			margin-top: 20px;
			text-align: center;
			position: relative;
			z-index: 0;
		}
		#program .sort .reset:before {
			content: "";
			width: 100%;
			height: 1px;
			background: #ddd;
			position: absolute;
			top: 50%;
			left: 0;
			margin-top: -0.5px;
			z-index: -1;
		}
			#program .sort .reset button {
				width: 190px;
				height: 50px;
				background: #DBDBDB;
				border: none;
				border-radius: 5px;
				font-size: 1.6rem;
				font-weight: 500;
				cursor: pointer;
				transition: 0.3s;
				-webkit-transition: 0.3s;
			}
			#program .sort .reset button:hover {
				background: #000;
				color: #fff;
			}


		#program .keyword-list {
			margin-top: 60px;
		}
			#program .keyword-list .is-hide {
				display: none;
			}
			#program .keyword-list .list_item {
				border-radius: 5px;
				background: #fff;
				margin-bottom: 30px;
			}
			#program .keyword-list .list_item:nth-last-child(1) {
				margin-bottom: 0;
			}
				#program .keyword-list .list_item .box {
					padding: 40px 50px 40px 50px;
					position: relative;
				}
					#program .keyword-list .list_item .box .text {
						width: 70%;
						padding-left: 50px;
						order: 2;
					}
						#program .keyword-list .list_item .box .text ul.tag li {
							display: inline-block;
							background: #F5F5F5;
							font-size: 1.3rem;
							font-weight: 700;
							line-height: 1;
							padding: 8px 10px 5px 10px;
							color: #2B2B2B;
							margin-right: 5px;
							margin-bottom: 5px;
						}

						#program .keyword-list .list_item .box .text h3 {
							font-size: 3.0rem;
							font-weight: 700;
							line-height: 1.3em;
							color: #0000AD;
							margin-top: 12px;
							margin-bottom: 10px;
						}

						#program .keyword-list .list_item .box .text .txt {
							margin-bottom: 20px;
						}

						#program .keyword-list .list_item .box .text dl.items {
							display: flex;
							justify-content: flex-start;
							align-items: center;
							border-top: dashed 1px #ddd;
							padding: 20px 0;
						}
							#program .keyword-list .list_item .box .text dl.items dt {
								width: 135px;
								padding-left: 10px;
								font-size: 1.5rem;
								font-weight: 700;
								line-height: 1.3em;
							}
							#program .keyword-list .list_item .box .text dl.items dd {
								width: -webkit-calc(100% - 135px);
								width: calc(100% - 135px);
								font-size: 1.4rem;
								line-height: 1.6em;
								padding-right: 100px;
							}

						#program .keyword-list .list_item .box .text a.btn-view {
							display: block;
							width: 110px;
							position: absolute;
							bottom: 20px;
							right: 20px;
						}
							#program .keyword-list .list_item .box .text a.btn-view:hover {
								width: 120px;
								bottom: 15px;
								right: 15px;
							}

					#program .keyword-list .list_item .box .info {
						width: 30%;
						order: 1;
						text-align: center;
					}
						#program .keyword-list .list_item .box .info .pht {
							width: 100%;
							aspect-ratio: 4 / 3.4;
							overflow: hidden;
							border-radius: 5px;
						}
							#program .keyword-list .list_item .box .info .pht img {
								width: 100%;
								height: 100%;
								object-fit: cover;
							}

						#program .keyword-list .list_item .box .info h4 {
							font-size: 1.8rem;
							font-weight: 700;
							line-height: 1.3em;
							color: #0000AD;
							margin-top: 20px;
						}

@media screen and (max-width: 1399px) {
	#program {
		padding-left: 5vw;
		padding-right: 5vw;
	}
		#program .bg .bnr-area {
			margin-bottom: 5vw;
		}
			#program .bg .bnr-area .box {
				padding: 4vw;
				margin-bottom: 3vw;
			}
				#program .bg .bnr-area .box .text {
					width: 55%;
				}
					#program .bg .bnr-area .box .text .head {
						padding: 1vw 0.7vw 0.5vw 0.7vw;
						font-size: 1.8vw;
						margin-bottom: 1.5vw;
					}

					#program .bg .bnr-area .box .text h3 {
						font-size: 3.8vw;
						margin-bottom: 1vw;
					}

					#program .bg .bnr-area .box .text h4 {
						font-size: 1.8vw;
						margin-bottom: 1.5vw;
					}

					#program .bg .bnr-area .box .text .txt {
						margin-bottom: 2vw;
					}

					#program .bg .bnr-area .box .text .label {
						padding: 1vw 1vw 0.5vw 1vw;
						font-size: 1.6vw;
					}

				#program .bg .bnr-area .box .pht {
					width: 45%;
				}

		#program .sort .cell {
			padding: 1vw 0;
		}
			#program .sort .cell .head {
				width: 17%;
			}
				#program .sort .cell .head h3 {
					font-size: 1.5vw;
				}

				#program .sort .cell .head a.btn-jobs {
					margin-top: 1.2vw;
				}

			#program .sort .cell ul.keyword-box {
				width: 83%;
			}
				#program .sort .cell ul.keyword-box li label.keyword_tag {
					padding: 0 0.5vw;
					height: 4.4vw;
					font-size: 1.2vw;
				}

	#program .sort .reset {
		margin-top: 2vw;
	}
		#program .sort .reset button {
			width: 15vw;
			height: 4.4vw;
			font-size: 1.6vw;
		}


		#program .keyword-list {
			margin-top: 6vw;
		}
			#program .keyword-list .list_item {
				margin-bottom: 3vw;
			}
				#program .keyword-list .list_item .box {
					padding: 3vw 4vw 3vw 4vw;
				}
					#program .keyword-list .list_item .box .text {
						padding-left: 3vw;
					}
						#program .keyword-list .list_item .box .text ul.tag li {
							font-size: 1.1vw;
							padding: 0.8vw 1.0vw 0.5vw 1.0vw;
							margin-right: 0.5vw;
							margin-bottom: 0.5vw;
						}

						#program .keyword-list .list_item .box .text h3 {
							font-size: 2.2vw;
							margin-top: 1.2vw;
							margin-bottom: 0.5vw;
						}

						#program .keyword-list .list_item .box .text .txt {
							margin-bottom: 1.5vw;
						}

						#program .keyword-list .list_item .box .text dl.items {
							padding: 1.5vw 0;
						}
							#program .keyword-list .list_item .box .text dl.items dt {
								width: 23%;
								padding-left: 0;
								font-size: 1.3vw;
							}
							#program .keyword-list .list_item .box .text dl.items dd {
								width: 77%;
								font-size: 1.2vw;
								padding-right: 5vw;
							}

						#program .keyword-list .list_item .box .text a.btn-view {
							width: 10%;
							bottom: 1.5vw;
							right: 1.5vw;
						}
							#program .keyword-list .list_item .box .text a.btn-view:hover {
								width: 10%;
								bottom: 1.5vw;
								right: 1.5vw;
							}
	
					#program .keyword-list .list_item .box .info h4 {
						font-size: 1.4vw;
						margin-top: 2vw;
					}
}
@media screen and (max-width: 899px) {
	#program {
		padding-left: 3vw;
		padding-right: 3vw;
	}
		#program .bg .bnr-area {
			margin-bottom: 7vw;
		}
			#program .bg .bnr-area .box {
				display: block;
				padding: 6vw;
				margin-bottom: 5vw;
			}
				#program .bg .bnr-area .box .text {
					width: 100%;
					margin-bottom: 5vw;
				}
					#program .bg .bnr-area .box .text .head {
						padding: 1.5vw 1vw 0.5vw 1vw;
						font-size: 3.8vw;
						margin-bottom: 3.5vw;
					}

					#program .bg .bnr-area .box .text h3 {
						font-size: 6.8vw;
						margin-bottom: 1.5vw;
					}

					#program .bg .bnr-area .box .text h4 {
						font-size: 3.8vw;
						margin-bottom: 2.5vw;
					}

					#program .bg .bnr-area .box .text .txt {
						font-size: 3.2vw;
						margin-bottom: 3vw;
					}

					#program .bg .bnr-area .box .text .label {
						padding: 1.5vw 1.5vw 0.5vw 1.5vw;
						font-size: 3.8vw;
					}

				#program .bg .bnr-area .box .pht {
					width: 100%;
				}

		#program .sort .cell {
			display: block;
			padding: 3vw 0;
		}
			#program .sort .cell .head {
				width: 100%;
				position: relative;
			}
				#program .sort .cell .head h3 {
					font-size: 4.4vw;
					margin-bottom: 1.5vw;
				}

				#program .sort .cell .head a.btn-jobs {
					width: 36%;
					margin-top: 0;
					position: absolute;
					top: 0;
					left: 45%;
				}

			#program .sort .cell ul.keyword-box {
				width: 100%;
			}
				#program .sort .cell ul.keyword-box li {
					width: 48%;
					margin-top: 2%;
					margin-right: 4%;
					margin-bottom: 2%;
				}
				#program .sort .cell ul.keyword-box li:nth-child(5n) {
					margin-right: 4%;
				}
				#program .sort .cell ul.keyword-box li:nth-child(2n) {
					margin-right: 0;
				}
				#program .sort .cell:nth-child(1) ul.keyword-box li {
					width: 48%;
				}
				#program .sort .cell ul.keyword-box li:nth-child(3) {
					margin-right: 4%;
				}
					#program .sort .cell ul.keyword-box li label.keyword_tag {
						padding: 1vw 0.5vw 0 0.5vw;
						height: 11vw;
						font-size: 3.0vw;
					}

	#program .sort .reset {
		margin-top: 2vw;
	}
		#program .sort .reset button {
			width: 30vw;
			height: 10vw;
			font-size: 3.0vw;
		}


		#program .keyword-list {
			margin-top: 12vw;
		}
			#program .keyword-list .list_item {
				margin-bottom: 5vw;
			}
				#program .keyword-list .list_item .box {
					display: block;
					padding: 6vw;
				}
					#program .keyword-list .list_item .box .text {
						width: 100%;
						padding-left: 0;
					}
						#program .keyword-list .list_item .box .text ul.tag li {
							font-size: 2.8vw;
							padding: 1.5vw 1.5vw 1.5vw 1.5vw;
							margin-right: 2vw;
							margin-bottom: 2vw;
						}

						#program .keyword-list .list_item .box .text h3 {
							font-size: 5.2vw;
							margin-top: 1.2vw;
							margin-bottom: 2vw;
						}

						#program .keyword-list .list_item .box .text .txt {
							margin-bottom: 3vw;
						}

						#program .keyword-list .list_item .box .text dl.items {
							display: block;
							padding: 4vw 0;
						}
							#program .keyword-list .list_item .box .text dl.items dt {
								width: 100%;
								font-size: 3.6vw;
								margin-bottom: 1vw;
							}
							#program .keyword-list .list_item .box .text dl.items dd {
								width: 100%;
								font-size: 3.2vw;
								padding-right: 0;
							}

						#program .keyword-list .list_item .box .text a.btn-view {
							width: 20%;
							bottom: 12vw;
							right: 3vw;
						}
						#program .keyword-list .list_item .box .text a.btn-view:hover {
							width: 20%;
							bottom: 12vw;
							right: 3vw;
						}
	
					#program .keyword-list .list_item .box .info {
						width: 100%;
					}
						#program .keyword-list .list_item .box .info h4 {
							font-size: 4.0vw;
							margin-top: 5vw;
						}
}




	

/* voice
----------------------------*/
#voice  {
	width: 100%;
	overflow: hidden;
}
	#voice .swiper-container {
		padding: 0;
		position: relative;
	}
		#voice .swiper-container .swiper-slide {
			display: block;
			border-radius: 5px;
			padding: 30px;
			background: linear-gradient(0deg, #fff, #E2F0F7) fixed;
			position: relative;
		}
			#voice .swiper-container .swiper-slide .number  {
				font-size: 3.4rem;
				font-weight: 500;
				line-height: 1;
				position: absolute;
				top: -15px;
				left: 30px;
			}

			#voice .swiper-container .swiper-slide h3  {
				font-size: 2.0rem;
				font-weight: 700;
				line-height: 1.4em;
				text-align: center;
				margin-bottom: 15px;
			}

			#voice .swiper-container .swiper-slide .thumbnail  {
				width: 56%;
				margin: 0 auto 18px auto;
			}
				#voice .swiper-container .swiper-slide .thumbnail img  {
					-moz-transition: -moz-transform 0.2s linear;
					-webkit-transition: -webkit-transform 0.2s linear;
					-o-transition: -o-transform 0.2s linear;
					-ms-transition: -ms-transform 0.2s linear;
					transition: transform 0.2s linear;
				}
				#voice .swiper-container .swiper-slide:hover .thumbnail img  {
					-webkit-transform: scale(1.05);
					-moz-transform: scale(1.05);
					-o-transform: scale(1.05);
					-ms-transform: scale(1.05);
					transform: scale(1.05);
				}

			#voice .swiper-container .swiper-slide h4  {
				font-size: 2.0rem;
				font-weight: 700;
				line-height: 1.3em;
				text-align: center;
				margin-bottom: 3px;
			}

			#voice .swiper-container .swiper-slide .join  {
				font-size: 1.4rem;
				font-weight: 500;
				line-height: 1;
				text-align: center;
				margin-bottom: 12px;
			}

			#voice .swiper-container .swiper-slide .read  {
				font-size: 1.4rem;
				line-height: 1.7em;
				overflow: hidden;
				display: -webkit-box;
				-webkit-box-orient: vertical;
				-webkit-line-clamp: 5;
				margin-bottom: 20px;
			}

			#voice .swiper-container .swiper-slide .more  {
				width: 64%;
				height: 40px;
				margin: 0 auto;
				border-radius: 20px;
				background: #0000AD url("../img/icon_arrow_yellow.svg") no-repeat right 10px center / 16px;
				font-size: 1.4rem;
				font-weight: 700;
				text-align: center;
				line-height: 40px;
				transition: 0.3s;
				-webkit-transition: 0.3s;
			}
			#voice .swiper-container .swiper-slide:hover .more  {
				background: #008AE6 url("../img/icon_arrow_yellow.svg") no-repeat right 10px center / 16px;
			}


		#voice .swiper-container .swiper-button-prev {
			width: 44px;
			height: 44px;
			background: url("../img/btn_arrow_prev.svg") no-repeat center / 100%;
			border-radius: 50%;
			top: 50%;
			left: -22px;
			margin: -22px 0 0 0;
		}
		#voice .swiper-container .swiper-button-prev:after {
			display: none;
		}

		#voice .swiper-container .swiper-button-next {
			width: 44px;
			height: 44px;
			background: url("../img/btn_arrow_next.svg") no-repeat center / 100%;
			border-radius: 50%;
			top: 50%;
			right: -22px;
			margin: -22px 0 0 0;
		}
		#voice .swiper-container .swiper-button-next:after {
			display: none;
		}
@media screen and (max-width: 1399px) {
	#voice .swiper-container .swiper-slide {
		padding: 2.5vw;
	}
		#voice .swiper-container .swiper-slide .number  {
			font-size: 2.6vw;
			top: -1.2vw;
			left: 2.5vw;
		}

		#voice .swiper-container .swiper-slide h3  {
			font-size: 1.5vw;
			margin-bottom: 1vw;
		}

		#voice .swiper-container .swiper-slide .thumbnail  {
			width: 56%;
			margin: 0 auto 1.3vw auto;
		}

		#voice .swiper-container .swiper-slide h4  {
			font-size: 1.5vw;
			margin-bottom: 0.2vw;
		}

		#voice .swiper-container .swiper-slide .join  {
			font-size: 1.1vw;
			margin-bottom: 1vw;
		}

		#voice .swiper-container .swiper-slide .read  {
			font-size: 1.1vw;
			margin-bottom: 1.5vw;
		}

		#voice .swiper-container .swiper-slide .more  {
			width: 64%;
			height: auto;
			border-radius: 30px;
			padding: 1vw;
			background: #0000AD url("../img/icon_arrow_yellow.svg") no-repeat right 1vw center / 1.2vw;
			font-size: 1.1vw;
			line-height: 1;
		}
		#voice .swiper-container .swiper-slide:hover .more  {
			background: #008AE6 url("../img/icon_arrow_yellow.svg") no-repeat right 1vw center / 1.2vw;
		}


	#voice .swiper-container .swiper-button-prev {
		width: 40px;
		height: 40px;
		left: -20px;
		margin: -20px 0 0 0;
	}

	#voice .swiper-container .swiper-button-next {
		width: 40px;
		height: 40px;
		right: -20px;
		margin: -20px 0 0 0;
	}
}
@media screen and (max-width: 899px) {
	#voice .swiper-container .swiper-slide {
		padding: 6.0vw;
	}
		#voice .swiper-container .swiper-slide .number  {
			font-size: 7.0vw;
			top: -3.2vw;
			left: 6vw;
		}

		#voice .swiper-container .swiper-slide h3  {
			font-size: 4.6vw;
			margin-bottom: 3vw;
		}

		#voice .swiper-container .swiper-slide .thumbnail  {
			margin: 0 auto 4vw auto;
		}

		#voice .swiper-container .swiper-slide h4  {
			font-size: 4.4vw;
			margin-bottom: 1vw;
		}

		#voice .swiper-container .swiper-slide .join  {
			font-size: 3.6vw;
			margin-bottom: 3vw;
		}

		#voice .swiper-container .swiper-slide .read  {
			font-size: 3.6vw;
			margin-bottom: 4vw;
		}

		#voice .swiper-container .swiper-slide .more  {
			width: 80%;
			padding: 4vw 0;
			background: #0000AD url("../img/icon_arrow_yellow.svg") no-repeat right 3vw center / 5vw;
			font-size: 4.0vw;
		}
		#voice .swiper-container .swiper-slide:hover .more  {
			background: #008AE6 url("../img/icon_arrow_yellow.svg") no-repeat right 3vw center / 5vw;
		}
}




	

/* animatedModal
----------------------------*/
.animatedModal {
	background: rgba(0, 0, 173,0.9) !important;
	height: 100vh;
	height: 100dvh;
	z-index: 10;
}
	.animatedModal .close {
		width: 100%;
		position: fixed;
		top: 0;
		left: 0;
		cursor: pointer;
		transition: all 0.2s;
		z-index: 11;
	}
		.animatedModal .close img {
			margin-top: 40px;
			width: 40px;
			transition: all 0.2s;
			margin-left: -webkit-calc(100% - 80px);
			margin-left: calc(100% - 80px);
		}
		.animatedModal .close img:hover {
			transform: rotate(90deg);
		}

	.animatedModal .modal-content {
		width: 80%;
		background: #fff;
		overflow: hidden;
		position: relative;
		z-index: 2;
	}
		.animatedModal .modal-content .cont {
			height: 100vh;
			height: 100dvh;
			padding: 20px 0 60px 0;
			overflow-y: scroll;
		}
			.animatedModal .modal-content .cont::-webkit-scrollbar {
				width: 5px;
				height: 5px;
			}
			.animatedModal .modal-content .cont::-webkit-scrollbar-track {
				background: #fff;
			}
			.animatedModal .modal-content .cont::-webkit-scrollbar-thumb {
				background: #0000AD;
			}
				.animatedModal .modal-content .cont .marquee {
					display: flex;
					width: 100%;
					overflow: hidden;
					color: #0000AD;
				}
					.animatedModal .modal-content .cont .marquee .marquee__item {
						flex: 0 0 auto;
						overflow: hidden;
						font-size: 10.0rem;
						font-weight: 500;
						white-space: nowrap;
						line-height: 1;
						padding-right: 20px;
					}
					.animatedModal .modal-content .cont .marquee .marquee__item:nth-child(odd) {
						animation: loop 80s -40s linear infinite;
					}
					.animatedModal .modal-content .cont .marquee .marquee__item:nth-child(even) {
						animation: loop2 80s linear infinite;
					}
					@keyframes loop {
						0% {
							transform: translateX(100%);
						}
						to {
							transform: translateX(-100%);
						}
					}
					@keyframes loop2 {
						0% {
							transform: translateX(0);
						}
						to {
							transform: translateX(-200%);
						}
					}


				.animatedModal .modal-content .cont .text {
					max-width: 780px;
					margin: 0 auto;
				}
					.animatedModal .modal-content .cont .text .program {
						padding-top: 60px;
						margin-bottom: 30px;
						padding-bottom: 35px;
						border-bottom: solid 1px #ddd;
					}
						.animatedModal .modal-content .cont .text .program h2 {
							font-size: 4.0rem;
							line-height: 1.3em;
							color: #0000AD;
						}
						.animatedModal .modal-content .cont .text .program .head {
							font-size: 2.4rem;
							font-weight: 700;
							line-height: 1.3em;
							color: #0000AD;
						}

					.animatedModal .modal-content .cont .text .profile {
						padding-top: 30px;
						margin-bottom: 30px;
					}
						.animatedModal .modal-content .cont .text .profile h2 {
							font-size: 3.0rem;
							font-weight: 600;
							line-height: 1;
							margin-bottom: 20px;
						}

						.animatedModal .modal-content .cont .text .profile .name {
							font-size: 2.0rem;
							line-height: 1;
							margin-bottom: 15px;
						}

						.animatedModal .modal-content .cont .text .profile .job {
							font-size: 1.3rem;
							line-height: 1.6em;
						}

						.animatedModal .modal-content .cont .text .mainpht {
							border-radius: 5px;
							overflow: hidden;
						}

						.animatedModal .modal-content .cont .text h3 {
							font-size: 2.2rem;
							font-weight: 700;
							line-height: 1.4em;
							margin-top: 40px;
						}

						.animatedModal .modal-content .cont .text .txt {
							margin-top: 15px;
						}
@media screen and (max-width: 1399px) {
	.animatedModal .modal-content .cont .marquee .marquee__item {
		font-size: 8.0rem;
	}


	.animatedModal .modal-content .cont .text {
		max-width: 800px;
		padding: 0 5vw;
	}
		.animatedModal .modal-content .cont .text .profile h2 {
			font-size: 2.6rem;
		}

		.animatedModal .modal-content .cont .text .profile .name {
			font-size: 1.8rem;
		}

		.animatedModal .modal-content .cont .text .profile .job {
			font-size: 1.2rem;
			line-height: 1.5em;
		}


		.animatedModal .modal-content .cont .text h3 {
			font-size: 2.0rem;
		}

		.animatedModal .modal-content .cont .text .txt {
			font-size: 1.4rem;
			margin-top: 12px;
		}
}
@media screen and (max-width: 899px) {
	.animatedModal .close img {
		margin-top: 20px;
		width: 40px;
		margin-left: -webkit-calc(100% - 60px);
		margin-left: calc(100% - 60px);
	}
	
	
	.animatedModal .modal-content .cont {
		padding: 4vw 0 6vw 0;
	}
		.animatedModal .modal-content .cont .marquee .marquee__item {
			font-size: 12.0vw;
		}

		.animatedModal .modal-content .cont .text {
			max-width: 800px;
			padding: 0 5vw;
		}
			.animatedModal .modal-content .cont .text .program {
				padding-top: 6vw;
				margin-bottom: 3vw;
				padding-bottom: 4vw;
			}
				.animatedModal .modal-content .cont .text .program h2 {
					font-size: 6.0vw;
				}
				.animatedModal .modal-content .cont .text .program .head {
					font-size: 4.0vw;
				}
	
			.animatedModal .modal-content .cont .text .profile {
				padding-top: 6vw;
				margin-bottom: 4vw;
			}
				.animatedModal .modal-content .cont .text .profile h2 {
					font-size: 6.0vw;
					margin-bottom: 4vw;
				}

				.animatedModal .modal-content .cont .text .profile .name {
					font-size: 4.2vw;
					margin-bottom: 3vw;
				}

				.animatedModal .modal-content .cont .text .profile .job {
					font-size: 3.1vw;
					letter-spacing: 0;
				}


				.animatedModal .modal-content .cont .text h3 {
					font-size: 4.4vw;
					margin-top: 5vw;
				}

				.animatedModal .modal-content .cont .text .txt {
					font-size: 3.6vw;
					margin-top: 3vw;
				}
}




	

/* entry
----------------------------*/
#entry {
	padding: 0 50px;
}
	#entry .bg {
		background: url("../img/entry_bg.jpg") no-repeat center / cover;
		border-radius: 5px;
		text-align: center;
	}
		#entry .bg h2 {
			font-size: 2.2rem;
			font-weight: 700;
			line-height: 1.3em;
			margin-bottom: 20px;
		}
@media screen and (max-width: 1399px) {
	#entry {
		padding: 0 5vw;
	}
		#entry .bg h2 {
			font-size: 1.6vw;
			margin-bottom: 1.5vw;
		}
}
@media screen and (max-width: 899px) {
	#entry {
		padding: 0 7vw;
	}
		#entry .bg h2 {
			font-size: 4.2vw;
			line-height: 1.4em;
			margin-bottom: 4.5vw;
		}
}




	

/* footer
----------------------------*/
#footer {
	padding: 30px 0;
	font-size: 1.4rem;
	line-height: 1;
	text-align: center;
}
@media screen and (max-width: 1399px) {
	#footer {
		padding: 3vw 0;
		font-size: 1.0vw;
	}
}
@media screen and (max-width: 899px) {
	#footer {
		padding: 30px 0 84px 0;
		font-size: 3.0vw;
	}
}