@charset "UTF-8";
/**
 * レスポンシブ時に、PCのみに適用させる。
 * @include pc{}
 */
/**
 * レスポンシブ時に、SPのみに適用させる。
 * @include sp{}
 */
/**
 * リキッドレスポンシブ時に、要素のvwを返す。
 * @param {number} $size デザインデータ上の縦横値
 * @param {number} $viewport デザインデータの横幅
 */
/* ------------------------------
 Ease
------------------------------ */
html {
	font-size: 10px;
}

@media (max-width: 1272px) {
	html {
		font-size: 0.78616vw;
	}
}

body {
	font-family: "Noto Sans SC",'Zen Kaku Gothic New', "Helvetica Neue", Arial, "Hiragino Kaku Gothic ProN", "Hiragino Sans", Meiryo, sans-serif;
	color: #181818;
	font-size: 1.6rem;
	font-weight: 200;
	line-height: 1.5;
}

@media only screen and (max-width: 768px) {
	body {
		font-size: 3.125vw;
	}
}

* {
	box-sizing: border-box;
}

.font-en {
	font-family: 'Crimson Text', serif;
}

@media only screen and (max-width: 768px) {
	.only-pc {
		display: none;
	}
}

@media only screen and (min-width: 769px) {
	.only-pc {
		display: block;
	}
}

@media only screen and (min-width: 769px) {
	.only-sp {
		display: none;
	}
}

@media only screen and (max-width: 768px) {
	.only-sp {
		display: block;
	}
}

img {
	max-width: 100%;
	height: auto;
	image-rendering: -webkit-optimize-contrast;
}

@media only screen and (min-width: 769px) {
	img.border-round {
		border-radius: 5px;
	}
}

@media only screen and (max-width: 768px) {
	img.border-round {
		border-radius: 1.30208vw;
	}
}

@media only screen and (min-width: 769px) {
	img.border-round-top {
		border-radius: 10px 10px 0 0;
	}
}

@media only screen and (max-width: 768px) {
	img.border-round-top {
		border-radius: 1.30208vw 1.30208vw 0 0;
	}
}

a {
	text-decoration: none;
}

.js-fadeInIO {
	opacity: 0;
	position: relative;
}

@media only screen and (min-width: 769px) {
	.js-fadeInIO {
		top: 40px;
		transition: 0.8s ease-out;
	}
}

@media only screen and (max-width: 768px) {
	.js-fadeInIO {
		top: 3.90625vw;
		transition: 0.6s ease-out;
	}
}

.js-fadeInIO.appered {
	opacity: 1;
	top: 0;
}

.js-fadeInIO.js-notY {
	top: 0;
}

.js-fadeInIO.js-lineup__kv {
	filter: brightness(1.4);
}

.js-fadeInIO.js-lineup__kv.appered {
	filter: brightness(1);
}

.js-fadeInIO.js-lineup__product {
	transform: translateY(40px);
	transition-delay: 0.4s;
}

.js-fadeInIO.js-lineup__product.appered {
	transform: translateY(0);
}

.lead__sec03__wrap01.js-fadeInIO,
.lead__sec03__wrap02.js-fadeInIO,
.lead__sec03__wrap03.js-fadeInIO {
	opacity: 1;
	position: relative;
	top: 0;
}

.lead__sec03__wrap01.js-fadeInIO .lead__sec03__block__info,
.lead__sec03__wrap02.js-fadeInIO .lead__sec03__block__info,
.lead__sec03__wrap03.js-fadeInIO .lead__sec03__block__info {
	opacity: 0;
	position: relative;
	transition: 1s ease-out;
}

.lead__sec03__wrap01.js-fadeInIO .lead__sec03__block__obj,
.lead__sec03__wrap02.js-fadeInIO .lead__sec03__block__obj,
.lead__sec03__wrap03.js-fadeInIO .lead__sec03__block__obj {
	opacity: 0;
	transition: 1s ease-out;
	transition-delay: 0.5s;
}

.lead__sec03__wrap01.js-fadeInIO.appered .lead__sec03__block__info,
.lead__sec03__wrap02.js-fadeInIO.appered .lead__sec03__block__info,
.lead__sec03__wrap03.js-fadeInIO.appered .lead__sec03__block__info {
	opacity: 1;
	top: 0;
}

.lead__sec03__wrap01.js-fadeInIO.appered .lead__sec03__block__obj,
.lead__sec03__wrap02.js-fadeInIO.appered .lead__sec03__block__obj,
.lead__sec03__wrap03.js-fadeInIO.appered .lead__sec03__block__obj {
	opacity: 1;
	top: 0;
}

.aside__wrap article.js-fadeInIO {
	opacity: 1;
	position: relative;
	top: 0;
}

.aside__wrap article.js-fadeInIO .section__title,
.aside__wrap article.js-fadeInIO .aside__wrap__contents__inner {
	opacity: 0;
	position: relative;
	transition: 1s ease-out;
}

.aside__wrap article.js-fadeInIO.appered .section__title,
.aside__wrap article.js-fadeInIO.appered .aside__wrap__contents__inner {
	opacity: 1;
	top: 0;
}

/**
 * レスポンシブ時に、PCのみに適用させる。
 * @include pc{}
 */
/**
 * レスポンシブ時に、SPのみに適用させる。
 * @include sp{}
 */
/**
 * リキッドレスポンシブ時に、要素のvwを返す。
 * @param {number} $size デザインデータ上の縦横値
 * @param {number} $viewport デザインデータの横幅
 */
/* ------------------------------
 Ease
------------------------------ */
/*! destyle.css v4.0.0 | MIT License | https://github.com/nicolas-cusan/destyle.css */
/* Reset box-model and set borders */
/* ============================================ */
*,
::before,
::after {
	box-sizing: border-box;
	border-style: solid;
	border-width: 0;
}

/* Document */
/* ============================================ */
/**
 * 1. Correct the line height in all browsers.
 * 2. Prevent adjustments of font size after orientation changes in iOS.
 * 3. Remove gray overlay on links for iOS.
 */
html {
	line-height: 1.15;
	/* 1 */
	-webkit-text-size-adjust: 100%;
	/* 2 */
	-webkit-tap-highlight-color: transparent;
	/* 3*/
	overscroll-behavior: none;
}

/* Sections */
/* ============================================ */
/**
 * Remove the margin in all browsers.
 */
body {
	margin: 0;
}

/**
 * Render the `main` element consistently in IE.
 */
main {
	display: block;
}

/* Vertical rhythm */
/* ============================================ */
p,
table,
blockquote,
address,
pre,
iframe,
form,
figure,
dl {
	margin: 0;
}

/* Headings */
/* ============================================ */
h1,
h2,
h3,
h4,
h5,
h6 {
	font-size: inherit;
	font-weight: inherit;
	margin: 0;
}

/* Lists (enumeration) */
/* ============================================ */
ul,
ol {
	margin: 0;
	padding: 0;
	list-style: none;
}

/* Lists (definition) */
/* ============================================ */
dt {
	font-weight: bold;
}

dd {
	margin-left: 0;
}

/* Grouping content */
/* ============================================ */
/**
 * 1. Add the correct box sizing in Firefox.
 * 2. Show the overflow in Edge and IE.
 */
hr {
	box-sizing: content-box;
	/* 1 */
	height: 0;
	/* 1 */
	overflow: visible;
	/* 2 */
	border-top-width: 1px;
	margin: 0;
	clear: both;
	color: inherit;
}

/**
 * 1. Correct the inheritance and scaling of font size in all browsers.
 * 2. Correct the odd `em` font sizing in all browsers.
 */
pre {
	font-family: monospace, monospace;
	/* 1 */
	font-size: inherit;
	/* 2 */
}

address {
	font-style: inherit;
}

/* Text-level semantics */
/* ============================================ */
/**
 * Remove the gray background on active links in IE 10.
 */
a {
	background-color: transparent;
	text-decoration: none;
	color: inherit;
}

/**
 * 1. Remove the bottom border in Chrome 57-
 * 2. Add the correct text decoration in Chrome, Edge, IE, Opera, and Safari.
 */
abbr[title] {
	text-decoration: underline dotted;
	/* 2 */
}

/**
 * Add the correct font weight in Chrome, Edge, and Safari.
 */
b,
strong {
	font-weight: bolder;
}

/**
 * 1. Correct the inheritance and scaling of font size in all browsers.
 * 2. Correct the odd `em` font sizing in all browsers.
 */
code,
kbd,
samp {
	font-family: monospace, monospace;
	/* 1 */
	font-size: inherit;
	/* 2 */
}

/**
 * Add the correct font size in all browsers.
 */
small {
	font-size: 80%;
}

/**
 * Prevent `sub` and `sup` elements from affecting the line height in
 * all browsers.
 */
sub,
sup {
	font-size: 60%;
	line-height: 0;
	position: relative;
	vertical-align: baseline;
}

sub {
	bottom: -0.25em;
}

sup {
	top: -0.45em;
	left: 0.1em;
}

/* Replaced content */
/* ============================================ */
/**
 * Prevent vertical alignment issues.
 */
svg,
img,
embed,
object,
iframe {
	vertical-align: bottom;
}

/* Forms */
/* ============================================ */
/**
 * Reset form fields to make them styleable.
 * 1. Make form elements stylable across systems iOS especially.
 * 2. Inherit text-transform from parent.
 */
button,
input,
optgroup,
select,
textarea {
	-webkit-appearance: none;
	/* 1 */
	appearance: none;
	vertical-align: middle;
	color: inherit;
	font: inherit;
	background: transparent;
	padding: 0;
	margin: 0;
	border-radius: 0;
	text-align: inherit;
	text-transform: inherit;
	/* 2 */
}

/**
 * Correct cursors for clickable elements.
 */
button,
[type="button"],
[type="reset"],
[type="submit"] {
	cursor: pointer;
}

button:disabled,
[type="button"]:disabled,
[type="reset"]:disabled,
[type="submit"]:disabled {
	cursor: default;
}

/**
 * Improve outlines for Firefox and unify style with input elements & buttons.
 */
