/* ===== base ===== */
* {
  box-sizing: border-box;
}

html {font-size: 16px; scroll-behavior: smooth;}
body, h1, h2, h3, h4, h5, h6, p, address,ul, ol, li, dl, dt, dd,table, th, td, img, form, input,figure {margin: 0; padding: 0; list-style-type: none; font-size: 1rem; font-style: normal; font-family: "Noto Sans JP", sans-serif; font-weight: 400; -webkit-text-size-adjust: 100%; font-feature-settings: "palt";}
a {text-decoration: none;　color: inherit;}
a:hover {filter:alpha(opacity=100); -ms-filter: "alpha(opacity=100)"; -moz-opacity:1.0; -khtml-opacity: 1.0; opacity:1.0; zoom:1;}

/* noto-sans-jp-regular - latin */
@font-face {
  font-display: swap; /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
  font-family: 'Noto Sans JP';
  font-style: normal;
  font-weight: 400;
  src: url('https://beautymylab.com/user_data/packages/raku2pc/fonts/noto-sans-jp-v55-latin-regular.woff2') format('woff2'); /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
}
/* noto-sans-jp-700 - latin */
@font-face {
  font-display: swap; /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
  font-family: 'Noto Sans JP';
  font-style: normal;
  font-weight: 700;
  src: url('https://beautymylab.com/user_data/packages/raku2pc/fonts/noto-sans-jp-v55-latin-700.woff2') format('woff2'); /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
}

/* montserrat-regular - latin */
@font-face {
  font-display: swap; /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
  font-family: 'Montserrat';
  font-style: normal;
  font-weight: 400;
  src: url('https://beautymylab.com/user_data/packages/raku2pc/fonts/montserrat-v31-latin-regular.woff2') format('woff2'); /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
}
/* montserrat-600 - latin */
@font-face {
  font-display: swap; /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
  font-family: 'Montserrat';
  font-style: normal;
  font-weight: 700;
  src: url('https://beautymylab.com/user_data/packages/raku2pc/fonts/montserrat-v31-latin-600.woff2') format('woff2'); /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
}

.pcbr {display: block;}/* PC改行*/
.spbr {display: none;}/* スマホ改行解除*/

@media screen and (max-width: 1050px) {
.pcbr {display: none;}/* PC改行解除*/
.spbr {display: block;}/* スマホ改行*/
}

/*/////////////////// Effect ///////////////////*/
/*　フェードイン　*/
.is-fadein01.is-animated {animation: fadeIn01 0.5s forwards;}
@keyframes fadeIn01 {
	0% {opacity: 0; transform: translateY(100px);}
  100% {opacity: 1; transform: translateY(0);}
}

.is-fadein02.is-animated {animation: fadeIn02 0.8s forwards;}
@keyframes fadeIn02 {
	0% {opacity: 0; transform: translateY(100px);}
  100% {opacity: 1; transform: translateY(0);}
}

/*　スクロールフェードイン　*/
.fadein01 {opacity: 0.0; transform: translate(0, 100px); transition: all 800ms;}
.fadein01.scrollin {opacity: 1; transform: translate(0, 0);}
.fadein02 {opacity: 0.0; transform: translate(0, 120px); transition: all 850ms;}
.fadein02.scrollin {opacity: 1; transform: translate(0, 0);}

/*////////// サイト調整用 //////////*/
#header-contents {margin: 0 auto 0;}
#header-contents>.header {width: 100%; padding: 30px 2% 10px; background-color: #ffffff;}
.megaMenu>.category-list {width: 90%; padding: 15px 5% 25px;}

/*////////// Design //////////*/
#present,
#livingroom,
#vanity,
#bedroom,
#entryroom {display: block; padding-top: 80px; margin-top: -80px;}

