@charset "UTF-8";

/*
■ リセット
■ 共通

■ 領域・背景

■ キービジュアル
■ 導入
■ メッセージ
■ 商品紹介
■ BUYボタン
■ ポイント
■ SET UP
■ Hair Make
■ プロフィール
■ MOVIE

■ フッター
■ ページの先頭へ

■ アニメーション
*/



/* ■ リセット ==================================================================================== */

body { min-width: 320px; margin: 0; padding: 0; }

/* #Feature_ * { margin: 0; padding: 0; color: inherit; word-break: normal; } */
* { margin: 0; padding: 0; color: inherit; word-break: normal; }
#Feature_ h1, #Feature_ h2, #Feature_ h3, #Feature_ h4, #Feature_ h5, #Feature_ p { margin: 0; padding: 0; letter-spacing: inherit; color: inherit; word-break: normal; }
#Feature_ dl, #Feature_ dt, #Feature_ dd { margin: 0; padding: 0; color: inherit; word-break: normal; }
#Feature_ *, #Feature_ *:before, #Feature_ *:after, #Feature_ *::before, #Feature_ *::after { box-sizing: border-box; }
#Feature_ *:focus { outline: none; }
#Feature_ figure,#Feature_ img,#Feature_ picture,#Feature_ video,#Feature_ canvas,#Feature_ svg { display: block; width: 100%; height: auto; border: none; vertical-align: bottom; }
#Feature_ form { margin: 0; padding: 0; }
#Feature_ li { list-style-type: none; }
#Feature_ table { width: 100%; border-collapse: collapse; border-spacing: 0; }
#Feature_ strong, #Feature_ em { font-style: normal; }
#Feature_ input, #Feature_ select, #Feature_ textarea, #Feature_ button { border-style: none; font-size: inherit; }
#Feature_ button { cursor: pointer; }
#Feature_ h2 { border: none; }

#Feature_ a:link {
text-decoration: none;
}

#Feature_ a:active {
text-decoration: none;
}

#Feature_ a:visited {
text-decoration: none;
}

#Feature_ a:hover {
text-decoration: none;
}

/* ページ管理用 */
.pane-contents {
padding-bottom: 0;
}

body.page-page .pane-contents {
letter-spacing: inherit;
}

.pane-contents .container {
display: block;
}

.block-page-block--frame {
margin-bottom: 0;
}

.block-page-freespace--caption {
padding-top: 0;
}

.block-page-block--contents-body-text-1column {
width: 100%;
margin: 0;
}

.block-page-block--contents-body-text-1column div {
max-width: 100%;
padding: 0;
}

/* パンくず調整 */
@media only screen and (max-width: 767px) {

	.block-topic-path {
	margin-top: 0;
	margin-bottom: 0;
	padding-top: 20px;
	padding-bottom: 20px;
	}

}



/* ■ 共通 ==================================================================================== */

/*
フォント
汎用
変数
*/


/* フォント --------------------------------------------------- */

#Feature_ * {
font-family: "dnp-shuei-gothic-gin-std", sans-serif;
font-weight: 400;
font-style: normal;
}


/* 汎用 --------------------------------------------------- */

@media only screen and (max-width: 599px) {

	#Feature_ .PC {
	display: none;
	}

}

@media print, screen and (min-width: 600px) {

	#Feature_ .SP {
	display: none;
	}

}

/* 非アクティブ */
#Feature_ .Disabled {
opacity: 0.3;
pointer-events: none;
}

#Feature_ .Disabled:hover {
opacity: 0.3;
}

#Feature_ .Disabled2 {
pointer-events: none;
}


/* 変数 --------------------------------------------------- */

:root {
--c-1: #eda3af;
--c-2: #6f81b1;
--c-3: #231815;
}



/* ■ 領域・背景 ==================================================================================== */

body {
color: #595757;
background-color: #edf2ff;
}

#Feature_ {
width: 100%;
}

#Feature_ .Container_ {
max-width: 600px;
margin: 0 auto;
background-color: #fff;
}



