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


/* =============================
 Fonts
============================= */
@font-face {
	font-family: 'Arboria';
	src: url('../fonts/Arboria-Bold.otf') format('opentype');
	font-weight: bold;
}
@font-face {
	font-family: 'Arboria';
	src: url('../fonts/Arboria-Medium.otf') format('opentype');
	font-weight: normal;
}


/* =============================
 Animation
============================= */
@keyframes fadein {
	0% {
	   opacity: 0;
	}
	100% {
	   opacity: 1;
	}
}
@keyframes fadeinUp {
	0% {
	   opacity: 0;
	   transform: translateY(20px);
	}
	100% {
	   opacity: 1;
	   transform: translateY(0);
	}
}
@keyframes fadeinRight {
	0% {
	   transform: translateX(-100%);
	}
	100% {
	   transform: translateX(0);
	}
}
@keyframes fadeinLeft {
	0% {
	   opacity: 0;
	   transform: translateX(50%);
	}
	100% {
	   opacity: 1;
	   transform: translateX(0);
	}
}
@keyframes clip_toRight {
    0% {
        clip-path: inset(0 99.9% 0 0);
    }
    100% {
        clip-path: inset(0%);
    }
}
@keyframes scaleUp {
	0% {
		transform: scale(0);
	}
	100% {
		transform: scale(1);
	}
}

.stand-by,
.animation {
    opacity: 0;
}


/* loop */
@keyframes loop1 {
	0% {transform: translateX(100%);}
	to {transform: translateX(-100%);}
}
@keyframes loop2 {
	0% {transform: translateX(0);}
	to {transform: translateX(-200%);}
}



/* =============================
 Base
============================= */
.pc_only {display: block;}
.sp_only {display: none;}
.pc_br {display: block;}
@media only screen and (max-width: 768px) {
	.pc_only {display: none;}
	.sp_only {display: block;}
	.pc_br {display: inline;}
	.sp_br {display: block;}
}

html {
    scroll-behavior: smooth;
}
body {
	background: #fff;
	width: 100%;
}
#lc_page {
	margin-bottom: 100px;
}

#lc_page h2:not(.jp),
#lc_page h3:not(.jp),
#lc_page h4:not(.jp) {
	font-family: 'Arboria';
	font-weight: bold;
	font-size: 42px;
	letter-spacing: 0.24em;
	color: #fff;
	text-align: center;
	text-shadow: 0 0 10px rgba(0, 0, 0, 0.15);
}

#lc_page img {
	width: 100%;
}
#lc_page a:hover {
	opacity: 0.7;
}
#lc_page p {
	font-size: 15px;
	line-height: 1.8;
}
#lc_page h1 {
	text-align: center;
	font-weight: bold;
	font-size: 30px;
	line-height: 1.3;
	letter-spacing: 0.04em;
}


/* =============================
 Main Visual
============================= */
#lc_page #mv {
	width: 100%;
	margin: 0 auto;
	position: relative;
}
#lc_page .mv_bg {
	display: block;
	opacity: 0;
	animation: fadein 0.8s ease-in-out 0.2s forwards;
}
#lc_page #mv .copy_area {
	position: absolute;
	width: 21%;
	top: 12%;
	left: 12.4%;
}
#lc_page #mv .copy_area .copy {
	display: block;
	opacity: 0;
	transform: translateY(20px);
	animation: fadeinUp 0.3s ease-in-out 0.9s forwards;
}
#lc_page #mv .copy_area .balloon {
	display: block;
	width: 21%;
	margin: 0 0 -4% 22%;
	transform: scale(0);
	transform-origin: bottom center;
	animation: scaleUp 0.3s ease-in-out 1.2s forwards;
}
#lc_page #mv .award {
	position: absolute;
	width: 17%;
	left: 8%;
	bottom: 3%;
	opacity: 0;
	animation: fadein 0.8s ease-in-out 1.4s forwards;
}
#lc_page #mv .mv_item_img {
	position: absolute;
	width: 23%;
	right: 4%;
	bottom: -4%;
	opacity: 0;
	animation: fadeinUp 0.8s ease-in-out 1.5s forwards;
}
@media only screen and (max-width: 768px) {
	#lc_page #mv .copy_area {
		width: 26%;
		top: 29%;
		left: 3%;
	}
	#lc_page #mv .copy_area .balloon {
		width: 30%;
		margin: 0 0 -4% 26%;
	}
	#lc_page #mv .award {
		width: 40%;
	}
}

