/* CSS Document */


#first-view-region{
	position: relative;
	width: 100%;
}
#first-view-text{
	position:absolute;
	color: white;
	text-align: left;
	background-color:rgba(40,53,44,0.8);
	padding: 0.2% 0.1% 3% 0.2%;
	writing-mode: vertical-rl; /* テキストを縦書きにする */
	/*text-orientation: upright;*/ /* テキストを垂直にする */
	white-space: nowrap; /* テキストが折り返されないようにする */
	right: 18%;
}
#top-f1{
	border-left: 1.5px solid white;
	line-height: 4.5vw;
	letter-spacing: 0.1vw;
	text-align: left;
	padding-left: 2%;
	padding-top: 2%;
	padding-bottom: 2%;
	height: 60vh;
}

#top-f2{
	padding-top: 2%;
	padding-right: 2%;
}
#slider{
	width: 100%;
	height: 88vh!important;
	aspect-ratio:16/9;
}
#slider2{
	width: 100%;
	height: 88vh!important;
	aspect-ratio:16/9;
}
.textslideAnime {
	line-height: 3vw;
	padding-right: 20%;
}
#box2,#box3,#box4,#box5,#box6,#box7{
	position: relative;
	background-size:100% 100%;
	background-position: bottom;
	width:100%;
}
#top-box2-grid,#top-box3-grid{
	display:grid;
	grid-template-columns: 1fr 1fr;
	width: 70%;
	margin: auto;
	position: absolute;
	top: 51%; /* 親要素の高さの50%位置 */
	left: 50%; /* 親要素の幅の50%位置 */
	transform: translate(-50%, -50%); /* 子要素自身のサイズの50%分、上と左に移動 */
}
#top-box2-grid-l{width:110%;}
#top-box3-grid .textslideAnime{padding-right:30%;}
#top-box3-grid-l{width:109%;margin-left:-19%;}
.wrap-88vh{
	background-size:cover;
	background-position: bottom;
	width:100%;
	height:88vh;
	position:absolute;
	bottom:0;
}
.blurTrigger{text-align:left;margin-top:5%;}
.blurTrigger a{color: rgb(40,53,44);}
.blurTrigger a:hover{color: rgb(40,53,44);opacity: 0.6;}
.kuwashikuha{
	margin-top: 5%;
	border-bottom:1px solid black;
	padding:1%;
}.kuwashikuha-white{
	margin-top: 5%;
	border-bottom:1px solid white;
	padding:1%;
}
#box4,#box4-sp{position:relative;}
/*#box4-text,#box4-text-sp{
	background-color:rgba(255,255,255,0.6);
	writing-mode: vertical-rl; 
	text-orientation: upright; 
	white-space: nowrap;
	padding:6% 1% 2% 1%;
	text-align: end;
	position: absolute;
	top: 0;
	
}*/#box4-text,#box4-text-sp{
	width:5%;
	position: absolute;
	top: 0;
	
}

#box4-flex{
	display:flex;
	width: 60%;
	margin: 10% auto auto auto;
	justify-content: space-between;
}
.box4-l-flex,.box4-r-flex{
	display:flex;
	align-items: center;
	justify-content: space-between;
}
.box4-l-flex-text-region{
	text-align:right;
	padding-right: 3%;
	padding-top: 3%;
	background-color: rgb(104,152,155);
	color: rgb(40,53,44);
	height: max-content;
	width: 70%;
	margin-left: -25%;
	margin-top: 15%;
	margin-right:8%;
}
.box4-r-flex-text-region{
	text-align:left;
	padding-left: 3%;
	padding-top: 3%;
	background-color: rgb(98,124,86);
	color: rgb(255,220,152);
	height: max-content;
	width: 70%;
	margin-right: -25%;
	margin-top: 15%;
	margin-left: 8%;
}
.box4-l-flex-l,.box4-r-flex-r{
	width:28%;
	z-index: 2;
}
#aoshio-line,
#aoshio-line-sp{
	width:100%;
	height: 1px;
	border-bottom: 1px solid rgb(40,53,44);
}
#nokaidou-line,
#nokaidou-line-sp{
	width:100%;
	height: 1px;
	border-bottom: 1px solid rgb(255,220,152);
}
#box4-l,#box4-r{width:50%;}
.box4-l-flex-text-region h2,.box4-r-flex-text-region h2{margin-right:3%;}
.box4-r-flex-text-region h2{color: rgb(255,220,152);}
.box4-p-l{
	margin-top:5%;
	margin-right: 3%;
	letter-spacing: -0.02vw;
}
.box4-p-r{
	margin-top:5%;
	margin-left: 3%;
	letter-spacing: -0.02vw;
}
#nokaidou,#nokaidou-sp{
	position: absolute;
    bottom: 12%;
    z-index: 2;
    width: 9%;
    left: 32%;
}
#nokaidou1,#nokaidou1-sp{
	width: 34%;
    left: 0;
    position: absolute;
    bottom: 3%;
}
#nokaidou2,#nokaidou2-sp{
	width: 35%;
    position: absolute;
    right: 15.5%;
    top: 12%;
}
#nokaidou-logo{
	width: 20%;
}
#nokaidou-text{
	display: flex;
    width: 35%;
    text-align: left;
    align-items: center;
    position: absolute;
    bottom: 5%;
    right: 15.5%;
}
#aoshio,#aoshio-sp{
	position: absolute;
    bottom: 12%;
    z-index: 2;
    width: 9%;
    right: 32%;
}
#aoshio1,#aoshio1-sp{
	width: 34%;
    right: 0;
    position: absolute;
    bottom: 3%;
}
#aoshio2,
#aoshio2-sp{
	width: 35%;
    position: absolute;
    left: 15.5%;
    top: 12%;
}
#aoshio-logo{
	width: 20%;
}
#aoshio-text{
	display: flex;
    width: 35%;
    text-align: left;
    align-items: center;
    position: absolute;
    bottom: 15%;
    left: 15.5%;
}
.aoshio-text{padding-left:5%;}


