@charset "UTF-8";

/*HTML5リセット(http://www.html5.jp/html5doctor/html-5-reset-stylesheet.html)記述ここから*/

/*
html5doctor.com Reset Stylesheet
v1.4
2009-07-27
Author: Richard Clark - http://richclarkdesign.com
*/

html, body, div, span, object, iframe,
h1, h2, h3, h4, h5, h6, p, blockquote, pre,
abbr, address, cite, code,
del, dfn, em, img, ins, kbd, q, samp,
small, strong, sub, sup, var,
b, i,
dl, dt, dd, ol, ul, li,
fieldset, form, label, legend,
table, caption, tbody, tfoot, thead, tr, th, td,
article, aside, dialog, figure, footer, header,
hgroup, menu, nav, section,
time, mark, audio, video {
	margin:0;
	padding:0;
	border:0;
	outline:0;
	font-size:100%;
	vertical-align:baseline;
	background:transparent;
}
body {
	line-height:1;
	width: 100%;
}

article, aside, dialog, figure, footer, header,
hgroup, nav, section {
	display:block;
}

nav ul {
	list-style:none;
}

blockquote, q {
	quotes:none;
}

blockquote:before, blockquote:after,
q:before, q:after {
	content:'';
	content:none;
}

a {
	margin:0;
	padding:0;
	border:0;
	font-size:100%;
	color: #dc427d;
	vertical-align:baseline;
	background:transparent;
	text-decoration: none;
	-webkit-tap-highlight-color: rgba(0, 0, 0, 0);
}

a:hover {
	opacity: 0.8;
}

ins {
	background-color:#ff9;
	color:#000;
	text-decoration:none;
}

mark {
	background-color:#ff9;
	color:#000;
	font-style:italic;
	font-weight:bold;
}

del {
	text-decoration: line-through;
}

abbr[title], dfn[title] {
	border-bottom:1px dotted #000;
	cursor:help;
}

table {
	border-collapse:collapse;
	border-spacing:0;
}

hr {
	display:block;
	height:1px;
	border:0;
	border-top:1px solid #cccccc;
	margin:1em 0;
	padding:0;
}

input, select {
	vertical-align:middle;
}

/*HTML5リセットここまで*/

html, body {
	min-width: 100%;
	min-height: 100%;
}

ol,
ul {
	margin-left: 2em;
}

ul {
	list-style: disc;
}

#wrap {
	width: 100%;
	position: relative;
	height: auto !important;
	height: 100%;
	min-height: 100%;
	overflow: hidden;

}

.box {
	display: box;
	display: -webkit-box;
	display: -moz-box;
	display: -webkit-flex;
	display: -moz-flex;
	display: -ms-flex;
	display: -o-flex;
	display: flex;
	-webkit-flex-direction: row;
	-moz-flex-direction: row;
	-ms-flex-direction: row;
	-o-flex-direction: row;
	flex-direction: row;
	-webkit-flex-wrap: wrap;
	-moz-flex-wrap: wrap;
	-ms-flex-wrap: wrap;
	-o-flex-wrap: wrap;
	flex-wrap: wrap;
	-webkit-justify-content: space-between;
	-moz-justify-content: space-between;
	-ms-justify-content: space-between;
	-o-justify-content: space-between;
	justify-content: space-between;
}

/*従来リセット*/
* {
	margin: 0px;
	padding: 0px;
	font-size: 100%;
	font-family: 'Noto Sans Japanese', sans-serif;
	--webkit-tap-highlight-color: rgba(0,0,0,0);/*タップ時のリンク枠を消す*/
	-webkit-text-size-adjust: none; /*iPhone 自動文字調整OFF*/
}



/*ヘッダー*/
#header {
	position: fixed;
	top: 0;
	z-index: 100;
	width:100%;
	max-height: 60px;
	min-height: 30px;
	height: 6vw;
	/*background-color: rgba(256,256,256,0.7);*/
	background-color: rgba(256,256,256,0);
	color: #000;
}

#header .body{
	margin: 0 2vw;
	align-items: center;
	height: 100%;
}

@media (min-width: 1000px) {
	#header .body {
		margin: 0 100px;
	}
}

#header h1{
	max-width: 225px;
	max-height: 30px;
	width: 22.5vw;
	height: 3vw;
	padding: 5px;
}

#header h1 a{
	display: block;
	width: 100%;
	height: 100%;
	overflow: hidden;
	text-indent: -10000px;
	background: url(../img/common/logo_p.png) no-repeat;
	background-size: contain;
	background-position: center;
}

#headerNav {
	margin-right: 6vw;
}

#headerNav ul{
	margin: 0;
}

@media (min-width: 1000px) {
	#headerNav {
		margin-right: 0;
	}
}

#headerNav .icon{
	height: 3vw;
	padding-left: 2vw;
	max-height: 30px;
}

@media screen and (max-width: 1000px) {
	#headerNav .icon{
		height: 2vw;
		padding-left: 2vw;
		max-height: 20px;
	}
}

@media (min-width: 1000px) {
	#headerNav .icon{
		padding-left: 20px;
	}
}

#headerNav .icon a{
	display: block;
	height: 100%;
}

#headerNav .icon img{
	display: block;
	height: 100%;
	width: auto;
}

/*各アイコンhoverここから*/

#header .logo_yasuragiTsuya:hover{
	transition: all 0.3s ease-out;
	-webkit-transition: all 0.3s ease-out;
	-moz-transition: all 0.3s ease-out;
	-ms-transition: all 0.3s ease-out;
	-o-transition: all 0.3s ease-out;
	background: #9a633c;
}

