@charset "UTF-8";

/*----------------------------
* 
* scrollgimig css
* v1.1
* lastupdate:2025.01.06
* 
-----------------------------*/


:root{
	
	/* size height*/
	--scroll-target-height    :650px;
	--scroll-target-height-pc :600px;
	--scroll-target-height-tab:550px;
	--scroll-target-height-sp :550px;
	--scroll-target-height-xsp :450px;
	
	/* scrollbar */
	--scrollbar-color1:#a1c4ce;
	--scrollbar-color2:#FFF;
}


/*-------------------------------------

base

-------------------------------------*/

.scroll-target{
  overflow-x:visible;
  overflow-y: hidden;
  -webkit-overflow-scrolling:touch;
  position: relative;
	cursor: grab;
	-webkit-scrollbar-width: none;
					scrollbar-width: none;
}
.scroll-target:active{
	cursor: grabbing;
}

.scroll-target img{
  width:auto;
  height: 100%;
	display: block;
}

.scroll-target::-webkit-scrollbar{
  width:0px;
	display: none;
}
.scroll-target::-webkit-scrollbar-track{
  height: 10px;
	background-color: transparent;
}

.view-note{
	font-size:10px;
	position: absolute;
	bottom:10px; right: 10px;
	color:#fff;
	text-shadow: 0 0 10px rgba(0,0,0,0.5);
}

.scroll-inner{
  width:100%;
  height: 100%;
}

.scroll-container{
  width:100%;
  /*max-width:1200px;*/
  margin: 0 auto 0px;
  position: relative;
}

.scroll-container .view-arrow-cls{
  position: absolute;
  top:50%; transform: translateY(-50%);
  width:30px;
  cursor: pointer;
}
.scroll-container .view-arrow-cls img{width:100%; height: auto; display: block;}

.scroll-container .view-arrow-cls.arrow-left{
  left: 20px;
}
.scroll-container .view-arrow-cls.arrow-right{
  right: 20px;
}

.scroll-container .view-arrow-cls.arrow-top{
	transform: translateX(-50%);
  left: 50%;
	top:20px;
}
.scroll-container .view-arrow-cls.arrow-top img{transform: rotate(90deg)}

.scroll-container .view-arrow-cls.arrow-bottom{
  transform: translateX(-50%);
  left: 50%;
	top:auto;
	bottom:20px;
}
.scroll-container .view-arrow-cls.arrow-bottom img{transform: rotate(90deg)}

.scroll-container.ios-cls .view-arrow-cls.arrow-right{
	right: 10px;
}

@media screen and (max-width:600px){
  .scroll-container .view-arrow-cls{
    width:20px;
  }
  .scroll-container .view-arrow-cls.arrow-left{
    left: 10px;
  }
  .scroll-container .view-arrow-cls.arrow-right{
    right:10px;
  }
	.scroll-container .view-arrow-cls.arrow-top{
    top: 10px;
  }
  .scroll-container .view-arrow-cls.arrow-bottom{
    bottom:10px;
  }
}

.scroll-target .view-img2{
	position: absolute;
	top:0; left: 0;
	opacity: 0;
	transition: 1s ease 0s opacity;
	pointer-events: none;
}
.scroll-target .view-img2.active{
	opacity: 1;
}

/*-------------------------------------

size

-------------------------------------*/

.scroll-target{
	height:var(--scroll-target-height);
}

@media screen and (max-width:960px){
  .scroll-target{
    height:var(--scroll-target-height-pc);
  }
}

@media screen and (max-width:768px){
  .scroll-target{
    height:var(--scroll-target-height-tab);
  }
}

@media screen and (max-width:600px){
  .scroll-target{
   height:var(--scroll-target-height-sp);
  }
}

@media screen and (max-width:400px){
  .scroll-target{
   height:var(--scroll-target-height-xsp);
  }
}

/*-------------------------------------

scroll bar

-------------------------------------*/

.scrollbarX .scroll-target{
	overflow-x: scroll;
	scrollbar-width: auto;
}

.scrollbarY .scroll-target{
	overflow-y: scroll;
	scrollbar-width: auto;
}
.scrollbarY .scroll-target img{
  width:auto;
  height: 150%;
}

.scrollbarX .view-note{
	bottom:26px;
}
.scrollbarY .view-note{
	right:26px;
}

