@charset "utf-8";
/* CSS Document */

/*fade-in*/
 .fadein {
  opacity: 0;
  transform : translate(0, 50px);
  transition : all 1000ms;
}

.fadein.scrollin{
  opacity: 1;
  transform: translate(0, 0);
}

h1.fs-c-heading { display: none;}
.sale-bnr { display: none;} 

#original_wrapper {
margin: 0 calc(50% - 50vw);
}
@media only screen and (min-width: 750px) {#original_wrapper {margin: 0 auto;max-width: 800px;}}

.original_main {margin: 0 auto;padding: 0;}


/*デフォルトのh1タグ非表示*/
h1.fs-c-heading.fs-c-heading--page {
    display: none;
}

#original_wrapper h1 {
    font-weight: 500;
    font-size: 200%;
    text-align: center;
}
@media only screen and (min-width: 750px) {#original_wrapper h1 {font-size: 300%;}}
@media only screen and (min-width: 750px) {#original_wrapper h2 {font-size: 24px;font-weight: 600;text-align: center;margin: 0;}}


#original_wrapper h3 {text-align: center;font-size: 150%;margin-bottom: 5px;font-weight: 500;}
@media only screen and (min-width: 750px) {
#original_wrapper h3 {font-size: 200%;}
}

.topimg{
    width: 100vw;
    max-width: 1000px;
    margin-right: auto;
    margin-left: auto;
}
.contents_wrap{color: #000000;}
.contents_wrap h2{/*font-family: 'Noto Serif JP', serif;*/text-align: center;font-size: 200%;}


/*訴求ポイント*/
.box {display: flex;margin: 50px 0 100px;}
.box p{color: #666;}
.box .product:first-child {margin: 50px 50px 0 0;}
.box .product:last-child {margin: 100px 0;}
.imagebox {margin: 100px 0;}
.img_l {width: 80%;margin: auto;}
.img_r {margin-left: 30%;}
.img_01 {padding: 50px 5px 0 0; width: 110%;}
.img_02 {padding: 50px 0 0 5px; width: 80%; margin: 0 auto;}
.img_03 {padding: 50px 5px 0 0; width: 110%;}
.img_04 {padding: 50px 0 0 5px; width: 80%; margin: 0 auto;}
.text_02,.text_04{width: 100%; max-width: 100%;}
.textsp_02,.textsp_04{display: none;}



/*リード*/
.lead {margin: 20px 0 30px;}
.lead p {text-align: center;font-size: 130%;line-height: 1.8em;}


/*スマホのみ改行*/
.btn_buy a {
	text-decoration: none;
}


/*スマホ設定*/
@media (max-width: 768px) {

.topimg{width: 100%;}

#original_wrapper h2 {font-weight: 600;text-align: center;font-size: 24px;}
/* hタグ非表示 */
.visually-hidden {
  position: absolute !important;
  width: 1px; height: 1px;
  padding: 0; margin: -1px;
  overflow: hidden; clip: rect(0 0 0 0);
  border: 0; white-space: nowrap;
}

/*リード*/
.lead p {text-align: center;font-size: 100%;line-height: 1.8em;}
}


/*バラバラに出てくるテキスト*/
/*========= レイアウトのためのCSS ===============*/
.title {
    margin: -10px 0 50px;
}
.title p{
font-family: 'Overpass', sans-serif;
font-weight: 600;
font-style: normal;
    text-align: center;
    font-size: 350%;
	line-height: 1em;
}
.title p.small {
    font-size: 200%;
    margin-top: 30px;
}

@media (max-width: 768px) {
.title {
    margin: -20px 0 20px;
}
.title p{
font-family: 'Overpass', sans-serif;


font-weight: 600;
font-style: normal;
    text-align: center;
    font-size: 160%;
}
.title p.small {
    font-size: 90%;
    margin-top: 20px;
}}
/*==================================================
ランダムにテキスト出現する
===================================*/

.TextRandomAnime span{
  opacity: 0;
}
.TextRandomAnime.appearRandomtext span{ 
  animation:text_randomanime_on .5s ease-out forwards;
}

@keyframes text_randomanime_on {
  0% {opacity:0;}
  100% {opacity:1;}
}

.TextRandomAnime.appearRandomtext span:nth-child(2n) {
  animation-delay: .5s;/* spanのついた2の倍数の文字列の変化を0.5秒遅らせる*/
}
.TextRandomAnime.appearRandomtext span:nth-child(3n+1) {
  animation-delay: .15s;/* spanのついた3の倍数＋1の文字列の変化を0.15秒遅らせる*/
}

/*共通*/
p.small {
    font-size: 100%;
}/*フォントサイズ小さく*/


/*説明文*/
.explain {
    text-align: center;
    font-size: 100%;
    margin-bottom: 30px;
}
.explain .btn_item_link a {
    background-color: #fff;
    color: #000;
    width: 90%;
    display: block;
    text-align: center;
    line-height: 30px;
    margin: 10px auto 30px;
    border: solid 1px #000;
    font-size: 14px;
    border-radius: 3px;
    padding: 8px 0;
}
.explain .btn_item_link a:hover {background:#000;color:#fff!important;}

@media only screen and (min-width: 750px) {
.explain {
    text-align: center;
    font-size: 100%;
	margin-bottom: 50px;
}
.explain .btn_item_link a {width: 80%;}
}



/*VIEW MOREボタン設定*/
.explain button { margin-bottom: 30px;border: solid 1px #999; padding: 6px 10px  3px;}
hr {margin-bottom: 30px;opacity: 0.5;}
.pagelink {display: block;text-align: center;color: #000!important;padding: 8px;margin: 5% 0;width: 100%;background-color: #fff;font-size: 120%;border: solid 1px #000;}
@media (max-width: 768px) {.pagelink {margin: 5% auto ;width: 95%;font-size: 100%;}}

/*価格*/
.price {text-align: center;font-size: 150%;padding: 0;margin: 0 0 30px;}
.price small {font-size: 50%;}



/*　202406オリジナル3型用　*/
.product .info {border: solid 5px #ccc; padding: 10px 0; width: 98%; margin: 0 auto;}
.product .info p {font-size: 120%;text-align: center;font-weight: bold;}
.product .info p.small {text-align: left;font-size: 100%;font-weight: normal;padding: 10px;border: solid 1px #666;margin: 10px;}
p.newtit {font-family: 'Roboto Condensed', 'Noto Sans JP', sans-serif;font-weight: bold;font-size: 300%;text-align: center;margin: 30px 0;}
p.cdtit {font-family: 'Roboto Condensed', 'Noto Sans JP', sans-serif; font-size: 180%; text-align: center; margin: 0;}
span.redbig {font-size: 130%; color: #cc0000;}

/*コーデnumber*/
.cdnum {
    font-family: "century-gothic", 'Noto Sans JP', sans-serif;
    font-weight: 700;
    font-style: normal;
    text-align: center;
    font-size: 200%;
    margin: 0 0 10px;
    padding: 0;
	background-color: #000;
    color: #ffff;
}


/*---------2025年3月新作用CSS----------*/

/* ふわっと画像設定 */
#photo {
    width: 100%;
    height: 100%;
    margin: 0 auto;
    text-align: left;
    overflow: hidden;
    position: relative;
    padding: 120% 0 0;
}

#photo img {
    top: 0;
    left: 0;
    position: absolute;
}


/*横スクロール設定*/
.marquee-right {
	overflow: hidden;
    /*max-width: 1216px;
    margin: 0 auto*/
}
.marquee-right ul {
	animation: marquee-right 10s linear infinite;
	display: flex;
	margin: 0;
	padding: 0;
	width: max-content;
}
.marquee-right ul li {
	list-style: none;
	padding: 0 5px;
	width: calc(100vw / 4 - 10px);
}
.scrollbox {
    background-color: #636363;
    padding: 5px 0 9%;
}
@media (max-width: 768px) {.marquee-right ul li {width: calc(100vw / 2 - 10px);}}/*スマホは2枚表示*/

.marquee-right img {
	display: block;
	width: 100%;
}
@keyframes marquee-right {
	from {
		transform: translateX(0%);
	}
	to {
		transform: translateX(-50%);
	}
}

/*==================================================
アイコンメニュー（PC/スマホ混合記載）
===================================*/
/*ページリンク*/
.pagelink {display: block;text-align: center;color: #000!important;border: solid 2px #000;padding: 8px 2px 5px;margin: 20px auto 50px;width: 40%;font-size: 150%;}
@media only screen and (min-width: 750px) {.pagelink {margin: 30px auto 100px; padding: 15px 0 13px;font-size: 180%;}}


/*SELECTORアイコン（スマホ用）*/
.scroll_item {
  /*overflow-x: scroll; 4つまでは解除*/
  -webkit-overflow-scrolling: touch;
  /*padding: 0 0 12px 8px;5つ目から採用*/
  padding: 0;/*4つまではこちらを採用*/
  display: -ms-flexbox;
  display: flex;
  justify-content: center;
  list-style-type: none;
  font-size: 10px;
  text-align: center;
  flex-wrap: wrap;
  width: 100%;
  margin: 0 auto;
}


@media screen and (min-width: 768px) {
.insta_link { 
    width: 50%;
    margin: 0 auto;
}}

.selector_box {
    border-top: dotted 1px #000;
    padding: 10px;
}

@media screen and (max-width: 768px) {
.scroll_item {flex-wrap: wrap;width: 95%;margin: 0 auto 50px;}}

.scroll_item img {
  /*border-radius: 42px;丸くトリミングするならコチラを採用*/
  /* height: 84px; */
  /* width: 84px; */
}

.scroll_item a{
	text-decoration: none;
}

.scroll_item .b_name{
	line-height: 1.4em;
	margin-top: 5px;
    font-size: 1.5rem;
}

/* 画面幅が768px以上の場合、横スクロールを解除 */
@media screen and (min-width: 768px) {
  .scroll_item {
    overflow-x: inherit;
    padding: 0 8px 6px; } }
@media screen and (max-width: 768px) {
.scroll_item > li {width: calc(100%/3)!important;padding-bottom: 10px!important;}}

.scroll_item > li {width: calc(100%/4);padding-bottom: 50px;}

@media screen and (min-width: 768px) {
  .scroll_item > li {
    min-width: inherit; } }

@media screen and (min-width: 768px) {
  .scroll_item > li:last-child {
    padding-right: 0; } }

.scroll_item img {
  vertical-align: bottom; }
  
/*-----アイコンメニューここまで-----*/

/*-----アイテムタイトルまわり-----*/
.productMark .colorMark__wrapper { justify-content: center;}
.productMark .mark_color { width: 15px;  height: 15px; margin: 0 5px;}
/*-----アイテムタイトルまわりここまで-----*/

/*-----コーデ配列-----*/
.occode a:hover{opacity:0.8;}
.fs-pt-column{margin:0;}
.modecd .fs-pt-column--3 {grid-template-columns: 1fr 1fr 1fr;}/*コラムスマホも3列に*/
.modecd .fs-pt-column--2 {grid-template-columns: 1fr 1fr;}/*コラムスマホも2列に*/
.modecd a.fs-pt-column__item {text-decoration: none!important;color: #666!important;line-height: 1.2em;text-align: left;}/*コラムのリンクテキスト共通設定*/
.hr01{border-top: 1px solid #000; margin-top: calc(80 / 750 * 100vw);}
#original_wrapper a.to-lp {margin: 50px auto;background-color: #000;color: #fff;}
#original_wrapper a.to-lp:hover {margin: 50px auto;background-color: #ffffff;color: #000000;}
@media only screen and (min-width: 750px) {.occode {padding:9px;}
.earlyspring2024 .fs-pt-column__heading {font-size:80%;}}/*コラムのリンクテキストPC設定*/
.item p.number {position: absolute;left: 15px;top: 0;font-size: 250%;color: #999;font-family: "fastpen", sans-serif;font-weight: 500;font-style: normal;margin: 0;}
@media only screen and (min-width: 750px) {.item p.number {font-size: 400%;}
.hr01{
   width: 100vw;
   margin: 0 calc(50% - 50vw);
   border-bottom: 1px solid #000;
   border-top: none;
   padding-top: 60px;
   }
#original_wrapper a.more {margin: 50px auto 0;width: 50%;}}
.explain button { margin-bottom: 30px;border: solid 1px #999; padding: 6px 10px  3px;}
.pagelink {display: block;text-align: center;color: #333;background-color: #ffffff;padding: 8px 2px 5px;margin: 30px auto 50px;width: 40%;text-decoration: none;border: solid 1px #333;}
@media only screen and (min-width: 750px) {.pagelink {margin: 30px auto 100;width: 40%;}}

/*画像上テキストリンク*/
.fs-pt-column__image{position:relative;}
.fs-pt-column__item ul {
    position: absolute;
    bottom: 0;
    left: 0;
    margin: 5px;
    padding: 5px;
    text-align: left;
    background-color: #ffffff8f;
}
.fs-pt-column__item li {list-style-type:none;}

@media only screen and (min-width: 750px) {
.fs-pt-column__item ul {
    bottom:15px;
    left:15px;
    margin:0;
    padding: 5px;
}
.fs-pt-column__item li {font-size: 110%;}
}


/*-----コーデ配列ここまで-----*/


/*-----おすすめ----*/
#original_wrapper h2.cd_tit {background:#000;color: #fff;font-weight: 400;font-size: 150%;padding: 5px 0;margin-bottom: 0;}
#original_wrapper .cd_box h4{font-weight:normal;font-size:100%;text-align: center;margin:5px 0;}
.cd_area {width:90%; margin:0 auto; }
.cd_box {
    display: flex;
    padding: 5px 5px 0;
    border: solid 1px #000;
    flex-wrap: wrap;
    justify-content: space-between;
	align-content:space-around;
}

.cd_item {
    width: calc(99% / 2);
    margin-bottom: 10px;
}

/*おすすめ商品価格*/
.cd_box .price {text-align: center;font-size: 100%;padding: 0;margin: 0;}


@media only screen and (min-width: 750px) {
#original_wrapper .cd_box h4{font-size:120%;}
.cd_area {width:80%; margin:0 auto; }
.cd_box .price {font-size: 110%;}
}

/*-----おすすめここまで----*/

/* 商品リンク 25 Must buy
-------------------------------------*/
/* アコーディオン */
#original_wrapper .accordion {
    margin: 100px auto 0;
    max-width: 670px;
}

#original_wrapper .accordion-box {
  border-radius: 12px;
  background: #fff;
  box-shadow: 0 1px 8px rgba(0,0,0,0.06);
  overflow: hidden; /* 角丸を下に伝播させる */
  margin-bottom: 20px;
}

#original_wrapper .accordion-btn {
  display: flex;
  align-items: center;
  justify-content: center;
  position: relative;
  width: 100%;
  background: #fff;
  color: #202020;
  border: none;
  border-radius: 12px 12px 0 0;
  padding: 20px 32px;
  font-size: 1rem;
  padding: 16px 20px;
  cursor: pointer;
  transition: background .2s;
  font-size: 2.4rem;
}

#original_wrapper .icon {
  position: absolute;
  right: 24px;
  top: 50%;
  transform: translateY(-50%);
  width: 24px;
  height: 24px;
  display: inline-block;
}
#original_wrapper .line1, #original_wrapper .line2 {
  display: block;
  position: absolute;
  left: 50%;
  top: 50%;
  width: 16px;
  height: 1px;
  background: #202020;
  border-radius: 1px;
  transition: transform 0.25s cubic-bezier(.4,2,.6,1.5);
}
#original_wrapper .line1 {
  transform: translate(-50%, -50%) rotate(0deg);
}
#original_wrapper .line2 {
  transform: translate(-50%, -50%) rotate(90deg);
}
#original_wrapper .icon.open .line1 {
  transform: translate(-50%, -50%) rotate(0deg);
}
#original_wrapper .icon.open .line2 {
  transform: translate(-50%, -50%) rotate(0deg);
}

#original_wrapper .accordion-panel {
  max-height: 0;
  overflow: hidden;
  transition: max-height 1s cubic-bezier(.4,2,.6,1.5);
  background: #fff;
  padding: 0 20px;
}

[aria-expanded="true"] + .accordion-panel,
.accordion-panel[style*="max-height"] {
  padding: 20px;
}

#original_wrapper .item-list {
  display: flex;
  gap: 12px;
  flex-wrap: wrap;
  margin-top: 16px;
}
#original_wrapper .item-card {
    background: #f7f7f7;
    border-radius: 10px;
    overflow: hidden;
    flex: 1 1 160px;
    max-width: 160px;
    text-align: center;
    box-shadow: 0 2px 6px rgba(0, 0, 0, 0.05);
    margin-bottom: 12px;
    display: block;
}
#original_wrapper .item-card img {
  width: 100%;
  aspect-ratio: 1/1;
  object-fit: cover;
}
#original_wrapper .item-info {
  padding: 8px 4px 12px;
}
#original_wrapper .item-name {
  font-size: 0.98rem;
  font-weight: 600;
  margin-bottom: 2px;
}
#original_wrapper .item-price {
  font-size: 0.93rem;
  color: #6d6651;
  margin-bottom: 8px;
}
#original_wrapper .buy-btn {
  padding: 6px 24px;
  border: none;
  border-radius: 2px;
  background: #262626;
  color: #fff;
  font-size: 0.95rem;
  font-weight: 700;
  letter-spacing: 0.06em;
  cursor: pointer;
  transition: background 0.2s;
}
#original_wrapper .buy-btn:hover {
  background: #414141;
}
@media (max-width: 768px) {
  #original_wrapper .accordion {
    margin: calc(90 / 750 * 100vw) auto 0;
    max-width: calc(670 / 750 * 100vw);
    }

    #original_wrapper .accordion-btn {
    font-size: calc(24 / 750 * 100vw);
    }

  #original_wrapper .item-list {
    flex-wrap: nowrap;
    overflow-x: auto;
  }
  #original_wrapper .item-card {
    min-width: 110px;
    max-width: 110px;
  }
}

