@charset "UTF-8";

*{
	font-family:"Helvetica Neue", "Helvetica", "Hiragino Sans", "Hiragino Kaku Gothic ProN", "Arial", "Yu Gothic", "Meiryo", sans-serif;
    font-weight: 500;
    font-size: 1.1rem;
	box-sizing:border-box;
	line-height: 1.5em;
}
html{scroll-behavior: smooth;}
body{
    margin: 0 auto;
    font-size: 0;
    line-height: 0;
    vertical-align: top;
background-color: #fafafa;
}

div{font-size:0;line-height: 0; vertical-align: top;}
h1 {
    width: 100%;
    font-size: 1.8rem;
    font-weight: 600;
    margin-top: -0.2rem;
	padding: 1rem 2rem;
	color: #fff;

	background-image: linear-gradient(to right, #fac276 0%, #f29a21 100%);
}
@media only screen and (max-width: 750px) {
h1 {font-size: 1.4rem;margin-top: -0.0rem; }
}

h2{ 
    width: auto;
    padding: 1rem 1rem;
    position: relative;
    overflow: hidden;
    z-index: 1;
    color: #fff;
    font-size: 1.2rem;
    line-height: 1.8rem;
}
h2::before{
    content: "";
    display: block;
    background:rgb(75, 77, 106);
	transform: skewX(-5deg);
    position: absolute;
    left: -12%;
    right: -12%;
    top: 0;
    bottom: 0;
    margin: 0;
    z-index: -1;
}

/* パソコンで見たときは"pc"のclassがついた画像が表示される */
.pc { display: block !important; width: 100%;}
.sp { display: none !important;  width: 100%;}
 
/* スマートフォンで見たときは"sp"のclassがついた画像が表示される */
@media only screen and (max-width: 750px) {
    .pc { display: none !important;  width: 100%;}
    .sp { display: block !important;  width: 100%;}
}


h4 { 
    width: auto;
    padding: 1rem 1rem;
    position: relative;
    overflow: hidden;
    z-index: 1;
    color: black;
    font-size: 1.2rem;
    line-height: 1.8rem;
    font-weight: bold; /* 太字に設定 */
}

h4::before {
    content: "";
    display: block;
    position: absolute;
    left: -12%;
    right: -12%;
    top: 0;
    bottom: 0;
    margin: 0;
    z-index: -1;
}


.content{width:100%;max-width: 1000px; font-size:0;line-height: 0;}
/* .t2_back div,.t3_back div{margin: 3rem 0;}  */

/* スマートフォン（最大幅768pxまで）用の設定 */

/* =========================
   ページトップボタン
========================= */

.gotop {
    position: fixed;
    bottom: 20px;
    right: 20px;
    z-index: 10000;

    display: block;
    width: 60px;
    height: 60px;
    box-sizing: border-box;

    /* 丸型＋ネイビーグラデーション */
    border-radius: 50%;
    background: linear-gradient(
        145deg,
        #52718a 0%,
        #28394b 60%,
        #192735 100%
    );

    border: 2px solid #fff;
    box-shadow: 0 3px 12px rgba(0, 0, 0, 0.3);

    padding-top: 32px;
    text-align: center;
    letter-spacing: 0;
    font-size: 12px;
    font-weight: bold;
    text-decoration: none;
    color: #fff;

    opacity: 0.95;
    transform: none;
    transition: all 0.3s ease;
}

/* 上向き矢印 */
.gotop::before {
    content: "";
    display: block;
    position: absolute;

    width: 12px;
    height: 12px;
    top: 15px;
    left: 0;
    right: 0;
    margin: auto;

    border-top: 2px solid #fff;
    border-right: 2px solid #fff;

    transform: rotate(-45deg);
}

/* ホバー */
.gotop:hover {
    opacity: 1;
    transform: scale(1.08);
    background: linear-gradient(
        145deg,
        #6386a0 0%,
        #344e65 100%
    );
}

/* スマートフォン */
@media screen and (max-width: 767px) {
    .gotop {
        width: 52px;
        height: 52px;
        right: 12px;
        bottom: 15px;
        padding-top: 28px;
        font-size: 11px;
    }

    .gotop::before {
        width: 10px;
        height: 10px;
        top: 12px;
    }
}

/*20220729*/

ol, ul {
    list-style: none;
}

/*20220801*/
* {
	list-style: none;
	box-sizing: border-box;
	margin: 0;
	padding: 0;
}
/* ここからカードレイアウトのスタイリング */
/* PC　2カラム */

/* タブレット　2カラム */

/* スマホ 1カラム*/


/* ここからt1のスタイリング */
.topContents-pc {
　width: 100%;
  max-width: 2000px;
  margin: 0 auto;
}

.box1 {
  position: relative; /* 中央寄せしたい要素の親タグにrelativeをつける */
  overflow: hidden;  /* はみ出した部分は表示しないようにする */
  height: 400px; /* 高さは固定値を入れる */
}

.box1 img {
  position: absolute;
  top:150px; /* トップを基準に中央配置 */
  left: 50%; /* 左を基準に中央配置 */
  width: 2000px;
  height:400px;

  /* ※1 */
  margin-top: -150px;
  margin-left: -1000px;
}

.white{
    background-color: white;
}

/* スマホ用*/

.bk {
    color: #151515;
    font-weight: bold; /* 太字に設定 */
    line-height: 1.5; /* 行間を狭く設定 */
}

@media screen and (max-width: 768px) {
    .bk {
        font-size: 0.6rem; /* モバイル時に文字サイズを小さく設定（例: 60%） */
        line-height: 1.4; /* モバイル時の行間をさらに狭く設定 */
    }
}

.content{width:100%;max-width: 100%; font-size:0;line-height: 0;}
/* .t2_back div,.t3_back div{margin: 3rem 0;}  */

/* 動画下のテキスト部分のスタイルシート */

.narrow-line-height {
        line-height: 1.5; /* 行間を調整 */
    color: red;
    font-weight: bold; /* 太字に設定 */
    }


/* アコーディオンメニュー */

.accordion-001 {
    max-width: 1000px;
    background-color: #fafafa;
}

.accordion-001:not([open]) {
    margin-bottom: 7px;
}

.accordion-001 summary {
    display: flex;
    justify-content: center; /* 中央に配置 */
    align-items: center;
    position: relative;
    padding: 1em 2em;
    border-radius: 25px;
    background-color: #ad9d71;
    color: #fff;
    font-weight: 600;
    cursor: pointer;
    text-align: center; /* テキストを中央揃えに設定 */
}

.accordion-001 summary::-webkit-details-marker {
    display: none;
}

.accordion-001 summary::after {
    transform: translateY(-25%) rotate(45deg);
    width: 7px;
    height: 7px;
    margin-left: 10px;
    border-bottom: 3px solid #fff;
    border-right: 3px solid #fff;
    content: "";
    transition: transform .3s;
}

.accordion-001[open] summary::after {
    transform: rotate(225deg);
}

.accordion-001 .accordion-body {
    transform: translateY(-10px);
    opacity: 0;
    margin: 0;
    padding: 1em 2em 2em 2em;
    color: #333333;
    transition: transform .5s, opacity .5s;
}

.accordion-001[open] .accordion-body {
    transform: none;
    opacity: 1;
}


/* モバイル用のスタイル */
@media screen and (max-width: 768px) {
    .accordion-001 summary {
        padding: 0.4em 0.2em; /* バナー部分のパディングを調整 */
        font-size: 1.1rem; /* フォントサイズを調整 */
    width: 50%; /* バナー部分幅を100%に設定 */
    }

    .accordion-001 .accordion-body {
        padding: 0.8em 1em; /* コンテンツ部分のパディングを調整 */
    }
}


.hover-img {
    transition: opacity 0.3s ease; /* トランジション効果 */
}

.hover-img:hover {
    opacity: 0.5; /* 半透明にする */
}

/* YOUTUBEのスタイル */

/* YOUTUBE画像のスタイル */

.image-container {
    position: relative;
    height: auto; /* 高さを自動調整 */
    overflow: hidden; /* 溢れた部分を隠す */
}

.image-container img {
    display: block; /* 下に余白ができないようにする */
}

/* PC向けスタイル */
@media (min-width: 768px) {
    .image-container {
        width: 600px; /* PCの場合の指定サイズ */
        margin: 0 auto; /* 中央揃え */
    }

    .image-container img {
        width: auto; /* サイズ指定に合わせる */
        height: auto; /* 高さの自動調整 */
    }
}

/* スマホ向けスタイル */
@media (max-width: 767px) {
    .image-container {
        width: 100%; /* スマホの場合の横幅100% */
    }

    .image-container img {
        width: 100%; /* 幅をコンテナに合わせる */
        height: auto; /* 高さを自動に設定 */
    }
}

.winter-title {
  text-align: center;
  padding: 24px 15px;
  background: #28394b;
  color: #fff;
}

.winter-title span {
  display: block;
  line-height: 1.5;
}

.winter-title-sub {
  font-size: 1rem;
  font-weight: 500;
}

.winter-title-main {
  font-size: 1.8rem;
  font-weight: 700;
  margin: 8px 0;
}

.winter-title-year {
  font-size: 1.3rem;
  font-weight: 600;
  letter-spacing: 0.12em;
}

@media screen and (max-width: 750px) {
  .winter-title-main {
    font-size: 1.4rem;
  }

  .winter-title-sub {
    font-size: 0.85rem;
  }

  .winter-title-year {
    font-size: 1.1rem;
  }
}


/* 冬物LP アンカーナビ */

/* ボタン内の文字・アイコン */


/* マウスを乗せたとき・クリックしたとき */


/* 既存の装飾アニメーションを無効化 */

/* =========================
   冬物LP アンカーナビ
========================= */

/* 2列表示 */


/* GEN-125だけ横幅いっぱい */


/* カード本体 */


/* サブテキスト */


/* 商品名 */


/* 下矢印 */


/* ホバー・クリック時 */


/* 反転時は文字・矢印も白 */


/* 既存アニメーション無効化 */

/* 下向き矢印：文字を使わずCSSで描画 */


/* ホバー・フォーカス時 */

/* =========================
   アンカーナビ スマホ表示
========================= */

/* アンカーナビ 上部テキストのサイズ調整 */

/* =========================
   冬物LP スマホ文字サイズ調整
========================= */

@media screen and (max-width: 599px) {

  /* 本文テキスト */
  .bk {
    font-size: 0.8rem;
    line-height: 1.8;
    padding: 0 15px;
  }

  /* 動画紹介の見出し */
  h4 {
    font-size: 1.15rem;
    line-height: 1.7;
    padding: 15px;
  }

}


/* PC用の改行 */
.pc-br {
  display: inline;
}

/* スマホではPC用の改行を無効化 */
@media screen and (max-width: 599px) {
  .pc-br {
    display: none;
  }
}

/* ==========================================
   フッター｜公式ストアへの導線
========================================== */

.lp-footer-cta {
  width: 100%;
  padding: 60px 20px 35px;
  box-sizing: border-box;
  text-align: center;

  /* 冬仕様の背景画像 */
  background-image: url("../image/youtube-fotter.png");
  background-position: center center;
  background-repeat: no-repeat;
  background-size: cover;
}

.lp-footer-cta-link {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 18px;

  max-width: 900px;
  margin: 0 auto;

  text-decoration: none;
}

.lp-footer-cta-logo {
  display: block;
  width: 100%;
  max-width: 900px;
  height: auto;
}

.lp-footer-cta-link p {
  margin: 0;
  color: #ffffff;
  font-size: 16px;
  font-weight: bold;
  line-height: 1.6;
  text-shadow: 0 1px 5px rgba(0, 0, 0, 0.6);
}

.lp-footer-cta-link:hover {
  opacity: 0.9;
}


/* ==========================================
   著作権に関する注意書き
========================================== */

.lp-footer-notice {
  padding: 35px 20px;
  background: #ffffff;
  text-align: center;
}

.lp-footer-notice p {
  max-width: 1100px;
  margin: 0 auto;
  color: #222222;
  font-size: 13px;
  line-height: 1.8;
  font-weight: 500;
}


/* ==========================================
   コピーライト
========================================== */

.lp-footer-copyright {
  padding: 18px 20px;
  background: #222222;
  text-align: center;
}

.lp-footer-copyright p {
  margin: 0;
  color: #ffffff;
  font-size: 12px;
  line-height: 1.6;
}


/* ==========================================
   スマートフォン対応
========================================== */

@media screen and (max-width: 767px) {

  .lp-footer-cta {
    padding: 40px 15px 30px;
    background-position: center center;
  }

  .lp-footer-cta-link {
    gap: 15px;
  }

  .lp-footer-cta-logo {
    width: 100%;
  }

  .lp-footer-cta-link p {
    font-size: 14px;
  }

  .lp-footer-notice {
    padding: 25px 18px;
  }

  .lp-footer-notice p {
    font-size: 11px;
    line-height: 1.8;
  }

  .lp-footer-copyright {
    padding: 15px;
  }

  .lp-footer-copyright p {
    font-size: 10px;
  }
}


/* ==========================================
   WINTER LP / TOP MENU
   6分割・GEN-125 特別仕様
========================================== */

.winter-menu {
  width: 100%;
  box-sizing: border-box;
  padding: 12px;
  background: #f8f8f8;
}

.winter-menu-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 10px;
}

