@charset "utf-8";
@import url('https://fonts.googleapis.com/css2?family=Josefin+Sans:wght@300;400&display=swap');

/* CSS Document */
/* 共通部分
------------------------------- */
body {
  -webkit-text-size-adjust: 100%;
  /*overflow-x: hidden;*/
  overflow-x: clip;
}

article {
  width: 100%;
  margin: 0;
  padding: 0;
  border: none;
  color: #333333;
  font-size: 1.6rem;
  letter-spacing: 0.25rem;
  line-height: 1.8;
  text-align: justify;
  vertical-align: baseline;
  font-family: "Noto Sans JP", sans-serif;
  font-optical-sizing: auto;
  font-weight: <weight>;
  font-style: normal;
  font-feature-settings: "palt";
  font-smoothing: antialiased;
  -webkit-font-smoothing: antialiased;
	text-justify: inter-ideograph;
  margin: 0;
  padding: 0;
  border: 0;
  background-color: #F9F9F6;
  /*overflow: hidden;*/
}

article img {
  /*display: block;*/
  height: auto;
  max-width: 100%;
  margin-inline-start: auto;
  margin-inline-end: auto;
}

.clearfix:after {
  clear: both;
  content: "";
  display: block;
}
.clearfix {
  *zoom: 1;
} /*for IE6,IE7*/
.pc_only {
  display: block;
}
.sp_only {
  display: none;
}

.l-960{
	max-width: 960px;
	margin-inline:auto;
	padding-inline:40px;
	padding-top:200px;
	padding-bottom: 200px;
}

.l-container{
	width: 90vw;
	padding-inline:40px;
	padding-top:150px;
	padding-bottom:80px;
	margin-inline:auto;
}

.round_container{
	background-color: #fff;
	border: 1px solid #333;
	padding-block: 100px;
	border-radius: 9999px;
}

.round_inner{
	width: 70%;
	margin-inline:auto;
}

.bg_blue{
	background-color: #E4EBEF;
}