/* ----------------------------------
    商品一覧ボタン
-------------------------------------*/
#original_wrapper .viewMore {
  text-align: center;
  position: relative;
  z-index: 2;
  margin-top: 120px;
}

#original_wrapper .viewMore a {
  position: relative;
  width: 480px;
  margin: 0 auto 0;
  padding: 15px;
  border-radius: 50px;
  color: #fff;
  display: block;
  font-size: 1.3rem;
  background: #020202;
}

#original_wrapper .icon_arrowSimple::after {
  content: '';
  position: absolute;
  background: url(https://heilis.itembox.design/item/img/common/arrow_simple_2.svg) no-repeat;
  width: 1rem;
  height: 1rem;
  top: 50%;
  right: 20px;
  transform: translateY(-50%) translateX(-50%);
  fill: currentColor;
}

@media screen and (max-width:768px){
    #original_wrapper .viewMore {
    margin-top: 80px;
    }
  #original_wrapper .viewMore a {
    width: 60%;
    padding: 13px;
    font-size: 1.1rem;
  }
}


/*-----アンカーリンク-----
.link::before {
    display: block;
    height: 15rem;
    margin-top: -15rem;
    content: "";
}
@media only screen and (min-width: 750px) {
.link::before {
    display: block;
    height: 15rem;
    margin-top: -15rem;
    content: "";
}}
-----アンカーリンクここまで-----*/