/* 通常カード */
.winter-menu-card {
  min-width: 0;
  min-height: 120px;
  box-sizing: border-box;

  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: 9px;

  padding: 16px 8px;

  background: #ffffff;
  border: 1px solid #cfcfcf;
  border-radius: 6px;

  text-align: center;
  text-decoration: none;
  transition: background-color 0.2s, border-color 0.2s;
}

/* 上段キャッチ */
.winter-menu-copy {
  color: #a16f40;
  font-size: 14px;
  font-weight: 600;
  line-height: 1.4;
}

/* 商品名 */
.winter-menu-name {
  color: #26394e;
  font-size: 20px;
  font-weight: 700;
  line-height: 1.4;
}

/* 下向き矢印 */
.winter-menu-arrow {
  display: block;
  width: 9px;
  height: 9px;
  margin-top: 2px;

  border-right: 1px solid #a16f40;
  border-bottom: 1px solid #a16f40;
  transform: rotate(45deg);
}

/* ==========================================
   GEN-125 SPECIAL
========================================== */

.winter-menu-card--special {
  background: #e5eaf0;
  border-color: #73869b;
}

/* SPECIALラベル */
.winter-menu-special-label {
  display: inline-block;
  padding: 5px 10px;
  background: #28394b;
  border-radius: 3px;

  color: #ffffff;
  font-size: 10px;
  font-weight: 700;
  line-height: 1.2;
  letter-spacing: 0.05em;
}

