/* カスタマイズ用CSS */

/* Top image of the top page */
.ec-headPromotionRole__image .ec-slickContainer .slick-list {
    margin: 25px 50px;
}

/* Each items are located center in each spaces of item pickup list */
.ec-productItemRole {
    text-align: center;
}

/* Item image of item pickup list */
.ec-productItemRole .ec-productItemRole__image a img {
    width: 50%;
}

@media (min-width: 1280px) {
    .ec-categoryRole {
        margin-bottom: 150px;
    }

    /* Products detail image */
    .luminous-gallery .drift-img {
            width: 75%;
    }
    
    /* Glower image of top page */
    .glower_detail .ec-sliderItemRole {
        margin-right: 30px;
    }
    .ec-categoryRole__image .item img {
    	width: 60%;
    }
    .glower_detail_description_text {
        margin-right: 20px;
    }
    .glower_detail_description_wrap table, .fetch_table01 {
        margin-left: -10px;
    }
}

@media (min-width: 768px) and (max-width: 1279px) {
    /* Glower image of top page */
    .glower_detail .ec-sliderItemRole {
        margin-right: 0px;
    }
    .ec-categoryRole__image .item img {
        width: 75%;
    }
    .glower_detail_description_text {
        margin-right: 0px;
    }
    .glower_detail_description_wrap table, .fetch_table01 {
        margin-left: 0px;
    }
}

@media (max-width: 767px) {
    /* Glower image of top page */
    .ec-categoryRole__image .item img {
        width: 100%;
    }
}


/* Button of item pickup list */
.ec-layoutRole__mainBottom .ec-shopCollectionBtn {
    margin: auto;
}


.swiper {
    opacity: 0;
    animation: FadeUpIn 1s linear 0.5s forwards;
    
    width: 100%;
    height: 100%;
    margin-bottom: 50px;
}
.swiper-slide {
    text-align: center;
    font-size: 18px;
    background: #fff;
    display: flex;
    justify-content: center;
    align-items: center;
}
.swiper-button-next, .swiper-button-prev {
    color: #ffffff;
}
.swiper-pagination-bullet-active {
    background: #ffffff;
    opacity: 1;
}
.swiper-pagination-bullet {
    opacity: unset;
}





#read-more {
	position: relative;
	margin: 0em auto;
	display: block;
	color: #000;
	border: none;
	outline: 0;
	cursor: pointer;
	background: none;
	letter-spacing: 0.1em;
}
#read-more:before {
	content: "";
	width: 50px;
	height: 25px;
	text-align: center;
	border-radius: 50%;
	display: block;
	margin: 0 auto .5em;
	transition: .3s;
}
#read-more .open-arrow {
	display: inline-block;
	vertical-align: middle;
	color: #000;
	line-height: 1;
	width: 25px;
	height: 25px;
	border: 2px solid currentColor;
	border-left: 0;
	border-bottom: 0;
	box-sizing: border-box;
	transform: translateY(-25%) rotate(135deg);
}
#read-more.on-click .open-arrow {
	display: none;
}
#read-more .close-arrow {
	display: none;
}
#read-more.on-click .close-arrow {
	display: inline-block;
	vertical-align: middle;
	color: #000;
	line-height: 1;
	width: 25px;
	height: 25px;
	border: 2px solid currentColor;
	border-left: 0;
	border-bottom: 0;
	box-sizing: border-box;
	transform: translateY(-25%) rotate(-45deg);
}

.open-message.on-click {
	display: none;
}
.close-message {
	margin-bottom: 25px;
	display: none;
}
.close-message.on-click {
	display: block;
}
#preview-veil {
    padding: 20px 25px 20px 20px;
	position: absolute;
	z-index: 100;
	background: linear-gradient(180deg, 
								rgba(255, 255, 255, 0) 0%, 
								rgba(255, 255, 255, 0) 60%, 
								rgba(255, 255, 255, 0.9) 80%, 
								rgba(255, 255, 255, 1) 100%);
}
#preview-veil.on-click {
	background: none;
}





/* the aboves were added since November 2025. -KazKus */


.ec-categoryRole__image .item img {
    /* transition: transform 1s cubic-bezier(0, 0, 0, 1) 0s !important; */
	/* transition: transform 1.0s 0s linear; */
}

.back_brown {
    background: #F6F4EF;
}

@media only screen and (min-width: 1279px){
    .ec-headerTitle a img {
        width: auto;
        height: 100%;
        max-height: 80px;
    }
}
@media only screen and (min-width: 767px) and (max-width: 1279px){
    .ec-headerTitle a img {
        height: 50px;
        width: auto;
    }
}

.fetch_title_sub { 
    font-size : 2.5vw;
    color : #666;
    filter: drop-shadow(2px 2px 1px rgba(246,244,239,1.0));
}
@media (min-width: 1920px){
    .fetch_title_sub {
        font-size: 50px;
    }
}
@media only screen and (min-width: 768px) and (max-width: 1279px){
    .fetch_title_sub {
        font-size: 4vw;
    }
}
@media only screen and (max-width: 767px){
    .fetch_title_sub {
        font-size: 1.3rem;
    }
}




.fetch02 { margin: 10px 0 0 0;}



.ec-categoryRole .ec-categoryRole__content .title {
    font-size: 2.2vw;
    filter: drop-shadow(2px 2px 1px rgba(246,244,239,1.0));
}

.ec-categoryRole .ec-categoryRole__content .item.slick-current .title:after {
    margin-top: 10px;
}
.ec-categoryRole .ec-categoryRole__content .title:after {
    width: 100px;
}

