@charset "utf-8";

:root{
  --oh: 0;
}

.tb,
.sp {
	display: none;
}
.pc {
	display: block;
}
@media screen and (max-width: 1024px) {
	.pc,
	.sp {
		display: none;
	}
	.tb {
		display: block;
	}
}
@media screen and (max-width: 619px) {
	.pc,
	.tb {
		display: none;
	}
	.sp {
		display: block;
	}
}

/* top page(梅田css流用)
 * ========================================================================== */
body{
	position: relative;
	background-repeat: no-repeat;
	background-position: center;
	background-size: cover;
	height: 100vh;
	overflow: hidden;
	font-family: 'Shippori Mincho', sans-serif;
}
body.loaded{
	background: none;
	height: inherit;
	overflow-y: visible;
}
.loading_wrap{
	position: fixed;
	top: 0;
	left: 0;
	background-color: #c0ac9b;
	background-repeat: no-repeat;
	background-position: center;
	background-size: cover;
	width: 100%;
	height: var(--vh);
	height: 100%;
	z-index: 1000;
	pointer-events: none;
}
.load_catch_wrap{
	display: flex;
	flex-direction: column;
	justify-content: center;
	align-items: center;
	height: 100%;
}
.load_catch_words{
	position: relative;
	height: 0;
	overflow: hidden;
}
.load_catch_words > .load_catch_word{
	position: absolute;
	bottom: 0;
	left: 0;
	width: 100%;
	transform-origin: bottom;
	opacity: 0;
}
.load_catch_text{
	position: relative;
	font-size: 0;
	opacity: 0;
}
.loading_ster_wrap {
	position: fixed;
	top: 0;
	left: 0;
	width: 100%;
	height: var(--vh);
	z-index: 1001;
	pointer-events: none;
}
.meritItems .meritItem a .merit-title {
	left: 30px;
	top: 45px;
}
.meritItems .meritItem a .merit-text {
	left: 30px;
	bottom: 90px;
	font-size: 22px;
}
.meritItems .meritItem a .arrow {
	left: 30px;
	bottom: 42px;
	font-size: 16px;
}
.meritItems .meritItem figure::before {
	top: 0;
	background: linear-gradient(to bottom,  rgba(0,0,0,0.3) 0%,rgba(0,0,0,0.8) 100%);
}
.meritItem .caption {
	position: absolute;
	right: 10px;
	bottom: 10px;
	color: #fff;
	z-index: 1;
	font-size: 12px;
}

@media screen and (max-width: 1024px) {
	.meritItems .meritItem a .merit-title {
		font-size: 16px;
		top: 24px;
	}
	.meritItems .meritItem a .merit-text {
		font-size: 16px;
		bottom: 68px;
	}
	.meritItems .meritItem a .arrow {
		font-size: 12px;
	}
}

@media screen and (max-width: 619px) {
	.meritItems .meritItem a .merit-title {
		font-size: 14px;
		top: 24px;
		left: 20px;
	}
	.meritItems .meritItem a .merit-text {
		font-size: 19px;
		bottom: 76px;
		left: 20px;
	}
	.meritItems .meritItem a .arrow {
		font-size: 14px;
		left: 20px;
	}
}

/* #information #info-column .bnrArea {
  margin-top: 10px;
  height: fit-content;
} */

.info_esalon_wrap {
    margin-bottom: 20px;
    margin-top: 20px;
}


.infor_wrap{
	background-color: #E6E9EB;
	position: relative;
	padding: 0.01% 0;
	z-index: 1;
}
.infor_wrap .tel-link {
	background-color: #fff;
	border: none;
}
.infor_wrap .attent{
	background-color: #fff;
  width: 100%;
  max-width: 1360px;
	padding: 20px;
	margin: 60px auto;
	font-size: 14px;
	letter-spacing: 0.04em;
	text-align: center;
	box-sizing: border-box;
}
a.cvBtn.reqBtn {
	background: #8C7245 !important;
}