#header .logo_yasuragi:hover{
	transition: all 0.3s ease-out;
	-webkit-transition: all 0.3s ease-out;
	-moz-transition: all 0.3s ease-out;
	-ms-transition: all 0.3s ease-out;
	-o-transition: all 0.3s ease-out;
	background: #9a633c;
}

#header .logo_yasuragi_en:hover{
	transition: all 0.3s ease-out;
	-webkit-transition: all 0.3s ease-out;
	-moz-transition: all 0.3s ease-out;
	-ms-transition: all 0.3s ease-out;
	-o-transition: all 0.3s ease-out;
	background: #9a633c;
}

#header .logo_ange:hover{
	transition: all 0.3s ease-out;
	-webkit-transition: all 0.3s ease-out;
	-moz-transition: all 0.3s ease-out;
	-ms-transition: all 0.3s ease-out;
	-o-transition: all 0.3s ease-out;
	background: #ff2d64;
}

#header .logo_jewel:hover{
	transition: all 0.3s ease-out;
	-webkit-transition: all 0.3s ease-out;
	-moz-transition: all 0.3s ease-out;
	-ms-transition: all 0.3s ease-out;
	-o-transition: all 0.3s ease-out;
	background: #ee97cc;
}

#header .logo_berry:hover{
	transition: all 0.3s ease-out;
	-webkit-transition: all 0.3s ease-out;
	-moz-transition: all 0.3s ease-out;
	-ms-transition: all 0.3s ease-out;
	-o-transition: all 0.3s ease-out;
	background: #ff7f7f;
}

#header .logo_fairy:hover{
	transition: all 0.3s ease-out;
	-webkit-transition: all 0.3s ease-out;
	-moz-transition: all 0.3s ease-out;
	-ms-transition: all 0.3s ease-out;
	-o-transition: all 0.3s ease-out;
	background: #a3df4d;
}

#header .logo_monDeNormu:hover{
	transition: all 0.3s ease-out;
	-webkit-transition: all 0.3s ease-out;
	-moz-transition: all 0.3s ease-out;
	-ms-transition: all 0.3s ease-out;
	-o-transition: all 0.3s ease-out;
	background: #fed94c;
}

#header .logo_jp:hover{
	transition: all 0.3s ease-out;
	-webkit-transition: all 0.3s ease-out;
	-moz-transition: all 0.3s ease-out;
	-ms-transition: all 0.3s ease-out;
	-o-transition: all 0.3s ease-out;
	background: darkorange;
}

#header .logo_en:hover{
	transition: all 0.3s ease-out;
	-webkit-transition: all 0.3s ease-out;
	-moz-transition: all 0.3s ease-out;
	-ms-transition: all 0.3s ease-out;
	-o-transition: all 0.3s ease-out;
	background: darkorange;
}

#header .logo_cart:hover{
	transition: all 0.3s ease-out;
	-webkit-transition: all 0.3s ease-out;
	-moz-transition: all 0.3s ease-out;
	-ms-transition: all 0.3s ease-out;
	-o-transition: all 0.3s ease-out;
	background: darkorange;
}

#header .icon img{
	opacity: 0;
}

#header .icon .logo_cart_on img{
	opacity: 1;
}

#header .icon a{
	background-repeat: no-repeat;
	mask-repeat: no-repeat;
}

#header .logo_yasuragiTsuya,
#header .logo_yasuragi,
#header .logo_yasuragi_en,
#header .logo_ange,
#header .logo_jewel,
#header .logo_berry,
#header .logo_fairy,
#header .logo_monDeNormu,
#header .logo_jp,
#header .logo_en,
#header .logo_cart{
	background: black;
}

