/*!***************************************************************************************!*\
  !*** css ./node_modules/css-loader/dist/cjs.js!./src/assets/css/common/animation.css ***!
  \***************************************************************************************/
/*==================================================
ふわっ
===================================*/

/* その場で */
.fadeIn{
    animation-name:fadeInAnime;
    animation-duration:1s;
    animation-fill-mode:forwards;
    opacity:0;
    }
    
    @keyframes fadeInAnime{
      from {
        opacity: 0;
      }
    
      to {
        opacity: 1;
      }
    }
    
    /* 下から */
    
    .fadeUp{
    animation-name:fadeUpAnime;
    animation-duration:0.5s;
    animation-fill-mode:forwards;
    opacity:0;
    }
    
    @keyframes fadeUpAnime{
      from {
        opacity: 0;
      transform: translateY(50px);
      }
    
      to {
        opacity: 1;
      transform: translateY(0);
      }
    }
    
    /* 上から */
    
    .fadeDown{
    animation-name:fadeDownAnime;
    animation-duration:0.5s;
    animation-fill-mode:forwards;
    opacity:0;
    }
    
    @keyframes fadeDownAnime{
      from {
        opacity: 0;
      transform: translateY(-50px);
      }
    
      to {
        opacity: 1;
      transform: translateY(0);
      }
    }
    
    /* 左から */
    
    .fadeLeft{
    animation-name:fadeLeftAnime;
    animation-duration:0.5s;
    animation-fill-mode:forwards;
    opacity:0;
    }
    
    @keyframes fadeLeftAnime{
      from {
        opacity: 0;
      transform: translateX(-100px);
      }
    
      to {
        opacity: 1;
      transform: translateX(0);
      }
    }
    
    /* 右から */
    
    .fadeRight{
    animation-name:fadeRightAnime;
    animation-duration:0.5s;
    animation-fill-mode:forwards;
    opacity:0;
    }
    
    @keyframes fadeRightAnime{
      from {
        opacity: 0;
      transform: translateX(100px);
      }
    
      to {
        opacity: 1;
      transform: translateX(0);
      }
    }
    
    /* スクロールをしたら出現する要素にはじめに透過0を指定　*/
     
    .fadeInTrigger,
    .fadeUpTrigger,
    .fadeDownTrigger,
    .fadeLeftTrigger,
    .fadeRightTrigger{
        opacity: 0;
    }
    
    /*==================================================
    ボンッ、ヒュッ
    ===================================*/
    
    /* 拡大 */
    .zoomIn{
      animation-name:zoomInAnime;
      animation-duration:0.5s;
      animation-fill-mode:forwards;
    }
    
    @keyframes zoomInAnime{
      from {
      transform: scale(0.6);
      opacity: 0;
      }
    
      to {
        transform: scale(1);
      opacity: 1;
      }
    }
    
    /* 縮小 */
    .zoomOut{
      animation-name:zoomOutAnime;
      animation-duration:0.5s;
      animation-fill-mode:forwards;
    }
    
    @keyframes zoomOutAnime{
      from {
      transform: scale(1.2);
      opacity: 0;
      }
    
      to {
        transform:scale(1);
      opacity: 1;
      }
    }
    
    /* スクロールをしたら出現する要素にはじめに透過0を指定　*/
     
    .zoomInTrigger,
    .zoomOutTrigger{
        opacity: 0;
    }

/* 下からスライド */
.slide-in-bottom {
    -webkit-animation: slide-in-bottom 0.5s cubic-bezier(0.250, 0.460, 0.450, 0.940) both;
    animation: slide-in-bottom 0.5s cubic-bezier(0.250, 0.460, 0.450, 0.940) both;
}

/* ----------------------------------------------
 * Generated by Animista on 2024-2-8 13:52:34
 * Licensed under FreeBSD License.
 * See http://animista.net/license for more info. 
 * w: http://animista.net, t: @cssanimista
 * ---------------------------------------------- */

/**
 * ----------------------------------------
 * animation slide-in-bottom
 * ----------------------------------------
 */
@-webkit-keyframes slide-in-bottom {
    0% {
      -webkit-transform: translateY(100px);
              transform: translateY(100px);
      opacity: 0;
    }
    100% {
      -webkit-transform: translateY(0);
              transform: translateY(0);
      opacity: 1;
    }
  }
  @keyframes slide-in-bottom {
    0% {
      -webkit-transform: translateY(100px);
              transform: translateY(100px);
      opacity: 0;
    }
    100% {
      -webkit-transform: translateY(0);
              transform: translateY(0);
      opacity: 1;
    }
}

/* スクロールをしたら出現する要素にはじめに透過0を指定　*/
.slide-in-bottomTrigger{
    opacity: 0;
}


/*==================================================
    左から流れるように出現
===================================*/
/*========= 流れるテキスト ===============*/

/*全共通*/

.slide-in {
	overflow: hidden;
  display: inline-block;
}

.slide-in_inner {
	display: inline-block;

}


/*==================================================
    下線を引く
    ===================================*/
    .marker-text {
      position: relative;
      color: #fff0;
      transition: all 0.5s;
    }
    
    .marker-text .marker-text-inner {
      position: relative;
      z-index: 2;
      font-size: inherit;
    }
    
    .marker-text:after {
      content: '';
      position: absolute;
      left: 0;
      bottom: 0;
      width: 0%;
      height: 100%;
      background: linear-gradient(90deg, rgba(59,77,163,1) 0%, rgba(17,18,23,1) 100%);
      background: -webkit-linear-gradient(90deg, rgba(59,77,163,1) 0%, rgba(17,18,23,1) 100%);
      z-index: 1;
      transition: all 0.5s;
      display: inline-block;
    }

    .marker-text.isActive {
      color: #fff;
    }
    
    .marker-text.isActive:after {
      width: 100%;
    }


    /*==================================================
    アニメーション設定
    ===================================*/
    
    /* アニメーションスタートの遅延時間を決めるCSS*/
    .delay-time02{  
        animation-delay: 0.2s;
    }

    .delay-time02{  
        animation-delay: 0.2s;
        transition-delay: 0.2s;
    }
    
    .delay-time04{  
        animation-delay: 0.4s;
        transition-delay: 0.4s;
    }

    .delay-time05{  
        animation-delay: 0.5s;
        transition-delay: 0.5s;
    }

    .delay-time06{  
        animation-delay: 0.6s;
    }

    .delay-time08{  
        animation-delay: 0.8s;
    }
    
    .delay-time1{  
        animation-delay: 1s;
    }
    
    .delay-time15{  
        animation-delay: 1.5s;
    }
    
    .delay-time2{  
        animation-delay: 2s;
    }
    
    .delay-time25{  
        animation-delay: 2.5s;
    }

    /* 背景グラデーション時間差 */
    .delay-time02.marker-text:after{
      animation-delay: 0.2s;
      transition-delay: 0.2s;
    }
    
    .delay-time04.marker-text:after{
      animation-delay: 0.4s;
      transition-delay: 0.4s;
    }
  

