@charset "UTF-8";

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


:root{
	
	/* size height*/
	--scroll-target-height    :450px;
	--scroll-target-height-pc :400px;
	--scroll-target-height-tab:350px;
	--scroll-target-height-sp :300px;
	
	/* scrollbar */
	--scrollbar-color1:#6cc1c7;
	--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);
}
.view-note.cap{
		background-color: rgba(9,65,92,0.8);
		color: #fff;
		padding: 2px 6px;
		font-size: clamp(10px,1.1vw,12px);
		letter-spacing: 0.05em;
		right: 0;
		bottom: 0;
}


.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:60px;
  cursor: pointer;
	filter: drop-shadow(0 0 1rem rgba(0,0,0,0.5));
}
.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.ios-cls .view-arrow-cls.arrow-right{
	right: 10px;
}

@media screen and (max-width:600px){
  .scroll-container .view-arrow-cls{
    width:50px;
  }
  .scroll-container .view-arrow-cls.arrow-left{
    left: 10px;
  }
  .scroll-container .view-arrow-cls.arrow-right{
    right: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);
  }
}

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

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;
}

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

custom plan

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

#plan .view-wrap{
	width:100%;
	background-color: #999;
	display:none;
	margin-top:4rem;
}


@media screen and (max-width:1400px){
	#plan .view-image{
		display:none;
	}
	#plan .view-wrap{
		display:block;
	}
}



