@media all and (-ms-high-contrast: none) {
	*::-ms-backdrop, #header .icon img{
		opacity: 1;	
	}
	/* IE11 にのみ適用される */
	#header .logo_yasuragiTsuya,
	#header .logo_yasuragi,
	#header .logo_yasuragi_en,
	#header .logo_ange,
	#header .logo_jewel,
	#header .logo_berry,
	#header .logo_fairy,
	#header .logo_monDeNormu,
	#header .logo_jp,
	#header .logo_en,
	#header .logo_cart,
	#header .logo_cart_on{
		background: none;
	}

	/*各アイコンhoverここから*/

	#header .logo_yasuragiTsuya:hover{
		transition: all 0.3s ease-out;
		-webkit-transition: all 0.3s ease-out;
		-moz-transition: all 0.3s ease-out;
		-ms-transition: all 0.3s ease-out;
		-o-transition: all 0.3s ease-out;
		background: none;
	}

	#header .logo_yasuragi:hover{
		transition: all 0.3s ease-out;
		-webkit-transition: all 0.3s ease-out;
		-moz-transition: all 0.3s ease-out;
		-ms-transition: all 0.3s ease-out;
		-o-transition: all 0.3s ease-out;
		background: none;
	}

	#header .logo_yasuragi_en:hover{
		transition: all 0.3s ease-out;
		-webkit-transition: all 0.3s ease-out;
		-moz-transition: all 0.3s ease-out;
		-ms-transition: all 0.3s ease-out;
		-o-transition: all 0.3s ease-out;
		background: none;
	}

	#header .logo_ange:hover{
		transition: all 0.3s ease-out;
		-webkit-transition: all 0.3s ease-out;
		-moz-transition: all 0.3s ease-out;
		-ms-transition: all 0.3s ease-out;
		-o-transition: all 0.3s ease-out;
		background: none;
	}

	#header .logo_jewel:hover{
		transition: all 0.3s ease-out;
		-webkit-transition: all 0.3s ease-out;
		-moz-transition: all 0.3s ease-out;
		-ms-transition: all 0.3s ease-out;
		-o-transition: all 0.3s ease-out;
		background: none;
	}

	#header .logo_berry:hover{
		transition: all 0.3s ease-out;
		-webkit-transition: all 0.3s ease-out;
		-moz-transition: all 0.3s ease-out;
		-ms-transition: all 0.3s ease-out;
		-o-transition: all 0.3s ease-out;
		background: none;
	}

	#header .logo_fairy:hover{
		transition: all 0.3s ease-out;
		-webkit-transition: all 0.3s ease-out;
		-moz-transition: all 0.3s ease-out;
		-ms-transition: all 0.3s ease-out;
		-o-transition: all 0.3s ease-out;
		background: #a3df4d;
	}

	#header .logo_monDeNormu:hover{
		transition: all 0.3s ease-out;
		-webkit-transition: all 0.3s ease-out;
		-moz-transition: all 0.3s ease-out;
		-ms-transition: all 0.3s ease-out;
		-o-transition: all 0.3s ease-out;
		background: none;
	}

	#header .logo_jp:hover{
		transition: all 0.3s ease-out;
		-webkit-transition: all 0.3s ease-out;
		-moz-transition: all 0.3s ease-out;
		-ms-transition: all 0.3s ease-out;
		-o-transition: all 0.3s ease-out;
		background: none;
	}

	#header .logo_en:hover{
		transition: all 0.3s ease-out;
		-webkit-transition: all 0.3s ease-out;
		-moz-transition: all 0.3s ease-out;
		-ms-transition: all 0.3s ease-out;
		-o-transition: all 0.3s ease-out;
		background: none;
	}

	#header .logo_cart:hover{
		transition: all 0.3s ease-out;
		-webkit-transition: all 0.3s ease-out;
		-moz-transition: all 0.3s ease-out;
		-ms-transition: all 0.3s ease-out;
		-o-transition: all 0.3s ease-out;
		background: none;
	}

}

#header .logo_yasuragiTsuya_mask{
	-webkit-mask-image: url(../img/common/logo_yasuragiTsuya.png);
	mask-image: url(../img/common/logo_yasuragiTsuya.png);
	-webkit-mask-size: contain;
}

#header .logo_yasuragi_mask{
	-webkit-mask-image: url(../img/common/logo_yasuragi.png);
	mask-image: url(../img/common/logo_yasuragi.png);
	-webkit-mask-size: contain;
}

#header .logo_yasuragi_mask_en{
	-webkit-mask-image: url(../img/common/logo_yasuragi_en.png);
	mask-image: url(../img/common/logo_yasuragi_en.png);
	-webkit-mask-size: contain;
}

#header .logo_ange_mask{
	-webkit-mask-image: url(../img/common/logo_ange.png);
	mask-image: url(../img/common/logo_ange.png);
	-webkit-mask-size: contain;
}

#header .logo_monDeNormu_mask{
	-webkit-mask-image: url(../img/common/logo_monDeNormu-L.png);
	mask-image: url(../img/common/logo_monDeNormu-L.png);
	-webkit-mask-size: contain;
}

#header .logo_jewel_mask{
	-webkit-mask-image: url(../img/common/logo_jewel.png);
	mask-image: url(../img/common/logo_jewel.png);
	-webkit-mask-size: contain;
}

#header .logo_berry_mask{
	-webkit-mask-image: url(../img/common/logo_berry.png);
	mask-image: url(../img/common/logo_berry.png);
	-webkit-mask-size: contain;
}

#header .logo_fairy_mask{
	-webkit-mask-image: url(../img/common/logo_fairy.png);
	mask-image: url(../img/common/logo_fairy.png);
	-webkit-mask-size: contain;
}

#header .logo_jp_mask{
	-webkit-mask-image: url(../img/common/logo_jp.png);
	mask-image: url(../img/common/logo_jp.png);
	-webkit-mask-size: contain;
}

#header .logo_en_mask{
	-webkit-mask-image: url(../img/common/logo_en.png);
	mask-image: url(../img/common/logo_en.png);
	-webkit-mask-size: contain;
}

#header .logo_cart_mask{
	-webkit-mask-image: url(../img/common/icon_cart2.png);
	mask-image: url(../img/common/icon_cart2.png);
	-webkit-mask-size: contain;
}