:-moz-focusring {
	outline: auto;
}

select:disabled {
	opacity: inherit;
}

/**
 * Remove padding
 */
option {
	padding: 0;
}

/**
 * Reset to invisible
 */
fieldset {
	margin: 0;
	padding: 0;
	min-width: 0;
}

legend {
	padding: 0;
}

/**
 * Add the correct vertical alignment in Chrome, Firefox, and Opera.
 */
progress {
	vertical-align: baseline;
}

/**
 * Remove the default vertical scrollbar in IE 10+.
 */
textarea {
	overflow: auto;
}

/**
 * Correct the cursor style of increment and decrement buttons in Chrome.
 */
[type="number"]::-webkit-inner-spin-button,
[type="number"]::-webkit-outer-spin-button {
	height: auto;
}

/**
 * Correct the outline style in Safari.
 */
[type="search"] {
	outline-offset: -2px;
	/* 1 */
}

/**
 * Remove the inner padding in Chrome and Safari on macOS.
 */
[type="search"]::-webkit-search-decoration {
	-webkit-appearance: none;
}

/**
 * 1. Correct the inability to style clickable types in iOS and Safari.
 * 2. Fix font inheritance.
 */
::-webkit-file-upload-button {
	-webkit-appearance: button;
	/* 1 */
	font: inherit;
	/* 2 */
}

/**
 * Fix appearance for Firefox
 */
[type="number"] {
	-moz-appearance: textfield;
}

/**
 * Clickable labels
 */
label[for] {
	cursor: pointer;
}

/* Interactive */
/* ============================================ */
/*
 * Add the correct display in Edge, IE 10+, and Firefox.
 */
details {
	display: block;
}

/*
 * Add the correct display in all browsers.
 */
summary {
	display: list-item;
}

/*
 * Remove outline for editable content.
 */
[contenteditable]:focus {
	outline: auto;
}

/* Tables */
/* ============================================ */
/**
1. Correct table border color inheritance in all Chrome and Safari.
*/
table {
	border-color: inherit;
	/* 1 */
	border-collapse: collapse;
}

caption {
	text-align: left;
}

td,
th {
	vertical-align: top;
	padding: 0;
}

th {
	text-align: left;
	font-weight: bold;
}

/*------------*/
.header {
	position: fixed;
	top: 0;
	left: 0;
	width: 100%;
}

.header .header__logo {
	opacity: 0;
	transition: 0.2s;
}

.header .header__logo.appeared {
	opacity: 1;
}

.header.only-pc {
	background-color: rgba(246, 245, 240, 0.8);
	z-index: 111;
}

.header.only-pc .header__wrap {
	display: flex;
	align-items: center;
	justify-content: space-between;
	padding: 20px 40px 20px;
}

@media only screen and (min-width: 769px) {
	.header.only-pc .header__wrap {
		height: 120px;
	}
}

.header.only-pc .header__logo {
	margin-right: 10px;
	width: calc((190 / 1600) * 100%);
}

.header.only-pc .header__nav {
	display: flex;
	justify-content: flex-end;
}

.header.only-pc .header__nav li {
	color: #D75D73;
}

@media only screen and (min-width: 769px) {
	.header.only-pc .header__nav li {
		font-size: 1.6rem;
	}
}

.header.only-pc .header__nav li a {
	transition: 0.2s ease-out;
	letter-spacing: 0.1em;
	font-weight: 400;
}

.header.only-pc .header__nav li a:hover {
	opacity: 0.7;
}

.header.only-pc .header__nav li + li {
	margin-left: 20px;
}

.header.only-pc .header__right {
	display: flex;
	justify-content: flex-end;
	align-items: center;
	width: 100%;
}

.header.only-sp {
	background-color: rgba(246, 245, 240, 0.8);
	z-index: 100;
}

.header.only-sp .header__wrap {
	min-height: 18.22917vw;
	padding: 0 4.16667vw;
	display: flex;
	align-items: center;
	justify-content: space-between;
}

.header.only-sp .header__logo {
	width: 23.56771vw;
}

.header.only-sp .header__trigger {
	width: 6.25vw;
	height: 3.90625vw;
	cursor: pointer;
	position: relative;
	z-index: 9998;
}

.header.only-sp .header__trigger.open .header__trigger__wrap span {
	background-color: #fff;
}

.header.only-sp .header__trigger.open .header__trigger__wrap span:nth-of-type(1) {
	top: 50%;
	transform: rotate(45deg);
}

.header.only-sp .header__trigger.open .header__trigger__wrap span:nth-of-type(2) {
	opacity: 0;
}

.header.only-sp .header__trigger.open .header__trigger__wrap span:nth-of-type(3) {
	top: 50%;
	transform: rotate(-45deg);
}

.header.only-sp .header__trigger__wrap {
	width: 100%;
	height: 100%;
	position: relative;
}

.header.only-sp .header__trigger__wrap span {
	display: block;
	width: 100%;
	height: 1px;
	background-color: #D75D73;
	position: absolute;
	left: 0;
	transition: 0.2s;
}

.header.only-sp .header__trigger__wrap span:nth-of-type(1) {
	top: 0;
}

.header.only-sp .header__trigger__wrap span:nth-of-type(2) {
	top: 50%;
}

.header.only-sp .header__trigger__wrap span:nth-of-type(3) {
	top: 100%;
}

.header__menu {
	width: 100%;
	height: 100vh;
	position: fixed;
	top: -150%;
	left: 0;
	transition: 0.5s ease-out;
}

.header__menu.open {
	top: 0;
}

.header__menu .header__menu__bg {
	width: 100%;
	height: 100%;
	position: relative;
}

.header__menu .header__menu__bg::after {
	content: "";
	display: block;
	width: calc((205 / 750) * 100%);
	height: 100%;
	background-image: url(../img/bg_menu.jpg);
	background-repeat: no-repeat;
	background-size: cover;
	background-position: center;
	position: absolute;
	top: 0;
	left: 0;
}

.header__menu .header__menu__contents {
	display: flex;
	justify-content: flex-end;
	width: 100%;
	height: 100%;
}

.header__menu .header__menu__contents__inner {
	background-color: #D75D73;
	width: calc((547 / 750) * 100%);
	height: 100%;
	display: flex;
}

.header__menu .header__menu__contents__inner__wrap {
	padding-left: 7.8125vw;
}

.header__menu .header__menu__contents__inner__wrap.appeared .header__menu__logo {
	opacity: 1;
	transform: translateY(0);
	transition: 0.7s ease-out;
	transition-delay: 0.5s;
}

.header__menu .header__menu__contents__inner__wrap.appeared .header__menu__list li {
	transition: 0.8s ease-out;
	opacity: 1;
	transform: translateY(0);
}

.header__menu .header__menu__contents__inner__wrap.appeared .header__menu__list li:nth-of-type(1) {
	transition-delay: 0.6s;
}

.header__menu .header__menu__contents__inner__wrap.appeared .header__menu__list li:nth-of-type(2) {
	transition-delay: 0.63s;
}

.header__menu .header__menu__contents__inner__wrap.appeared .header__menu__list li:nth-of-type(3) {
	transition-delay: 0.66s;
}

.header__menu .header__menu__contents__inner__wrap.appeared .header__menu__list li:nth-of-type(4) {
	transition-delay: 0.69s;
}

.header__menu .header__menu__logo {
	margin-bottom: 15.625vw;
	margin-top: 27.99479vw;
	width: 30.85938vw;
	opacity: 0;
}

.header__menu .header__menu__list li {
	opacity: 0;
}

.header__menu .header__menu__list li a {
	color: #fff;
	font-size: 3.64583vw;
	line-height: calc(36 / 28);
	letter-spacing: 0.05em;
	font-weight: 400;
}

.header__menu .header__menu__list li + li {
	margin-top: 7.8125vw;
}

.header__menu .header__menu__sns__label {
	font-size: 4.16667vw;
	color: #fff;
	margin-bottom: 4.6875vw;
}

.header__menu .header__menu__sns {
	margin-top: 15.625vw;
}

.header__menu .header__menu__sns__icons {
	display: flex;
}

.header__menu .header__menu__sns__icons a {
	display: block;
	width: 6.25vw;
}

.header__menu .header__menu__sns__icons a + a {
	margin-left: 7.8125vw;
}

/*-------------*/
/*-KV---*/
.kv {
	background-color: #F6F5F0;
	position: relative;
	z-index: 20;
	overflow: hidden;
}

@media only screen and (min-width: 769px) {
	.kv {
		padding-top: 120px;
	}
}

@media only screen and (max-width: 768px) {
	.kv {
		padding-top: 18.22917vw;
	}
}

.kv .js-fadein {
	transform: translate(0, 20px);
	opacity: 0;
	transition: 0.4s ease-out;
}

.kv .js-fadein.appeared {
	opacity: 1 !important;
	transform: translate(0, 0) !important;
}

.kv .js-fadein.kv__copy__logo {
	transition: 1.5s ease-out;
}

.kv .js-fadein.kv__copy__text {
	transition: 2s ease-out;
}

.kv .js-fadein.kv__scroll {
	transition: 1.5s ease-out;
}

.kv .js-fadein.kv__img {
	transition: 2.5s cubic-bezier(0.19, 1, 0.22, 1);
	transform: translate(30px, 0);
	overflow: hidden;
	border-radius: 5px 0 0 5px;
}

@media only screen and (min-width: 769px) {
	.kv .js-fadein.kv__img {
		max-height: calc(100vh - 130px);
	}
}

.kv .js-fadein.kv__img img {
	transition: 2.5s ease-out;
	transform: scale(1.1);
	filter: blur(10px) brightness(1.3);
}

@media only screen and (min-width: 769px) {
	.kv .js-fadein.kv__img img {
		max-height: calc(100vh - 130px);
		object-fit: cover;
		width: 100%;
	}
}

.kv .js-fadein.kv__img.appeared {
	opacity: 1 !important;
	transform: translate(0, 0) !important;
}

.kv .js-fadein.kv__img.appeared img {
	transform: scale(1);
	filter: blur(0px) brightness(1);
}

