@charset "utf-8";
/* CSS Document */

/* base
-----------------------------------------------*/
/* ========== universal reset ========== */
/* ========== base style ========== */

/* common parts
-----------------------------------------------*/
/* ========== text ========== */
/* ========== border ========== */
/* ========== float ========== */
/* ========== display ========== */
/* ========== position ========== */
/* ========== overflow ========== */
/* ========== width ========== */
/* ========== margin ========== */
/* ========== background ========== */
/* ========== modal ========== */
/* ========== device displaying ========== */
/* ========== animation for ScrollTrigger.min.js  ========== */

/* other style
-----------------------------------------------*/



/* base
-----------------------------------------------*/
/* ========== universal reset ========== */
/**
* html5doctor.com Reset Stylesheet v1.6.1 (http://html5doctor.com/html-5-reset-stylesheet/)
* Richard Clark (http://richclarkdesign.com)
* http://cssreset.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,
button, input, select, textarea,
table, caption, tbody, tfoot, thead, tr, th, td,
article, aside, canvas, details, figcaption, figure,
footer, header, hgroup, menu, nav, section, summary,
time, mark, audio, video {
margin:0;
padding:0;
border:0;
outline:0;
font-size:100%;
vertical-align:baseline;
background:transparent;
}
body { line-height:1; }
article,aside,details,figcaption,figure,
footer,header,hgroup,menu,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;
font-size:100%;
vertical-align:baseline;
background:transparent;
}


/* ========== base style ========== */
* { box-sizing: border-box; }

html { height: 100%; }

body {
height: 100%;
min-height: 100%;
background: #fff;
color: #000;
font-size: 3.2vw;
font-family: dnp-shuei-gothic-gin-std, sans-serif;
font-style: normal;
font-weight: 500;
font-feature-settings: "palt";
}
@media (min-width:768px){
	body {
	font-size: 12px;
	}
}

a:link,
a:visited {
color: #000;
text-decoration: none;
-webkit-transition: all 0.3s ease;
-moz-transition: all 0.3s ease;
-o-transition: all 0.3s ease;
transition: all  0.3s ease;
}

a:hover,
a:hover img,
button:hover img {
opacity: 0.70;
filter: alpha(opacity=80);
-webkit-transform: scale(1.03);
-moz-transform: scale(1.03);
-o-transform: scale(1.03);
-ms-transform: scale(1.03);
transform: scale(1.03);
}
.lnav li a:hover img {
-webkit-transform: scale(1);
-moz-transform: scale(1);
-o-transform: scale(1);
-ms-transform: scale(1);
transform: scale(1);
}

div,p,h1,h2,h3,h4,h5,h6,li,dt,dd,th,td {
line-height: 100%;
font-family: dnp-shuei-gothic-gin-std, sans-serif;
font-feature-settings: "palt";
letter-spacing: 0.1em;
}

div, article { box-sizing: border-box; }

ol, ul { list-style:none; }

img, video {
width: 100%;
display: block;
margin-left: auto;
margin-right: auto;
-webkit-transition: all 0.3s ease;
-moz-transition: all 0.3s ease;
-o-transition: all 0.3s ease;
transition: all  0.3s ease;
}



/* common parts
-----------------------------------------------*/
/* ========== text ========== */
/* align */
.al_left { text-align: left; }
.al_center { text-align: center; }
.al_right { text-align: right; }

/* size */
.fs10 { font-size: 10px; }
.fs11 { font-size: 11px; }
.fs12 { font-size: 12px; }
.fs13 { font-size: 13px; }
.fs14 { font-size: 14px; }
.fs15 { font-size: 15px; }
.fs16 { font-size: 16px; }
.fs17 { font-size: 17px; }
.fs18 { font-size: 18px; }
.fs19 { font-size: 19px; }
.fs20 { font-size: 20px; }
@media (max-width:374px){
	.fs10 { font-size: 2.67vw; }
	.fs11 { font-size: 2.93vw; }
	.fs12 { font-size: 3.2vw; }
	.fs13 { font-size: 3.47vw; }
	.fs14 { font-size: 3.73vw; }
	.fs15 { font-size: 4vw; }
	.fs16 { font-size: 4.27vw; }
	.fs17 { font-size: 4.53vw; }
	.fs18 { font-size: 4.8vw; }
	.fs19 { font-size: 5.07vw; }
	.fs20 { font-size: 5.33vw; }
}

