@charset "utf-8";
/* CSS Document */
body {
	display: block;
    margin: auto;
	font-family: Open Sans,Helvetica Neue,Helvetica,Arial,Verdana,Roboto,ヒラギノ角ゴ Pro W3,Hiragino Kaku Gothic Pro,游ゴシック,Yu Gothic,游ゴシック体,YuGothic,Meiryo UI,メイリオ,Meiryo,ＭＳ Ｐゴシック,MS PGothic,sans-serif;
    webkit-font-smoothing: antialiased;
	background: #f9f3e6;
	/*background-image: url(/client_info/ATAROMA/view_preview/userweb/ext/spring_essence/img/LP_SE_bg.gif);*/
	object-fit: cover;
	background-repeat: repeat;
	background-position: center;
}
@media (max-width: 768px) {
  body {
    overflow-x: hidden;
  }
}

h1,
h2,
h3,
h4,
h5,
h6,
p,
dl,
dt,
dd,
ol,
ul,
li {
	color: #4d4d4d;
	font-size: 14px;
}

a {
	color: #424242;
  	text-decoration: none;
  	-webkit-transition: all 0.35s ease-out;
  	transition: all 0.35s ease-out;
  	-webkit-tap-highlight-color: rgba(0, 0, 0, 0.35);
}
a:active, a:hover {
	outline: 0;
}
a:focus {
	outline: none;
}

@media screen and (min-width: 640px) {
	.sp {
		display: none;
	}
}

.menu-wrap-l {
    position: fixed; /* 画面に固定 */
	text-align: center;
    bottom: 250px;
	left: 12%; /* 左端に配置 */
}
.menu-wrap-r {
    position: fixed; /* 画面に固定 */
	text-align: center;
    bottom: 270px;
	right: 12%; /* 右端に配置 */
}

.menu-wrap-l a {
    text-decoration: none;
    color: #898775;
    font-size: 14px;
    font-weight: 600;
    display: block;
    padding: 8px;
    width: 180px;
}
.menu-wrap-r a {
    text-decoration: none;
    color: #898775;
    font-size: 14px;
    font-weight: 600;
    display: flex;
    padding: 20px 16px;
    width: 180px;
}
.menu-wrap-l a:hover, .menu-wrap-r a:hover {
	text-decoration: underline 2px #898775; 
}

.menu-wrap-l p {
    font-size: 14px;
    color: #898775;
    margin: 0;
    padding-top: 40px;
}
.menu-wrap-r p {
    font-size: 14px;
    color: #898775;
	font-weight: 600;
}

.instagram_link, .app_link{
    display: flex;
    align-items: center; /* 横方向で中央揃え */
	gap: 15px;
  }
.instagram_link img, .app_link img {
	max-width: 30px;
  }

/*header*/
.header {
    max-width: 375px;
	height: 631px; /* 好きな高さを指定 */
    overflow: hidden; /* 拡大してもはみ出さないように */
    position: relative;
    margin: 0 auto;
	outline: solid 1px transparent;
}
.header__box {
    max-width: 375px;
	position: fixed;
	justify-content: space-between;
	align-items: center;
    background-color: rgba(182, 183, 185, 0.8); /* 半透明のベージュ背景 */
    width: 100%; /* 親要素の幅に合わせる */
    padding: 16px 0; /* 背景に余白を追加して調整 */
	margin: 0 auto;
    z-index: 999; /* 他の要素より上に配置するため */
}
.logo_btn img {
    width: 30%; /* 画像の幅を調整 */
    position: relative;
    z-index: 4;
	display: block;
	margin: 0 auto;
}

.menu-button, .menu-overlay {
	display: none;
}