@media screen and (max-width: 619px) {
	.loading_wrap{
		background-image: url("../img/top/kv_bg_sp.jpg");
	}
	.load_catch_words{
		width: 77.333%;
		padding-top: 20.267%;
		margin-bottom: 8%;
	}
	.load_catch_text{
		width: 51.467%;
	}
	.load_catch_logo{
		width: 59.733%;
	}
}
@media screen and (min-width: 620px) {
	.loading_wrap{
		background-image: url("../img/top/kv_bg_tb.jpg");
	}
	.load_catch_words{
		width: 56.641%;
		padding-top: 14.844%;
		margin-bottom: 5.859%;
	}
	.load_catch_text{
		width: 37.695%;
	}
	.load_catch_logo{
		width: 44.141%;
	}
}
@media screen and (min-width: 1025px) {
	.loading_wrap{
		background-image: url("../img/top/kv_bg_pc.jpg");
	}
	.load_catch_words{
		width: 580px;
		padding-top: 152px;
		margin-bottom: 60px;
	}
	.load_catch_text{
		width: 386px;
	}
	.load_catch_logo{
		width: 406px;
	}
}

header{ opacity: 0; }

/**
/* Mainvisual
 * ========================================================================== */
/*↓↓↓変更不可*/
#mainvisual { position:relative; width: 100%; overflow: hidden;}
@media screen and (max-width:1200px) {
	#mainvisual { overflow: initial; margin-bottom: 93px!important;}
}
/*↑↑↑変更不可*/

.mainvisual_catch{
	position: absolute;
	bottom: 0;
	left: 0;
	right: 0;
	margin: 0 auto;
	text-align: center;
	filter: drop-shadow(0 0 0.625rem rgba(75,75,75,.8));
}
.mainvisual_catch .catch_txt{
	font-family: "Ryumin Regular KL";
	color: #fff;
	line-height: 1;
	filter: drop-shadow(0 0 0.3125rem rgba(75,75,75,1));
}
.mainvisual_img {
  position: absolute;
	top: 0;
	left: 0;
	display: block;
  width: 100%;
  height: 100%;
  overflow: hidden;
	z-index: -1;
}
.mainvisual_img > picture{
  position: absolute;
  top: 50%;
  left: 50%;
  min-width: 100%;
  min-height: 100%;
  transform: translate(-50%, -50%);
}
.mov_wrap .vm {
  position: absolute;
	top: 0;
	left: 0;
	display: block;
  width: 100%;
  height: 100%;
  overflow: hidden;
	z-index: 1;
}
.mov_wrap iframe {
  position: absolute;
  top: 50%;
  left: 50%;
	width: 177.778vh;
  height: 56.25vw;
  min-height: 100%;
  min-width: 100%;
  min-height: 110%;
  min-width: 110%;
  transform: translate(-50%, -50%);
	pointer-events: none;
}
.mov_wrap .sound {
  position: absolute;
	bottom: 0;
	left: 0;
	display: block;
  height: 0;
	z-index: 90;
}
.mov_wrap .sound > span {
  position: absolute;
	bottom: 0;
	left: 0;
	display: block;
	background-repeat: no-repeat;
	background-position: center;
	background-size: contain;
	width: 100%;
  height: 100%;
}
.mov_wrap .sound .on {
	background-image: url("../img/top/ico_sound_on.svg");
	display: none;
}
.mov_wrap .sound .off {
	background-image: url("../img/top/ico_sound_off.svg");
}
.important-info {
	padding: 18px;
	border: solid 1px #999;
	background-color: #fff;
	text-align: center;
	line-height: 1.5;
	font-size: 14px;
	word-break: keep-all;
	overflow-wrap: break-word;
}

