@charset "UTF-8";
body {
	font-family: YakuHanJP_Noto, "HelveticaLTPro-Light", "Noto Sans JP", sans-serif;
	overflow-x: hidden;
}
/* ヘッダーの高さ分設定*/
#falcospecial,#uv,#cream,#gel,#peel,#supplement,#orphe,#falco,#subImage01,#falco_set,#falco_cream_01,#falco_cream_02,#orphe_hairset,#orphe_buildsupplement {
	padding-top: 63px;
	margin-top: -63px;
}

ul {
	list-style: none;
	/*position: absolute;*/
}

img {
 /* image-rendering: -webkit-optimize-contrast;*/
	image-rendering: auto;
}

.header {
	position: sticky; /* headerを追従にする */
	top: 0;
	left: 0;
	right: 0;
	max-width: 750px;
	width: 100%;
	margin: auto;
	background-color: white;
	z-index: 100;
	box-sizing: border-box;
	flex-wrap: wrap;
}

@media screen and (min-width: 750px) {
	.header { 
	max-width: 750px;
	position: sticky; /* headerを追従にする */
	top: 0;
	left: 0;
	right: 0;
	width: 100%;
	margin: auto;
	background-color: white;
	z-index: 100;
	box-sizing: border-box;
		align-items: center;
	}
}

.header__inner {
 	display: flex;
	align-items: center;
	padding: 0.5rem 1rem;
	flex-wrap: wrap;
	justify-content:space-between;
	margin: auto;
}

/* header下線 */
.header:before {
    position: absolute;
    bottom: 0;
    left: 0;
    /*width: 100%;*/
    height: 0.1rem;
    content: "";
    display: block;
    background: #ededed;
	width: 100vw;
  margin: 0 calc(50% - 50vw);
}
.menu_1 {
	 display: flex;
}

/* Almadoロゴ */
.logo-almado-header {
	text-align: center;
	margin-left: auto;
	margin-right: auto;
}
.logo-almado-header img {
	width: 120px;
}

/* ハンバーガーボタンのデザイン */
.drawer__button {
  position: relative;
  width: 3rem;
  height: 3rem;
  background-color: transparent;
  border: none;
  cursor: pointer;
  z-index: 999; /* メニューを開いている時もクリックできるよう設定 */
}
/* ハンバーガーボタン内の線 */
.drawer__button > span {
  display: block;
  position: absolute;
  top: 35%;
  left: 50%;
  width: 1.7rem;
  height: 1px;
  background-color: #777777;
  transform: translateX(-50%);
}
.drawer__button > span:first-child {
  transform: translate(-50%, calc(-50% - 0.5rem));
  transition: transform 0.3s ease;
}
.drawer__button > span:nth-child(2) {
  transform: translate(-50%, -50%);
  transition: opacity 0.3s ease;
}
.drawer__button > span:last-child {
  transform: translate(-50%, calc(-50% + 0.5rem));
  transition: transform 0.3s ease;
}
/* 展開時のデザイン */
.drawer__button.active > span:first-child {
  transform: translate(-50%, -50%) rotate(-45deg);
}
.drawer__button.active > span:nth-child(2) {
  opacity: 0;
}
.drawer__button.active > span:last-child {
  transform: translate(-50%, -50%) rotate(45deg);
}

buttom.drawer__button:after {
    content: "メニュー";
    font-size: 12px;
    position: absolute;
    top: 29px;
    left: 0px;
    color: #777777;
}

.cart-end img , .nav-action__present img {
  height: 2.5rem;
}

/* メニューのデザイン */
.drawer__nav__item .nav_title{
	font-weight: bold;
	font-size:20px;
}

.drawer__nav {
	position: fixed; /* 追従ヘッダーなどでも表示できるよう設定しておく */
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	background-color: rgba(0, 0, 0, 0.5);
	transition: opacity 0.3s ease;
	opacity: 0;
	visibility: hidden;
	overflow: scroll;
	-webkit-overflow-scrolling: touch;
	margin-top: 64px;
}
.drawer__nav.active {
  opacity: 1;
  visibility: visible;
	z-index: 90;
}
.drawer__nav__inner {
	position: relative;
	width: 80%;
	height: 100vh;
	background-color: white;
	padding: 2rem 1.5rem 1rem;
	margin: 0 auto 0 0;
	transform: translateX(0);
	transition: transform 0.3s ease;
	z-index: 88;
}

.nav-action__present {
	display: flex;
	align-items: center;
}

@media (orientation: portrait){
.drawer__nav__inner {
	height: 100vh;
	}
}

@media screen and (max-height: 640px) {
.drawer__nav__inner {
	height: calc(100vh + 20rem) ;
	}
}

.drawer__nav.active .drawer__nav__inner {
  transform: translateX(0);
	/*transform: translateX(-100% ,0);*/
}
.drawer__nav__menu {
  list-style: none;
  padding-left: 0;
}
.drawer__nav__link {
  display: block;
  color: black;
  text-decoration: none;
  padding: 1rem 1rem;
  border-bottom: solid 1px lightgray;
}

/* ハンバーガーメニュー展開時、背景を固定 */
body.active {
  height: 100%;
  overflow: hidden;
}


.drawer__close{
	cursor: pointer;
}

/* 見た目の調整 */
section {
  width: 100%;
  height: 30vh;
}
section:nth-child(even) {
  background-color: skyblue;
}

.cart-end{
	justify-content:flex-end;
}

