/*
Theme Name: worksreview
Description: worksreview
Version: 1.0
Author: worksreview
*/



/* ++++++++++++++++++++++++++++++++++++++++++++++ */
/* 共通項目 */
/* ++++++++++++++++++++++++++++++++++++++++++++++ */
*{margin:0;padding:0;text-decoration:none}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}a{text-decoration:none}em{font-style:normal}ul li{list-style-type:none;list-style-image:none}address{font-style:normal}
html{font-size: 62.5%;}
body{font-size: 1.6em;}

/* マージン */
.margin02 {	margin-bottom: 2px; }
.margin05 {	margin-bottom: 5px; }
.margin06 {	margin-bottom: 6px; }
.margin08 {	margin-bottom: 8px; }
.margin10 {	margin-bottom: 10px; }
.margin15 {	margin-bottom: 15px; }
.margin20 {	margin-bottom: 20px; }
.margin30 {	margin-bottom: 30px; }
.margin40 {	margin-bottom: 40px; }


/* 文字装飾 */
strong {
	font-weight: bold;
}


ul li {
	list-style:none;	
}


/* float解除 */
.cbox { 
}
* html .cbox {
	zoom: 100%;
}
*:first-child+html .cbox {
	display: inline-block;
}
.cbox:after {
	content: "."; 
	clear: both; 
	height: 0; 
	display: block; 
	visibility: hidden;
}


/* box-sizing */ 
* {
	box-sizing: border-box;
}



/* img */ 
img {
	width: 100%;
	height: auto;
}



/* sp */ 
.sp {
	display: none !important;
}



/* リンク */
/* ++++++++++++++++++++++++++++++++++++++++++++++ */
a {
	color: #242424;
	text-decoration: none;
	transition: 0.3s;
	-webkit-transition: 0.3s;
}


/* テキスト装飾 */
/* ++++++++++++++++++++++++++++++++++++++++++++++ */
/* 小文字 */
.cap {
	line-height: 1.5;
	font-size: 1.2rem;
}
.en {
	font-family: 'Manrope', sans-serif;
	font-weight: 600;
}


/* 横幅 */
/* ++++++++++++++++++++++++++++++++++++++++++++++ */
body {
	background: #F4F4F4;
	font-family: 'Noto Sans JP','Hiragino Kaku Gothic ProN', 'ヒラギノ角ゴ ProN W3', Meiryo, メイリオ, Osaka, 'MS PGothic', arial, helvetica, sans-serif;
	font-weight: 500;
	color: #242424;
	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;
}
body.detail_bg {
	background: #F4F4F4 url("img/bg_w.svg") no-repeat center top / 876px;
}


/* flex */
/* ++++++++++++++++++++++++++++++++++++++++++++++ */
.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;
}




/* ++++++++++++++++++++++++++++++++++++++++++++++ */
/* ヘッダー */
/* ++++++++++++++++++++++++++++++++++++++++++++++ */
#header {
	width: 100%;
	position: fixed;
	top: 50px;
	left: 0;
	z-index: 12;
	transition: 0.3s;
	-webkit-transition: 0.3s;
}
#header.is-animation {
	top: 0;
	background: rgba(255,255,255,1);
	padding: 20px 0;
}
	#header .logo {
		width: 300px;
		margin-top: 0;
		margin-left: 50px;
	}
		#header .logo a {
			display: flex;
			justify-content: flex-start;
			align-items: center;
			height: 60px;
		}


	#header .link {
		height: 60px;
		margin-right: 15px;
		margin-left: 15px;
	}
		#header .link a {
			display: flex;
			justify-content: flex-start;
			align-items: center;
			height: 60px;
			font-size: 1.6rem;
			line-height: 1;
			text-align: left;
			position: relative;
		}
		#header .link a:before {
			content: "";
			width: 26px;
			height: 26px;
			border-radius: 50%;
			border: solid 1px #242424;
			background: #fff url("img/icon_arrow_black.svg") no-repeat center;
			margin-right: 8px;
			transition: 0.3s;
			-webkit-transition: 0.3s;
		}
		#header .link a:hover:before {
			content: "";
			width: 32px;
			height: 32px;
			background: #242424 url("img/icon_arrow_white.svg") no-repeat center;
			margin-right: 4px;
		}
			#header .link a span {
				text-decoration: underline;
			}
			#header .link a:hover span {
				text-decoration: none;
			}


	#header .btnlink {
		width: 130px;
		margin-right: 10px;
	}
		#header .btnlink a {
			display: flex;
			justify-content: center;
			align-items: center;
			height: 60px;
			background: #75D0DA;
			border-radius: 30px;
			overflow: hidden;
			font-size: 1.4rem;
			font-weight: 700;
			color: #fff;
			text-align: center;
			line-height: 1.3em;
		}
		#header .btnlink a:hover {
			opacity: 0.7;
		}


	#header .searchform {
		width: 230px;
		height: 60px;
		overflow: hidden;
		background: #fff;
		border-radius: 30px;
		margin-right: 130px;
		display: -webkit-box;
		display: -ms-flexbox;
		display: flex;
		display: -webkit-flex;
		-webkit-box-pack: justify;
		-webkit-justify-content: space-between;
		-ms-flex-pack: justify;
		justify-content: space-between;
		transition: 0.3s;
		-webkit-transition: 0.3s;
	}
	#header.is-animation .searchform {
		border: solid 1px #ddd;
	}
		#header .searchform input {
			width: calc(100% - 50px);
			border: none;
			background: #fff;
			font-size: 1.6rem;
			padding-left: 20px;
			border-radius: 30px 0 0 30px;
		}
		#header .searchform button {
			width: 50px;
			height: 100%;
			padding-left: 10px;
			text-indent: 0;
			border: none;
			text-align: left;
			background: #fff;
			cursor: pointer;
		}
			#header .searchform button img {
				width: 18px;
				height: auto;
			}
	


	#header .menubtn {
		width: 60px;
		height: 60px;
		background: #2C2C2C;
		border-radius: 50%;
		position: absolute;
		top: 0;
		right: 50px;
		z-index: 100;
		transition: 0.3s;
		-webkit-transition: 0.3s;
	}
	#header.is-animation .menubtn {
		top: 20px;
	}
		#header .menubtn .menu {
			display: block;
			position: relative;
			cursor: pointer;
			width: 60px;
			height: 60px;
		}
			#header .menubtn .menu .openbtn-area {
				transition: all .4s;
			}
				#header .menubtn .menu span {
					width: 24px !important;
					display: inline-block;
					transition: all .4s;
					position: absolute;
					left: 50%;
					margin-left: -12px;
					height: 1px;
					background: #fff;
				}
				#header .menubtn .menu span:nth-of-type(1) {
					top: 24px;	
				}
				#header .menubtn .menu span:nth-of-type(2) {
					top: 30px;
				}
				#header .menubtn .menu span:nth-of-type(3) {
					top: 36px;
				}

			#header .menubtn .menu.active .openbtn-area {
				transform: rotateY(-360deg);
			}
				#header .menubtn .menu.active span:nth-of-type(1) {
					width: 30px !important;
					top: 24px;
					left: 50%;
					margin-left: -15px;
					transform: translateY(6px) rotate(-135deg);
				}
				#header .menubtn .menu.active span:nth-of-type(2) {
					opacity: 0;
				}
				#header .menubtn .menu.active span:nth-of-type(3) {
					width: 30px !important;
					top: 36px;
					left: 50%;
					margin-left: -15px;
					transform: translateY(-6px) rotate(135deg);
				}