.bg_note{
	background-image: linear-gradient(0deg, transparent calc(100% - 1px), #E8E7E3 calc(100% - 1px)),linear-gradient(90deg, transparent calc(100% - 1px), #E8E7E3 calc(100% - 1px));
    background-size: 30px 30px;
    background-repeat: repeat;
    background-position: center center;
}

.widget--sticky{
  /*padding-top: calc(95px + 1rem);*/
  position: sticky;
  top: 0;
  -ms-flex-item-align: baseline;
  padding-top: 56px;
  align-self: baseline;
  z-index: 10;
}

.widget--sticky.bg_blue{
	background-color: #E4EBEF;
}

.widget--sticky.bg_beige{
	background-color: #F9F9F6;
}

.widget--sticky.bg_note{
	background-image: linear-gradient(0deg, transparent calc(100% - 1px), #E8E7E3 calc(100% - 1px)),linear-gradient(90deg, transparent calc(100% - 1px), #E8E7E3 calc(100% - 1px));
    background-size: 30px 30px;
    background-repeat: repeat;
    background-position: center center;
	background-color: #F9F9F6;
}

.widget--sticky.bg_image{
	background: linear-gradient(to bottom, rgba(110, 110, 110, 0), 35%, rgba(110, 110, 110, 0.6)) ,url("../img/featbg.webp");
	background-size: cover;
	background-position: bottom right;
	 background-repeat: no-repeat;
	background-attachment: fixed;
}

.c-title_ja{
   font-family: "fot-tsukubrdgothic-std", sans-serif;
   font-weight: 700;
   font-style: normal;
   font-size: 40px;
   text-align: center;
   letter-spacing: 0.6rem;
   line-height: 1.5;
   position: relative;
   background-color: #fff;
   border: 1px solid #333;
   border-radius: 15px;
   padding: 15px 30px;
   display: inline-block;
}

.c-title_ja.bottom{
	display: table;
	margin-left: 100px;
	margin-top: 10px;
}


.c-title{
   font-family: "brandon-grotesque", sans-serif;
   font-weight: 900;
   font-style: normal;
   font-size: 48px;
   letter-spacing: 0.8rem;
   text-align: center;
   position: relative;
   padding-bottom:20px;
   padding-top: 5px;
   color: #fff;
   -webkit-text-stroke: 1px black;
   border-top: 1px solid #333;
   border-bottom: 1px solid #333;
   background-color: #E8E7E3;
}

.c-title::before{
	content: "";
    display: inline-block;
    width: 60px;
    height: 10px;
    background-image: url('../img/dots.svg');
    background-position: center;
	background-repeat: no-repeat;
    background-size: contain;
	position: absolute;
	bottom: 15%;
	left: 50%;
	transform: translateX(-50%);
}

.tsukushi{
   font-family: "fot-tsukubrdgothic-std", sans-serif;
   font-weight: 700;
   font-style: normal;
   letter-spacing: 0.4rem;
}

@media screen and (max-width: 820px){
	#gFooter{
		margin-top: 0 !important;
	}
	
	.pc_only {
		display: none !important;
	  }
	  .sp_only {
		display: block;
	  }
	
	.l-container{
		width: 100%;
		padding-inline:40px;
		margin-inline:auto;
	}
}

@media screen and (max-width: 767px) {
	
  .widget--sticky{
	  /*padding-top: calc(95px + 1rem);*/
	  position: sticky;
	  top: 0;
	  -ms-flex-item-align: baseline;
	  padding-top: 55px;
	  align-self: baseline;
	  z-index: 10;
  }
	
	.l-container{
		width: 100%;
		padding-inline:20px;
		padding-top:60px;
		padding-bottom:20px;
		margin-inline:auto;
	}
	
  .round_inner{
	width: 85%;
	margin-inline:auto;
  }

	 
  .c-title{
    font-size: 34px;
    text-align: center;
    line-height: 1.5;
    position: relative;
	letter-spacing: 0.6rem;
  }
	
  .l-960{
	max-width: 960px;
	margin-inline:auto;
	padding-inline:30px;
	padding-top:250px;
	padding-bottom: 80px;
  }
	
	.c-title_ja{
	   font-family: "fot-tsukubrdgothic-std", sans-serif;
	   font-weight: 700;
	   font-style: normal;
	   font-size: 24px;
	   text-align: left;
	   letter-spacing: 0.6rem;
	   line-height: 1.5;
	   position: relative;
	   background-color: #fff;
	   border: 1px solid #333;
	   border-radius: 15px;
	   padding: 15px 30px;
	   display: inline-block;
	}
	
	.c-title_ja.bottom{
		display: table;
		margin-left: 0px;
		margin-top: 10px;
	}
	
	.c-title::before{
		content: "";
		display: inline-block;
		width: 50px;
		height: 10px;
		background-image: url('../img/dots.svg');
		background-position: center;
		background-repeat: no-repeat;
		background-size: contain;
		position: absolute;
		bottom: 15%;
		left: 50%;
		transform: translateX(-50%);
	}

	
}
/* 順番 
1.位置情報系＝position, top, right, z-index, display, float等
2.サイズ＝width, height, padding, margin
3.文字系＝font, line-height, letter-spacing, color- text-align等
4.背景＝background, border等
5.その他＝animation, transition等
*/



/* responsive img
------------------------------- */
/*中央揃えにするためのcss*/
picture img {
    display: block;
    /*max-width: 960px;*/
    width: 100%;
    margin: 0 auto;
}
/*スマホ表示*/
@media screen and (max-width: 768px) {
   picture img {
    width: 96%;
  }
}

/* article
------------------------------- */

article .txt {
    font-size: 1.6rem;
  padding-block-end: 10px;
}
article .txt_s {
  font-size: 1.3rem;
}
/*マーカーアニメーション*/
.marker-animation.active {
  background-position: -100% .5em;
}
.marker-animation {
  background-image: -webkit-linear-gradient(left, transparent 50%, rgba(248, 226, 175, 0.7) 50%);
  background-image: -moz-linear-gradient(left, transparent 50%, rgba(248, 226, 175, 0.7) 50%);
  background-image: -ms-linear-gradient(left, transparent 50%, rgba(248, 226, 175, 0.7) 50%);
  background-image: -o-linear-gradient(left, transparent 50%, rgba(248, 226, 175, 0.7) 50%);
  background-image: linear-gradient(left, transparent 50%, rgba(248, 226, 175, 0.7) 50%);
  background-repeat: repeat-x;
  background-size: 200% .8em;
  background-position: 0 .5em;
  transition: all 3s ease;
  font-weight: bold;
}
/*注意書き*/
.nossale {
  color: #c9171e;
  font-weight: bold;
}
.section-block {
  width: 100%;
  clear: both;
}
.text-block {
  width: 40%;
  float: left;
  margin-left: 3%;
}
h1.title img {
  /* じわっと画像が表示される */
  animation: fadeIn 3s ease 0s 1 normal;
  -webkit-animation: fadeIn 3s ease 0s 1 normal;
}
/* じわっと画像が表示される ---------　一度追加していたら不要*/
@keyframes fadeIn { /*上のbody内で呼び出しているアニメーションと名前をそろえる*/
  0% {
    opacity: 0
  } /* 始め */
  100% {
    opacity: 1
  } /* 終わり */
}
/*古いブラウザ用　---------　一度追加していたら不要*/
@-webkit-keyframes fadeIn {
  0% {
    opacity: 0
  }
  100% {
    opacity: 1
  }
}


.js-animation {
  opacity: 0;
  visibility: hidden;
  transform: translateY(40px);
  transition: all 1.5s;
}
.js-animation.is-show {
  opacity: 1;
  visibility: visible;
  transform: translateY(0px);
}

/* オープニングアニメーション
------------------------------- */

.start {
	background: #F9F9F6;
	position: fixed;
	top: 0;
	left: 0;
	height: 100%;
	width: 100%;
	z-index: 9000;
}

.start p {
	position: fixed;
	left: 50%;
	top: 50%;
	transform: translate(-50%, -50%);
	display: none;
	z-index: 9999;
	width: 280px;
}

.start p img{
	width: 100%;
}

@media screen and (max-width: 768px) {
	.start p{
		width: 200px;
	}
	
}



/* top
------------------------------- */

.top_wrap{
	width: 100%;
	height: 85svh;
}

.top_logoWrap{
	position: relative;
}

.top_logo{
	position: absolute;
	bottom: 15%;
	left: 12%;
	z-index: 10;
	width: 30vw;
	max-width: 360px;
}

.top_imgWrap{
	width: 55vw;
	height: 100%;
	margin-left: auto;
}

.top_image{
	width: 100%;
	height: 100%;
	object-fit: contain;
}



@media screen and (max-width: 768px) {
	.top_wrap{
		width: 100%;
		height: 85svh;
	}

	.top_logoWrap{
		position: relative;
	}

	.top_logo{
		position: absolute;
		bottom: auto;
		left: auto;
		top:10%;
		right:10%;
		z-index: 10;
		width: 30vw;
		max-width: 360px;
	}

	.top_imgWrap{
		width: 100vw;
	}
	
}



/* intro
------------------------------- */

.intro{
	position: relative;
}

.intro_wrap{
	position: relative;
}

.intro .l-960{
	padding-top:250px;
	padding-bottom: 600px;
}

.intro_textWrap{
	margin-top: 100px;
}

.intro_text{
	font-size: 20px;
	line-height: 2.5;
	margin-bottom: 60px;
	width: 85%;
	
}

.intro_text.bottom{
	margin-left: 100px;
}

.intro_imgWrap{
	position: absolute;
}

.intro_imgWrap.img01{
	top: 15%;
	left: 0;
	width: 18vw;
}

.intro_imgWrap.img02{
	top: 40%;
	right: 0;
	width: 22vw;
}

.intro_imgWrap.img03{
	left: 25%;
	bottom:6%;
	width: 20vw;
}

.intro_imgWrap.img01 .intro_img{
	aspect-ratio: 3 / 4;
}

.intro_imgWrap.img02 .intro_img{
	aspect-ratio: 4 / 3;
}

.intro_imgWrap.img03 .intro_img{
	aspect-ratio: 1 / 1;
}

.intro_img{
	width: 100%;
	border-radius: 15px;
	object-fit: cover;
}



@media screen and (max-width: 820px) {
	.intro .l-960{
		padding-top:150px;
		padding-bottom: 700px;
	}
	
	.intro_imgWrap.img01{
		top: auto;
		left: 0;
		bottom:16%;
		width: 30vw;
	}

	.intro_imgWrap.img02{
		top: auto;
		bottom:13%;
		right: 0;
		width: 40vw;
	}

	.intro_imgWrap.img03{
		left: 25%;
		bottom:2%;
		width: 30vw;
	}
}

@media screen and (max-width: 767px){
	.intro .l-960{
		padding-top:80px;
		padding-bottom: 680px;
	}

	.intro_textWrap{
		margin-top: 60px;
	}

	.intro_text{
		font-size: 16px;
		line-height: 2.5;
		margin-bottom: 40px;
		width: 100%;

	}

	.intro_text.bottom{
		margin-left: 0px;
	}

	.intro_imgWrap{
		position: absolute;
	}

	.intro_imgWrap.img01{
		top: auto;
		left: 0;
		bottom:20%;
		width: 50vw;
	}

	.intro_imgWrap.img02{
		top: auto;
		bottom:11%;
		right: 0;
		width: 50vw;
	}

	.intro_imgWrap.img03{
		left: 15%;
		bottom:0%;
		width: 46vw;
	}

	.intro_imgWrap.img02 .intro_img{
		aspect-ratio: 4 / 3;
	}

	.intro_imgWrap.img03 .intro_img{
		aspect-ratio: 1 / 1;
	}

	.intro_img{
		width: 100%;
		border-radius: 10px;
		object-fit: cover;
	}


}

/* openHouse
------------------------------- */

.openHouse_container{
	background-image: url('../img/openHouse.webp');
	background-size: cover;
	background-repeat: no-repeat;
	background-position-y:70%; 
	margin-inline:20px;
	margin-top: 60px;
	border-radius: 20px;
	padding-block:150px;
}

.openHouse_list{
	display: flex;
	justify-content: center;
	gap:60px;
	width: 90%;
	margin-inline:auto;
	align-items: center;
}

/*.openHouse_detail{
	background-color: #E8E7E3;
	padding: 20px;
	border-radius: 20px;
	border: 1px solid #333;
}*/

.openHouse_detailWrap{
	background-color: #fff;
	padding: 60px;
	border-radius: 15px;
	/*border: 1px solid #333;*/
	background:rgba(255,255,255,0.5);
}

.openHouse_detailTitle{
	font-size: 28px;
	text-align: center;
	margin-bottom: 20px;
}

.openHouse_detailDate{
	text-align: center;
	font-size: 28px;
	line-height: 1.8;
}

.openHouse_detailReservation{
	text-align: center;
	font-size: 28px;
	margin-bottom: 40px;
}

.openHouse_detailText{
	padding-left:1em;
	text-indent:-1em;
}

@media screen and (max-width: 820px){
	.openHouse_list{
		display: flex;
		flex-direction: column;
		justify-content: center;
		gap:40px;
		width: 90%;
		margin-inline:auto;
		align-items: center;
	}
	
}

@media screen and (max-width: 768px){
	
.openHouse_container{
	background-image: url('../img/openHouse.webp');
	background-size: cover;
	background-repeat: no-repeat;
	background-position-y:70%; 
	margin-inline:20px;
	margin-top: 20px;
	border-radius: 20px;
	padding-block:40px;
}

.openHouse_list{
	display: flex;
	flex-direction: column;
	justify-content: center;
	gap:40px;
	width: 90%;
	margin-inline:auto;
	align-items: center;
}

/*.openHouse_detail{
	background-color: #E8E7E3;
	padding: 20px;
	border-radius: 20px;
	border: 1px solid #333;
}*/

.openHouse_detailWrap{
	background-color: #fff;
	padding: 40px;
	border-radius: 15px;
	/*border: 1px solid #333;*/
	background:rgba(255,255,255,0.5);
}

.openHouse_detailTitle{
	font-size: 24px;
	text-align: center;
	margin-bottom: 20px;
	line-height: 1.6;
}

.openHouse_detailDate{
	text-align: center;
	font-size: 22px;
	line-height: 1.6;
}

.openHouse_detailReservation{
	text-align: center;
	font-size: 18px;
	margin-bottom: 20px;
}
	
}

/* plan
------------------------------- */

.plan{
	position: relative;
}

.plan_containar{
	display: flex;
	gap:40px;
	align-items: center;
}

.plan_imageBox{
	width: 50%;
}

.plan_pointBox{
	width: 50%;
}

.slick-track {
  display: flex;
}
.slick-slide {
  height: auto !important;
}

.plan_pointItem{
	background-color: #E8E7E3;
	padding: 40px;
	border: 1px solid #333;
	border-radius: 20px;
	margin-inline:5px;
}

.plan_pointImageBox{
	margin-bottom: 20px;
}

.plan_pointBox{
	position: relative;
}

.plan_pointImage{
	border: 1px solid #333;
	border-radius: 15px;
}

.plan_pointTitle{
    font-size: 24px;
	margin-bottom: 10px;
}

.arrow_box {
    display: flex;
	gap:25vw;
    align-items: center;
    justify-content: space-between;
    margin: 20px 0 0;
	position: absolute;
	bottom:20%;
	left: 50%;
	transform: translateX(-50%);
}

.prev-arrow,
.next-arrow {
    display: block;
    width: 60px;
    height: 60px;
    border-radius: 50%;
    transition: all .3s ease;
    cursor: pointer;
    position:relative;
	border: 1px solid #333;
	text-align: center;
}

.prev-arrow:hover{
	background-color: #E4EBEF;
}

.next-arrow:hover{
	background-color: #E4EBEF;
}

.prev-arrow {
    transform: rotate(180deg);
    margin-right: 20px;
	background-color: #E99D6F;
}

.next-arrow{
	background-color: #6B89B8;
}

.prev-arrow::before,
.next-arrow::before{
    position:absolute;
    content: "";
    width:30px;
    height:15px;
	background-image: url('../img/yajirushi.svg');
	background-repeat: no-repeat;
	background-size: contain;
    top:50%;
	left: 50%;
	transform: translate(-50%,-50%);
    margin:auto;
}

@media screen and (max-width: 820px){
	.plan .l-container{
		width: 100%;
	}
	
	.plan_containar{
		display: flex;
		flex-direction: column;
		gap:40px;
		align-items: center;
	}
	
	.plan_imageBox{
		width: 100%;
	}

	.plan_pointBox{
		width: 100%;
	}
	
	.arrow_box {
		display: flex;
		gap:50vw;
		align-items: center;
		justify-content: space-between;
		margin: 20px 0 0;
		position: absolute;
		bottom:20%;
		left: 50%;
		transform: translateX(-50%);
	}
}

@media screen and (max-width: 767px){
	.plan_containar{
		display: flex;
		flex-direction: column;
		gap:20px;
		align-items: center;
	}

	.plan_imageBox{
		width: 100%;
	}

	.plan_pointBox{
		width: 100%;
	}

	.slick-track {
	  display: flex;
	}
	.slick-slide {
	  height: auto !important;
	}

	.plan_pointItem{
		background-color: #E8E7E3;
		padding: 30px;
		border: 1px solid #333;
		border-radius: 15px;
		margin-inline:5px;
	}

	.plan_pointImageBox{
		margin-bottom: 20px;
	}

	.plan_pointBox{
		position: relative;
	}

	.plan_pointImage{
		border: 1px solid #333;
		border-radius: 10px;
	}

	.plan_pointTitle{
		font-size: 20px;
		margin-bottom: 10px;
		padding-left:1em;
		text-indent:-1em;
	}

	.arrow_box {
		display: flex;
		gap:60vw;
		align-items: center;
		justify-content: space-between;
		margin: 20px 0 0;
		position: absolute;
		bottom:20%;
		left: 50%;
		transform: translateX(-50%);
	}

	.prev-arrow,
	.next-arrow {
		display: block;
		width: 60px;
		height: 60px;
		border-radius: 50%;
		transition: all .3s ease;
		cursor: pointer;
		position:relative;
		border: 1px solid #333;
		text-align: center;
	}

	.prev-arrow:hover{
		background-color: #E4EBEF;
	}

	.next-arrow:hover{
		background-color: #E4EBEF;
	}

	.prev-arrow {
		transform: rotate(180deg);
		margin-right: 20px;
		background-color: #E99D6F;
	}

	.next-arrow{
		background-color: #6B89B8;
	}

	.prev-arrow::before,
	.next-arrow::before{
		position:absolute;
		content: "";
		width:30px;
		height:15px;
		background-image: url('../img/yajirushi.svg');
		background-repeat: no-repeat;
		background-size: contain;
		top:50%;
		left: 50%;
		transform: translate(-50%,-50%);
		margin:auto;
	}
	
}

/* delusion
------------------------------- */

.delusion{
	position: relative;
}

.delusion_contentsWrap{
	padding-top:200px;
	padding-bottom:150px;
}

.delusion_contents{
	background-color: #fff;
	width: 80vw;
	padding-block: 100px;
	/*position: absolute;
	right: 0;
	top: 20%;*/
}

.delusion_contents.no01{
	padding-right: 100px;
	padding-left: 250px;
	border-top: 1px solid #333;
	border-left: 1px solid #333;
	border-bottom: 1px solid #333;
	margin-left: auto;
	border-radius: 9999px 0 0 9999px;
	margin-bottom: 150px;
	position: relative;
}

.delusion_contents.no02{
	padding-right: 250px;
	padding-left: 100px;
	border-top: 1px solid #333;
	border-right: 1px solid #333;
	border-bottom: 1px solid #333;
	margin-right: auto;
	border-radius: 0 9999px 9999px 0;
	position: relative;
}

.delusion_contentsInner{
	display: flex;
	gap:60px;
	/*width: 70%;*/
	margin-inline:auto;
	align-items: center;
}

.delusion_contents.no02 .delusion_contentsInner{
	display: flex;
	flex-direction: row-reverse;
}

.delusion_plan{
	width: 50%;
	max-width: 500px;
}

.delusion_textBox{
	width: 50%;
}

.delusion_number{
	font-family: "Gravitas One", serif;
    font-weight: 400;
    font-style: normal;
	font-size: 100px;
	-webkit-text-stroke-width: 1px;
    -webkit-text-stroke-color: #333;
	line-height: 1;
	margin-bottom: 20px;
}

.delusion_number .large{
	font-size: 160px;
}

.delusion_number.no01{
	color: #6B89B8;
}

.delusion_number.no02{
	color: #E99D6F;
}

.delusion .c-title_ja.en{
	font-family: "brandon-grotesque", sans-serif;
    font-weight: 900;
    font-style: normal;
	font-size: 46px;
}

.delusion .c-title_ja{
	background-color: #F9F9F6;
	display:table;
	margin-bottom: 15px;
	font-size: 32px;
}

.delusion_text{
	margin-top: 30px;
}

.delusion_illust.no01{
	position: absolute;
	top: -10%;
	left: -10%;
}

.delusion_illust.no02{
	position: absolute;
	bottom: -15%;
	left: 40%;
	z-index: 2;
}

@media screen and (max-width: 820px){
	
	.delusion_contentsWrap{
		padding-top:150px;
		padding-bottom:100px;
		width: 100%;
		padding-inline:40px;
	}
	
	.delusion_contents{
		background-color: #fff;
		width: 100%;
		padding-block: 200px;
		/*position: absolute;
		right: 0;
		top: 20%;*/
	}
	
	.delusion_contents.no01{
		padding-right: 0px;
		padding-left: 0px;
		border:1px solid #333;
		margin-left: 0;
		border-radius: 9999px;
		margin-bottom: 40px;
		position: relative;
		width: 100%;
	}

	.delusion_contents.no02{
		padding-right: 0px;
		padding-left: 0px;
		border: 1px solid #333;
		margin-right: 0;
		border-radius:9999px;
		position: relative;
		width: 100%;
	}
	
	.delusion_contentsInner{
		display: flex;
		flex-direction: column-reverse;
		gap:40px;
		width: 85%;
		margin-inline:auto;
		align-items: center;
	}
	
	.delusion_contents.no02 .delusion_contentsInner{
		display: flex;
		flex-direction: column-reverse;
	}
	
	.delusion_plan{
		width: 100%;
		max-width: 500px;
	}

	.delusion_textBox{
		width: 100%;
	}
	
	.delusion_illust.no02{
		position: absolute;
		bottom: -3%;
		left: 60%;
		z-index: 2;
	}
	
}

@media screen and (max-width: 767px){
	.delusion_contentsWrap{
		padding-top:80px;
		padding-bottom:20px;
		width: 100%;
		padding-inline:20px;
	}

	.delusion_contents{
		background-color: #fff;
		width: 100%;
		padding-block: 100px;
		/*position: absolute;
		right: 0;
		top: 20%;*/
	}

	.delusion_contents.no01{
		padding-right: 0px;
		padding-left: 0px;
		border:1px solid #333;
		margin-left: 0;
		border-radius: 9999px;
		margin-bottom: 40px;
		position: relative;
		width: 100%;
			
	}

	.delusion_contents.no02{
		padding-right: 0px;
		padding-left: 0px;
		border: 1px solid #333;
		margin-right: 0;
		border-radius:9999px;
		position: relative;
		width: 100%;
	}

	.delusion_contentsInner{
		display: flex;
		flex-direction: column-reverse;
		gap:40px;
		width: 85%;
		margin-inline:auto;
		align-items: center;
	}

	.delusion_contents.no02 .delusion_contentsInner{
		display: flex;
		flex-direction: column-reverse;
	}

	.delusion_plan{
		width: 100%;
		max-width: 500px;
	}

	.delusion_textBox{
		width: 100%;
	}

	.delusion_number{
		font-family: "Gravitas One", serif;
		font-weight: 400;
		font-style: normal;
		font-size: 60px;
		-webkit-text-stroke-width: 1px;
		-webkit-text-stroke-color: #333;
		line-height: 1;
		margin-bottom: 10px;
	}

	.delusion_number .large{
		font-size: 100px;
	}

	.delusion_number.no01{
		color: #6B89B8;
	}

	.delusion_number.no02{
		color: #E99D6F;
	}

	.delusion .c-title_ja.en{
		font-family: "brandon-grotesque", sans-serif;
		font-weight: 900;
		font-style: normal;
		font-size: 32px;
	}

	.delusion .c-title_ja{
		background-color: #F9F9F6;
		display:table;
		margin-bottom: 15px;
		font-size: 24px;
	}

	.delusion_text{
		margin-top: 30px;
	}

	.delusion_illust.no01{
		position: absolute;
		top: -5%;
		left: -10%;
		width: 50%;
	}

	.delusion_illust.no02{
		position: absolute;
		bottom: -3%;
		left: 50%;
		z-index: 2;
		width: 50%;
	}

	
}

/* value
------------------------------- */

.value .l-container{
	max-width: 1360px;
	width: 80%;
}


.cover-image{
	width:100%;
	background: linear-gradient(to bottom, rgba(110, 110, 110, 0), 35%, rgba(110, 110, 110, 0.6)) ,url("../img/featbg.webp");
	background-size: cover;
	background-position: bottom right;
	 background-repeat: no-repeat;
	background-attachment: fixed;
}

.value_contentsWrap{
	padding-block:200px;
}

.value_titleWrap{
	text-align: center;
	margin-bottom: 150px;
}

.value .c-title_ja.bottom{
	margin-left: 400px;
	display: inline-block;
}

.value_contents{
	background-color: #E8E7E3;
	padding: 20px;
	border: 1px solid #333;
	border-radius: 30px;
	position: relative;
}

.value_contents.yield{
	margin-bottom: 100px;
}

.value_contentsInner{
	background-color: #fff;
	padding: 80px;
	border: 1px solid #333;
	border-radius: 30px;
}

.value_contentsFlex .value_contentsInner{
	padding-inline: 60px;
	padding-bottom: 60px;
	padding-top: 80px;
	height: 100%;
}

.value_yieldListItem{
	padding-bottom: 40px;
	border-bottom: 1px solid #333;
	margin-bottom: 40px;
}

.value_yieldListTitle{
	font-size: 28px;
	display: flex;
	align-items: center;
}

.value_yieldListTitle::before{
	content: "";
	width: 30px;
	height: 30px;
	background-color: #E99D6F;
	margin-right: 10px;
	border-radius: 50%;
	display: inline-block;
}

.value_yieldListText span{
   font-family: "brandon-grotesque", sans-serif;
   font-weight: 900;
   font-style: normal;
   font-size: 36px;
   color: #E99D6F;
}

.value_yieldListText{
	font-size: 20px;
}

.value_contentsTitleWrap{
	position: absolute;
	top: -5%;
	left: 50%;
	transform:translateX(-50%);
}

.value_contentsTitle{
	font-size: 28px;
	background-color: #E4EBEF;
	padding: 20px 40px;
	border-radius: 9999px;
	border: 1px solid #333;
	white-space: nowrap;
}
.value_contentsTitle .number{
	font-size: 32px;
	background-color: #5B8ABB;
	padding: 7px 20px;
	border-radius: 50%;
	line-height: 1;
	border: 1px solid #333;
	margin-right: 10px;
	letter-spacing: 0;
}

.value_contentsFlex{
	display: flex;
	gap:40px;
}

.value_contents.road{
	/*width: 50%;*/
	width: 100%;
}

.value_contents.tax{
	width: 50%;
}

.value_contentsSubTitle{
	text-align: center;
	font-size: 20px;
}

.road_img{
	margin-bottom: 20px;
	margin-inline:auto;
	width: 80%;
}

.road_text{
	width: 70%;
	margin-inline:auto;
}

.tax_text{
	font-size: 20px;
}

.tax_percent{
   font-family: "brandon-grotesque", sans-serif;
   font-weight: 900;
   font-style: normal;
   font-size: 160px;
	color: #E99D6F;
	text-align: center;
	line-height: 1;
	margin-block:80px;
}

.percent{
	font-size: 40px;
}

.tax_text .link{
	color: #5B8ABB;
	background:linear-gradient(transparent 60%, #ff6 60%);
	font-size: 24px;
}

.tax_text .link:hover{
	color: #E99D6F;
}

.yield_attentionText{
	padding-left:1em;
    text-indent:-1em;
}

@media screen and (max-width: 820px){
	.value .l-container{
		width: 100%;
		padding-inline:40px;
	}
	
	.value .c-title_ja.bottom{
		margin-left: 100px;
		display: inline-block;
	}
	
	.value_contentsWrap{
		padding-top:150px;
		padding-bottom: 100px;
	}
	
	.value_contentsFlex{
		display: flex;
		flex-direction: column;
		gap:100px;
	}

	.value_contents.road{
		width: 100%;
	}

	.value_contents.tax{
		width: 100%;
	}
	
	.value_contentsTitleWrap{
		position: absolute;
		top: -10%;
		left: 50%;
		transform:translateX(-50%);
	}
	
	.value_contentsTitle{
		text-align: center;
	}
	
	.road_img{
		margin-bottom: 20px;
		margin-inline:auto;
		width: 100%;
	}
	
	.road_text{
		width: 100%;
		margin-inline:auto;
	}


}

@media screen and (max-width: 767px){
	
	.value .l-container{
		width: 100%;
		padding-inline:20px;
	}

	.cover-image{
		width:100%;
		background: linear-gradient(to bottom, rgba(110, 110, 110, 0), 35%, rgba(110, 110, 110, 0.6)) ,url("../img/featbg.webp");
		background-size: cover;
		background-position: bottom right;
		 background-repeat: no-repeat;
		background-attachment: fixed;
	}

	.value_contentsWrap{
		padding-top:80px;
		padding-bottom: 40px;
	}

	.value_titleWrap{
		text-align: center;
		margin-bottom: 100px;
	}

	.value .c-title_ja.bottom{
		margin-left: 0px;
		display: inline-block;
	}

	.value_contents{
		background-color: #E8E7E3;
		padding: 20px;
		border: 1px solid #333;
		border-radius: 25px;
		position: relative;
	}

	.value_contents.yield{
		margin-bottom: 60px;
	}

	.value_contentsInner{
		background-color: #fff;
		padding: 60px;
		padding-inline:30px;
		border: 1px solid #333;
		border-radius: 20px;
	}

	.value_contentsFlex .value_contentsInner{
		padding-inline: 30px;
		padding-bottom: 60px;
		padding-top: 80px;
		height: 100%;
	}

	.value_yieldListItem{
		padding-bottom: 30px;
		border-bottom: 1px solid #333;
		margin-bottom: 30px;
	}

	.value_yieldListTitle{
		font-size: 20px;
		display: flex;
		align-items: center;
		margin-bottom: 10px;
	}

	.value_yieldListTitle::before{
		content: "";
		width: 30px;
		height: 30px;
		background-color: #E99D6F;
		margin-right: 10px;
		border-radius: 50%;
		display: inline-block;
	}

	.value_yieldListText span{
	   font-family: "brandon-grotesque", sans-serif;
	   font-weight: 900;
	   font-style: normal;
	   font-size: 36px;
	   color: #E99D6F;
	}

	.value_yieldListText{
		font-size: 16px;
	}

	.value_contentsTitleWrap{
		position: absolute;
		top: -6%;
		left: 50%;
		transform:translateX(-50%);
	}

	.value_contentsTitle{
		font-size: 20px;
		background-color: #E4EBEF;
		padding: 20px 40px;
		border-radius: 9999px;
		border: 1px solid #333;
		white-space: nowrap;
		text-align: center;
	}
	.value_contentsTitle .number{
		font-size: 24px;
		background-color: #5B8ABB;
		padding: 4px 14px;
		border-radius: 50%;
		line-height: 1;
		border: 1px solid #333;
		margin-right: 10px;
		letter-spacing: 0;
	}

	.value_contentsFlex{
		display: flex;
		flex-direction: column;
		gap:60px;
	}

	.value_contents.road{
		width: 100%;
	}

	.value_contents.tax{
		width: 100%;
	}

	.value_contentsSubTitle{
		text-align: center;
		font-size: 16px;
	}

	.road_img{
		margin-bottom: 20px;
	}

	.tax_text{
		font-size: 16px;
	}

	.tax_percent{
	   font-family: "brandon-grotesque", sans-serif;
	   font-weight: 900;
	   font-style: normal;
	   font-size: 100px;
		color: #E99D6F;
		text-align: center;
		line-height: 1;
		margin-block:20px;
	}

	.percent{
		font-size: 40px;
	}

	.tax_text .link{
		color: #5B8ABB;
		background:linear-gradient(transparent 60%, #ff6 60%);
		font-size: 24px;
	}

	.tax_text .link:hover{
		color: #E99D6F;
	}
}

/* area
------------------------------- */

.area_wrap{
	position: relative;
}

.area_wrap::after{
	position: absolute;
	content: "";
	background-image: url('../img/area/area.webp');
	background-size: cover;
	background-repeat: no-repeat;
	background-position-y:center; 
    width: 100%;
    height: 20%;
    top: 2%;
	z-index: 1;
}

.area .l-container{
	width: 80%;
	max-width: 1360px;
	padding-top: 300px;
	position: relative;
	z-index: 2;
}

.area_contents{
	background-color: #F9F9F6;
	border: 1px solid #333;
	border-radius: 30px;
	padding: 120px;
}

.area_text{
	width: 80%;
	margin-inline:auto;
	margin-bottom: 60px;
	margin-top: 60px;
}

.area_concept{
	margin-bottom: 100px;
}

.access_text{
	width: 80%;
	margin-inline:auto;
	margin-bottom: 60px;
}

.access_map{
	background-color: #fff;
	border-radius: 30px;
	padding: 80px;
	border:1px solid #333;
}

.access_title{
   font-family: "brandon-grotesque", sans-serif;
   font-weight: 900;
   font-style: normal;
   font-size: 48px;
   letter-spacing: 0.8rem;
   text-align: center;
   position: relative;
   padding-bottom:20px;
   margin-bottom: 40px;
   color: #fff;
   -webkit-text-stroke: 1px black;
}

.access_title::before{
	content: "";
    display: inline-block;
    width: 60px;
    height: 10px;
    background-image: url('../img/dots.svg');
    background-position: center;
	background-repeat: no-repeat;
    background-size: contain;
	position: absolute;
	bottom: 15%;
	left: 50%;
	transform: translateX(-50%);
}

@media screen and (max-width: 820px){
	.area .l-container{
		max-width: 1400px;
		width: 100%;
		padding-top: 100px;
		position: relative;
		z-index: 2;
	}
	
	.area_contents{
		background-color: #F9F9F6;
		border: 1px solid #333;
		border-radius: 30px;
		padding-top: 100px;
		padding-inline:40px;
	}
	
	.access_map{
		background-color: #fff;
		border-radius: 30px;
		padding: 40px;
		border:1px solid #333;
	}

	
}

@media screen and (max-width: 767px){
	.area_wrap::after{
		position: absolute;
		content: "";
		background-image: url('../img/area/area.webp');
		background-size: cover;
		background-repeat: no-repeat;
		background-position-y:center; 
		width: 100%;
		height: 20%;
		top: 2%;
		z-index: 1;
	}

	.area .l-container{
		max-width: 1400px;
		padding-top: 150px;
		position: relative;
		z-index: 2;
	}

	.area_contents{
		background-color: #F9F9F6;
		border: 1px solid #333;
		border-radius: 20px;
		padding-inline: 30px;
		padding-block:80px;
	}

	.area_text{
		width: 100%;
		margin-inline:auto;
		margin-bottom: 20px;
		margin-top: 40px;
	}

	.area_concept{
		margin-bottom: 40px;
	}

	.access_text{
		width: 100%;
		margin-inline:auto;
		margin-bottom: 20px;
	}

	.access_map{
		background-color: #fff;
		border-radius: 15px;
		border:1px solid #333;
		padding-inline:5px;
		padding-block:20px;
	}

	.access_title{
	   font-family: "brandon-grotesque", sans-serif;
	   font-weight: 900;
	   font-style: normal;
	   font-size: 34px;
	   letter-spacing: 0.6rem;
	   text-align: center;
	   position: relative;
	   padding-bottom:20px;
	   margin-bottom: 20px;
	   color: #fff;
	   -webkit-text-stroke: 1px black;
	}

	.access_title::before{
		content: "";
		display: inline-block;
		width: 50px;
		height: 10px;
		background-image: url('../img/dots.svg');
		background-position: center;
		background-repeat: no-repeat;
		background-size: contain;
		position: absolute;
		bottom: 15%;
		left: 50%;
		transform: translateX(-50%);
	}

}



/* photo
------------------------------- */

.photo .l-container{
	width: 80%;
	max-width: 1360px;
}

.photo_list{
	display: grid;
    grid-template-columns: repeat(4, 1fr);
	gap:20px;
}

.photo_img{
	object-fit: cover;
	aspect-ratio: 1 / 1;
	border-radius: 10px;
	border: 1px solid #333;
}

.photo_listItem{
	padding: 10px;
	padding-bottom:5px;
	border: 1px solid #333;
	border-radius: 15px;
	background-color: #fff;
}

.photo_text{
	text-align: center;
	margin-bottom: 40px;
	text-indent: -1em;
    padding-left: 1em;
	line-height: 1.6;
}

@media screen and (max-width: 820px){
	.photo .l-container{
		width: 100%;
		max-width: 1360px;
	}

	.photo_list{
		display: grid;
		grid-template-columns: repeat(2, 1fr);
		gap:20px;
	}

}



/*スマホ表示*/
@media screen and (max-width: 767px) {
	.photo .l-container{
		width: 100%;
		padding-inline:30px;
	}

	.photo_list{
		display: grid;
		grid-template-columns: repeat(2, 1fr);
		gap:10px;
	}

	.photo_img{
		object-fit: cover;
		aspect-ratio: 1 / 1;
		border-radius: 10px;
		border: 1px solid #333;
	}

	.photo_listItem{
		padding: 8px;
		padding-bottom:0px;
		border: 1px solid #333;
		border-radius: 15px;
		background-color: #fff;
	}

  
}

/* virtualTour
------------------------------- */

.virtualTour_text{
	width: 50%;
	margin-inline:auto;
	text-align: center;
	margin-bottom: 20px;
}

.vrbox {
	width: 100%;
	margin: 0 auto;
}
.vrbox iframe {
  height: 600px;
}

/*スマホ表示*/
@media screen and (max-width: 768px) {
	
	.virtualTour .l-container{
		width: 100%;
	}
	
  .virtualTour_text{
	width: 100%;
	margin-inline:auto;
	text-align: center;
	margin-bottom: 20px;
  }
	
  .vrbox {
    width: 95%;
  }
  .vrbox iframe {
    height: 400px;
  }
}


/* detail
------------------------------- */

.detail .l-container{
	width: 80%;
	max-width: 1360px;
	padding-bottom:100px;
}

.detail_contentsWrap{
	background-color: #fff;
	border: 1px solid #333;
	border-radius: 30px;
	padding:120px;
}

table {
  box-sizing: border-box;
  border-collapse: collapse;
  margin: 0 auto;
  width: 96%;
  max-width: 1000px;
  margin-block-start: 30px;
  font-size: 1.55rem;
  letter-spacing: 0.075em;
  margin-bottom: 60px;
}

table th, table td {
  border-block-end: 1px solid #959382;
  padding-inline-start: 8px;
  padding-block-start: 8px;
  margin-block-start: 8px;
  vertical-align: middle;
  font-style: normal;
  height: 3em;
  text-align: left;
}

table th {
  width: 25%;
  font-weight: 600;
}

a.producer{
	color: #5B8ABB;
	border-bottom: 1px solid #5B8ABB;
	transition: all 0.2s ease-in-out;
}

a.producer:hover{
	color: #E99D6F;
	border-bottom: 1px solid #E99D6F;
}


#inquiry{
	margin-inline:auto;
	max-width: 1000px;
}

.button{
	position: relative;
    text-decoration: none;
    display: inline-block;
    text-align: center;
    width: 100%;
	margin-bottom: 100px;
}

.button::before{
	content: "";
    position: absolute;
    top: 8px;
    left: 4px;
    width: 100%;
    height: 100%;
    -moz-border-radius: 100vh;
    -webkit-border-radius: 100vh;
    border-radius: 100vh;
    background-color: #6B89B8; /* 後ろの背景色 */
	/*border:1px solid #333;*/
}

.button_text{
	position: relative;
    z-index: 2;
    display: flex;
	align-items: center;
    justify-content: flex-end;
	padding-inline:40px;
    font-weight: bold; /* 文字の太さ */
    border-radius: 100vh;
    border: solid 1px #333; /* 線の色 */
    color: #333; /* 文字色 */
	font-size: 24px;
	padding-block:20px;
    background-color: #E4EBEF; /* 背景色 */
    -moz-transition: all 0.2s ease-in-out;
    -o-transition: all 0.2s ease-in-out;
    -webkit-transition: all 0.2s ease-in-out;
    transition: all 0.2s ease-in-out;
}

/* マウスオーバーした際のデザイン */
.button:hover .button_text {
  transform: translate(4px, 8px);
  transition: all 0.3s ease-in-out;
}

.yajirushi{
    display: block;
    width: 50px;
    height: 50px;
    border-radius: 50%;
    transition: all .3s ease;
    cursor: pointer;
    position:relative;
	border: 1px solid #333;
	text-align: center;
	background-color: #E99D6F;
	margin-left: 34%;
}

.yajirushi::before{
    position:absolute;
    content: "";
    width:28px;
    height:13px;
	background-image: url('../img/yajirushi.svg');
	background-repeat: no-repeat;
	background-size: contain;
    top:50%;
	left: 50%;
	transform: translate(-50%,-50%);
    margin:auto;
}

#gmap{
	max-width: 1000px;
	margin-inline:auto;
}

#gmap iframe{
	width: 100%;
	border-radius: 9999px;
	height: 600px;
	border: 1px solid #333;
}