.kv__wrap {
	display: flex;
	justify-content: space-between;
}

@media only screen and (min-width: 769px) {
	.kv__wrap {
		padding-bottom: calc((200 / 1272) * 100%);
	}
}

@media only screen and (max-width: 768px) {
	.kv__wrap {
		padding-bottom: 28.77604vw;
	}
}

@media only screen and (min-width: 769px) {
	.kv__left {
		margin-left: calc((100 / 1600) * 100%);
		width: calc((300 / 1600) * 100%);
		margin-top: calc((120 / 1600) * 100%);
		position: relative;
	}
}

@media only screen and (max-width: 768px) {
	.kv__left {
		margin-top: 35.15625vw;
		margin-left: calc((40 / 750) * 100%);
		width: calc((240 / 750) * 100%);
	}
}

.kv__left .kv__copy {
	text-align: center;
}

.kv__left .kv__copy__logo {
	width: 100%;
}

.kv__left .kv__copy__text {
	margin-left: auto;
	margin-right: auto;
}

@media only screen and (min-width: 769px) {
	.kv__left .kv__copy__text {
		margin-top: calc((80 / 300) * 100%);
		width: calc((296 / 300) * 100%);
	}
}

@media only screen and (max-width: 768px) {
	.kv__left .kv__copy__text {
		margin-top: 9.375vw;
		width: calc((300 / 300) * 100%);
	}
}

.kv__left .kv__scroll {
	text-align: center;
	margin-left: auto;
	margin-right: auto;
}

@media only screen and (min-width: 769px) {
	.kv__left .kv__scroll {
		margin-top: calc((190 / 300) * 100%);
		width: calc((48 / 300) * 100%);
		position: absolute;
		bottom: 0;
		left: 41%;
	}
}

@media only screen and (max-width: 768px) {
	.kv__left .kv__scroll {
		margin-top: 23.4375vw;
		width: 10.02604vw;
	}
}

.kv__left .kv__scroll img {
	width: 100%;
}

@media only screen and (min-width: 769px) {
	.kv__right {
		width: calc((1102 / 1600) * 100%);
	}
}

@media only screen and (max-width: 768px) {
	.kv__right {
		width: calc((430 / 750) * 100%);
	}
}

.kv__right .kv__img img {
	width: 100%;
}

/*----*/
/*---lead--*/
.lead {
	background-color: #F6F5F0;
	position: relative;
	z-index: 20;
}

.lead__wrap {
	overflow: hidden;
}

@media only screen and (min-width: 769px) {
	.lead__wrap {
		padding-bottom: calc((240 / 1272) * 100%);
	}
}

@media only screen and (max-width: 768px) {
	.lead__wrap {
		padding-bottom: 30.59896vw;
	}
}

.lead__sec01 {
	max-width: 1272px;
	margin-left: auto;
	margin-right: auto;
}

@media only screen and (min-width: 769px) {
	.lead__sec01 {
		display: flex;
		flex-direction: row-reverse;
		justify-content: center;
		align-items: flex-end;
	}
}

@media only screen and (max-width: 768px) {
	.lead__sec01 {
		max-width: 1272px;
		margin-left: auto;
		margin-right: auto;
	}
}

@media only screen and (max-width: 768px) and (min-width: 769px) {
	.lead__sec01 {
		padding: 0 16px;
	}
}

@media only screen and (max-width: 768px) and (max-width: 768px) {
	.lead__sec01 {
		padding: 0 4.16667vw;
	}
}

@media only screen and (min-width: 769px) {
	.lead__sec01__img {
		width: calc((606 / 1272) * 100%);
		margin-right: 10.4rem;
	}
}

@media only screen and (max-width: 768px) {
	.lead__sec01__img {
		text-align: center;
		width: 76.04167vw;
		margin-left: auto;
		margin-right: auto;
	}
}

.lead__sec01__text {
	position: relative;
	letter-spacing: 0.05em;
}

@media only screen and (min-width: 769px) {
	.lead__sec01__text {
		font-size: 2.4rem;
		line-height: 3;
		padding-bottom: 20px;
		margin-right: calc((48 / 1600) * 100%);
		margin-left: calc((105 / 1600) * 100%);
	}
}

@media only screen and (max-width: 768px) {
	.lead__sec01__text {
		margin-top: 10.67708vw;
		font-size: 3.64583vw;
		line-height: calc(72 / 28);
		text-align: center;
	}
}

.lead__sec01__text strong {
	color: #D75D73;
	font-weight: 300;
}

.lead__sec02 {
	max-width: 1272px;
	margin-left: auto;
	margin-right: auto;
}

@media only screen and (min-width: 769px) {
	.lead__sec02 {
		padding-top: calc((150 / 1272) * 100%);
	}
}

@media only screen and (max-width: 768px) {
	.lead__sec02 {
		padding-top: 10.9375vw;
	}
}

@media only screen and (min-width: 769px) {
	.lead__sec02__wrap {
		display: flex;
		justify-content: space-between;
		flex-direction: row-reverse;
	}
}

@media only screen and (max-width: 768px) {
	.lead__sec02__wrap {
		max-width: 1272px;
		margin-left: auto;
		margin-right: auto;
	}
}

@media only screen and (max-width: 768px) and (min-width: 769px) {
	.lead__sec02__wrap {
		padding: 0 16px;
	}
}

@media only screen and (max-width: 768px) and (max-width: 768px) {
	.lead__sec02__wrap {
		padding: 0 4.16667vw;
	}
}

@media only screen and (min-width: 769px) {
	.lead__sec02__right {
		width: calc((536 / 1272) * 100%);
		margin-right: 15px;
	}
}

@media only screen and (max-width: 768px) {
	.lead__sec02__right {
		text-align: center;
	}
}

@media only screen and (min-width: 769px) {
	.lead__sec02__right_img {
		max-width: calc((392 / 536) * 100%);
		width: 392px;
		margin-right: 0;
		margin-left: auto;
	}
}

@media only screen and (max-width: 768px) {
	.lead__sec02__right_img {
		width: 76.17188vw;
		margin-left: auto;
		margin-right: auto;
	}
}

@media only screen and (min-width: 769px) {
	.lead__sec02__right_text {
		text-align: right;
		font-size: 2.4rem;
		letter-spacing: 0.03em;
		line-height: 3;
		margin-right: calc((103 / 536) * 100%);
		margin-top: calc((170 / 536) * 100%);
	}
}

@media only screen and (max-width: 768px) {
	.lead__sec02__right_text {
		margin-top: 10.9375vw;
		font-size: 3.64583vw;
		line-height: calc(72 / 28);
		text-align: center;
		letter-spacing: 0.05em;
	}
}

.lead__sec02__right_text strong {
	font-weight: 300;
	color: #D75D73;
}

@media only screen and (min-width: 769px) {
	.lead__sec02__left {
		padding-top: calc((240 / 1272) * 100%);
		width: 604px;
		max-width: calc((604 / 1272) * 100%);
		margin-left: 16px;
	}
}

@media only screen and (max-width: 768px) {
	.lead__sec02__left {
		padding-top: 10.9375vw;
	}
}

@media only screen and (max-width: 768px) {
	.lead__sec02__left_img {
		text-align: center;
		width: 76.17188vw;
		margin-left: auto;
		margin-right: auto;
	}
}

@media only screen and (min-width: 769px) {
	.lead__sec02__left_text {
		margin-top: 22%;
	}
}

@media only screen and (max-width: 768px) {
	.lead__sec02__left_text {
		margin-top: 10.9375vw;
	}
}

@media only screen and (min-width: 769px) {
	.lead__sec02__left_text p {
		font-size: 2.4rem;
		letter-spacing: 0.03em;
		line-height: 3;
	}
}

@media only screen and (max-width: 768px) {
	.lead__sec02__left_text p {
		text-align: center;
		margin-top: 3.125vw;
		font-size: 3.64583vw;
		line-height: calc(72 / 28);
		text-align: center;
		letter-spacing: 0.05em;
	}
}

@media only screen and (min-width: 769px) {
	.lead__sec02__left_text p + p {
		margin-top: calc((110 / 604) * 100%);
	}
}

@media only screen and (max-width: 768px) {
	.lead__sec02__left_text p + p {
		margin-top: 13.02083vw;
	}
}

.lead__sec02__left_text p + p span {
	color: #D75D73;
	background-color: #fff;
	border-radius: 999px;
	display: inline-block;
	margin-right: 10px;
	line-height: 0.8;
}

@media only screen and (min-width: 769px) {
	.lead__sec02__left_text p + p span {
		padding: 12px 15px 14px 18px;
	}
}

@media only screen and (max-width: 768px) {
	.lead__sec02__left_text p + p span {
		padding: 2.47396vw 1.43229vw 2.47396vw 1.69271vw;
	}
}

@media only screen and (max-width: 768px) {
	.lead__sec03 {
		margin-top: 9.375vw;
	}
}

.lead__sec03 .lead__sec03__wrap01 {
	display: flex;
	justify-content: flex-end;
	max-width: 1272px;
	margin-left: auto;
	margin-right: auto;
	position: relative;
}

@media only screen and (min-width: 769px) {
	.lead__sec03 .lead__sec03__wrap01 {
		padding: 0 16px;
	}
}

@media only screen and (max-width: 768px) {
	.lead__sec03 .lead__sec03__wrap01 {
		padding: 0 4.16667vw;
	}
}

@media only screen and (min-width: 769px) {
	.lead__sec03 .lead__sec03__wrap01 {
		margin-top: 1vw;
		padding-top: calc((60 / 1272) * 100%);
	}
}

@media only screen and (max-width: 768px) {
	.lead__sec03 .lead__sec03__wrap01 {
		padding: 0 8.20312vw;
	}
}

.lead__sec03 .lead__sec03__wrap02 {
	display: flex;
	max-width: 1272px;
	margin-left: auto;
	margin-right: auto;
	position: relative;
}

@media only screen and (min-width: 769px) {
	.lead__sec03 .lead__sec03__wrap02 {
		padding: 0 16px;
	}
}