/* ++++++++++++++++++++++++++++++++++++++++++++++ */
/* メニュー */
/* ++++++++++++++++++++++++++++++++++++++++++++++ */
#menubox {
	display: none;
	width: 100%;
	height: 100vh;
	background: #F4F4F4;
	position: fixed;
	top: 0;
	left: 0;
	z-index: 11;
}
	#menubox .menunav {
		display: flex;
		justify-content: center;
		align-items: center;
		max-width: 1200px;
		margin: auto;
		height: 100vh;
		transition: 0.3s;
		-webkit-transition: 0.3s;
	}
		#menubox .menunav .localnav {
			width: 100%;
		}
			#menubox .menunav .localnav .box {
				margin-bottom: 50px;
			}
				#menubox .menunav .localnav .box .tit_head {
					font-size: 2.0rem;
					font-weight: 700;
					line-height: 1;
					margin-bottom: 25px;
					position: relative;
					padding-left: 23px;
				}
				#menubox .menunav .localnav .box .tit_head:before {
					content: "";
					background: linear-gradient(70deg, #5EE7DF, #B490CA);
					width: 16px;
					height: 16px;
					border-radius: 50%;
					position: absolute;
					top: 3px;
					left: 0;
				}

				#menubox .menunav .localnav .box ul.catlist li {
					width: 32%;
					margin-right: 2%;
					margin-bottom: 2%;
				}
				#menubox .menunav .localnav .box ul.catlist li:nth-child(3n) {
					margin-right: 0;
				}
					#menubox .menunav .localnav .box ul.catlist li a {
						display: block;
						overflow: hidden;
						border-radius: 10px;
						background: rgba(255,255,255,1.0) url("img/icon_arrow_gr.svg") no-repeat center right 20px;
						font-size: 1.7rem;
						font-weight: 700;
						line-height: 1.2em;
						padding: 20px 40px 20px 20px;
					}
					#menubox .menunav .localnav .box ul.catlist li a:hover {
						background: rgba(255,255,255,0.6) url("img/icon_arrow_gr.svg") no-repeat center right 15px;
					}
						#menubox .menunav .localnav .box ul.catlist li a span {
							font-size: 1.2rem;
							font-weight: 400;
						}

				#menubox .menunav .localnav .box ul.taglist li {
					margin-right: 20px;
					margin-bottom: 10px;
				}
				#menubox .menunav .localnav .box ul.taglist li:nth-last-child(1) {
					margin-right: 0;
				}
					#menubox .menunav .localnav .box ul.taglist li a {
						display: flex;
						justify-content: flex-start;
						align-items: center;
						height: 24px;
						font-size: 1.4rem;
						padding-left: 30px;
						line-height: 1;
						position: relative;
					}
					#menubox .menunav .localnav .box ul.taglist li a:hover {
						opacity: 0.7;
					}
					#menubox .menunav .localnav .box ul.taglist li a:before {
						content: "";
						width: 22px;
						height: 22px;
						border-radius: 50%;
						border: solid 1px #242424;
						background: #fff url("img/icon_tag.svg") no-repeat center;
						position: absolute;
						top: 0;
						left: 0;
						transition: 0.3s;
						-webkit-transition: 0.3s;
					}




/* ++++++++++++++++++++++++++++++++++++++++++++++ */
/* 基本レイアウト */
/* ++++++++++++++++++++++++++++++++++++++++++++++ */

/* main */
#main {
	background: url("img/bg_r.svg") no-repeat right bottom / 375px;
	position: relative;
	padding-bottom: 100px;
	transition: 0.3s;
	-webkit-transition: 0.3s;
}
#main.top {
	background: url("img/bg_r.svg") no-repeat right bottom / 600px;
}
#main.about {
	background: url("img/bg_r.svg") no-repeat left bottom / 270px;
}
	#main #contents {
		width: -webkit-calc(100% - 300px);
		width: calc(100% - 300px);
		padding-right: 80px;
	}


	#main #localnav {
		width: 300px;
	}
		#main #localnav .box {
			margin-bottom: 50px;
		}
		#front_page #main #localnav .slider {
			display: none;
		}
			#main #localnav .box .tit_head {
				font-size: 2.0rem;
				font-weight: 700;
				line-height: 1;
				margin-bottom: 15px;
				position: relative;
				padding-left: 23px;
			}
			#main #localnav .box .tit_head:before {
				content: "";
				background: linear-gradient(70deg, #5EE7DF, #B490CA);
				width: 16px;
				height: 16px;
				border-radius: 50%;
				position: absolute;
				top: 3px;
				left: 0;
			}


			#main #localnav .box .swiper-container {
				overflow: hidden;
				padding-bottom: 30px;
				position: relative;
			}
				#main #localnav .box .swiper-container .swiper-slide a {
					display: block;
					border-radius: 15px;
					overflow: hidden;
				}
					#main #localnav .box .swiper-container .swiper-slide a 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;
					}
					#main #localnav .box .swiper-container .swiper-slide a:hover 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);
					}

				#main #localnav .box .swiper-container .swiper-pagination {
					bottom: 0;
					z-index: 8;
				}
					#main #localnav .box .swiper-container .swiper-pagination .swiper-pagination-bullet {
						background: #fff;
						border: solid 1px #242424;
						opacity: 1;
					}
					#main #localnav .box .swiper-container .swiper-pagination .swiper-pagination-bullet-active {
						background: #242424;
					}


			#main #localnav .box ul.catlist li {
				margin-bottom: 10px;
			}
			#main #localnav .box ul.catlist li:nth-last-child(1) {
				margin-bottom: 0;
			}
				#main #localnav .box ul.catlist li a {
					display: block;
					overflow: hidden;
					border-radius: 10px;
					background: rgba(255,255,255,1.0) url("img/icon_arrow_gr.svg") no-repeat center right 20px;
					font-size: 1.7rem;
					font-weight: 700;
					line-height: 1.2em;
					padding: 20px;
				}
				#main #localnav .box ul.catlist li a:hover {
					background: rgba(255,255,255,0.6) url("img/icon_arrow_gr.svg") no-repeat center right 15px;
				}
					#main #localnav .box ul.catlist li a span {
						font-size: 1.2rem;
						font-weight: 400;
					}

			#main #localnav .box ul.taglist li {
				margin-bottom: 8px;
			}
			#main #localnav .box ul.taglist li:nth-last-child(1) {
				margin-bottom: 0;
			}
				#main #localnav .box ul.taglist li a {
					display: flex;
					justify-content: flex-start;
					align-items: center;
					height: 24px;
					font-size: 1.4rem;
					padding-left: 30px;
					line-height: 1;
					position: relative;
				}
				#main #localnav .box ul.taglist li a:hover {
					opacity: 0.7;
				}
				#main #localnav .box ul.taglist li a:before {
					content: "";
					width: 22px;
					height: 22px;
					border-radius: 50%;
					border: solid 1px #242424;
					background: #fff url("img/icon_tag.svg") no-repeat center;
					position: absolute;
					top: 0;
					left: 0;
					transition: 0.3s;
					-webkit-transition: 0.3s;
				}

			#front_page #main #localnav .special{
				display: none;
			}
			#main #localnav .box .special_bnr {
				display: block;
				background: #fff;
				padding: 10px;
				border-radius: 15px;
			}
				#main #localnav .box .special_bnr .pht {
					overflow: hidden;
					border-radius: 10px;
				}
					#main #localnav .box .special_bnr .pht 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;
					}
					#main #localnav .box .special_bnr:hover .pht 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);
					}



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

/* txt */
.txt {
	font-size: 1.6rem;
	font-weight: 500;
	line-height: 2em;
}

/* btn */
.btn {
	width: 275px;
}
	.btn a {
		display: flex;
		justify-content: center;
		align-items: center;
		height: 70px;
		border-radius: 35px;
		background: #242424 url("img/icon_arrow_white.svg") no-repeat center right 22px;
		font-size: 1.6rem;
		line-height: 1;
		color: #fff;
		text-align: center;
	}
	.btn a:hover {
		background: #000 url("img/icon_arrow_white.svg") no-repeat center right 18px;
	}

/* event-free-area */
.event-free-area {
	padding-top: 8%;
}
	.event-free-area .event-inner {
		max-width: 960px;
		margin: 0 auto;
	}


/* wp-pagenavi */
.pagenavi {
	width: 100%;
	display: block;
}
.wp-pagenavi {
	display: flex;
	justify-content: center;
	align-items: center;
	clear: both;
	text-align: center;
	font-family: 'Manrope', sans-serif;
	font-weight: 700;
	font-size: 1.4rem;
}
.wp-pagenavi a, .wp-pagenavi span {
	display: flex;
	justify-content: center;
	align-items: center;
	width: 40px;
	height: 40px;
	border-radius: 50%;
	color: #242424;
	background: #fff;
	border: solid 1px #fff;
	padding: 0;
	margin: 0 5px;
	transition: 0.3s;
	-webkit-ransition: 0.3s;
}
.wp-pagenavi a:hover{
	opacity: 0.7;
}
.wp-pagenavi span.current{
	color: #fff;
	background: #242424;
	border: solid 1px #242424;
}
.wp-pagenavi .pages {
	display: none;
}