/* スマホでは作動させない */
@media screen and (max-width:767px){
  /* 背景グラデーション */
  #precedent .delay-time02.marker-text:after,
  #precedent .delay-time04.marker-text:after{
    animation-delay: initial;
    transition-delay: initial;
  }

  /* Timeline */
  #schedule .delay-time02,
  #schedule .delay-time04,
  #schedule .delay-time06{
      animation-delay: initial;
      transition-delay: initial;
  }

  /* Interview */
  #interview .delay-time02,
  #interview .delay-time04{
      animation-delay: initial;
      transition-delay: initial;
  }
}
/*!***********************************************************************************!*\
  !*** css ./node_modules/css-loader/dist/cjs.js!./src/assets/css/common/reset.css ***!
  \***********************************************************************************/
/* ------------------- */
/* Reset               */
/* ------------------- */

/* https://piccalil.li/blog/a-modern-css-reset/ */

/* Box sizing rules 
   ボックスサイジングのルール */
   *,
   *::before,
   *::after {
     box-sizing: border-box;
   }
   /* Remove default margin 
         デフォルトのマージンを削除する */
   body,
   h1,
   h2,
   h3,
   h4,
   p,
   figure,
   blockquote,
   dl,
   dd,
   ul,
   li {
     margin-block-start: 0;
     margin-block-end: 0;
   }
   
   /* Remove default padding 
         デフォルトのマージンを削除する */
   ul {
     padding-inline-start: 0;
   }
   
   /* Remove list styles on ul, ol elements with a list role, which suggests default styling will be removed.
         ul、ol要素のリストスタイルを削除する。リストの役割が指定されているため、デフォルトのスタイリングが削除されます */
   ul[role="list"],
   ol[role="list"] {
     list-style: none;
   }
   
   /* Set core root defaults 
         コアルートのデフォルトを設定する */
   html:focus-within {
     /* scroll-behavior: smooth; */
   }

   html{
    /* scroll-behavior: smooth; */
   }
   
   /* Set core body defaults 
         コアボディのデフォルトを設定する */
   body {
     min-height: 100dvh;
     text-rendering: optimizeSpeed;
     line-height: 1.5;
   }
   
   /* A elements that don't have a class get default styles 
         class属性を持たない"a"要素にはデフォルトのスタイルが適用されます */
   a:not([class]) {
     text-decoration-skip-ink: auto;
   }
   
   /* Make images easier to work with
         画像の操作を容易にする */
   img,
   picture {
     max-width: 100%;
     display: block;
   }
   
   /* Inherit fonts for inputs and buttons
         入力フィールドとボタンにフォントを継承させる  */
   input,
   button,
   textarea,
   select {
     font: inherit;
   }
   
   /* Remove all animations, transitions and smooth scroll for people that prefer not to see them.
      アニメーション、トランジション、スムーズスクロールを全て削除し、それらを見たくない人のために設定します  */
   @media (prefers-reduced-motion: reduce) {
     html:focus-within {
       scroll-behavior: auto;
     }
   
     *,
     *::before,
     *::after {
       animation-duration: 0.01ms !important;
       animation-iteration-count: 1 !important;
       transition-duration: 0.01ms !important;
       scroll-behavior: auto !important;
     }
   }
   
   /* hide overflow x 
      横方向のオーバーフローを非表示にする*/
   html,
   body {
     overflow-x: clip;
   }
   
   body {
     padding: 0;
     margin: 0;
     position: relative;
   }
   
   
   
/*!****************************************************************************************!*\
  !*** css ./node_modules/css-loader/dist/cjs.js!./src/assets/css/common/typography.css ***!
  \****************************************************************************************/
/* ------------------- */
/* TYPOGRAPHY          */
/* ------------------- */

/*----------------------------
    Font Style /フォントのスタイル 
  ----------------------------*/
  .font-notoserif{
    font-family: 'Noto Serif JP', sans-serif;
  }
  .font-roboto{
    font-family: 'Roboto', sans-serif;
  }
  
/*----------------------------
    Font weight /フォントの太さ 
  ----------------------------*/
  .regular{
    font-weight: 400;
  }
  .medium{
    font-weight: 500;
  }
  .bold{
    font-weight: 700;
  }
  
/*----------------------------
      Font Colors / フォントの色"
    ----------------------------*/
  .white {
    color: #ffffff;
  }
  .navy {
    color: #292f4a;
  }
  .lightblue{
    color: #6496dc;
  }
  .yellow{
    color: #ffff50;
  }


/*---------------------------------
    Section Title / セクションタイトル
  ----------------------------------*/

  .ttl{
    font-family: 'Noto Serif JP', sans-serif;
    font-weight: 700;
    line-height: 1.2;
    color:#333448;
    font-size: 58px;
    letter-spacing: 0.06rem;
    display: inline-block;
  }