/* weight */
.fw400 { font-weight: 400 !important; }
.fw500 { font-weight: 500 !important; }
.fw600 { font-weight: 600 !important; }
.fw700 { font-weight: 700 !important; }

/* line height */
.lh130 { line-height: 130%; }
.lh140 { line-height: 140%; }
.lh150 { line-height: 150%; }
.lh160 { line-height: 160%; }
.lh170 { line-height: 170%; }
.lh180 { line-height: 180%; }
.lh190 { line-height: 190%; }
.lh200 { line-height: 200%; }
.lh210 { line-height: 210%; }


/* ========== float ========== */
/* clearfix */
.clearfix:before,
.clearfix:after {
display: table;
content: " ";
}
.clearfix:after { clear: both; }

/* float */
.float_left { float: left; }
.float_right { float: right; }


/* ========== display ========== */
.disp_block { display: block !important;}
.disp_iblock { display: inline-block !important;}
.disp_inline { display: inline !important;}
.disp_none { display: none;}
.disp_flex { display: flex; flex-wrap: wrap; justify-content: space-between; align-items: flex-start; }


/* ========== position ========== */
.posi_relative { position: relative !important; }
.posi_absolute { position: absolute !important; }
.posi_fixed { position: fixed !important; }


/* ========== overflow ========== */
.overflow_hidden { overflow: hidden !important; }


/* ========== margin ========== */
/* margin-auto */
.mx_auto { margin-left: auto; margin-right: auto; }


/* ========== device displaying ========== */
.sp_none{ display: none; }
@media (min-width:768px){.sp_none{display: block;} .tab_none { display: none; }}
.sp_only{ display: block; }
@media (min-width:768px){.sp_only{display: none;}}
.spc_none{ display: block; }
@media (min-width:991px){.s-pc_none{display: none;}}
.spc_above{ display: block; }
@media (max-width:992px){.s-pc_above{ display:none;}}
.pc_none{ display: block; }
@media (min-width:999px){.pc_none{display: block;}}
.pc_only{ display: none; }
@media (min-width:1000px){.pc_none{display: none;}
.pc_only{display: block;}
.tab_none{ display: block; }
}


/* ========== animation for ScrollTrigger.min.js  ========== */
.invisible {
transition: opacity 1s ease;
opacity: 0.0;
}
.visible {
transition: opacity 1s ease;
opacity: 1.0;
}


/* other style
-----------------------------------------------*/
.allwrapper { /* Xscroll bar hidden */
width: 100%;
overflow: hidden;
animation-delay: 0.75s;
}
.ff_merriweather {
font-family: merriweather, serif;
font-weight: 300;
letter-spacing: 0;
}
.ff_dnpshueigo {
font-family: dnp-shuei-gothic-gin-std, sans-serif;
font-style: normal;
font-weight: 500;
}

/* header */
.header {
padding: 25px 0;
}
.header_logo {
width: 76vw;
}
@media (min-width:768px){
	.header {
	padding: 50px 0;
	}
	.header_logo {
	width: 325px;
	}
}