/* recommend-area */
.recommend-area {
	margin-top: 80px;
}
	.recommend-area .r-ttl {
		text-align: center;
		margin-bottom: 25px;
	}
		.recommend-area .r-ttl h2.r-h2 {
			font-size: 2.6rem;
			font-weight: 700;
			line-height: 1.3em;
			margin-top: 0;
			margin-bottom: 8px;
			padding: 0;
		}
		.recommend-area .r-ttl h2.r-h2:before {
			display: none;
		}

		.recommend-area .r-ttl .en {
			font-size: 1.4rem;
			line-height: 1;
			color: #A2A2A2;
		}

	.recommend-area .recommend .box,
	.recommend-area .event-recommend .box {
		background: #fff;
		border-radius: 15px;
		margin-bottom: 15px;
	}
		.recommend-area .recommend .box a.link,
		.recommend-area .event-recommend .box a.link {
			display: flex;
			justify-content: flex-start;
			align-items: flex-start;
			padding: 25px;
			position: relative;
		}
			.recommend-area .recommend .box a.link .pht, 
			.recommend-area .event-recommend .box a.link .pht {
				width: 250px;
				overflow: hidden;
				border-radius: 10px;
				aspect-ratio: 16 / 9;
				border: solid 1px #ddd;
			}
				.recommend-area .recommend .box a.link .pht img,
				.recommend-area .event-recommend .box a.link .pht img {
					width: 100%;
					height: 100%;
					object-fit: cover;
					-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;
					margin: 0;
				}
				.recommend-area .recommend .box a.link:hover .pht img,
				.recommend-area .event-recommend .box a.link:hover .pht 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);
				}

			.recommend-area .recommend .box a.link .text,
			.recommend-area .event-recommend .box a.link .text {
				width: -webkit-calc(100% - 250px);
				width: calc(100% - 250px);
				padding-left: 20px;
			}
				.recommend-area .recommend .box a.link .text  .head,
				.recommend-area .event-recommend .box a.link .text .head {
					display: inline-block;
					background: #F4F4F4;
					font-size: 1.3rem;
					line-height: 1;
					padding: 4px 8px 5px 8px;
					border-radius: 5px;
					margin-bottom: 8px;
				}

				.recommend-area .recommend .box a.link .text h3,
				.recommend-area .event-recommend .box a.link .text h3 {
					font-size: 1.8rem;
					font-weight: 700;
					line-height: 1.3em;
					margin-bottom: 8px;
				}

				.recommend-area .recommend .box a.link .text p,
				.recommend-area .event-recommend .box a.link .text p {
					font-size: 1.4rem;
					line-height: 1.6em;
					color: #585858;
				}

				.recommend-area .recommend .box a.link .text .more,
				.recommend-area .event-recommend .box a.link .text .more {
					display: inline-block;
					background: url("img/icon_arrow_black.svg") no-repeat right center / 12px;
					padding-right: 20px;
					font-size: 1.4rem;
					line-height: 1;
					transition: 0.3s;
					-webkit-transition: 0.3s;
					position: absolute;
					bottom: 25px;
					right: 25px;
				}
				.recommend-area .recommend .box a.link:hover .text .more,
				.recommend-area .event-recommend .box a.link:hover .text .more {
					padding-right: 17px;
				}



/* ++++++++++++++++++++++++++++++++++++++++++++++ */
/* 下層タイトル */
/* ++++++++++++++++++++++++++++++++++++++++++++++ */

/* pagetitle */
#pagetitle {
    width: 100%;
	padding-top: 130px;
}
	#pagetitle ul.breadcrumb {
		padding: 0 50px;
	}
		#pagetitle ul.breadcrumb li {
			padding-right: 30px;
			margin-right: 10px;
			position: relative;
		}
		#pagetitle ul.breadcrumb li:before {
			content: "";
			width: 20px;
			height: 1px;
			background: #DDD;
			position: absolute;
			top: 50%;
			right: 0;
			margin-top: -0.5px;
		}
		#pagetitle ul.breadcrumb li:nth-last-child(1):before {
			display: none;
		}
			#pagetitle ul.breadcrumb li a {
				display: block;
				font-size: 1.2rem;
				line-height: 1;
				color: #989898;
			}
			#pagetitle ul.breadcrumb li a:hover {
				opacity: 0.7;
			}
			#pagetitle ul.breadcrumb li span {
				display: block;
				font-size: 1.2rem;
				line-height: 1;
			}
				#pagetitle ul.breadcrumb li span br {
					display: none;
				}


	#pagetitle .text {
		height: 260px;
		text-align: center;
	}
	#pagetitle.cat .text {
		padding-top: 80px;
	}
	#pagetitle.tag .text {
		padding-top: 90px;
	}
	#pagetitle.detail .text {
		padding-top: 100px;
		height: auto;
		margin-bottom: 40px;
		text-align: left;
	}
		#pagetitle .text h1 {
			display: inline-block;
			font-size: 5.0rem;
			font-weight: 700;
			line-height: 1;
			margin-bottom: 10px;
			position: relative;
		}
		#pagetitle.tag .text h1:before {
			content: "";
			width: 48px;
			height: 48px;
			border-radius: 50%;
			background: #fff url("img/icon_tag.svg") no-repeat center / 14px;
			border: solid 1px #242424;
			position: absolute;
			top: 0;
			left: -60px;
		}
		#pagetitle.detail .text h1 {
			width: -webkit-calc(100% - 300px);
			width: calc(100% - 300px);
			font-size: 4.0rem;
			letter-spacing: 0.06em;
			line-height: 1.4em;
		}

		#pagetitle .text p {
			font-size: 1.6rem;
		}


		#pagetitle .text .info {
			display: flex;
			justify-content: flex-start;
			align-items: center;
			margin-bottom: 15px;
		}
			#pagetitle .text .info time {
				display: block;
				line-height: 1;
				margin-right: 15px;
			}

			#pagetitle .text .info .cat {
				display: flex;
				justify-content: center;
				align-items: center;
				border-radius: 15px;
				width: 95px;
				height: 30px;
				line-height: 1;
				color: #fff;
				text-align: center;
				margin-right: 8px;
			}
			#pagetitle .text .info .recruitment-activity {
				background: #75D0DA;
			}
			#pagetitle .text .info .hr-strategy {
				background: #AE96CB;
			}
			#pagetitle .text .info .data-for-investigation {
				background: #8FB5D3;
			}

			#pagetitle .text .info .online {
				width: 30px;
			}


			#pagetitle .text ul.tag li {
				margin-top: 20px;
				margin-right: 12px;
			}
			#pagetitle .text ul.tag li:nth-last-child(1) {
				margin-right: 0;
			}
				#pagetitle .text ul.tag li a {
					display: flex;
					justify-content: flex-start;
					align-items: center;
					height: 24px;
					font-size: 1.4rem;
					padding-left: 30px;
					line-height: 1;
					position: relative;
				}
				#pagetitle .text ul.tag li a:before {
					content: "";
					width: 22px;
					height: 22px;
					border-radius: 50%;
					border: solid 1px #242424;
					background: #fff url("img/icon_tag.svg") no-repeat center;
					position: absolute;
					top: 0;
					left: 0;
					transition: 0.3s;
					-webkit-transition: 0.3s;
				}



/* title */
.title {
    width: 100%;
	text-align: center;
	margin-bottom: 30px;
}
	.title h2 {
		font-size: 3.4rem;
		font-weight: 700;
		line-height: 1.4em;
		margin-bottom: 3px;
	}

	.title .en {
		font-size: 1.4rem;
		color: #C3C3C3;
		line-height: 1;
	}