@media screen and (max-width: 1240px) {
	.menu-wrap-l {
		left: 6%; /* 左端に配置 */
	}
	.menu-wrap-r {
		right: 6%; /* 右端に配置 */
	}
}
@media screen and (max-width: 1080px) {
	.menu-wrap-l {
		left: 4%; /* 左端に配置 */
	}
	.menu-wrap-r {
		right: 4%; /* 右端に配置 */
	}
}
@media screen and (max-width: 950px) {
	.menu-wrap-l a, .menu-wrap-r a {
	display: none;
}
	.menu-wrap-l p {
	display: none;
}
	
	.header__box {
		display: flex;
		align-items: center;
	}
	.logo_btn img {
        margin: 0;
        padding-left: 28px;
	}
	
	.menu-overlay.active {
        display: flex;
}
	.menu-button {
		display: flex;
}
	/* メニューボタンのスタイル */
	.menu-button {
        width: 40px;
        height: 40px;
        background: none;
        border: none;
        cursor: pointer;
        display: flex;
        flex-direction: column;
        justify-content: center;
        align-items: center;
        padding-right: 35px;
        z-index: 999;
}
	/* ハンバーガーメニューの線 */
	.menu-button span {
    display: block;
    width: 20px;
    height: 3px;
    background: #ffffff;
    margin: 2px 0;
    transition: 0.3s;
	}
	/* メニューが開いたときのアニメーション */
	.menu-button.active span:nth-child(1) {
		transform: translateY(6px) rotate(45deg);
	}
	.menu-button.active span:nth-child(2) {
		opacity: 0;
	}
	.menu-button.active span:nth-child(3) {
		transform: translateY(-8px) rotate(-45deg);
	}
	/* メニューの背景 */
	.menu-overlay {
		position: fixed;
		top: 0;
		width: 100%;
		height: 100%;
		background-color: rgba(182, 183, 185, 1.0);
		display: none;
		justify-content: center;
		align-items: center;
		max-width: 375px;
		margin: 0 auto;
	}
	/* メニューのコンテンツ */
	.menu-content ul {
		list-style-type: none; /* 箇条書きの点を消す */
		padding: 0; /* 左側の余白をなくす */
		margin: 0;
	}
	.menu-content ul li a {
		color: #ffffff; /* 文字を白くする */
		font-weight: 600; /* 文字を太くする */
		text-decoration: none; /* リンクの下線を消す（必要に応じて） */
	}
	.menu-content ul li {
		margin-bottom: 20px; /* アイテム間にスペースを追加（必要に応じて調整） */
	}
	.menu-content p {
		color: #ffffff;
	}
	.menu-content a:hover {
		text-decoration: underline 2px #ffffff;	
	}
}
@media (max-width: 375px) {
    .header__box {
        max-width: 100%;
    }
}

@media screen and (max-width: 439px) {
	.logo_btn img {
        width: 35%;
	}
}
@media screen and (max-width: 399px) {
	.header {
		height: 570px; /* 好きな高さを指定 */
	}
}
@media screen and (max-width: 379px) {
	.logo_btn img {
        width: 35%;
	}
}
@media screen and (max-width: 365px) {
	.header {
		height: 520px; /* 好きな高さを指定 */
	}
}

/*TOP*/
.title {
	text-align: center;
	position: absolute;
	bottom: 80px;
	margin: 0 auto;
	z-index: 3;
	width: 100%;
}
.title img, .title h1 {
	width: 90%;
    display: block;
    margin: 0 auto;
    padding: 8px 0 18px;
}
.title h2 {
    color: #ffffff;
    font-size: 14px;
    font-weight: 600;
    line-height: 1.75;
    letter-spacing: 1px;
    margin: 0 auto;
}
.title p {
	color: #ffffff;
    font-size: 14px;
    font-weight: 600;
    letter-spacing: 1px;
    margin: 0px 80px;
    border-right: solid 2px #ffffff;
    border-left: solid 2px #ffffff;
}

main {
	background: #ffffff;
	max-width: 375px;
	margin: 0 auto;
	display: block;
}