/* Main下 Loop */
#lc_page .loop_animation {
	position: relative;
	margin: -1px 0 0 0;
	z-index: 1;
	width: 100%;
	overflow: hidden;
	display: flex;
	background: #d31973;
}
#lc_page .loop_animation img {
	width: auto;
	max-width: 3317px;
	height: 67px;
}
#lc_page .loop_animation img:first-child {
	animation: loop1 60s -30s linear infinite;
}
#lc_page .loop_animation img:last-child {
	animation: loop2 60s linear infinite;
}
@media only screen and (max-width: 768px) {
	#lc_page .loop_animation img {
		max-width: 1622px;
		height: 33px;
	}
}


/* =============================
 Main Contents
============================= */
#contents {
	background: url(../images/bg.png) repeat center center;
	background-size: 139px;
	padding: 80px 0 120px 0;
}
#contents > section {
	max-width: 1040px;
	width: 86%;
	margin: 0 auto;
}
@media only screen and (max-width: 768px) {
	#contents {
		background-size: 90px;
		padding: 30px 0 120px 0;
	}
}

/* Award / MV下 item画像 [SPのみ] */
@media only screen and (max-width: 768px) {
	.mv_below {
		position: relative;
		z-index: 10;
		display: flex;
		justify-content: center;
		align-items: flex-end;
		margin-top: -45%;
		width: 100%;
		overflow: hidden;
	}
	#contents .award {
		width: 42%;
		margin-bottom: 6%;
	}
	#contents .award.did {
		animation: fadein 0.6s ease-in-out 0s forwards;
	}
	#contents .mv_item_img {
		width: 58%;
		margin: 0 -10% 0 -4%;
	}
	#contents .mv_item_img.did {
		animation: fadein 0.6s ease-in-out 0.2s forwards;
	}
}



/* =============================
 CONCEPT
============================= */
#lc_page .concept {
	display: flex;
	justify-content: space-between;
	margin-bottom: 30px;
}
#lc_page .concept h1 {
	width: 31%;
	text-align: center;
}
#lc_page .concept h1.did {
	animation: fadein 0.6s ease-in-out 0s forwards;
}
#lc_page .concept h1 img {
	width: 86%;
}
#lc_page .text_area {
	width: 65%;
	background: #fff;
	border-radius: 16px;
	padding: 28px 40px 24px 40px;
	color: #d31973;
}
#lc_page .text_area.did {
	animation: fadein 0.6s ease-in-out 0.2s forwards;
}
#lc_page .text_area h2 {
	font-weight: bold;
	line-height: 1.4;
	margin-bottom: 6px;
	font-size: 23px;
}
#lc_page .text_area h2 sup {
	left: -0.8em;
	font-size: 60%;
}
#lc_page .text_area p {
	font-size: 14px;
}
#lc_page .text_area p.note {
	font-size: 10px;
	margin-top: 4px;
}
@media only screen and (min-width: 769px) {
	#lc_page .concept h1 {
		order: 2;
	}
	#lc_page .text_area {
		order: 1;
	}
}
@media only screen and (max-width: 768px) {
	#lc_page .concept {
		flex-direction: column;
	}
	#lc_page .concept h1 {
		position: relative;
		width: 100%;
		z-index: 2;
		margin-bottom: 30px;
	}
	#lc_page .concept h1 img {
		width: 76%;
	}
	#lc_page .text_area {
		position: relative;
		width: 100%;
		padding: 32px 26px 32px 26px;
		z-index: 1;
	}
	#lc_page .text_area h2 {
		font-size: 19px;
	}
	#lc_page .text_area p {
		font-size: 13px;
	}
	#lc_page .onlinestore_btn a {
		font-size: 22px;
	}
}