/* ++++++++++++++++++++++++++++++++++++++++++++++ */
/* TOP FV */
/* ++++++++++++++++++++++++++++++++++++++++++++++ */
#fv {
	width: 100%;
	background: url("img/bg_w.svg") no-repeat center top;
	margin-bottom: 120px;
}
	#fv .inner {
		height: 800px;
		padding-top: 235px;
	}
		#fv .inner .text {
			width: 45%;
			padding-right: 5%;
		}
			#fv .inner .text .info {
				display: flex;
				justify-content: flex-start;
				align-items: center;
				margin-bottom: 20px;
			}
				#fv .inner .text .info time {
					display: block;
					line-height: 1;
					margin-right: 20px;
				}

				#fv .inner .text .info .cat {
					display: flex;
					justify-content: center;
					align-items: center;
					border-radius: 15px;
					width: 120px;
					height: 30px;
					background: linear-gradient(70deg, #5EE7DF, #B490CA);
					color: #fff;
					text-align: center;
					margin-right: 10px;
				}
				#fv .inner .text .info .cat.recruitment-activity {
					background: #75D0DA;
				}
				#fv .inner .text .info .cat.hr-strategy {
					background: #AE96CB;
				}
				#fv .inner .text .info .cat.data-for-investigation {
					background: #8FB5D3;
				}

				#fv .inner .text .info .online {
					width: 30px;
				}

			#fv .inner .text h2 {
				font-size: 4.0rem;
				font-weight: 700;
				line-height: 1.3em;
				margin-bottom: 40px;
			}


		#fv .inner .pht {
			width: 55%;
		}
			#fv .inner .pht a {
				display: block;
				overflow: hidden;
				border-radius: 15px;
				box-shadow: 10px 10px rgb(0 0 0 / 5%);
			}
				#fv .inner .pht a 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;
				}
				#fv .inner .pht a:hover 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);
				}




/* ++++++++++++++++++++++++++++++++++++++++++++++ */
/* special-area */
/* ++++++++++++++++++++++++++++++++++++++++++++++ */
.special-area {
	margin-bottom: 65px;
}
	.special-area a {
		display: block;
		background: #fff;
		border-radius: 15px;
		padding: 15px;
		width: 100%;
		max-width: 500px;
		margin: auto;
	}
		.special-area a .pht {
			overflow: hidden;
			border-radius: 10px;
		}
			.special-area a .pht 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;
			}
			.special-area a:hover .pht 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);
			}



/* ++++++++++++++++++++++++++++++++++++++++++++++ */
/* event-area */
/* ++++++++++++++++++++++++++++++++++++++++++++++ */
.event-area {
	margin-bottom: 65px;
}
	.event-area ul.list li {
		width: 48%;
		margin-right: 4%;
		margin-bottom: 35px;
	}
	.event-area ul.list li:nth-child(2n) {
		margin-right: 0;
	}
		.event-area ul.list li a {
			display: block;
			overflow: hidden;
			border-radius: 15px;
		}
			.event-area ul.list li a 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;
			}
			.event-area ul.list li a:hover 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);
			}




/* ++++++++++++++++++++++++++++++++++++++++++++++ */
/* report-area */
/* ++++++++++++++++++++++++++++++++++++++++++++++ */
.report-area .list .linkbox {
	width: 48%;
	margin-right: 4%;
	margin-bottom: 40px;
}
.report-area .list .linkbox:nth-child(2n) {
	margin-right: 0;
}
	.report-area .list .linkbox a {
		display: block;
	}
		.report-area .list .linkbox a .pht {
			display: block;
			overflow: hidden;
			border-radius: 15px;
			margin-bottom: 17px;
		}
			.report-area .list .linkbox a .pht 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;
			}
			.report-area .list .linkbox a:hover .pht 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);
			}


		.report-area .list .linkbox .info {
			display: flex;
			justify-content: flex-start;
			align-items: center;
			margin-bottom: 10px;
		}
			.report-area .list .linkbox .info time {
				display: block;
				line-height: 1;
				margin-right: 15px;
			}

			.report-area .list .linkbox .info .cat {
				display: flex;
				justify-content: center;
				align-items: center;
				border-radius: 15px;
				width: 95px;
				height: 30px;
				line-height: 1;
				color: #fff;
				text-align: center;
				margin-right: 8px;
			}
			.report-area .list .linkbox .info .recruitment-activity {
				background: #75D0DA;
			}
			.report-area .list .linkbox .info .hr-strategy {
				background: #AE96CB;
			}
			.report-area .list .linkbox .info .data-for-investigation {
				background: #8FB5D3;
			}

			.report-area .list .linkbox .info .online {
				width: 30px;
			}

		.report-area .list .linkbox h3 {
			font-size: 2.0rem;
			font-weight: 500;
			line-height: 1.5em;
			margin-bottom: 5px;
			overflow: hidden;
			display: -webkit-box;
			-webkit-box-orient: vertical;
			-webkit-line-clamp: 3;
		}

		.report-area .list .linkbox ul.tag li {
			margin-top: 10px;
			margin-right: 12px;
		}
		.report-area .list .linkbox ul.tag li:nth-last-child(1) {
			margin-right: 0;
		}
			.report-area .list .linkbox ul.tag li a {
				display: flex;
				justify-content: flex-start;
				align-items: center;
				height: 24px;
				font-size: 1.4rem;
				padding-left: 30px;
				line-height: 1;
				position: relative;
			}
			.report-area .list .linkbox ul.tag li a:before {
				content: "";
				width: 22px;
				height: 22px;
				border-radius: 50%;
				border: solid 1px #242424;
				background: #fff url("img/icon_tag.svg") no-repeat center;
				position: absolute;
				top: 0;
				left: 0;
				transition: 0.3s;
				-webkit-transition: 0.3s;
			}

	.report-area .btn {
		margin: auto;
	}




/* ++++++++++++++++++++++++++++++++++++++++++++++ */
/* detail-area */
/* ++++++++++++++++++++++++++++++++++++++++++++++ */
.detail-area .mainpht img {
	border-radius: 15px;
}


