@charset "utf-8";
/* CSS Document */

h1 {
	margin: 5% 0 -70px -10px;
	font-size: 155%;
	letter-spacing: 0.1em;
	background-image:url(../img/common/h1_bg.svg);
	background-size:cover;
	width:170px;
	min-height: 170px;
	min-width: 170px;
	color:#FFF;
	display: flex;
	justify-content: center;
	align-items: center;
	overflow: hidden;
	position:relative;
	z-index:2;
	}
 
#topImagesBoxSp {
	position: relative;
	width: 100%;
	height: calc(100vh - 100px);
	overflow: hidden;
	background: #000000;
	margin-bottom: 30px;
	}

#topImageSp { 
	position: relative;
	height: 90%;
}

#topImageSp::after {
	position:absolute;
	content: '';
	display: block;
	top: 0;
	right: 0;
	width: 100%;
	height: 100vh;
	background-color: rgba(0,0,0,0.4);
}

#topImageSp #topImageInnerSp img {
	position:absolute;
    top: 50%;
    left: 50%;
	width:auto;
	height:100%;
	transform: translate(-50%, -50%);
    -webkit-transform: translate(-50%, -50%);
    -ms-transform: translate(-50%, -50%);
	object-fit: cover;
}

.videoBoxSp {
	position: relative;
	width: 100%;
	height: 10%;
	overflow: hidden;
	}

.videoBoxSp::after {
	position:absolute;
	content: '';
	display: block;
	top: 0;
	right: 0;
	width: 100%;
	height: 100vh;
	background-color: rgba(0,0,0,0.4);
}

video.slider-bgSp {
	position:absolute;
    top: 0;
    left: 50%;
	width:100%;
	height:auto;
	transform: translate(-50%, -50%);
    -webkit-transform: translate(-50%, -50%);
    -ms-transform: translate(-50%, -50%);
	object-fit: cover;
	}

.topText {
	position:absolute;
	top: 45%;
    left: 50%;
	transform: translate(-50%, -50%);
    -webkit-transform: translate(-50%, -50%);
    -ms-transform: translate(-50%, -50%);
	object-fit: cover;
	-ms-writing-mode: tb-rl;
  	writing-mode: vertical-rl;
	color: #fff;
	height: auto;
	filter: drop-shadow(5px 5px 10px rgb(0, 0, 0));
	font-size: 135%;
	letter-spacing: 2px;
	line-height: 200%;
	font-family: 'Shippori Mincho', serif;
	white-space: nowrap;
	}	
 
/*セパレートボックス*/
.miryoku-box {display: flex; flex-direction: column; align-items:stretch; background:url(../img/common/green-dust-and-scratches80.png), linear-gradient(348deg, rgba(25,54,5,1) 0%, rgba(25,54,5,1) 38%, rgba(54,99,22,0.9) 100%);}
.separate-box { width: 90%; display:flex; flex-direction: column; margin: 0 auto 0; justify-content:space-between; position:relative; z-index: 1;}
.separate-leftBox { width: 100%; font-size: 0; line-height: 0;}
.separate-text {
	position: relative;
	padding: 8% 10%; z-index:2;}