/* ホバー */
.winter-menu-card:hover {
  background: #f2f4f6;
  border-color: #73869b;
}

.winter-menu-card--special:hover {
  background: #d9e1e9;
}

/* ==========================================
   SP
========================================== */

@media screen and (max-width: 600px) {

  .winter-menu {
    padding: 8px;
  }

  .winter-menu-grid {
    gap: 8px;
  }

  .winter-menu-card {
    min-height: 108px;
    padding: 12px 5px;
    gap: 7px;
  }

  .winter-menu-copy {
    font-size: 11px;
  }

  .winter-menu-name {
    font-size: clamp(13px, 3.5vw, 17px);
    line-height: 1.35;
    overflow-wrap: anywhere;
  }

  .winter-menu-special-label {
    font-size: 9px;
    padding: 4px 6px;
    letter-spacing: 0;
  }

  .winter-menu-arrow {
    width: 7px;
    height: 7px;
  }

}

/* 最後のアコーディオンとフッターの間に余白 */
.lp-footer-cta {
  margin-top: 60px;
}

@media screen and (max-width: 767px) {
  .lp-footer-cta {
    margin-top: 40px;
  }
}



/* ヘッダーとメインビジュアルの隙間を解消 */
.white {
  margin-bottom: 0;
}

.topContents-pc {
  margin-top: 0;
}