#newlifelp  {width: 100%; margin: 0 auto 0; padding: 0;
	background: radial-gradient(at 0% 10%, #fff9a2, transparent 100%),
		radial-gradient(at -20% 100%, #04EAFC, transparent 70%),
		radial-gradient(at 0% 0%, #ffa0be, transparent 101%),
		radial-gradient(at 100% 100%, #ffbbd0, transparent 80%);
	background-attachment: fixed;}
#newlifelp>.newlife-content {max-width: 1000px; margin: 0 auto; padding: 0;}
#newlifelp>.newlife-content>.newlife-layout {max-width: 100%; margin: 0 auto 0; display: grid; grid-template-columns: 300px 1fr; gap: 100px; position: relative;}

/* ===== Leftnavi ===== */
#newlifelp .left-nav-content {height: auto; width: 100%;}
#newlifelp .left-nav-content>.left-nav {color: #4d4d4d; line-height: 1.0; letter-spacing: 0.05em; position: -webkit-sticky; position: sticky; top: 230px; /*top: 45%; transform: translateY(-50%);*/}
#newlifelp .nav-title {margin: 0 auto 22px; font-family: "Montserrat", "Noto Sans JP", sans-serif; font-size: 1.1rem; font-weight: 700;}
#newlifelp .nav-block>a {display: block; margin: 0 auto; padding: 0 0 10px; font-size: 1.15rem; font-weight: 700; color: #390c0a; text-decoration: none; text-align: left; text-indent: 20px; position: relative; transition: transform 0.4s ease;}
#newlifelp .nav-block>a>span {font-size: 0.7rem;}
#newlifelp .nav-block>img {width: 200px; margin: 0 0 15px;}
#newlifelp .nav-block>a>img {display: block; width: 280px; margin: 0 0 30px; transition: transform 0.4s ease;}
#newlifelp .nav-block>a>img.ca {display: block; width: 200px; margin: 0 0; transition: transform 0.4s ease;}
#newlifelp .nav-block>a:hover {transform: translateX(10px);}
#newlifelp .nav-block>.menuborder {width: 100%; margin: 0 0 25px; border-bottom: 1px solid #663a12;}

/* ===== LP ===== */
#newlifelp .sakura {width: 680px; position: absolute; top: 0; right: -50px; z-index: 10;}
#newlifelp .lp-content {width: 100%; background-color: #fafcfc; box-shadow: 0px 0px 15px 0px rgba(0, 0, 0, 0.45);}
#newlifelp .lp-content>.fv {width: 100%; margin: 0 auto; padding: 0 0; background-image: url(https://beautymylab.com/user_data/packages/raku2pc/img/cp/260316newlife/fv.webp); background-size: 100%; background-repeat: no-repeat; background-position: top; text-align: center; position: relative;}
#newlifelp .lp-content>.fv>.bmllogo {width: 150px; margin: 0 auto; padding: 80px 0 0;}
#newlifelp .lp-content>.fv>.fvtitle {width: 100%; margin: 0 auto 0;}
#newlifelp .lp-content>.lead {width: 100%; margin: 0 auto; padding: 0 0 0; background-color: #fafcfc; position: relative; z-index: 2;}
#newlifelp .lp-content>.lead>p {margin: 0 auto 20px; padding: 0; color: #663a12; font-size: 1.25rem; font-weight: 400; text-align: center; line-height: 2.2; letter-spacing: 0.1em;}
#newlifelp .lp-content>.lead>p>b {font-size: 1.2rem;}
#newlifelp .lp-content>.present {width: 100%; margin: 0 auto 0; padding: 0 0 40px; position: relative; background: linear-gradient(to bottom, #fafcfc 0%, #fafcfc 50%, #82cddb 50%, #82cddb 100%)}
#newlifelp .lp-content>.present>img {width: 100%;}
#newlifelp .lp-content>.categorymenu {width: 100%; margin: 0 auto 0; padding: 0 0 200px; background: linear-gradient(to bottom, #82cddb 50%, #f9f290 100%); position: relative;}
#newlifelp .lp-content>.categorymenu>img {width: 90%; margin: 0 auto 30px;}
#newlifelp .lp-content>.categorymenu>.menuWrap {width: 75%; margin: 0 auto; padding: 0; display: grid; grid-template-columns: repeat(2, 1fr); gap: 40px;}
#newlifelp .lp-content>.categorymenu>.menuWrap>.menuitem {width: 100%;}
.arch-wrap {position: relative; width: 100%; height: 300px; margin: 20px auto 0; perspective: 1000px; /* 立体感 */}
.arch-content {width: 100%; height: 100%; overflow: hidden; border-radius: 150px 150px 0 0;}
.arch-content img {width: 100%; height: 100%; object-fit: cover;}
.arch-door {position: absolute; top: 0; width: 50%; height: 100%; background: #ffffff; transition: transform 0.8s ease; backface-visibility: hidden;}
.arch-door.left {left: 0; border-radius: 150px 0 0 0; transform-origin: left center;}
.arch-door.right {right: 0; border-radius: 0 150px 0 0; transform-origin: right center;}
.arch-wrap:hover .left {transform: rotateY(-110deg);}
.arch-wrap:hover .right {transform: rotateY(110deg);}
.arch-overlay-img {position: absolute; top: 40px; inset: 0; display: flex; align-items: center; justify-content: center; z-index: 3; pointer-events: none;}
.arch-overlay-img>img {width: 70%;}
.arch-wrap:hover .arch-overlay-img {opacity: 0; transition: 0.5s;}
.door-inner {position: absolute; inset: 0; display: flex; flex-direction: column; justify-content: center; align-items: center; text-align: center;}

#newlifelp .lp-content>.ca-living {width: 100%; margin: 0 auto 0; padding: 0 0 120px; position: relative; background-color: #f9f290;}
#newlifelp .lp-content>.ca-vanity {width: 100%; margin: 0 auto 0; padding: 0 0 120px; position: relative; background: linear-gradient(to bottom, #f9f290 50%, #bee980 100%);}
#newlifelp .lp-content>.ca-bed {width: 100%; margin: 0 auto 0; padding: 0 0 120px; position: relative; background: linear-gradient(to bottom, #bee980 50%, #b5e5ec 100%);}
#newlifelp .lp-content>.ca-entry {width: 100%; margin: 0 auto 0; padding: 0 0 50px; position: relative; background: linear-gradient(to bottom, #b5e5ec 50%, #ffe0e2 100%);}
#newlifelp .product-content {width: 95%; margin: 0 auto 100px; padding: 50px 0 0; border-radius: 30px; background-color: #ffffff;}
#newlifelp .product-content:last-child {margin: 0 auto 40px;}
#newlifelp .catitle {width: 100%; margin: 0 auto -150px; display: grid; grid-template-columns: 200px 1fr; gap: 10px; text-align: justify; align-items: center;}
#newlifelp .catitle>.ca-img {position: relative; top: -150px; left: 40px;}
#newlifelp .catitle>.ca-img>img {width: 100%;}
#newlifelp .catitle>.ca-lead {position: relative; top: -100px; left: 60px;}
#newlifelp .catitle>.ca-lead>p {margin: 0 auto 0; padding: 0; color: #684c15; font-size: 1.4rem; font-weight: 400; line-height: 1.8; letter-spacing: 0.01em;}

#newlifelp .product-block {width: 100%; margin: 0 auto; padding: 80px 0;}
#newlifelp .product-block:nth-child(2n+1) {background-color: #faf5f0;}
#newlifelp .product-block:last-child {border-radius: 0 0 30px 30px;}
#newlifelp .product-top {width: 90%; margin: 0 auto 30px; color: #684c15; text-align: justify;}
#newlifelp .product-top>h3 {margin: 0 auto 5px; padding: 0; font-size: 1.1rem; font-weight: 700; line-height: 1.0; letter-spacing: 0.05em;}
#newlifelp .product-top>h4 {margin: 0 auto 10px; padding: 0; font-size: 1.3rem; font-weight: 700; line-height: 1.5; letter-spacing: 0.05em;}
#newlifelp .product-top>h4>span {display: block; margin: 7px auto 0; font-size: 0.95rem;}
#newlifelp .product-top>p {margin: 0 auto; padding: 0; font-size: 0.8rem; font-weight: 500; line-height: 1.0; letter-spacing: 0.05em;}
#newlifelp .product-top>p.product-ca {display: inline-block; margin: 0 auto 15px; padding: 5px 10px; font-size: 0.85rem; font-weight: 500; line-height: 1.0; letter-spacing: 0.05em; border: 1px solid #684c15; border-radius: 50px;}
#newlifelp .product-img {width: 100%; margin: 20px auto 20px;}
#newlifelp .product-img>a>img {width: 100%;}
#newlifelp .product-text {width: 90%; margin: 0 auto; color: #684c15; }
#newlifelp .product-text>p {margin: 0 auto 20px; padding: 0; font-size: 1.1rem; font-weight: 400; line-height: 2.0; letter-spacing: 0.03em;}
#newlifelp .product-text>.kinds {margin: 0 auto 15px; padding: 0; font-size: 1.2rem; font-weight: 700; line-height: 1.0; letter-spacing: 0.03em;}
#newlifelp .product-text>.kinds>span {display: inline-block; margin-left: 10px; padding: 5px 15px; color: #ffffff; font-size: 1.0rem; font-family: "Montserrat", sans-serif; font-weight: 700; border-radius: 40px;}
#newlifelp .product-text>.kinds>span.loveunlock {background-color: #910009;}
#newlifelp .product-text>.kinds>span.evileye {background-color: #2e9ebb;}
#newlifelp .product-text>.kinds>span.restmind {background-color: #709800;}
#newlifelp .product-text>.kinds>span.gastronomy {background-color: #dd9200;}
#newlifelp .product-price {width: 85%; margin: 0 auto 15px;}
#newlifelp .product-price>img {width: 100%;}
#newlifelp .product-price-normal {display: block; width: 60%; margin: 0 auto 15px;}
#newlifelp .product-price-normal>img {width: 100%;}
#newlifelp a.btn_cart {display: block; width: 75%; margin: 0 auto; padding: 25px 0 28px;  color: #ffffff; font-size: 1.25rem; font-family: "Montserrat", sans-serif; font-weight: 700; line-height: 1.0; letter-spacing: 0.1em;  border-radius: 80px; cursor: pointer; text-align: center; transition: background-color 0.3s ease, color 0.3s ease; background: #d1c339; border: 2px solid #d1c339;}
#newlifelp a.btn_cart:hover {color: #d1c339; background: #ffffff;}
#newlifelp a.btn_cart::after {font-family: 'Material Symbols rounded'; content: "shopping_cart"; font-size: 25px; font-weight: 400; transition: all .3s ease; margin-left: 10px; color: #ffffff; position: relative; top: 5px;}
#newlifelp a.btn_cart:hover::after {color: #d1c339;}

.copy-box {width: 80%; margin: 0 auto 20px; text-align: center;}
.copyttl {display: inline-block; font-size: 18px; line-height: 1.0;}
.copy-text {display: inline-block; margin: 0 20px 0 5px; font-family: 'GT Walsheim Pro Bold', sans-serif; font-weight: 600; font-size: 35px; line-height: 1.0;}
.copy-box>div>button {display: block; width: 200px; margin: 10px auto 0; padding: 10px 0 10px; color: #ffffff; font-weight: 600; font-size: 15px; line-height: 1.0; cursor: pointer;}
.copy-box_loretta,
.copy-box_ultime,
.copy-box_kolor,
.copy-box_sprinage,
.copy-box_elujuda {padding: 10px 0 15px; color: #684c15; border: 4px solid #684c15;}
.copy-box_loretta>.copyttl,
.copy-box_ultime>.copyttl,
.copy-box_kolor>.copyttl,
.copy-box_sprinage>.copyttl,
.copy-box_elujuda>.copyttl,
.copy-box_loretta>.copy-text,
.copy-box_ultime>.copy-text,
.copy-box_kolor>.copy-text,
.copy-box_sprinage>.copy-text,
.copy-box_elujuda>.copy-text {color: #684c15;}
.copy-box_loretta>button,
.copy-box_ultime>button,
.copy-box_kolor>button,
.copy-box_sprinage>button,
.copy-box_elujuda>button {background-color: #684c15; border: 1px solid #684c15;}
.copy-box_loretta>button:hover,
.copy-box_ultime>button:hover,
.copy-box_kolor>button:hover,
.copy-box_sprinage>button:hover,
.copy-box_elujuda>button:hover {background-color: #ffffff; color: #684c15;}

#newlifelp .newlife-footer {width: 100%; margin: 0 auto; padding: 0; background-color: #ffe0e2;}
#newlifelp .newlife-footer>p {margin: 0 auto 20px; padding: 0; color: #684c15; font-size: 1.25rem; font-weight: 400; line-height: 2.0; letter-spacing: 0.03em; text-align: center;}
#newlifelp .newlife-footer>img {width: 100%;}


@media screen and (max-width: 1100px) {
	#newlifelp>.newlife-content {max-width: 92%;}
	#newlifelp>.newlife-content>.newlife-layout {max-width: 100%; margin: 0 auto 0; display: block; grid-template-columns: 1fr; gap: 0}
	#newlifelp .left-nav-content {display: none;}
}

@media screen and (max-width: 1000px) {
	#footer-bml {margin: 0 auto 0;}
}
