@charset "utf-8";
@import "reset.css";

/* 共通
****************************/
body {
	background-image: url(../images/bg.jpg);
	background-repeat: no-repeat;
	background-position: right top;
	background-size: 35%;
}

.clr {
	clear: both;
	min-height: 1em;
}

.clr:after {
	display: block;
	height: 1px;
	content: "";
	clear: both;
}

input,
select,
textarea {
	color: #000;
	font-family: inherit;
	font-size: 16px;
}

.new {
	color: #ff5757;
	text-transform: uppercase;
}



/* Clearfix
================================================== */
.inner:after,
header:after,
footer:after,
nav ul:after,
section:after,
article:after,
aside:after,
.clearfix:after {
	visibility: hidden;
	display: block;
	content: " ";
	clear: both;
	height: 0;
}

.inner,
header,
footer,
nav ul,
section,
article,
aside,
.clearfix {
	*zoom: 1;
}

* {
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	box-sizing: border-box;
}


.skip-header a {
	display: block;
	background-color: #007b44;
	color: #fff;
	text-decoration: none;
	text-align: center;
	position: absolute;
	height: 0;
	overflow: hidden;
}


#scrollTop {
	position: fixed;
	bottom: -100px;
	right: 0;
	width: 55px;
	z-index: 999;
}

/*
#scrollTop {
	position: fixed;
	right: 0;
	z-index: 999;
	margin-bottom: 300px;
}
*/

@media screen and (max-width: 730px) {
	#scrollTop {

		margin-bottom: 0px;
	}
}

@media screen and (max-width: 450px) {
	#scrollTop {

		margin-bottom: 0px;
	}
}



#scrollTop img {
	width: 55px;
	display: block;
}




#container {
	position: relative;
	width: 100%;
	min-height: 100%;
	height: auto !important;
	height: 100%;
}


input::placeholder {
	color: #999;
}

/* IE */
input:-ms-input-placeholder {
	color: #fff;
}

/* Edge */
input::-ms-input-placeholder {
	color: #fff;
}




/*ＰＣ関係*/
@media print,
screen and (min-width: 768px) {

	.sp-disp {
		display: none !important;
	}


}

/*ＰＣ関係↑*/


/*スマホ関係*/
@media screen and (max-width: 767px) {


	.pc-disp {
		display: none !important;
	}

}

/*スマホ関係↑*/




.hideAnchor {
	display: block;
	height: 0px;
	overflow: hidden;
	text-indent: -9999px;
	margin-top: -65px;
	padding-bottom: 65px;
}





/* PCヘッダー
================================================== */
.sp-header {
	display: none;
}

#top-pc-header {
	width: 100%;
	position: fixed;
	top: 0;
	z-index: 100;
	background-color: rgba(255, 255, 255, 0);
	transition: 0.5s all;
}

#header {
	width: 100%;
	padding: 15px;
}

.header-inner {
	width: 100%;
}

.header-inner td.header-inner-td-l {
	width: 250px;
	vertical-align: middle;
}

.header-inner td.header-inner-td-l #logo img {
	max-width: 200px;
	width: 100%;
}

.header-inner td.header-inner-td-r {
	width: auto;
	vertical-align: middle;
	letter-spacing: 1px;
	position: relative;
}

.globalNavInner {
	width: 100%;
}

.none_text {
	display: none;
}

.header-bottom {
	margin-top: 110px;
}



#top-pc-header.is-scroll {
	background-color: #fff;
}

#top-pc-header.is-scroll #header {
	padding: 10px 15px;
	box-shadow: 0 3px 8px 0 rgba(0, 0, 0, 0.1);
}

#top-pc-header.is-scroll .header-inner #logo img {
	max-width: 150px;
}

.globalNavInner>ul {
	position: absolute;
	display: inline-flex;
	top: 0;
	left: 0;
	align-items: center;
	font-size: 100%;
	height: 100%;
}

.globalNavInner>ul li {
	text-align: center;
}

.globalNavInner>ul li:last-child {
	border-right: none;
}

.globalNavInner>ul li a,
.globalNavInner>ul li .globalMenu-item {
	text-decoration: none;
	font-weight: bold;
	padding: 0 15px;
}




.globalNavInner>ul li.globalMenu6 {
	width: 50px;
	padding-left: 20px;
}

.globalNavInner>ul li.globalMenu6 img {
	max-width: 25px;
	width: 100%;
	display: block;
}

.globalNavInner>ul .child {
	display: none;
	position: absolute;
	z-index: 800;
	margin-left: -2px;
}

.globalNavInner>ul .child li {
	max-width: auto;
	font-weight: bold;
	border-right: none;
	font-size: 90%;
	transition: .4s;
	color: #fff;
}

.globalNavInner>ul .child li {
	background-color: #333;
}

.globalNavInner>ul .child li:last-child {}

.globalNavInner>ul .child li a {
	display: block;
	text-decoration: none;
	padding: 10px 15px;
	text-align: left;
	color: #fff;
}

.globalNavInner>ul .child li a:hover {
	color: #000;
}

.globalNavInner>ul .child a:hover {
	background-color: #efefef;
}

.globalNavInner>ul .child .child-item:last-child .g-child li:last-child a {
	padding-bottom: 10px;
}

.globalNavInner>ul .g-child li a {
	padding: 5px 15px 5px 25px;
}

.search-aria {
	width: 100%;
	position: fixed;
	z-index: 1001;
	top: -150px;
	right: 0;
	padding: 23px 15px 22px 0;
	text-align: right;
	background-color: #fff;
}

.search-aria .input_item {
	width: 300px;
	height: 30px;
}

.search-aria #searchsubmit1 {
	max-width: 25px;
	width: 100%;
	margin-left: 5px;
}

#search-aria a {
	display: inline-block;
	padding: 5px 5px;
	text-decoration: none;
	font-weight: bold;
}


/*ＰＣ　header終わり
---------------------------------------------------------------*/