/*news*/
.cal-container {
	width: 100%;
 	display: flex;
 	align-items: center;
 	overflow: hidden;
	background: #53575a;
}
.cal-wrapper {
	display: flex;
 	animation: slide-flow 30s infinite linear 1s both;
}
.cal-wrapper a {
    width: 420px;
    height: 40px; /* 高さを明示的に指定 */
    color: white;
    font-size: 14px;
    padding: 0 10px; /* 縦方向のpaddingを削除 */
    letter-spacing: 1px;
    display: flex;
    align-items: center; /* 縦方向の中央揃え */
    justify-content: center; /* 横方向の中央揃え */
    text-align: center;
}
.cal{
 	width: 400px;
 	object-fit:cover;
	padding-left: 1px;
}
@keyframes slide-flow {
 	0% {transform: translateX(0);}
 	100% {transform: translateX(-100%);}
}
.cal-paused:hover .cal-wrapper {
	animation-play-state: paused;
 }

/*intro*/
.intro__txt {
	text-align: left;
    max-width: 320px;
    font-size: 14px;
    line-height: 1.75;
    margin: 0 auto;
    padding: 40px 30px;	
}

.design__copy, .pure__copy, .select__copy  {
    position: relative; /* 相対位置指定 */
}
.design__copy a, .pure__copy a, .select__copy a {
    display: block;
    position: relative;
}
.design__copy img, .pure__copy img, .select__copy img {
	display: block;
    width: 100%;
    height: auto;
    padding-top: 10px;
}

.design__copy h2, .pure__copy h2 {
	position: absolute;
    top: 12%;
    left: 10%;
    font-size: 18px;
	letter-spacing: 1px
}
.design__copy p, .pure__copy p {
    position: absolute;
    bottom: 12%;
    left: 10%;
    font-size: 12px;
	line-height: 1.75;
	letter-spacing: 1px;
}

.select__copy h2 {
	position: absolute;
    top: 5%;
    right: 10%;
    font-size: 18px;
	letter-spacing: 1px;
}
.select__copy p {
    position: absolute;
    bottom: 12%;
    right: 10%;
    font-size: 12px;
	line-height: 1.75;
	letter-spacing: 1px;
}



#pure, #design {
	background: #d9dadb;
	margin-bottom: 20px;
}
.pure__title, .design__title {
	position: relative;
	width: 100%;
    height: auto;
    background-repeat: no-repeat;
    background-position: center center;
    background-size: cover;
    text-align: center;
    padding-top: 170px;
    padding-bottom: 170px;
    margin-bottom: 2px;
}
.pure__title {
	background-image: url(/client_info/ATAROMA/view_preview/userweb/ext/skin-on-fragrance/img/LP_skin_pure.png);
}
.design__title {
    background-image: url(/client_info/ATAROMA/view_preview/userweb/ext/skin-on-fragrance/img/LP_skin_design.png);
}
.pure__title img, .design__title img {
    position: absolute; /* 親要素の左上に固定 */
    top: 0; /* 少し浮かせる場合は負の値 */
    left: 0; /* 少し左にずらす場合は負の値 */
    width: 90px;
    height: auto;
    z-index: 10; /* 前面に配置 */
}
.pure__title h3 {
	color: #ffffff;
	font-size: 18px;
	line-height: 1.5;
    letter-spacing: 1px;
    margin: 0 auto;
}
.design__title h3 {
	color: #ffffff;
	font-size: 18px;
    letter-spacing: 1px;
    margin: 0 auto;
}
.pure__txt p, .design__txt p {
	text-align: left;
    max-width: 320px;
    font-size: 14px;
    line-height: 1.75;
    margin: 0 auto;
    padding: 40px 30px;
}

#lineup h3 {
	font-size: 14px;
	line-height: 1.75;
	letter-spacing: 1px;
	margin: 0 auto;
	padding-bottom: 8px;
}
#lineup h2 {
    font-size: 24px;
	letter-spacing: 1px;
	margin: 0 auto;
}


/*line-up*/
#lineup {
	position: relative;
	width: 100%;
    height: auto;
    background-image: url(/client_info/ATAROMA/view_preview/userweb/ext/skin-on-fragrance/img/LP_skin_lineup.png);
    background-repeat: no-repeat;
    background-position: center bottom;
    background-size: cover;
    text-align: center;
    padding-top: 60px;
    padding-bottom: 200px;
}
#lineup h3 {
	font-size: 14px;
	line-height: 1.75;
	letter-spacing: 1px;
	margin: 0 auto;
	padding-bottom: 8px;
}
#lineup h2 {
    font-size: 24px;
	letter-spacing: 1px;
	margin: 0 auto;
}