@media screen and (max-width: 619px) {
	#mainvisual {
		height: 100vw;
	}
	.mainvisual_catch{
		width: 78.667%;
		margin-bottom: 5.333%;
	}
	.mainvisual_catch .catch_wh{
		margin-bottom: 1.695%;
	}
	.mainvisual_catch .catch_txt{
		font-size: 4vw;
	}
	.mainvisual_img > picture{
	aspect-ratio: 150	/	227;
	}
	.mov_wrap iframe{
		width: 115vh;
		height: 100vw;
		min-height: 100%;
		min-width: 100%;
	}
	.mov_wrap .sound {
		width: 5.333%;
		padding-bottom: 5.333%;
		margin: 4%;
	}
}
@media screen and (min-width: 620px) {
	#mainvisual {
		height:56.25vw;
	}
	.mainvisual_catch{
		width: 600px;
		margin-bottom: 50px;
	}
	.mainvisual_catch .catch_wh{
		margin-bottom: 20px;
	}
	.mainvisual_catch .catch_txt{
		font-size: 28px;
	}
	.mainvisual_img > picture{
		aspect-ratio: 16 / 8;
	}
	.mov_wrap .sound {
		width: 24px;
		padding-bottom: 24px;
		margin: 20px;
	}
}
@media screen and (min-width: 1025px) {
#mainvisual {
	height: var(--vh);
}
	.mainvisual_catch{
		margin-bottom: 40px;
	}
	.mainvisual_img > picture{
		aspect-ratio: 16 / 8;
	}
}
@media screen and (max-width: 1366px) {
	.infor_wrap .attent{
		width: calc(100% - 40px);
		padding: 20px;
		margin: 40px auto;
	}
}
@media screen and (max-width: 619px) {
	.infor_wrap .attent{
		padding: 20px;
		margin: 60px auto;
		font-size: 2.604vw;
		text-align: left;
	}
	.infor_wrap .attent span{
		display: inline-block;
		width: 100%;
		text-align: center;
	}
}

/* concept */
.concept_wrap{
	position: relative;
	overflow: hidden;
	padding-top: 150px;
}
.concept_wrap .concept_bg{
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	background-repeat: no-repeat;
	background-position: center top;
	background-size: cover;
	z-index: 1;
	background-image: url("../img/top/concept_bg.jpg");
}
.concept_wrap .concept_catch{
	margin: 0 auto;
	line-height: 1;
	position: relative;
	z-index: 2;
}
.concept_wrap .concept_catch .catch_txt{
	font-family: 'Shippori Mincho', sans-serif;
	line-height: 1;
	display: block;
}
.concept_wrap .concept_txt{
	position: relative;
	margin: 0 auto;
	z-index: 2;
}
.concept_wrap .concept_txt .line{
	font-family: "Noto Serif JP", "Times New Roman", Times, A1 Mincho, YuMincho, "Yu Mincho", "Hiragino Mincho ProN", "serif";
	letter-spacing: -0.03em;
	line-height: 2.923;
}
.concept_wrap .concept_img{
	position: relative;
	z-index: 1;
	text-align: end;
}
.concept_wrap .concept_img img{
	width: 70%;
}
.concept_wrap .cap{
	position: absolute;
	bottom: 0;
	right: 0;
	color: #fff;
	line-height: 1;
	text-shadow: 0 0 2px rgba(0,0,0,.8);
	z-index: 1;
}
.concept_wrap .caption {
	position: absolute;
	right: 10px;
	bottom: 0px;
	color: #fff;
	z-index: 1;
	font-size: 12px;
	line-height: 2.2;
}
.special_plan_mv iframe {
	position: absolute;
    top: 50%;
    left: 50%;
    height: 80vw;
	width: 100%;
    min-height: 100%;
    min-width: 110%;
    transform: translate(-50%, -50%);
    pointer-events: none;
}
@media screen and (max-width: 1366px) {
	.concept_wrap .concept_catch .catch_cl{
		width: 72.760%;
		margin-bottom: 6.335%;
	}
	.concept_wrap .concept_catch .catch_txt{
		font-size: 2.489vw;
	}
	.concept_wrap .concept_txt .line{
		font-size: 1.391vw;
	}
}
@media screen and (max-width: 1230px) {
	.special_plan_mv iframe {
		aspect-ratio: 1.5 / 1;
		width: 140%;
	}
}
@media screen and (max-width: 1024px) {
	.special_plan_mv iframe {
		height: 100vw;
		min-height: 130%;
		width: 175%;
	}
}
@media screen and (max-width: 767px) {
	.special_plan_mv iframe {
		height: 150vw;
		width: 215%;
	}
}
@media screen and (max-width: 619px) {
	.concept_wrap{
		padding-top: 86px;
	}
	.concept_wrap .concept_catch{
		width: 84%;
		margin-bottom: 5.333%;
	}
	.concept_wrap .concept_catch .catch_cl{
		width: 50%;
		margin-bottom: 8.254%;
	}
	.concept_wrap .concept_catch .catch_txt{
		font-size: 4.533vw;
		line-height: 2;
	}
	.concept_wrap .concept_txt{
		width: 84.4%;
		margin-bottom: 8%;
	}
	.concept_wrap .concept_txt .line{
		font-size: 3.467vw;
		white-space: nowrap;
	}
	.concept_wrap .cap{
		margin: 0.667%;
		font-size: 2.667vw;
	}
	.concept_wrap .concept_bg {
		background-image: url("../img/top/concept_bg_sp.jpg");
	}
	.concept_wrap .concept_img {
		margin-top: -50px;
	}
	.concept_wrap .concept_img img{
		width: 130%;
		max-width: 130%;
		margin-left: -22px;
	}
	.special_plan_mv iframe {
		width: 138%;
		height: 100%;
		min-height: 100%
	}
}
@media screen and (max-width: 519px) {
	.special_plan_mv iframe {
		width: 164%;
		height: 100%;
		min-height: 100%
	}
}
@media screen and (max-width: 440px) {
	.special_plan_mv iframe {
		width: 190%;
		height: 100%;
		min-height: 100%
	}
}