/*スマホサイトheader
---------------------------------------------------------------*/
@media screen and (max-width: 1070px) {
	#logo-sub {
		display: none !important;
	}

	#logo {
		display: none !important;
	}

	#top-pc-header {
		display: none !important;
	}


	#header {
		display: none !important;
	}

	#globalNav {
		display: none !important;
	}


	.sp-header {
		display: inline;
		width: 100%;
		padding: 10px 0 0 15px;
		vertical-align: middle;
		position: absolute;
		top: 0;
		z-index: 1000;
		background-color: rgba(255, 255, 255, 0);
		height: 55px;
	}

	.logo {
		position: absolute;
		max-width: 200px;
		top: 10px;
		left: 15px;
	}

	.logo img {
		width: 100%;
	}


	.sp-header nav {
		margin-right: -16px;
	}

	.sp-header nav ul {
		display: flex;
		align-items: center;
	}


	#nav_toggle {
		display: none;
	}


	/*メニュー部分*/
	.sp-header>nav {
		display: none;
		position: fixed;
		top: 0;
		left: 0;
		z-index: 50;
		width: 100%;
		height: 100vh;
		background-color: rgba(255, 255, 255, 0.98);
		overflow: auto;
	}

	.sp-header nav>ul {
		display: block;
		width: 90%;
		position: absolute;
		top: 65px;
		right: 0px;
		bottom: 0px;
		left: 0px;
		margin: auto;
	}

	.sp-header nav>ul>li {
		margin: 0 auto;
		border-bottom: 1px dotted #ccc;
		padding: 15px;
		display: block;
	}

	.sp-header nav>ul>li a {
		text-decoration: none;
		font-weight: bold;
	}

	.sp-header nav>ul>li:last-child {
		border: none;
	}

	.sp-header .sub-ul {
		display: flex;
		flex-direction: column;
	}

	.sp-header .sub-ul li {
		margin: 0 auto 0 0;
	}

	.sp-header .sub-ul li a {
		padding: 15px 0 0 15px;
		display: block;
	}


	/*開閉ボタン*/
	#nav_toggle {
		display: block;
		width: 57px;
		height: 55px;
		/*		position: relative;
*/
		position: fixed;
		top: 0px;
		right: 0px;
		padding: 10px 10px;
		z-index: 100;
		background-color: #000;
		-webkit-transition: 0.5s ease-in-out;
		-moz-transition: 0.5s ease-in-out;
		transition: 0.5s ease-in-out;
		text-align: center;
	}

	#nav_toggle div {
		position: relative;
	}

	#nav_toggle span {
		display: block;
		height: 3px;
		background: #fff;
		position: absolute;
		width: 100%;
		left: 0;
		-webkit-transition: 0.5s ease-in-out;
		-moz-transition: 0.5s ease-in-out;
		transition: 0.5s ease-in-out;
	}

	#nav_toggle span:nth-child(1) {
		top: 5px;
	}

	#nav_toggle span:nth-child(2) {
		top: 16px;
	}

	#nav_toggle span:nth-child(3) {
		top: 27px;
	}

	#nav_toggle p {
		padding-top: 26px;
		font-size: 12px;
		color: #fff;
	}

	/*開閉ボタンopen時*/
	.open #nav_toggle {
		background-color: transparent;
		padding: 18px 8px;
		-webkit-transition: 0.5s ease-in-out;
		-moz-transition: 0.5s ease-in-out;
		transition: 0.5s ease-in-out;
	}


	.open #nav_toggle span {
		background-color: #000;
	}

	.open #nav_toggle span:nth-child(1) {
		top: 8px;
		-webkit-transform: rotate(135deg);
		-moz-transform: rotate(135deg);
		transform: rotate(135deg);
	}

	.open #nav_toggle span:nth-child(2) {
		width: 0;
		left: 50%;
	}

	.open #nav_toggle span:nth-child(3) {
		top: 8px;
		-webkit-transform: rotate(-135deg);
		-moz-transform: rotate(-135deg);
		transform: rotate(-135deg);
	}

	.open #nav_toggle p {
		display: none;
	}


	.input_item2 {
		height: 32px;
		font-size: 16px;
		width: 50%;
		border: 1px solid;
	}

	#searchsubmit2 {
		width: 32px;
		height: 32px;
		margin-left: 10px;
	}

	input::placeholder {
		color: #000;
	}

	/* IE */
	input:-ms-input-placeholder {
		color: #000;
	}

	/* Edge */
	input::-ms-input-placeholder {
		color: #000;
	}


	/*メニュー関係終わり*/
	.header-bottom {
		margin-top: 85px;
	}

}

@media screen and (max-width: 767px) {
	.logo {
		position: absolute;
		width: 40%;
		max-width: 180px;
		min-width: 160px;
	}

	.sp-header nav ul li {
		padding-left: 0;
		padding-right: 0;
	}

	.input_item2 {
		width: calc(100% - 50px);
	}

	.header-bottom {
		margin-top: 55px;
	}
}

/* スマホサイトheader終わり
================================================== */

#content {
	width: 100%;
	margin: 0 auto;
	background-color: #fff;
	border-bottom: 1px solid #333;
}

#home #content {
	padding-bottom: 0;
	background-color: transparent;
	border-bottom: none;
}

.top1 {
	width: 100%;
}

.top1-inner {
	width: 80%;
	max-width: 1600px;
	padding: 60px 20px;
	margin: 0 auto;
}

.top1-image {
	width: 100%;

}

.top1-image img {
	width: 60%;
}

.top1-copy {
	margin: 80px 0 40px;
	font-size: 150%;
	letter-spacing: 2.5px;
	font-weight: 600;
	line-height: 2;
}

.top1-copy span {
	display: inline-block;
}

@media screen and (max-width: 1100px) {
	.top1-image img {
		width: 80%;
	}
}


@media screen and (max-width: 767px) {
	.top1-inner {
		width: 100%;
		padding: 60px 20px 20px;
	}

	.top1-image img {
		width: 100%;
	}

	.top1-copy {
		margin: 60px 0 30px;
		font-size: 110%;
		letter-spacing: 2px;
	}
}

.itc-about {
	width: 100%;
	text-align: left;
}

.style-itoc a {
	display: flex;
	justify-content: flex-start;
	align-items: center;
	position: relative;
	padding: 15px;
	width: 160px;
	font-size: 115%;
	border: 1px solid #000;
	transition: 0.3s;
	text-decoration: none;
}