#box5-sp,#box6-sp,#box7{position:relative;}
#box7-text,#box7-text-sp1,#box7-text-sp2{
	background-color:rgba(40,53,44);
	color: white;
	writing-mode: vertical-rl; /* テキストを縦書きにする */
	text-orientation: upright; /* テキストを垂直にする */
	white-space: nowrap; /* テキストが折り返されないようにする */
	padding:6% 1% 2% 1%;
	text-align: end;
	position: absolute;
	top: 0;
	letter-spacing: 0.15vw;
}
#box7-l{text-align:left;}
#box7-l{width:48%;}
#box7-r{width:43%;}
#box7-flex{
	display:flex;
	width: 62%;
	margin: 14% auto auto auto;
	justify-content: space-between;
}
.box7-l-flex,.box7-r-flex{
	display:flex;
	align-items: center;
}
.box7-r-flex{justify-content: start;}
.box7-l-flex-text-region{
	text-align: left;
	background-color: rgb(40, 53, 44);
	color: white;
	height: max-content;
	width: 70%;
	margin-left: -4%;
	margin-top: 45%;
	padding: 3% 5% 4% 10%;
}
.box7-l-flex-text-region a .kuwashikuha{border-bottom :1px solid white!important;}
.box7-l-flex-text-region a{color: white;}
.box7-l-flex-text-region a:hover{color: white;}
.box7-r-flex-text-region a{color:white;}
.box7-r-flex-text-region a:hover{color:white;}
.box7-r-flex-text-region{
	text-align:left;
	color: white;
	height: max-content;
	width: 70%;
}
.box7-r-flex-text-region h2{
	color: white;
	line-height: 2.5vw;
	writing-mode: vertical-rl;
	text-orientation: upright;
	white-space: nowrap;
	font-weight: normal;
	margin-left: 50%;
	margin-top: -20%;
	margin-bottom: 15%;
	letter-spacing: 0.2vw;
}
/*.box7-l-flex-l{
	width:100%;
}*/
.yoko{writing-mode:lr;}
.box7-r-flex-r{width:auto;}
.box7-p-r{margin-top:32%;}
#izanau-name-region,#izanau-name-region-sp{position: absolute;
	position: absolute;
	width: 16%;
	background-size: 100% 90%;
	background-repeat: no-repeat;
	aspect-ratio: 1 / 1;
	z-index: 0;
	text-align: left;
	top: 20%;
	left: 21%;
}
#izanau-name-region h2, #izanau-name-region-sp h2{
	color:rgb(40,53,44);
	line-height: 2.4vw;
	writing-mode: vertical-rl;
	text-orientation: upright;
	white-space: nowrap;
	top: 47%;
	left: 47%;
	transform: translate(-50%, -50%);
	letter-spacing: 0.1vw;
	margin-right: 1%;
}
.izanau-spacing1{
	letter-spacing: 0.2vw;
	margin-top:-7%;
}
.izanau-spacing2{
	letter-spacing: 0.2vw;
	margin-top: 5%;
}
.box7-p-l{
	line-height: 1.8vw;
	letter-spacing: 0.05vw;
	margin-bottom: 0;
	white-space: nowrap;
}
.box7-l-flex-l{
	margin-top: 20%;
	width:30%;
	z-index: 2;}