@media screen and (min-width: 620px) {
	.concept_wrap{
		padding-top: 86px;
	}
	.concept_wrap .concept_catch{
		width: 88.672%;
		margin-bottom: 50px;
	}
	.concept_wrap .concept_catch .catch_cl{
		width: 40%;
		margin-bottom: 50px;
	}
	.concept_wrap .concept_catch .catch_txt{
		display: block;
		font-size: 21px;
		letter-spacing: 0.4em;
	}
	.concept_wrap .concept_txt{
		width: 88.672%;
	}
	.concept_wrap .concept_txt .line{
		font-size: 16px;
	}
	.concept_wrap .concept_txt br{
		display: none;
	}
	.concept_wrap .concept_img{
		margin-top: -30px;
	}
	.concept_wrap .cap{
		margin: 5px;
		font-size: 12px;
	}
}
@media screen and (min-width: 1025px) {
	.concept_wrap .concept_catch{
		width: 100%;
		padding: 0 9.524%;
		margin-bottom: 50px;
	}
	.concept_wrap .concept_catch .catch_cl{
		width: 25%;
		margin-bottom: 70px;
	}
	.concept_wrap .concept_catch .catch_txt{
		display: block;
		font-size: 28px;
		letter-spacing: 0.3em;
	}
	.concept_wrap .concept_txt{
		width: 100%;
		padding: 0 9.524%;
	}
	.concept_wrap .concept_txt .line{
		font-size: 19px;
	}
	.concept_wrap .cap{
		margin: 5px;
		font-size: 12px;
	}
}
@media screen and (min-width: 1341px) {
	.concept_wrap .concept_img{
		margin-top: -320px;
	}
}
@media screen and (min-width: 1520px) {
	.concept_wrap .concept_img{
		margin-top: -440px;
	}
}