.style-itoc a::before {
	content: '';
	position: absolute;
	top: calc(50% - 2px);
	right: -1em;
	transform: translateY(calc(-50% - 2px)) rotate(30deg);
	width: 12px;
	height: 1px;
	background-color: #000;
	transition: 0.3s;
}

.style-itoc a::after {
	content: '';
	position: absolute;
	top: 50%;
	right: -1em;
	transform: translateY(-50%);
	width: 55px;
	height: 1px;
	background-color: #000;
	transition: 0.3s;
}

.style-itoc a:hover {
	text-decoration: none;
	background-color: #fafafa;
}

.style-itoc a:hover::before,
.style-itoc a:hover::after {
	right: -2.5em;
}

@media screen and (max-width: 767px) {
	.style-itoc a {
		padding: 15px 20px 15px 15px;
		font-size: 100%;
	}
}


.top2 {
	width: 100%;
}

.top2-inner {
	width: 100%;
	max-width: 1200px;
	margin: 0 auto;
	padding: 90px 20px 120px;
	display: flex;
	justify-content: space-between;
	flex-wrap: wrap;
}

#home h2 {
	font-size: 280%;
	margin-bottom: 40px;
}

#home h2 span {
	margin-left: 10px;
	font-size: 36%;
}

@media screen and (max-width: 767px) {
	#home h2 {
		font-size: 240%;
		margin-bottom: 30px;
		line-height: 1;
	}

	#home h2 span {
		font-size: 42%;
		margin-left: 0;
		margin-top: 15px;
	}
}

.top2-inner-l {
	width: 55%;
	padding-right: 25px;
}

.top2-inner-r {
	width: 40%;
	padding-right: 20px;
}

.top2-ul {
	width: 100%;
}

.top2-ul li {
	width: 100%;
	padding: 25px 0;
	border-bottom: 1px solid #ccc;
}

.top2-ul li:first-child {
	padding-top: 0;
}

.top2-ul li:last-child {
	border-bottom: none;
}

.top2-ul li .date {
	display: table-cell;
	width: 110px;
	color: #666;
}

.top2-ul li .title {
	display: table-cell;
	width: auto;
}

.top2-ul li .title a {
	text-decoration: none;
	margin-right: 5px;
}

.top2-ul li .title a:hover {
	text-decoration: underline;
}


.top2-inner .slick-box {
	width: 100%;
}

.top2-inner .slick-box .slick-prev {
	left: -25px;
}

.top2-inner .slick-box .slick-next {
	right: -25px;
}

.top2-inner .slick-box .slick-list {
	border: 1px solid #ccc;
}

.top2-inner .slick-box li {
	width: 100%;
	position: relative;
}

.top2-inner .slick-box li:before {
	content: "";
	display: block;
	padding-top: 66%;
}

.top2-inner .slick-box li img {
	width: 100%;
	height: 100%;
	position: absolute;
	top: 0;
	right: 0;
	bottom: 0;
	left: 0;
	object-fit: cover;
}

@media screen and (max-width: 767px) {
	.top2-inner {
		padding: 0;
	}

	.top2 h2 span {
		display: block;
		margin-left: 0;
		padding-top: 5px;
	}

	.top2-inner-l {
		width: 100%;
		padding: 90px 20px 60px;
	}

	.top2-inner-r {
		width: 100%;
		background-color: #efefef;
		padding: 90px 20px 60px;
	}

	.top2-ul li .date,
	.top2-ul li .title {
		width: 100%;
		display: block;
	}

	.top2-ul li .title {
		margin-top: 15px;
	}

	.top2-inner .slick-box {
		width: 90%;
		margin: auto;
	}
}



.ichiran {
	margin-top: 30px;
}

.ichiran a {
	display: inline-block;
	padding: 15px 40px 15px 15px;
	text-decoration: none;
	background-image: url(../images/more.png);
	background-repeat: no-repeat;
	background-position: right 10px center;
	background-size: 13px;
	border: 1px solid #000;
	font-size: 90%;
}

.ichiran a:hover {
	background-color: #fafafa;
}

@media screen and (max-width: 767px) {
	.ichiran {
		text-align: center;
	}
}


.top3 {
	width: 100%;
	background-color: #333;
}

.top3-inner {
	width: 100%;
	max-width: 1200px;
	margin: 0 auto;
	padding: 150px 20px 150px 20px;
}

#home h2.white {
	color: #fff;
}

@media screen and (max-width: 767px) {
	.top3-inner {
		padding-top: 90px;
		padding-bottom: 90px;
	}

	.top3 h2 span {
		display: block;
		margin-left: 0;
		padding-top: 5px;
	}
}

.top4 {
	width: 100%;
	background-color: #efefef;
}

.top4-inner {
	width: 100%;
	max-width: 1200px;
	margin: 0 auto;
	padding: 0 20px 80px 20px;
}

.top4-ul {
	width: 100%;
	display: inline-flex;
	flex-wrap: wrap;
	justify-content: space-between;
	margin-top: -140px;
	margin-bottom: 60px;
}

.top4-ul li {
	width: 22%;
	position: relative;
}

.top4-ul li .thumb {
	display: block;
	background-color: #333;
}

.top4-ul li .thumb a {
	display: block;
	width: 100%;
	position: relative;
}

.top4-ul li .thumb a::before {
	content: "";
	display: block;
	padding-top: 100%;
}

.top4-ul li .thumb img {
	width: 100%;
	position: absolute;
	top: 0;
	right: 0;
	bottom: 0;
	left: 0;
	height: 100%;
	object-fit: contain;
	border: 1px solid #b3b3b3;
}

.top4-ul li .date {
	display: block;
	margin: 10px 0 5px 0;
	color: #666;
	font-size: 80%;
}

.top4-ul li .date .large {
	font-size: 140%;
	font-weight: bold;
	padding: 0 5px;
}

.top4-ul li .title {
	display: block;
}

.top4-ul li .title a {
	font-weight: bold;
}

.top4 .ichiran {
	text-align: center;
}