/*oil*/
.item__img {
  position: relative;
}
.item__img a {
  display: block;
  position: relative;
}
.item__img h3 {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  margin: 0;
}
.item__img h3 img,
.item__img a img {
  display: block;
  width: 100%;
  height: auto;
}

.item__warp {
    text-align: center;
    margin: 0;
}
.item__warp h4 {
	font-size: 14px;
	letter-spacing: 1px;
    line-height: 1.75;
    margin: 60px 0 0 0;
}
.item__warp p {
    font-size: 12px;
    margin: 20px 0 0 0;
}
.price p {
    font-size: 14px;
    margin: 40px 0 0 0;
}

/*scenting design story*/
.story {
    background: #b6b7b9;
    max-width: 320px;
    display: block;
    margin: 0 auto;
    position: relative;
    padding: 60px 0;
}
.story img {
    position: absolute; /* 親要素の左上に固定 */
    top: 0; /* 少し浮かせる場合は負の値 */
    left: 0; /* 少し左にずらす場合は負の値 */
    width: 90px;
    height: auto;
    z-index: 10; /* 前面に配置 */
}
.story h5 {
	font-size: 20px;
    line-height: 1.75;
    color: #ffffff;
    margin: 0 0 20px 0;
    letter-spacing: 1px;
}
.story p {
	text-align: left;
    max-width: 320px;
    font-size: 14px;
    line-height: 1.75;
    margin: 0 auto;
    padding: 0 40px;
    color: #ffffff;
}

.CM__btn {
    display: inline-block;
}

.CM__btn_inner {
    position: relative;
    display: inline-block;
	margin: 0 0 120px 0;
}

.CM__btn img {
    display: block;
    width: 100%;
    height: auto;
}

.CM__btn p {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%); 
    color: #ffffff;
    text-align: center;
    font-size: 14px;
    font-weight: 700;
    line-height: 1.75;
	letter-spacing: 1px;
    white-space: nowrap;
    width: 100%;
	margin: 0;
}

.CM__btn p span {
    display: block;
    font-size: 20px;
	letter-spacing: 1px;
}





/*swiper*/
.swiper{
    max-width: 320px;
    margin: 60px auto;
    height: auto;
    position: relative;
    overflow: hidden;
    list-style: none;
    padding: 20px 0 60px;
    z-index: 1;
    display: block;
    border-top: solid 2px #4d4d4d;
    border-bottom: solid 2px #4d4d4d;
}
.swiper-slide img {
	height: auto;
	width: 100%;
}

.swiper-fade .swiper-slide{
	text-align: center;
	pointer-events:none;
	transition-property:opacity;
}

.swiper-horizontal{
	width:100%;
	touch-action:pan-y;
}
.swiper-vertical{
	width:100%;
	touch-action:pan-x;
}
.swiper-slide{
	flex-shrink:0;
	width:100%;
	height:100%;
	position:relative;
	transition-property:transform;
	display:block;
}
.swiper-horizontal>.swiper-pagination-bullets,.swiper-pagination-bullets.swiper-pagination-horizontal,.swiper-pagination-custom,.swiper-pagination-fraction{
	bottom: var(--swiper-pagination-bottom, 88px);
    top: var(--swiper-pagination-top, 355px);
	width:100%;
}

.swiper-slide a{
	display: block;
}

@media screen and (max-width: 365px) {
	.swiper-horizontal>.swiper-pagination-bullets,.swiper-pagination-bullets.swiper-pagination-horizontal,.swiper-pagination-custom,.swiper-pagination-fraction{
    top: var(--swiper-pagination-top, 320px);
}
}