/*#header .logo_cart_on{
	-webkit-mask-image: url(../img/common/icon_cart_on.png?date=2019);
    mask-image: url(../img/common/icon_cart_on.png?date=2019);
    -webkit-mask-size: contain;
    }*/
    /*各アイコンhoverここまで*/

    /*ステップバー*/

    .stepBar {
    	position: relative;
    	list-style: none;
    	margin: 0 0 1em;
    	padding: 0;
    	text-align: center;
    	width: 100%;
    	overflow: hidden;
    	*zoom: 1;
    }
    .stepBar .step {
    	position: relative;
    	float: left;
    	display: inline-block;
    	line-height: 40px;
    	padding: 0 40px 0 20px;
    	background-color: #eee;
    	-moz-box-sizing: border-box;
    	-webkit-box-sizing: border-box;
    	box-sizing: border-box;
    	color: #ccc;
    	white-space: nowrap;
    	text-overflow: ellipsis;
    }
    .stepBar .step:before, .stepBar .step:after {
    	position: absolute;
    	left: -15px;
    	display: block;
    	content: '';
    	background-color: #eee;
    	border-left: 4px solid #FFF;
    	width: 20px;
    	height: 20px;
    }
    .stepBar .step:after {
    	top: 0;
    	-moz-transform: skew(30deg);
    	-ms-transform: skew(30deg);
    	-webkit-transform: skew(30deg);
    	transform: skew(30deg);
    }
    .stepBar .step:before {
    	bottom: 0;
    	-moz-transform: skew(-30deg);
    	-ms-transform: skew(-30deg);
    	-webkit-transform: skew(-30deg);
    	transform: skew(-30deg);
    }
    .stepBar .step:first-child {
    	-moz-border-radius-topleft: 4px;
    	-webkit-border-top-left-radius: 4px;
    	border-top-left-radius: 4px;
    	-moz-border-radius-bottomleft: 4px;
    	-webkit-border-bottom-left-radius: 4px;
    	border-bottom-left-radius: 4px;
    }
    .stepBar .step:first-child:before, .stepBar .step:first-child:after {
    	content: none;
    }
    .stepBar .step:last-child {
    	-moz-border-radius-topright: 4px;
    	-webkit-border-top-right-radius: 4px;
    	border-top-right-radius: 4px;
    	-moz-border-radius-bottomright: 4px;
    	-webkit-border-bottom-right-radius: 4px;
    	border-bottom-right-radius: 4px;
    }
    .stepBar .step.current {
    	color: #FFF;
    	background-color: #26bfa1;
    }
    .stepBar .step.current:before, .stepBar .step.current:after {
    	background-color: #26bfa1;
    }


    .stepBar.step2 .step {
    	width: 50%;
    }
    .stepBar.step3 .step {
    	width: 33.333%;
    }
    .stepBar.step4 .step {
    	width: 25%;
    }
    .stepBar.step5 .step {
    	width: 20%;
    }

    /*エラーメッセージ*/

    #wrap{
    	background: #fff;
    }

    #container .errorMessage {
    	background: #ff006c;
    	color: #fff;
    	padding: 10px 30px;
    	margin: 20px 0;
    }

    #container .systemMessage {
    	background: #0166ad;
    	color: #fff;
    	padding: 10px 30px;
    	margin: 20px;
    }

    #container .secondTitle{
    	display: flex;
    	align-items: center;
    	margin: 6vw auto;
    	color: #dc427d;
    	font-weight: 100;
    }


    #container .secondTitle:before,
    #container .secondTitle:after {
    	content: "";
    	flex-grow: 1;
    	height: 4px;
    	background: #dc427d;
    	display: block;
    }

    .secondContainer .body{
    	margin: 0 2vw;
    	line-height: 1.5;
    }


    @media (min-width: 1000px) {
    	.secondContainer .body {
    		margin: 0 100px;
    	}

    	#container .secondTitle{
    		margin: 60px auto;
    	}
    }

    .secondContainer .topVisual{
    	height: 40vw;
    	background: #fff;
    	background-size: cover;
    	background-repeat: no-repeat;
    	background-position: center;
    	display: flex;
    	align-items: center;
    	justify-content: center;
    }

    .secondContainer .topVisual .topVisualTitle{
    	font-weight: bold;
    	font-family: 'Pathway Gothic One', sans-serif;
    	text-align: center;
    	letter-spacing: 0.2em;
    	color: #fff;
    	opacity: 0.8;
    	animation-name: titleFadein;
    	animation-duration: 2s;
    }


    .secondContainer .topVisual2{
    	height: 30vw;
    	background: #fff;
    	background-size: cover;
    	background-repeat: no-repeat;
    	background-position: center;
    	display: flex;
    	align-items: center;
    	justify-content: center;
    }

    .secondContainer .topVisual2 .topVisualTitle{
    	font-weight: bold;
    	font-family: 'Pathway Gothic One', sans-serif;
    	text-align: center;
    	letter-spacing: 0.2em;
    	color: #fff;
    	opacity: 0.8;
    	animation-name: titleFadein;
    	animation-duration: 2s;
    }

    .secondContainer .topVisual3{
    	height: 20vw;
    	background: #fff;
    	background-size: cover;
    	background-repeat: no-repeat;
    	background-position: center;
    	display: flex;
    	align-items: center;
    	justify-content: center;
    }

    .secondContainer .topVisual3 .topVisualTitle{
    	font-weight: bold;
    	font-family: 'Pathway Gothic One', sans-serif;
    	text-align: center;
    	letter-spacing: 0.2em;
    	color: #fff;
    	opacity: 0.8;
    	animation-name: titleFadein;
    	animation-duration: 2s;
    }




    @keyframes titleFadein {
    	from {
    		opacity: 0;
    		transform: translateY(20px);
    	}
    	to {
    		opacity: 0.8;
    		transform: translateY(0);
    	}
    }

    .secondContainer .subTitle1{
    	border-bottom: solid #000 1px;
    	margin-bottom: 2vw;
    }

    .secondContainer section{
    	padding-bottom: 5vw;
    }

    @media (min-width: 1000px) {
    	.secondContainer .subTitle1{
    		margin-bottom: 20px;
    	}

    	.secondContainer section{
    		padding-bottom: 50px;
    	}
    }

    .secondContainer .subTitle2{
    	color: #dc427d;
    }

    .secondContainer .note{
    	color: #dc427d;
    }

    .secondContainer .freeSection {
    	margin: 5vw 0;
    }

    @media (min-width: 1000px) {
    	.secondContainer .freeSection {
    		padding: 50px 0;
    	}
    }

    /*NEW*/
    #container .new_wap {
    	position: relative;
    }

    #container .newRibbon {
    	position: absolute;
    	top: 0;
    	right: 0;
    	width: 85px;
    	height: 85px;
    	overflow: hidden;
    }

    #container .newRibbon span {
    	display: inline-block;
    	position: absolute;
    	z-index: 2;
    	padding: 5px 0;
    	left: -24px;
    	top: 20px;
    	width: 160px;
    	text-align: center;
    	font-size: 18px;
    	line-height: 16px;
    	background: #dc427d;
    	color: #fff;
    	letter-spacing: 0.05em;
    	-webkit-transform: rotate(45deg);
    	transform: rotate(45deg);
    	box-shadow: 0 0 0 2px #dc427d;
    	border-top: dashed 1px rgba(255, 255, 255, 0.65);
    	border-bottom: dashed 1px rgba(255, 255, 255, 0.65);
    }

    /*フッター最下部固定*/

    #wrap {
    	min-height: 100vh;
    	position: relative;
    	padding-bottom: 44vw;
    }


    footer{
    	width: 100%;
    	background-color: #000;
    	color: #fff;
    	position: absolute;
    	bottom: 0;
    	height: 44vw;
    	box-sizing: border-box;
    }

    @media (min-width: 1000px) {
    	footer{
    		height: 440px;
    	}
    	#wrap {
    		padding-bottom: 440px;
    	}
    }

    footer ul {
    	margin: 0;
    	margin-right: 5%;
    }

    footer .body{
    	margin: 2vw;
    }

    footer .sns{
    	justify-content: center;
    	height: 5vw;
    }

    footer .sns img{
    	height: 5vw;
    	width: auto;
    }

    @media (min-width: 1000px) {
    	footer .sns{
    		height: 50px;
    	}
    	footer .sns img{
    		height: 50px;
    	}
    }

    @media (min-width: 1000px) {
    	footer .body {
    		margin: 20px 100px;
    	}
    }


    footer .body h3{
    	width: 30%;
    }

    footer .body h3 img{
    	width: 100%;
    }

    footer .footerNav{
    	flex: 1;
    	width: 100%;
    }

    footer .footerNav {
    	justify-content: flex-end;
    }

    footer .footerNav ul{
    	max-width: 33%;
    }

    footer .footerNav li{
    	line-height: 2;
    }

    footer .footerNav a{
    	color: #fff;
    }

    footer address{
    	background-color: #dc427d;
    	font-size: 10px;
    	text-align: right;
    	text-decoration: none;
    	font-style: normal;
    	padding: 5px 0;
    	margin: 0 auto;
    	position: absolute;
    	bottom: 0;
    	left: 0;
    	right: 0;
    	text-align: center;
    }

    @media (max-width: 1000px) {
    	footer address{
    		text-align: center;
    	}
    }


    /*汎用クラス*/

    .boxCenter {
    	margin: 0 auto;
    }

    .hidden {
    	display: none;
    }

    .block {
    	display: block;
    }

    .txHidden {
    	display: block;
    	text-indent: -10000px;
    	overflow: hidden;
    }

    .alignR {
    	text-align: right !important;
    }

    .alignL {
    	text-align: left !important;
    }

    .alignC {
    	text-align: center !important;
    }

    .textL {
    	font-size: 20px;
    }

    .textM {
    	font-size: 12px;
    }

    .textS {
    	font-size: 10px;
    }

    .inline {
    	display: inline
    }

    .bold {
    	font-weight: bold;
    }

    .normal {
    	font-weight: normal;
    }

    .white {
    	color: #ffffff !important;
    }

    .black {
    	color: #000000 !important;
    }

    .red {
    	color: #ff0000 !important;
    }

    .blue {
    	color: #0000ff !important;
    }

    .green{
    	color: #00ff00 !important;
    }

    .yellow{
    	color: #ffff00 !important;
    }

    .pink{
    	color: #ff00ff !important;
    }


    img {
    	border-style:none;
    	vertical-align: text-bottom;
    }

    a {
    	overflow: hidden;
    	outline: none;
    }

    .sp {
    	display: none;
    }
    .pc {
    	display: block;
    }

    .sp_inline {
    	display: none;
    }
    .pc_inline {
    	display: inline;
    }

    .btBox {
    	padding: 5vw 0;
    	text-align: center;
    }

    .btBox_monDeNormu {
    	padding: 0vw 0 !important;
    }

    .customer_centerTel{
    	font-size: 2vw;
    }

    /* 16px @ 320px increasing to 36px @ 1000px */
    @media (max-width: 320px) {
    	.btBox {
    		padding: 25px 0;
    	}
    }
    /* Prevent font scaling beyond this breakpoint */
    @media (min-width: 1000px) {
    	.btBox {
    		padding: 50px 0;
    	}
    }

    .bt_g{
    	display: inline-block;
    	color: #fff;
    	border: 1px solid #fff;
    	font-weight: bold;
    	padding: 0 8%;
    	text-align: center;
    	box-sizing: border-box;
    	max-width: 350px;
    	min-width: 100px;
    	line-height: 2;
    }

    .bt_gp{
    	display: inline-block;
    	color: #ff93b3;
    	border: 1px solid #ff93b3;
    	font-weight: bold;
    	padding: 0 8%;
    	text-align: center;
    	/*box-sizing: border-box;*/
    	max-width: 350px;
    	min-width: 100px;
    	line-height: 2;
    }

    .bt_p{
    	display: inline-block;
    	color: #fff;
    	font-weight: bold;
    	padding: 0 2%;
    	text-align: center;
    	box-sizing: border-box;
    	background: #ff93b3;
    }

    .bt_r{
    	display: inline-block;
    	color: #fff;
    	font-weight: bold;
    	padding: 0 2%;
    	text-align: center;
    	box-sizing: border-box;
    	background: #e4007f;
    }

    /* 15px @ 320px increasing to 24px @ 1000px */
    .fontSize_m {
    	font-size: calc(1rem + ((1vw - 3.2px) * 2.9412));
    	/* Where: * 2.9412 = 100 * font_Size_Difference / viewport_Width_Difference */
    }
    /* Prevent font scaling beyond this breakpoint */
    @media (min-width: 1000px) {
    	.fontSize_m {
    		font-size: 36px;
    	}
    }

    /* 15px @ 320px increasing to 30px @ 1000px */
    .fontSize_m1{
    	font-size: calc(0.9375rem + ((1vw - 3.2px) * 2.2059));
    	/* Where: * 2.2059 = 100 * font_Size_Difference / viewport_Width_Difference */
    }

    @media (min-width: 1000px) {
    	.fontSize_m1 {
    		font-size: 30px;
    	}
    }

    /* 15px @ 320px increasing to 34px @ 1000px */
    .fontSize_m2{
    	font-size: calc(0.9375rem + ((1vw - 3.2px) * 1.3235));
    	/* Where: * 1.3235 = 100 * font_Size_Difference / viewport_Width_Difference */
    }

    @media (min-width: 1000px) {
    	.fontSize_m2 {
    		font-size: 24px;
    	}
    }

    /*ショールームページでのみ使用*/
    .fontSize_m3{
    	font-size: 21px;
    }

    @media (min-width: 1000px) {
    	.fontSize_m3 {
    		font-size: 21px;
    	}
    }


    /* 14px @ 320px increasing to 19px @ 1000px */
    .fontSize_s {
    	font-size: calc(0.875rem + ((1vw - 3.2px) * 0.7353));
    	/* Where: * 0.7353 = 100 * font_Size_Difference / viewport_Width_Difference */
    }

    /* Prevent font scaling beyond this breakpoint */
    @media (min-width: 1000px) {
    	.fontSize_s {
    		font-size: 19px;
    	}
    }


    /* 40px @ 320px increasing to 80px @ 1000px */
    .fontSize_price {
    	font-size: calc(2.5rem + ((1vw - 3.2px) * 5.8824));
    	/* Where: * 5.8824 = 100 * font_Size_Difference / viewport_Width_Difference */
    }

    /* Prevent font scaling beyond this breakpoint */
    @media (min-width: 1000px) {
    	.fontSize_price {
    		font-size: 80px;
    	}
    }

    /* 30px @ 320px increasing to 80px @ 1000px */
    .fontSize_xl {
    	font-size: calc(1.875rem + ((1vw - 3.2px) * 7.3529));
    	/* Where: * 7.3529 = 100 * font_Size_Difference / viewport_Width_Difference */
    }

    /* Prevent font scaling beyond this breakpoint */
    @media (min-width: 1000px) {
    	.fontSize_xl {
    		font-size: 80px;
    	}
    }


    /* 20px @ 320px increasing to 48px @ 1000px */
    .fontSize_l {
    	font-size: calc(1.25rem + ((1vw - 3.2px) * 4.1176));
    	/* Where: * 4.1176 = 100 * font_Size_Difference / viewport_Width_Difference */
    }

    /* Prevent font scaling beyond this breakpoint */
    @media (min-width: 1000px) {
    	.fontSize_l {
    		font-size: 48px;
    	}
    }


    /* 12px @ 320px increasing to 16px @ 1000px */
    .fontSize_s2 {
    	font-size: calc(0.75rem + ((1vw - 3.2px) * 0.5882));
    	/* Where: * 0.5882 = 100 * font_Size_Difference / viewport_Width_Difference */
    }

    /* Prevent font scaling beyond this breakpoint */
    @media (min-width: 1000px) {
    	.fontSize_s2 {
    		font-size: 16px;
    	}
    }

    .fontSize_ss {
    	font-size: 12px;
    }

    #from{
    	margin-top:-64px;
    	padding-top:64px;
    }

    /*ヘッダスクロール表示*/
    #header {
    	-webkit-transition: all 0.3s;
    	-moz-transition: all 0.3s;
    	-ms-transition: all 0.3s;
    	-o-transition: all 0.3s;
    	transition: all 0.3s;
    }

    /*#header.scrolled {
    	background: rgba(255, 255, 255, 0.7);
    }*/
    /*ヘッダスクロール表示*/

    /*ヘッダスクロール表示_常時表示*/
    #header {
    	background: rgba(255, 255, 255, 0.7);
    }
    /*ヘッダスクロール表示_常時表示*/

    /* サイドオープン時にメインコンテンツを覆う部分 */

    #wrap {
    	z-index: 2;
    	-webkit-transition: all .5s ease;
    	transition: all .5s ease;
    }

    body {
    	position: relative;
    }

    .overlay {
    	content: '';
    	visibility: hidden;
    	position: fixed;
    	top: 0;
    	left: 0;
    	display: block;
    	width: 100%;
    	height: 100%;
    	background: rgba(0,0,0,0);
    	-webkit-transition: all .5s ease;
    	transition: all .5s ease;
    	z-index: 3;
    }
    .overlay::after {
    	content: "";
    	visibility: hidden;
    	position: fixed;
    	top: 40%;
    	left: 0;
    	display: block;
    	width: 100%;
    	height: 50px;
    	color: rgba(255,255,255,0);
    	font-size: 40px;
    	font-weight: bold;
    	text-align: center;
    	-webkit-transition: all .5s ease;
    	transition: all .5s ease;
    }
    .side-open .overlay {
    	visibility: visible;
    	cursor: pointer;
    	background: rgba(0,0,0,.7);
    }
    .side-open .overlay::after {
    	visibility: visible;
    	color: rgba(255,255,255,.8);
    }

    /* サイドメニュー ※リストのスタイルは省略 */
    .side-menu {
    	position: fixed;
    	box-sizing: border-box;
    	top: 0;
    	right: 0;
    	width: 30vw;
    	height: 100vh;
    	min-width: 300px;
    	padding-top: 80px;
    	text-align: left;
    	font-size: 13px;
    	background: #fff;
    	z-index: 1;
    	overflow-y: scroll;
    }


    .side-open .side-menu-btn,
    .side-open .side-menu {
    	z-index: 10000;
    }

    .side-menu-btn {
    	position: fixed;
    	top: 0;
    	right: 0;
    	width: 6vw;
    	height: 6vw;
    	min-width: 30px;
    	min-height: 30px;
    	padding: 2vw;
    	background: #dc427d;
    	color: #fff;
    	cursor: pointer;
    	z-index: 4;
    	text-align: center;
    	box-sizing: border-box;
    }

    .side-menu-btn .menuBtntext{
    	display: flex;
    	align-items: center;
    	justify-content: center;
    	text-align: center;
    	line-height: 1;
    	padding: 0;
    	margin: 0;
    	position: absolute;
    	top: 0;
    	bottom: 0;
    	right: 0;
    	left: 0;
    }

    .side-menu-btn .menuBtntext>div{
    	text-align: center;
    }

    .side-open .side-menu-btn .menuBtntext {
    	display: none;
    }

    @media (min-width: 1000px) {
    	.side-menu-btn {
    		width: 60px;
    		height: 60px;
    		padding: 20px;
    	}
    }

    .side-open .side-menu-btn{
    	background-color: #000;
    }


    /* サイドメニューオープン */
    .side-open #wrap,
    .side-open .overlay {
    	-webkit-transform: translate3d(-30vw, 0, 0);
    	transform: translate3d(-30vw, 0, 0);
    }

    .ellipsis-v{
    	position: relative;
    	display: block;
    	cursor: pointer;
    	width: 100%;
    	height: 100%;
    	margin: 0;

    	display: none;
    }

    .side-open .ellipsis-v{
    	display: block;
    }

    .ellipsis-v .point {
    	position: absolute;
    	left: 0;
    	right: 0;
    	display: block;
    	width: 100%;
    	height: 2px;
    	min-height: 1px;
    	margin: auto;
    	flex-shrink: 0;
    	zoom:1;
    	background: #fff;
    	-webkit-transition: all .3s;
    	transition: all .3s;
    }

    .ellipsis-v .point.top {
    	top: 0;
    }

    .ellipsis-v .point.mid {
    	top: 0;
    	bottom: 0;
    }

    .ellipsis-v .point.bot {
    	bottom: 0;
    }

    .side-menu-btn:hover .top {
    	-webkit-transform: translateY(-2px);
    	-ms-transform: translateY(-2px);
    	transform: translateY(-2px);
    }

    .side-menu-btn:hover .bot {
    	-webkit-transform: translateY(2px);
    	-ms-transform: translateY(2px);
    	transform: translateY(2px);
    }


    .side-open .side-menu-btn:hover .top,
    .side-open .top {
    	width: 130%;
    	-webkit-transform-origin: left top;
    	-ms-transform-origin: left top;
    	transform-origin: left top;
    	-webkit-transform: rotate(45deg);
    	-ms-transform: rotate(45deg);
    	transform: rotate(45deg);
    }

    .side-open .mid {
    	opacity: 0;
    }

    .side-open .side-menu-btn:hover .bot,
    .side-open .bot {
    	width: 130%;
    	-webkit-transform-origin: left bottom;
    	-ms-transform-origin: left bottom;
    	transform-origin: left bottom;
    	-webkit-transform: rotate(-45deg);
    	-ms-transform: rotate(-45deg);
    	transform: rotate(-45deg);
    }

    .side-open .side-menu-btn:hover .bot,
    .side-open .side-menu-btn:hover .top {
    	background: #ccc;
    }

    #gnavi ul{
    	margin-left: 0;
    	border-top: dotted 1px #000;
    }

    #gnavi li{
    	border-bottom: dotted 1px #000;
    }

    #gnavi li a {
    	display: block;
    	padding: 20px;
    	font-size: 14px;
    	color: #000;
    }

    #gnavi li a {
    	display: block;
    	padding: 20px;
    	color: #000;
    }

    #gnavi li a:hover {
    	background-color: #000;
    	color: #fff;
    }

    /*Gナビ */
    .Gnavi {
    	margin-bottom: 40px;
    }

    .navi_UL li {
    	height: 50px;
    	padding: 0px 0px 0px 6px;
    	/*background: url("../img/common/side_navi/navi_arrow.png") right 7px center no-repeat;*/
    	border-bottom: dotted 1px #aaa9a9;
    }

    .navi_UL li a{
    	display: block;
    	height: 50px;
    	/*background-color: #ccc;*/
    	line-height: 50px;
    	font-size: 14px;
    	color: #3d3c3c;
    }

    .navi_UL li a img{
    	vertical-align: middle;
    	margin-right: 5px;
    }

    /*ページトップ*/
    #fixPagetop {
    	width: 30px;
    	height: 180px;
    	position: fixed;
    	right: 0;
    	bottom: 30px;
    	z-index: 100;
    	display: none;
    	cursor: pointer;
    }

    #fixPagetop img{
    	height: auto;
    	width: 100%;
    }

    #fixPagetop:hover {
    	opacity: 0.9;
    }

    /*戻るボタン汎用*/

    .backBt {
    	display: inline-block;
    	background-color:rgba(135,135,135,0.8);
    	color: #fff;
    	line-height: 2;
    	padding: 2px 30px;
    }

    #drawerArea .editNote{
    	background: #3cb371;
    	color: #fff;
    	text-align: center;
    	padding: 20px;
    }

    #drawerArea .editReleaseBtn{
    	display: inline-block;
    	background-color:rgba(135,135,135,1);
    	color: #fff;
    	text-align: center;
    	line-height: 2;
    	padding: 2px 30px;
    	margin: 5px auto;
    	border-radius: 5px;
    }

    #drawerArea .campaign{
    	background: #3cb371;
    	color: #fff;
    	text-align: center;
    	padding: 20px;
    	line-height: 1.5;
    }

    #cartMessage2,
    #cartMessage {
    	margin-top: -100px;
    	padding-top: 100px;
    	text-align: center;
    }

    #cartMessage2 .buyBtn,
    #cartMessage .buyBtn{
    	display: inline-block;
    	border-radius: 5px;
    	border: none;
    	padding: 0.5vw;
    	color: #dc427d;
    	cursor: pointer;
    	background: #fff;
    	zoom: 1;
    	margin: 5px;
    }


    /*反転ボタン汎用*/

    .inversion_button a {
    	display: inline-block;
    	border: #000 solid 1px;
    	margin-bottom: 2vw;
    	width: 40%;
    	padding: 2vw;
    	text-align: center;
    	color: #000;
    	background-repeat: no-repeat;
    	background-size: contain;
    	background-position: right center;
    	transition: all 1s ease-out;
    }

    .inversion_button a:hover {
    	background-color: #000;
    	color: #fff;
    	opacity: 1;
    }


    /*共通追加項目*/

    #bloodVessel {
    	position: relative;
    	padding-bottom: 0;
    }

    #bloodVessel .filter {
    	background-color: rgba(0,0,0,0.2);
    	box-sizing: border-box;
    	width: 100%;
    	height: 100%;
    }

    #bloodVessel .on {
    	background-color: rgba(0,0,0,0) !important;
    }

    .cautionBox {
    	background-color: #dc427d;
    	padding: 10px;
    	color: #fff;
    	margin-top: 10px;
    }

    .cautionBox a{
    	color: #fff;
    	text-decoration: underline;
    }

    #lactoneBody .text{
		margin-right: 45%;
	}

    #lactoneBody p.captopn{
    	width: 80%;
    }

    .pubicHair_brown{
    	width: 70%;
    	padding-top: 20px;
    	border-top: 1px solid #fff;
    	color: #fff !important;
    }

    #pubicHair .select li.noImage {
	    width: 70% !important;
	    min-width: 120px;
	    margin-bottom: 0;
	    padding: 1vw;
	}