.top4-ul li .open_date {
	margin-top: 10px;
	display: block;
}

.top4-ul li .closed_note {
	background-color: #ff5757;
	color: #fff;
	padding: 1px 10px;
	position: absolute;
	right: 0;
	top: 0;
	font-size: 10px;
}

@media screen and (max-width: 767px) {
	.top4-inner {
		padding-bottom: 60px;
	}

	.top4-ul {
		margin-top: -60px;
		margin-bottom: 30px;
	}

	.top4-ul li {
		width: 47%;
	}

	.top4-ul li:not(:nth-child(n + 3)) {
		margin-bottom: 30px;
	}
}


.top5 {
	width: 100%;
	background-color: #fff;
}

.top5-inner {
	width: 100%;
	max-width: 1200px;
	margin: 0 auto;
	padding: 150px 20px 100px 20px;
}

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

	.top5 h2 span {
		display: block;
		margin-left: 0;
		padding-top: 5px;
	}
}



.top6 {
	width: 100%;
	background-color: #333;
}

.top6-inner {
	width: 100%;
	padding: 0 0 90px 0;
	margin: 0 auto;
}

.top6-ul {
	width: 100%;
	display: inline-flex;
	flex-wrap: wrap;
	margin-top: -6%;
}

.top6-ul li {
	width: 33.333%;
	background-color: #333;
}

.top6-ul li img {
	width: 100%;
}

.top6-ul li .title {
	display: block;
	margin: 40px 5px 20px 5px;
	font-size: 150%;
}

.top6-ul li .title a {
	color: #fff;
	text-decoration: none;
	background-image: url(../images/arrow.png);
	background-repeat: no-repeat;
	background-position: right center;
	background-size: 40px;
	padding-right: 50px;
	font-weight: 600;
}

.top6-ul li .title a:hover {
	opacity: 0.75;
}

.top6-ul li .description {
	display: block;
	font-size: 80%;
	color: #fff;
	padding: 0 10px 0 5px;
}


@media screen and (max-width: 767px) {
	.top5-inner {
		padding: 90px 20px 0 20px;
	}

	.top6-inner {
		padding: 0 0 0 0 !important;

	}

	.top6-ul {
		margin-top: 0;
	}

	.top6-ul li {
		width: 100%;
		background-color: #333;
		padding-bottom: 30px;
	}

	.top6-ul li .title {
		margin: 40px 20px 20px 20px;
	}

	.top6-ul li .description {
		padding: 0 20px;
	}
}



.top7 {
	width: 100%;
	background-color: #fff;
}

.top7-inner {
	width: 100%;
	max-width: 1200px;
	margin: 0 auto;
	padding: 90px 20px 90px;
}

.top7-ul {
	width: 100%;
	display: inline-flex;
	flex-wrap: wrap;
	justify-content: space-between;
}

.top7-ul li {
	width: 22%;
}

.top7-ul li .thumb {
	display: block;
	position: relative;
}

.top7-ul li .thumb img {
	width: 100%;
	display: block;
	border: 1px solid #b3b3b3;
}

.top7-ul li .description {
	display: block;
	margin: 20px 5px 0 5px;
	font-size: 80%;
}

.top7-ul li .thumb-alt {
	display: inline-block;
	position: absolute;
	left: 0;
	bottom: -10px;
	padding: 5px 10px;
	background-color: #000;
	color: #fff;
}

@media screen and (max-width: 767px) {
	.top7-inner {
		padding-top: 90px;
		padding-bottom: 90px;
	}

	.top7-ul li {
		width: 47%;
	}

	.top7-ul li:not(:nth-child(n + 3)) {
		margin-bottom: 30px;
	}
}

@media screen and (max-width: 380px) {
	.top7-ul li .thumb-alt {
		font-size: 84%;
	}
}



.top8 {
	width: 100%;
	background-color: #efefef;
}

.top8-inner {
	width: 100%;
	max-width: 1200px;
	margin: 0 auto;
	padding: 120px 20px 60px;
}

@media screen and (max-width: 767px) {
	.top8-inner {
		padding-top: 90px;
	}
}



.top9 {
	width: 100%;
	background-color: #fff;
}

.top9-inner {
	width: 100%;
	max-width: 1200px;
	margin: 0 auto;
	padding: 90px 20px;
	position: relative;
}

.top9 .ichiran {
	margin-top: 60px;
	text-align: center;
}

@media screen and (max-width: 767px) {
	.top9-inner {
		padding: 60px 20px;
	}
}


.cat-sel {
	width: calc(100% - 20px - 20px);
	position: absolute;
	top: -52px;
}

.cat-sel ul {
	width: 100%;
	display: inline-flex;
	justify-content: space-between;

	background-color: #efefef;
}

.cat-sel ul li {
	width: 19.5%;
	text-align: center;
}

.cat-sel ul li a {
	padding: 15px 0;
	display: block;
	text-decoration: none;
}

.cat-sel ul li span {
	position: relative;
}

.cat-sel ul li span::before {
	content: "";
	border-style: solid;
	border-width: 5px 0 5px 5px;
	border-color: transparent transparent transparent #fff;
	display: block;
	position: absolute;
	left: -10px;
	top: 4px;
}

.cat-sel ul li a:hover {
	opacity: 0.75;
	filter: alpha(opacity=75);
}

@media screen and (max-width: 767px) {
	.cat-sel {
		width: 100%;
		left: 0;
		top: -40px;
	}

	.cat-sel ul li {
		width: 18%;
	}

	.cat-sel ul li:last-child {
		width: 22%;
	}

	.cat-sel ul li a {
		font-size: 80%;
		padding: 10px 0;
	}

	.cat-sel ul li span::before {
		content: none;
	}
}


.top9-ul {
	width: 100%;
	display: inline-flex;
	flex-wrap: wrap;
	justify-content: space-between;
}

.top9-ul li {
	width: 22%;
}

.top9-ul li .thumb {
	display: block;
	background-color: #000;
}

.top9-ul li .thumb a {
	position: relative;
	width: 100%;
	display: block;
}

.top9-ul li .thumb a::before {
	content: "";
	display: block;
	padding-top: 100%;
}