@media only screen and (max-width: 768px) {
	.lead__sec03 .lead__sec03__wrap02 {
		padding: 0 4.16667vw;
	}
}

@media only screen and (min-width: 769px) {
	.lead__sec03 .lead__sec03__wrap02 {
		margin-top: -13vw;
		padding-top: calc((140 / 1272) * 100%);
	}
}

@media only screen and (max-width: 768px) {
	.lead__sec03 .lead__sec03__wrap02 {
		padding: 0 8.20312vw;
	}
}

.lead__sec03 .lead__sec03__wrap03 {
	display: flex;
	justify-content: flex-end;
	max-width: 1272px;
	margin-left: auto;
	margin-right: auto;
	position: relative;
}

@media only screen and (min-width: 769px) {
	.lead__sec03 .lead__sec03__wrap03 {
		padding: 0 16px;
	}
}

@media only screen and (max-width: 768px) {
	.lead__sec03 .lead__sec03__wrap03 {
		padding: 0 4.16667vw;
	}
}

@media only screen and (min-width: 769px) {
	.lead__sec03 .lead__sec03__wrap03 {
		margin-top: -10.2vw;
		padding-top: calc((68 / 1272) * 100%);
	}
}

@media only screen and (max-width: 768px) {
	.lead__sec03 .lead__sec03__wrap03 {
		padding: 0 8.20312vw;
	}
}

.lead__sec03 .lead__sec03__block__obj {
	position: absolute;
	z-index: 0;
	transition-delay: 0.5s;
}

.lead__sec03 .lead__sec03__block {
	position: relative;
}

@media only screen and (min-width: 769px) {
	.lead__sec03 .lead__sec03__block {
		width: calc((604 / 1272) * 100%);
	}
}

@media only screen and (max-width: 768px) {
	.lead__sec03 .lead__sec03__block {
		width: 81.77083vw;
		margin-left: auto;
		margin-right: auto;
	}
}

.lead__sec03 .lead__sec03__block dt {
	background-position: center left;
	background-repeat: no-repeat;
}

@media only screen and (min-width: 769px) {
	.lead__sec03 .lead__sec03__block dt {
		background-size: 10% 80%;
	}
}

.lead__sec03 .lead__sec03__block dt span {
	font-weight: 400;
	color: #D75D73;
}

@media only screen and (min-width: 769px) {
	.lead__sec03 .lead__sec03__block dt span {
		font-size: 4rem;
		line-height: calc(54 / 40);
		padding-left: calc((80 / 556) * 100%);
		position: relative;
		top: -1px;
	}
}

@media only screen and (max-width: 768px) {
	.lead__sec03 .lead__sec03__block dt span {
		font-size: 5.72917vw;
		line-height: calc(60 / 44);
		padding-left: 13.02083vw;
	}
}

@media only screen and (min-width: 769px) {
	.lead__sec03 .lead__sec03__block dd {
		margin-top: calc((24 / 556) * 100%);
	}
}

@media only screen and (max-width: 768px) {
	.lead__sec03 .lead__sec03__block dd {
		margin-top: 4.6875vw;
	}
}

.lead__sec03 .lead__sec03__block dd p {
	letter-spacing: 0.05em;
	position: relative;
	z-index: 22;
}

@media only screen and (min-width: 769px) {
	.lead__sec03 .lead__sec03__block dd p {
		text-shadow: 2px 2px 0 #F6F5F0, -2px -2px 0 #F6F5F0, -2px 2px 0 #F6F5F0, 2px -2px 0 #F6F5F0, 0px 2px 0 #F6F5F0, 0 -2px 0 #F6F5F0, -2px 0 0 #F6F5F0, 2px 0 0 #F6F5F0;
	}
}

@media only screen and (max-width: 768px) {
	.lead__sec03 .lead__sec03__block dd p {
		text-shadow: 0 0 3px #F6F5F0, 0 0 3px #F6F5F0, 0 0 3px #F6F5F0, 0 0 3px #F6F5F0;
	}
}

@media only screen and (min-width: 769px) {
	.lead__sec03 .lead__sec03__block dd p {
		font-size: 2rem;
		line-height: 1.8;
	}
}

@media only screen and (max-width: 768px) {
	.lead__sec03 .lead__sec03__block dd p {
		font-size: 3.38542vw;
		line-height: calc(48 / 26);
	}
}

.lead__sec03 .lead__sec03__block dd .point {
	color: #D75D73;
	letter-spacing: 0.05em;
	text-align: center;
	background-color: rgba(255, 255, 255, 0.7);
	border-radius: 999px;
	position: relative;
	z-index: 22;
	font-weight: 400;
	white-space: nowrap;
}

@media only screen and (min-width: 769px) {
	.lead__sec03 .lead__sec03__block dd .point {
		margin-top: calc((24 / 556) * 100%);
		font-size: 2.4rem;
		line-height: calc(40 / 24);
		padding: calc((18 / 556) * 100%) 0;
	}
}

@media only screen and (max-width: 768px) {
	.lead__sec03 .lead__sec03__block dd .point {
		margin-top: 4.94792vw;
		font-size: 4.16667vw;
		line-height: calc(48 / 32);
		padding: 3.125vw 0;
	}
}

@media only screen and (max-width: 768px) {
	.lead__sec03 .lead__sec03__block.block01 {
		padding-top: 18.88021vw;
	}
}

@media only screen and (min-width: 769px) {
	.lead__sec03 .lead__sec03__block.block01 .lead__sec03__block__obj {
		width: calc((200 / 556) * 100%);
		top: -39%;
		right: -3%;
	}
}

@media only screen and (max-width: 768px) {
	.lead__sec03 .lead__sec03__block.block01 .lead__sec03__block__obj {
		width: 27.34375vw;
		top: 7.16146vw;
		right: -7.16146vw;
	}
}

.lead__sec03 .lead__sec03__block.block01 dt {
	background-image: url(../img/lead/num_01.svg);
}

@media only screen and (max-width: 768px) {
	.lead__sec03 .lead__sec03__block.block02 {
		padding-top: 18.22917vw;
		margin-top: 3.90625vw;
	}
}

@media only screen and (min-width: 769px) {
	.lead__sec03 .lead__sec03__block.block02 .lead__sec03__block__obj {
		width: calc((200 / 556) * 100%);
		top: -33%;
		right: -3%;
	}
}

@media only screen and (max-width: 768px) {
	.lead__sec03 .lead__sec03__block.block02 .lead__sec03__block__obj {
		width: 27.34375vw;
		top: 16.92708vw;
		right: -7.16146vw;
	}
}

.lead__sec03 .lead__sec03__block.block02 dt {
	background-image: url(../img/lead/num_02.svg);
}

@media only screen and (min-width: 769px) {
	.lead__sec03 .lead__sec03__block.block03 {
		margin-top: calc((60 / 1272) * 100%);
	}
}

@media only screen and (max-width: 768px) {
	.lead__sec03 .lead__sec03__block.block03 {
		padding-top: 18.22917vw;
		margin-top: 7.8125vw;
	}
}

@media only screen and (min-width: 769px) {
	.lead__sec03 .lead__sec03__block.block03 .lead__sec03__block__obj {
		width: calc((200 / 556) * 100%);
		top: -49%;
		right: -3%;
	}
}

@media only screen and (max-width: 768px) {
	.lead__sec03 .lead__sec03__block.block03 .lead__sec03__block__obj {
		width: 27.34375vw;
		top: 6.25vw;
		right: -6.77083vw;
	}
}

.lead__sec03 .lead__sec03__block.block03 dt {
	background-image: url(../img/lead/num_03.svg);
}

/*------*/
/*--Lineup--*/
.lineup {
	position: relative;
	z-index: 10;
	background-color: #F6F5F0;
}

.lineup .section__title__wrap {
	max-width: 1272px;
	margin-left: auto;
	margin-right: auto;
}

@media only screen and (min-width: 769px) {
	.lineup .section__title__wrap {
		padding: 0 16px;
	}
}

@media only screen and (max-width: 768px) {
	.lineup .section__title__wrap {
		padding: 0 4.16667vw;
	}
}

.lineup .section__title {
	background-image: url(../img/headline_testure.jpg);
	background-position: 50% 50%;
	color: rgba(0, 0, 0, 0);
	/*テキストは透過させる*/
	-webkit-background-clip: text;
	/*背景をテキストでマスクする*/
}

.lineup .section__title__bg__blend__inner {
	max-width: 1272px;
	margin-left: auto;
	margin-right: auto;
}

@media only screen and (min-width: 769px) {
	.lineup .section__title__bg__blend__inner {
		padding: 0 16px;
	}
}

@media only screen and (max-width: 768px) {
	.lineup .section__title__bg__blend__inner {
		padding: 0 4.16667vw;
	}
}

.lineup .section__subtitle {
	background-color: #F6F5F0;
	position: relative;
	z-index: 11;
}

.lineup .section__subtitle .section__subtitle__inner {
	display: block;
	max-width: 1272px;
	margin-left: auto;
	margin-right: auto;
}

@media only screen and (min-width: 769px) {
	.lineup .section__subtitle .section__subtitle__inner {
		padding: 0 16px;
	}
}

@media only screen and (max-width: 768px) {
	.lineup .section__subtitle .section__subtitle__inner {
		padding: 0 4.16667vw;
	}
}

.lineup__kv {
	position: relative;
}

@media only screen and (min-width: 769px) {
	.lineup__kv {
		padding-top: calc((48 / 1272) * 100%) !important;
		max-width: 1272px;
		margin-left: auto;
		margin-right: auto;
	}
}

@media only screen and (min-width: 769px) and (min-width: 769px) {
	.lineup__kv {
		padding: 0 16px;
	}
}

@media only screen and (min-width: 769px) and (max-width: 768px) {
	.lineup__kv {
		padding: 0 4.16667vw;
	}
}

@media only screen and (max-width: 768px) {
	.lineup__kv {
		padding-top: 7.8125vw;
	}
}

.lineup__kv .lineup__kv__product {
	position: absolute;
}

