@charset "UTF-8";

/*---------top-->>*/

/* <--toptitle ----*/
.toptitle {
	position: relative;
	display: block;
	max-width: 1280px;
	width: 100%;
	margin: 0 auto;
}

.toptitle img {
	display: block;
}

.toptitle-text {
	max-width: 90%;
	min-width: 70%;
	text-align: center;
	background-color: rgba(255, 255, 255, 0.85);
	border-radius: 7px;
	font-size: 2.4rem;
	position: absolute;
	bottom: 5%;
	left: 50%;
	transform: translate(-50%, -5%);
	margin: 0;
	padding: 20px;
}

.toptitle h1 {
	color: #049;
	font-size: 5.6rem;
	font-weight: 500;
}

.toptitle p {
	margin-top: 30px;
}

/*--toptitleここまで--->*/

/* <--top-notice ----*/

.top-notice {
	text-align: left;
	margin: 100px auto 50px auto;
}

.top-notice-title h2,
div {
	display: inline-block;
	vertical-align: middle;
}

.top-notice-title h2 {
	font-size: 2.6rem;
	padding: 0 40px;
}

.top-notice ul {
	margin: 10px 0;
	border-top: 1px solid #777;
	border-bottom: 1px solid #777;
	padding: 30px 0 30px 10%;
	align-content: flex-start;
	justify-content: flex-start;
	align-items: flex-start;
	flex-wrap: nowrap;
}

.top-notice li {
	margin-right: 10%;
}

/*--top-noticeここまで--->*/

/*<-top-menu-----*/

.top-menu {
	flex-wrap: nowrap;
	padding: 40px 10px
}

.top-menu img {
	max-width: 750px;
	width: 60%;
	height: auto;
	margin: auto 10px;
}

.t-menu-item {
	text-align: left;
	max-width: 380px;
	min-height: 300px;
	background-color: #eee;
	margin: auto 10px;
	padding: 6%;
}

.t-menu-item:hover {
	opacity: 0.8;
}

.t-menu-item h2 {
	font-size: 2.06em;
	line-height: 2;
	color: #666;
}

.t-menu-item p {
	line-height: 1.8;
}

.t-menu-item-more {
	display: block;
	width: 150px;
	margin: 20px 0 0 auto;
	padding: 10px 12px;
	border: #743 1px solid;
	color: #743;
	background-color: rgba(255, 255, 255, 0.4);
	position: relative;
}

.t-menu-item-more::after {
	content: "";
	display: inline-block;
	position: absolute;
	top: 15px;
	right: 16px;
	width: 6px;
	height: 6px;
	border-top: #743 1px solid;
	border-right: #743 1px solid;
	-webkit-transform: rotate(45deg);
	transform: rotate(45deg);
}

.top-menu2 {
	background-color: #ece0e2;
}

.top-menu3 {
	background-color: #edf0b8;
}

.t-menu2-item {
	background-color: rgba(255, 255, 255, 0.7);
}

/*<-banner一覧-----*/

.wrap-banner {
	width: 100%;
	background-color: #eee;
	margin-top: 50px;
	padding: 40px 0;
}

.banner {
	position: relative;
	padding: 20px 0;
	max-width: 1300px;
}

.banner img {
	max-width: 240px;
	max-height: 140px;
	margin: 5px;
}

.banner::before {
	content: "";
	position: absolute;
	left:50%;
	top: 0;
	display: inline-block;
	width: 90%;
	height: 1px;
	transform: translateX(-50%);
	background-color: #777;
}

.banner::after {
	content: "";
	position: absolute;
	left:50%;
	bottom: 0;
	display: inline-block;
	width: 90%;
	height: 1px;
	transform: translateX(-50%);
	background-color: #777;
}

.top_banner {
	display: flex;
	justify-content: center;
	align-items: center;
	padding: 40px 10px;
}

.top_banner img {
	width: 90%;
}
/*------->*/
/*------->*/

/* TOP メインビジュアルのサイズ調整 */
@media screen and (max-width: 1200px) {

	.toptitle-text {
		width: 94%!important;
		text-align: center;
		background-color: rgba(255, 255, 255, 0.85);
		border-radius: 7px;
		font-size: 2.4rem;
		position: absolute;
		bottom: 5%;
		left: 50%;
		transform: translate(-50%, -5%);
		margin: 0;
		padding: 20px;
	}

	.toptitle h1 {
		font-size: 4rem;
	}

	.toptitle p {
		font-size: 1.8rem;
		margin-top: 20px;
	}
}

@media screen and (min-width: 1001px) {
	/* YouTube動画ギャラリー */
	.youtube_gallery {
		width: 100%;
		margin: 80px auto 50px;
	}

	.gallery_ttl {
		width: 100%;
		margin: 0 0 30px;
		background-color: #7DBFD6;
		display: block;
		text-align: left;
		padding-left: 2em;
		color: #ffffff;
		font-size: 1.6em;
		line-height: 2.4em;
		font-weight: 500;
	}

	.gallery_content {
		display: flex;
		flex-wrap: wrap;
		align-items: flex-start;
		justify-content: flex-start;
		overflow-y: hidden;
		margin: 0 auto;
	}

	.gallery_content iframe {
		width: calc(98% / 3);
		max-height: 315px;
		min-height: 240px;
		margin-right: 1%;
		margin-bottom: 15px;
	}

	.gallery_content iframe:nth-of-type(3n){
		margin-right: 0;
	}

	.youtube_btn,
	.youtube_btn_close span {
		display: block;
		width: 100%;
		border: solid 5px #7dbfd6;
		margin: 30px auto 0;
		box-sizing: border-box;
	}

	.youtube_btn span,
	.youtube_btn_close span {
		font-size: 1.2em;
		line-height: 2.8em;
		font-weight: bold;
		color: #7dbfd6;
	}

	.youtube_btn:hover,
	.youtube_btn_close:hover {
		text-decoration: none;
		background-color: #7dbfd6;
	}

	.youtube_btn:hover span,
	.youtube_btn_close:hover span {
		color: #ffffff;
	}
}