/*香り選び*/
#select {
	background: #d9dadb;
}
.select__intro h2 {
    font-size: 24px;
    line-height: 1.75;
    letter-spacing: 1px;
    margin: 0 auto;
	text-align: center;
}
.select__intro h3 {
    font-size: 14px;
    line-height: 1.75;
    letter-spacing: 1px;
    margin: 0 auto;
	text-align: center;
	padding-top: 60px;
}
.select__intro p {
	max-width: 320px;
    font-size: 14px;
    line-height: 1.75;
    margin: 0 auto;
    padding: 20px 0 40px;
	text-align: center;
}

.select_howto {
	background: #ffffff;
    padding: 0 0 20px 0;
    max-width: 320px;
    display: block;
    margin: 0 auto;
}
.select_howto p {
	max-width: 320px;
    font-size: 14px;
    line-height: 1.75;
    margin: 0 auto;
    padding: 0 20px;
}
.select_howto span {
    font-size: 16px;
    font-weight: 700;
    line-height: 4;
}

.scene__box {
	margin: 40px auto;
}

.scene__image {
  position: relative;
}
.bg_image {
    display: block;
    max-width: 320px;
    margin: 0 auto;
    outline: solid 8px #ffffff;
	outline-offset: -8px
}
.scene__title {
  position: absolute;
  bottom: 0;
  left: 50%;
  transform: translateX(-50%);
  width: 100%; /* 必要に応じて調整 */
  text-align: center;
}
.scene__title img {
    width: 85%;
    display: block;
    padding-bottom: 20px;
    margin: 0 auto;
}

.scene__txt p {
	max-width: 320px;
	font-size: 14px;
    line-height: 1.75;
    margin: 0 auto;
    padding: 24px 0 28px;
}
.scene__txt span {
	font-weight: 700;
}
.scene__recom p {
	max-width: 320px;
	font-size: 14px;
    line-height: 1.75;
    padding: 20px 0;
    border-top: solid 2px #4d4d4d;
    border-bottom: solid 2px #4d4d4d;
    margin: 0 auto;
}
.scene__recom span {
	font-weight: 700;
}

#app__bnr {
    position: relative; /* 親要素を relative にする */
    max-width: 375px;
    text-align: center;
    margin: 0 auto;
    padding-bottom: 60px;
}

.appDL__box {
    max-width: 320px;
    display: block;
    margin: 0 auto;
}

/* app__bnr img {
    filter: blur(1.5px) brightness(60%);
    display: block;
    width: 100%; /* 画像のサイズ調整
}*/

#app__bnr p {
position: absolute;
    top: 35%;
    left: 50%;
    transform: translate(-50%, -50%);
    color: #ffffff;
    font-size: 18px;
	letter-spacing: 1px;
    font-weight: bold;
    white-space: nowrap;
    z-index: 10;
    margin: 0;
}




/*CPN*/
#CPN {
    max-width: 375px;
    text-align: center;
    margin: 0 auto;
    padding: 60px 0 50px;
}
#CPN h3 {
    font-size: 16px;
	line-height: 1.75;
	letter-spacing: 1px;
	margin: 0 auto;
}
#CPN h2 {
    font-size: 20px;
	line-height: 1.75;
	letter-spacing: 1px;
	margin: 0 auto;
}
#CPN p {
	font-size: 14px;
	line-height: 1.75;
	text-align: center;
	margin: 0 auto;
	padding: 20px 0 40px;
}
.CPN__box {
	max-width: 320px;
    display: block;
    margin: 0 auto;
	padding-bottom: 10px;
}

.CPN_store, .CPN_insta {
    position: relative; /* 親要素を relative にする */
    max-width: 375px;
    text-align: center;
    margin: 0 auto;
}
.CPN_store img,.CPN_insta img {
	/* filter: blur(1.5px) brightness(60%); */
	display: block;
    width: 100%; /* 画像のサイズ調整 */
}
.CPN_store p,.CPN_insta p {
    position: absolute;
    top: 35%;
    left: 50%;
    transform: translate(-50%, -50%);
    color: #ffffff;
    font-size: 18px !important;
	letter-spacing: 1px;
    font-weight: bold;
    white-space: nowrap;
    z-index: 10;
    padding: 30px 0 0 0 !important;
    margin: 0 !important;
}