@media only screen and (min-width: 769px) {
	.lineup__info__wrap {
		max-width: 1272px;
		margin-left: auto;
		margin-right: auto;
	}
}

@media only screen and (min-width: 769px) and (min-width: 769px) {
	.lineup__info__wrap {
		padding: 0 16px;
	}
}

@media only screen and (min-width: 769px) and (max-width: 768px) {
	.lineup__info__wrap {
		padding: 0 4.16667vw;
	}
}

.lineup__info {
	background-color: #fff;
}

@media only screen and (min-width: 769px) {
	.lineup__info {
		padding-top: calc((48 / 1272) * 100%);
		padding-bottom: calc((48 / 1272) * 100%);
		padding-left: calc((104 / 1272) * 100%);
		padding-right: calc((104 / 1272) * 100%);
	}
}

@media only screen and (max-width: 768px) {
	.lineup__info {
		padding: 9.375vw 8.72396vw 6.25vw;
	}
}

.lineup__info .lineup__info__title {
	color: #D75D73;
	font-weight: 400;
}

@media only screen and (min-width: 769px) {
	.lineup__info .lineup__info__title {
		font-size: 4rem;
		line-height: calc(54 / 40);
	}
}

@media only screen and (max-width: 768px) {
	.lineup__info .lineup__info__title {
		font-size: 5.72917vw;
		line-height: calc(60 / 44);
	}
}

	.lineup__info__subtitle{
		    background: #d75d73;
    		display: inline-block;
    		color: #fff;
    		padding: 5px 10px;
    		border-radius: 100px;
    		margin-top: 20px;
}

.lineup__info .lineup__info__desc {
	letter-spacing: 0.05em;
}

@media only screen and (min-width: 769px) {
	.lineup__info .lineup__info__desc {
		margin-top: calc((36 / 1272) * 100%);
		font-size: 2rem;
		line-height: calc(36 / 20);
	}
}

@media only screen and (max-width: 768px) {
	.lineup__info .lineup__info__desc {
		margin-top: 4.6875vw;
		font-size: 3.38542vw;
		line-height: calc(48 / 26);
	}
}

.lineup__info .lineup__spec {
	letter-spacing: 0.05em;
	color: #D75D73;
}

@media only screen and (min-width: 769px) {
	.lineup__info .lineup__spec {
		margin-top: calc((36 / 1272) * 100%);
		font-size: 2rem;
		line-height: calc(36 / 20);
		display: flex;
		align-items: flex-end;
		justify-content: space-between;
	}
}

@media only screen and (max-width: 768px) {
	.lineup__info .lineup__spec {
		margin-top: 4.6875vw;
		font-size: 3.38542vw;
		line-height: calc(48 / 26);
	}
}

.lineup__info .lineup__spec dl {
	border-left: 1px solid #D75D73;
}

@media only screen and (min-width: 769px) {
	.lineup__info .lineup__spec dl {
		padding-left: calc((36 / 1272) * 100%);
	}
}

@media only screen and (max-width: 768px) {
	.lineup__info .lineup__spec dl {
		padding-left: 4.6875vw;
	}
}

.lineup__info .lineup__spec dt {
	font-weight: 400;
}

@media only screen and (min-width: 769px) {
	.lineup__howto {
		margin-top: calc((88 / 1272) * 100%);
	}
}

@media only screen and (max-width: 768px) {
	.lineup__howto {
		margin-top: 11.71875vw;
	}
}

.lineup__howto .lineup__howto__title {
	color: #D75D73;
	position: relative;
}

@media only screen and (min-width: 769px) {
	.lineup__howto .lineup__howto__title {
		font-size: 2.6rem;
		font-weight: 600;
		margin-bottom: calc((28 / 1056) * 100%);
	}
}

@media only screen and (max-width: 768px) {
	.lineup__howto .lineup__howto__title {
		font-size: 4.16667vw;
		font-weight: 600;
		margin-bottom: 4.29688vw;
	}
}

.lineup__howto .lineup__howto__title span {
	background-color: #fff;
	position: relative;
	z-index: 21;
}

@media only screen and (min-width: 769px) {
	.lineup__howto .lineup__howto__title span {
		padding-right: calc((88 / 1272) * 100%);
	}
}

@media only screen and (max-width: 768px) {
	.lineup__howto .lineup__howto__title span {
		padding-right: 4.6875vw;
	}
}

.lineup__howto .lineup__howto__title::after {
	content: "";
	display: block;
	width: 100%;
	height: 1px;
	background-color: #D75D73;
	position: absolute;
	top: 50%;
	transform: translateY(-50%);
	right: 0;
	z-index: 20;
}

@media only screen and (min-width: 769px) {
	.lineup__howto dl {
		display: flex;
		justify-content: space-between;
	}
}

.lineup__howto dl .lineup__howto__block {
	text-align: center;
	position: relative;
}

@media only screen and (min-width: 769px) {
	.lineup__howto dl .lineup__howto__block {
		width: calc((284 / 1056) * 100%);
	}
}

@media only screen and (max-width: 768px) {
	.lineup__howto dl .lineup__howto__block {
		display: flex;
		align-items: center;
	}
}

@media only screen and (max-width: 768px) {
	.lineup__howto dl .lineup__howto__block dt {
		width: 20.83333vw;
	}
}

@media only screen and (max-width: 768px) {
	.lineup__howto dl .lineup__howto__block dd {
		width: calc(100% - 20.83333vw);
	}
}

@media only screen and (min-width: 769px) {
	.lineup__howto dl .lineup__howto__block:not(:nth-of-type(2)) dt {
		width: calc((180 / 282) * 100%);
		margin-left: auto;
		margin-right: auto;
	}
}

@media only screen and (max-width: 768px) {
	.lineup__howto dl .lineup__howto__block:not(:last-of-type) {
		margin-bottom: 10.41667vw;
	}
}

.lineup__howto dl .lineup__howto__block:not(:last-of-type)::after {
	content: "";
	display: block;
	background-repeat: no-repeat;
	background-size: contain;
	position: absolute;
}

@media only screen and (min-width: 769px) {
	.lineup__howto dl .lineup__howto__block:not(:last-of-type)::after {
		background-image: url(../img/icn_step_arrow.svg);
		width: calc((37 / 284) * 100%);
		height: calc((33 / 284) * 100%);
		top: 50%;
		transform: translateY(-50%);
		right: -16%;
	}
}

@media only screen and (max-width: 768px) {
	.lineup__howto dl .lineup__howto__block:not(:last-of-type)::after {
		background-image: url(../img/icn_step_arrow_v.svg);
		width: 4.29688vw;
		height: 4.81771vw;
		bottom: -6.51042vw;
		left: 50%;
		transform: translateX(-50%);
	}
}

@media only screen and (max-width: 768px) {
	.lineup__howto dl .lineup__howto__block.sp_column3 .text {
		width: 39.0625vw;
	}
}

@media only screen and (max-width: 768px) {
	.lineup__howto dl .lineup__howto__block.sp_column3 .img02 {
		width: 17.57812vw;
		position: relative;
		right: -2.60417vw;
	}
}

@media only screen and (min-width: 769px) {
	.lineup__howto dl dt {
		margin-bottom: calc((30 / 1056) * 100%);
	}
}

@media only screen and (max-width: 768px) {
	.lineup__howto dl dt {
		margin-right: 3.90625vw;
	}
}

.lineup__howto dl dd {
	text-align: left;
	letter-spacing: 0.1em;
}

.lineup__howto dl dd span {
	color: #B17C81;
	display: block;
	letter-spacing: 0.1em;
}

@media only screen and (min-width: 769px) {
	.lineup__howto dl dd span {
		margin-top: 10px;
	}
}

@media only screen and (max-width: 768px) {
	.lineup__howto dl dd span {
		margin-top: 2.08333vw;
	}
}

.lineup_sec01 {
	background-color: #F6F5F0;
	position: relative;
	z-index: 11;
}

@media only screen and (min-width: 769px) {
	.lineup_sec01 .lineup__kv__product {
		width: calc((407 / 1272) * 100%);
		max-width: 407px;
		top: calc((825 / 1272) * 100%);
		right: calc((95 / 1272) * 100%);
	}
}

@media only screen and (max-width: 768px) {
	.lineup_sec01 .lineup__kv__product {
		width: 37.23958vw;
		top: 50.78125vw;
		right: 3.90625vw;
	}
}

.lineup_sec02 {
	background-color: #F6F5F0;
	position: relative;
	z-index: 11;
}

.lineup_sec02 .lineup__kv {
	margin-top: 0;
	padding-top: calc((88 / 1272) * 100%);
}

@media only screen and (min-width: 769px) {
	.lineup_sec02 .lineup__kv__product {
		width: calc((500 / 1272) * 100%);
		max-width: 500px;
		top: calc((878 / 1272) * 100%);
		right: calc((70 / 1272) * 100%);
	}
}

@media only screen and (max-width: 768px) {
	.lineup_sec02 .lineup__kv__product {
		width: 45.3125vw;
		top: 59.89583vw;
		right: 3.25521vw;
	}
}

@media only screen and (min-width: 769px) {
	.lineup_sec02 .lineup__kv__product.js-lineup__product03 {
		width: calc((500 / 1272) * 100%);
		max-width: 260px;
		top: calc((878 / 1272) * 100%);
		right: calc((150 / 1272) * 100%);
	}
}

@media only screen and (max-width: 768px) {
	.lineup_sec02 .lineup__kv__product.js-lineup__product03 {
    width: 30.3125vw;
    top: 59.89583vw;
    right: 7.25521vw;
	}
}

@media only screen and (min-width: 769px) {
	.lineup_sec02 .lineup__howto dl .lineup__howto__block dt {
		width: calc((180 / 282) * 100%);
		margin-left: auto;
		margin-right: auto;
	}
}

/*------*/
/*--SectionTitle-*/
@media only screen and (max-width: 768px) {
	.section__title__wrap {
		text-align: center;
	}
}

@media only screen and (min-width: 769px) {
	.aside__wrap .section__title__bg__blend {
		padding-top: calc((240 / 1272) * 100%);
	}
}