.separate-text h2 { color:#FFF; margin-bottom: 5px;}
.separate-text p { line-height: 25px; color:#FFF;}

.separate-rightBox {
	width: 100%;
	margin-top: 0;
	background: none;
	display: flex;
	flex-direction: column;
	justify-content: start;
}
.separate-img { 
	display: flex;
	justify-content: center;
	align-items: center;
	overflow: hidden;
	height: 240px;
	}
.separate-img img { width: 100%; }
.bigText {
	font-family: 'Noto Serif JP', serif;
	font-weight: 200;
	font-size: 250%;
	z-index: 3;
	letter-spacing:0;
	color: #FFFFFF;
	padding-top: 0;
	margin-bottom: 10px;
}
.sp-bigText {
	display: flex;
	align-items:flex-end;
}
.bigText-maintext {
	white-space: nowrap
}
.bigText-subtext {
	padding: 0 0 6px 10px;
	font-size: 50%;
	font-weight: 200;
	font-family: 'Playfair', serif;
	letter-spacing: 1px;
	line-height: 15px;
}

.bigText .right{
	text-align: left;
}

#separate_02 .bigText .right{
	text-align: left;
	width: 200%;
}

.bigText .left{
	text-align: right;
	width: 200%;
}
.bigText span {letter-spacing: 5px; font-family: 'Playfair', serif;}
.animationLeft { margin-left: 0;}
.animationRight { margin-right: 0;}

/*セパレートボックス*/

#bigBnr { max-width: 1000px; margin-top: 5%;}
#bigBnr div { border-radius: 0 50px;}
#bigBnr img { width: 100%;}
#bnrSpace { margin-top: 50px;}
#bnrSpace img { width: 100%;}
ul.longBnr li { margin-bottom: 2%; font-size: 0; line-height: 0;}
#bnrSpace h2 { margin: 10% 0 3%;}
.bnrIllumination { border-radius: 0 50px;}
ul.berryShortBnr { display:flex; flex-direction: row; justify-content:space-between; flex-wrap:wrap; width: 100%; height:auto;}
ul.berryShortBnr li { flex:0 0 48%; height:100%;  margin: 0 0 2%;}
ul.berryShortBnr li img { width: 100%;}

 /* おすすめプラン */
#planBox ul { width: 100%; display: flex; flex-direction: column; align-items: stretch;}
#planBox li { width: 250px; height: auto!important; display: flex; flex-direction: column; justify-content:space-between; background: #000000;}
#planBox .imgBox {
	display: flex;
	justify-content: center;
	align-items: center;
	overflow: hidden;
	height: 165px;
	}
#planBox .imgBox img { width: 100%;}
#planBox .planTitle { display: flex; justify-content: start; height: 100px; margin: 0 0 0; padding: 7%; color: white;}
#planBox .planBtn { background:#942148; color:#FFF; text-align:center; margin-top: auto; padding: 5px; align-items: flex-end;}
#planBox .planBtn:hover { opacity: 0.8;}
.arrow-white { color:#FFF;}
 /* おすすめプランここまで */

.videoBoxFooter {
	position: relative;
	width:100%;
	height:50px;
	overflow: hidden;
	}
.videoBoxFooter video {
	position:absolute;
    top: 0;
    left: 50%;
	transform: translate(-50%, -50%);
    -webkit-transform: translate(-50%, -50%);
    -ms-transform: translate(-50%, -50%);
	object-fit: cover;
	width:100%;
	height:auto;
	}
.videoBoxFooter::after {
	position:absolute;
	content: '';
	display: block;
	top: 0;
	right: 0;
	width: 100%;
	height: 100vh;
	background-color: rgba(0,0,0,0.4);
	/*background-image: radial-gradient(#111 30%, transparent 31%), radial-gradient(#111 30%, transparent 31%);
	background-size: 4px 4px;
	background-position: 0 0, 2px 2px;*/
}

/* 外部リンクバナー */
	
.footerbnrSlide { display: flex;}
.footerbnrSlide li { width: 220px; margin: 2px; height: 100%;}
	
.footerbnr-box {
	width: 90%;
    max-width: 664px;
    margin: 0 auto;
    padding: 1.5rem 0;
}
.footerbnr-box img {
	width: 100%;
}

/* 基本のflexbox */
.flexbox { display: flex; flex-direction: column; justify-content: center; align-items: center; padding: 2%;}
.flexbox .flexList { width: auto; padding: 1%;}

/* スライダーの下 */
#topImagesBox_after {
	position: relative;
	width: 100%;
	height: 25px; /* ボーダーの太さ */
	background: url(../img/common/navBg.png);

}

#topImagesBox_after::after { 
	position: absolute;
	content: '';
	display: block;
	bottom: 0;
	width: 100%;
	height: 5px; /* ボーダーの太さ */
	background:#413c39;
	box-shadow: 0px 0px 5px rgba(0,0,0,0.8);*/
}

/*	background-image: url(../img/common/navBg.png); /* 画像を適用 */
/*	box-shadow: 0px 0px 5px rgba(0,0,0,0.8);*/