/*---------------------------------
    Gradation / グラデーション
  ----------------------------------*/
  /* 背景 */
  .bg_gradient_noanimation{
    display: inline-block;
    background: linear-gradient(0deg, #3b4da3 0%, #333448 100%);
    background: -webkit-linear-gradient(0deg, #3b4da3 0%, #333448 100%);
  }

  
/* ------------------- */
/* MOBILE              */
/* ------------------- */
  
/*-------------------------------------------------
  Section Title - Mobile/ セクションタイトル - モバイル
  ---------------------------------------------------*/
  
/*!*************************************************************************************!*\
  !*** css ./node_modules/css-loader/dist/cjs.js!./src/assets/css/common/utility.css ***!
  \*************************************************************************************/

/*----------------------------
    Responsive 
    レスポンシブ
----------------------------*/
/* PCのみ表示 */
.pc_only{
    display: block;
}

.tb_only{
    display: none;
}

.sp_only{
    display: none;
}

/* タブレットのみ表示 */
@media screen and(min-width:768px) and (max-width:1100px){
    .pc_only{
        display: none;
    }
    
    .tb_only{
        display: block;
    }
    
    .sp_only{
        display: none;
    }
}

/* スマホのみ表示 */
@media screen and (max-width:767px){
    .pc_only{
        display: none;
    }
    
    .tb_only{
        display: none;
    }
    
    .sp_only{
        display: block;
    }
}
/*!****************************************************************************!*\
  !*** css ./node_modules/css-loader/dist/cjs.js!./src/assets/css/about.css ***!
  \****************************************************************************/
#about{
    background-color: #fff;
    padding: 100px 0;
}

.about_content{
    text-align: center;
}

.about_top{
    padding-bottom: 140px;
}

.about_top h2 img{
    height: 70px;
    width: auto;
}

.about_top p{
    font-size: 20px;
    line-height: 2.6;
    margin-top: 60px;
}

.about_top video{
    margin-top: 70px;
    width: 720px;
    height: 405px;
}

.about_bottom{
    padding-left: 0; 
}

.about_bottom h3{
    width: 470px;
    text-align: center;
    font-size: 26px;
    line-height: 1.5;
    letter-spacing: 0.06rem;
    border-radius: 40px;
    padding: 0.5em 0;
}

/*----------------------------
    Media / メディア
----------------------------*/
.about_slick{
    margin-top: 60px;
}

.about_slick li{
    margin: 0 20px;
    /* -webkit-backface-visibility: hidden !important;  */
}

.about_slick .slick-arrow{
    display: none !important;
}

.about_slick h4{
    font-size: 16px;
    line-height: 1.75;
    letter-spacing: 0.08rem;
    margin-top: 25px;
}

/*----------------------------
    Tablet / タブレット
----------------------------*/


/*----------------------------
    Mobile / スマホ
----------------------------*/
@media screen and (max-width:767px){
    #about{
        background-color: #fff;
        padding: 40px 0 60px;
    }

    .about_top {
        background-position: top 0 left 0;
        background-size: 20.5vw;
        padding-top: 20px;
        padding-bottom: 60px;
    }

    .about_top h2 img{
        height: 50px;
    }

    .about_top p{
        margin-top: 14px;
        padding: 0 20px;
        font-size: 14px;
        line-height: 1.8;
    }

    .about_top video{
        margin-top: 34px;
        padding: 0 20px;
        width: 100%;
        height: auto;
        aspect-ratio: 350/196;
    }

    .about_bottom{
        margin: 0 0 0 20px;
        overflow: hidden;
    }

    .about_bottom h3{
        width: calc(100% - 20px);
        font-size: 16px;
        margin-left: -20px;
    }

    .about_slick{
        margin-top: 34px;
        margin-left: -12.8vw;
    }

    .about_slick li{
        /* width: 76.9vw; */
        margin: 0;
        padding: 0 20px 0 0;
    }

    .about_slick li img{
        /* width: 76.9vw; */
        /* margin: 0 auto; */
        /* padding: 0; */
    }

    .about_slick h4{
        text-align: justify;
        padding: 0 10px;
        font-size: 14px;
        line-height: 1.5;
        margin-top: 10px;
    }
}

.voice{
    background: #333448;
    padding: 80px 0 50px;
}
.voice_head {
    margin-bottom: 100px;
}
.voice_head img{
    max-width: 700px;
    margin: 0 auto;
}
.voice_list{
    max-width: 800px;
    margin: 0 auto;
}
.voice_list li{
    display: flex;
    align-items: center;
}
.voice_list li + li{
    margin-top: 100px;
}
.voice_list li .voice_list_left{
    width: 20%;
    max-width: 160px;
    margin-right: 60px;
}
.voice_list li .voice_list_right{
    color:#fff;
    width: calc(80% - 60px);
    max-width: 580px;
}
.voice_list li .voice_list_right h3{
    font-size:2.25vw;
    letter-spacing: 0.05em;
    margin-bottom: 1em;
}
.voice_list li .voice_list_right p{
    line-height: 1.8;
    margin-bottom: 1em;
}
.voice_list li .voice_list_right .rate{
    font-weight: 700;
    font-size:1.1em;
    letter-spacing: 0.1em;
}
.voice_list li .voice_list_right .rate:before{
    content:"|";
    margin-right: .5em;
}
.voice_list li .voice_list_right .rate:after{
    content:"|";
    margin-left: .5em;
}



/*----------------------------
    Mobile / スマホ
----------------------------*/
@media screen and (max-width:767px){
    .voice{
        padding:10% 0 5%;
    }
    .voice_head{
        margin-bottom: 10%;
    }
    .voice_head img{
        width: 90%;
    }
    .voice_list{
        width: 90%;
    }
    .voice_list li + li{
        margin-top: 10%;
    }
    .voice_list li .voice_list_left{
        margin-right: 3%;
    }
    .voice_list li .voice_list_right{
        width: 77%;
    }
    .voice_list li .voice_list_right h3{
        font-size:1em;
    }
    .voice_list li .voice_list_right p{
        font-size:0.8em;
        line-height: 1.5;
    }
    .voice_list li .voice_list_right .rate{
        font-size:0.7em;
    }
}


/*!****************************************************************************!*\
  !*** css ./node_modules/css-loader/dist/cjs.js!./src/assets/css/entry.css ***!
  \****************************************************************************/
#entry{
    background: #FAF8F7;
    padding: 120px 8vw 100px;
}

.entry_content{
    margin-top: 70px;
}

.entry_content p{
    font-size: 20px;
    line-height: 1;
    letter-spacing: 0.08rem;
    text-align: center;
}

.access_kichijoji{
    text-align: center;
}
.access_kichijoji img{
    display: block;
    width: 303px;
    margin: auto;
}
.access_kichijoji h3{
    margin-top: 28px;
}

/*---------------------------------
    Form / 応募フォーム
----------------------------------*/
.entry_form{
    background-color: #303F52;
    max-width: 900px;
    margin: 50px auto 0;
    padding: 55px 75px 75px;
    text-align: center;
    border:10px solid;
    border-image: linear-gradient(to bottom, #D4D7AE, #B18A44) 1;
}

.info_map img{
    display: block;
    margin: 0 auto 20px;
}
.info_map p{
    text-align: left;
    line-height: 1.8;
    margin-bottom: 20px;
    color:#fff;
}

.entry_form dl{
    width: 100%;
    margin-bottom: 16px;
    display: flex;
    align-items: center;
}

.entry_form dt{
    font-size: 20px;
    line-height: 1;
    letter-spacing: 0.08rem;
    text-align: center;
    width: 25%;
    background: #fff;
    color:#183049;
    padding:12px 0;
    letter-spacing: 0.08rem;
    border-radius: 10px;
    font-weight: bold;
}


.entry_form dd{
    font-size: 20px;
    width: 75%;
    text-align: left;
    color:#fff;
    font-weight: bold;
}
.info_photo{
    margin: 50px 0;
}

.info_line{
    margin-bottom: 20px;
}
.info_web{
    margin-bottom: 20px;
}

/*---------------------------------
    Tablet / タブレット版
----------------------------------*/
@media screen and (max-width:1100px){
    #entry{
        padding: 120px 40px 100px;
    }

    .entry_form{
        padding: 55px 20px 75px;
    }

    .entry_form dt{
        width: 30%;
    }

    .entry_form dd{
        width: 70%;
    }
}