.mv {
min-height: 148vw;
}
.mv h1 {
width: 100%;
height: 100%;
top: 0;
left: 0;
}
.mv h1 img {
margin: 0;
}
.mv_text01 {
top: 0;
left: 0;
animation-delay: 1.75s;
}
.mv_text02 {
top: 0;
left: 0;
animation-delay: 3s;
}
@media (min-width:768px){
	.mv {
	min-height: 56vw;
	}
	.mv h1 {
	width: 25.5%;
	height: 47.3vw;
	top: 0;
	left: 62.5%;
	}
	.mv_text01 {
	width: 76.0784313%;
	top: 0;
	left: 0;
	animation-delay: 1.75s;
	}
	.mv_text02 {
	width: 18.8235%;
	top: 0;
	left: auto;
	right: 0;
	animation-delay: 3s;
	}
}

.intro {
padding-top: 13.3333vw;
}
.intro_logo {
width: 40.6666vw;
margin-bottom: 6vw;
}
.intro p {
margin-bottom: 1.84em;
font-size: 3.46666vw;
line-height: 184%;
}
.intro p:last-child {
margin-bottom: 0;
}
@media (min-width:768px){
	.intro {
	padding-top: 50px;
	}
	.intro_logo {
	width: 152px;
	margin-bottom: 45px;
	}
	.intro p {
	font-size: 13px;
	}
}

.lnav {
margin-top: 12vw;
padding-bottom: 13.3333vw;
}
.lnav ul {
width: 83vw;
}
.lnav::after {
content: "";
position: absolute;
bottom: 0;
left: 38vw;
display: block;
width: 24vw;
height: 3px;
background: #f6e948;
}
.lnav li {
width: 40.53333vw;
margin-bottom: 1.75vw;
}
.lnav li:nth-child(even) {
animation-delay: 0.2s;
}
@media (min-width:768px){
	.lnav {
	margin-top: 75px;
	padding-bottom: 53px;
	}
	.lnav ul {
	width: 625px;
	}
	.lnav::after {
	left: calc(50% - 45px);
	width: 90px;
	}
	.lnav li {
	width: 152px;
	margin-bottom: 0;
	}
	.lnav li:nth-child(3) {
	animation-delay: 0.4s;
	}
	.lnav li:nth-child(4) {
	animation-delay: 0.6s;
	}
}

