@charset "utf-8";

/* common */
.main-inner {
	position: relative;
	z-index: 4000;
	overflow: hidden;
}
.main-inner img {
	line-height: 0.1;
	display: block;
}
.cnt__inner {
	position: relative;
}
.ani-rotateIn,
.ani-fadeInDown,
.ani-fadeInUp,
.ani-fadeInRight,
.ani-fadeInLeft,
.ani-fadeIn {
	opacity: 0;
}
.onlyPc {
	display: none;
}


/* .mv */
.mv .slide {
}
.mv .swiper {
	position: relative;
	width: 100%;
	margin: 0 auto;
	box-sizing: border-box;
	overflow: visible;
}
.mv .swiper .swiper-slide {
	position: relative;
	box-sizing: border-box;
}
.mv .swiper-pagination {
	width: 100%;
	top: auto;
	bottom: calc( 30 / 750 * 100vw );
	line-height: 0.1;
	text-align: center;
}
.mv .swiper-pagination .swiper-pagination-bullet {
	width: calc( 18 / 750 * 100vw );
	height: calc( 18 / 750 * 100vw );
	background: #fff;
	opacity: 1;
	margin: 0 calc( 12 / 750 * 100vw );
	border-radius: 0;
	border-radius: calc( 9 / 750 * 100vw );
}
.mv .swiper-pagination .swiper-pagination-bullet-active {
	background: #d1bb8e;
}

/* .menu */
.menu {
  display: none;
	position: fixed;
	right: 0;
	bottom: 0;
	z-index: 11000;
}
.menu p.menu__acc {
	width: calc( 154 / 750 * 100vw );
	position: relative;
	z-index: 11100;
  box-sizing: border-box;
  padding: 0 calc( 10 / 750 * 100vw ) calc( 10 / 750 * 100vw ) 0;
}
.menu p.menu__acc.active {
	background: url("../images/icn-menu-close_sp.png") left top / calc( 144 / 750 * 100vw ) auto no-repeat;
}
.menu p.menu__acc.active img {
	visibility: hidden;
}
.menu .popup__cover {
  display: none;
	background-color: rgba(0, 0, 0, 0.48);
	height: 100vh;
	width: 100%;
	position: fixed;
	left: 0;
	top: 0;
	z-index: 11040;
	cursor: pointer;
}
.menu p.menu__acc.active + .popup__cover {
  display: block;
}
.menu ul {
	position: absolute;
	right: calc( -590 / 750 * 100vw );
	bottom: 0;
	z-index: 11050;
  background:url("../images/bg-menu-01_sp.png") left bottom / 100% auto no-repeat;
	width: calc( 590 / 750 * 100vw );
	aspect-ratio: 590 / 730;
	box-sizing: border-box;
	padding: calc( 432 / 750 * 100vw ) calc( 160 / 750 * 100vw ) 0 0;
  border-radius: calc( 60 / 750 * 100vw ) 0 0 0;
  transition: all .4s ease;
}
.menu p.menu__acc.active + .popup__cover + ul {
	right: 0;
}
.menu ul li {
  width: calc( 258 / 750 * 100vw );
  margin: 0 0 0 auto;
}
.menu ul li + li {
	margin-top: calc( 94 / 750 * 100vw );
  width: calc( 234 / 750 * 100vw );
}