/* ■ キービジュアル ==================================================================================== */

#Feature_ .KV_ {
position: relative;
background-color: #edf2ff;
}

/* フェードイン */
#Feature_ .KV_ {
opacity: 0;
animation-name: fadeIn;
animation-duration: 2s;
animation-timing-function: ease-out;
animation-fill-mode: forwards;
}

@keyframes fadeIn {
	0% {
		opacity: 0;
	}
	100% {
		opacity: 1;
	}
}

#Feature_ .KV_Photo img {
border-radius: 36px 36px 0 0;
}

#Feature_ .KV_Logo {
position: absolute;
z-index: 2;
left: 0;
bottom: 10%;
width: 100%;
padding: 0 10%;
}

@media only screen and (max-width: 599px) {

}

@media print, screen and (min-width: 600px) {

}



/* ■ 導入 ==================================================================================== */

#Feature_ .Intro_ {
text-align: center;
}

#Feature_ .Intro_Lead:not(:first-of-type) {
margin-top: 12%;
}

@media only screen and (max-width: 599px) {

	#Feature_ .Intro_Lead {
	font-size: 14px;
	line-height: 2;
	}

}

@media print, screen and (min-width: 600px) {

	#Feature_ .Intro_Lead {
	font-size: 20px;
	line-height: 2;
	}

}



/* ■ メッセージ ==================================================================================== */

#Feature_ .Message_ {
margin-top: 16%;
text-align: center;
}

#Feature_ .Message_Photo {
padding: 0 20%;
}

#Feature_ .Message_Lead {
margin-top: 7%;
}

#Feature_ .Message_Credit {
margin-top: 3%;
}

@media only screen and (max-width: 599px) {

	#Feature_ .Message_Lead {
	font-size: 13px;
	line-height: 2;
	}

	#Feature_ .Message_Credit {
	font-size: 12px;
	line-height: 2;
	}

}

@media print, screen and (min-width: 600px) {

	#Feature_ .Message_Lead {
	font-size: 18px;
	line-height: 2;
	}

	#Feature_ .Message_Credit {
	font-size: 16px;
	line-height: 2;
	}

}



/* ■ 商品紹介 ==================================================================================== */

#Feature_ .Item_Inner {
padding: 0 8%;
}

#Feature_ .Item_Num,
#Feature_ .Item_Name_Sub,
#Feature_ .Item_Name,
#Feature_ .Item_Price {
line-height: 1;
font-weight: 900;
color: var(--c-1);
}

#Feature_ .Item_Price {
letter-spacing: 0.05em;
font-feature-settings: "palt";
}

#Feature_ .Item_Detail_Each {
display: flex;
align-items: center;
}

#Feature_ .Item_Detail_Color {
border: 1px solid #000;
border-radius: 100vh;
line-height: 1;
letter-spacing: 0.1em;
font-weight: 700;
text-align: center;
}

#Feature_ .Item_Detail_Color.Pink {
color: var(--c-1);
border: 1px solid #eea9b4;
}

#Feature_ .Item_Detail_Color.Black {
border: 1px solid #b2b1b1;
}

#Feature_ .Item_Detail_Lead {
flex: 1;
font-weight: 700;
}

#Feature_ .Item_Performance_Notice {
font-weight: 500;
text-align: right;
}

#Feature_ .Item_Date {
letter-spacing: 0.05em;
font-feature-settings: "palt";
text-align: center;
}