.detail-area .freee {
	margin-top: 30px;
}
	.detail-area .freee h2 {
		font-size: 2.8rem;
		font-weight: 700;
		line-height: 1.2em;
		margin-top: 60px;
		letter-spacing: 0.06em;
		margin-bottom: 20px;
		position: relative;
		padding-left: 23px;
	}
	.detail-area .freee h2:before {
		content: "";
		background: linear-gradient(70deg, #5EE7DF, #B490CA);
		width: 16px;
		height: 16px;
		border-radius: 50%;
		position: absolute;
		top: 10px;
		left: 0;
	}


	.detail-area .freee .text-area p {
		margin-bottom: 15px;
	}


	.detail-area .freee .performer {
		display: flex;
		-ms-flex-wrap: wrap;
		flex-wrap: wrap;
	}
		.detail-area .freee .performer .box {
			width: 48%;
			margin-right: 4%;
			margin-bottom: 40px;
		}
		.detail-area .freee .performer .box:nth-child(2n) {
			margin-right: 0;
		}
		.detail-area .freee .performer .box:nth-last-child(1) {
			margin-bottom: 0;
		}
		.detail-area .freee .performer .box .intro {
			display: flex;
			-ms-flex-wrap: wrap;
			flex-wrap: wrap;
		}
			.detail-area .freee .performer .box .pht {
				width: 160px;
				border-radius: 50%;
				overflow: hidden;
			}
				.detail-area .freee .performer .box .pht img {
					margin: 0 !important;
				}

			.detail-area .freee .performer .box .text {
				display: flex;
				justify-content: flex-start;
				align-items: center;
				width: -webkit-calc(100% - 160px);
				width: calc(100% - 160px);
				padding-left: 20px;
				text-align: left;
			}
				.detail-area .freee .performer .box .text .job {
					font-size: 1.4rem;
					line-height: 1.3em;
					margin-bottom: 5px;
				}
				.detail-area .freee .performer .box .text .name {
					font-size: 2.2rem;
					font-weight: 700;
					line-height: 1.4em;
				}

			.detail-area .freee .performer .box .comment {
				width: 100%;
				margin-top: 20px;
				background: #fff;
				border-radius: 10px;
				padding: 20px;
				font-size: 1.4rem;
				line-height: 1.6em;
				position: relative;
			}
			.detail-area .freee .performer .box .comment:before {
				content: "";
				width: 0;
				height: 0;
				border-style: solid;
				border-width: 0 10px 10px 10px;
				border-color: transparent transparent #ffffff transparent;
				position: absolute;
				top: -10px;
				left: 50%;
				margin-left: -10px;
			}


	.detail-area .freee dl {
		display: flex;
		display: -webkit-flex;
		justify-content: space-between;
		margin-top: 25px;
	}
		.detail-area .freee dl dt {
			width: 60px;
			text-align: center;
		}
			.detail-area .freee dl dt img {
				margin: 0 !important;
				overflow: hidden;
				border-radius: 50%;
			}
			.detail-area .freee dl dt span {
				display: block;
				padding-top: 2px;
				font-size: 1.2rem;
			}

		.detail-area .freee dl dd {
			width: -webkit-calc(100% - 80px);
			width: calc(100% - 80px);
			background: #fff;
			border-radius: 10px;
			padding: 20px;
			font-size: 1.5rem;
			letter-spacing: 0.06em;
			line-height: 1.8em;
			position: relative;
		}
		.detail-area .freee dl dd:before {
			content: "";
			width: 0;
			height: 0;
			border-style: solid;
			border-width: 10px 10px 10px 0;
			border-color: transparent #ffffff transparent transparent;
			position: absolute;
			top: 20px;
			left: -10px;
		}
			.detail-area .freee dl dd span {
				background:linear-gradient(transparent 60%, #ff6 60%);
			}


	.detail-area .freee img {
		display: block;
		max-width: 100%;
		width: auto;
		margin: 30px auto;
		border-radius: 10px;
	}

	.detail-area .freee iframe {
		margin: 30px 0 0 0;
		aspect-ratio: 16 / 9;
		width: 100%;
		height: 100%;
		border-radius: 10px;
	}


	.detail-area .freee .pdf {
		width: 180px;
		margin: 20px auto 20px auto;
		border: solid 1px #ddd;
		border-radius: 6px;
		overflow: hidden;
	}
		.detail-area .freee .pdf a {
			display: block;
			padding: 15px 10px;
			font-size: 1.4rem;
			background: #fff url("img/icon-pdf-black.png") no-repeat left 15px center / 14px;
			text-align: center;
			line-height: 1;
		}
		.detail-area .freee .pdf a:hover {
			background: #fff url("img/icon-pdf-black.png") no-repeat left 12px center / 14px;
			opacity: 0.7;
		}


	.detail-area .freee .btn {
		margin: 40px auto 50px auto;
	}




/* ++++++++++++++++++++++++++++++++++++++++++++++ */
/* about-area */
/* ++++++++++++++++++++++++++++++++++++++++++++++ */
.about-area {
	background: #fff;
	padding: 60px;
	border-radius: 15px;
}
	.about-area .borderbox {
		border: solid 1px #ddd;
		padding: 20px;
	}
		.about-area .borderbox .head {
			font-size: 1.3rem;
		}
		.about-area .borderbox p {
			font-size: 1.2rem;
		}
			.about-area .borderbox p a {
				text-decoration: underline;
			}
			.about-area .borderbox p a:hover {
				text-decoration: none;
			}

	.about-area .txt {
		margin-bottom: 20px;
	}

	.about-area .btn {
		margin: 40px auto 0 auto;
	}




/* ++++++++++++++++++++++++++++++++++++++++++++++ */
/* newsletter */
/* ++++++++++++++++++++++++++++++++++++++++++++++ */
.newsletter {
	margin-top: 80px;
}
	.newsletter a {
		display: block;
		width: 100%;
		background: linear-gradient(70deg, #5EE7DF, #B490CA);
		border-radius: 50px;
		text-align: center;
		padding: 25px 20px 20px 20px;
		position: relative;
	}
	.newsletter a:hover {
		opacity: 0.7;
	}
		.newsletter a .read {
			width: 380px;
			display: block;
			height: 30px;
			border-radius: 15px;
			background: #fff;
			font-size: 1.6rem;
			font-weight: 700;
			line-height: 30px;
			position: absolute;
			top: -15px;
			left: 50%;
			margin-left: -190px;
		}

		.newsletter a .head {
			display: inline-block;
			font-size: 2.6rem;
			font-weight: 700;
			padding-left: 40px;
			color: #fff;
			background: url("img/icon_mail.svg") no-repeat left top 10px / 30px;	
		}




/* ++++++++++++++++++++++++++++++++++++++++++++++ */
/* フッター */
/* ++++++++++++++++++++++++++++++++++++++++++++++ */
#footer {
	width: 100%;
	background: #fff;
	padding: 60px 0 50px 0;
}
	#footer .nav-area {
		margin-bottom: 20px;
	}
		#footer .nav-area .logo a {
			display: block;
			width: 180px;
		}
		#footer .nav-area .logo a:hover {
			opacity: 0.7;
		}

		#footer .nav-area .logo p {
			font-size: 1.4rem;
			font-weight: 400;
			line-height: 1;
		}

		#footer .nav-area ul li {
			margin-left: 30px;
		}
			#footer .nav-area ul li a {
				display: block;
				font-size: 1.1rem;
				font-weight: 400;
				line-height: 1.6em;
				text-align: center;
			}
			#footer .nav-area ul li a:hover {
				opacity: 0.7;
			}
				#footer .nav-area ul li a .en {
					display: block;
					font-size: 1.8rem;
					font-weight: 500;
				}


	#footer .info-area .copyright {
		font-size: 1.2rem;
		font-weight: 500;
		line-height: 1;
		padding-top: 15px;
	}

	#footer .info-area .info-txt .link {
		padding-top: 15px;
	}
		#footer .info-area .info-txt .link a {
			display: block;
			font-size: 1.2rem;
			line-height: 1;
			font-weight: 400;
		}
		#footer .info-area .info-txt .link a:hover {
			opacity: 0.7;
		}

	#footer .info-area .info-txt .img {
		width: 40px;
		margin-left: 20px;
	}




/* max 1300px */
@media screen and (max-width: 1300px) {




/* ++++++++++++++++++++++++++++++++++++++++++++++ */
/* ヘッダー */
/* ++++++++++++++++++++++++++++++++++++++++++++++ */
#header .searchform {
	width: 225px;
}




/* ++++++++++++++++++++++++++++++++++++++++++++++ */
/* メニュー */
/* ++++++++++++++++++++++++++++++++++++++++++++++ */
#menubox .menunav {
	max-width: 100%;
	padding: 0 5%;
}



	
/* ++++++++++++++++++++++++++++++++++++++++++++++ */
/* 基本レイアウト */
/* ++++++++++++++++++++++++++++++++++++++++++++++ */

#main #contents {
	padding-right: 5%;
}

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




/* ++++++++++++++++++++++++++++++++++++++++++++++ */
/* TOP FV */
/* ++++++++++++++++++++++++++++++++++++++++++++++ */
#fv {
	background: url("img/bg_w.svg") no-repeat center top / 1300px;
}
	#fv .inner {
		padding-top: 220px;
		height: 745px;
	}
		#fv .inner .text h2 {
			font-size: 3.4rem;
		}




/* ++++++++++++++++++++++++++++++++++++++++++++++ */
/* detail-area */
/* ++++++++++++++++++++++++++++++++++++++++++++++ */
.detail-area .freee .performer .box .pht {
	width: 120px;
}

.detail-area .freee .performer .box .text {
	width: -webkit-calc(100% - 120px);
	width: calc(100% - 120px);
	padding-left: 15px;
}


}





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

body.detail_bg {
	background: #F4F4F4 url("img/bg_w.svg") no-repeat center top / 700px;
}




/* ++++++++++++++++++++++++++++++++++++++++++++++ */
/* ヘッダー */
/* ++++++++++++++++++++++++++++++++++++++++++++++ */
#header {
	top: 20px;
}
#header.is-animation {
	top: 0;
}
	#header .logo {
		width: 240px;
		margin-left: 20px;
	}
		#header .logo a {
			height: 50px;
		}


	#header .link {
		height: 50px;
		margin-right: 15px;
	}
		#header .link a {
			height: 50px;
			font-size: 1.4rem;
		}
		#header .link a:before {
			width: 24px;
			height: 24px;
			margin-right: 7px;
		}
		#header .link a:hover:before {
			width: 24px;
			height: 24px;
			border-radius: 50%;
			border: solid 1px #242424;
			background: #fff url("img/icon_arrow_black.svg") no-repeat center;
			margin-right: 7px;
		}
			#header .link a:hover span {
				text-decoration: underline;
			}


	#header .btnlink {
		width: 120px;
	}
		#header .btnlink a {
			height: 50px;
			border-radius: 25px;
			font-size: 1.3rem;
		}
		#header .btnlink a:hover {
			background: #ED8900;
		}


	#header .searchform {
		width: 200px;
		height: 50px;
		border-radius: 25px;
		margin-right: 85px;
	}
	
	
	#header .menubtn {
		width: 50px;
		height: 50px;
		top: 0;
		right: 20px;
	}
		#header .menubtn .menu {
			width: 50px;
			height: 50px;
	}
			#header .menubtn .menu span:nth-of-type(1) {
				top: 19px;	
			}
			#header .menubtn .menu span:nth-of-type(2) {
				top: 25px;
			}
			#header .menubtn .menu span:nth-of-type(3) {
				top: 31px;
			}

			#header .menubtn .menu.active span:nth-of-type(1) {
				top: 19px;
			}
			#header .menubtn .menu.active span:nth-of-type(2) {
				opacity: 0;
			}
			#header .menubtn .menu.active span:nth-of-type(3) {
				top: 31px;
			}