/*---------------------------------
    Mobile / スマホ版
----------------------------------*/
@media screen and (max-width:767px){
    #entry{
        padding: 60px 10px;
    }

    .entry_content{
        margin-top: 34px;
    }

    .entry_content p{
        font-size: 14px;
        line-height: 1.5;
    }

    .access_kichijoji h3{
        font-size:2.25em;
        margin-top: 5%;
    }
    .access_kichijoji img{
        width: 60%;
    }


    /* Form / 応募フォーム */
    .entry_form{
        margin: 34px auto 0;
        padding: 10px 20px 20px;
        border-radius: 0;
    }

    .entry_form dt,
    .entry_form dd{
        display: block;
    }

    .entry_form dt{
        width: 37%;
        font-size:0.9em;
        padding:6px 0;
    }

    .entry_form dd{
        width: 60%;
        font-size:0.9em;
        margin-left: 3%;
    }
    .entry_form dd a{
        color:#fff;
    }

    .info_photo{
        margin:5% 0;
    }

}

/*----------------------------
    Slider Controls
    スライダーコントロール
----------------------------*/

.fixed_btn{
    cursor: pointer;
    position: fixed;
    bottom: 20px;
    right: 20px;
    width: 200px;
    z-index: 10;
}

/* スマホ版 */
@media screen and (max-width:768px){
    .fixed_btn{
        display: none;
    }
    .fixed_btn_sp{
        cursor: pointer;
        position: fixed;
        bottom: 0;
        left: 0;
        width: 100%;
        z-index: 10;
        background-color: rgba(0,0,0,.5);
    }
    .fixed_tel{
        position: fixed;
        top: 5px;
        right: 5px;
        padding: 14px 14px;
        z-index: 999;
        width: 15%;
        background-color: rgba(31, 58, 87, 0.6);
        border-radius: 50%;
    }
}

.map_min_wrap{
    background:#fff;
    padding:70px 0;
}
.map_min_contents{
    background:#efefef;
    position: relative;
    max-width: 650px;
    margin:0 auto;
    border:2px solid #fff;
    padding: 80px 25px 40px 25px;
}
.map_min_ttl{
    position: absolute;
    top: -35px;
    left: 50%;
    transform: translateX(-50%);
}
.map_min_contents figure{
    margin:20px auto 0;
    cursor: pointer;
}
.map_min_contents dl{
    width: 100%;
    margin-bottom: 16px;
    display: flex;
    align-items: flex-start;
}

.map_min_contents dt{
    font-size: 20px;
    line-height: 1;
    letter-spacing: 0.08rem;
    text-align: center;
    width: 25%;
    background: #3E3A39;
    color:#fff;
    padding:12px 0;
    letter-spacing: 0.08rem;
    font-weight: bold;
    position: relative;
    top:-0.25em;
}


.map_min_contents dd{
    font-size: 20px;
    width: 75%;
    text-align: left;
    font-weight: bold;
}



/*---------------------------------
    スマホ版
----------------------------------*/
@media screen and (max-width:767px){
    .map_min_wrap{
        padding: 60px 10px 50px;
    }
    .map_min_ttl{
        top:-20px;
        width:80%;
    }
    .map_min_contents{
        padding:40px 10px 40px 10px;
    }
    .map_min_contents dt {
        width: 37%;
        font-size: 0.9em;
        padding: 6px 0;
    }
    .map_min_contents dd {
        width: 60%;
        font-size: 0.9em;
        margin-left: 3%;
    }
}


.popup{
    display: none;
    position: fixed;
    top: 0;
    left: 0;
    background:rgba(0,0,0,0.5);
    width: 100%;
    height: 100%;
    z-index: 998;
}
.popup_contents{
    width: 90%;
    max-width: 500px;
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%,-50%);
}
.popup_img{
    cursor: pointer;
}
.popup_close{
    cursor: pointer;
    width: 50px;
    position: absolute;
    top:-60px;
    right: 0;
}

.popup_line{
    display: none;
    position: fixed;
    top: 0;
    left: 0;
    background:rgba(0,0,0,0.5);
    width: 100%;
    height: 100%;
    z-index: 999;
}
.popup_line_contents{
    width: 90%;
    max-width: 360px;
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%,-50%);
    background:#fff;
    padding:10px;
}
.popup_line_head{
    text-align: center;
    font-size:24px;
}

.popup_line_rsv_txt{
    text-align: center;
    font-size:22px;
    font-weight: 700;
    margin-bottom: 5px;
}

.popup_tel_contents_main{
    text-decoration: none;
    margin-bottom: 15px;
    display: flex;
    background:#ff6002;
    border-radius: 10px;
    padding:10px;
    display: flex;
    align-items: center;
    justify-content: center;
    padding:10px 8px;
    position: relative;
}
.popup_tel_contents_main:after{
    border-radius: 10px;
    content:"";
    position: absolute;
    top: 5px;
    left: 0;
    width: 100%;
    height: 100%;
    background:#a73e00;
    z-index: -1;
}
.popup_tel_contents_main img{
    width: 15%;
    margin-right: 2%;
}
.popup_tel_contents_main .btn_txt{
    width: 78%;
}
.popup_tel_contents_main .btn_txt .shop_name{
    background:#fff;
    color:#f1630f;
    border-radius: 30px;
    font-size:16px;
    font-weight: bold;
    text-align: center;
    margin-bottom: 2px;
}
.popup_tel_contents_main .btn_txt .line_btn{
    font-size:22px;
    color:#fff;
    font-weight: bold;
    text-align: center;
}
.popup_tel_contents_main .btn_txt .line_btn span{
    color:#FFFF00;
}
.popup_line_contents_main{
    text-decoration: none;
    margin-bottom: 15px;
    display: flex;
    background:#06C252;
    border-radius: 10px;
    padding:10px;
    display: flex;
    align-items: center;
    justify-content: center;
    padding:10px 8px;
    position: relative;
}
.popup_line_contents_main:after{
    border-radius: 10px;
    content:"";
    position: absolute;
    top: 5px;
    left: 0;
    width: 100%;
    height: 100%;
    background:#126534;
    z-index: -1;
}
.popup_line_contents_main img{
    width: 20%;
    margin-right: 2%;
}
.popup_line_contents_main .btn_txt{
    width: 78%;
}
.popup_line_contents_main .btn_txt .shop_name{
    background:#fff;
    color:#00B44F;
    border-radius: 30px;
    font-size:16px;
    font-weight: bold;
    text-align: center;
    margin-bottom: 2px;
}
.popup_line_contents_main .btn_txt .line_btn{
    font-size:22px;
    color:#fff;
    font-weight: bold;
    text-align: center;
}
.popup_line_contents_main .btn_txt .line_btn span{
    color:#FFFF00;
}
.popup_hpb_contents_main{
    text-decoration: none;
    margin-bottom: 15px;
    display: flex;
    background:#8F3356;
    border-radius: 10px;
    padding:10px;
    display: flex;
    align-items: center;
    justify-content: center;
    padding:10px 8px;
    position: relative;
}
.popup_hpb_contents_main:after{
    border-radius: 10px;
    content:"";
    position: absolute;
    top: 5px;
    left: 0;
    width: 100%;
    height: 100%;
    background:#651a36;
    z-index: -1;
}
.popup_hpb_contents_main img{
    width: 25%;
    margin-right: 2%;
}
.popup_hpb_contents_main .btn_txt{
    width: 73%;
}
.popup_hpb_contents_main .btn_txt .shop_name{
    background:#fff;
    color:#8F3356;
    border-radius: 30px;
    font-size:16px;
    font-weight: bold;
    text-align: center;
    margin-bottom: 2px;
}
.popup_hpb_contents_main .btn_txt .line_btn{
    font-size:22px;
    color:#fff;
    font-weight: bold;
    text-align: center;
}
.popup_hpb_contents_main .btn_txt .line_btn span{
    color:#EDAD0B;
}
.popup_line_close{
    cursor: pointer;
    width: 50px;
    position: absolute;
    top:-60px;
    right: 0;
}

