﻿html,body,div,span,object,iframe,h1,h2,h3,h4,h5,h6,p,blockquote,pre,abbr,address,cite,code,del,dfn,em,img,ins,kbd,q,samp,small,strong,sub,sup,var,b,i,dl,dt,dd,ol,ul,li,fieldset,form,label,legend,caption,article,aside,canvas,details,figcaption,figure,footer,header,hgroup,menu,nav,section,summary,time,mark,audio,video
{
  margin:0;
  padding:0;
  border:0;
  outline:0;
  font-size:100%;
  vertical-align:baseline;
  background:rgba(0,0,0,0)
}
body
{
  line-height:1.4;
  letter-spacing:.02em;
  font-family:"Hiragino Kaku Gothic ProN","Hiragino Sans",Meiryo,sans-serif
}
body *
{
  -webkit-box-sizing:border-box;
  box-sizing:border-box
}
article,aside,details,figcaption,figure,footer,header,hgroup,menu,nav,section
{
  display:block
}
ul
{
  list-style:none
}
blockquote,q
{
  quotes:none
}
blockquote:before,blockquote:after,q:before,q:after
{
  content:"";
  content:none
}
a
{
  margin:0;
  padding:0;
  font-size:100%;
  vertical-align:baseline;
  background:rgba(0,0,0,0)
}
ins
{
  background-color:#ff9;
  color:#000;
  text-decoration:none
}
mark
{
  background-color:#ff9;
  color:#000;
  font-style:italic;
  font-weight:bold
}
del
{
  text-decoration:line-through
}
abbr[title],dfn[title]
{
  border-bottom:1px dotted;
  cursor:help
}
hr
{
  display:block;
  height:1px;
  border:0;
  border-top:1px solid #ccc;
  margin:1em 0;
  padding:0
}
input,select
{
  vertical-align:middle
}
main
{
  display:block
}
ol,li
{
  list-style-type:none
}
body
{
  color:#333;
  font-family:"Noto Sans JP","ヒラギノ角ゴ Pro W3","Hiragino Kaku Gothic Pro","メイリオ",Meiryo,"ＭＳ Ｐゴシック",sans-serif
}
img
{
  width:100%;
  height:auto;
  vertical-align:bottom
}
.cv-btn
{
  text-decoration:none
}
@media screen and (min-width: 751px)
{
  .cv-btn
  {
    -webkit-transition:-webkit-filter .2s ease-in-out;
    transition:-webkit-filter .2s ease-in-out;
    transition:filter .2s ease-in-out;
    transition:filter .2s ease-in-out,-webkit-filter .2s ease-in-out
  }
}
.cv-btn:hover
{
  text-decoration:none
}
@media screen and (min-width: 751px)
{
  .cv-btn:hover
  {
    -webkit-filter:brightness(115%);
    filter:brightness(115%);
    -webkit-transition:-webkit-filter .2s ease-in-out;
    transition:-webkit-filter .2s ease-in-out;
    transition:filter .2s ease-in-out;
    transition:filter .2s ease-in-out,-webkit-filter .2s ease-in-out
  }
}
.block
{
  display:block
}
@media screen and (min-width: 751px)
{
  .hidden-pc
  {
    display:none
  }
}
@media screen and (max-width: 750px)
{
  .hidden-sp
  {
    display:none
  }
}
.wrapper
{
  max-width:750px;
  margin:0 auto;
  overflow:hidden
}
.notosans-jp-regular
{
  font-family:"Noto Sans JP",sans-serif;
  font-weight:400;
  font-style:normal
}
.notosans-jp-midium
{
  font-family:"Noto Sans JP",sans-serif;
  font-weight:500;
  font-style:normal
}
.notosans-jp-bold
{
  font-family:"Noto Sans JP",sans-serif;
  font-weight:bold;
  font-style:normal
}
.notoserif-jp-medium
{
  font-family:"Noto Serif JP",serif;
  font-weight:500;
  font-style:normal
}
.notoserif-jp-semibold
{
  font-family:"Noto Serif JP",serif;
  font-weight:600;
  font-style:normal
}
.notoserif-jp-bold
{
  font-family:"Noto Serif JP",serif;
  font-weight:700;
  font-style:normal
}
.sec04 .accordion
{
  position:relative
}
.sec04 .accordion_one .accordion_inner
{
  display:none
}
.sec04 .btn_close
{
  display:none
}
.sec04 .open
{
  display:block
}
.sec04 .close
{
  display:none
}
.sec04 .accordion_header
{
  position:absolute;
  top:5vw;
  width:8%
}
@media screen and (min-width: 751px)
{
  .sec04 .accordion_header
  {
    top:50px
  }
}
.sec04 .accordion_header.shiro
{
  left:6%
}
.sec04 .accordion_header.aka
{
  right:6%
}
.sec05_inner
{
  padding-bottom:8.8vw
}
@media screen and (min-width: 751px)
{
  .sec05_inner
  {
    padding-bottom:66px
  }
}
.sec05_caution
{
  width:92vw;
  font-size:2.66667vw;
  line-height:1.6;
  margin:2.4vw auto 0
}
@media screen and (min-width: 751px)
{
  .sec05_caution
  {
    width:690px;
    font-size:20px;
    margin-top:18px
  }
}
.sec11
{
  position:relative
}
.sec11_inner
{
  width:100%;
  position:absolute;
  top:27.5%;
  left:50%;
  -webkit-transform:translateX(-50%);
  transform:translateX(-50%)
}
.sec11_inner .video
{
  position:relative;
  height:0;
  padding:0 0 56.25%;
  overflow:hidden
}
.sec11_inner .video iframe
{
  position:absolute;
  top:0;
  left:0;
  width:100%;
  height:100%
}
.sec17 .accordion
{
  width:80%;
  background:#f3f0e9;
  margin:0 auto 14%
}
.sec17 .accordion_header
{
  position:relative
}
.sec17 .accordion_one
{
  padding-top:2%;
  padding-bottom:2%;
  border-top:2px solid #fff
}
.sec17 .accordion_one+.accordion_one
{
  border-top:3px solid #fff
}
.sec17 .accordion_one .accordion_inner
{
  display:none
}
.sec17 .btn_close
{
  display:none
}
.sec17 .open
{
  display:block
}
.sec17 .close
{
  display:none
}
.sec17 .accordion_container
{
  position:absolute;
  top:50%;
  right:4%;
  -webkit-transform:translateY(-50%);
  transform:translateY(-50%);
  width:10%
}
.footer
{
  position:relative
}
.footer_inner
{
  width:100%;
  position:absolute;
  top:8%;
  left:50%;
  -webkit-transform:translateX(-50%);
  transform:translateX(-50%)
}
.content+.content
{
  padding-top:8vw
}
@media screen and (min-width: 751px)
{
  .content+.content
  {
    padding-top:60px
  }
}
.content_wrap
{
  padding-top:6.26667vw
}
@media screen and (min-width: 751px)
{
  .content_wrap
  {
    padding-top:47px
  }
}
.content_inner
{
  width:100%;
  position:relative
}
.content_box
{
  width:100%;
  height:11.73333vw;
  position:absolute;
  top:-5.86667vw;
  left:0
}
@media screen and (min-width: 751px)
{
  .content_box
  {
    height:88px;
    top:-44px
  }
}
.content_box--adjust
{
  display:-webkit-box;
  display:-ms-flexbox;
  display:flex;
  -webkit-box-align:center;
  -ms-flex-align:center;
  align-items:center
}
.content_box__catch
{
  width:41.46667vw;
  height:11.73333vw;
  background-image:url(../img/catch_black.png);
  background-repeat:no-repeat;
  background-size:contain;
  color:#fff;
  font-size:5.33333vw;
  display:-webkit-box;
  display:-ms-flexbox;
  display:flex;
  -webkit-box-align:center;
  -ms-flex-align:center;
  align-items:center;
  -webkit-box-pack:center;
  -ms-flex-pack:center;
  justify-content:center
}
@media screen and (min-width: 751px)
{
  .content_box__catch
  {
    width:311px;
    height:88px;
    font-size:40px
  }
}
.content_box__catch span
{
  margin-left:-1.33333vw
}
@media screen and (min-width: 751px)
{
  .content_box__catch span
  {
    margin-left:-10px
  }
}
.content_box__title
{
  font-size:6.4vw;
  margin-left:2.66667vw;
  line-height:1.1
}
@media screen and (min-width: 751px)
{
  .content_box__title
  {
    font-size:48px;
    margin-left:20px
  }
}
.content_box__title--green
{
  color:#bed67b
}
.content_box__title--purple
{
  color:#982e5c
}
.content_box__title--large
{
  font-size:8vw
}
@media screen and (min-width: 751px)
{
  .content_box__title--large
  {
    font-size:60px
  }
}
.content_body
{
  width:92vw;
  padding-top:12.66667vw;
  padding-bottom:6.26667vw;
  margin:0 auto;
  background:#fff
}
@media screen and (min-width: 751px)
{
  .content_body
  {
    width:690px;
    padding-top:95px;
    padding-bottom:47px
  }
}
.content_body02
{
  width:92vw;
  padding:14.66667vw 4vw 8vw;
  margin:0 auto;
  -webkit-box-sizing:border-box;
  box-sizing:border-box;
  background:#fff
}
@media screen and (min-width: 751px)
{
  .content_body02
  {
    width:690px;
    padding:110px 30px 60px
  }
}
.content_body02--adjust
{
  padding-top:8vw;
  border-top:1px solid #333
}
@media screen and (min-width: 751px)
{
  .content_body02--adjust
  {
    padding-top:60px
  }
}
.content_unit
{
  width:100%;
  padding-right:6.66667vw;
  padding-left:2.26667vw;
  margin-bottom:3.46667vw;
  -webkit-box-sizing:border-box;
  box-sizing:border-box;
  display:-webkit-box;
  display:-ms-flexbox;
  display:flex;
  -webkit-box-pack:justify;
  -ms-flex-pack:justify;
  justify-content:space-between
}
@media screen and (min-width: 751px)
{
  .content_unit
  {
    padding-right:50px;
    padding-left:17px;
    margin-bottom:26px
  }
}
.content_unit02
{
  width:100%;
  display:-webkit-box;
  display:-ms-flexbox;
  display:flex;
  -webkit-box-pack:justify;
  -ms-flex-pack:justify;
  justify-content:space-between;
  -webkit-box-align:center;
  -ms-flex-align:center;
  align-items:center
}
.content_group
{
  width:37.33333vw
}
@media screen and (min-width: 751px)
{
  .content_group
  {
    width:280px
  }
}
.content_group__img
{
  width:100%
}
.content_group__text
{
  font-size:3.8vw;
  margin-top:4.26667vw;
  text-align:justify;
  line-height:1.6
}
@media screen and (min-width: 751px)
{
  .content_group__text
  {
    font-size:27px;
    margin-top:32px
  }
}
.content_group02
{
  width:50.13333vw
}
@media screen and (min-width: 751px)
{
  .content_group02
  {
    width:376px
  }
}
.content_group02__img
{
  width:100%;
  position:relative
}
.content_group02__caption
{
  width:100%;
  font-size:3.73333vw;
  position:absolute;
  bottom:0;
  left:0;
  text-align:center;
  color:#fff
}
@media screen and (min-width: 751px)
{
  .content_group02__caption
  {
    font-size:28px
  }
}
.content_visual
{
  width:38.93333vw
}
@media screen and (min-width: 751px)
{
  .content_visual
  {
    width:292px
  }
}
.content_visual--adjust
{
  width:44.4vw
}
@media screen and (min-width: 751px)
{
  .content_visual--adjust
  {
    width:333px
  }
}
.content_visual02
{
  width:33.86667vw
}
@media screen and (min-width: 751px)
{
  .content_visual02
  {
    width:254px
  }
}
.content_exp
{
  width:82.66667vw;
  font-size:3.4vw;
  padding-top:3.33333vw;
  margin:0 auto;
  line-height:1.6;
  text-align:justify
}
@media screen and (min-width: 751px)
{
  .content_exp
  {
    width:620px;
    font-size:25px;
    padding-top:25px
  }
}
.content_exp--wide
{
  width:100%;
  padding-top:4.26667vw;
  margin-top:4.26667vw
}
@media screen and (min-width: 751px)
{
  .content_exp--wide
  {
    padding-top:32px;
    margin-top:32px
  }
}
.c-line
{
  position:relative
}
.c-line:after
{
  content:"";
  width:80.53333vw;
  height:1px;
  position:absolute;
  top:0;
  left:50%;
  -webkit-transform:translateX(-50%);
  transform:translateX(-50%)
}
@media screen and (min-width: 751px)
{
  .c-line:after
  {
    width:604px
  }
}
.c-line--green:after
{
  content:"";
  background:#bed67b
}
.c-line--purple:after
{
  content:"";
  background:#982e5c
}
.c-line--pink:after
{
  content:"";
  background:#d6abbe
}
.c-bg--color01
{
  background:#f3f0e9
}
.c-bg--green
{
  background:#1a761a
}
.c-bg--purple
{
  background:#982e5c
}
.floating
{
  position:fixed;
  width:100%;
  max-width:750px;
  left:50%;
  -webkit-transform:translateX(-50%);
  transform:translateX(-50%);
  bottom:0;
  z-index:100;
  background:#f3f0e9;
  padding-top:1%;
  padding-bottom:1%
}
.floating_inner
{
  width:100%
}
.sec04 .accordion
{
  padding-bottom:50px
}
.course_buttons
{
  display:flex;
  justify-content:center;
  gap:15px;
  font-size:1.1rem
}
.course_buttons>p
{
  cursor:pointer;
  padding:20px;
  text-align:center
}
.course_buttons>p span
{
  display:inline-block
}
.course_button_white
{
  background-color:#bed67b
}
.course_button_white.active
{
  background-color:#fff
}
.course_button_red
{
  color:#fff;
  background-color:#d34c87
}
.course_button_red.active
{
  background-color:#fff;
  color:#d34c87
}
.wine_box_price
{
  display:inline-block;
  padding:0 0 0 10px;
  background-color:#777;
  color:#fff
}
.slide_notice
{
  width:100%;
  font-size:1.2rem;
  text-align:center;
  margin-top:20px
}
#vh_swiper-container_white .swiper-button-next,#vh_swiper-container_white .swiper-button-prev
{
  color:#bed67b
}
#vh_swiper-container_red .swiper-button-next,#vh_swiper-container_red .swiper-button-prev
{
  color:#d34c87
}
.vh_swiper-container
{
  max-width:1080px;
  margin:0 auto;
  --swiper-navigation-sides-offset: 0 !important;
  --swiper-pagination-bottom: 30px !important;
  --it12-theme-color: #333;
  --swiper-theme-color: var(--it12-theme-color) !important;
  max-width:100vw !important;
  padding-bottom:50px !important
}
.vh_swiper-container li
{
  min-height:100%;
  height:auto;
  padding:5px 10px 20px 10px
}
.vh_swiper-container .slide_notice
{
  width:100%;
  margin-top:0;
  font-size:1.2rem;
  text-align:center;
  position:absolute;
  bottom:0
}