.infinity_wall {
	position: relative;
	background: #222;
	margin: 0 auto;
	overflow: hidden;
	perspective: 1200px;
	height: 768px;
	max-width: 1950px;
}
.special_plan .infinity_wall {
	background: linear-gradient(to right, #FFFFFF, #E6E9EB);
}
.infinity_wall:after {
  content: '';
  position: absolute;
  top: -1px;
  width: 100%;
  height: 100%;
  z-index: 10;
}
.special_plan .infinity_wall:after {
  content: none;
}
.scroll_track {
  position: absolute;
  top: -65%;
  left: -10%;
  height: 300%;
  width: 200%;
  transform: rotateX(20deg) rotateY(40deg) rotateZ(-20deg);
  z-index: 5;
}
.pattern {
	position: absolute;
	top: 0;
	left: 0;
	height: 100%;
	width: 10000px;
	min-width: 100vw;
	animation: scrollBG 150s linear infinite;
	background-repeat: repeat-x;
	background-size: 1060px 1600px;
	transform: translateZ(0);
	will-change: background-position;
}
.brand_bg {
	background-image: url('../img/top/brand_bg.jpg');
}
.plan_bg {
	background-image: url('../img/top/plan_bg.jpg');
}
.special_plan_bg {
	background-image: url('../img/top/special_plan_bg.jpg');
}
.wide_bg {
	position: absolute;
	top: 0;
	left: 0;
	height: 100%;
	width: 100vw;
	background-position: center;
	background-size: cover;
	background-repeat: no-repeat;
	background-color: rgba(255,255,255,0.3);
	background-blend-mode: lighten;
	filter: blur(10px);
	transform: scale(1.1);
}
.wide_bg.special_plan_bg {
	background-color: rgba(255,255,255,0.7);
}
@keyframes scrollBG {
	from {
		background-position: 0 0;
	}
	to {
		background-position: -2122px 0;
	}
}
.brand, .plan, .special_plan_inner {
	position: relative;
	overflow: hidden;
}
.special_plan,
.special_plan .pillar_inner p {
	position: relative;
}
.annotation {
	position: absolute;
	font-size: 10px;
	left: 111px;
}
.special_plan_mv_mask {
	position: absolute;
	top: -1px;
	left: 50%;
	width: calc(100% + 1px);
	height: calc(100% + 1px);
	background: linear-gradient(
		to right,
		rgba(255,255,255,1),
		rgba(255,255,255,0)
	);
	z-index: 1;
	max-width: 1951px;
	transform: translateX(-50%);
	overflow: hidden;
}
.pillar {
	position: absolute;
	display: flex;
	justify-content: center;
	align-items: center;
	top: 50%;
	left: 50%;
	transform: translate(-50%, -50%);
	padding: 175px 0 144px;
	width: 100%;
	max-width: 1950px;
	z-index: 2;

}
.pillar_inner {
	width: 45%;
	padding-left: 9.524vw;
}
.pillar_content {
	width: 55%;
	overflow: hidden;
}
.pillar h3 {
	font-size: 30px;
	color: #585858;
	padding-bottom: 2%;
	font-weight: 400;
}
.pillar p {
	font-size: 28px;
}
.pillar span {
	display: inline-block;
}
.pillar .pillar_txt_detail {
	padding-top: 30px;
	font-size: 18px;
}
.pillar .pillar_btn_wrap {
	padding-top: 60px;
}
.pillar .pillar_btn {
	display: flex;
	border-radius: 35px;
	background-color: #000;
	height: 60px;
	max-width: 330px;
	color: #fff !important;
	text-align: center;
	align-items: center;
	justify-content: center;
	font-size: 20px;
}
.plan_box .swiper-slide {
  transition: opacity 0.6s ease, transform 0.6s ease;
  transform: scale(0.8);
  opacity: 0;
  pointer-events: none;
}
.plan_box .swiper-slide-active {
  transform: scale(1.2);
  opacity: 1;
  pointer-events: auto;
}
.plan_box_scroll {
	overflow-x: auto;
	-webkit-overflow-scrolling: touch;
  scrollbar-width: none;
}
.plan_box_scroll::-webkit-scrollbar {
  display: none;
}
.plan_box_scroll_inner {
	display: flex;
	width: max-content;
	padding-left: 20px;
}
.plan_box_img {
	width: 264px;
	padding-right: 10px;
}
.pillar_content {
	position: relative;
}
.slider-control_nav {
	position: absolute;
	top: 50%;
	transform: translateY(-50%);
	width: 50%;
	left: 0;
	right: 0;
	margin: auto;
}
.slider-control_nav .arrow-btn {
	position: absolute;
	width: 40px;
	height: 40px;
	cursor: pointer;
}
.slider-control_nav .arrow-btn_prev {
	left: 0;
	background-color: transparent;
}
.slider-control_nav .arrow-btn_prev::before {
  content: '';
  position: absolute;
  top: 0;
  left: 0;
  background: url('../img/top/arrow-btn_prev.png') no-repeat center;
  background-size: contain;
  width: 100%;
  height: 100%;
  margin: 0;
  overflow: visible;
}
.slider-control_nav .arrow-btn_next {
	right: 0;
	background-color: transparent;
}
.slider-control_nav .arrow-btn_next::before {
  content: '';
  position: absolute;
  top: 0;
  left: 0;
  background: url('../img/top/arrow-btn_next.png') no-repeat center;
  background-size: contain;
  width: 100%;
  height: 100%;
  margin: 0;
  overflow: visible;
}
.plan_box.swiper-container {
		display: block;
	}
	.plan_box_scroll {
		display: none;
	}

/* actionproposal */
#actionproposal{
  padding:21px 0;
  /*padding:21px 0 15px;*/
}
#actionproposal div p{
  letter-spacing: 0.02em;
  font-family: 'Shippori Mincho', "Times New Roman", Times, A1 Mincho, YuMincho, "Yu Mincho", "Hiragino Mincho ProN", "serif";
}
#actionproposal div + div {
  margin-top: 14px;
  padding-top: 16px;
  border-top:#6a6a6a solid 1px;
}
.pillar_title {
	display: block;
}
.pillar_title_sp {
	display: none;
}
.br_small_pc {
		display: none;
	}