.top9-ul li .thumb img {
	position: absolute;
	top: 0;
	right: 0;
	bottom: 0;
	left: 0;
	width: 100%;
	height: 100%;
	object-fit: contain;
	border: 1px solid #b3b3b3;
	background-color: #000;
}

.top9-ul li .date {
	display: inline-block;
	margin-top: 20px;
	margin-right: 5px;
	color: #666;
	font-size: 80%;
}

.top9-ul li .list-category-mark {
	display: inline-block;
	padding: 2px 5px;
	background-color: #000;
	font-size: 60%;
	color: #fff;
	margin-top: 10px;
	top: -3px;
	position: relative;
}

.top9-ul li .title {
	display: block;
	margin-top: 10px;
	line-height: 1.6;
	font-weight: bold;
}

.top9-ul li span[class*="seminar"] {
	background-color: #78BBAD;
}

.top9-ul li span[class*="report"],
.top9-ul li span[class*="events"] {
	background-color: #3788CC;
}

.top9-ul li span[class*="news"],
.top9-ul li span[class*="info"],
.top9-ul li span[class*="interview"] {
	background-color: #E6675F;
}

.top9-ul li span[class*="column"] {
	background-color: #F09B34;
}

.no-content {
	padding: 40px 0;
	text-align: center;
}


@media screen and (max-width: 767px) {
	.top9-ul li {
		width: 47%;
	}

	.top9-ul li:not(:nth-child(n+3)) {
		margin-bottom: 30px;
	}
}

@media screen and (max-width: 400px) {
	.top9-ul li .list-category-mark {
		font-size: 60%;
		margin-left: 0;
		margin-top: 10px;
	}
}


.top10 {
	width: 100%;
	background-color: #efefef;
}

.top10-inner {
	width: 100%;
	max-width: 1200px;
	margin: 0 auto;
	padding: 90px 20px;
}

.top10-ul {
	width: 100%;
	display: grid;
	grid-template-columns: repeat(4, 1fr);
	flex-wrap: wrap;
	gap: 20px;
}

.top10-ul li {
	width: 100%;
}

.top10-ul li:nth-child(n + 5) {
	margin-bottom: 0;
}

.top10-ul li img {
	width: 100%;
	display: block;
}

@media screen and (max-width: 767px) {
	.top10-ul {
		grid-template-columns: repeat(2, 1fr);
	}

	.top10-ul li:nth-last-child(-n + 1) {
		margin-bottom: 0;
	}
}

@media screen and (max-width: 400px) {
	.top10-ul {
		grid-template-columns: 1fr;
	}

	.top10-ul li {
		width: 100%;
	}

}


#footer {
	width: 100%;
}

.footer-inner {
	width: 100%;
}

.footer-inner-ul {
	width: 100%;
	display: inline-flex;
	flex-wrap: wrap;
}

.footer-inner-li-l {
	width: 30%;
	padding: 60px 3%;
	background-color: #333;
}

.f_logo {
	margin-bottom: 10px;
}

.f_logo img {
	width: 70%;
}

.f_sns span {
	padding: 0 5px;
}

.f_sns span img {
	width: 25px;
}

.f_copy {
	margin-top: 25px;
	color: #fff;
	font-size: 60%;
}

.footer-inner-li-r {
	width: 70%;
	padding: 60px 20px 40px 40px;
}




.f-ul {
	width: 100%;
	display: inline-flex;
	flex-wrap: wrap;
}

.f-ul li.f-li {
	width: 24%;
	margin: 0 1% 30px 0;
}

.f-ul li.f-li .f-li-top {
	margin-bottom: 10px;
}

.f-ul li.f-li .f-li-top a {
	font-weight: bold;
	text-decoration: none;
}

.f-ul li.f-li .f-li-top a:hover {
	text-decoration: underline;
}

.f-ul2 li .title a {
	font-size: 87.5%;
	text-decoration: none;
}

.f-ul2 li .title a:hover {
	text-decoration: underline;
}

.f-ul3 li .title a {
	padding-left: 16px;
	display: block;
}

@media screen and (max-width: 950px) {
	.footer-inner-li-l {
		width: 100%;
		order: 2;
	}

	.footer-inner-li-r {
		width: 100%;
		order: 1;
		padding: 60px 20px 40px;
		background: #f9f9f9;
	}

	.f_logo img {
		width: 60%;
	}
}

@media screen and (max-width: 767px) {
	.f-ul li.f-li {
		width: 49%;
	}

	.f-ul li.f-li:nth-last-child(-n + 2) {
		margin-bottom: 0;
	}

	.f-ul2 {
		display: none;
	}

	.f_logo {
		margin-bottom: 20px;
	}

	.f_logo img {
		width: 80%;
	}

}

/* コンテンツページ関係始まり
================================================== */
.cat-img-wrap {
	position: relative;
	overflow: hidden;
}

.cat-cover-img {
	position: absolute;
	bottom: 0;
	display: none;
}

.cat-cover-img img {
	width: 100%;
	display: block;
}

.cat-img {
	position: relative;
	width: 100%;
}

.cat-img::before {
	content: "";
	display: block;
	padding-top: 20%;
}

.cat-img img {
	position: absolute;
	top: 0;
	right: 0;
	bottom: 0;
	left: 0;
	width: 100%;
	height: 100%;
	object-fit: cover;
	vertical-align: bottom;
}

.cat-img-con {
	position: absolute;
	width: 100%;
	top: 50%;
	font-size: 300%;
	letter-spacing: 3px;
	font-weight: bold;
	line-height: 1.6;
	transform: translate(-50%, -50%);
	left: 50%;
	padding: 0 30px;
}

.cat-img-con .cat-img-title {
	padding: 10px 20px;
	/* background-color: #fff; */
}

.cat-img-con .cat-img-sub {
	display: block;
	text-align: left;
	font-size: 16px;
	padding-left: 20px;
	top: -10px;
	position: relative;
	color: #499bd5;
}

#category_icon {
	width: 100%;
}

#category_icon .inner {
	width: 100%;
	margin: 0 auto;
}