@media only screen and (max-width: 599px) {

	#Feature_ .Item_ {
	margin-top: 16%;
	}

	#Feature_ .Item_Num {
	font-size: 13px;
	}

	#Feature_ .Item_Name_Sub {
	margin-top: 6%;
	font-size: 18px;
	}

	#Feature_ .Item_Name {
	margin-top: 2%;
	font-size: 32px;
	}

	#Feature_ .Item_Price {
	margin-top: 6%;
	font-size: 18px;
	}

	#Feature_ .Item_Price small {
	font-size: 12px;
	}

	#Feature_ .Item_Detail {
	margin-top: 8%;
	}

	#Feature_ .Item_Detail_Each {
	margin-top: 1%;
	}

	#Feature_ .Item_Detail_Color {
	width: 60px;
	padding: 4px 0;
	font-size: 12px;
	}

	#Feature_ .Item_Detail_Lead {
	padding-left: 10px;
	font-size: 12px;
	}

	#Feature_ .Item_Performance {
	margin-top: 6%;
	}

	#Feature_ .Item_Performance_Notice {
	margin-top: 2%;
	font-size: 9px;
	}

	#Feature_ .Item_Photo {
	margin-top: 6%;
	}

	#Feature_ .Item_Date {
	margin-top: 6%;
	font-size: 16px;
	}

}

@media print, screen and (min-width: 600px) {

	#Feature_ .Item_ {
	margin-top: 12%;
	}

	#Feature_ .Item_Num {
	font-size: 15.5px;
	}

	#Feature_ .Item_Name_Sub {
	margin-top: 4%;
	font-size: 24px;
	}

	#Feature_ .Item_Name {
	margin-top: 2%;
	font-size: 38px;
	}

	#Feature_ .Item_Price {
	margin-top: 6%;
	font-size: 21.5px;
	}

	#Feature_ .Item_Price small {
	font-size: 14px;
	}

	#Feature_ .Item_Detail {
	margin-top: 6%;
	}

	#Feature_ .Item_Detail_Each {
	margin-top: 0.5%;
	}

	#Feature_ .Item_Detail_Color {
	width: 80px;
	padding: 4px 0;
	font-size: 14.5px;
	}

	#Feature_ .Item_Detail_Lead {
	padding-left: 10px;
	font-size: 14.5px;
	}

	#Feature_ .Item_Performance {
	margin-top: 6%;
	}

	#Feature_ .Item_Performance_Notice {
	margin-top: 2%;
	font-size: 10.5px;
	}

	#Feature_ .Item_Photo {
	margin-top: 6%;
	}

	#Feature_ .Item_Date {
	margin-top: 6%;
	font-size: 20px;
	}

}



/* ■ BUYボタン ==================================================================================== */

#Feature_ #Buy_Fixed {
position: fixed;
left: 0;
bottom: 0;
z-index: 1000;
width: 100%;
transform: translateY(100%);
transition: transform 0.5s ease;
}

#Feature_ #Buy_Fixed.is_Active {
transform: translateY(0);
}

#Feature_ #Buy_Fixed.is_Active .Buy_Inner {
box-shadow: 0px -3px 10px 0px rgba(117, 117, 117, 0.2);
}

#Feature_ .Buy_Inner {
display: flex;
justify-content: center;
align-items: center;
background-color: #fff;
}

#Feature_ .Buy_Lead_Sub,
#Feature_ .Buy_Lead {
line-height: 1;
font-weight: 700;
color: var(--c-2);
}

#Feature_ .Buy_Btn {
line-height: 1;
font-weight: 700;
letter-spacing: 0.1em;
border-radius: 100vh;
text-align: center;
color: #fff;
background-color: var(--c-2);
}

#Feature_ .Buy_Btn span {
display: inline-block;
background-image: url(../img/_common/Icon_Cart_White.png);
background-repeat: no-repeat;
}

@media only screen and (max-width: 599px) {

	#Feature_ .Buy_Inner {
	padding: 3% 0;
	}

	#Feature_ .Buy_Lead_Sub {
	font-size: 11px;
	}

	#Feature_ .Buy_Lead {
	margin-top: 2%;
	font-size: 18px;
	}

	#Feature_ .Buy_Btn {
	width: 100px;
	margin-left: 20px;
	font-size: 16px;
	}

	#Feature_ .Buy_Btn span {
	padding-left: 22px;
	padding: 8px 0 8px 20px;
	background-position: 0 42%;
	background-size: 16px auto;
	}

}