/*!********************************************************************************!*\
  !*** css ./node_modules/css-loader/dist/cjs.js!./src/assets/css/interview.css ***!
  \********************************************************************************/
#interview{
    background:#FAF8F7;
}

.interview_title{
    text-align: center;
}

.interview_title h2 img{
    height: 70px;
    width: auto;
}

.interview_left{
    background-color: #EBF5FF;
}

.interview_middle{
    max-width: 1100px;
    margin: 0 auto;
    padding: 130px 0 140px;
    position: relative;
}


.interview_item{
    display: flex;
    /* align-items: end; */
    column-gap: 60px;
    margin-top: 100px;
}

.interview_item:nth-child(2){
    margin-top: 100px;
}

.interview_item img{
    width: 46.2%;
    /* height: 100%; */
    object-fit: cover;
    border-radius: 20px;
}

.interview_item_text_name{
    display: flex;
    column-gap: 25px;
    align-items: flex-end;
}

.interview_item_text_name span{
    font-size: 22px;
    line-height: 1;
}

.interview_item_text_name h3{
    font-size: 42px;
    line-height: 1;
}

.interview_item_text_qa{
    margin-top: 25px;
    background-color: #fff;
    border-radius:20px;
    padding: 30px;
}

.interview_item_text_qa:nth-child(3){
    margin-top: 20px;
}

.interview_item_text_qa h4{
    font-weight: bold;
    font-size: 22px;
    line-height: 1.5;
    letter-spacing: 0.08rem;
    color:#202020;
}

.interview_item_text_qa p{
    font-size: 20px;
    line-height: 1.75;
    margin-top: 20px;
    text-align: justify;
}

.interview_trainer_link{
    max-width: 650px;
    margin: 100px auto 0;
    text-decoration: none;
    margin-bottom: 15px;
    display: flex;
    background:#BBA062;
    border-radius: 70px;
    padding:22px 8px;
    position: relative;
}
.interview_trainer_link .btn_txt{
    max-width: 500px;
    margin: 0 auto;
}
.interview_trainer_link .btn_txt .shop_name{
    background:#fff;
    color:#796028;
    border-radius: 30px;
    font-size:1.25em;
    font-weight: bold;
    text-align: center;
    margin-bottom: 2px;
}
.interview_trainer_link .btn_txt .line_btn{
    font-size:36px;
    color:#fff;
    font-weight: bold;
    text-align: center;
}



/*---------------------------------
    Tablet / タブレット
----------------------------------*/
@media screen and (max-width:1300px){
    #interview{
        grid-template-columns: 8vw 1fr 8vw;
    }
}

@media screen and (max-width:1100px){
    #interview{
        grid-template-columns: 40px 1fr 40px;
    }

    .interview_item{
        flex-direction: column;
        margin-top: 60px;
    }

    .interview_item img{
        width: 100%;
    }

    .interview_item:nth-child(3) img{
        order: -1;
    }

    .interview_item_text{
        margin-top: 25px;
    }
}

/*---------------------------------
    Mobile / スマホ
----------------------------------*/
@media screen and (max-width:767px){
    #interview{
        padding: 0;
        grid-template-columns: 20px 1fr 20px;
    }

    .interview_title{
        padding-left: 10px;
    }
    
    .interview_title{
        text-align: center;
    }
    .interview_title h2 img{
        height: 30px;
    }

    .interview_middle{
        padding: 30px 0;
    }

    .interview_middle:before {
        width: 76.9%;
        height: 100%;
        top: 0;
        left: 0;
        content: "";
        display: block;
        position: absolute;
        z-index: -1;
        background-color: #EBF5FF;
        border-radius: 0 30px 30px 0;
    }

    .interview_item{
        flex-direction: column;
        margin-top: 60px;
        width: 90%;
        margin: 0 auto;
    }
    .interview_item:nth-child(2){
        margin-top: 10%;
    }

    .interview_item:nth-of-type(3){
        margin-top: 34px;
    }

    .interview_item:nth-of-type(3) img{
        order: -1;
    }

    .interview_item img{
        width: 100%;
        border-radius: 15px;
        max-height: 150px;
        object-fit: contain;
        margin: auto;
    }

    .interview_item_text{
        margin-top: 25px;
    }

    .interview_item_text_name{
        justify-content: center;
    }
    .interview_item_text_name h3{
        font-size:22px;
    }
    .interview_item_text_name span{
        font-size:18px;
    }

    .interview_item_text_qa{
        padding: 15px;
        border-radius: 10px;
    }

    .interview_item_text_qa h4{
        font-size: 14px;
    }

    .interview_item_text_qa p{
        margin-top: 5px;
        font-size:14px;
    }

    .interview_trainer_link{
        max-width: 90%;
        margin-top: 34px;
        padding: 12px 8px;
    }

    .interview_trainer_link .btn_txt .shop_name{
        font-size:14px;
        margin-bottom: 6px;
    }
    .interview_trainer_link .btn_txt .line_btn{
        font-size:20px;
    }

}
/*!********************************************************************************!*\
  !*** css ./node_modules/css-loader/dist/cjs.js!./src/assets/css/keyvisual.css ***!
  \********************************************************************************/
#keyvisual{
    position: relative;
}

/*----------------------------
    CTA
    応募ボタン
----------------------------*/

/*---------------------------------
    Mobile / スマホ
----------------------------------*/
@media screen and (max-width:767px){
    #keyvisual{
    }
}
/*!*********************************************************************************!*\
  !*** css ./node_modules/css-loader/dist/cjs.js!./src/assets/css/navigation.css ***!
  \*********************************************************************************/
/*---------------------------------
    Hamburger / ハンバーガーボタン
----------------------------------*/

/*---------------------------------
    Hamburger / ハンバーガー中身
----------------------------------*/
/*========= ナビゲーションのためのCSS ===============*/




/*!****************************************************************************!*\
  !*** css ./node_modules/css-loader/dist/cjs.js!./src/assets/css/point.css ***!
  \****************************************************************************/
#point{
    padding: 140px 8vw 150px;
    position: relative;
}

