@charset "UTF-8";
/* CSS Document */

/*------------------------------------------------------------------------------
uvdefencedailylotion
------------------------------------------------------------------------------*/

section{
	width: inherit;
	padding: inherit;
	margin: 0 auto;
}

main{
	/*background-image: linear-gradient(90deg, rgb(255 255 255), rgb(233 244 250));*/
	min-width: inherit !important;
    background-image: url(../img/main_bg.jpg);
    background-repeat: no-repeat;
    background-size: cover;
    background-attachment: fixed;
    overflow-y: hidden;
}

p{
	    font-size: 1.4rem;
    line-height: 22px;
}

.eng{
	font-family: 'Lexend Peta', "Hiragino Kaku Gothic ProN", "Hiragino Sans", 'メイリオ', 'Meiryo', sans-serif;
}

.main-contents{
	background: #fff;
    box-shadow: 0 10px 25px 0 rgb(0 0 0 / 26%);
	width: 100%;
    max-width: 520px;
    margin: 0 auto;
    overflow: hidden;
	height: auto;
}

.info{
	font-size: 1rem;
	text-align: left;
	line-height: 14px;
}

section .price {
    color: #272420!important;
    line-height: 22px!important;
}


/* --- ローディング画面 --- */
.loading-screen {
  position: fixed;
  top: 0;
  left: 0;
  width: 100vw;
  height: 100vh;
  height: 100dvh;
  background-color: #fff; /* ローディング中の背景色 */
  display: flex;
  justify-content: center;
  align-items: center;
  z-index: 9999; /* すべての要素の最前面に配置 */
  transition: opacity 0.8s ease, visibility 0.8s ease; /* 消えるときのスムース効果 */
}

/* 点滅するロゴ */
.loading-logo {
  width: 120px; /* ロゴの希望サイズに調整してください */
  height: auto;
  animation: logoBlink 1.5s infinite ease-in-out;
}

/* CSSキーフレームによる点滅アニメーション */
@keyframes logoBlink {
  0% {
    opacity: 0.2;
    transform: scale(0.98);
  }
  50% {
    opacity: 1;
    transform: scale(1.02);
  }
  100% {
    opacity: 0.2;
    transform: scale(0.98);
  }
}

/* ローディング完了時に非表示にするCSSクラス */
.loading-screen.is-loaded {
  opacity: 0;
  visibility: hidden;
  pointer-events: none;
}


/*test*/
.intro-container {
  position: relative;
  width: 100%;
  overflow: hidden;
}

/* 各レイヤーを重ね合わせる */
.rose-layer {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-size: cover;
  background-position: center;
  will-change: transform, opacity;
}

/* 画像指定（手前ほど大きく配置） */
.layer-front-left {
  background-image: url('https://jurlique-japan.com/topics/jurliquerofaceoil/img/rose-front-left_06.png');
  z-index: 3;
}
.layer-front-right {
  background-image: url('https://jurlique-japan.com/topics/jurliquerofaceoil/img/rose-front-right_06.png');
  z-index: 3;
}
.layer-mid {
  background-image: url('https://jurlique-japan.com/topics/jurliquerofaceoil/img/rose-mid_06.png');
  z-index: 2;
}

/* 奥にあるFV */
.fv-content {
position: relative; /* absolute から relative に変更して高さを保つ */
  width: 100%;
  z-index: 1;
}
.fv-content img {
  width: 100%;
  height: auto;
  display: block;
}

/* 重ねるバラの層だけ absolute で全画面にかぶせる */
.rose-layer {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-size: cover;
  background-position: center;
}


.fv{
	position: relative;
	padding-top: 0;
	padding-bottom: 0;
}

.fv .fv_text{
	position: absolute;
    top: 5%;
    color: #fff;
    text-align: center;
    right: 0;
    left: 0;
    margin: 0 auto;
}
.fv .fv_text .main-text{
	margin: 8% 0 0;
}
.fv .fv_text .eng{
	    font-size: 1rem;
}

.fv .fv_text .visual-title{
	    font-size: 2.6rem;
    margin: 6% 0 6%;
    font-weight: 500;
}

.fv .fv_text h1{
	position:absolute;
width:1px;
height:1px;
overflow:hidden;
clip:rect(0,0,0,0);
}

.fv .fv_text .visual-title span{
	    font-family: serif;
}

.fv .fv_text .sub-text{
	    font-size: 1.6rem;
    line-height: 22px;
}

.fv_info{
	    position: absolute;
    bottom: 6%;
    color: #fff;
    left: 4%;
}