@media screen and (max-width: 1217px) and (min-width: 1025px) {
	.br_small_pc {
		display: block;
	}
	.pillar .pillar_inner {
    padding-left: 5.414vw;
  }
}
@media screen and (max-width: 1024px) {
	.pillar {
		flex-flow: column;
		align-items: start;
		padding: 70px 0 60px 9.524vw;
	}
	.pillar_inner {
		padding-left: 0;
		width: 100%;
		order: 2;
		width: 100% !important;
	}
	.pillar_content {
		width: 100%;
		order: 1;
		min-height: 240px;
		height: auto;
	}
	.pillar_title {
		display: none;
	}
	.pillar_title_sp {
		display:  block;
	}
	.slider-control_nav {
		top: 40%;
	}
}
@media screen and (max-width: 619px) {
  #actionproposal{
    padding:4.533vw 0;
  }
  #actionproposal div p {
    font-size: 3.733vw;
  }
  #actionproposal div + div {
    margin-top: 4vw;
    padding-top: 4vw;
    width:100%;
  }
  #actionproposal div + div p{
    width:89.333%;
    margin:0 auto;
    /*font-size:2.667vw;
    line-height:1.5;*/
    text-align: left;
  }
	.pillar h3 {
		font-size: 20px;
		padding: 0 20px 20px;
	}
	.pillar p {
		font-size: 20px;
		padding: 0 20px 20px;
	}
	.pillar span.annotation {
		display: inline-block;
		font-size: 10px;
		left: 148px;
	}
	.pillar .pillar_txt_detail {
		font-size: 12px;
		padding-bottom: 0;
		padding-top: 0;
	}
	.pillar .pillar_btn_wrap {
		padding: 24px 20px 0 !important;
		max-width: 70%;
	}
	.pillar .pillar_btn {
		font-size: 12px;
		height: 45px;
	}
	.scroll_track {
		left: -30%;
	}
	.pillar {
		flex-flow: column;
		padding: 70px 0 60px;
		align-items: start;
		width: 100%;
	}
	.pillar span {
		display: none;
	}
	.pillar_inner {
		padding-left: 0;
		width: 100%;
		order: 2;
		width: 100% !important;
	}
	.pillar_content {
		width: 100% !important;
		order: 1;
		min-height: 280px;
	}
	.plan_box.swiper-container {
		display: none;
	}
	.plan_box_scroll {
		display: block;
	}
	.slider-control_nav .arrow-btn_prev,
	.slider-control_nav .arrow-btn_next {
		display: none;
	}
	.pillar_title {
		display: none;
	}
	.pillar_title_sp {
		display:  block;
	}
}
@media screen and (min-width: 620px) {
	.pillar_inner {
		padding-left: 0;
		width: 31%;
	}
	.pillar_content {
		width: 80%;
	}
	.pillar p {
		font-size: 17px;
	}
	.pillar .pillar_txt_detail {
		padding-top: 30px;
		font-size: 14px;
	}

}
@media screen and (min-width: 1025px) {
	.pillar_inner {
		width: 45%;
		padding-left: 9.524vw;
	}
	.pillar_content {
		width: 55%;
		overflow: hidden;
	}
	.pillar h3 {
		font-size: 30px;
	}
	.pillar p {
		font-size: 28px;
	}
	.annotation {
		font-size: 13px;
		left: 182px;
	}
	.pillar .pillar_txt_detail {
		padding-top: 30px;
		font-size: 18px;
	}
	.pillar .pillar_btn {
		font-size: 20px;
	}
}