/* =============================
 LINEUP
============================= */
#lc_page .lineup {
	margin-top: 70px;
}
#lc_page .lineup .animation.move {
    animation: fadeinUp 0.6s ease-in-out forwards;
	animation-delay: calc(var(--delay) * 0.2s);
}
.lineup .flex {
	display: flex;
	align-items: flex-start;
	justify-content: space-between;
}
.itembox_with_btn {
	width: 31%;
}
.lineup .item_box {
	background: #ec749f;
	border-radius: 16px;
	padding: 36px 30px;
}
.lineup .item_box.liquid {
	margin-top: -70px;
}
.lineup .item_box.pencil {
	margin-top: 40px;
	width: 31%;
}
.lineup .appeal_area {
	margin-top: -70px;
}
.lineup .item_box h3 {
	font-size: 40px;
}
.lineup .item_box .jp_title {
	color: #fff;
	text-align: center;
	font-size: 10px;
	margin: 8px 0 28px 0;
}
.lineup .item_box .item {
	width: 44%;
}
.lineup .item_box .color {
	color: #fff;
	text-align: center;
	font-size: 10px;
	margin: 12px 0 28px 0;
}
.lineup .item_box .item_detail {
	color: #fff;
	text-align: center;
	font-size: 13px;
	line-height: 1.5;
}
.appeal_area {
	width: 31%;
	position: relative;
}
.appeal_area .swiper {
	margin-bottom: 36px;
}
.video_area {
    width: 100%;
    height: auto;
    position: relative;
}
.video_area video {
    width: 100%;
	aspect-ratio: 9 / 16;
	border-radius: 16px;
}
.onlinestore_btn a {
	display: block;
	text-align: center;
	width: 100%;
	background: #fff;
	padding: 24px 0;
	font-size: 27px;
	margin-top: 34px;
	border-radius: 16px;
}

/* --- ページ下部のLINEUP --- */
.lineup2 .flex {
	align-items: stretch;
}
.lineup2 .title_with_btn_area {
	width: 31%;
	display: flex;
	flex-direction: column;
	justify-content: space-between;
}
#lc_page .lineup2 h2 {
	margin: 50px 0 0 10px;
	font-size: 48px;
}
.lineup2 .logo {
	width: 86%;
	margin: 0 auto;
}
.lineup2 .item_box.liquid,
.lineup2 .item_box.pencil {
	margin-top: 0;
}

@media only screen and (max-width: 768px) {
	#lc_page .lineup {
		margin-top: 36px;
	}
	#lc_page .lineup .animation.move {
		animation-delay: 0s;
	}
	.lineup > .flex {
		flex-direction: column;
	}
	.lineup .appeal_area {
		width: 100%;
		margin-top: 0;
		order: 1;
	}
	.lineup h2 {
		width: 100%;
		margin: 36px 0;
		order: 2;
	}
	.itembox_with_btn {
		width: 100%;
		order: 3;
	}
	.lineup .item_box.liquid {
		margin-top: 0;
	}
	.lineup .item_box.pencil {
		margin-top: 24px;
		width: 100%;
		order: 4;
	}
	.onlinestore_btn {
		width: 100%;
		order: 5;
	}

	/* --- ページ下部のLINEUP --- */
	.lineup2 .title_with_btn_area {
		width: 100%;
	}
	#lc_page .lineup2 h2 {
		margin: 0 0 36px 0;
		font-size: 42px;
	}
	.lineup2 .item_box.liquid {
		margin-top: 0;
	}
	.lineup2 .item_box.pencil {
		margin-top: 24px;
	}
}



/* =============================
 HOW TO MAKE
============================= */
#lc_page .howto h2 {
	width: 31%;
	margin: -70px auto 0 auto;
	letter-spacing: 0.1em;
	font-size: 51px;
}
#lc_page .howto h2.move {
    animation: fadeinUp 0.6s ease-in-out forwards;
}