#point::before{
    display: block;
    content: '';
    width: 100%;
    height: 100%;
    position: absolute;
    top: 0;
    left: 0;
    background-color: #FBF9F8;
    z-index: -1;
}

.point_title{
    text-align: center;
}

.point_title h2 img{
    height: 160px;
    width: auto;
}

.point_content{
    max-width: 1100px;
    margin: 0 auto;
}

.point_item{
    display: flex;
    flex-wrap: wrap;
    column-gap: 80px;
    margin-top: 70px;
}

.point_item .point_item_num{
    width: 100%;
    text-align: center;
    font-size:56px;
    color:#D35EC4;
    background: none;
}
.point_item .point_item_subttl{
    width: 100%;
    font-size:32px;
    letter-spacing: .05em;
    text-align: center;
    line-height: 1.8;
    font-weight: bold;
    margin-bottom: 0.5em;
}

.point_item:nth-child(1){
    margin-top: 50px;
}

.point_item img{
    width: 51%;
    height: 100%;
    border-radius: 20px;
    object-fit: cover;
}

.point_item:nth-child(2) img,
.point_item:nth-child(4) img{
    order: 1;
}

.point_item_text{
    display: flex;
    flex-direction: column;
    justify-content: start;
    align-items: start;
    width: calc(49% - 80px);
    /* padding-bottom: 20px; */
}

.point_item h3{
    display: inline-block;
    font-size: 30px;
    line-height: 1;
    letter-spacing: 0.03rem;
    margin-top: 10px;
    padding: 0.4em 0.6em;
    background:#0E2D55;
    color:#fff;
}

.point_item p{
    margin-top: 20px;
    font-size: 20px;
    line-height: 1.75;
    text-align: justify;
}

/*---------------------------------
    Tablet / タブレット
----------------------------------*/
@media screen and (max-width:1100px){
    #point{
        padding: 140px 40px 150px;
    }

    .point_content{
        max-width: 100%;
        /* padding: 0 40px; */
    }

    .point_item{
        column-gap: 50px;
    }

    .point_item h3{
        font-size: 22px;
    }
}

/*---------------------------------
    Mobile / スマホ
----------------------------------*/
@media screen and (max-width:768px){
    #point{
        padding: 10% 20px;
    }

    .point_title{
        text-align: center;
        padding-left: 10px;
    }
    .point_title h2 img{
        height: 70px;
    }

    .point_content{
        padding: 0;
    }

    .point_item{
        flex-direction: column;
        margin-top: 10%;
    }

    .point_item:nth-child(1){
        margin-top: 14px;
    }

    .point_item img{
        width: 100%;
    }

    .point_item:nth-child(2) img,
    .point_item:nth-child(4) img{
        order: 0;
    }

    .point_item_text{
        margin-top: 0;
        padding: 0 10px;
        width: 100%;
    }

    .point_item span{
        font-size: 1em;
    }

    .point_item h3{
        display: block;
        font-size:22px;
        width: 100%;
        text-align: center;
    }

    .point_item h3 span{
        letter-spacing: 0;
    }

    .point_item p{
        margin-top: 10px;
        font-size: 0.9em;
        line-height: 1.5;
        font-weight: 500;
    }

    .point_item .point_item_num{
        font-size:2em;
    }

    .point_item .point_item_subttl{
        font-size:1.5em;
    }
}
/*!********************************************************************************!*\
  !*** css ./node_modules/css-loader/dist/cjs.js!./src/assets/css/precedent.css ***!
  \********************************************************************************/
#precedent{
    background-color: #D2D7DE;
    display: grid;
    grid-template-columns: 1fr 1100px 1fr;
    place-content: center;
    padding: 100px 0 0 0;
    position: relative;;
}

.precedent_middle{
    /* position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    border: solid 1px #ff0000; */
    position: relative;
    z-index: 0;
    /* max-width: 1100px; */
    padding-bottom: 115px;
}

.precedent_middle .precedent_head{
    text-align: center;
}
.precedent_middle .precedent_head img{
    margin: auto;
}

/*---------------------------------
    Salary Example / 給与例
----------------------------------*/
.precedent_bottom{
    display: flex;
    justify-content: center;
    flex-wrap: wrap;
    margin: 60px auto 0;
    padding: 0 40px;
    max-width: 800px;
    column-gap: 30px;

}

.precedent_bottom_item{
    width: 50%;
    display: flex;
    flex-direction: column;
    align-items: center;
    padding:20px 40px;
    margin-bottom: 40px;
    max-width: 340px;
    background: rgb(17,18,23);
    background: linear-gradient(90deg, rgba(17,18,23,1) 0%, rgba(61,61,87,1) 52%, rgba(17,18,23,1) 100%);
}

.precedent_bottom_item img{
    max-width: 200px;
    width: 100%;
    aspect-ratio: 1/1;
    border-radius: 50%;
    border:5px solid #CDCFC5;
}

.precedent_bottom_item h3{
    width: 100%;
    padding-bottom: 10px;
    line-height: 1;
    letter-spacing: 0.05rem;
    margin-top: 20px;
    text-align: center;
    font-size:1.65em;
    color:#fff;
    border-bottom: 1px solid #fff;
}

.precedent_bottom_item .data{
    font-size: 20px;
    line-height: 1.75;
    margin-top: 10px;
    color:#fff;
}

.precedent_bottom_item .salary{
    /* font-size: 20px; */
    font-size: min(1.32vw, 20px);
    margin-top: 25px;
    /* padding: 0 1.1em; */
    /* width: 286px; */
    width: 100%;
    text-align: center;
}

.precedent_bottom_item .price{
    font-size: 40px;
    font-size: min(2.65vw, 40px);
    font-style: italic;
    padding: 0 0.1em;
}

/*---------------------------------
    Tablet / タブレット
----------------------------------*/
@media screen and (max-width:1300px){
    #precedent{
        grid-template-columns: 8vw 1fr 8vw;
    }

    .precedent_bottom{
        column-gap: 40px;
        padding: 0;
    }
}

@media screen and (max-width:1100px){
    #precedent{
        grid-template-columns: 40px 1fr 40px;
    }

    .precedent_bottom_item h3{
        letter-spacing: 0;
    }

    .precedent_bottom_item img{
        /* max-width: 212px; */
    }

    .precedent_bottom_item .salary{
        /* font-size: 16px; */
        /* width: 220px; */
    }

    .precedent_bottom_item .price{
        /* font-size: 32px; */
    }
}