@keyframes moveEff{
  0%{ transform: scale(1); }
  100%{ transform: scale(1.15); }
}
@-webkit-keyframes moveEff{
  0%{ -webkit-transform: scale(1); }
  100%{ -webkit-transform: scale(1.15); }
}




@media screen and (max-width: 619px) {
}
@media screen and (min-width: 620px) {
}
@media screen and (min-width: 1025px) {
}

/**
/* freeArea
 * ========================================================================== */
#freeArea {
    padding: 50px 0;
    max-width: none;
    background: #dbdbdb;
    text-align: center;
}

/* @media
 * ========================================================================== */
@media screen and (max-width: 1024px) {}
@media screen and (max-width: 619px) {}
@media screen and (max-width: 320px) {}

@media screen and (max-width: 1024px) {
  /* #information #info-column .bnrArea {
    margin-top: initial; height: fit-content;
	} */
	#information #info-column {
    margin-bottom: 20px;
  }
}
@media screen and (max-width: 619px) {
  #information #info-column {
    margin-bottom: 20px;
  }
  /* #information #info-column .bnrArea { margin-top: 1vw; height: auto;} */
}

/* campaign & topics */
#topics figure .caption {
	position: absolute;
	right: 4px;
	bottom: 0px;
	line-height: 1;
	font-size: 12px;
	color: #fff;
}
@media screen and (max-width: 1024px) {
  #topics figure .caption {
		font-size: calc(( 12 / var(--media_tb)) * 100vw);
    right: 0;
    bottom: 0;
  }
}
@media screen and (max-width: 619px) {
  #topics figure .caption {
    font-size: calc(( 10 * 2 / var(--media_sp)) * 100vw);
    right: 0;
    bottom: 0;
  }
}
#topics.sectionItem .mousedragscrollable {
	cursor: initial;
}
.subconcept_logo {
	align-items: center;
  justify-content: center;
  display: flex;
	opacity: 0;
  transition: opacity 1.7s ease;
}
.subconcept_logo.visible {
  opacity: 1;
}

