@charset "UTF-8";

/******* 共通 ********/
#contents {
	/* 20250630 修正 */
	max-width: none;
	overflow: hidden;
}
#container {
	width: 800px;
	margin: 20px auto 0;
}

#container .bg {
	width: 100%;
	background-image: url(../images/bg.jpg);
	background-size: contain;
	background-size: cover;
	background-position: center;
}

#container img {
	width: 100%;
	height: auto;
	vertical-align: top;
}
#container a {
	display: block;
}
#container a:hover {
	opacity: .6;
	transition-duration: .3s;
	-moz-transition-duration: .3s;
	-webkit-transition-duration: .3s;
}

#container .link_cont {
	position: relative;
	width: 100%;
}

#container .link_cont > img {
	position: relative;
	display: block;
	width: 100%;
}

.link_cont > a {
	display: block;
	position: absolute;
/*
	transform: translateX(-50%);
*/
}

.link_cont iframe {
	position: absolute;
	width: 94.75%;
	aspect-ratio: 16 / 9;
	left: 50%;
	top: 5.5%;
	transform: translateX(-50%);
}


.link_cont.link01 a {
	width: 36.125%;
	bottom: 34%;
	right: 2%;
}

.link_cont.link02 a {
	width: 93.25%;
	left: 50%;
	transform: translateX(-50%);
	bottom: 12%;
}

.link_cont.link03 a {
	width: 36.125%;
	bottom: 2.5%;
	left: 3%;
}

.link_cont.link04 a {
	width: 36.125%;
	bottom: 18%;
	left: 3%;
}

.link_cont.link05 a {
	width: 93.25%;
	left: 50%;
	transform: translateX(-50%);
	top: 2.0%;
}




.mt60 {
	margin-top: 60px !important;
}
.mt40 {
	margin-top: 40px !important;
}
.mt30 {
	margin-top: 30px !important;
}
.mt20 {
	margin-top: 20px !important;
}


.mb60 {
	margin-bottom: 60px !important;
}

.pb30 {
	padding-bottom: 30px !important;
}
.pb60 {
	padding-bottom: 60px !important;
}


@media (min-width: 769px) {
	.sp {
		display: none;
	}
}
@media (max-width: 768px) {
	*{
		box-sizing: border-box;
	}
	.pc {
		display: none;
	}
	#container {
		width: 100%;
	}
}