.aside__wrap .section__title {
	background-image: url(../img/headline_testure.jpg);
	color: rgba(0, 0, 0, 0);
	/*テキストは透過させる*/
	-webkit-background-clip: text;
	/*背景をテキストでマスクする*/
	background-position: 50% 50%;
}

.section__title__wrap {
	overflow: hidden;
}

.section__title__bg__blend {
	mix-blend-mode: lighten;
	background-color: #F6F5F0;
}

.section__title {
	font-weight: 600;
	position: relative;
	z-index: 12;
	display: inline-block;
	line-height: 1.2;
}

@media only screen and (min-width: 769px) {
	.section__title {
		font-size: 86px;
	}
}

@media only screen and (max-width: 768px) {
	.section__title {
		font-size: 11.19792vw;
		text-align: center;
	}
}

.section__subtitle {
	font-weight: 400;
	color: #474847;
}

@media only screen and (min-width: 769px) {
	.section__subtitle {
		font-size: 18px;
		letter-spacing: 0.1em;
	}
}

@media only screen and (max-width: 768px) {
	.section__subtitle {
		font-size: 3.64583vw;
		text-align: center;
	}
}

/*----*/
/*---button*/
.button a {
	display: block;
	transition: 0.3s ease-out;
}

@media only screen and (min-width: 769px) {
	.button a {
		padding: 12px 0;
	}
}

@media only screen and (max-width: 768px) {
	.button a {
		padding: 2.60417vw 0;
	}
}

.button.default a {
	border: 2px solid #D75D73;
	border-radius: 999px;
	display: flex;
	justify-content: center;
	align-items: center;
	color: #D75D73;
	position: relative;
}

@media only screen and (min-width: 769px) {
	.button.default a {
		max-width: 392px;
		width: calc((392 / 1272) * 100%);
		font-size: 2rem;
	}
}

.button.default a:hover {
	color: #fff;
	background-color: #D75D73;
}

.button.default.blank a::after {
	content: "";
	display: block;
	background-image: url(../img/icn_blank_p.svg);
	background-position: center;
	background-repeat: no-repeat;
	background-size: contain;
	position: absolute;
	top: 50%;
	transform: translateY(-50%);
}

@media only screen and (min-width: 769px) {
	.button.default.blank a::after {
		width: 24px;
		height: 10px;
		right: 27px;
	}
}

@media only screen and (max-width: 768px) {
	.button.default.blank a::after {
		width: 4.42708vw;
		height: 1.82292vw;
		right: 4.55729vw;
	}
}

.button.default.blank a:hover::after {
	background-image: url(../img/icn_blank_w.svg);
}

@media only screen and (min-width: 769px) {
	.button.lineup__spec {
		width: calc((420 / 1056) * 100%);
		max-width: 392px;
	}
	.matome_pack_link .button.lineup__spec {
		width:100%;
		max-width: 392px;
	}
	.matome_pack_link {
		width: calc((420 / 1056) * 100%);
		max-width: 392px;
	}
}
.matome_pack_link .matome_road {
  animation-delay: 1s;
}
@media only screen and (max-width: 768px) {
	.button.lineup__spec {
		width: 76.04167vw;
		margin-left: auto;
		margin-right: auto;
	}
}
.lineup_matome{
	border-top: solid 1px #D75D73;
}
.lineup_matome .button.lineup__spec{
	display: block;
	text-align: center;
}
@media only screen and (max-width: 768px) {
	.lineup_matome {
		border-top: none;}
	.lineup_matome dl{margin-top: 4.6875vw;
	}
}
.js-fadeInIO.lineup_matome .js-lineup__product.appered{
	margin: 8% 0;}
.button.lineup__spec a {
	width: 100%;
	font-weight: 400;
}

@media only screen and (min-width: 769px) {
	.lineup__info .lineup__spec.lineup_matome{
        align-items: center;
	}
	.button.contact, .button.faq {
		margin-top: calc((72 / 603) * 100%);
	}
}

@media only screen and (max-width: 768px) {
	.button.contact, .button.faq {
		margin-top: 7.8125vw;
	}
}

.button.contact a, .button.faq a {
	margin-left: auto;
	margin-right: auto;
	text-align: center;
	font-weight: 400;
}

@media only screen and (min-width: 769px) {
	.button.contact a, .button.faq a {
		width: calc((392 / 603) * 100%);
	}
}

@media only screen and (min-width: 769px) {
	.button.header__contact {
		width: 38%;
		max-width: 220px;
		margin-left: 20px;
	}
}

@media only screen and (min-width: 769px) {
	.button.header__contact a {
		background-color: #D75D73;
		border: 2px solid #D75D73;
		color: #fff;
		border-radius: 999px;
		font-weight: 400;
		padding: 15px 0;
		text-align: center;
		font-size: 1.8rem;
		letter-spacing: 0.1em;
		position: relative;
		min-width: 130px;
	}
}

@media only screen and (min-width: 769px) {
	.button.header__contact a:hover {
		opacity: 0.8;
	}
}

@media only screen and (min-width: 769px) {
	.button.header__contact a::after {
		content: "";
		display: block;
		background-image: url(../img/icn_arrow_w.svg);
		background-position: center;
		background-repeat: no-repeat;
		background-size: contain;
		position: absolute;
		top: 50%;
		transform: translateY(-50%);
		width: 9px;
		height: 19px;
		right: calc((15 / 220) * 100%);
	}
}

@media only screen and (max-width: 768px) {
	.button.header__contact_sp {
		position: fixed;
		bottom: 0;
		right: 2.99479vw;
		opacity: 0;
		transition: 1s ease-out;
	}
	.button.header__contact_sp.appeared {
		opacity: 1;
	}
	.button.header__contact_sp a {
		background-color: #D75D73;
		border: 2px solid #D75D73;
		color: #fff;
		border-radius: 3.25521vw 3.25521vw 0 0;
		font-weight: 400;
		padding: 2.86458vw 7.16146vw;
		text-align: center;
		font-size: 3.64583vw;
		letter-spacing: 0.1em;
		position: relative;
	}
}

@media only screen and (max-width: 768px) and (max-width: 768px) {
	.button.header__contact_sp a::after {
		content: "";
		display: block;
		background-image: url(../img/icn_arrow_w.svg);
		background-position: center;
		background-repeat: no-repeat;
		background-size: contain;
		position: absolute;
		top: 50%;
		transform: translateY(-50%);
		width: 1.82292vw;
		height: 3.77604vw;
		right: 1.82292vw;
	}
}

/*----*/
/*--point--*/
.point {
	background-color: #F6F5F0;
	position: relative;
	z-index: 10;
}

@media only screen and (min-width: 769px) {
	.point {
		padding-top: calc((140 / 1272) * 100%);
	}
}

@media only screen and (max-width: 768px) {
	.point {
		padding-top: 14.84375vw;
	}
}

@media only screen and (min-width: 769px) {
	.point .point__wrap {
		width: calc((1060 / 1272) * 100%);
		max-width: 1060px;
		margin-left: auto;
		margin-right: auto;
		padding: 0 16px;
	}
}

@media only screen and (max-width: 768px) {
	.point .point__wrap {
		padding: 0 2.99479vw 0;
	}
}

.point .point__title {
	text-align: center;
	color: #D75D73;
	font-weight: 400;
}

@media only screen and (min-width: 769px) {
	.point .point__title {
		font-size: 2.8rem;
		line-height: calc(32 / 28);
	}
}

@media only screen and (max-width: 768px) {
	.point .point__title {
		font-size: 4.6875vw;
		line-height: 2;
	}
}

.point .point__title strong {
	display: block;
}

@media only screen and (min-width: 769px) {
	.point .point__title strong {
		font-size: 4rem;
		margin-top: 12px;
	}
}

@media only screen and (max-width: 768px) {
	.point .point__title strong {
		font-size: 5.72917vw;
		line-height: calc(60 / 44);
	}
}

@media only screen and (min-width: 769px) {
	.point .sec__point__wrap {
		display: flex;
	}
}

@media only screen and (min-width: 769px) {
	.point .sec__point .sec__point__img {
		width: calc((392 / 1028) * 100%);
	}
}

@media only screen and (max-width: 768px) {
	.point .sec__point .sec__point__img img {
		border-radius: 3.25521vw 3.25521vw 0 0;
	}
}

@media only screen and (min-width: 769px) {
	.point .sec__point:nth-of-type(1) {
		margin-top: calc((60 / 1060) * 100%);
	}
}

@media only screen and (max-width: 768px) {
	.point .sec__point:nth-of-type(1) {
		margin-top: 7.8125vw;
	}
}

@media only screen and (min-width: 769px) {
	.point .sec__point:nth-of-type(2n) .sec__point__wrap {
		flex-direction: row-reverse;
	}
}

@media only screen and (min-width: 769px) {
	.point .sec__point:nth-of-type(2n) .sec__point__wrap .sec__point__img img {
		border-radius: 0 15px 15px 0;
	}
}

@media only screen and (max-width: 768px) {
	.point .sec__point:nth-of-type(2n) .sec__point__wrap .sec__point__img img {
		border-radius: 1.95313vw 1.95313vw 0 0;
	}
}

@media only screen and (min-width: 769px) {
	.point .sec__point:nth-of-type(2n) .sec__point__wrap .sec__point_info {
		border-radius: 15px 0 0 15px;
	}
}

@media only screen and (min-width: 769px) {
	.point .sec__point + .sec__point {
		margin-top: calc((60 / 1060) * 100%);
	}
}

@media only screen and (max-width: 768px) {
	.point .sec__point + .sec__point {
		margin-top: 12.5vw;
	}
}

.point .sec__point_info {
	background-color: #fff;
}

@media only screen and (min-width: 769px) {
	.point .sec__point_info {
		border-radius: 0 15px 15px 0;
		padding-top: calc((36 / 1060) * 100%);
		padding-left: calc((48 / 1060) * 100%);
		padding-right: calc((48 / 1060) * 100%);
		padding-bottom: calc((36 / 1060) * 100%);
		width: calc((646 / 1028) * 100%);
	}
}