.detail_imgWrap{
	padding-inline:20px;
}

.detail_img{
	height: 500px;
	width: 100%;
	object-fit: cover;
	border-radius: 20px;
}

@media screen and (max-width: 820px){
	.detail .l-container{
		width: 100%;
		max-width: 1360px;
		padding-bottom:100px;
	}
	
	.detail_contentsWrap{
		background-color: #fff;
		border: 1px solid #333;
		border-radius: 30px;
		padding-inline:40px;
		padding-block:100px;
	}
	
	.yajirushi{
		display: block;
		width: 50px;
		height: 50px;
		border-radius: 50%;
		transition: all .3s ease;
		cursor: pointer;
		position:relative;
		border: 1px solid #333;
		text-align: center;
		background-color: #E99D6F;
		margin-left: 25%;
	}

}



@media (max-width: 767px) {
  .detail .l-container{
	width: 100%;
	max-width: 1400px;
	padding-bottom:20px;
  }

.detail_contentsWrap{
	background-color: #fff;
	border: 1px solid #333;
	border-radius: 20px;
	padding:40px;
	padding-inline:20px;
  }
	
  table {
    width: 100%;
	margin-bottom: 40px;
  }
  table th, table td {
    display: block;
    height: auto;
    border-block-end: 0px;
  }
  table th {
    width: 100%;
    background-color: #e0e0e0;
  }
	
  .details_wrap.l-960{
	padding-top:120px;
	padding-bottom:80px;
  }
	
	.button{
	position: relative;
    text-decoration: none;
    display: inline-block;
    text-align: center;
    width: 100%;
	margin-bottom: 40px;
  }
	
	.button_text{
		position: relative;
		z-index: 2;
		display: flex;
		align-items: center;
		justify-content: flex-end;
		padding-inline:20px;
		font-weight: bold; /* 文字の太さ */
		border-radius: 100vh;
		border: solid 1px #333; /* 線の色 */
		color: #333; /* 文字色 */
		font-size: 20px;
		padding-block:20px;
		background-color: #E4EBEF; /* 背景色 */
		-moz-transition: all 0.2s ease-in-out;
		-o-transition: all 0.2s ease-in-out;
		-webkit-transition: all 0.2s ease-in-out;
		transition: all 0.2s ease-in-out;
	}
	
	.yajirushi{
		display: block;
		width: 50px;
		height: 50px;
		border-radius: 50%;
		transition: all .3s ease;
		cursor: pointer;
		position:relative;
		border: 1px solid #333;
		text-align: center;
		background-color: #E99D6F;
		margin-left: 10%;
	}
	
	#gmap iframe{
		width: 100%;
		border-radius: 9999px;
		height: 250px;
		border: 1px solid #333;
	}
	
	.detail_img{
		height: 300px;
		width: 100%;
		object-fit: cover;
		border-radius: 15px;
	}



}