@media print, screen and (min-width: 600px) {

	#Feature_ #Buy_ {
	margin-top: 1.5%;
	}

	#Feature_ .Buy_Inner {
	width: 600px;
	margin: 0 auto;
	padding: 1% 0;
	}

	#Feature_ .Buy_Lead_Sub {
	font-size: 14px;
	}

	#Feature_ .Buy_Lead {
	margin-top: 2%;
	font-size: 23px;
	}

	#Feature_ .Buy_Btn {
	width: 126px;
	margin-left: 20px;
	font-size: 20px;
	}

	#Feature_ .Buy_Btn span {
	padding: 8px 0 8px 24px;
	background-position: 0 42%;
	background-size: 18px auto;
	}

}

@media (hover: hover) {

	#Feature_ a.Buy_Inner .Buy_Btn,
	#Feature_ a.Buy_Inner .Buy_Lead_Sub,
	#Feature_ a.Buy_Inner .Buy_Lead {
	transition: all 0.2s ease-in-out 0.01s;
	}

	#Feature_ a.Buy_Inner:hover .Buy_Lead_Sub,
	#Feature_ a.Buy_Inner:hover .Buy_Lead {
	color: #3e4c73;
	}

	#Feature_ a.Buy_Inner:hover .Buy_Btn {
	background-color: #3e4c73;
	}

}



/* ■ ポイント ==================================================================================== */

#Feature_ .Point_ {
padding: 0 8%;
}

#Feature_ .Point_Detail_Each {
display: flex;
align-items: center;
}

#Feature_ .Point_Detail_Photo {
width: 50%;
}

#Feature_ .Point_Detail_LeadUnit {
width: 50%;
}

#Feature_ .Point_Detail_Each:nth-of-type(1) .Point_Detail_Photo {
width: 54%;
}

#Feature_ .Point_Detail_Each:nth-of-type(1) .Point_Detail_LeadUnit {
width: 46%;
}

#Feature_ .Point_Detail_Each:nth-of-type(even) .Point_Detail_Photo {
order: 2;
}

#Feature_ .Point_Detail_Mds {
padding-bottom: 6%;
border-bottom: 2px solid #dca9b1;
}

#Feature_ .Point_Detail_Each:nth-of-type(odd) .Point_Detail_Mds {
padding-left: 6%;
}

#Feature_ .Point_Detail_Each:nth-of-type(even) .Point_Detail_Mds {
padding-right: 6%;
}

#Feature_ .Point_Detail_Mds img {
width: 40%;
}

#Feature_ .Point_Detail_Lead {
margin-top: 8%;
letter-spacing: 0.05em;
font-feature-settings: "palt";
}

#Feature_ .Point_Detail_Each:nth-of-type(odd) .Point_Detail_Lead {
padding-left: 6%;
}

#Feature_ .Point_Detail_Each:nth-of-type(even) .Point_Detail_Lead {
padding-right: 6%;
}

@media only screen and (max-width: 599px) {

	#Feature_ .Point_ {
	margin-top: 22%;
	}

	#Feature_ .Point_Detail {
	margin-top: 6%;
	}

	#Feature_ .Point_Detail_Each {
	margin-top: 6%;
	}

	#Feature_ .Point_Detail_Lead {
	font-size: 11px;
	line-height: 1.6;
	}

}

@media print, screen and (min-width: 600px) {

	#Feature_ .Point_ {
	margin-top: 22%;
	}

	#Feature_ .Point_Detail {
	margin-top: 6%;
	}

	#Feature_ .Point_Detail_Each {
	margin-top: 3%;
	}

	#Feature_ .Point_Detail_Lead {
	font-size: 13px;
	line-height: 1.6;
	}

}

@media (hover: hover) {

}



/* ■ SET UP ==================================================================================== */

#Feature_ .SetUp_ {
padding: 0 20%;
text-align: center;
}

