* {
  margin: 0;
  padding: 0;
}

ul,
li {
  list-style-type: none;
  margin: 0;
  padding: 0;
}

/*snsBtn
-----------------------------------------------------*/
#sns_button {
  width: 90%;
  max-width: 636px;
  height: 25px;
  margin: 20px auto 10px;
  overflow: hidden;
  _zoom: 1;
}
#sns_button li {
  margin-right: 10px;
  float: right;
}

/*--- clearfix ---*/
.cf:after,
#wrap ul.tab:after {
  content: "";
  display: block;
  clear: both;
}

#wrap *,
#wrap *:before,
#wrap *:after {
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  -o-box-sizing: border-box;
  -ms-box-sizing: border-box;
  box-sizing: border-box;
}

#wrap {
  width: 100%;
  overflow: hidden;
  font-family: "Noto Sans Japanese", "Hiragino Kaku Gothic Std",
    "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", メイリオ, Meiryo, Osaka,
    "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
  line-height: 1.7;
  letter-spacing: 0.6px;
  color: #fff;
  background: linear-gradient(-50deg, #345464, #2a4756, #103144);
}

.wrap_deco {
  margin: 0 calc(50% - 50cqw);
  width: 100cqw;
  background-image: url(https://cdn.lumine.jp/contents/design/2025/fashion_reporreport_251211/img/bg_kira4.png);
  background-repeat: repeat-y;
  background-position: center center;
  background-size: contain;
  padding: 3% 0 3%;
}

#wrap a {
  text-decoration: none;
  display: block;
}

#wrap img {
  width: 100%;
  height: auto;
}

.mincho {
  font-family: "游明朝", YuMincho, "Hiragino Mincho ProN W3", "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif;
}

.gold {
  color: #d2b577;
}

h1 {
  font-size: 2.8cqw;
  padding: 0 0 0.5% 2.5%;
  margin-bottom: 4%;
  margin: 0 2.5% 4.3% 0;
  border-bottom: 1px solid #fff;
  font-weight: 400;
  text-align: left;
  opacity: 0.8;
}

.h2_1 {
  font-size: 7cqw;
  text-align: center;
  font-weight: bold;
}

.h2_2_wrap {
  text-align: center;
  margin-bottom: 3%;
}

.h2_2 {
  position: relative;
  font-size: 4.8cqw;
  text-align: center;
  font-weight: bold;
  display: inline;
}

.h2_2::before {
  content: '';
  position: absolute;
  display: inline-block;
  background-image: url(https://cdn.lumine.jp/contents/design/2025/fashion_reporreport_251211/img/kira1.png);
  width: 6cqw;
  height: 6cqw;
  background-size: contain;
  vertical-align: sub;
  background-repeat: no-repeat;
  top: 0.5cqw;
  bottom: 0;
  left: -7.5cqw;
  margin: auto;
}

.h2_2::after {
  content: '';
  position: absolute;
  display: inline-block;
  background-image: url(https://cdn.lumine.jp/contents/design/2025/fashion_reporreport_251211/img/kira1.png);
  width: 6cqw;
  height: 6cqw;
  background-size: contain;
  vertical-align: sub;
  background-repeat: no-repeat;
  top: 0.5cqw;
  bottom: 0;
  right: -7.5cqw;
  margin: auto;
}


/* .lead_area */
.lead_area {
  width: 87%;
  margin: 6% auto 0;
  background-color: rgba(255, 255, 255, 0.2);
  border-radius: 5px;
  padding: 3.5% 2%;
}

.lead_tx {
  font-size: 3.6cqw;
  font-weight: bold;
  text-align: center;
  line-height: 1.85em;
}


/* .myself */
.myself_area1 {
  padding: 10% 0 0;
}

.myself_ul {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  width: 82%;
  margin: 4% auto 0;
}

.myself_ul li {
  width: 45%;
  margin-bottom: 4.5%;
}

.category_ttl {
  font-size: 3.5cqw;
  font-weight: 600;
  text-align: center;
  margin-top: 3%;
  color: #fff;
}

.sankaku_gd {
  width: 11%;
  margin: 1% auto 0;
}


/* .gift */
.gift_area1 {
  padding: 4% 0 0;
}

.gift_ul {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  width: 90%;
  margin: 4% auto 0;
}

.gift_ul li {
  width: 48%;
}

.gift_ul li p {
  padding-bottom: 1.5%;
}

.gift_ul li a {
  background-color: #c09f5c;
  font-weight: bold;
  text-align: center;
  padding: 4% 0 2.1%;
  font-size: 4cqw;
  border-radius: 3px;
  line-height: 1.6em;
  color: #fff;
}

.sankaku_wh {
  width: 10.4%;
  margin: 2.8% auto 0;
}


/* .myself_area2 */
.myself_area2 {
  padding: 12.3% 0 0;
}

.myself_category {
  width: 94%;
  margin: 0 auto 3.7%;
  background-color: rgba(255, 255, 255, 0.2);
  border-radius: 5px;
  padding: 3% 0 4.3%;
}

.h2_3 {
  font-size: 8.5cqw;
  text-align: center;
  font-weight: bold;
  line-height: 1.7em;
}

.h2_sub_wrap {
  text-align: center;
}

.h2_sub {
  background-color: #fff;
  padding: 0.5% 2.4% 0.3%;
  font-size: 3.6cqw;
  font-weight: 600;
  text-align: center;
  color: #2a4756;
  border-radius: 2px;
  display: inline-block;
  margin-bottom: 1.2%;
}

.myself_category_lead {
  font-size: 3.6cqw;
  font-weight: bold;
  text-align: center;
  line-height: 1.85em;
  padding: 4.6% 0 6.2%;
}

.h3_1 {
  font-size: 6.5cqw;
  text-align: center;
  font-weight: bold;
  line-height: 1.5em;
}

.myself_category_popular {
  display: flex;
  flex-wrap: nowrap;
  justify-content: space-between;
  margin: 3% auto 0;
  width: 96%;
}

.myself_category_popular li {
  width: 32.2%;
}


/*スライダー//////////////////////////////////////////////////*/
#wrap .sliderBox_2 {
  width: 100%;
}

#wrap .sliderBox_2 .contents {
  overflow-x: scroll;
  overflow-y: hidden;
  margin: 0 0 4.5% 2.5%;
}