#box8{
	background-color:rgb(40,53,44);
	overflow-x: hidden;
}
#box8-sp{
	background-color:rgb(40,53,44);
}

.omoi-flex{
	display:flex;
	/*width:50%;*/
	margin-top: 10%;
}
.omoi-flex-text{
	background-size:cover;
	display: flex;
}
.omoi-flex-img,.omoi-flex-text{
	aspect-ratio:1/1;
	width:50%;
}

.slider-container {
	overflow: hidden;
	width: 100%;
	max-width: 900px;
	margin: 0 auto;
	position: relative;
}
.slider-wrapper {
	display: flex;
	transition: transform 1s ease;
}
.slide {
	min-width: 100%;
	box-sizing: border-box;
}
.slide img {
	width: 100%;
	display: block;
}



button.prev, button.next {
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    background-color: rgba(0, 0, 0, 0.5);
    color: white;
    border: none;
    padding: 10px;
    cursor: pointer;
}

button.prev {
    left: 10px;
}

button.next {
    right: 10px;
}




/**/





#box10 h1,#box9 h1{
	font-weight: normal;
	text-align: center;
	margin-bottom: 1%;
}
.kuradayori-news{
	text-orientation: initial;
}
#box10,#box9{
	padding-top:3%;
	padding-bottom:5%;
}

#osirase-flex{
	display:flex;
	width:70%;
	justify-content: center;
	margin: auto;
}
.osirase-flex-l{
	writing-mode: vertical-rl; /* テキストを縦書きにする */
	text-orientation: upright; /* テキストを垂直にする */
	white-space: nowrap; /* テキストが折り返されないようにする */
	width:20%;
	margin-right: 5%;
}
.osirase-flex-r{
	width:65%;
}
.osirase-flex2{
	display:flex;
	justify-content: space-around;
	align-items: center;
	margin-bottom: 1%;
}
.osirase-flex2-l{width:35%;}
.osirase-flex2-r{
	width:55%;
	color: rgb(45,45,48);
}
.osirase-ichiran{
	width:fit-content;
	margin: 2% auto auto auto;
	padding-bottom: 0.5%;
}
#box11{margin-bottom:10%;}
.box11-border-bottom{
	border-bottom:1px solid rgb(45,45,48);
	width: fit-content;
	margin: auto;
}
#hukaku{
	width:40%;
	margin: 5% auto 1%;
}
#box11-grid{
	display:grid;
	grid-template-columns: 1fr 1fr;
	gap:5%;
	width:60%;
	margin: auto;
}

#box12{margin-bottom:10%;}
#box12-flex{
	width: 70%;
	margin: auto;
	display: flex;
	align-items: center;
}
.box12-flex-l,.box12-flex-r{width:50%;}
.box12-flex-l iframe{
	width:100%;
	aspect-ratio:3/2;
}
.box12-flex-r{
	padding:10%;
}
.omoi-flex-text-region{
	width: fit-content;
	margin: auto;
	line-height: 2vw;
}
.box10-border-bottom{text-align: center;}

#insta-region{
	width:55%;
	margin: 5% auto 10% auto;
}
#sb_instagram #sbi_load .sbi_load_btn, #sb_instagram .sbi_follow_btn a {
	font-size: 16px;
}
#sbi_load{margin-top:5%;}