#category_icon .inner img {
	width: 100%;
}

@media screen and (max-width: 1070px) {
	.cat-img-con {
		font-size: 240%;
		letter-spacing: 1px;
	}
}

@media screen and (max-width: 768px) {
	.cat-img-con {
		font-size: 170%;
		letter-spacing: 1px;
		padding: 0;
		background-color: #ffffff99;
	}

	.cat-img-con .cat-img-title {
		padding: 15px 20px;
		display: inline-block;
	}
}

@media screen and (max-width: 599px) {
	.cat-img-con .cat-img-title {
		padding: 0 20px 5px;
		font-size: 100%;
	}
}

/* #breadCrumb
*********************************/
#home #breadCrumb {
	display: none;
}

#breadCrumb {
	width: 100%;
	font-size: 80%;
	padding: 15px 0;
	margin: auto;
	margin-top: 0;
	background-color: #efefef;
	/* color: #fff; */
}

.breadCrumb_item_title img {
	height: 15px;
	width: 15px;
	position: relative;
	top: 2px;
}

#breadCrumb .inner {
	width: 100%;
	padding: 0 20px;
	margin: auto;
	margin-top: 0;
	max-width: 1200px;
}

#breadCrumb.page-breadcrumb .inner {
	max-width: 1200px;
}

.scrText {
	position: absolute;
	width: 0;
	height: 0;
	overflow: hidden;
}

@media screen and (max-width: 768px) {
	.breadCrumb_item_title img {
		height: 13px;
		width: 13px;
		position: relative;
		top: -5px;
	}
}



.print_wrp {
	display: none;
	text-align: right;
	padding-top: 8px;
	margin-bottom: -32px;
}


.contentBodyWrapper {
	margin: 40px 0;
}

.contentListWrapper {
	margin: 40px 0;
}

#content-inner {
	width: 100%;
	max-width: 1200px;
	margin: 0 auto;
	position: relative;
	padding: 0 20px 40px;
}

#content-inner:after {
	content: "";
	display: block;
	clear: both;
}

#content-inner-page {
	width: 100%;
	max-width: 1200px;
	margin: 0 auto;
	position: relative;
	padding: 0 20px 40px;
	display: grid;
	grid-template-columns: 70% 26%;
	justify-content: space-between;
	align-items: flex-start;
}

#content-inner-page article {
	max-width: 800px;
	width: 100%;
	margin: auto;
}

#content-inner-page .page-side {
	margin-top: 75px;
	position: sticky;
	top: 90px;
	max-width: 320px;
	width: 100%;
	border: 1px solid #efefef;
	overflow-y: auto;
}

#content-inner-page .sideHeader {
	background: #efefef;
	padding: 20px 10px;
	text-align: center;
	font-size: 120%;
	color: #666;
}

#content-inner-page .sideBody {
	padding: 10px 20px;
	font-size: 80%;
}

#content-inner-page .sideBody li {
	border-bottom: 1px solid #efefef;
	padding: 10px 0;
}

#content-inner-page .sideBody li a {
	text-decoration: none;
}

#content-inner-page .sideBody li span.active {
	font-weight: bold;
	color: #499bd5;
}

@media screen and (max-width: 1050px) {
	#content-inner-page .page-side {
		top: 75px;
		margin-top: 60px;
	}
}

@media screen and (max-width: 1050px) {
	#content-inner-page {
		grid-template-columns: auto;
		grid-template-rows: auto auto;
		justify-content: center;
		align-items: flex-start;
	}

	#content-inner-page .page-side {
		margin-top: 0;
		max-width: 800px;
		margin: auto;
	}
}

article {}

#main {
	width: 73%;
	float: left;
}

#main2 {
	width: 100%;
	line-height: 180%;
}

#main2 .contentDescription {
	font-weight: bold;
}

#sidemenu {
	width: 24%;
	float: right;
	padding: 40px 0 0 0;
}


.contentListWrapper .pageList {
	width: 100%;
	display: inline-flex;
	flex-wrap: wrap;
	margin-top: 0;
}

.contentListWrapper .pagelist-item {
	width: calc(33.333% - 13.333px);
	margin-bottom: 20px;
	background-color: #efefef;
	transition: .2s;
	border: 1px solid #efefef;
	position: relative;
}

.contentListWrapper .pagelist-item:hover {
	box-shadow: 0px 0px 12px 0px rgba(10, 10, 10, 0.1);
}

.contentListWrapper .pagelist-item:not(:nth-child(3n + 1)) {
	margin-left: 20px;
}

.contentListWrapper .pagelist-item .thumb {
	width: 100%;
	padding: 0 0 0 0;
}

.contentListWrapper .pagelist-item .thumb a {
	position: relative;
	width: 100%;
	display: block;
}

.contentListWrapper .pagelist-item .thumb a::before {
	padding-top: 100%;
	content: "";
	display: block;
}

.contentListWrapper .pagelist-item .thumb img {
	background-color: #000;
	height: 100%;
	width: 100%;
	position: absolute;
	top: 0;
	right: 0;
	bottom: 0;
	left: 0;
	object-fit: contain;
}

.contentListWrapper .pagelist-item .thumb img a,
.contentListWrapper .pagelist-item .thumb img:hover,
.contentListWrapper .pagelist-item .thumb img:focus {
	-webkit-transform: translateY(0px);
	-ms-transform: translateY(0px);
	transform: translateY(0px);
	text-decoration: none;
	transition: 0.3s;
}

.contentListWrapper .pagelist-item .list-category-mark {
	font-size: 11px;
	background: #333;
	margin: 10px;
	color: #fff;
	padding: 3px 13px;
	border-radius: 12px;
	display: inline-block;
	position: absolute;
	top: 0;
	left: 0;
	line-height: 1.6;
}

.contentListWrapper .pagelist-item span[class*="seminar"] {
	background-color: #78BBAD;
}

.contentListWrapper .pagelist-item span[class*="report"],
.contentListWrapper .pagelist-item span[class*="events"] {
	background-color: #3788CC;
}

.contentListWrapper .pagelist-item span[class*="news"],
.contentListWrapper .pagelist-item span[class*="info"] {
	background-color: #E6675F;
}