/* ++++++++++++++++++++++++++++++++++++++++++++++ */
/* メニュー */
/* ++++++++++++++++++++++++++++++++++++++++++++++ */
#menubox .menunav .localnav .box .tit_head {
	font-size: 1.8rem;
}
#menubox .menunav .localnav .box .tit_head:before {
	top: 1px;
}

#menubox .menunav .localnav .box ul.catlist li a {
	font-size: 1.6rem;
	padding: 20px 40px 20px 20px;
}
	#menubox .menunav .localnav .box ul.catlist li a span {
		display: block;
		font-size: 1.1rem;
		line-height: 1.4em;
		padding-top: 5px;
	}

#menubox .menunav .localnav .box ul.taglist li a {
	font-size: 1.3rem;
}

#menubox .menunav .localnav .box ul.btnlist li {
	margin-bottom: 12px;
	border-top: solid 1px #ddd;
}
#menubox .menunav .localnav .box ul.btnlist li:nth-last-child(1) {
	margin-bottom: 0;
	border-bottom: solid 1px #ddd;
}
	#menubox .menunav .localnav .box ul.btnlist li a {
		display: block;
		font-size: 1.6rem;
		padding: 15px 15px 15px 15px;
		background: url("img/icon_arrow_black.svg") no-repeat right 15px center;
	}


#menubox .menunav .localnav .box .searchform {
	width: 100%;
	height: 50px;
	overflow: hidden;
	border-radius: 25px;
	background: #fff;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	display: -webkit-flex;
	-webkit-box-pack: justify;
	-webkit-justify-content: space-between;
	-ms-flex-pack: justify;
	justify-content: space-between;
	transition: 0.3s;
	-webkit-transition: 0.3s;
}
	#menubox .menunav .localnav .box .searchform input {
		width: calc(100% - 50px);
		border: none;
		background: #fff;
		font-size: 1.6rem;
		padding-left: 20px;
		border-radius: 30px 0 0 30px;
	}
	#menubox .menunav .localnav .box .searchform button {
		width: 50px;
		height: 100%;
		padding-left: 10px;
		text-indent: 0;
		border: none;
		text-align: left;
		background: #fff;
		cursor: pointer;
	}
		#menubox .menunav .localnav .box .searchform button img {
			width: 18px;
			height: auto;
		}




/* ++++++++++++++++++++++++++++++++++++++++++++++ */
/* 基本レイアウト */
/* ++++++++++++++++++++++++++++++++++++++++++++++ */


/* main */
#main {
	background: url("img/bg_r.svg") no-repeat right bottom / 400px;
}
#main.top {
	background: url("img/bg_r.svg") no-repeat right bottom / 400px;
}
#main.about {
	background: url("img/bg_r.svg") no-repeat left bottom / 270px;
}
	#main #contents {
		width: -webkit-calc(100% - 200px);
		width: calc(100% - 200px);
		padding-right: 5%;
	}


	#main #localnav {
		width: 200px;
	}
		#main #localnav .box .tit_head {
			font-size: 1.6rem;
			padding-left: 20px;
		}
		#main #localnav .box .tit_head:before {
			top: 0;
		}

		#main #localnav .box ul.catlist li a {
			font-size: 1.6rem;
			padding: 20px 40px 20px 20px;
		}
			#main #localnav .box ul.catlist li a span {
				font-size: 1.1rem;
			}

		#main #localnav .box ul.taglist li a {
			font-size: 1.3rem;
		}
	
	
/* txt */
.txt {
	font-size: 1.5rem;
	line-height: 1.8em;
}

/* btn */
.btn {
	width: 230px;
}
	.btn a {
		height: 60px;
		border-radius: 30px;
		font-size: 1.5rem;
	}

/* event-free-area */
.event-free-area {
	padding: 8% 4% 0 4%;
}



/* ++++++++++++++++++++++++++++++++++++++++++++++ */
/* 下層タイトル */
/* ++++++++++++++++++++++++++++++++++++++++++++++ */

/* pagetitle */
#pagetitle {
	padding-top: 90px;
}
	#pagetitle ul.breadcrumb {
		padding: 0 20px;
	}


	#pagetitle .text {
		height: 240px;
		text-align: center;
	}
	#pagetitle.cat .text {
		padding-top: 80px;
	}
	#pagetitle.tag .text {
		padding-top: 90px;
	}
	#pagetitle.detail .text {
		padding-top: 70px;
		height: auto;
		margin-bottom: 30px;
	}
		#pagetitle .text h1 {
			font-size: 4.0rem;
		}
		#pagetitle.tag .text h1:before {
			width: 38px;
			height: 38px;
			left: -50px;
		}
		#pagetitle.detail .text h1 {
			width: -webkit-calc(100% - 200px);
			width: calc(100% - 200px);
			font-size: 3.4rem;
			line-height: 1.2em;
		}

		#pagetitle .text p {
			font-size: 1.4rem;
		}


		#pagetitle .text .info {
			display: flex;
			justify-content: flex-start;
			align-items: center;
			margin-bottom: 15px;
		}
			#pagetitle .text .info time {
				display: block;
				line-height: 1;
				margin-right: 15px;
			}

			#pagetitle .text .info time {
				font-size: 1.2rem;
				margin-right: 10px;
			}

			#pagetitle .text .info .cat {
				width: 67px;
				font-size: 1.2rem;
				height: 23px;
				border-radius: 11.5px;
				margin-right: 5px;
			}

			#pagetitle .text .info .online {
				width: 23px;
				height: 23px;
			}

			#pagetitle .text ul.tag li a {
				font-size: 1.3rem;
			}
	

	
/* title */
.title {
	margin-bottom: 25px;
}
	.title h2 {
		font-size: 2.6rem;
	}

	.title .en {
		font-size: 1.2rem;
	}




/* ++++++++++++++++++++++++++++++++++++++++++++++ */
/* TOP FV */
/* ++++++++++++++++++++++++++++++++++++++++++++++ */
#fv {
	width: 100%;
	background: url("img/bg_w.svg") no-repeat center top / 1024px;
	margin-bottom: 80px;
}
	#fv .inner {
		height: 585px;
		padding-top: 160px;
	}
		#fv .inner .text .info {
			margin-bottom: 15px;
		}
			#fv .inner .text .info time {
				font-size: 1.4rem;
				margin-right: 15px;
			}

			#fv .inner .text .info .cat {
				width: 110px;
				height: 26px;
				border-radius: 13px;
				font-size: 1.4rem;
				margin-right: 8px;
			}

			#fv .inner .text .info .online {
				width: 26px;
			}

		#fv .inner .text h2 {
			font-size: 3.0rem;
			margin-bottom: 35px;
		}




/* ++++++++++++++++++++++++++++++++++++++++++++++ */
/* special-area */
/* ++++++++++++++++++++++++++++++++++++++++++++++ */
.special-area {
	margin-bottom: 40px;
}
	.special-area a {
		padding: 15px;
	}




/* ++++++++++++++++++++++++++++++++++++++++++++++ */
/* event-area */
/* ++++++++++++++++++++++++++++++++++++++++++++++ */
.event-area {
	margin-bottom: 40px;
}
	.event-area ul.list li {
		margin-bottom: 25px;
	}




/* ++++++++++++++++++++++++++++++++++++++++++++++ */
/* report-area */
/* ++++++++++++++++++++++++++++++++++++++++++++++ */
.report-area .list .linkbox {
	margin-bottom: 30px;
}
	.report-area .list .linkbox a .pht {
		margin-bottom: 10px;
	}

	.report-area .list .linkbox a .info {
		margin-bottom: 6px;
	}
		.report-area .list .linkbox a .info time {
			font-size: 1.2rem;
			margin-right: 10px;
		}

		.report-area .list .linkbox a .info .cat {
			width: 67px;
			font-size: 1.2rem;
			height: 23px;
			border-radius: 11.5px;
			margin-right: 5px;
		}

		.report-area .list .linkbox a .info .online {
			width: 23px;
			height: 23px;
		}

		.report-area .list .linkbox a h3 {
			font-size: 1.6rem;
			margin-bottom: 0;
		}


	.report-area .list .linkbox ul.tag li a {
		font-size: 1.3rem;
	}