/* .movie */
.movie {
	background: url("../images/bg-movie-01_sp.jpg") center top / cover no-repeat;
}
.movie .cnt__inner {
	padding: calc( 163 / 750 * 100vw ) 0 calc( 163 / 750 * 100vw );
	font-size: 0;
	text-align: center;
	vertical-align: top;
}
.movie h2 {
	width: calc( 556 / 750 * 100vw );
	margin: 0 auto calc( 61 / 750 * 100vw );
	line-height: 0.1
}
.movie iframe {
	width: 100%;
	height: auto;
	aspect-ratio: 16 / 9;
}
.movie ul {
  width: calc( 624 / 750 * 100vw );
  margin: 0 auto calc( 26 / 750 * 100vw );
}
.movie ul li {
  margin: 0 auto calc( 158 / 750 * 100vw );
}
.movie ul li a + p {
  width: calc( 552 / 750 * 100vw );
  margin-top: calc( 41 / 750 * 100vw );
}
.movie .slide {
  box-sizing: border-box;
  overflow: hidden;
}
.movie .slide .swiper {
  overflow: visible;
  width: calc( 670 / 750 * 100vw );
  margin: 0 auto;
  padding-bottom: calc( 100 / 750 * 100vw );
}
.movie .swiper-slide {
  width: calc( 370 / 750 * 100vw );
  padding: 0 calc( 20 / 750 * 100vw );
  box-sizing: border-box;
  margin-right: 0;
  position: relative;
}
.movie .swiper-slide a {
  display: block;
  margin-bottom: calc( 38 / 750 * 100vw );
}
.movie .slide .swiper-pagination {
  display: none;
}
.movie .slide .swiper-wrapper {
  display: flex;
}
.movie .swiper-horizontal>.swiper-scrollbar {
  position: absolute;
  left: calc( 224 / 750 * 100vw );
  bottom: 0;
  z-index: 50;
  height: calc( 10 / 750 * 100vw );
  width: calc( 300 / 750 * 100vw );
  border-radius: 10px;
  background: #015541;
  margin: 0 auto 0;
}
.movie .swiper-scrollbar-drag {
  height: 100%;
  width: 100%;
  position: relative;
  background: #d6c083;
  border-radius: 10px;
  left: 0;
  top: 0;
}

/* .product */
.product {
	background: url("../images/bg-product-01_sp.jpg") center top / 100% auto no-repeat;
}
.product .cnt__inner {
  padding: calc( 180 / 750 * 100vw ) 0;
  overflow: hidden;
}
.product h2 {
	width: calc( 442 / 750 * 100vw );
	margin: 0 auto calc( 127 / 750 * 100vw );
}
.product .product__list {
  display: flex;
}
.product .product__list dl {
	width: calc( 300 / 750 * 100vw );
  height: calc( 748 / 750 * 100vw );
	position: relative;
  z-index: 100;
}
.product .product__list dl + dl {
  width: calc( 448 / 750 * 100vw );
  margin-left: calc( -110 / 750 * 100vw );
  z-index: 99;
}
.product .product__list dl dt {
	width: calc( 238 / 750 * 100vw );
  margin: calc( -30 / 750 * 100vw ) 0 calc( 39 / 750 * 100vw ) calc( 87 / 750 * 100vw );
}
.product .product__list dl + dl dt {
	width: calc( 266 / 750 * 100vw );
  margin: calc( -34 / 750 * 100vw ) 0 calc( 39 / 750 * 100vw ) calc( 212 / 750 * 100vw );
}
.product .product__list dl dt + dd {
	width: calc( 280 / 750 * 100vw );
  margin: 0 0 0 calc( 66 / 750 * 100vw );
}
.product .product__list dl + dl dt + dd {
  margin: 0 0 0 calc( 204 / 750 * 100vw );
}
.product dl.premium {
	position: relative;
  width: calc( 710 / 750 * 100vw );
  margin: 0 auto;
}
.product dl dd.product__list-img01 {
	width: calc( 189 / 750 * 100vw );
	position: absolute;
	left: calc( 274 / 750 * 100vw );
	top: calc( 112 / 750 * 100vw );
}
.product dl dd.product__list-btn01 {
	width: calc( 578 / 750 * 100vw );
	position: absolute;
	left: calc( 72 / 750 * 100vw );
	bottom: calc( 58 / 750 * 100vw );
}