.scrollbarY .scroll-target::-webkit-scrollbar,
.scrollbarX .scroll-target::-webkit-scrollbar{
	width: 10px;
	display: block;
	background: var(--scrollbar-color1);
}
.scrollbarY .scroll-target::-webkit-scrollbar:horizontal,
.scrollbarX .scroll-target::-webkit-scrollbar:horizontal{
	height: 10px;
	background: var(--scrollbar-color1);
}
.scrollbarY .scroll-target::-webkit-scrollbar-thumb,
.scrollbarX .scroll-target::-webkit-scrollbar-thumb{
	background: var(--scrollbar-color2);
	border-radius: 10px;
	border:3px solid var(--scrollbar-color1);
	box-sizing: border-box;
}
.scrollbarY .scroll-target::-webkit-scrollbar-thumb:horizontal,
.scrollbarX .scroll-target::-webkit-scrollbar-thumb:horizontal{
	background: var(--scrollbar-color2);
	border-radius: 5px;
}

.scroll-container.scrollbarY{
	margin-bottom: 0px;
}

.scroll-container.scrollbarX{
	margin-bottom: 0px;
}

.scrollbarY:not(.scrollbarX) .scroll-target{
	overflow-x: hidden;
	overflow-y: scroll;
}
.scrollbarY:not(.scrollbarX) .scroll-target img{
  width:100%;
  height: auto;
}


/*-------------------------------------

change btn

-------------------------------------*/
.scroll-btn-container{
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
	align-items: flex-start;
	margin: 1rem auto 1rem;
	/*background-color: #000;*/
	width:30%;
	min-width:200px;
	max-width:400px;
}

.scroll-btn-container .scroll-btn-cls{
	width:50%;
	max-width:200px;
	text-align: center;
	padding: 1rem 0rem;
	cursor: pointer;
	color:#fff;
	background-color: rgba(45,90,159,1.00);
	opacity: 0.5;
	transition: 0.3s ease 0s opacity;
}
.scroll-btn-container .scroll-btn-cls.active,
.scroll-btn-container .scroll-btn-cls:hover{
	opacity: 1;
}



/*--------------------------------------------------------*/


/*location*/


/*
#location .image-map .scroll-container#view_3 .scroll-hint-icon-wrap{
	top:50%;
	left: 50%;
	max-height: none!important;
}


#location .image-map .scroll-container#view_3 .scroll-hint-icon{
	top: 0 !important;
  left: 0 !important;
  translate: 25% 25%;
	padding:20px 10px 10px 10px;
	height: 90px;
}

#location .image-map .scroll-container#view_3 .scroll-hint-icon::after{
	background-image: url("../../images/location/hint_arrow.png");
	background-size: contain;
	top:0; left: 0;
	width: 100%; height: 100%;
	margin-left: 0;
}

#location .image-map .scroll-container#view_3 .scroll-hint-icon .scroll-hint-text{
	margin-top:10px;
}


@media screen and (max-width:450px){
	#location .image-map .scroll-container#view_3 .scroll-target{
  	height:650px;
  }
}
*/

#location .image-map .scroll-container#view_3 .scroll-inner::before{
	content:"";
	width:100%;
	height:100%;
	display: block;
	position: absolute;
	top:0%; left: 0%;
	pointer-events: none;
	transition: 0.5s linear 0s opacity;
	background-color: rgba(0,0,0,0.4);
	z-index: 1;
}

#location .image-map .scroll-container#view_3 .scroll-inner::after{
	content:"";
	width:120px;
	height:76px;
	position: absolute;
	top:50%; left: 50%;
	translate: -50% -50%;
	background-image: url("../../images/location/hint_arrow.png");
	background-size: contain;
	background-repeat: no-repeat;
	background-position: center center;
	pointer-events: none;
	transition: 0.5s linear 0s opacity;
	z-index: 2;
}
#location .image-map .scroll-container#view_3 .scroll-inner.icon-fadeOut::before{
	opacity: 0;
}
#location .image-map .scroll-container#view_3 .scroll-inner.icon-fadeOut::after{
	opacity: 0;
}

@media screen and (max-width:768px){
	#location .image-map .scroll-container#view_3 img{
		height:100%!important;
	}
}

@media screen and (max-width:450px){
	#location .image-map .scroll-container#view_3 .scroll-target{
  	height:650px;
  }
  
}