.cv-area .product_name{
	text-align: center;
}
.cv-area .product_name .name{
	    font-size: 1.6rem;
}

  .contents01 .main-text .info {
        text-align: center;
    }
	

.contents01{
	padding: 0;
}

.contents01 .rose-back{
	background-image: url('https://jurlique-japan.com/topics/jurliquerofaceoil/img/contents01_back_06.jpg');
	background-size: cover;
}

.contents01 .main-text{
	text-align: center;
	
}

.contents01 .main-text{
	text-align: center;
	    margin-bottom: -8%;
	
}


.contents01 .main-text h2{
    font-size: 2.6rem;
    padding: 17% 0 5%;
}

.contents01 .cv-area .product_name{
	margin: 83% 0 0;
}

.contents01 .cv{
	width: 90%;
        margin: 2% auto 8%;
}

.contents01 .color-back{
	    background: #f4edee;
    padding: 6% 6% 14%;
}

.contents01 .info{
	    margin: 4% 0 8%;
}

.contents02 .thomson-block{
	background-image: url('https://jurlique-japan.com/topics/jurliquerofaceoil/img/contents02_back01_02.jpg');
	background-size: cover;
	text-align: center;
}

.contents02{
	padding: 0;
	
}

.contents02 .deco{
	    display: block;
    width: 16%;
    margin: auto;
    padding: 10% 0 4%;
}

.contents02 .thomson-block h2{
    font-family: 'Lexend Peta', "Hiragino Kaku Gothic ProN", "Hiragino Sans", 'メイリオ', 'Meiryo', sans-serif;
    font-size: 1.8rem;
    line-height: 20px;
}


.contents02 .thomson-block h2 span{
	font-size: 1.2rem;
	font-weight: 600;
}


.contents02 .thomson-block p{
	font-size: 1.2rem;
    line-height: 18px;
    margin: 4% 6% 0;
        padding-bottom: 62%;
}


.contents02 .rose-block-back{
	background-image: url('https://jurlique-japan.com/topics/jurliquerofaceoil/img/contents02_back02_02.jpg');
	background-size: cover;
	text-align: center;
	    color: #fff;
}


.contents02 .rose-block .title{
	margin-top: -1px;
	padding: 10% 0 0;
}

.contents02 .rose-block .blueline{
    border-top: 1px solid #3c68a5;
}

.contents02 .rose-block .eng{
	font-size: 1rem;
    border: 1px solid #fff;
    display: inline;
    padding: 1%;
    border-radius: 5px;
}

.contents02 .rose-block .text{
	    font-size: 2.4rem;
    line-height: 32px;
    margin: 2% 0 4%;
}

.contents02 .rose-block .text span{
	    font-size: 1.2rem;
}