.ec-categoryRole {
    margin-top: 0px;

}
.ec-secHeading {
    margin-top: 100px;
}
@media only screen and (min-width: 1280px) {
    .ec-secHeading {
        margin-top: 150px;
    }
}
.ec-secHeading .ec-secHeading__ja {
    font-size: 1.5rem;
}


@media only screen and (min-width: 768px) and (max-width: 1279px){
    .ec-headPromotionRole .ec-headPromotionRole__content {
        padding-bottom: 0;
    }
}
@media only screen and (max-width: 767px){
    .ec-headPromotionRole .ec-headPromotionRole__content {
        padding-bottom: 0;
    }
}



@media only screen and (min-width: 1280px) {
    body#page_user_data:not(.scrolled) .ec-layoutRole__header {
        background-color: transparent;
    }
}
@media only screen and (min-width: 1280px) {
    body#page_user_data:not(.scrolled) .ec-layoutRole__header:hover {
        background-color: rgba(255, 255, 255, 0.5);
    }
}


.glower_detail .ec-categoryHeadRole .ec-categoryHeadRole__content .title {
    margin-bottom: 0.2em;
}

.ec-categoryRole .ec-categoryRole__content .wrap {
    top: 35vh;
}

.glower_detail .ec-categoryHeadRole__image > img {
    object-fit: cover;
    object-position: 50% 80%;
    height: 10vh;

}


@media only screen and (min-width: 1280px){
    .glower_detail .ec-categoryHeadRole .ec-categoryHeadRole__content {
        margin-bottom: 70px;
    }
}

.glower_detail .slide-item > img {
    margin-bottom: 25px;
}


.glower_detail .item {
    text-align: center;
}

.glower_title_wrap {
    display: inline-block;
}

.glower_detail .title.splitting {
    margin-top: -10px;
    font-family: "Playfair Display", serif;
    font-size: 2.2vw;
    font-weight: 400;
}

@media only screen and (min-width: 768px) and (max-width: 1279px){
    .glower_detail .title.splitting {
        font-size: 4vw;
    }
}
@media only screen and (max-width: 767px){
    .glower_detail .item {
        text-align: inherit;
    }
    .glower_detail .title.splitting {
        font-size: 6vw;
    }
    
    .glower_detail .glower_title_wrap .title_sub {
        font-size: 1rem;
    }
}

.glower_detail .title.splitting .char {
	animation: animeCategoryRoleTile-in 0.7s cubic-bezier(0.3, 0, 0.7, 1) both;
	animation-delay: calc(15ms * var(--char-index));
}

.glower_detail .title.splitting:after {
    /* margin: 8px auto 35px 0; */
    margin: 2px auto 40px 3px;
    content: "";
    display: block;
    width: 100px;
    height: 5px;
    background-color: #C8AF75;
    top: 100%;
    left: 0;
    transform-origin: left bottom;
    transform: scaleX(0);
    animation: LineAnime 1s linear 0.3s forwards;
}
@keyframes LineAnime {
  0% { transform: scaleX(0); }
  100% { transform: scaleX(1); }
}

.glower_detail .title_sub {
    font-family: "Noto Serif JP", serif;
    font-size: 1.46rem;
    line-height: 1.2;
    margin: 1em 0;
    
    text-align: center;
}

.glower_detail_img01 {
    opacity: 0;
    animation: FadeUpIn 1s linear 0.3s forwards;
}
.glower_detail_img02 {
    opacity: 0;
    animation: FadeUpIn 1s linear 0.8s forwards;
}
.glower_detail_img03 {
    opacity: 0;
    animation: FadeUpIn 1s linear 1.3s forwards;
}
.glower_detail_img04 {
    opacity: 0;
    animation: FadeUpIn 1s linear 1.8s forwards;
}
@keyframes FadeUpIn {
  0% { opacity: 0;transform: translateY(20px); }
  100% { opacity: 1;transform: translateY(0px); }
}

.glower_detail_description_wrap table, .fetch_table01 {
    width: 100%;
    table-layout: auto;

    border-collapse: separate;
    border-spacing: 10px 15px;

    opacity: 0;
    animation: FadeLSlideIn 0.8s linear 0.3s forwards;
}
.glower_detail_description_wrap th, .fetch_table01 th {
    padding: 10px 10px;
    text-align: center;
    background-color:#C8AF75;
    font-weight: normal;
    color:#ffffff;
    min-width: 130px;
}
.glower_detail_description_wrap td,.fetch_table01 td {
    padding: 10px 10px;
    color:#646461;
    background-color: #ffffff;
}

.ec-productRole__profile .glower_detail_description_wrap_top {
    margin-top: 0px;
}

.glower_detail_description_wrap {
    margin-top: 50px;

    opacity: 0;
    animation: FadeLSlideIn 0.8s linear 0.3s forwards;
}
.glower_detail_description_title {
    margin-bottom: 20px;
    font-family: "Noto Serif JP", serif;
    font-size: 1.46rem;
    color:#7d6710;
    line-height: 1.2;
}
.glower_detail_description_text {
    padding: 20px 25px 20px 20px;
    background-color: #ffffff;
    color:#646461;
    line-height: 28px;
}
.glower_productItemRole_title {
    font-family: "Noto Serif JP", serif;
    font-size: 1.6rem;
    font-weight: 400;
    margin: 0;
    margin-bottom: 1.5em;
}

@keyframes FadeLSlideIn {
  0% { opacity: 0;transform: translateX(20px); }
  50% { opacity: 0;}
  100% { opacity: 1;transform: translateX(0px); }
}