@media screen and (max-width: 1000px) {
	/* YouTube動画ギャラリー */
	.youtube_gallery {
		width: 100%;
		margin: 80px auto 50px;
	}

	.gallery_ttl {
		width: 100%;
		margin: 0 0 30px;
		background-color: #7DBFD6;
		display: block;
		text-align: left;
		padding-left: 1em;
		color: #ffffff;
		font-size: 1.6em;
		line-height: 2.4em;
		font-weight: 500;
	}

	.gallery_content {
		display: flex;
		flex-wrap: wrap;
		align-items: flex-start;
		justify-content: flex-start;
		width: 96%;
		margin: 0 auto;
		overflow-y: hidden;
	}

	.gallery_content iframe {
		width: calc( 98% / 2 );
		min-height: 230px;
		max-height: 315px;
		margin-right: 2%;
		margin-bottom: 2%;
	}

	.gallery_content iframe:nth-of-type(2n) {
		margin-right: 0!important;
	}

	.gallery_content iframe:nth-of-type(3n) {
		margin-right: 2%!important;
	}

	.youtube_btn,
	.youtube_btn_close {
		display: block;
		width: 98%;
		border: solid 5px #7dbfd6;
		margin: 30px auto 0;
		box-sizing: border-box;
	}

	.youtube_btn span,
	.youtube_btn_close span {
		font-size: 1.2em;
		line-height: 2.8em;
		font-weight: bold;
		color: #7dbfd6;
	}

	.youtube_btn:hover,
	.youtube_btn_close:hover {
		text-decoration: none;
		background-color: #7dbfd6;
	}

	.youtube_btn:hover span,
	.youtube_btn_close:hover span {
		color: #ffffff;
	}
}

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

	.toptitle-text {
		width: 94%!important;
		text-align: center;
		background-color: rgba(255, 255, 255, 0.85);
		border-radius: 7px;
		font-size: 2.4rem;
		position: absolute;
		bottom: 0%;
		left: 50%;
		transform: translate(-50%, -5%);
		margin: 0;
		padding: 20px;
	}

	.toptitle h1 {
		font-size: 3rem;
	}

	.toptitle p {
		font-size: 1.6rem;
		margin-top: 10px;
	}

	.toptitle img {
		height: 450px;
		width: 100%;
		object-fit:cover;
		object-position: 90% 0;
	}

	.top-notice {
		margin: 50px auto 20px auto;
	}

	.top-menu {
		flex-wrap: wrap;
		width: 100%;
	}

	.top-menu img {
		width: 94%;
	}

	.top-menu .t-menu-item {
		margin-top: 10px;
		padding: 20px;
		max-width: 94%;
		min-height: inherit;
		width: 94%;
	}

	.top-menu a {
		width: 100%;
	}

	.t-menu-item h2 {
		font-size: 2.6rem;
	}

	.banner img {
		width: 300px;
	}

	.top_banner {
		display: flex;
		justify-content: center;
		align-items: center;
		padding: 40px 10px 0;
		flex-direction: column;
	}

	.top_banner img {
		width: 100%;
	}

	.top_banner img:last-child {
		margin-top: 10px;
	}

	/* YouTube動画ギャラリー */
	.youtube_gallery {
		width: 100%;
		margin: 80px auto 50px;
	}

	.gallery_ttl {
		width: 100%;
		margin: 0 0 30px;
		background-color: #7DBFD6;
		display: block;
		text-align: left;
		padding-left: 1em;
		color: #ffffff;
		font-size: 1.6em;
		line-height: 2.4em;
		font-weight: 500;
	}

	.gallery_content {
		display: flex;
		flex-wrap: wrap;
		align-items: flex-start;
		justify-content: flex-start;
		width: 96%;
		margin: 0 auto;
		overflow-y: hidden;
	}

	.gallery_content iframe {
		width: 100%;
		height: 215px;
		margin-right: 0;
		margin-bottom: 2%;
	}

	.gallery_content iframe:nth-of-type(3n){
		margin-right: 0!important;
	}

	.youtube_btn,
	.youtube_btn_close {
		display: block;
		width: 96%;
		border: solid 5px #7dbfd6;
		margin: 30px auto 0;
		box-sizing: border-box;
	}

	.youtube_btn span,
	.youtube_btn_close span {
		font-size: 1.2em;
		line-height: 2.8em;
		font-weight: bold;
		color: #7dbfd6;
	}

	.youtube_btn:hover,
	.youtube_btn_close:hover {
		text-decoration: none;
		background-color: #7dbfd6;
	}

	.youtube_btn:hover span,
	.youtube_btn_close:hover span {
		color: #ffffff;
	}
}