@media (min-width: 768px) {

#topImagesBox {
	width: 100%;
	height: 760px;
	position: relative;
	overflow: hidden;
	background: #000000;
	}
.videoBox {
	position: absolute;
	width: auto;
	height: 100%;
    top: 0;
    left: 50%;
    transform: translateX(-50%);
    -webkit-transform: translateX(-50%);
    -ms-transform: translateX(-50%);
	}

.videoBox::after {
	content: '';
	display: block;
	position: absolute;
	top: 0;
	right: 0;
	width: 100%;
	height: 100%;
	background-color: rgba(0,0,0,0.4);
	/*background-image: radial-gradient(#111 30%, transparent 31%), radial-gradient(#111 30%, transparent 31%);
	background-size: 4px 4px;
	background-position: 0 0, 2px 2px;*/
}

#topImage { 
	position: absolute;
	height: 755px;
	top: 0;
	right: 0;
	left: 0;
	display: flex;
    justify-content: center;
    align-items: center;
	padding: 40px 20px;
}

#topImage #topImageInner {
	overflow: hidden;
	display: flex;
    justify-content: center;
    align-items: center;
	width: auto;
	height: 100%;
}

video.slider-bg {
	width: auto;
	height: 100%;
	}

#topImage #topImageInner img {
	width: auto!important;
	height: 100%;
	}
	
	#slider-wrap { height: 100%;}
	.topSlider { height: 100%;}
	.topSlider li{ height: 100%;}

	
h1 {
	margin: 100px 0 -90px -30px;
	font-size: 170%;
	letter-spacing: 0.1em;
	-ms-writing-mode: tb-rl;
	writing-mode: vertical-rl;
	background-image:url(../img/common/h1_bg.svg);
	background-size:cover;
	width:30%;
	min-height: 250px;
	min-width: 250px;
	color:#FFF;
	display: flex;
	justify-content: center;
	align-items: center;
	overflow: hidden;
	position:relative;
	z-index:2;
	}
	
/*セパレートボックス*/
.miryoku-box {background-image: none; width: 100%!important;}
.separate-bnr-center h2 { font-size: 150%; margin: 0% 0 3% ;}
.separate-box { width: 100%; flex-direction: row; margin: 0 0 15%;}
.separate-box:last-child { margin: 0 0 5%;}
.separate-rightBox {
	width: 55%;
	margin-top: -100px;
}

.separate-leftBox {
	width: 65%; 
	font-size: 0; 
	line-height: 0;
}
.separate-img { 
	display: flex;
	justify-content: center;
	align-items: center;
	overflow: hidden;
	height: 460px;/*300かも*/
	}

.separate-img img{ width:auto; height: 100%;}
	
.separate-text {
	background:url(../img/common/green-dust-and-scratches80.png), linear-gradient(348deg, rgba(25,54,5,1) 0%, rgba(25,54,5,1) 38%, rgba(54,99,22,0.9) 100%);
	}

#separate_02 , #separate_04 , #separate_06 {flex-direction :row-reverse;}
#separate_01 .separate-text , #separate_03 .separate-text , #separate_05 .separate-text { margin-top: 40px; margin-bottom: 0px; margin-left: -90px;}
#separate_02 .separate-text , #separate_04 .separate-text , #separate_06 .separate-text  { margin-top: 40px; margin-bottom: 0px; margin-right: -90px;}

	
.bigText {
	position: relative;
	text-align: left;
	font-size: 350%;
	filter: drop-shadow( 0px 5px 5px rgba(999, 999, 999, 0.9));
	letter-spacing:10px;
	color: black;
	line-height: 70%;
	padding-top: 20px;
	margin-bottom: 0;
}
	
.separate-leftBox .bigText {
	text-align: left;
}
.separate-rightBox .bigText {
	text-align: right;
}
	
#separate_02 .bigText , #separate_04 .bigText {margin-left: 35px;}
	
.animationLeft { margin-left: -90px;}
.animationRight { margin-right: -90px;}
.separate-rightBox { width: 33%; background: none; display: flex; flex-direction: column; }
/*セパレートボックス*/
	