.nav-action__item {
	top: 0;
	margin: 0;
}
.nav-action__item a {
	color: #777777;
  /*position: relative;*/
  display: -ms-flexbox;
  display: -webkit-box;
  display: flex;
  -ms-flex-pack: center;
  -webkit-box-pack: center;
          justify-content: center;
  -ms-flex-align: center;
  -webkit-box-align: center;
          align-items: center;
  /*height: 5rem;*/
  text-decoration: none;
  -webkit-transition: color 0.2s cubic-bezier(0.39, 0.575, 0.565, 1);
  transition: color 0.2s cubic-bezier(0.39, 0.575, 0.565, 1);
	/*width: 11rem;*/
    height: 100%;
}

.logo-almado-header-p {
	margin-right: 6rem;
}

@media screen and (max-width: 320px) {
.nav-action__present {
	margin-right: 0;
	}
	.logo-almado-header img {
	width: 100px;
	}
}
.nav-action__present {
	justify-content:flex-start;
	margin-left: 10px;
}


/*　カート数値 */
.nav-action__item--cart .in-minicart {
     display: block;
    position: absolute;
    color: #fff;
    font-size: 12px;
    z-index: 1;
    top: 5.5px;
    right: 1.2rem;
}

@media screen and (max-width: 749px) {
	.header__inner{
		padding: 0.5rem;
	}
	.nav-action__item a {
		font-size: 0.8rem;
	}
}

.minicart_ill {
	position: absolute;
    right: 20px;
}

.nav-action__item--cart.in-cart a:after {
    display: block;
    position: absolute;
    content: "";
    background: #2e7b43;
    /*left: 22rem;*/
	right: 0.8rem;
    /*top: 0.75rem;*/
	top: 5px;
    width: 20px;
    height: 20px;
    border-radius: 50%;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    border: 0.1rem solid #fff;
	
}
.nav-action__item--cart.empty-cart a:after {
    display: block;
    position: absolute;
    content: "";
    background: gray;
    /*left: 22rem;*/
	right: 0.8rem;
    /*top: 0.75rem;*/
	top: 5px;
    width: 20px;
    height: 20px;
    border-radius: 50%;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    border: 0.1rem solid #fff;
}

@media screen and (max-width: 320px) {
	.drawer__button img , .nav-action__present img ,.cart-end img {
    height: 1.8rem;
	}
	.nav-action__present {
		margin-left: -5px;
	}
}


/*------------ 戻るボタン ------------*/
#page-top {
  position: fixed;
  bottom: 5px;
  right: 20px;
  font-size: 20px;
  line-height: 1;
  z-index: 70;
}
	
#page-top a {
  background: #9c9c9c;
  text-decoration: none;
  color: #fff;
  width: 45px;
  padding: 18px 5px;
  text-align: center;
  display: block;
  border-radius: 90px;
  opacity: 0.9;
  transition: all .3s ease;
}
	
#page-top a:hover {
  text-decoration: none;
  opacity: .5;
}


/* ------------　ポップアップ  ------------*/
input {
    display: none;
}

/* ポップアップwindow部分 */
#overlay {
    visibility: hidden;
    position: absolute;
    left: 0;
    top: 0;
    z-index: 1000;
    width: 100%;
    height: 100%;
}
/* オーバーレイの背景部分 */
#bg_gray {
    background: rgba(0,0,0,0.5);
    width: 100%;
    height: 100%;
    position: fixed;
    left: 0;
    top: 0;
    z-index: 1200;
}
/* ウィンドウ部分 */
#window {
    width: 65%;
    position: fixed;
    left: 50%;
    top: 50%;
    transform: translate(-50%,-50%);
    background: #fff;
    border-radius: 15px;
    box-shadow: 0px 0px 20px -6px rgba(0,0,0,0.6);
    z-index: 1300;
    opacity: 0;
}

@media screen and (min-width: 700px) {
#window {
    width: 50%;
	}
}

@media screen and (min-width: 1100px) {
#window {
    width: 30%;
	}
}

@media screen and (min-width: 1800px) {
#window {
    width: 20%;
	}
}

@media screen and (max-height:400px) {
#window {
    max-width: 28%;
	}
}

/* 閉じるボタン */
#btn_cloth {
    position: absolute;
    top: -20px;
    right: -20px;
    width: 40px;
    height: 40px;
    display: flex;
    justify-content: center;
    align-items: center;
    background-color: #033483;
    border-radius: 20px;
    z-index: 100;
    cursor: pointer;
}

#btn_cloth span,
#btn_cloth span::before {
    display: block;
    height: 3px;
    width: 25px;
    border-radius: 3px;
    background: #fff;
}
#btn_cloth span {
    transform: rotate(45deg);
}
#btn_cloth span::before {
    content: "";
    position: absolute;
    bottom: 0;
    transform: rotate(-90deg);
}

/* クリックで表示 */
#popup:checked ~ #overlay {
    visibility: visible;
}
#popup:checked ~ #overlay #window {
    animation: fadein 500ms forwards;
    animation-timing-function: ease-in-out;
}
@keyframes fadein {
    100% {
        opacity: 1;
    }
}

/* コンテンツ部分のスタイル */
#txt_label {
    text-decoration: underline;
    cursor: pointer;
}

#msg a {
    display: inline-block;
    color: #fff;
    background: #CE5D8B;
    border-radius: 20px;
    padding: 0.5em 1.5em;
    text-decoration: none;
}

#window p {
	padding: 0;
	margin: 0;
}

.footer {
    position: relative;
    width: 100%;
    max-width: 750px;
    margin: 0 auto;
    padding: 15px 0;
    text-align: center;
    font-size: 0.8em;
}