#Feature_ .SetUp_Mds {
display: inline-block;
border: 2px solid var(--c-1);
border-radius: 100vh;
line-height: 1;
font-weight: 700;
letter-spacing: 0.05em;
text-align: center;
color: var(--c-1);
}

@media only screen and (max-width: 599px) {

	#Feature_ .SetUp_ {
	margin-top: 12%;
	}

	#Feature_ .SetUp_Mds {
	width: 160px;
	padding: 8px 0;
	font-size: 20px;
	}

	#Feature_ .SetUp_Photo {
	margin-top: 6%;
	}

}

@media print, screen and (min-width: 600px) {

	#Feature_ .SetUp_ {
	margin-top: 12%;
	}

	#Feature_ .SetUp_Mds {
	width: 180px;
	padding: 8px 0;
	font-size: 29px;
	}

	#Feature_ .SetUp_Photo {
	margin-top: 6%;
	}

}



/* ■ Hair Make ==================================================================================== */

#Feature_ .HairMake_Mds {
margin: 0 auto;
}

#Feature_ .HairMake_Lead {
padding: 0 8%;
font-weight: 500;
}

@media only screen and (max-width: 599px) {

	#Feature_ .HairMake_ {
	margin-top: 20%;
	}

	#Feature_ .HairMake_Mds {
	width: 180px;
	}

	#Feature_ .HairMake_Detail {
	margin-top: 10%;
	padding: 0 3.5%;
	}

	#Feature_ .HairMake_Lead {
	margin-top: 1%;
	font-size: 14px;
	line-height: 2;
	}

}

@media print, screen and (min-width: 600px) {

	#Feature_ .HairMake_ {
	margin-top: 16%;
	}

	#Feature_ .HairMake_Mds {
	width: 280px;
	}

	#Feature_ .HairMake_Detail {
	margin-top: 10%;
	padding: 0 3.5%;
	}

	#Feature_ .HairMake_Lead {
	margin-top: 1%;
	font-size: 16px;
	line-height: 2;
	}

}



/* ■ プロフィール ==================================================================================== */

#Feature_ .Profile_ {
padding: 0 8%;
}

#Feature_ .Profile_Nagisa {
padding-bottom: 18%;
}

#Feature_ .Profile_Inner {
position: relative;
padding: 0 8% 8%;
border: 4px solid var(--c-2);
}

#Feature_ .Profile_MdsUnit {
display: flex;
justify-content: center;
flex-flow: column;
width: fit-content;
text-align: center;
background-color: #fff;
}

#Feature_ .Profile_Mds img {
width: auto;
margin: 0 auto;
}

#Feature_ .Profile_Lead {
margin-top: 6%;
font-weight: 500;
}

#Feature_ .Profile_Link {
width: 38px;
margin: 8% auto 0;
}

#Feature_ .Profile_Icon {
position: absolute;
right: 8%;
bottom: -16px;
width: 40px;
z-index: 2;
text-align: center;
background-color: #fff;
}

#Feature_ .Profile_Icon img {
display: inline-block;
width: 24px;
}

@media only screen and (max-width: 599px) {

	#Feature_ .Profile_ {
	margin-top: 14%;
	}

	#Feature_ .Profile_.Profile_Nagisa {
	margin-top: 6%;
	}

	#Feature_ .Profile_MdsUnit {
	margin: -20px auto 0;
	padding: 0 20px;
	}

	#Feature_ .Profile_Mds img {
	height: 28px;
	}

	#Feature_ .Profile_Mds_Sub {
	font-size: 13px;
	}

	#Feature_ .Profile_Lead {
	font-size: 14px;
	line-height: 1.8;
	}

}

@media print, screen and (min-width: 600px) {

	#Feature_ .Profile_ {
	margin-top: 16%;
	}

	#Feature_ .Profile_.Profile_Nagisa {
	margin-top: 8%;
	}

	#Feature_ .Profile_MdsUnit {
	margin: -20px auto 0;
	padding: 0 30px;
	}

	#Feature_ .Profile_Mds img {
	width: auto;
	height: 38px;
	}

	#Feature_ .Profile_Mds_Sub {
	font-size: 16px;
	}

	#Feature_ .Profile_Lead {
	font-size: 16px;
	line-height: 1.8;
	}

}