/* .reason */
.reason {
	background: url("../images/bg-reason-01_sp.jpg") center top / 100% auto no-repeat;
}
.reason .cnt__inner {
	text-align: center;
	padding: calc( 114 / 750 * 100vw ) 0 calc( 100 / 750 * 100vw );
	box-sizing: border-box;
}
.reason .slide + .cnt__inner {
  padding: calc( 178 / 750 * 100vw ) 0 0;
}
.reason h2 {
	width:calc( 470 / 750 * 100vw );
	margin: 0 auto 0 calc( 96 / 750 * 100vw );
}
.reason .slide {
  width: 100%;
  margin: 0 auto;
  box-sizing: border-box;
  overflow: hidden;
}
.reason .slide .swiper {
  overflow: visible;
  width: 100%;
  margin: 0 auto;
  padding-bottom: calc( 70 / 750 * 100vw );
}
.reason .swiper-slide {
  width: calc( 640 / 750 * 100vw );
  padding: 0 calc( 15 /750 * 100vw );
  box-sizing: border-box;
  margin-right: 0;
  position: relative;
}
.reason .slide .swiper-pagination {
  display: none;
}
.reason .slide .swiper-wrapper {
  display: flex;
}
.reason .swiper-horizontal>.swiper-scrollbar {
  position: absolute;
  left: 50%;
  bottom: 0;
  z-index: 50;
  height: calc( 10 / 750 * 100vw );
  width: calc( 300 / 750 * 100vw );
  border-radius: 10px;
  background: #015541;
  margin: calc( 63 / 1500 * 100% ) auto 0 calc( -300 / 2 / 750 * 100vw );
}
.reason .swiper-scrollbar-drag {
  height: 100%;
  width: 100%;
  position: relative;
  background: #d6c083;
  border-radius: 10px;
  left: 0;
  top: 0;
}

/* .ambition */
.ambition {
	background: url("../images/bg-ambition-01_sp.jpg") center top / 100% auto no-repeat;
  aspect-ratio: 750 / 1337;
  margin-bottom: calc( 100 / 750 * 100vw );
}
.ambition .cnt__inner {
	text-align: center;
	padding: calc( 167 / 750 * 100vw ) 0 0;
	box-sizing: border-box;
}
.ambition h2 {
	width: calc( 404 / 750 * 100vw );
	margin: 0 auto calc( 96 / 750 * 100vw );
}
.ambition p {
	width: calc( 630 / 750 * 100vw );
  margin: 0 auto;
}

/* .fixedBtn */
.fixedBtn {
	position: fixed;
	left: 0;
	bottom: 0;
	width: calc( 562 / 750 * 100vw );
	z-index: 10000;
	display: none;
}

/* .popup */
.popup {
	height: 100vh;
	width: 100%;
	position: fixed;
	left: 0;
	top: 0;
	z-index: 20000;
	display: none;
}
.popup .popup__cover {
	background-color: rgba(0, 0, 0, 0.85);
	height: 100vh;
	width: 100%;
	position: fixed;
	left: 0;
	top: 0;
	z-index: 21000;
	cursor: pointer;
}
.popup .popup__wrap {
	display: flex;
	justify-content: center;
	align-items: center;
	height: 100vh;
	width: 100%;
}
.popup .popup__inner {
	width: calc( 670 / 750 * 100vw );
	box-sizing: border-box;
	margin: auto;
	max-height: 90vh;
	z-index: 22000;
	position: relative;
}
.popup.cm .popup__inner {
	width: calc( 670 / 750 * 100vw );
}
.popup.short .popup__inner {
	width: auto;
  max-width: 80vw;
  max-height: 80vh;
  aspect-ratio: 9 /16;
}
.popup iframe {
	width: 100%;
	height: auto;
	aspect-ratio: 16 / 9;
}
.popup.short iframe {
	aspect-ratio: 9 / 16;
}
.popup .popup__close {
	position: absolute;
	right: calc( -24 / 750 * 100vw );
	top: calc( -36 / 750 * 100vw );
	cursor: pointer;
	width: calc( 66 / 750 * 100vw );
	height: calc( 66 / 750 * 100vw );
}