/* --- STYLE SAMPLE --- */
.howto .style1 {
	margin-top: -120px;
}
.howto h3 {
	width: 31%;
}
.howto h3.move {
    animation: fadein 0.6s ease-in-out 0.4s forwards;
}
.howto .style .flex {
	width: 100%;
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
	align-items: flex-end;
}
/* Swiper */
.howto .style .swiper {
	width: 65%;
	margin: 0;
}
.howto .style .swiper.move {
    animation: fadein 0.6s ease-in-out forwards;
}
.howto .style .swiper .swiper-pagination {
	text-align: left;
	padding: 0 12px 4px 12px;
}
.howto .style2 .swiper .swiper-pagination {
	text-align: right;
}
.howto .style .swiper .swiper-pagination .swiper-pagination-bullet {
	width: 15px;
	height: 15px;
	background: #fff;
	opacity: 1;
}
.howto .style1 .swiper .swiper-pagination .swiper-pagination-bullet-active {
	background: #ec749f;
}
.howto .style2 .swiper .swiper-pagination .swiper-pagination-bullet-active {
	background: #ddad8c;
}
/* USE ITEM */
.howto .style .item_info {
	width: 31%;
}
.howto .style .use_item.move {
    animation: fadeinUp 0.6s ease-in-out 0.2s forwards;
}
.howto .style .use_item h4 {
	width: 47%;
	margin: 0 auto 10px auto;
}
.howto .style .use_item .box {
	background: #ec749f;
	border-radius: 16px;
	padding: 24px 0 1px 0;
}
#lc_page .howto .style .use_item .box p {
	text-align: center;
	color: #fff;
	font-size: 12px;
	line-height: 1.4;
	margin: 4px 0 16px 0;
}
/* Make Steps */
#lc_page .howto .style .make_steps {
	position: relative;
	background: #fff;
	border-radius: 16px;
	padding: 36px 0 14px 0;
	margin-top: 32px;
}
#lc_page .howto .style .make_steps.move {
    animation: fadeinUp 0.6s ease-in-out 0.2s forwards;
}
#lc_page .howto .style .make_steps::before {
	content: "";
	position: absolute;
	left: -24px;
	top: 12%;
	transform: translateY(-50%);
	border-width: 12px 24px 12px 0;
	border-style: solid;
	border-color: transparent #fff transparent transparent;
}
#lc_page .howto .style2 .make_steps::before {
	left: auto;
	right: -24px;
	border-width: 12px 0 12px 24px;
	border-color: transparent transparent transparent #fff;
}
#lc_page .howto .style .make_steps h4 {
	color: #ec9abf;
	font-size: 28px;
	letter-spacing: 0.1em;
	text-shadow: none;
	margin-bottom: 24px;
}
#lc_page .howto .style .make_steps ol {
	width: 90%;
    margin: 0 auto;
    counter-reset: list;
}
#lc_page .howto .style .make_steps ol li {
	position: relative;
    padding-left: 30px;
    font-size: 11px;
    line-height: 1.6;
    margin-bottom: 20px;
    display: flex;
    align-items: center;
}
#lc_page .howto .style .make_steps ol li:before {
	counter-increment: list;
	content: counter(list);
	position: absolute;
	width: 30px;
	left: 0;
	font-family: 'Arboria';
	font-weight: bold;
	font-size: 38px;
	color: #ec9abf;
}
#lc_page .howto .style2 .make_steps h4,
#lc_page .howto .style2 .make_steps ol li:before {
	color: #ddad8c;
}
/* その他の使用アイテム */
#lc_page .howto .other {
	width: 65%;
	background: #fff;
	border-radius: 16px;
	padding: 15px 0 15px 10px;
	display: flex;
	align-items: center;
}
#lc_page .howto .other.move {
    animation: fadein 0.6s ease-in-out 0.2s forwards;
}
#lc_page .howto .style2 .other {
	margin-top: 36px;
}
#lc_page .howto .other h4 {
	font-size: 11px;
	width: 22%;
	text-align: center;
}
#lc_page .howto .other ul {
	font-size: 10px;
	flex: 1;
	border-left: 1px solid #ccc;
	padding-left: 2.4%;
}
#lc_page .howto .other ul li {
	margin: 8px 0;
}