/*---------------------------------
    Mobile / スマホ
----------------------------------*/
@media screen and (max-width:767px){
    #precedent{
        grid-template-columns: 20px 1fr 20px;
        padding-top: 60px;
    }

    .precedent_middle{
        padding-bottom: 60px;
    }

    .precedent_middle:before{
        width: calc(100% - 65px);
        height: calc(100% - 40px);
        border-radius: 30px 0 0 30px;
    }

    .precedent_bottom{
        margin-top: 30px;
        row-gap: 10px;
        column-gap: 4%;
    }

    .precedent_bottom_item{
        width: 48%;
        padding:10px 15px;
        margin-bottom: 0;
    }

    .precedent_bottom_item img{
        width: 80%;
        border: 2px solid #CDCFC5;
    }

    .precedent_bottom_item h3{
        font-size:1em;
    }
    .precedent_bottom_item .data{
        font-size:0.7em;
    }

    .precedent_bottom_item .salary{
        width: 286px;
        font-size: 20px;
    }

    .precedent_bottom_item .price{
        font-size: 40px;
    }
}


/**=======================
お悩み
=======================**/
.trouble{
    padding:60px 0;
}

.trouble_content_head{
    text-align: center;
    font-weight: bold;
    font-size: 3.5vw;
    line-height: 1.8;
    margin-bottom: 40px;
}
.trouble_content_head img{
    margin: auto;
}
.trouble_content_body{
    margin:10px;
}
.trouble_content_body_inner{
    width: 100%;
    max-width: 800px;
    margin: 0 auto;
    padding:25px;
    display: flex;
    box-shadow: 0 0 5px rgba(0,0,0,0.5);
}
.trouble_content_body_inner_left{
    width: 30%;
    max-width: 240px;
    margin-right: 20px;
} 
.trouble_content_body_inner_right{
    width: 70%;
    max-width:67.5%;
}
.trouble_content_body_inner_right h2{
    border-bottom: 2px solid #000;
    font-size:22px;
    margin-bottom: 15px;
    padding-bottom: 5px;
}
.trouble_content_body_inner_right p{
    line-height: 1.8;
    font-size:18px;
    font-weight: 500;
}
.trouble_footer{
    margin-top: 100px;
}
.trouble_footer img{
    margin: auto;
}
.trouble_footer_content{
    max-width: 800px;
    width: 100%;
    margin: 50px auto 0;
    display: flex;
    flex-wrap: wrap;
    column-gap:40px;
}
.trouble_footer_content li{
    width: 50%;
    display: flex;
    flex-direction: column;
    align-items: center;
    padding: 30px 40px 40px;
    margin-bottom: 40px;
    max-width: 380px;
    background: rgb(17, 18, 23);
    background: linear-gradient(90deg, rgba(17, 18, 23, 1) 0%, rgba(61, 61, 87, 1) 52%, rgba(17, 18, 23, 1) 100%);
    border: 5px solid;
    border-image: linear-gradient(to bottom, #D4D7AE, #B18A44) 1;
}
.trouble_footer_content li .trouble_footer_content_num{
    width: 100%;
    border-bottom: 1px solid #fff;
    color:#fff;
    font-size:46px;
    text-align: center;
    margin-bottom: 25px;
    font-weight: bold;
    padding-bottom: 10px;
}
.trouble_footer_content li .trouble_footer_content_txt{
    color:#fff;
    font-size:32px;
    text-align: center;
    line-height: 1.5;
    font-weight: bold;
}
.trouble_footer_content li .trouble_footer_content_txt_treat1{
    font-size:1.75em;
    background: -webkit-linear-gradient(0deg, #CEAD3B 0%, #D7C78B 100%);
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
}
.trouble_footer_content li .trouble_footer_content_txt_treat2{
    background: -webkit-linear-gradient(0deg, #CEAD3B 0%, #D7C78B 100%);
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
}

/*---------------------------------
    Mobile / スマホ版
----------------------------------*/
@media screen and (max-width:767px){
    .trouble{
        padding: 60px 10px 15px 10px;
    }
    .trouble_content_head{
        width: 90%;
        margin: 0 auto;
    }
    .trouble_content_head img{
        height: 10vh;
    }
    .trouble_content_body_inner{
        margin-top: 10%;
        padding:15px;
    }
    .trouble_content_body_inner_left{
        margin-right: 10px;
    }
    .trouble_content_body_inner_right h2{
        font-size:0.85em;
    }
    .trouble_content_body_inner_right p{
        font-size:0.725em;
        line-height: 1.25;
    }
    .trouble_footer{
        margin-top: 10%;
    }
    .trouble_footer img{
        height: 8vh;
    }
    .trouble_footer_content{
        column-gap: 4%;
        margin-top: 10%;
    }
    .trouble_footer_content li{
        width: 48%;
        padding: 10px 15px;
        margin-bottom: 10px;
    }
    .trouble_footer_content li .trouble_footer_content_num{
        font-size:1.2em;
        margin-bottom: 10px;
    }
    .trouble_footer_content li .trouble_footer_content_txt{
        font-size:1.2em;
    }
}

/**=======================
CTA
=======================**/
.cta{
    background:#333448;
    padding:80px 0 50px;
}

.cta > .cta-image picture{
    text-align: center;
}

.cta > .cta-image picture img{
    margin:auto;
}

.cta_main_bottom{
    max-width: 700px;
    margin: 30px auto 0;
}
.cta_main_bottom img{
    cursor: pointer;
}

/*---------------------------------
    Mobile / スマホ版
----------------------------------*/
@media screen and (max-width:767px){
    .cta{
        padding:10% 0 5%;
    }
}

/*!******************************************************************************!*\
  !*** css ./node_modules/css-loader/dist/cjs.js!./src/assets/css/faq.css ***!
  \******************************************************************************/
#faq{
    background-color: #fff;
    padding: 120px 8vw;
}

.faq_title{
    text-align: center;
}

.faq_title h2 img {
    height: 70px;
    width: auto;
}

.faq_content{
    max-width: 1100px;
    margin: 70px auto 0;
}
.faq_content .faq_wrap{
    margin-bottom: 5px;
}
.faq_content .faq_q{
    background:#22255C;
    padding:20px 30px;
    position: relative;
    font-size: 1.25em;
    font-weight: bold;
    cursor: pointer;
    color:#fff;
}
.faq_content .faq_q:after{
    content:"";
    position: absolute;
    top: 50%;
    right: 30px;
    display: inline-block;
    vertical-align: middle;
    color: #fff;
    line-height: 1;
    width: 10px;
    height: 10px;
    border: 0.1em solid currentColor;
    border-left: 0;
    border-bottom: 0;
    box-sizing: border-box;
    transform: translate(0,-50%) rotate(135deg);
}

.faq_content .faq_q.active:after{
    transform: translate(0, -50%) rotate(-45deg);
}

.faq_content .faq_a{
    display: none;
    margin: 0;
    padding:20px 30px;
    border:1px solid #22255C;
    border-top: none;
    line-height: 1.75;
    font-size: 20px;
}


/*---------------------------------
    Tablet / タブレット版
----------------------------------*/
@media screen and (max-width:1100px){
    #faq{
        padding: 120px 40px;
    }

    .faq_content{
        /* padding: 0 40px; */
    }
}

/*---------------------------------
    Mobile / スマホ版
----------------------------------*/
@media screen and (max-width:767px){
    #faq{
        padding: 30px 10px;
    }

    .faq_title h2 img{
        height: 30px;
    }

    .faq_content{
        margin-top: 34px;
        padding: 0;
    }

    .faq_content .faq_wrap{
        margin-bottom: 10px;
    }

    .faq_content .faq_q{
        font-size: 1.1em;
        padding:10px 15px;
    }
    .faq_content .faq_a{
        font-size: 0.9em;
        padding:10px 15px;
        line-height: 1.5;
    }
}
/*!*******************************************************************************!*\
  !*** css ./node_modules/css-loader/dist/cjs.js!./src/assets/css/schedule.css ***!
  \*******************************************************************************/
