@charset "UTF-8";

article {
  font-family: "Zen Old Mincho", serif;
  font-style: normal;
  font-weight: 400;
}

.c-breadcrumb {
  background-color: rgba(255, 255, 255, .75);
  color: #000;
  position: relative;
}
.c-breadcrumb a {
  color: #000;
}
.c-breadcrumb ul {
  display: flex;
  flex-wrap: wrap;
  list-style: none;
  margin: 0;
  padding: 0;
}

.c-breadcrumb li:not(:last-child)::after {
  display: inline-block;
  margin: 0 .5em;
  content: ">";
}

@media screen and (min-width: 768px) {
  .c-breadcrumb {
    font-size: calc((14vw / 1366) * 100);
    padding: calc((14vw / 1366) * 100);
  }
}
@media screen and (max-width: 767px) {
  .c-breadcrumb {
    font-size: calc((13vw / 390) * 100);
    padding: calc((20vw / 390) * 100);
  }
}

.c-entrybtn {
	align-items: center;
	background-color: #76797B;
  border: 1px solid rgba(0,0,0,0);
	color: #fff !important;
	display: flex;
	justify-content: center;
	font-size: 1.75695vw; /*24*/
	font-weight: 400;
	line-height: 2.48901vw;/*34*/
	margin: 3.51390vw auto 0; /*48*/
	height: 4.97803vw;/*68*/
	width: 34.55344vw;/*472*/
}
@media screen and (min-width: 768px) {
  .c-entrybtn {
    transition: .25s;
  }
  .c-entrybtn:hover {
    background-color: rgba(100,100,100,.15);
    border: 1px solid #fff;
    text-decoration: none;
  }
}
@media screen and (max-width: 767px) {
  .c-entrybtn {
    font-size: 3.58974vw; /*14*/
    height: 10.25641vw;/*40*/
    margin: 5.12820vw auto 0; /*20*/
    width: 100%;
  }
}

.c-more {
  display: block;
  height: 3.80673vw;/*52*/
  position: relative;
  width: 3.80673vw;/*52*/
}

.c-more_text {
  height: auto;
  left: 0;
  position: absolute;
  top: 0;
  width: 100%;
}

.c-more_arrow {
  bottom: 0;
  height: auto;
  left: 0;
  position: absolute;
  transition: .25s;
  width: 100%;
  transform: rotate(-90deg);
}
.c-more_wrap:hover .c-more_arrow {
  /* bottom: -0.36603vw; */
  /*5*/
  left: 0.36603vw;
}

@media screen and (max-width: 767px) {
  .c-more {
    height: 8.97435vw;/*35*/
    width: 8.97435vw;/*35*/
  }
  .c-more_wrap:hover .c-more_arrow {
    bottom: 0;
  }
}

/* caption */
.c-caption {
	bottom: 1em;
	position: absolute;
	right: .75em;
	text-align: right;
	width: 10em;
}
@media (min-width: 768px) {
  .c-caption {
    font-size: 0.80527vw;/*11*/
  }
}
@media screen and (max-width: 767px) {
  .c-caption {
    font-size: 2.56410vw;/*10*/
  }
}

/* image photo */
.c-imagephoto {
  color: #fff;
  position: absolute;
  text-align: right;
}
@media (min-width: 768px) {
  .c-imagephoto {
    bottom: calc((14vw / 1366) * 100);
    font-size: calc((16vw / 1366) * 100);
    right: calc((55vw / 1366) * 100);
    width: calc((110vw / 1366) * 100);
  }
}
@media screen and (max-width: 767px) {
  .c-imagephoto {
    bottom: calc((8vw / 390) * 100);
    font-size: calc((8vw / 390) * 100);
    right: calc((20vw / 390) * 100);
    width: calc((60vw / 390) * 100);
  }
}

/* bottom */
.c-blank {
	background-color: rgba(172, 143, 101, 0.8);
	height: 13.17715vw; /*180*/
}