.contactBtn_secondLife_flex{
	display: flex;
	margin-bottom: 100px;
}

.contactBtn_secondLife_noFlex{
	margin-bottom: 100px;
}

.contactBtn_secondLife_flex a{
	margin: 0 10px !important;
}

/* 15px @ 320px increasing to 34px @ 1000px */
#shoppingResult .btSubmit{
	font-size: calc(0.9375rem + ((1vw - 3.2px) * 1.3235));

	/* Where: * 1.3235 = 100 * font_Size_Difference / viewport_Width_Difference */
	padding-top: 5% !important;
    padding-bottom: 5% !important;
}

@media (min-width: 1000px) {
	#shoppingResult .btSubmit {
		font-size: 24px;
		padding-top: 5% !important;
	    padding-bottom: 5% !important;
	}
}


/*安心保証サービス*/

#guaranteeService .body{
	padding: 5vw 10px;
	box-sizing: border-box;
	line-height: 1.5;
}

#guaranteeService .guaranteeServiceInfo {
    background-color: #ba2636;
    align-items: center;
    text-align: center;
    margin-top: 30px;
}

#guaranteeService .newsLinkBtn{
	text-align: center;
}

#guaranteeService .newsLinkBtn a{
	background: #ba2636;
	color: #fff;
	width: 50%;
	margin: 50px auto 80px;
	padding: 20px 20px;
	text-align: center;
	display: block;
}

#guaranteeService .captopn{
	margin-bottom: 40px;
}

#guaranteeService .select ul{
	margin: 0 50px;
}

#guaranteeService .select li{
    margin-bottom: 40px;
}

#guaranteeService .select li a{
	font-family: 'Noto Serif JP', serif;
	font-weight: bold;
	text-align: center;
	padding: 10px;
}

.guaranteeService_img {
	margin: 0 auto 50px;
}

.guaranteeService_img img{
	width: 100%;
}

.throughLine {
	text-decoration: line-through;
}

/*安心保証サービス*/