#schedule{
    background-color: #fff;
    padding: 100px 0 0;
    position: relative;
}

.schedule_title{
    text-align: center;
}

.schedule_title h2 img{
    height: 70px;
    width: auto;
}


.schedule_content{
    text-align: center;
    z-index: 1;
}

.schedule_content h3{
    width: 470px;
    text-align: center;
    font-size: 20px;
    line-height: 1;
    letter-spacing: 0.06rem;
    border-radius: 20px;
    margin-top: 70px;
    padding: 0.5em 0;
}

.schedule_content video{
    width: 720px;
    height: 405px;
    display: block;
    margin: 60px auto;
}


/*---------------------------------
    Timeline / 1日の流れ
----------------------------------*/
/*タイムライン全体の設定*/
.timeline{
	/* max-width: 400px; */
	max-width:1100px;
	margin:70px auto;
	padding:0 100px;
}

.timeline li{
    /*線の起点とするためrelativeを設定*/
    position: relative;
	list-style: none;
	padding:0 0 35px 0;
}

.timeline li:last-child{
    padding-bottom: 0;
}

.timeline li:last-child dl{
    align-items: end;
}

.timeline dl{
	margin:0 0 0 0;
    display: flex;
    column-gap: 60px;
    position: relative;
}

.timeline dt{
    font-size: 30px;
}

.timeline dd{
    display: flex;
    border-radius: 20px;
    margin: 0;
}

.timeline li:nth-child(even) dd img{
    order: 2;
}

.timeline li:nth-child(even) dd .timeline_text{
    order: 1;
}
.timeline dd img{
    width: 39.1%;
    object-fit: cover;
}

.timeline li dd img{
    border-radius: 20px;
}

.timeline dd .timeline_text{
    padding: 15px 30px 15px;
    text-align: left;
}

.timeline dd .timeline_text h4{
    font-size: 21px;
    line-height: 1.8;
    letter-spacing: 0.08rem;
    font-weight: bold;
}

.timeline dd .timeline_text p{
    margin-top: 20px;
    font-size: 18px;
    line-height: 1.75;
    text-align: justify;
}

/*---------------------------------
    Tablet / タブレット
----------------------------------*/
@media screen and (max-width:1100px){
    .timeline{
        padding: 0 40px;
    }
}

/*---------------------------------
    Mobile / スマホ
----------------------------------*/
@media screen and (max-width:767px){
    #schedule{
        padding: 60px 20px;
        background-size: 0;
    }

    .schedule_title h2 img{
        height:30px;
    }

    .schedule_content h3{
        width: 100%;
        font-size: 16px;
        margin-top: 34px;
    }

    .schedule_content video{
        width: 100%;
        height: auto;
        aspect-ratio: 350/196;
        display: block;
        margin: 34px auto 26px;
    }

    /* 1日の流れ */
    .timeline{
        margin: 34px auto 0;
        padding: 0;
    }

    .timeline li dl{
        margin-left: 0;
        column-gap: 15px;
    }

    .timeline li dt{
        font-size: 20px;
        margin-top: -3px;
    }

    .timeline li dd{
        flex-wrap: wrap;
    }

    .timeline li dd img{
        border-radius: 10px;
        width: 100%;
        margin-right: 0;
    }

    .timeline li:nth-child(even) dd img{
        margin-right: 0;
        margin-left: 0;
        order: 1;
    }

    .timeline li dd .timeline_text{
        width: 100%;
        padding: 0;
        order: 0;
        margin-top: 5%;
    }

    .timeline li dd .timeline_text h4{
        font-size:1.15em;
        line-height: 1.5;
    }

    .timeline li dd .timeline_text p{
        margin-top: 5px;
        font-size:0.9em;
    }

    .timeline li::after{
        top: 0;
    }

    .timeline li:last-child::after{
        bottom: 2px;
    }
}
/*!****************************************************************************!*\
  !*** css ./node_modules/css-loader/dist/cjs.js!./src/assets/css/slick.css ***!
  \****************************************************************************/
/* Slider */
.slick-slider
{
    position: relative;

    display: block;
    box-sizing: border-box;

    -webkit-user-select: none;
       -moz-user-select: none;
        -ms-user-select: none;
            user-select: none;

    -webkit-touch-callout: none;
    -khtml-user-select: none;
    -ms-touch-action: pan-y;
        touch-action: pan-y;
    -webkit-tap-highlight-color: transparent;
}

.slick-list
{
    position: relative;

    display: block;
    overflow: hidden;

    margin: 0;
    padding: 0;
}
.slick-list:focus
{
    outline: none;
}
.slick-list.dragging
{
    cursor: pointer;
    cursor: hand;
}

.slick-slider .slick-track,
.slick-slider .slick-list
{
    -webkit-transform: translate3d(0, 0, 0);
       -moz-transform: translate3d(0, 0, 0);
        -ms-transform: translate3d(0, 0, 0);
         -o-transform: translate3d(0, 0, 0);
            transform: translate3d(0, 0, 0);
}

.slick-track
{
    position: relative;
    top: 0;
    left: 0;

    /* display: block; */
    margin-left: auto;
    margin-right: auto;
    display: flex;
}
.slick-track:before,
.slick-track:after
{
    /* display: table; */

    /* content: ''; */
}
.slick-track:after
{
    /* clear: both; */
}
.slick-loading .slick-track
{
    visibility: hidden;
}

.slick-slide
{
    display: none;
    /* float: left; */

    /* height: 100%; */
    min-height: 1px;
}

.slick-slide > div{
    height: 100%;
}

[dir='rtl'] .slick-slide
{
    float: right;
}
.slick-slide img
{
    display: block;
}
.slick-slide.slick-loading img
{
    display: none;
}
.slick-slide.dragging img
{
    pointer-events: none;
}
.slick-initialized .slick-slide
{
    display: block;
}
.slick-loading .slick-slide
{
    visibility: hidden;
}
.slick-vertical .slick-slide
{
    display: block;

    height: auto;

    border: 1px solid transparent;
}
.slick-arrow.slick-hidden {
    display: none;
}


/*# sourceMappingURL=main.css.map*/