#wrap .sliderBox_2 #itemSlide {
  width: fit-content;
  display: inline-grid;
  /* grid-template-rows: repeat(2, auto); */
  grid-auto-flow: column;
  overflow: hidden;
  margin-bottom: 5%;
  position: relative;
}

#wrap .sliderBox_2 #itemSlide li {
  width: 195px;
  margin: 0 10px 0 0;
  padding: 4%;
  background-color: #fff;
  border-radius: 3px;
}

#wrap .sliderBox_2 a {
  text-decoration: none;
}

.detail p {
  font-size: 3cqw;
  font-weight: 400;
  line-height: 1.55em;
  padding-top: 3%;
  color: #2a4756;
}

.slider_tl {
  font-size: 3.5cqw;
  font-weight: 400;
  line-height: 1.55em;
  padding-bottom: 2.5%;
  margin-top: 7%;
}


/* .gift_area2 */
.gift_area2 {
  padding: 5.2% 0 0;
}

.gift_category {
  width: 94%;
  margin: 0 auto 3.7%;
  background-color: rgba(255, 255, 255, 0.2);
  border-radius: 5px;
  padding: 3% 0 2%;
}

.gift_category_ul {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  width: 92%;
  margin: 2% auto 0;
}

.gift_category_ul li {
  width: 31.2%;
  margin-bottom: 4%;
}

.category_ttl2 {
  font-size: 3.4cqw;
  font-weight: 600;
  text-align: center;
  margin-top: 4.5%;
  color: #fff;
  line-height: 1.4em;
}

.h3_2 {
  font-size: 7.5cqw;
  text-align: center;
  font-weight: bold;
  line-height: 1.6em;
}

.gift_budget_ul,.gift_news_ul {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  width: 90%;
  margin: 4% auto 0;
}

.gift_budget_ul li,.gift_news_ul li {
  width: 48%;
  margin-bottom: 4%;
}

.gift_budget_ul li img {
  border-radius: 3px;
}

.gift_news_ul li p {
  font-size: 3cqw;
  font-weight: 400;
  line-height: 1.55em;
  padding-top: 3%;
  color: #fff;
}


/* 雪 */
.snow {
  /*雪の色*/
  color: snow;
  /*雪の大きさ*/
  font-size: 7px;
  /*初期位置*/
  position: fixed;
  top: -5%;
  /*雪を適当な幅で降らせる*/
  text-shadow:
  5vw   -100px 2px,
  10vw  -400px 3px,
  20vw  -500px 4px,
  30vw  -580px 1px,
  39vw  -250px 2px,
  42vw  -340px 5px,
  56vw  -150px 2px,
  63vw  -180px 0,
  78vw  -220px 4px,
  86vw  -320px 9px,
  94vw  -170px 7px;
  /*雪アニメーション1*/
  animation: roll 5s linear infinite;
}
  /*2つめの雪アニメーション*/
.snow2nd{animation: anim 8s linear infinite;}

@keyframes roll {
    0% {transform:rotate(0deg);}
   90% {opacity:1;}
   100% {transform:rotate(20deg);top:100%;opacity:0;}
}
@keyframes anim {
  100% {color:transparent;top:150%;}
}


/* 移行区分E：mobile_firstテンプレートのstyle */
.mobile_first_to_page_top {
  display: block;
}