/*btn*/
.cart__btn {
	margin: 0 auto;
	padding: 40px 0 60px;
	/*padding: 40px 0;*/
	width: 272px;
}
.cart__btn a {
	display: block;
    text-align: center;
	padding: 18px;
    font-size: 14px;
    font-weight: 600;
    letter-spacing: 1px;
    color: #ffffff;
	background: #d3caa2;
}
.cart__btn a:hover {
    color: #949698;
    background: #b6b7b9;
  }


/*store*/
.store{
	max-width: 375px;
	background: #b6b7b9;
	margin: 0 auto;
	padding: 40px 0;
	/* outline: solid 1px #ffffff; 枠線を内側に */
	/* outline-offset: -1px; 枠を内側に寄せる */
}
.store-wrap p {
	margin: 0 auto;
    padding: 16px 0 0;
    width: 272px;
	font-size: 14px;
	font-weight: 600;
	letter-spacing: 1px;
	color:#ffffff;
	text-align: center;
	display: block;
}
.store-wrap a {
	margin: 16px auto;
    padding: 24px 0;
    width: 272px;
    background: #ffffff;
    font-size: 14px;
    font-weight: 600;
    letter-spacing: 1px;
    color: #4d4d4d;
    text-align: center;
    display: block;
}
.store-wrap a:hover {
    color: #b6b7b9;
    background: #949698;
}


/*footer*/
.footer {
    background: #ffffff;
    max-width: 375px;
    margin: 0 auto;
    display: block;
}
.footer-nav {
	text-align:center;
	margin: 0;
	padding: 40px 10px 0;
}
.footer-nav li {
	font-size: 12px;
	display: inline-block;
}
.footer-nav li a:hover {
	text-decoration: underline;
}
.footer-nav li+li {
	margin-left: 8px;
	padding-left: 8px;
	border-left: 1px solid #c1c1c1;
}
.footer-copy {
	font-family: "Abel", sans-serif;
	font-size: 12px;
	text-align: center;
	margin: 0;
	padding: 40px 0 80px;
}


/*発売前　ポップアップ*/
.popup {
  width: 100%;
  height: 100%;
  background: rgba(255,245,220,0.8);
  position: fixed;
  top: 0;
  left: 0;
  z-index: 1000;
  transition: all .2s;
  visibility: hidden;
}
.popup__container {
	min-width: 330px;
  	max-width: 375px;
    background-image: url(/client_info/ATAROMA/view_preview/userweb/ext/skin-on-fragrance/img/LP_skin_popup.png);
    background-repeat: no-repeat;
    background-position: center center;
    background-size: cover;
    text-align: center;
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    padding: 100px 0;
}
.popup__container img, .popup__container h3 {
	width: 85%;
    margin: 0 auto;
}
.popup__container h4 {
    font-size: 16px;
    letter-spacing: 1px;
    color: #4d4d4d;
    margin: 5px 0 15px 0;
}
.popup__container p {
    font-size: 14px;
    font-weight: 700;
    letter-spacing: 1px;
    color: #4d4d4d;
    margin: 40px 0 0 0;
}

.popup:target {
	visibility: visible;
}
.popup__close {
	position: absolute;
    top: 10px;
    right: 24px;
    color: #4d4d4d;
    text-decoration: none;
    font-size: 32px;
	transition: all .01s;
}

#jct_sample span {
	font-family: Open Sans,Helvetica Neue,Helvetica,Arial,Verdana,Roboto,ヒラギノ角ゴ Pro W3,Hiragino Kaku Gothic Pro,游ゴシック,Yu Gothic,游ゴシック体,YuGothic,Meiryo UI,メイリオ,Meiryo,ＭＳ Ｐゴシック,MS PGothic,sans-serif;
	font-size: 140%;
	letter-spacing: 1px;
	font-weight: 700;
	color: #4d4d4d;
}