.topContents-pc img {
  display: block;
}

/* ヘッダー画像下の余白対策 */
.white img {
  display: block;
  vertical-align: bottom;
}


/* メインバナー直下の導入文 */
.winter-intro {
  margin: 0;
  padding: 30px 15px;
  text-align: center;
  line-height: 1.8;
}

/* スマートフォン */
@media screen and (max-width: 767px) {
  .winter-intro {
    padding: 24px 15px;
  }
}



/* 動画紹介文の余白調整 */
.winter-video-intro {
  padding: 35px 15px 20px;
  text-align: center;
}

.winter-video-intro h4 {
  margin: 0 0 20px;
}

.winter-video-intro .bk {
  margin: 0 0 18px;
  line-height: 1.8;
}

.winter-video-intro .bk:last-child {
  margin-bottom: 0;
}

/* スマートフォン */
@media screen and (max-width: 767px) {
  .winter-video-intro {
    padding: 25px 15px 15px;
  }

  .winter-video-intro h4 {
    margin-bottom: 16px;
  }

  .winter-video-intro .bk {
    margin-bottom: 14px;
  }
}


/* げんチャんねる紹介画像の余白 */
.winter-channel-img {
  display: block;
  margin: 50px auto 0;
  height: auto;
}

/* スマートフォン */
@media screen and (max-width: 767px) {
  .winter-channel-img {
    margin-top: 30px;
  }
}