.style_between {
	margin-top: 36px;
	display: flex;
	justify-content: space-between;
	align-items: flex-start;
}

@media only screen and (min-width: 769px) {
	#lc_page .howto .style1 .make_steps {
		padding: 36px 0 28px 0;
	}
	#lc_page .howto .style2 .make_steps ol li {
		margin-bottom: 14px;
	}
	.howto .style2 .swiper {
		order: 2;
	}
	.howto .style1 .item_info {
		order: 1;
	}
}
@media only screen and (max-width: 768px) {
	#lc_page .howto h2 {
		width: 100%;
		margin: 36px auto;
		font-size: 36px;
		letter-spacing: 0.08em;
	}
	.howto .style1 {
		margin-top: 0;
	}
	.howto h3 {
		width: 62%;
	}
	.howto .style .flex {
		flex-direction: column;
	}
	.howto .style .swiper {
		width: 100%;
		margin: 0;
	}
	.howto .style .item_info {
		width: 100%;
	}
	.howto .style .use_item h4 {
		width: 32%;
		margin: 20px auto 0 auto;
	}
	#lc_page .howto .style .make_steps::before,
	#lc_page .howto .style2 .make_steps::before {
		display: none;
	}
	#lc_page .howto .other {
		width: 100%;
		padding: 20px;
		flex-direction: column;
	}
	#lc_page .howto .style2 .other {
		margin-top: 36px;
	}
	#lc_page .howto .other h4 {
		width: 100%;
		padding-bottom: 16px;
		font-size: 12px;
	}
	#lc_page .howto .other ul {
		border-top: 1px solid #ccc;
		border-left: 0;
		padding-top: 8px;
		line-height: 1.4;
	}
	.style_between {
		margin-top: 36px;
		flex-direction: column;
	}
	.howto .style_between h3 {
		margin: 36px 0 0 auto;
	}	
	.howto .style .swiper .swiper-pagination .swiper-pagination-bullet{
		width: 10px;
		height: 10px;
	}
}



/* =============================
 SPEC
============================= */
#lc_page .spec .animation.move {
    animation: fadein 0.6s ease-in-out 0.2s forwards;
	animation-delay: calc(var(--delay) * 0.2s);
}
#lc_page .spec h2 {
	width: 31%;
	margin: -80px 0 50px auto;
	color: #d31973;
	letter-spacing: 0.1em;
	font-size: 74px;
	text-shadow: none;
}
#lc_page .spec h2.animation.move {
    animation: fadeinUp 0.6s ease-in-out 0.2s forwards;
}
.spec .flex {
	display: flex;
	justify-content: space-between;
	margin-bottom: 36px;
}
.spec .flex:nth-of-type(1),
.spec .flex:nth-of-type(3) {
	align-items: flex-end;
}
.box1,
.box6 {
	width: 65%;
}
.box2,
.box5,
.box9 {
	width: 31%;
}
.box4 {
	width: 48%;
}
.box3 {
	width: 48%;
	background: #f4a8cb;
	padding: 2.8%;
	border-radius: 20px;
}
.box7,
.box8 {
	width: 31%;
	background: #addaed;
	padding: 2.8%;
	border-radius: 20px;
	display: flex;
	flex-direction: column;
	justify-content: center;
}
#lc_page .spec h3 {
	text-align: center;
	margin-bottom: 24px;
}
#lc_page .spec h3.animation.move {
    animation: fadeinUp 0.6s ease-in-out forwards;
	animation-delay: calc(var(--delay) * 0.2s);
}
#lc_page .spec h3 img {
	width: 90%;
}
#lc_page .spec h4 {
	font-size: 20px;
	line-height: 1.3;
	font-weight: bold;
	color: #604019;
}
#lc_page .spec h4 strong {
	font-size: 1.15em;
	color: #fff;
}
#lc_page .spec h4 sup {
	font-size: 50%;
	top: -0.9em
}
#lc_page .spec p {
	color: #604019;
	font-size: 15px;
	margin-top: 10px;
	line-height: 1.6;
}
#lc_page .spec p.note {
	font-size: 10px;
}
#lc_page .box3 img {
	display: block;
	width: 90%;
	margin: 8px auto 0 auto;
}