/* ++++++++++++++++++++++++++++++++++++++++++++++ */
/* about-area */
/* ++++++++++++++++++++++++++++++++++++++++++++++ */
.about-area {
	padding: 40px;
}
	.about-area .txt {
		margin-bottom: 15px;
	}

	.about-area .btn {
		margin: 30px auto 0 auto;
	}




/* ++++++++++++++++++++++++++++++++++++++++++++++ */
/* detail-area */
/* ++++++++++++++++++++++++++++++++++++++++++++++ */
.detail-area .freee h2 {
	font-size: 2.4rem;
	margin-top: 50px;
}
.detail-area .freee h2:before {
	top: 7px;
}


.detail-area .freee .performer {
	display: flex;
	-ms-flex-wrap: wrap;
	flex-wrap: wrap;
}
	.detail-area .freee .performer .box {
		margin-bottom: 30px;
	}
	.detail-area .freee .performer .box .intro {
		display: block;
	}
		.detail-area .freee .performer .box .pht {
			width: 160px;
			margin: auto;
		}

		.detail-area .freee .performer .box .text {
			padding-top: 10px;
			display: block;
			width: 100%;
			padding-left: 0;
			text-align: center;
		}
			.detail-area .freee .performer .box .text .job {
				font-size: 1.2rem;
			}
			.detail-area .freee .performer .box .text .name {
				font-size: 1.8rem;
			}

		.detail-area .freee .performer .box .comment {
			font-size: 1.3rem;
		}


.detail-area .freee dl {
	margin-top: 25px;
}
	.detail-area .freee dl dt span {
		font-size: 1.0rem;
	}

	.detail-area .freee dl dd {
		font-size: 1.4rem;
		line-height: 1.6em;
	}


.detail-area .freee .pdf {
	width: 150px;
}
	.detail-area .freee .pdf a {
		padding: 12px 10px;
		font-size: 1.3rem;
		background: #fff url("img/icon-pdf-black.png") no-repeat left 12px center / 14px;
	}


.detail-area .freee .btn {
	margin: 30px auto 30px auto;
}



	


}

	







/* max 767px */
@media screen and (max-width: 767px) {

body.detail_bg {
	background: #F4F4F4 url("img/bg_w.svg") no-repeat center top / 450px;
}

body.detail {
	background: #F4F4F4 url("img/bg_w.svg") no-repeat center top / 280px;
}

.sp {
	display: block !important;
}
.pc {
	display: none;
}




/* ++++++++++++++++++++++++++++++++++++++++++++++ */
/* ヘッダー */
/* ++++++++++++++++++++++++++++++++++++++++++++++ */
#header.is-animation {
	padding: 10px 0;
}
	
#header .link,
#header .searchform {
	display: none;
}

#header.is-animation .menubtn {
	top: 10px;
}


#header .btnlink {
	width: 100%;
	position: fixed;
	bottom: 0;
	left: 0;
}
	#header .btnlink a {
		height: 50px;
		border-radius: 0;
		font-size: 1.5rem;
	}
		#header .btnlink a br {
			display: none;
		}
	
	
	

/* ++++++++++++++++++++++++++++++++++++++++++++++ */
/* メニュー */
/* ++++++++++++++++++++++++++++++++++++++++++++++ */
#menubox {
	width: 100%;
}
	#menubox .menunav {
		display: block;
		width: 100%;
		height: 100%;
		padding: 100px 7% 100px 7%;
		overflow: hidden;
		overflow-y: scroll;
	}
		#menubox .menunav .localnav .box {
			margin-bottom: 40px;
		}
			#menubox .menunav .localnav .box .tit_head {
				margin-bottom: 15px;
			}
			#menubox .menunav .localnav .box ul.catlist {
				display: block;
			}
				#menubox .menunav .localnav .box ul.catlist li {
					width: 100%;
					margin-bottom: 10px;
				}
					#menubox .menunav .localnav .box ul.catlist li a {
						font-size: 1.6rem;
						padding: 15px 40px 15px 15px;
					}
	
	
			#menubox .menunav .localnav .box ul.taglist li {
				margin-bottom: 10px;
			}



/* ++++++++++++++++++++++++++++++++++++++++++++++ */
/* 基本レイアウト */
/* ++++++++++++++++++++++++++++++++++++++++++++++ */

/* main */
#main {
	width: 100%;
	display: block;
}

/* btn */
.btn {
	width: 60%;
	margin: auto;
}
	.btn a {
		height: 50px;
		border-radius: 25px;
	}


/* ++++++++++++++++++++++++++++++++++++++++++++++ */
/* 下層タイトル */
/* ++++++++++++++++++++++++++++++++++++++++++++++ */

/* pagetitle */
#pagetitle {
	padding-top: 90px;
}
	#pagetitle ul.breadcrumb {
		display: block;
		width: 100%;
		padding: 0 20px;
		overflow-x: auto;
		overflow-y: hidden;
		-webkit-overflow-scrolling: touch;
		overflow-scrolling: touch;
		overflow: auto;
		white-space: nowrap;
	}
		#pagetitle ul.breadcrumb li {
			 display: inline-block;
   			 word-break: break-all;
		}
			#pagetitle ul.breadcrumb li a {
				font-size: 1.0rem;
			}
			#pagetitle ul.breadcrumb li span {
				font-size: 1.0rem;
			}


	#pagetitle .text {
		height: 155px;
	}
	#pagetitle.cat .text {
		padding-top: 50px;
	}
	#pagetitle.tag .text {
		padding-top: 65px;
	}
	#pagetitle.detail .text {
		padding-top: 55px;
		margin-bottom: 25px;
		height: auto;
	}
		#pagetitle .text h1 {
			font-size: 3.0rem;
			margin-bottom: 8px;
		}
		#pagetitle.tag .text h1:before {
			width: 28px;
			height: 28px;
			left: -40px;
			background: #fff url("img/icon_tag.svg") no-repeat center / 10px;
		}
		#pagetitle.detail .text h1 {
			width: 100%;
			font-size: 2.4rem;
			line-height: 1.3em;
		}

		#pagetitle .text p {
			font-size: 1.2rem;
		}

		#pagetitle .text ul.tag {
			margin-top: 0;
		}
			#pagetitle .text ul.tag li {
				margin-top: 10px;
			}




/* ++++++++++++++++++++++++++++++++++++++++++++++ */
/* 基本レイアウト */
/* ++++++++++++++++++++++++++++++++++++++++++++++ */

/* main */
#main {
	background: url("img/bg_r.svg") no-repeat right bottom / 180px;
	padding-bottom: 20px;
}
#main.top {
	background: url("img/bg_r.svg") no-repeat right bottom / 180px;
}
#main.about {
	background: url("img/bg_r.svg") no-repeat right bottom / 180px;
}
	#main .inner {
		display: block;
	}
		#main #contents {
			width: 100%;
			padding-right: 0;
			margin-bottom: 60px;
		}


		#main #localnav {
			width: 100%;
		}
			#main #localnav .box {
				margin-bottom: 40px;
			}
				#main #localnav .box ul.catlist li a {
					font-size: 1.6rem;
					padding: 15px 40px 15px 15px;
				}

/* event-free-area */
.event-free-area {
	padding: 12% 6% 0 6%;
}


/* wp-pagenavi */
.wp-pagenavi {
	padding-top: 0;
	font-size: 1.2rem;
}
.wp-pagenavi a, .wp-pagenavi span {
	width: 30px;
	height: 30px;
	margin: 0 3px;
}