.contents02 .rose-block .about01{
	background-image: url(https://jurlique-japan.com/topics/jurliquerofaceoil/img/contents02_commentback_02.png);
}
	
	.contents02 .rose-block .about02{
	background-image: url(https://jurlique-japan.com/topics/jurliquerofaceoil/img/contents02_commentback.png);
	}

.contents02 .rose-block .rose-about{
    background-size: cover;
    width: 90%;
        margin: 55% auto 5%;
    color: #272420;
    text-align: left;
    padding: 12% 5% 1%;
	    border-radius: 10px;
}

.contents02 .rose-block .rose-about .title{
	    font-size: 1.8rem;
    font-weight: 600;
       line-height: 28px;
    margin-bottom: 4%;
    border-top: 0;
    padding: 0;
}


.contents02 .rose-block .rose-about p{
	    font-size: 1.4rem;
    line-height: 20px;
}

.contents02 .intense{
	padding-bottom: 6%;
	
}


.contents02 .intense .about02 p {
        padding-bottom: 0;
}

.contents03{
	padding: 0;
}

.contents03 .title-block{
	background-image: url(https://jurlique-japan.com/topics/jurliquerofaceoil/img/contents03_back_02.jpg);
    background-size: cover;
	    text-align: center;
    color: #fff;
}

.contents03 .title-block .icon{
	    background: #f9d7ea;
    display: inline;
    color: #272420;
    padding: 1% 2%;
    border-radius: 5px;
}

.contents03 .title-block .text-block{
	    padding: 18% 6% 14%;
}

.contents03 .title-block .text-block .title{
	    font-size: 2.8rem;
    line-height: 40px;
    margin: 6%;
}

.contents03 .inner-block {
	    background: #f7e4ea;
    padding: 6%;
}


.contents03 .inner-block .tech-block{
	    background: #fff;
    border-radius: 14px;
	text-align: center;
}

.contents03 .inner-block .tech-block p{
	width: 90%;
    margin: auto;
    padding: 0 0 6%;
}


.contents03 .inner-block .tech-block .title{
	    font-size: 1.8rem;
    line-height: 26px;
    font-weight: 600;
    margin: 4% auto 0;
	    padding-bottom: 4%;
}

.contents03 .inner-block .info
{    margin: 4% 0 8%;
}

.contents03 .inner-block .mini-img{
	width: 80%;
    margin: auto;
}

.contents03 .inner-block .bold{
	font-size: 1.6rem!important;
    line-height: 27px!important;
    padding: 2% 0 10%!important;
	    font-weight: 600;
}


.cv .product-block{
	border: 1px solid #dd96b8;
    border-radius: 15px;
    width: 90%;
    margin: auto;
}

.cv .product-block .title{
	font-size: 2.2rem;
    text-align: center;
    margin: 14% 0 4%;
}

.cv .product-block .product-img{
	width: 80%;
    margin: auto;
}
.cv .product-block .product_name{
	    text-align: center;
    margin: 4% auto;
    width: 90%;
}

.cv .product-block .product_name .name{
	    font-size: 2rem;
    line-height: 36px;
}

.cv .product-block .product_name .about{
	border-top: 1px solid #dd96b8;
    border-bottom: 1px solid #dd96b8;
    padding: 2% 0;
    margin: 6% 0;
}

.cv .product-block .product_name .product-about{
	width: 90%;
    margin: 0 auto 6%;
}

.cv .product-block .product_name .info{
	margin: 6% 0;
}

.cv .set-mini{
	    width: 90%;
    margin: 8% auto;
}
.cv .inner-block{
	position: relative;
}

.cv .drop{
	    position: absolute;
    right: 6%;
    top: -2%;
    width: 20%;
}

.contents04 {padding: 0;}


.contents04 .title-block{
	background-image: url(https://jurlique-japan.com/topics/jurliquerofaceoil/img/contents04_back01_02.jpg);
    background-size: cover;
	
	color: #fff;
	text-align: center;
}


.contents04 .title-block .title{
	    padding: 12% 0 6%;
    font-size: 3rem;
    line-height: 38px;
}

.contents04 .title-block .eng{
	font-size: 1.2rem;
}

.contents04 .title-block .text{
	    margin: 78% 0 8%;
    font-size: 1.6rem;
    line-height: 26px;
}
.contents04 .title-block picture{
	    width: 90%;
    display: block;
    margin: 0 auto;
	padding-bottom: 4%;
}

.contents04 .basic-block{
	width: 90%;
    margin: 10% auto;
    background: #e3f0ff;
    border-top: 1px solid #3b69a7;
	border-bottom: 1px solid #3b69a7;
    padding: 6% 4% 4%;
}

.contents04 .basic-block .title{
	text-align: center;
	font-size: 2rem;
	font-weight: 600;
	    margin: 4%;
}

.contents04 .recommend-block{
	background-image: url(https://jurlique-japan.com/topics/jurliquerofaceoil/img/contents04_back02_02.jpg);
    background-size: cover;
	position: relative;
}

.contents04 .recommend-block picture
{width: 90%;
    display: block;
    margin: auto;
    padding-top: 54%;}

.contents04 .recommend-block .text-block{
	    position: absolute;
    right: 0;
    left: 0;
    margin: 0 auto;
    top: 57%;
    text-align: center;
    color: #fff;
    width: 80%;
}

.contents04 .recommend-block .text-block .title{
	    font-size: 2.2rem;
    line-height: 24px;
    margin-bottom: 4%;
    color: #fcf3e1;
}

.contents04 .recommend-block .text-block .title span{
	    font-size: 1.2rem;
}

.contents04 .recommend-block .text-block .text{
	text-align: left;
}


.contents05{
	padding: 0;
	background-image: url(https://jurlique-japan.com/topics/jurliquerofaceoil/img/contents05_back_02.jpg);
    background-size: cover;
	color: #fff;
    text-align: center;
	    margin: 16% 0 8%;

}

.contents05 .eng{
	font-family: serif;
	    font-size: 2.6rem;
    padding: 16% 0 6%;
    letter-spacing: 0.4rem;
}

.contents05 .title{
	font-size: 2.6rem;
    line-height: 36px;
    margin-bottom: 8%;
	font-family: serif;
}


.contents05 .text{
	    font-size: 1.6rem;
    line-height: 26px;
}


.contents05 picture{
	padding-bottom: 6%;
    display: block;
}

.contents06 .kikku{
	position: relative;
}

.contents06 .kikku picture{
	display: block;
    width: 90%;
    margin: auto;
}

.contents06 .kikku video{
	border-radius: 10px;
    position: absolute;
        top: 18%;
    width: 73%;
    right: 0;
    left: 0;
    margin: 0 auto;
}

.contents06 .title{
	letter-spacing: 0.2rem;
    text-align: center;
    font-size: 2.4rem;
    line-height: 34px;
    margin: 2% 0 0;
}

.contents06 .main-img{
	    width: 90%;
    display: block;
    margin: auto;
}

.contents06 p{
	    padding: 6%;
	    text-align: center;
}

.contents06 .comment-box {
    flex-wrap: nowrap;
    overflow-x: scroll;
	display: flex;
	    padding-left: 2%;
}

.contents06 .comment-box .slide-item {
    width: 100%;
    min-width: 80%;
	    padding: 1vw;
    align-items: center;
}
.contents06 .comment{
    border: none;
    padding: 0% 0 16% 0%;
    width: 100%;
    max-width: 1080px;
	}


.cv .set{
	    border: none;
    background: #fcf3e1;
    padding: 1% 0 4%;
    margin-top: 6%;
}

.cv .set .title{
	    margin: 10% 0 4%;
    line-height: 30px;
}

.cv .set img{
	    width: 80%;
    margin: auto;
}

.cv .set .product_name .name {
    font-size: 2rem;
    line-height: 28px;
}

.cv .set .product_name .about {
	text-align: left;
}


.contents07{
	    background: #fcf4e1;
	padding-bottom: 0;
    margin-bottom: 10%;
}

.contents07 .contentsimg{
		    width: 90%;
    display: block;
    margin: 4% auto 6%;
	}

.contents07 .inner-block{
	padding: 6%;
}

.contents07 .inner-block .eng{
	font-size: 1.2rem;
}

.contents07 .inner-block .title{
	font-size: 2.8rem;
    line-height: 34px;
    margin: 2% 0 6%;
    letter-spacing: 0.1rem;
}

.contents07 .inner-block .title span{
	font-size: 2.2rem;
}


.contents07 .inner-block .title-sub{
	    font-size: 2.2rem;
    line-height: 30px;
    margin: 8% 0 4%;
}

.contents07 .inner-block .info{
	    margin: 6% 0;
}

.contents07 .jurlique-about{
	background: #fff;
    padding: 4%;
    border-radius: 15px;
    margin: 8% 0 4%;
}

.cv .list{
	    display: flex;
        margin: 6% 5%;
	border:none;
		
}

.cv .list li{
	padding: 4%;
	width: 49%;
    margin: auto;
	border: 1px solid #dd96b8;
	border-radius: 12px;
}

.cv .list li .product_name .name{
	    font-size: 1.6rem;
    line-height: 24px;
}

.cv .list li .product_name .price{
	    margin-bottom: 4%;
}

.cv .list li .product_name {
    width: 100%;
}

@media screen and (min-width: 481px) {
	/* ------------------481px以上に適用されるCSS（タブレット）------------------- */
	
/*common*/
	body{
		max-width: inherit;
	}
	main{
		    min-width: 481px!important;
	}
	
	.floating_btn {
    max-width: 520px;
}
	.floating {
		    display: flex;
		justify-content: center;
		
		}
	.floating.is-hidden {
    visibility: hidden;
    opacity: 0;
}
	
	footer{
		    background-color: #edf6fb;
	}
	
	.contents5 .goals {
    text-align: center;
    padding: 174% 0 24%;
}
	.fv{
		    margin: auto;
	}
	
	.fv .fv_text .eng {
    font-size: 1.4rem;
}
	
	.fv .fv_text .visual-title {
		font-size: 3.2rem;}
	
	.fv .fv_text .sub-text {
    font-size: 1.6rem;
    line-height: 26px;
}
	
	.contents01 .main-text h2 {
    font-size: 3rem;
	        padding: 16% 0 6%;
	}
	.contents01 .main-text p {
		    font-size: 1.6rem;
    line-height: 30px;
	}
	
	    .contents01 .main-text .info {
        font-size: 1rem;
        text-align: center;
			        margin: 0;
    }
	
	.contents01 .main-text {
		    margin-bottom: -4%;
	}
	
	.contents01 .cv-area .product_name {
    margin: 80% 0 0;
}
	
	.cv-area .product_name .name {
    font-size: 1.8rem;
}
	
	.cv-area .price {
        font-size: 1.6rem;
        margin-bottom: 4%;
    }
	
	.contents01 {
    padding: 0;
    margin-bottom: 0;
}
	.contents02 .thomson-block h2 {
    font-size: 2.4rem;
    line-height: 30px;
}
	
	.contents02 .thomson-block h2 span {
    font-size: 1.6rem;
	}
	
	.contents02 .thomson-block p {
    font-size: 1.6rem;
    line-height: 20px;
    margin: 6% 6% 0;
	}
	
	.contents02 .rose-block .text span {
    font-size: 1.6rem;
}
	
	.contents02 .rose-block .eng {
    font-size: 1.2rem;

	}
	
	.contents02 .rose-block .text {
    font-size: 3.2rem;
    line-height: 42px;
	}
	
	.contents02 .rose-block .rose-about .title {
    font-size: 2.2rem;
    line-height: 34px;
	}
	
	.contents02 .rose-block .rose-about p {
    font-size: 1.6rem;
    line-height: 26px;
}

	
	.contents02 {
		margin-bottom: 0;
	}
	
	.contents03 .title-block .icon {
		font-size: 1.6rem;
	}
		
	
	.contents03 .title-block .text-block .title {
    font-size: 3.2rem;
    line-height: 42px;
	}
	
		.contents03 .title-block .text-block .text {font-size: 1.6rem;
    line-height: 30px;}
	
	.contents03 .inner-block .tech-block .title {
    font-size: 2rem;
    line-height: 30px;
	}
	
	.contents03 .inner-block .tech-block p {
    font-size: 1.6rem;
    line-height: 27px;
	}
	
	.contents03 .inner-block .bold {
    font-size: 2.2rem !important;
        line-height: 32px !important;
        padding: 5% 0 10% !important;
        font-weight: 600 !important;
	}
	
	.cv .product-block {
    border: 2px solid #dd96b8;
    border-radius: 14px;
	}
	
	
	
	.cv .product-block .title {
    font-size: 2.8rem;
	}
	
	.contents04 .title-block .eng {
    font-size: 1.6rem;
}
	
	.contents04 .title-block .title {
        padding: 12% 0 6%;
    font-size: 3.4rem;
    line-height: 43px;
}
	.contents04 .title-block .text {
    margin: 76% 0 8%;
    font-size: 1.8rem;
    line-height: 30px;
}
	
	.contents04 .basic-block .title {
    text-align: center;
    font-size: 2.6rem;
	}
	
	.contents04 .basic-block .text {
		font-size: 1.6rem;
    line-height: 26px;
	}
	
	.contents04 .recommend-block .text-block .title {
    font-size: 3rem;
    line-height: 30px;
	}
	
	.contents04 .recommend-block .text-block .text {
    text-align: left;
    font-size: 1.6rem;
    line-height: 28px;
    margin-bottom: 0;
}
	
	.contents05 .eng {
    font-family: serif;
    font-size: 3.2rem;
	}
	
	.contents05 .title {
    font-size: 3.2rem;
    line-height: 44px;
	}
	
	.contents05 .text {
	        font-size: 1.8rem;
        line-height: 30px;
		    margin: 6% 0 8%;
	}
	
	
	.contents05 picture {
    padding-bottom: 6%;
    display: block;
    width: 82%;
    margin: auto;
}
	
	.contents06 .title {
    font-size: 3rem;
    line-height: 44px;
		    margin: 12% 0 0;
	}
	
	.contents06 p {
    padding: 6%;
    font-size: 1.6rem;
    line-height: 26px;
}
	
	.contents06 .comment-box {
    padding-left: 0;
}
	
	.contents06 .comment {
    padding: 0% 0 12% 0%;
	}
	
	
	
	.contents07{
		    padding-top: 10%;
	}
	.contents07 .inner-block .title {
    font-size: 3.4rem;
    line-height: 40px;
	}
	
	.contents07 .inner-block .title span {
    font-size: 2.6rem;
}
	
	.contents07 .inner-block .title-sub {
    font-size: 2.6rem;
    line-height: 36px;
	}
	
	
	.contents07 .inner-block .text {
	font-size: 1.6rem;
	line-height: 26px;}
	
	
	.contents07 .contentsimg{
		    width: 90%;
    display: block;
    margin: 4% auto 6%;
	}
	
	.contents07 .jurlique-about {
    background: #fff;
    padding: 6%;
	}
	
	.cv .set {
    border: none;
    background: #fcf3e1;
    padding: 1% 0 4%;
    margin-top: 6%;
}
	.cv .list {
    display: flex;
    margin: 6%;
    border: none;
}
	
	.cv .list li {
    padding: 4%;
    width: 49%;
    margin: auto;
    border: 2px solid #dd96b8;
    border-radius: 15px;
}
}