/* inquiry
------------------------------- */

.inquiry_right {
  position: fixed;
  bottom: 15%;
  right: 10px;
  /*display: none;*/
  z-index: 150;
  cursor: pointer;
  background-color: #E99D6F;
  border: 1px solid #333;
  border-radius: 50%;
  height: 80px;
  width: 80px;
  transition: all .3s ease;
  /*opacity: 0;
  visibility: hidden;*/
}

.inquiry_right:hover{
	background-color: #E4EBEF;
	transform: scale(1.2,1.2);
}

.inquiry_rightLink{
	position: relative;
	display: contents;
}

.inquiry_rightLink::before{
	position:absolute;
    content: "";
    width:40px;
    height:30px;
	background-image: url('../img/mail.svg');
	background-repeat: no-repeat;
	background-size: contain;
    top:50%;
	left: 50%;
	transform: translate(-50%,-50%);
    margin:auto;
}

@media (max-width: 768px){
	.inquiry_right {
	  position: fixed;
	  bottom: 10%;
	  right: 10px;
	  /*display: none;*/
	  z-index: 150;
	  cursor: pointer;
	  background-color: #E99D6F;
	  border: 1px solid #333;
	  border-radius: 50%;
	  height: 50px;
	  width: 50px;
	  transition: all .3s ease;
	  /*opacity: 0;
	  visibility: hidden;*/
	}
	
	.inquiry_rightLink::before{
		position:absolute;
		content: "";
		width:28px;
		height:20px;
		background-image: url('../img/mail.svg');
		background-repeat: no-repeat;
		background-size: contain;
		top:50%;
		left: 50%;
		transform: translate(-50%,-50%);
		margin:auto;
	}
}