.subconcept_stella .subconcept_logo {
	padding-bottom: 40px;
}
.w-50 {
	width: 50%;
}
.subconcept_the, .subconcept_suite {
	display: flex;
	align-items: center;
}
.parallax_wrap {
	position: relative;
  overflow: hidden;
}
.parallax {
  width: 100%;
  min-width: 400px;
  transform: translateY(calc(var(--parallax-y, 0px) - 0px));
  transition: transform 0.1s ease-out;
}
.subconcept_stella .parallax {
  min-width: 705px;
}
.parallax_wrap .caption {
  position: absolute;
  right: 10px;
  bottom: 0;
  color: #fff;
  z-index: 1;
  font-size: 12px;
}
.subconcept_img p {
	margin: 40px 0 0 0;
	line-height: 2.2;
	font-size: 18px;
	text-align: center;
}
.subconcept_the .subconcept_img p,
.subconcept_suite .subconcept_img p {
	text-align: start;
}
.subconcept_suite .subconcept_img p {
	padding-left: 9.524%;
	margin-right: -9.524%;
}
.subconcept_suite .subconcept_img p.caption {
	padding-left: 9.524%;
	margin-right: 0px;
}
.more_concept_wrap {
	padding: 120px 48px;
}
.more_concept_btn {
	display: flex;
	border-radius: 35px;
	background-color: #BFBBAC;
	height: 60px;
    max-width: 330px;
	color: #fff !important;
	text-align: center;
	align-items: center;
	justify-content: center;
	margin: 0 auto;
	font-size: 20px;
}

@media screen and (max-width: 619px) {
	.parallax_wrap {
		height: 210px;
	}
	.parallax {
		min-width: 100%;
	}
	.subconcept_stella .parallax {
		min-width: 100%;
	}
	.subconcept_stella .parallax_wrap {
		height: 160px;
	}
	.subconcept_stella,
	.subconcept_suite {
		padding-top: 130px;
	}
	.subconcept_the {
		padding-top: 87px;
	}
	.subconcept_the, .subconcept_suite {
		align-items: start;
	}
	.subconcept_img p {
		margin: 24px 0 0 0;
		font-size: 12px;
		line-height: 2.5;
	}
	.subconcept_img.w-50 {
		width: 65%;
	}
	.subconcept_logo.w-50 {
		width: 35%;
	}
	.subconcept_logo img {
		width: 47%;
		height: auto;
	}
	.subconcept_the .subconcept_logo img {
		width: 55%;
	}
	.subconcept_stella .subconcept_logo {
		padding-bottom: 20px;
	}
	.subconcept_stella .subconcept_logo img {
		width: 68%;
	}
	.subconcept_suite .subconcept_logo img {
		width: 46%;
	}
	.more_concept_wrap {
		padding: 65px 20px 72px;
		max-width: 70%;
		margin: 0 auto;
	}
	.more_concept_btn {
		font-size: 12px;
        height: 45px;
	}
}
@media screen and (min-width: 620px) {
	.parallax_wrap {
		height: 200px;
	}
	.subconcept_the,
	.subconcept_stella,
	.subconcept_suite {
		padding-top: 120px;
	}
	.subconcept_logo img {
		width: 25%;
	}
	.subconcept_stella .subconcept_logo img {
		width: 36%;
	}
	.subconcept_suite .subconcept_logo img {
		width: 20%;
	}
	.subconcept_img p {
		font-size: 16px;
	}
}
@media screen and (min-width: 768px) {
	.parallax_wrap {
		height: 230px;
	}
}
@media screen and (min-width: 992px) {
	.parallax_wrap {
		height: 260px;
	}
}
@media screen and (min-width: 1025px) {
	.parallax_wrap {
		height: 350px;
	}
	.subconcept_the,
	.subconcept_stella,
	.subconcept_suite {
		padding-top: 200px;
	}
	.subconcept_logo img {
		width: auto !important;
	}
	.subconcept_img p {
		font-size: 18px;
	}
}
@media screen and (min-width: 1441px) {
	.parallax_wrap {
		height: 400px;
	}
}
@media screen and (min-width: 1641px) {
	.parallax_wrap {
		height: 500px;
	}
}