@media only screen and (max-width: 768px) {
	.point .sec__point_info {
		border-radius: 0 0 1.95313vw 1.95313vw;
		padding: 4.6875vw 7.8125vw;
	}
}

.point .sec__point__title {
	text-align: center;
	font-weight: 400;
	color: #D75D73;
}

@media only screen and (min-width: 769px) {
	.point .sec__point__title {
		font-size: 2.2rem;
		letter-spacing: 0.1em;
		line-height: calc(36 / 22);
	}
}

@media only screen and (max-width: 768px) {
	.point .sec__point__title {
		font-size: 4.16667vw;
		letter-spacing: 0.05em;
		line-height: calc(44 / 32);
	}
}

@media only screen and (min-width: 769px) {
	.point .sec__point__title strong {
		font-size: 3.6rem;
		letter-spacing: 0.05em;
		line-height: calc(48 / 36);
	}
}

@media only screen and (max-width: 768px) {
	.point .sec__point__title strong {
		font-size: 5.72917vw;
		letter-spacing: 0.05em;
		line-height: calc(60 / 44);
	}
}

.point .sec__point__img img {
	width: 100%;
	height: 100%;
	object-fit: cover;
	border-radius: 15px 0 0 15px;
}

.point .point__list {
	letter-spacing: 0.1em;
	margin-left: auto;
	margin-right: auto;
}

@media only screen and (min-width: 769px) {
	.point .point__list {
		width: calc((350 / 646) * 100%);
		font-size: 1.8rem;
		line-height: calc(28 / 18);
		margin-top: calc((36 / 646) * 100%);
		margin-bottom: calc((30 / 646) * 100%);
	}
}

@media only screen and (max-width: 768px) {
	.point .point__list {
		width: 52.08333vw;
		font-size: 3.38542vw;
		line-height: calc(48 / 26);
		margin-top: 4.6875vw;
		margin-bottom: 4.6875vw;
	}
}

.point .point__list li {
	background-position: center left;
	background-repeat: no-repeat;
	background-image: url(../img/icn_check.svg);
	white-space: nowrap;
}

@media only screen and (min-width: 769px) {
	.point .point__list li {
		margin-top: 10px;
		padding-left: calc((100 / 646) * 100%);
		background-size: 10% 60%;
	}
}

@media only screen and (max-width: 768px) {
	.point .point__list li {
		margin-top: 1.30208vw;
		padding-left: 5.20833vw;
		background-size: 8% 36%;
		white-space: nowrap;
	}
}

.point .point__annotion {
	color: #A7A7A7;
	margin-top: calc((10 / 646) * 100%);
}

@media only screen and (min-width: 769px) {
	.point .point__annotion {
		font-size: 1.8rem;
		line-height: calc(28 / 18);
		letter-spacing: 0.1em;
	}
}

@media only screen and (max-width: 768px) {
	.point .point__annotion {
		font-size: 3.38542vw;
		line-height: calc(37 / 26);
		letter-spacing: 0.05em;
	}
}

@media only screen and (min-width: 769px) {
	.point .point__annotion .adjust {
		font-size: calc((14 / 18) * 100%);
	}
}

@media only screen and (max-width: 768px) {
	.point .point__annotion .adjust {
		font-size: calc((22 / 26) * 100%);
	}
}

.point__component {
	display: flex;
	justify-content: center;
}

@media only screen and (min-width: 769px) {
	.point__component {
		margin-top: calc((30 / 646) * 100%);
	}
}

@media only screen and (max-width: 768px) {
	.point__component {
		margin-top: 4.6875vw;
	}
}

.point__component .point__component__label {
	border-right: 1px solid #A7A7A7;
	text-align: right;
	text-align: center;
}

@media only screen and (min-width: 769px) {
	.point__component .point__component__label {
		letter-spacing: 0.1em;
		padding-right: calc((24 / 646) * 100%);
		padding-top: calc((24 / 646) * 100%);
	}
}

@media only screen and (max-width: 768px) {
	.point__component .point__component__label {
		padding-right: 3.125vw;
		padding-top: 3.90625vw;
		font-size: 2.86458vw;
		letter-spacing: 0.05em;
		line-height: 1.6;
	}
}

.point__component .point__component__label strong {
	font-weight: 300;
}

@media only screen and (min-width: 769px) {
	.point__component .point__component__label strong {
		font-size: 1.8rem;
	}
}

@media only screen and (max-width: 768px) {
	.point__component .point__component__label strong {
		font-size: 3.90625vw;
		line-height: calc(4 / 3);
	}
}

.point__component .point__component__adjust {
	white-space: nowrap;
	display: inline-block;
}

@media only screen and (min-width: 769px) {
	.point__component .point__component__adjust {
		margin-left: 21%;
	}
}

@media only screen and (max-width: 768px) {
	.point__component .point__component__adjust {
		margin-left: 21%;
	}
}

@media only screen and (min-width: 769px) {
	.point__component .point__component__list {
		letter-spacing: 0.1em;
		padding-left: calc((24 / 646) * 100%);
		font-size: 1.8rem;
	}
}

@media only screen and (max-width: 768px) {
	.point__component .point__component__list {
		letter-spacing: 0.1em;
		padding-left: 3.125vw;
		font-size: 3.38542vw;
		line-height: calc(48 / 26);
	}
}

.point__desc {
	letter-spacing: 0.1em;
}

@media only screen and (min-width: 769px) {
	.point__desc {
		margin-top: calc((30 / 646) * 100%);
		font-size: 1.8rem;
	}
}

@media only screen and (max-width: 768px) {
	.point__desc {
		margin-top: 4.6875vw;
		font-size: 3.38542vw;
		line-height: calc(48 / 26);
	}
}

/*----*/
/*--aside--*/
.aside__wrap {
	background-color: #F6F5F0;
	position: relative;
}

@media only screen and (min-width: 769px) {
	.aside__wrap {
		padding-top: calc((112 / 1272) * 100%);
	}
}

@media only screen and (max-width: 768px) {
	.aside__wrap {
		padding-top: 23.4375vw;
	}
}

.faq .section__title {
	letter-spacing: 0.2em;
}

@media only screen and (min-width: 769px) {
	.faq .section__title {
		padding-left: 16px;
	}
}

@media only screen and (max-width: 768px) {
	.faq .section__title {
		text-indent: 0.2em;
	}
}

.faq .section__title__bg__blend {
	position: relative;
	z-index: 10;
}

@media only screen and (min-width: 769px) {
	.faq .section__title__bg__blend__inner {
		max-width: 646px;
		margin-left: auto;
		margin-right: 0;
	}
}

@media only screen and (max-width: 768px) {
	.faq .aside__wrap__contents {
		padding-bottom: 20.83333vw;
	}
}

@media only screen and (min-width: 769px) {
	.faq .aside__wrap__contents__inner {
		max-width: 646px;
		margin-left: auto;
		margin-right: 0;
		padding-left: 16px;
	}
}

@media only screen and (min-width: 769px) {
	.contact .section__title {
		padding-left: 16px;
	}
}

.contact .section__title__bg__blend {
	position: relative;
	z-index: 10;
}

@media only screen and (min-width: 769px) {
	.contact .section__title__bg__blend__inner {
		max-width: 646px;
		margin-right: auto;
		margin-left: 0;
	}
}

@media only screen and (min-width: 769px) {
	.contact .aside__wrap__contents__inner {
		max-width: 646px;
		margin-right: auto;
		margin-left: 0;
		padding-left: 16px;
	}
}

.aside__wrap__contents {
	background-color: #F6F5F0;
	position: relative;
	z-index: 10;
}

@media only screen and (min-width: 769px) {
	.aside__wrap__contents {
		padding-bottom: 6rem;
	}
}

@media only screen and (max-width: 768px) {
	.aside__wrap__contents {
		padding: 0 10.80729vw;
	}
}

.aside__wrap__inner {
	max-width: 1272px;
	margin-left: auto;
	margin-right: auto;
}

@media only screen and (min-width: 769px) {
	.aside__wrap__inner {
		padding: 0 16px;
	}
}

@media only screen and (max-width: 768px) {
	.aside__wrap__inner {
		padding: 0 4.16667vw;
	}
}

@media only screen and (min-width: 769px) {
	.aside__wrap__inner {
		display: flex;
		justify-content: space-between;
	}
}

@media only screen and (min-width: 769px) {
	.aside__wrap__inner article {
		width: 50%;
	}
}

/*----*/
/*--footer--*/
.back_top {
	transform: rotate(-90deg);
	display: inline-block;
	color: #D75D73;
	position: absolute;
	top: 0;
}

@media only screen and (min-width: 769px) {
	.back_top {
		font-size: 2rem;
		right: -50px;
		top: 15%;
	}
}

@media only screen and (max-width: 768px) {
	.back_top {
		font-size: 4.16667vw;
		right: -7.8125vw;
		top: 19.53125vw;
	}
}

.back_top a {
	display: flex;
	align-items: center;
	justify-content: space-between;
	transition: 0.3s ease-out;
	position: relative;
}

@media only screen and (min-width: 769px) {
	.back_top a {
		padding: 17px 100px 17px 24px;
	}
}

@media only screen and (max-width: 768px) {
	.back_top a {
		padding: 1.17188vw 13.02083vw 1.17188vw 3.125vw;
	}
}

.back_top a::after {
	content: "";
	display: block;
	position: absolute;
	background-image: url(../img/arrow_top_p.svg);
	background-position: center;
	background-repeat: no-repeat;
	top: 50%;
	transform: translateY(-50%);
}

@media only screen and (min-width: 769px) {
	.back_top a::after {
		width: 65px;
		height: 8px;
		right: 24px;
		background-size: 65px 8px;
	}
}

@media only screen and (max-width: 768px) {
	.back_top a::after {
		width: 8.46354vw;
		height: 1.04167vw;
		right: 3.125vw;
		background-size: 8.46354vw 1.04167vw;
	}
}

.back_top a:hover {
	background-color: #D75D73;
	color: #fff;
}

.back_top a:hover::after {
	background-image: url(../img/arrow_top_w.svg);
}