@media (hover: hover) {

}



/* ■ MOVIE ==================================================================================== */

#Feature_ .Movie_ {
background-color: #e0e9fa;
background-image:url(../img/Movie_Texture_Upper.png), url(../img/Movie_Texture_Lower.png), url(../img/Movie_Texture_Middle.png);
background-repeat: no-repeat, no-repeat, repeat;
background-position: left top, left bottom, left top;
}

#Feature_ .Movie_Mds {
margin: 0 auto;
}

#Feature_ .hacobune-app-container,
#Feature_ .hacobune-unit-video-outline {
padding: 0 !important;
background: transparent !important;
}

@media only screen and (max-width: 599px) {

	#Feature_ .Movie_ {
	margin-top: 0;
	padding: 30% 0 30%;
	}

	#Feature_ .Movie_Wrap {
	margin-top: 6%;
	padding: 0 4%;
	}

	#Feature_ .Movie_Mds {
	width: 180px;
	}

}

@media print, screen and (min-width: 600px) {

	#Feature_ .Movie_ {
	margin-top: 12%;
	padding: 30% 0 30%;
	}

	#Feature_ .Movie_Wrap {
	margin-top: 6%;
	padding: 0 12%;
	}

	#Feature_ .Movie_Mds {
	width: 280px;
	}

}



/* ■ フッター ==================================================================================== */

#Feature_ .Footer_ {
position: relative;
background-color: #edf2ff;
}

#Feature_ .Footer_Logo {
display: flex;
justify-content: center;
}

#Feature_ .Footer_SNS {
display: flex;
justify-content: center;
align-items: center;
}

#Feature_ .Footer_Copyright {
display: flex;
justify-content: center;
text-align: center;
}

@media only screen and (max-width: 599px) {

	#Feature_ .Footer_ {
	padding-top: 40px;
	padding-bottom: 90px;
	}

	#Feature_ .Footer_Logo img {
	width: 120px;
	}

	#Feature_ .Footer_SNS {
	margin-top: 30px;
	}

	#Feature_ .Footer_SNS a {
	margin: 0 15px;
	}

	#Feature_ .Footer_SNS img {
	width: 26px;
	}

	#Feature_ .Footer_Copyright {
	margin-top: 40px;
	font-size: 10px;
	line-height: 1.8;
	}

}

@media print, screen and (min-width: 600px) {

	#Feature_ .Footer_ {
	padding-top: 60px;
	padding-bottom: 120px;
	}

	#Feature_ .Footer_Logo img {
	width: 140px;
	}

	#Feature_ .Footer_SNS {
	margin-top: 30px;
	}

	#Feature_ .Footer_SNS a {
	margin: 0 15px;
	}

	#Feature_ .Footer_SNS img {
	width: 26px;
	}

	#Feature_ .Footer_Copyright {
	margin-top: 40px;
	font-size: 12px;
	line-height: 2;
	}

}



/* ■ ページの先頭へ ==================================================================================== */

#Feature_ #PageTop {
display: none;
position: fixed;
z-index: 10000;
opacity: 0.8;
}

@media only screen and (max-width: 767px) {

	#Feature_ #PageTop {
	bottom: 15px;
	right: 15px;
	width: 40px;
	}

}

@media print, screen and (min-width: 768px) {

	#Feature_ #PageTop {
	bottom: 30px;
	right: 30px;
	width: 60px;
	}
	
}



/* ■ アニメーション ==================================================================================== */

/*
Fade_1
*/


/* Fade_1 --------------------------------------------------- */

#Feature_ .Effect_Target_Fade_1 {
opacity: 0;
transition: all 1.75s cubic-bezier(0.4, 0, 0.2, 1);
}

#Feature_ .Effect_Fade_1 {
opacity: 1;
}