@media only screen and (max-width: 768px) {
	#lc_page .spec .animation.move {
		animation-delay: 0s;
	}
	#lc_page .spec h2 {
		width: 100%;
		margin: 36px auto 30px auto;
		font-size: 40px;
	}
	.spec .flex {
		flex-direction: column;
	}
	.spec .flex:nth-of-type(1),
	.spec .flex:nth-of-type(3) {
		align-items: flex-end;
	}
	.box1,
	.box2,
	.box3,
	.box4,
	.box5,
	.box6,
	.box7,
	.box8,
	.box9 {
		width: 100%;
	}
	.box3,
	.box7,
	.box8 {
		padding: 30px;
	}
	.box8 {
		margin-top: 36px;
	}
	#lc_page .spec h2 {
		margin-bottom: 15px;
	}
	#lc_page .spec h3 {
		text-align: center;
		margin-bottom: 24px;
	}
	#lc_page .spec h3 img {
		width: 75%;
	}
	#lc_page .spec .scrollable {
		background: #fdeef5;
		border-radius: 16px;
  		overflow: hidden;
		margin-bottom: 36px;
	}
	#lc_page .spec .parts {
		width: 600px;
	}
	#lc_page .spec .box6 .scrollable {
		background: #f3fafc;
	}
	#lc_page .spec .box6 .parts {
		width: 460px;
	}
	.mCSB_scrollTools.mCSB_scrollTools_horizontal a + .mCSB_draggerContainer {
		margin: -12px 16px 16px 16px;
	}
	/* .mCS-rounded-dark.mCSB_scrollTools .mCSB_dragger .mCSB_dragger_bar,
	.mCS-rounded-dots-dark.mCSB_scrollTools .mCSB_dragger .mCSB_dragger_bar {
		background: #d31973;
	}
	.mCS-rounded-dark.mCSB_scrollTools .mCSB_dragger:active .mCSB_dragger_bar,
	.mCS-rounded-dark.mCSB_scrollTools .mCSB_dragger.mCSB_dragger_onDrag .mCSB_dragger_bar, 
	.mCS-rounded-dots-dark.mCSB_scrollTools .mCSB_dragger:active .mCSB_dragger_bar,
	.mCS-rounded-dots-dark.mCSB_scrollTools .mCSB_dragger.mCSB_dragger_onDrag .mCSB_dragger_bar { 
		background: #d31973;
		background-color: rgba(236,116,159,0.9);
	} */
	#lc_page .spec .features_icon {
		margin-bottom: 36px;
	}
	#lc_page .spec h4 {
		font-size: 16px;
	}
	#lc_page .spec p {
		font-size: 13px;
	}
}



/* =============================
 PARALLAX Image
============================= */
#parallax {
	max-width: 1040px;
	width: 86%;
	height: 400px;
	margin: 70px auto 0 auto;
	position: relative;
	overflow: hidden;
	border-radius: 16px;
}
#parallax #parallax_img {
	position: absolute;
	min-height: 1000px;
	top: -1700px;
}
@media only screen and (max-width: 768px) {
	#parallax_sp {
		width: 100%;
		margin: 70px auto;
		height: 60vh;
		position: relative;
		overflow: hidden;
	}
	#parallax_sp #parallax_img_sp {
		position: absolute;
		min-height: 100px;
		top: -1600px;
	}
}