#bigBnr div { border-radius: 0 100px;}

.slide {
  width: calc(100% / 10);
}
	
#bnrSpace {
	margin: 0 auto 7%;
}

ul.berryShortBnr { display:flex; justify-content: flex-start; flex-wrap: wrap; width: 100%; height:auto; padding-bottom: 7%;} 
ul.berryShortBnr li { flex:0 0 24%; margin: 1% 0.5% 1%;}

#planBox .planTitle { height: 120px; padding: 5%;} 
#planBox ul { width: 100%;}

/* 外部リンクバナー */

.footerbnrSlide li { width: 220px;}

/* 基本のflexbox */
.flexbox { flex-direction: row; padding: 0%;}
.flexbox .flexList { padding: 3%;}
}

@media (min-width: 890px) {
	
.separate-img img{ width: 100%; height: auto;}
}

@media (min-width: 1000px) {
	
section#h1 {
	margin: 0 auto 0;
	}	
h1 {
	width:40%;
	margin: 50px 0 -20px 0px;
	}


#planBox .imgBox { height: 165px;}

/* 外部リンクバナー  */
.footerbnr-box { padding: 3rem 0; }
}

@media (min-width: 1010px) {
/*セパレートボックス*/
.separate-box {
	width: 100%;
	max-width: 1700px;
	margin: 0 auto 200px; 
}
.separate-box:last-child {
	margin: 0 auto 0; 
}
#separate_01 , #separate_03 , #separate_05 {padding-right: 0%;}
#separate_02 , #separate_04 , #separate_06 {padding-left: 0%;}
.bigText {font-size: 400%;}
.animationLeft { margin-left:-30px;}
.animationRight { margin-right:-30px;}

#separate_01 .animationRight , #separate_03 .animationRight , #separate_05 .animationRight {overflow: hidden; margin-right:-30px; margin-left:0;}
#separate_02 .animationLeft , #separate_04 .animationLeft , #separate_06 .animationLeft { margin-left:-30px; margin-right:0;}
.separate-rightBox { width: 35%;}
#separate_01 .separate-text , #separate_03 .separate-text , #separate_05 .separate-text { margin-top: 40px; margin-bottom: 0px; margin-left: -30px;}
#separate_02 .separate-text , #separate_04 .separate-text , #separate_06 .separate-text  { margin-top: 40px; margin-bottom: 0px; margin-right: -30px;}
/*セパレートボックス*/
}
@media (min-width: 1150px) {
#separate_01 , #separate_03 , #separate_05 {padding-right: 5%;}
#separate_02 , #separate_04 , #separate_06 {padding-left: 5%;}
#separate_02 .bigText , #separate_04 .bigText {margin-left: 0;}
}
@media (min-width: 1200px) {
#separate_01 , #separate_03 , #separate_05 {padding-right: 8%;}
#separate_02 , #separate_04 , #separate_06 {padding-left: 8%;}
}

@media (min-width: 1240px) {
	#topImage {padding: 40px 0;}
}
@media (min-width: 1300px) {
#separate_01 , #separate_03 , #separate_05 {padding-right: 10%;}
#separate_02 , #separate_04 , #separate_06 {padding-left: 10%;}
}
@media (min-width: 1400px) {
.videoBox {
	width: 100%;
	height: auto;
	}
video.slider-bg {
	width: 100%;
	height: auto;
	}
#separate_01 , #separate_03 , #separate_05 {padding-right: 13%;}
#separate_02 , #separate_04 , #separate_06 {padding-left: 13%;}
}
@media (min-width: 1500px) {
#separate_01 , #separate_03 , #separate_05 {padding-right: 15%;}
#separate_02 , #separate_04 , #separate_06 {padding-left: 15%;}
}
@media (min-width: 1700px) {
#separate_01 , #separate_03 , #separate_05 {padding-right: 13%;}
#separate_02 , #separate_04 , #separate_06 {padding-left: 13%;}
}
@media (min-width: 2500px) {
#separate_01 , #separate_03 , #separate_05 {padding-right: 10%;}
#separate_02 , #separate_04 , #separate_06 {padding-left: 10%;}
}