/* pagetop
------------------------------- */
.pagetop {
  position: fixed;
  bottom: 5%;
  right: 10px;
  z-index: 150;
  cursor: pointer;
  background-color: #5B8ABB;
  border: 1px solid #333;
  border-radius: 50%;
  height: 80px;
  width: 80px;
  transition: all .3s ease;
  transform:rotate(-90deg);  
  /*opacity: 0;
  visibility: hidden;*/
}

.pagetop:hover{
	background-color: #E4EBEF;
	transform: scale(1.2) rotate(-90deg); 
}

/*.page-top:hover .page-topLink::before{
	transform:rotate(-90deg);  
}*/

.pagetopLink{
	position: relative;
	display: contents;
}

.pagetopLink::before{
	position:absolute;
    content: "";
    width:40px;
    height:20px;
	background-image: url('../img/yajirushi.svg');
	background-repeat: no-repeat;
	background-size: contain;
    top:50%;
	left: 50%;
	transform: translate(-50%,-50%);
    margin:auto;
}

@media (max-width: 768px){
	.pagetop {
	  position: fixed;
	  bottom: 2%;
	  right: 10px;
	  z-index: 150;
	  cursor: pointer;
	  background-color: #5B8ABB;
	  border: 1px solid #333;
	  border-radius: 50%;
	  height: 50px;
	  width: 50px;
	  transition: all .3s ease;
	  transform:rotate(-90deg);  
	  /*opacity: 0;
	  visibility: hidden;*/
	}
	
	.pagetopLink::before{
		position:absolute;
		content: "";
		width:30px;
		height:15px;
		background-image: url('../img/yajirushi.svg');
		background-repeat: no-repeat;
		background-size: contain;
		top:50%;
		left: 50%;
		transform: translate(-50%,-50%);
		margin:auto;
	}

}