.bg_yellow {
background: #fdfbda;
}
.secbox {
padding: 13.3333vw 0;
}
.sec01 {
margin-top: 13.3333vw;
}
.sec01 h2 { top: 14vw; right: 4vw; width: 12.93333vw; }
.sec02 h2 { top: 14vw; left: 11.2vw; width: 13.2vw; }
.sec03 h2 { top: 116.53333vw; left: 4vw; width: 13.06666vw; }
.sec04 h2 { top: 55.3333vw; left: 20vw; width: 13.06666vw; z-index: 2; }
.scenenum {
font-size: 8vw;
font-family: merriweather, serif;
font-weight: 300;
letter-spacing: 0;
}
.scenenum span {
font-size: 5.3333vw;
}
.secbox p {
width: 88vw;
margin-top: 6.6666vw;
}
.secbox p.text02 span {
background:linear-gradient(transparent 80%, #f6e948 80%);
}
.secimg {
position: relative;
}
.sec01_img01 { width: 77.3333vw; margin: 4.6666vw auto 0 0; }
.sec01_img02 { width: 52vw; margin: -24vw 0 0 auto; }
.sec01_img03 { width: 40vw; margin: -47.7333vw auto 0 4vw; }
.sec02_img01 { width: 64vw; margin: 6vw 4.2666vw 0 auto; }
.sec02_img02 { width: 36.6666vw; margin: -22.4444vw auto 0 0; z-index: 1; }
.sec02_img03 { width: 100%; margin: -25.8666vw 0 0; }
.sec03_img01 { width: 42.4vw; margin: 6vw 0 0 auto; }
.sec03_img02 { width: 55.46666vw; margin: -58.6666vw auto 0 0; z-index: 1; }
.sec03_img03 { width: 76.8vw; margin: -18vw 0 0 auto; }
.sec04_img01 { width: 100%; margin: 6vw 0 0; }
.sec04_img02 { width: 47.3333vw; margin: 2.26666vw 4vw 0 auto; }
.sec04_img03 { width: 51.6vw; margin: -27.6vw auto 0 4vw; }
.detail {
width: 88vw;
margin-top: 7.3333vw;
}
.price li,
.price li a {
font-size: 3.06666vw;
font-family: merriweather, serif;
font-weight: 300;
letter-spacing: 0;
}
.price li {
line-height: 217%;
}
.price .buy {
top: calc(50% - 2.5vw);
left: 56.6666vw;
padding: 2px 9px;
background: #000;
color: #fff;
line-height: 100%;
}
.function {
margin-top: 7.3333vw;
border: 1px solid #000;
padding: 6vw 3.3333vw;
}
.function.icon02 {
align-items: center;
}
.icon02 .price {
width: 44vw;
}
.function .price li a {
font-size: 3.73333vw;
}
.function .price li a .number {
font-size: 3.3333vw;
}
.function .price li a .buy {
margin-left: 5px;
font-size: 3.06666vw;
}
.function_icon {
width: 73.8666vw;
margin-top: 1.5vw;
}
.icon02 .function_icon {
width: 34.6666vw;
}
.sec04 .icon04 .function_icon {
width: 54.1333vw;
}
.function.icon04 .function_icon_wrapper {
margin-top: 4.6666vw;
}
.function.icon02 .function_icon_wrapper {
width: 36.6666vw;
}
.function_icon li {
width: 15.73333vw;
font-size: 3.3333vw;
text-align: center;
}
.function_icon li img {
margin-bottom: 1.06666vw;
}
.sec04 .function li a {
align-items: center;
}
.sec04 .function li span {
display: block;
}
.sec04 .function li .ff_dnpshueigo {
width: 54.6666vw;
}
@media (min-width:768px){
	.secbox {
	padding: 50px 0;
	}
	.sec01 {
	margin-top: 50px;
	}
	.secbox_content {
	width: 625px;
	margin-left: auto;
	margin-right: auto;
	}
	.sec01 h2 { top: 65px; right: 238px; width: 49px; }
	.sec02 h2 { top: 80px; left: 540px; width: 50px; }
	.sec03 h2 { top: 60px; left: 5px; width: 50px; }
	.sec04 h2 { top: 60px; left: 279px; width: 50px; }
	.scenenum {
	font-size: 30px;
	}
	.scenenum span {
	font-size: 20px;
	}
	.picbox {
	margin: 30px 0 20px;
	}
	.sec01 .picbox { height: 547px; }
	.sec02 .picbox { height: 620px; }
	.sec03 .picbox { height: 490px; }
	.sec04 .picbox { height: 475px; }
	.secimg {
	position: absolute;
	margin: 0;
	}
	.sec01_img01 { top: 0; left: 0; width: 294px; }
	.sec01_img02 { top: 170px; right: 0; width: 195px; }
	.sec01_img03 { bottom: 0; left: 256px; width: 150px; }
	.sec02_img01 { top: 0; left: 27px; width: 262px; }
	.sec02_img02 { top: 17px; right: 115px; width: 181px; }
	.sec02_img03 { bottom: 0; right: 0; width: 426px; }
	.sec03_img01 { bottom: 0; left: 27px; width: 138px; z-index: 2; }
	.sec03_img02 { top: 36px; left: 80px; width: 193px; }
	.sec03_img03 { top: 0; right: 12px; width: 325px; }
	.sec04_img01 { top: 53px; right: 7px; width: 432px; }
	.sec04_img02 { top: 0; left: 0; width: 135px; }
	.sec04_img03 { bottom: 0; left: 70px; width: 170px; }
	.secbox p {
	width: 570px;
	margin-top: 0;
	}
	.secbox p.text02 {
	margin-top: 30px;
	}
	.detail {
	display: flex;
	justify-content: space-between;
	align-items: center;
	width: 573px;
	margin-top: 25px;
	}
	.detail .price {
	width: 215px;
	}
	.price li, .price li a {
	font-size: 11.5px;
	}
	.price .buy {
	top: auto;
	bottom: 5px;
	left: auto;
	right: 0;
	}
	.function {
	width: 330px;
	margin-top: 0;
	padding: 25px 10px;
	}
	.function.icon04 .function_icon_wrapper {
	margin-top: 15px;
	}
	.detail .function .price {
	width: 100%;
	}
	.detail .function.icon02 .price {
	width: 145px;
	margin-left: 10px;
	}
	.function .price li a {
	font-size: 14px;
	}
	.function .price li a .number {
	font-size: 12.5px;
	}
	.function .price li a .buy {
	font-size: 11.5px;
	}
	.function_icon {
	width: 280px;
	margin-top: 5px;
	}
	.sec04 .icon04 .function_icon {
	width: 205px;
	}
	.function.icon02 .function_icon_wrapper {
	width: 150px;
	}
	.icon02 .function_icon {
	width: 127px;
	}
	.function_icon li {
	width: 60px;
	margin-top: 5px;
	font-size: 12.5px;
	}
	.function.icon04 li .ff_dnpshueigo {
	display: inline-block;
	width: 200px;
	}
}

.gotoonlinestore {
padding: 10vw 0 15px;
}
.gotoonlinestore::after {
content: "";
position: absolute;
bottom: 0;
left: calc(50% - 66px);
display: block;
width: 133px;
height: 2px;
background: #f6e948;
}
.gotoonlinestore .ff_merriweather {
margin-top: 20px;
font-size: 6.4vw;
}
@media (min-width:768px){
	.gotoonlinestore {
	padding-top: 50px;
	}
	.gotoonlinestore .ff_merriweather {
	font-size: 24px;
	}
}

.profile {
width: 85.3333vw;
margin-top: 20vw;
}
.profile .photo {
width: 49.86666vw;
}
.profile .photo span {
font-size: 24px;
}
.profile p {
margin-top: 4vw;
letter-spacing: 0.05em;
}
@media (min-width:768px){
	.profile {
	display: flex;
	justify-content: space-between;
	align-items: flex-end;
	width: 467px;
	margin-top: 100px;
	}
	.profile .name {
	position: absolute;
	top: 0;
	left: 137px;
	}
	.profile .photo {
	width: 125px;
	margin: 0;
	}
	.profile p {
	width: 328px;
	margin-top: 0;
	line-height: 180%;
	}
}

.outro_credit {
margin-top: 13.3333vw;
line-height: 208%;
letter-spacing: 0.05em;
}
.outri_credit span {
font-family: dnp-shuei-gothic-gin-std, sans-serif;
font-style: normal;
font-weight: 500;
}
.outro_link {
width: 115px;
margin-top: 50px;
}
@media (min-width:768px){
	.outro_credit {
	margin-top: 50px;
	}
}

/* footer */
.footer {
margin-top: 55px;
padding-bottom: 35px;
background: #fff;
}
.footer * {
color: #5a5a5a !important;
letter-spacing: 0;
font-family: ryo-gothic-plusn, sans-serif;
}
.lifeandbeauty {
display: none;
}
.help {
background: #f6f6f6;
padding: 40px 0 45px;
}
.help h4 {
font-size: 22px;
}
.help h4 span {
display: block;
margin-top: 10px;
}
.help ul {
justify-content: center;
width: 285px;
margin-top: 30px;
}
.help li {
width: 50%;
font-size: 17px;
text-align: center;
}
.help li:nth-of-type(n + 3) {
margin-top: 25px;
}
.sns {
margin-top: 10px;
padding: 40px 0;
background: #f6f6f6;
}
.sns h4 {
font-size: 18px;
}
.sns ul {
width: 170px;
margin-top: 25px;
}
.sns li {
width: 30px;
}
.onlinestore {
margin-top: 10px;
padding: 35px 0 50px;
background: #f6f6f6;
}
.onlinestore * {
letter-spacing: 0.05em;
}
.onlinestore h4 {
font-size: 18px;
}
.onlinestore ul {
margin-top: 30px;
}
.onlinestore li {
margin-top: 15px;
text-align: center;
font-size: 14px;
}
.onlinestore li:first-child {
margin-top: 0;
}
.onlinestore li a {
letter-spacing: 0 !important;
}
.footerlink {
justify-content: center;
padding-top: 15px;
}
.footerlink li {
margin-bottom: 10px;
padding: 0 12px;
font-size: 10px;
border-right: 1px solid #333;;
}
.footerlink li a {
letter-spacing: 0;
}
.footer_logo {
width: 160px;
margin-top: 40px;
}
.copy {
margin-top: 20px;
}
@media (min-width:1200px){
	.footer {
	width: 100%;
	margin-top: 120px;
	padding-bottom: 70px;
	border-top: 1px solid #c9c9c9;
	}
	.lifeandbeauty {
	display: block;
	width: 735px;
	padding: 25px 0;
	}
	.footer * {
	color: #5a5a5a !important;
	letter-spacing: 0;
	}
	.footer_sec01 {
	background: #ececec;
	}
	.footer_sec01 .inner {
	display: flex;
	flex-direction: row-reverse;
	align-items: center;
	width: 1200px;
	padding: 30px 0;
	}
	.help {
	width: 50%;
	padding: 60px 0 60px 80px;
	background: none;
	border-left: 1px solid #ccc;
	}
	.help h4 {
	font-size: 27px;
	text-align: left;
	}
	.help h4 br {
	display: none;
	}
	.help h4 span {
	display: inline;
	margin: 0 0 0 30px;
	font-size: 14px;
	}
	.help ul {
	justify-content: flex-start;
	width: 100%;
	margin: 30px 0 0 0;
	}
	.help li {
	width: auto;
	margin-right: 20px;
	padding-right: 20px;
	text-align: left;
	border-right: 1px solid #000;
	font-size: 16px;
	}
	.help li:nth-of-type(n + 3) {
	margin: 0;
	border-right: none;
	}
	.sns {
	display: flex;
	align-items: center;
	width: 50%;
	margin-top: 0;
	padding: 0 60px 0 80px;
	background: none;
	}
	.sns h4 {
	width: 160px;
	font-size: 15px;
	text-align: left;
	}
	.sns ul {
	width: auto;
	margin: 0;
	}
	.sns li {
	width: 50px;
	margin-right: 22px;
	}
	.onlinestore {
	margin-top: 0;
	padding: 40px 0;
	background: #ececec;
	border-top: 1px solid #ddd;
	}
	.onlinestore .inner {
	display: flex;
	justify-content: center;
	width: 1200px;
	}
	.onlinestore h4 {
	margin-right: 30px;
	font-size: 16px;
	font-weight: 700;
	}
	.onlinestore ul {
	display: flex;
	margin-top: 0;
	}
	.onlinestore li {
	margin: 0 15px 0 0;
	padding-right: 15px;
	text-align: left;
	font-size: 12px;
	border-right: 1px solid #000;
	}
	.onlinestore li:last-child {
	margin: 0;
	padding: 0;
	border-right: none;
	}
	.footerlink {
	padding-top: 50px;
	}
	.footerlink li {
	margin: 0 20px 0 0;
	padding: 0 20px 0 0;
	font-size: 12px;
	border-right: 1px solid #333;;
	}
	.footer_logo {
	width: 220px;
	margin-top: 55px;
	}
	.copy {
	margin-top: 40px;
	font-size: 12px;
	}
}

img[src^="https://jun.click.zetacx.net"],
img[src^="https://zetaclick.junonline.jp"],
img[src^="https://dev.tag.zetacx.net"] {
  position: absolute;
  width: 0;
  height: 0;
}