@media (max-width: 767px) {

}

.c-bottom_menu {
	background-color: #000;
}
.c-bottom_menu_list {
	display: flex;
	flex-wrap: wrap;
}
.c-bottom_menu_item {
  overflow: hidden;
	position: relative;
	width: 50%;
}
.c-bottom_menu_img img {
  transition: .25s;
}
.c-bottom_menu_item.-comingsoon {
  pointer-events: none;
}
.c-bottom_menu_item:hover .c-bottom_menu_img img{
	animation: togray 0.35s linear forwards;
  transform: scale(1.1);
}
.c-bottom_menu_title {
	height: 3.95314vw;/*54*/
	left: 50%;
	position: absolute;
	top: 50%;
	transform: translate(-50%, -50%);
	width: auto
}
.c-bottom_menu_title img {
	height: 100%;
	width: auto;
}
.c-bottom_menu_more {
	height: 1.3909224vw;/*38*/
	position: absolute;
	right: 3.51390vw;/*48*/
	top: 50%;
	transform: translateY(-50%);
	width: 2.78184vw;/*38*/
}

@media screen and (max-width: 767px) {
	.c-bottom_menu_item {
		width: 100%;
	}
	.c-bottom_menu_title {
		height: 8.20512vw;/*32*/
	}
	.c-bottom_menu_more {
		width: 5.564102564vw;/*21*/
		right: 7.17948vw;/*28*/
		height: 2.82051282vw;/*21*/
	}
}


.annotation {
	background-color: #fff;
	color: #251E1C;
	font-size: 0.87847vw; /*12*/
	line-height: 1.46412vw; /*20*/
	padding: 4.09956vw 5.85651vw 0; /*56 80 0*/
}

@media screen and (max-width: 767px) {
	.annotation {
		font-size: 2.56410vw; /*10*/
		line-height: 4.10256vw; /*16*/
	}
}


.anime_fadeBlurIn {
  opacity: 0;
  filter: blur(15px);
  -webkit-filter: blur(15px);
  transition: all 0.6s ease-out;
  /* animation: fadeBlurIn 0.5s ease-out forwards; */
  will-change: filter, opacity;
}

.anime_fadeBlurIn.animated {
  opacity: 1;
  filter: blur(0);
  transform: translateY(0);
}

/* @keyframes fadeBlurIn {
  0% {
    opacity: 0;
    filter: blur(10px);
    -webkit-filter: blur(10px);
  }
  100% {
    opacity: 1;
    filter: blur(0);
    -webkit-filter: blur(0);
  }
} */

.anime_fadeInUp .inner{
  opacity: 0;
  transform: translateY(101%);
  transition: opacity 0.6s ease-out, transform 0.6s ease-out;
}
.anime_fadeInUp.animated .inner {
  opacity: 1;
  transform: translateY(0%);
}

/* .anime_fadeInUp.animated .inner {
  animation: fadeInUp 1s ease forwards;
}

@keyframes fadeInUp {
  0% {
    opacity: 0;
    transform: translateY(101%);
  }
  100% {
    opacity: 1;
    transform: translateY(0%);
  }
}
 */
@keyframes togray {
  0% {
    filter: grayscale(0);
  }

  100% {
    filter: grayscale(100);
  }
}

@media screen and (max-width: 767px) {
  .c-letterspace_narrow.sp {
    letter-spacing: -0.05em;
  }
}

/* CSS：フェードアウト演出付き */
#loading {
  position: fixed;
  top: 0; left: 0;
  width: 100%; height: 100%;
  background: #000;
  color: #fff;
  display: flex;
  justify-content: center;
  align-items: center;
  font-size: 2.5rem;
  z-index: 9999;
  opacity: 1;
  transition: opacity 0.6s ease;
  pointer-events: none;
}

#loading.fade-out {
  opacity: 0;
}