@charset "utf-8";
.text-center img{ margin: 0 auto; text-align: center; }
.side{ margin: 18px auto; border: 4px solid #177abc; background: #e3eff8; }

.pagetitle{
	background: url(img/bg-shoptitle.png) repeat-x left bottom;
}

.top-img{
	margin: 0;
	width: 100%;
}
.heading2{
	position:relative;
	padding-left:30px;
	border-bottom:2px solid #ccc;
	font-weight: bold;
	font-size: 22px;
	line-height: 38px;
}
 
.heading2:before{
	content:'';
	border-radius:30px;
	-webkit-border-radius:30px;
	-moz-border-radius:30px;
	height:12px;
	width:12px;
	display:block;
	position:absolute;
	top:14px;
	left:7px;
	background-color:#4ba1da;
	box-shadow: 0 0 2px 2px rgba(255,255,255,0.2) inset;
	filter:alpha(opacity=50);
	-moz-opacity:0.50;
	-khtml-opacity: 0.50;
	opacity:0.50;
	z-index: 1;
}
 
.heading2:after{
	content:'';
	border-radius:30px;
	-webkit-border-radius:30px;
	-moz-border-radius:30px;
	height:15px;
	width:15px;
	display:block;
	position:absolute;
	top:7px;
	left:2px;
	background-color:#177abc;
	box-shadow: 0 0 2px 2px rgba(255,255,255,0.2) inset
}

.heading3{
	position:relative;
	padding:9px;
	padding-left:15px;
	font-weight: bold;
	font-size: 18px;
	background-color: #177abc;
	color: #fff;
	border-radius:3px;
	-webkit-border-radius:3px;
	-moz-border-radius:3px;
}
     
.heading3:before{
	content:'';
	height:25px;
	width:4px;
	display:block;
	position:absolute;
	top:5px;
	left:5px;
	background-color:#fff;
	border-radius:3px;
	-webkit-border-radius:3px;
	-moz-border-radius:3px;
}

.video-width{
	max-width: 100%;
	margin: 0 auto;
}
.movie-width{
	width: 100%;
}
.about-flex .movie-wrap,
.video-inner{
     position: relative;
     padding-bottom: 56.25%;
     height: 0;
     overflow: hidden;
     margin: 0 auto;
     margin-bottom: 50px;
}
.about-flex .movie-wrap{
	border: 2px solid #ddd;
}
/*.movie-wrap::before {
  position: absolute;
  content: "";
  display: block;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  border-radius: 50%;
  border: 6px solid #E6C612;
  width: 60px;
  height: 60px;
}
 
.movie-wrap::after {
  position: absolute;
  content: "";
  display: block;
  top: 50%;
  left: 50%;
  transform: translate(-40%, -50%);
  border-style: solid;
  border-color: transparent transparent transparent #E6C612;
  border-width: 15px 0 15px 25px;
}
*/
.movie-play{
position: absolute;
  content: "";
  display: block;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  background-color: transparent;
  background-image: url(img/movie-play.png);
  background-repeat: no-repeat;
  background-size: 100%;
  border: none;
  width: 20%;
  height: 40%;
  transition: all .3s;
  z-index: 2;
}
.movie-wrap:hover .movie-play {
    opacity: .5;
}
.movie-wrap img {
    position: absolute;
    width: 100%;
    top: 50%;
    transform: translate(0,-50%);
    cursor: pointer;
}
.about-flex .movie-wrap iframe,
.video-inner iframe{
     position: absolute;
     top: 0;
     left: 0;
     width: 100%;
     height: 100%;
     border: none;
}
.ndfHFb-c4YZDc-Wrql6b{
	right: 9999px !important;
}
.about-flex .heading3{
	margin-bottom: 20px;
}
.about-flex .heading3:first-of-type{
	margin-top: 30px;
}
#ginza .heading2:not(:first-of-type){
	margin-top: 50px;
}
#example3{
	margin-bottom: 10px;
}
.ndfHFb-c4YZDc-i5oIFb.ndfHFb-c4YZDc-e1YmVc .ndfHFb-c4YZDc-Wrql6b{
	display: none !important;
}
.about-flex{
	display: flex;
	gap: 4%;
}
.about-left{
	width: 50%;
	padding-top: 40px;
}
.about-left p{
	line-height: 1.75;
}
.about-right{
	width: 50%;
}
.movie-inner{
	padding-top: 40px;
}
.movie-inner p{
	line-height: 1;
	text-align: center;
}
.shisetsu-document{
	display: block;
	max-width: 350px;
	border: 2px solid transparent;
}
.shisetsu-document img{
	width: 100%;
	height: 100%;
	object-fit: cover;
}
.shisetsu-document:hover{
	border: 2px solid #177abc;
}
@media(min-width: 600px) and (max-width: 975px){
	.shisetsu-document{
		margin-top: 40px;
	}
}
@media (min-width: 320px) and (max-width: 600px) {
	.slider-pro p.sp-layer{
		font-size: 28px !important;
	}
	.information-img img{
		width: 100%;
	}
	.movie-width{
		width: 100%;
	}
	.about-flex{
		display: block;
	}
	.about-left{
		width: 100%;
		padding-top: 20px;
	}
	.about-right{
		width: 100%;
	}
	.movie-inner{
		padding-top: 20px;
	}
	.shisetsu-document{
		max-width: 100%;
	}
	.shisetsu-document:hover{
		border: 2px solid transparent;
	}
}