/* YouTube動画と商品紹介セクションの間 */
.image-container {
  margin-bottom: 60px;
}

/* スマートフォン */
@media screen and (max-width: 767px) {
  .image-container {
    margin-bottom: 35px;
  }
}


/* スマホ：詳細はこちらボタンを横幅80％に */
@media screen and (max-width: 767px) {
  .accordion-001 summary {
    width: 80%;
    margin: 0 auto;
  }
}



/* ==========================================
   各商品セクション間の余白
   アコーディオン開閉どちらにも対応
========================================== */

/* 閉じているとき */
.accordion-001:not([open]) {
  margin-bottom: 60px;
}

/* 開いているとき */
.accordion-001[open] {
  margin-bottom: 60px;
}

/* スマートフォン */
@media screen and (max-width: 767px) {
  .accordion-001:not([open]),
  .accordion-001[open] {
    margin-bottom: 35px;
  }
}


/* のびボア：購入画像と価格画像を隙間なく接続 */
.nobiboa-image-link {
  display: block;
  line-height: 0;
}

.nobiboa-image-link img,
.nobiboa-price-img {
  display: block;
  width: 100%;
  height: auto;
  margin: 0;
  padding: 0;
}



/* のびボア商品画像：画像間の隙間を解消 */
.nobiboa-products {
  width: 100%;
  font-size: 0;
  line-height: 0;
}

.nobiboa-products table {
  width: 100%;
  border-collapse: collapse;
  border-spacing: 0;
  margin: 0;
}

.nobiboa-products td {
  padding: 0;
  line-height: 0;
  vertical-align: top;
}

.nobiboa-products a,
.nobiboa-products img {
  display: block;
  margin: 0;
  padding: 0;
}

.nobiboa-products img {
  width: 100%;
  height: auto;
}