.back_top img {
	display: block;
	transform: rotate(90deg);
	position: relative;
}

@media only screen and (min-width: 769px) {
	.back_top img {
		left: 40px;
	}
}

.back_top span {
	position: relative;
}

.back_top span::after {
	content: "";
	display: block;
}

.footer {
	background-color: #F6F5F0;
	position: relative;
	z-index: 11;
}

@media only screen and (min-width: 769px) {
	.footer {
		padding-top: 300px;
	}
}

@media only screen and (max-width: 768px) {
	.footer {
		padding-top: 46.875vw;
	}
}

.footer__wrap {
	position: relative;
	max-width: 1272px;
	margin-left: auto;
	margin-right: auto;
}

@media only screen and (min-width: 769px) {
	.footer__wrap {
		padding: 0 16px;
	}
}

@media only screen and (max-width: 768px) {
	.footer__wrap {
		padding: 0 4.16667vw;
	}
}

.footer__wrap__inner {
	display: flex;
}

@media only screen and (min-width: 769px) {
	.footer__wrap__inner {
		justify-content: space-between;
	}
}

@media only screen and (max-width: 768px) {
	.footer__wrap__inner {
		flex-direction: column;
		align-items: center;
	}
}

@media only screen and (min-width: 769px) {
	.footer__left {
		width: 50%;
	}
}

@media only screen and (min-width: 769px) {
	.footer__right {
		width: 50%;
		max-width: 498px;
	}
}

@media only screen and (min-width: 769px) {
	.footer__logo {
		width: calc((170 / 620) * 100%);
	}
}

@media only screen and (max-width: 768px) {
	.footer__logo {
		width: 36.45833vw;
		margin-bottom: 11.71875vw;
	}
}

.footer__logo img {
	width: 100%;
}

.footer__sns {
	display: flex;
	justify-content: flex-end;
	align-items: center;
}

@media only screen and (min-width: 769px) {
	.footer__sns {
		justify-content: flex-end;
	}
}

@media only screen and (max-width: 768px) {
	.footer__sns {
		justify-content: center;
	}
}

.footer__sns__label {
	color: #D75D73;
	font-weight: 600;
}

@media only screen and (min-width: 769px) {
	.footer__sns__label {
		font-size: 2rem;
	}
}

@media only screen and (max-width: 768px) {
	.footer__sns__label {
		font-size: 4.16667vw;
	}
}

.footer__sns__icnos {
	display: flex;
}

@media only screen and (min-width: 769px) {
	.footer__sns__icnos li {
		width: 36px;
		margin-left: 48px;
	}
}

@media only screen and (max-width: 768px) {
	.footer__sns__icnos li {
		width: 6.25vw;
		margin-left: 9.375vw;
	}
}

.footer__sns__icnos li + li {
	position: relative;
}

@media only screen and (min-width: 769px) {
	.footer__sns__icnos li + li {
		top: 3px;
	}
}

@media only screen and (max-width: 768px) {
	.footer__sns__icnos li + li {
		top: 0.39062vw;
	}
}

.footer__sns__icnos li a {
	transition: 0.2s ease-out;
}

.footer__sns__icnos li a:hover {
	opacity: 0.7;
}

@media only screen and (min-width: 769px) {
	.footer__menu {
		display: flex;
		justify-content: flex-end;
		flex-direction: column;
	}
}

@media only screen and (max-width: 768px) {
	.footer__menu {
		width: 60.41667vw;
	}
}

.footer__menu li a {
	font-weight: 400;
	color: #D75D73;
	display: block;
	border-bottom: 1px solid #DFC6C4;
	position: relative;
	transition: 0.2s ease-out;
	letter-spacing: 0.1em;
}

@media only screen and (min-width: 769px) {
	.footer__menu li a {
		font-size: 1.6rem;
		padding: 8px 0;
	}
}

@media only screen and (max-width: 768px) {
	.footer__menu li a {
		font-size: 2.86458vw;
		padding-bottom: 0.65104vw;
	}
}

.footer__menu li a:hover {
	opacity: 0.7;
}

.footer__menu li a::after {
	content: "";
	display: block;
	background-image: url(../img/icn_blank_p2.svg);
	background-position: center;
	background-repeat: no-repeat;
	background-size: contain;
	position: absolute;
	top: 50%;
	right: 0;
	transform: translateY(-50%);
}

@media only screen and (min-width: 769px) {
	.footer__menu li a::after {
		width: 24px;
		height: 10px;
	}
}

@media only screen and (max-width: 768px) {
	.footer__menu li a::after {
		width: 4.94792vw;
		height: 2.08333vw;
	}
}

@media only screen and (min-width: 769px) {
	.footer__menu li + li {
		margin-top: 24px;
	}
}

@media only screen and (max-width: 768px) {
	.footer__menu li + li {
		margin-top: 3.90625vw;
	}
}

.footer__bottom {
	max-width: 1272px;
	margin-left: auto;
	margin-right: auto;
	color: #B17C81;
}

@media only screen and (min-width: 769px) {
	.footer__bottom {
		padding: 0 16px;
	}
}

@media only screen and (max-width: 768px) {
	.footer__bottom {
		padding: 0 4.16667vw;
	}
}

@media only screen and (min-width: 769px) {
	.footer__bottom {
		margin-top: 110px;
	}
}

.footer__bottom__wrap {
	display: flex;
	justify-content: space-between;
	align-items: center;
}

@media only screen and (min-width: 769px) {
	.footer__bottom__wrap {
		padding-bottom: 53px;
	}
}

@media only screen and (max-width: 768px) {
	.footer__bottom__wrap {
		padding-bottom: 15.625vw;
		flex-direction: column-reverse;
	}
}

.footer__copyright {
	letter-spacing: 0.1em;
	font-weight: 400;
}

@media only screen and (min-width: 769px) {
	.footer__copyright {
		font-size: 1.6rem;
	}
}

@media only screen and (max-width: 768px) {
	.footer__copyright {
		font-size: 2.86458vw;
		margin-top: 12.5vw;
	}
}

.footer__bottom__right {
	display: flex;
}

@media only screen and (min-width: 769px) {
	.footer__bottom__right {
		justify-content: space-between;
		align-items: center;
		max-width: 498px;
		width: 50%;
	}
}

@media only screen and (max-width: 768px) {
	.footer__bottom__right {
		flex-direction: column;
		align-items: center;
		margin-top: 12.5vw;
	}
}

.footer__bottom__link {
	letter-spacing: 0.1em;
	white-space: nowrap;
}

@media only screen and (max-width: 768px) {
	.footer__bottom__link {
		font-size: 2.86458vw;
	}
}

.footer__bottom__link a {
	font-weight: 400;
	transition: 0.2s ease-out;
}

.footer__bottom__link a:hover {
	opacity: 0.7;
}

@media only screen and (min-width: 769px) {
	.footer__bottom__logo {
		margin-left: 64px;
	}
}

@media only screen and (max-width: 768px) {
	.footer__bottom__logo {
		width: 46.875vw;
		margin-top: 1.5625vw;
	}
}

.footer__bottom__logo a {
	transition: 0.2s ease-out;
}

.footer__bottom__logo a:hover {
	opacity: 0.7;
}

@media only screen and (max-width: 768px) {
	.footer__bottom__logo img {
		width: 100%;
	}
}

/*----*/
/*--loading--*/
.loading__wrap {
	z-index: 9999;
	background-color: #D75D73;
	color: #fff;
	position: fixed;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	display: flex;
	justify-content: center;
	align-items: center;
	opacity: 1;
	transition: 0.6s;
	display: none !important;
}

.loading__wrap.loaded {
	opacity: 0;
}

.loading__wrap.loaded.done {
	display: none;
}

@media only screen and (min-width: 769px) {
	.loading__logo {
		width: 200px;
	}
}

@media only screen and (max-width: 768px) {
	.loading__logo {
		width: 36.45833vw;
	}
}

.js-fadein {
	transform: translateY(20px);
	opacity: 0;
	transition: 0.4s ease-out;
}

.js-fadein.appeared {
	opacity: 1;
	transform: translateY(0);
}

.js-fadein.js-fadein-header {
	transition: 0.8s ease-out;
	transform: translateY(0);
}

/*# sourceMappingURL=../../../_map/femilute-brand/assets/css/style.css.map */

/*--キャンペーン追加--*/
.top_camp_li{    text-align: right;
    padding-right: 20px;
    width: 28%;}
.top_camp_li img{
    max-height: 90px;
    width: 70%;
    margin-left: 6%;
}
.top_camp_li_sp{
    position: fixed;
    bottom: 0;
    right: 45vw;}
.top_camp_li_sp img{    height: 12vw;}
.camp_box img{
	padding-top: 2rem;
}
.camp_box{
    padding-bottom: 6em;
}
@media only screen and (max-width: 768px) {
.camp_box{
    padding-bottom: 20.83333vw;
}
}

.lang_btn{
    display: flex;
    justify-content: flex-end;
}
.lang_btn a{display:inline-block;

    font-size: 1.5rem;
    color: #D75D73;
    padding: 0 2px;
    border: 1px solid #D75D6F;
    margin-left: 10px;
    margin-bottom: 10px;}
.lang_btn a:hover{opacity:0.8;}
.lang_btn_sp{
            position: fixed;
    bottom: 0;
    right: 0;
    padding: 10px 20px;
    background: rgba(255, 255, 255, 0.7);
    margin: 0 3% 15% 0;
    color: #D75D73;
    border-radius: 20px;}
.lang_btn_sp a{ margin:5px;}

.lang_btn a:hover{opacity:0.8;}
.lang_btn_select{
    background: #fff;
    text-align: center;
    margin-left: 25px;
    font-size: 1.5rem;
    border: 1px solid #d75d74;
    color: #d75d74;
	
    -webkit-appearance: auto;
}
.header__right_l{
	display: flex;	
}
.youtube {
  width: 100%;
  aspect-ratio: 16 / 9;
}
.youtube iframe {
  width: 100%;
  height: 100%;
}
#mv_link.aside__wrap {

}