/*ここからスマホ*/
@media(max-width:750px){
	#first-view-text {
		right: 3%;
		top: 2%;
		padding: 1% 1% 3% 1%;
	}
	#top-f1{
		line-height: 12vw;
		height: 40vh;
	}
	
	#box1{position:relative;}
	#box2-sp,#box3-sp,#box4-sp{
		width: 100%;
		height: fit-content;
		background-size: 100% 100%;
	}
	#box5-sp,#box6-sp{
		width: 100%;
		background-size: 100% 100%;
		aspect-ratio:414/896;
		height: auto;
	}
	#box2-sp{padding-bottom: 10%;}
	#box3-sp{padding-bottom: 30%;}
	#box2-sp-flex,#box3-sp-flex{
		display: flex;
	}
	#box2-sp-flex-l,#box3-sp-flex-r{
		width: 65%;
	}
	#box2-sp-flex-r,#box3-sp-flex-l{
		width:35%;
	}
	.textslideAnimeInner{
		font-size:7vw!important;
	}
	.slideAnimeTopBottom {
		padding-right: 10%;
		padding-left: 10%;
		padding-top: 15%;
	}
	.textslideAnime {
		line-height: 5vw;
	}
	.blurTrigger {
		letter-spacing: -0.3vw;
		padding: 3%;
	}
	#box4-sp{
		padding-bottom: 20%;
		padding-top: 30%;
	}
	#box4-flex-sp{
		display:flex;
		width: 95%;
		margin: auto;
		justify-content: space-between;
	}
	#box4-text-sp{
		width:8%;
		left:45%;
		z-index: 1;
		font-size: 5vw!important;
	}
	#box4-flex-sp h2{
		font-size: 5vw!important;
		margin-bottom: 0;
	}
	.box4-p-l {
		margin-right: 0;
		margin-left: 13%;
		text-align: left;
	}
	.omoi-flex{
	}
	#insta-region{width:70%;}
	#box12-flex{
		width:90%;
		display: block;
	}
	.box12-flex-l,.box12-flex-r{
		width:100%;
	}
	.box12-flex-r{
		text-align:center;
	}
	.box12-flex-r .kuwashikuha{
		margin: auto;
	}
	#box11-grid,#hukaku{width:90%;}
	.slider-container{width:90%;}
	#osirase-flex{width:80%;}
	.osirase-flex-l{
		width:10%;
		margin-right: 10%;
	}
	.osirase-flex-r{
		width:75%;
	}
	.box8-sp-item{
		width:70%;
		margin: auto auto 10% auto;
	}
	#box8-sp{
		padding-top:10%;
		padding-bottom: 10%;
	}
	.omoi-flex{display:block;}
	.omoi-flex-img, .omoi-flex-text {
		width: 100%;
	}
	#nokaidou2-sp{
		width:55%;
		right:0;
		top:6%;
	}
	#aoshio2-sp{
		width:55%;
		left:0;
		top:6%;
	}
	#nokaidou1-sp{
		width:40%;
		bottom:35%;
	}
	#aoshio1-sp{
		width:40%;
		bottom:35%;
	}
	#nokaidou-sp {
		bottom: 44%;
		width: 22%;
		left: 28%;
	}
	#aoshio-sp {
		bottom: 44%;
		width: 22%;
		right: 28%;
	}
	#nokaidou-text-sp{
		width: fit-content;
		text-align: left;
		position: absolute;
		bottom: 5%;
		right: 15.5%;
	}
	.aoshio-text{padding-left:0;}
	#aoshio-text-sp{
		width: fit-content;
		text-align: left;
		position: absolute;
		bottom: 5%;
		left: 15.5%;
	}
	#nokaidou-logo-sp{
		width: 25%;
		text-align: left;
		position: absolute;
		bottom: 29%;
		right: 13%;}
	#aoshio-logo-sp{
		width: 32%;
		text-align: left;
		position: absolute;
		bottom: 33%;
		left: 10%;}
	#box7-sp1,#box7-sp2{
		width: 100%;
		position:relative;
		/*height: fit-content;*/
		background-size: 100% 100%;
		height: auto;
		aspect-ratio:750/867;
		
	}
	#box7-text-sp1,#box7-text-sp2{
		padding: 6% 1% 4% 1%;
		letter-spacing: 0.4vw;
		right: 5%;
		z-index: 1;
	}
	#izanau-name-region-sp {
		width: 50%;
		top: 10%;
		right: 10%;
		left: auto;
	}
	#izanau-name-region-sp h2{
		line-height: 8vw;
	}
	.box7-l-flex{
		width: 90%;
		margin: auto 13%;
	}
	.box7-l-flex-l{margin-top: 30%;
	}
	.box7-p-l {
		line-height: 5.5vw;
		letter-spacing: 0.5vw;
	}
	.box7-l-flex-text-region{
		margin-top:70%;
		padding:2% 5% 3% 10%;
	}
	.box7-r-flex{
		position:absolute;
		bottom: 15%;
		display: block;
		left: 5%;
	}
	.box7-r-flex-text-region {
		width: fit-content;
	}
	.box7-r-flex-text-region h2 {
		line-height: 5.5vw;
		letter-spacing: 1vw;
	}
	.omoi-flex-text-region {
		line-height: 5vw;
	}
	#box12 h2{margin: auto;text-align: center;}
	@supports (-webkit-touch-callout: none) {
		#izanau-name-region-sp h2 {
			position: absolute;
		}
	}
	.osirase-flex2{
		display:block;
		margin-bottom: 20%;
	}
	.osirase-flex2-l,.osirase-flex2-r{
		width:90%;
		margin: auto;
	}
	
}