.contentListWrapper .pagelist-item span[class*="column"] {
	background-color: #F09B34;
}

.contentListWrapper .pagelist-item .title {
	display: block;
	vertical-align: middle;
	font-size: 100%;
}

.contentListWrapper .pagelist-item .date {
	display: block;
	line-height: 100%;
	font-size: 80%;
	padding: 20px 20px 0 20px;
	text-align: left;
	color: #666;
	margin-bottom: -10px;
}

.contentListWrapper .pagelist-item .title a {
	text-decoration: none;
	display: block;
	padding: 20px;
	font-weight: bold;
}

.contentListWrapper .pagelist-item .description {
	padding: 0 5px 5px 5px;
	display: block;
	font-size: 90%;
}

.contentListWrapper .pagelist-item .open_date {
	padding: 0 20px 20px 20px;
	margin-top: -10px;
	display: block;
}

.contentListWrapper .pagelist-item .closed_note {
	background-color: #ff5757;
	color: #fff;
	padding: 1px 10px;
	position: absolute;
	right: 0;
	top: 0;
	font-size: 10px;
}

.contentListWrapper .pagelist-item p {
	text-align: right;
	padding: 0 10px 5px 0;
	font-size: 90%;
	color: #666;
}

.top-category_topics .contentListWrapper .pagelist-item {
	width: 29.3%;
	margin: 0 2% 30px 2%;
	/* border: 2px solid #c4e1f0; */
	transition: .4s;
	border: none;
}

.top-category_topics .contentListWrapper .pagelist-item:hover {
	background-color: #fff;
}


.top-category_topics .contentListWrapper .pagelist-item img {
	width: 100%;
	height: 13em;
	object-fit: cover;
	font-family: 'object-fit: cover;';
	border-radius: 40px;
	display: block;
	transition: 0.3s;
}

.top-category_topics .contentListWrapper .pagelist-item .title {
	font-size: 110%;
	line-height: 140%;
	text-align: center;
}

.top-category_topics .contentListWrapper .pagelist-item .title a {
	text-decoration: none;
	display: block;
	background-image: none;
	padding: 20px 10px 10px 10px;
}


.top-category_topics .contentListWrapper .pagelist-item .title a:hover {
	color: #f7c11e;
}

.top-category_topics .contentListWrapper .pagelist-item .date {
	text-align: center;
	font-size: 80%;
}

.top-category_topics .contentListWrapper .pagelist-item img:hover,
a.top-category_topics .contentListWrapper .pagelist-item img:focus {
	-webkit-transform: translateY(-8px);
	-ms-transform: translateY(-8px);
	transform: translateY(-8px);
	text-decoration: none;
	transition: 0.3s;
}

@media screen and (max-width: 1050px) {
	.contentListWrapper .pagelist-item {
		width: calc(50% - 10px);
	}

	.contentListWrapper .pagelist-item:not(:nth-child(3n + 1)) {
		margin-left: 0;
	}

	.contentListWrapper .pagelist-item:nth-child(2n) {
		margin-left: 20px;
	}
}


.pagination {
	margin-top: 10px;
	text-align: center;
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
}

.pagination a {
	background-color: #333333;
	color: #fff;
	text-decoration: none;
	text-align: center;
	padding: 7px 11px;
	font-size: 80%;
	display: block;
}

.pagination a:hover {
	background-color: #fff;
	color: #333;
}

.pagination span {
	border: 1px solid #333;
	display: block;
	margin-right: 10px;
}

.pagination span.current,
.pagination span.gap {
	padding: 7px 11px;
}

#sidemenu .sideHeader {
	background-color: #c4e1f0;
	padding: 3px 0;
}

#sidemenu .sideHeader h2 {
	text-align: center;
	padding: 5px 0 0 0;
	border-top: 1px dotted #fff;
	color: #fef000;
}

#sidemenu .sideBody ul {
	margin: 5px 0 10px 0;
}

#sidemenu .sideBody ul li {
	border-bottom: 1px dotted #ccc;
	background-image: url(../images/pul02.png);
	background-repeat: no-repeat;
	background-position: left 5px center;
	background-size: 16px;
}

#sidemenu .sideBody ul li a {
	display: block;
	padding: 5px 5px 5px 25px;
	text-decoration: none;
}

#sidemenu .sideBody ul li span {
	display: block;
	padding: 5px 5px 5px 25px;
	color: #ad6ad1;
}

#sidemenu .side-banner ul li {
	text-align: center;
	margin: 0 0 5px 0;
}

#sidemenu .side-banner ul li img {
	width: 100%;
	max-width: 235px;
}




/*　カレンダー
*********************************************/

.calendar {}

.sectionHeader {
	margin-bottom: 20px;
}

.cal_month_select {
	text-align: center;
}

.cal_category_select {}


.calendar table {
	width: 100%;
}

.calendar .colgroup1 {
	width: 70px;
}


.calendar table caption {
	font-size: 140%;
	color: #5f3919;
	font-weight: bold;
	padding-bottom: 5px;
}

.calendar thead {
	background-color: #ffffbb;
}

.calendar table th,
.calendar table td {
	border: 1px solid #ccc;
	height: 35px;

}

.calendar .day,
.calendar .week,
.calendar .event {
	vertical-align: middle;
}

.calendar .sunday {
	background-color: #ffefed;

}

.calendar .saturday {
	background-color: #e3f5f9;
}

.calendar table td a {}

.calendar_item {
	padding: 2px 4px;
	display: flex;
	flex-wrap: wrap;
	align-items: center;
}

.calendar_item span {
	display: block;
}

.calendar_item .title {
	padding: 0 3px;
	margin-right: 10px;
}

.calendar table .category_title {
	display: none;
}

.calendar table .category {
	background-color: #ad6ad1;
	color: #fff;
	font-size: 80%;
	padding: 2px 5px;
}

.calendar table .calendar_item .cate1 {
	background-color: #d17bfe;
}

.calendar table .calendar_item .cate2 {
	background-color: #48D1CC;
}

.calendar table .calendar_item .cate3 {
	background-color: #67cafe;
}