/* PCでは見出しを非表示（デフォルト） */
.video-heading {
  display: none;
}

/* PCでは見出しを非表示 */
.video-heading {
  display: none;
}

/* PCでは見出しを非表示 */
.video-heading {
  display: none;
}

/* ==========================================
   スマホだけ sec11 ＆ 見出しを調整
   ========================================== */
@media (max-width: 768px) {

  /* 直前のセクションの下マージンをゼロに（上の白帯を消す） */
  .sec10 {
    margin-bottom: 0 !important;
  }

  /* 見出し（スマホ専用） */
  .video-heading {
    display: block;
    background-color: #f4f0e6;        /* ベージュ */
    margin: 0 !important;            /* 上下マージンを完全になし */
    padding: 6px 10px 4px;           /* 上下の余白もギュッと詰める */
    text-align: center;
    font-size: 15px;
    line-height: 1.5;
    font-weight: 600;
    color: #333;
  }

  /* 背景画像を消す */
  .sec11 > img {
    display: none !important;
  }

  /* セクション全体 */
  .sec11 {
    position: relative !important;
    padding: 0 !important;
    margin: 0 !important;
    background: #f4f0e6 !important;
  }

  .sec11_inner {
    position: static !important;
    top: auto !important;
    left: auto !important;
    transform: none !important;
    width: 100% !important;
    padding: 0 !important;
    margin: 0 auto !important;
  }

  /* ★ 縦動画 9:16 ちょい小さめ（上下の黒をさらに圧縮） */
  .sec11_inner .video {
    position: relative !important;
    width: 100vw !important;
    padding-top: 168vw !important;   /* 168〜170vwあたりで微調整OK */
    height: auto !important;
    overflow: hidden !important;
  }

  /* iframe をボックスいっぱいに */
  .sec11_inner .video iframe {
    position: absolute !important;
    top: 0;
    left: 0;
    width: 100% !important;
    height: 100% !important;
    display: block !important;
    margin: 0 auto;
  }

//* PCでは見出しを非表示 */
.video-heading {
  display: none;
}

/* PCでは見出し非表示 */
.video-heading{
  display:none;
}

/* ==============================
   スマホだけ sec11（見出し＋縦動画）を詰める
   ============================== */
@media (max-width: 768px){

  /* ページ全体の背景を揃える（白い隙間が出ても目立たない） */
  body, .wrapper{
    background:#f4f0e6 !important;
  }

  /* sec11：余白ゼロ＆背景統一 */
  .sec11{
    background:#f4f0e6 !important;
    padding:0 !important;
    margin:0 !important;
  }

  /* もし直前のセクション由来の“白”が混ざるならここも揃える */
  .sec10{
    background:#f4f0e6 !important;
    padding:0 !important;
    margin:0 !important;
  }
  .sec10 img{
    display:block;
    margin:0 !important;
  }

  /* 元の背景画像は消す */
  .sec11 > img{
    display:none !important;
  }

  /* 見出し（スマホのみ表示） */
  .video-heading{
    display:block;
    background:#f4f0e6;
    color:#333;
    text-align:center;
    font-size:16px;
    line-height:1.6;
    font-weight:600;

    /* ★上下の空き：ここだけで調整 */
    margin:0 !important;
    padding:8px 12px 6px !important;
  }

  /* sec11_inner の絶対配置等を殺す */
  .sec11 .sec11_inner{
    position:static !important;
    top:auto !important;
    left:auto !important;
    transform:none !important;
    width:100% !important;
    padding:0 !important;
    margin:0 !important;
  }

  /* 動画：9:16。高さを詰めたいなら 9/16 → 9/15.3 などに変更 */
  .sec11 .sec11_inner .video{
    width:100vw !important;
    aspect-ratio: 9 / 16;
    margin:0 !important;
    padding:0 !important;
    overflow:hidden !important;
  }

  /* iframeをぴったり */
  .sec11 .sec11_inner .video iframe{
    width:100% !important;
    height:100% !important;
    display:block !important;
    margin:0 !important;
    border:0 !important;
  }
}