/* recommend-area */
.recommend-area {
	margin-top: 60px;
}
	.recommend-area .r-ttl {
		text-align: center;
		margin-bottom: 20px;
	}
		.recommend-area .r-ttl h2.r-h2 {
			font-size: 2.4rem;
			margin-bottom: 6px;
		}

		.recommend-area .r-ttl .en {
			font-size: 1.4rem;
		}

	.recommend-area .recommend .box,
	.recommend-area .event-recommend .box {
		margin-bottom: 15px;
	}
		.recommend-area .recommend .box a.link,
		.recommend-area .event-recommend .box a.link {
			display: block;
			padding: 20px;
		}
			.recommend-area .recommend .box a.link .pht, 
			.recommend-area .event-recommend .box a.link .pht {
				width: 100%;
			}

			.recommend-area .recommend .box a.link .text,
			.recommend-area .event-recommend .box a.link .text {
				width: 100%;
				padding-top: 10px;
				padding-left: 0;
				padding-bottom: 30px;
			}
				.recommend-area .recommend .box a.link .text  .head,
				.recommend-area .event-recommend .box a.link .text .head {
					font-size: 1.2rem;
					padding: 4px 7px 5px 7px;
				}

				.recommend-area .recommend .box a.link .text p,
				.recommend-area .event-recommend .box a.link .text p {
					font-size: 1.3rem;
					line-height: 1.5em;
				}

				.recommend-area .recommend .box a.link .text .more,
				.recommend-area .event-recommend .box a.link .text .more {
					padding-right: 20px;
					font-size: 1.4rem;
					bottom: 20px;
					right: 20px;
				}
				.recommend-area .recommend .box a.link:hover .text .more,
				.recommend-area .event-recommend .box a.link:hover .text .more {
					padding-right: 20px;
				}




/* ++++++++++++++++++++++++++++++++++++++++++++++ */
/* TOP FV */
/* ++++++++++++++++++++++++++++++++++++++++++++++ */
#fv {
	width: 100%;
	background: url("img/bg_w.svg") no-repeat center top / 450px;
	margin-bottom: 60px;
}
	#fv .inner {
		display: block;
		height: auto;
		padding-top: 90px;
	}
		#fv .inner .text {
			width: 100%;
			padding: 0;
			margin-bottom: 0;
		}
			#fv .inner .text .info {
				margin-bottom: 10px;
			}
				#fv .inner .text .info time {
					font-size: 1.2rem;
					margin-right: 10px;
				}

				#fv .inner .text .info .cat {
					font-size: 1.2rem;
					margin-right: 5px;
				}

			#fv .inner .text h2 {
				font-size: 2.2rem;
				line-height: 1.4em;
				margin-bottom: 15px;
			}


		#fv .inner .pht {
			width: 100%;
			margin-bottom: 20px;
		}




/* ++++++++++++++++++++++++++++++++++++++++++++++ */
/* event-area */
/* ++++++++++++++++++++++++++++++++++++++++++++++ */
.event-area {
	margin-bottom: 40px;
}
	.event-area ul.list li {
		margin-bottom: 15px;
	}




/* ++++++++++++++++++++++++++++++++++++++++++++++ */
/* report-area */
/* ++++++++++++++++++++++++++++++++++++++++++++++ */
.report-area .list {
	display: block;
}
	.report-area .list .linkbox {
		width: 100%;
		margin-right: 0;
		margin-bottom: 30px;
	}




/* ++++++++++++++++++++++++++++++++++++++++++++++ */
/* about-area */
/* ++++++++++++++++++++++++++++++++++++++++++++++ */
.about-area {
	padding: 30px;
}
	.about-area .btn {
		margin: 20px auto 0 auto;
	}




/* ++++++++++++++++++++++++++++++++++++++++++++++ */
/* detail-area */
/* ++++++++++++++++++++++++++++++++++++++++++++++ */
.detail-area .freee h2 {
	font-size: 2.2rem;
}
.detail-area .freee h2:before {
	top: 6px;
}


.detail-area .freee .performer .box .pht {
	width: 100%;
	max-width: 160px;
	margin: auto;
}

.detail-area .freee .performer .box .text .job {
	font-size: 1.1rem;
}
.detail-area .freee .performer .box .text .name {
	font-size: 1.6rem;
}

.detail-area .freee .performer .box .comment {
	font-size: 1.2rem;
	line-height: 1.5em;
	padding: 15px;
}
	
	
.detail-area .freee dl dt {
	width: 40px;
	text-align: center;
}

.detail-area .freee dl dd {
	width: -webkit-calc(100% - 50px);
	width: calc(100% - 50px);
}
.detail-area .freee dl dd:before {
	content: "";
	width: 0;
	height: 0;
	border-style: solid;
	border-width: 5px 5px 5px 0;
	border-color: transparent #ffffff transparent transparent;
	position: absolute;
	top: 15px;
	left: -5px;
}


.detail-area .freee .btn {
	margin: 30px auto 70px auto;
}




/* ++++++++++++++++++++++++++++++++++++++++++++++ */
/* newsletter */
/* ++++++++++++++++++++++++++++++++++++++++++++++ */
.newsletter {
	margin-top: 70px;
}
	.newsletter a {
		background: linear-gradient(70deg, #5EE7DF, #B490CA);
		padding: 20px 20px 15px 20px;
	}
		.newsletter a .read {
			width: 280px;
			height: 22px;
			border-radius: 11px;
			font-size: 1.2rem;
			line-height: 22px;
			top: -11px;
			margin-left: -140px;
		}

		.newsletter a .head {
			font-size: 1.8rem;
			padding-left: 30px;
			background: url("img/icon_mail.svg") no-repeat left top 5px / 26px;
		}




/* ++++++++++++++++++++++++++++++++++++++++++++++ */
/* フッター */
/* ++++++++++++++++++++++++++++++++++++++++++++++ */
#footer {
	padding: 35px 0 80px 0;
	position: relative;
}
#footer .inner {
	padding: 0;
}
	#footer .nav-area {
		display: block;
		margin-bottom: 0;
	}
		#footer .nav-area .logo {
			margin-bottom: 30px;
		}
			#footer .nav-area .logo a {
				display: block;
				width: 150px;
				line-height: 1;
				margin: 0 auto 8px auto;
			}

			#footer .nav-area .logo p {
				font-size: 1.2rem;
				text-align: center;
			}

		#footer .nav-area ul {
			border-bottom: solid 1px #ddd;
		}
			#footer .nav-area ul li {
				width: 50%;
				margin-left: 0;
				border-top: solid 1px #ddd;
			}
			#footer .nav-area ul li:nth-child(2n) {
				border-left: solid 1px #ddd;
			}
				#footer .nav-area ul li a {
					font-size: 1.0rem;
					padding: 15px 0 10px 0;
				}
					#footer .nav-area ul li a .en {
						font-size: 1.6rem;
					}


	#footer .info-area {
		display: block;
		padding-top: 30px;
	}
		#footer .info-area .copyright {
			font-size: 1.0rem;
			text-align: center;
			padding-top: 0;
		}

		#footer .info-area .info-txt .link {
			display: none;
		}


		#footer .info-area .info-txt .img {
			width: 40px;
			margin-left: 0;
			position: absolute;
			bottom: -17px;
			right: 15px;
		}



}



.bgextend{
	animation-name:bgextendAnimeBase;
	animation-duration:1s;
	animation-fill-mode:forwards;
	position: relative;
	overflow: hidden;/*　はみ出た色要素を隠す　*/
	opacity:0;
}

@keyframes bgextendAnimeBase{
  from {
    opacity:0;
  }

  to {
    opacity:1;  
}
}

/*中の要素*/
.bgappear{
	animation-name:bgextendAnimeSecond;
	animation-duration:1s;
	animation-delay: 0.6s;
	animation-fill-mode:forwards;
	opacity: 0;
}

@keyframes bgextendAnimeSecond{
	0% {
	opacity: 0;
	}
	100% {
	opacity: 1;
}
}

/*左から右*/
.bgLRextend::before{
	animation-name:bgLRextendAnime;
	animation-duration:1s;
	animation-fill-mode:forwards;
    content: "";
    position: absolute;
    width: 100%;
    height: 100%;
    background-color: #666;/*伸びる背景色の設定*/
}
@keyframes bgLRextendAnime{
	0% {
		transform-origin:left;
		transform:scaleX(0);
	}
	50% {
		transform-origin:left;
		transform:scaleX(1);
	}
	50.001% {
		transform-origin:right;
	}
	100% {
		transform-origin:right;
		transform:scaleX(0);
	}
}

/* スクロールをしたら出現する要素にはじめに透過0を指定　*/
.bgappearTrigger,
.bgLRextendTrigger{
    opacity: 0;
}