.calendar table .calendar_item .cate4 {
	background-color: #33d867;
}

.calendar table .calendar_item .category {}


.calendar .cal_day_tbl {
	margin-bottom: 10px;
}

.calendar .cal_day_tbl th,
.calendar .cal_day_tbl td {
	padding: 5px 10px;
}

.calendar .cal_day_tbl th {
	vertical-align: middle;
	background-color: #eee;
	width: 200px;
}



/*　検索一覧ページ
*********************************************/

/*
.search-result h2{
	padding: 7px 3%;
	display: block;
	margin: 30px 0 10px 0;
	border-left: 10px solid #78242e;
	background-color: #f5f5f5;
}
*/

.search-result h2 {
	margin: 80px 0px 30px 0;
	padding: 10px 15px;
	border-left: 14px solid #333;
	font-size: 155%;
	line-height: 160%;
	background-color: #efefef;
}

.search-result ul li {
	display: block;
	line-height: 120%;
	margin: 12px 0;
	background-image: url(../images/arrow_b.png);
	background-repeat: no-repeat;
	background-position: 5px 3px;
	background-size: 15px;
	padding: 0px 0px 0px 30px;
	text-align: left;
}

@media screen and (max-width: 767px) {
	.search-result ul li {
		background-size: 9px;
		padding: 0px 0px 0px 22px;
	}
}


.search-result ul li .thumb,
.search-result ul li .description,
.search-result ul li .date {
	display: none;
}

.search-result p {
	margin-bottom: 20px;
}


/*　お問い合わせページ
*********************************************/

.contentBody .mail-form {
	margin: 30px 0 0 50px;
}

.contentBody .mail-form a {
	border: 1px solid #000;
	padding: 2px 10px;
	text-decoration: none;
	background-color: #eee;
	font-size: 140%;
	font-weight: bold;
}

.contentBody .mail-form a:hover {
	text-decoration: underline;
	background-color: #f6f6f6;
}

/*コンテンツページ関係終わり
================================================== */




/*サイトマップ初め
================================================== */

.sitemap {
	margin-left: 0px;

}

.sitemap a {}


ul.sitemap-list.sm-depth1-list {
	border-left: none;
	display: flex;
	flex-wrap: wrap;
	padding: 0;
}

.sitemap li.sm-depth1-item {
	font-size: 115%;
	margin: 0 1%;
	font-weight: bold;
	padding: 0px;
	letter-spacing: 2px;
	width: 31.3%;
	background-image: none;
}

.sitemap li.sm-depth1-item a {
	text-decoration: none;
	display: block;
}

.sitemap li.sm-depth1-item a:hover {}

.sitemap li.sm-depth1-item a:focus {}

.sitemap li.sm-depth1-item::before {
	border-right: none;
	border-bottom: none;
}

span.sitemap-list-item-span.sm-depth1-label {
	padding: 7px 3%;
	display: block;
	margin: 4% 0;
	transition: 0.3s;
	border-left: 10px solid #e4db21;
	background-color: #efefef;
}

ul.sitemap-list.sm-depth2-list {
	font-weight: normal;
	font-size: 80%;
	letter-spacing: 1px;
	padding: 0 0 0 3%;
	margin: 40px 1%;
}

ul.sitemap-list.sm-depth2-list li {
	background-position: 0px 6px;
	background-size: 12px;
	/* font-weight: normal; */
	margin: 18px 8px;
}

ul.sitemap-list.sm-depth2-list a {}

ul.sitemap-list.sm-depth2-list a:hover {}


ul.sitemap-list.sm-depth3-list {
	font-size: 80%;
	letter-spacing: 0;
	padding: 0 15px;
}

ul.sitemap-list.sm-depth3-list li {
	margin: 10px 0px;
	padding: 5px;
	font-weight: normal;
	background-image: none;
}

.sitemap li.sm-depth3-item::before {
	border-right: none;
	border-bottom: none;
}

ul.sitemap-list.sm-depth4-list {
	font-weight: normal;
	padding: 0 1%;
	margin: 2%;
}

ul.sitemap-list.sm-depth4-list li {
	margin: 0;
}

.sitemap li.sm-depth4-item::before {
	border-right: none;
	border-bottom: none;
}

.depth1 li {
	padding-top: 0px;

}

.depth2 li {
	padding-top: 0px;
}

.sitemap-list {
	border-left: 1px dotted #d8c7e6;
}


/*サイトマップ終わり
================================================== */

@media screen and (max-width: 1250px) {
	.globalNavInner>ul li a {
		padding: 0 10px;
	}
}



@media screen and (max-width: 1170px) {
	.globalNavInner>ul li a {
		padding: 0 6px;
	}
}



@media screen and (max-width: 1240px) {
	.contentListWrapper .pagelist-item .description {
		font-size: 78%;
	}
}


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


	.contentListWrapper .pagelist-item .title {
		font-size: 100%;
	}


	.contentListWrapper .pagelist-item .title a {}

	.contentListWrapper .pagelist-item .thumb img {}

}


@media screen and (max-width: 767px) {
	.cat-img::before {
		content: "";
		display: block;
		padding-top: 50%;
	}

	.sitemap li.sm-depth1-item {
		font-size: 100%;
		padding: 0px;
		letter-spacing: 0;
		width: 98%;
	}

}

@media screen and (max-width: 600px) {
	body {
		font-size: 90%;
	}

	iframe {
		width: 100% !important;
		height: 260px !important;
	}

	.sns iframe {
		height: 25px !important;
	}
}



@media screen and (max-width: 599px) {
	.contentListWrapper .pagelist-item {
		width: 100%;
		margin-bottom: 20px;
		background-color: #f5f5f5;
	}

	.contentListWrapper .pagelist-item:nth-child(2n) {
		margin-left: 0;
	}

	.contentListWrapper .pageList {
		margin-top: 0;
	}

	.contentListWrapper .pagelist-item .title {
		font-size: 120%;
	}

	.contentListWrapper .pagelist-item .description {
		padding: 0 6% 6% 6%;
	}
}


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


	#home #content {
		font-size: 100%;
	}

	#content {
		font-size: 85%;
	}

}