/*===========
scroll
===========*/

.scroll_down {
    display: block;
    left: 0;
    right: 0;
    text-align: center;
    bottom: 0%;
    position: absolute;
}

.scroll_down p {
	font-family: "brandon-grotesque", sans-serif;
    font-weight: 700;
    font-style: normal;
}

.scroll_down a{
    display: inline-block;
    line-height: 18px;
    font-size: 12px;
    font-weight: normal;
    color: #333;
    letter-spacing: 2px;
    text-decoration: none;
}

.scroll_down .mouse {
    position: relative;
    display: block;
    width: 35px;
    height: 55px;
    margin: 0 auto 10px;
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box;
    border: 1px solid #000;
    border-radius: 23px;
}

.scroll_down .mouse > * {
    position: absolute;
    display: block;
    top: 29%;
    left: 50%;
    width: 8px;
    height: 8px;
    margin: -4px 0 0 -4px;
    background: #000;
    border-radius: 50%;
    animation: ani-mouse 2.5s linear infinite;
}

@keyframes ani-mouse {
	0% {
	opacity: 0;
	top: 70%;
	}
	40% {
	opacity: 0;
	top: 30%;
	}
	70% {
	opacity: 1;
	top: 30%;
	}
	100% {
	opacity: 1;
	top: 70%;
	}
}

@media (max-width: 768px){
	.scroll_down {
		display: block;
		left: 0;
		right: 0;
		text-align: center;
		bottom: -5%;
		position: absolute;
	}
}

/*===========
動き
===========*/

.view{
    vertical-align: middle;
    transform: scale(0);
    transition: all .5s ease-in-out .3s;
}

.view.js-on{
    transform: scale(1);
}


.view_02{
    filter: blur(10px);
    opacity: 0;
    transition: all .3s ease-in-out .3s;
	transition-delay: 0.5s;
}
.view_02.js-on{
    filter: blur(0px);
    opacity: 1;
}

.view_03{
    vertical-align: middle;
    transform: rotateY(90deg);
    transition: all .5s ease-in-out .5s;
}
.view_03.js-on{
    transform: rotateY(0deg);
}


/*===========
inview
===========*/

.fadeIn_left {
  opacity: 0;
  transform: translate(-50%, 0);
  transition: 2s;
}
.fadeIn_left.is-show {
  transform: translate(0, 0);
  opacity: 1;
}

.fadeIn_right {
  opacity: 0;
  transform: translate(50%, 0);
  transition: 2s;
}
.fadeIn_right.is-show {
  transform: translate(0, 0);
  opacity: 1;
}

.fadeIn {
  opacity: 0;
  transition: 2s;
  transition-delay: 3s; /* 0.5秒遅れて表示 */
}
.fadeIn.is-show {
  opacity: 1;
}

.fadeIn_up {
  opacity: 0;
  transform: translate(0, 50%);
  transition: 2s;
}
.fadeIn_up.is-show {
  transform: translate(0, 0);
  opacity: 1;
}

.fadein_order {
  transform: scale(0);
  transition: all .5s ease-in-out .3s;
}

.fadein_order.active{
  transform: scale(1);
}

