/*---------------------------------------------------------
                        共通
---------------------------------------------------------*/
/*-----------共通-----------*/
/*カラーパレット*/
:root {
  --color-font:#020202;
  --color-blue:#0071bc;
  --font-size-xsmall: 0.63rem;
  --font-size-small:  0.85rem;
  --font-size-normal:  1.1rem;
  --font-size-large: 1.3rem;
  --font-size-xlarge: 1.5rem;
  --font-size-xxlarge: 1.8rem;
}

/* 箇条書き */
p.items, ul.items li, span.items{
  position: relative;
  padding-left: 0.85em;
  box-sizing: border-box;
  text-align: left;
  text-align: justify;
  text-justify: inter-ideograph;
}
  /* 点・四角 */
  p.items.dots, ul.items.dots > li,p.items.square, ul.items.square > li{
    position: relative;
    box-sizing: border-box;
  }
  p.items.dots::before,ul.items.dots > li::before{
    position: absolute;
    content: "・";
    display: block;
    margin-left: -1em;
  }
  p.items.square::before,ul.items.square > li::before{
    position: absolute;
    content: "◼︎";
    display: block;
    font-size: 70%;
    line-height: 2;
  }
  /* 米印 */
  p.items.asterisk::before,ul.items.asterisk > li::before, span.items.asterisk::before{
    position: absolute;
    content: "※";
    display: inline-block;
    margin-left: -1em;
  }
  span.items.asterisk::before{
    top: -3px;
    left: 1.1em;
  }
    .nowrap{
      display: block;
      border: none;
      text-indent: 1000%;
      white-space: nowrap;
      overflow: hidden;
      background-repeat: no-repeat;
      background-size: contain;
      background-position: center;
    }


/*-----------レイアウト-----------*/
.freeContents{
  background: linear-gradient(-30deg,#71bbeb,#0071bc);
  overflow-x: hidden;
}


/*-----------ヘッダー-----------*/
h1#LP_header{
  display: block;
  height: 35vw;
  min-height: 500px;
  max-height: 600px;
  background: linear-gradient(61deg, #3fa9f5, #91cdf9, #77c1f7, #ffffff);
}
  h1#LP_header img{
    height: 35vw;
    min-height: 500px;
    max-height: 600px;
    object-fit: cover;
    margin: 0 auto;
  }
  @media screen and (min-width: 2000px) {
    h1#LP_header img{
      display: none;
    }
    h1#LP_header{
      position: relative;
      background-image: url("https://img2.tour.l-tike.com/contents/campaign/newyear2026/img/header_light.jpg");
      background-position: center bottom;
      background-size: cover;
      background-blend-mode: hard-light;
    }
    h1#LP_header::before{
      position: absolute;
      display: block;
      content: "";
      width: 100vw;
      height: 35vw;
      min-height: 500px;
      max-height: 600px;
      bottom: 0;
      background-image: url("https://img2.tour.l-tike.com/contents/campaign/newyear2026/img/header_main.png");
      background-repeat: no-repeat;
      background-position: center;
    }
    h1#LP_header::after{
      position: absolute;
      display: block;
      content: "";
      width: 100vw;
      height: 35vw;
      min-height: 500px;
      max-height: 600px;
      bottom: 0;
      background-image: url("https://img2.tour.l-tike.com/contents/campaign/newyear2026/img/header_sakura.png");
      background-position: center;
      background-repeat: repeat-x;
    }
}

/*-----------内容-----------*/
#LP_cont{
  width: 76vw;
  max-width: 900px;
  margin: 0 auto;
  padding: 4vw 2.8vw 8vw;
  background-color: #fff;
}
  .LP_top h2{
    width: 94%;
    height: 0;
    padding-bottom: 13%;
    margin: 0 auto;
    background-image: url("https://img2.tour.l-tike.com/contents/campaign/newyear2026/img/top_h2.png");
  }
  .LP_top h2 + p{
    font-size: var(--font-size-large);
    text-align: center;
    margin-bottom: 5vw;
  }
  .LP_cp{
    display: -webkit-flex; display: -moz-flex; display: -ms-flex; display: -o-flex; display: flex;
    justify-content: space-between;
  }
    .LP_cp > li{
      width: 32.5%;
      height: 0;
      padding-bottom: 49.7%;
    }    
    .LP_cp li:nth-child(1){ background-image: url("https://img2.tour.l-tike.com/contents/campaign/newyear2026/img/cp01.jpg"); }
    .LP_cp li:nth-child(2){ background-image: url("https://img2.tour.l-tike.com/contents/campaign/newyear2026/img/cp02.jpg"); }
    .LP_cp li:nth-child(3){ background-image: url("https://img2.tour.l-tike.com/contents/campaign/newyear2026/img/cp03.jpg"); }

  .LP_term {
    padding-bottom: 5vw;
  }
    .LP_term h3{
      width: fit-content;
      height: 2em;
      padding: 0 2em;
      margin: 5vw auto 1vw;
      background-image: url("https://img2.tour.l-tike.com/contents/campaign/newyear2026/img/term_h3.png");
    }
    .LP_term div{
      width: fit-content;
      margin: 0 auto;
    }
      .LP_term div p{
        display: inline-block;
        font-size: var(--font-size-large);
        font-weight: bold;
      }
      .LP_term div p:first-child{
        position: relative;
        padding-right: 2em;
      }
      .LP_term div p:first-of-type:after{
        position: absolute;
        display: block;
        content: "";
        width: 0;
        height: 0;
        right: 0.7em;
        top: 1em;
        border-style: solid;
        border-top: 6px solid transparent;
        border-bottom: 6px solid transparent;
        border-left: 10px solid var(--color-font);
        border-right: 0;
      }
      .LP_term div p span{
        font-size: 1.2em;
      }
      .LP_term div p b{
        font-size: 1.5em;
      }
    .LP_term div + p{
      text-align: center;
      font-size: var(--font-size-large);
      font-weight: bold;
    }

/*-----------詳細-----------*/
#LP_detail .box{
  border: 2px solid var(--color-blue);
  margin-top: 3em;
  margin-bottom: 4em;
  padding: 0 1.25em 1em 1em;
}
  #LP_detail .box p,#LP_detail .box li{
    font-size: var(--font-size-normal);
  }

  #LP_detail h2{
    position: relative;
    display: block;
    font-size: var(--font-size-xlarge);
    line-height: 1.2;
    color: var(--color-blue);
    width: fit-content;
    height: fit-content;
    margin: -0.85rem auto 1.5rem;
    padding: 2px 30px;
    background-color: #fff;
  }
  #LP_detail h2::before{
    position: absolute;
    display: block;
    content: "";
    width: calc(100% + 2px);
    height: calc(100% + 2px);
    top: 0;
    left: 0;
    border: 2px solid var(--color-blue);
  }
  #LP_detail h2::after{
    position: absolute;
    display: block;
    content: "";
    width: calc(100% - 10px);
    height: calc(100% + 4px);
    top: -1px;
    left: 5px;
    border: 4px solid #fff;
  }

  #condi ul li{
    padding-bottom: 0.5em;
  }
  #way ol{
    padding: 0 1vw;
  }
    #way li{
      display: -webkit-flex; display: -moz-flex; display: -ms-flex; display: -o-flex; display: flex;
      justify-content: left;
      padding-bottom: 1em;
    }
    #way li:first-child{
      margin-bottom: 1em;
      border-bottom: 1px solid #b3b3b3;
    }
      #way li h3{
        display: block;
        width: 18%;
        height: fit-content;
        background-size: 4em;
        background-position: center;
      }
      #way li:nth-child(1) h3{ background-image: url("https://img2.tour.l-tike.com/contents/campaign/newyear2026/img/way_step1.png"); }
      #way li:nth-child(2) h3{ background-image: url("https://img2.tour.l-tike.com/contents/campaign/newyear2026/img/way_step2.png"); }
      #way li p{
        width: 75%;
        padding-left: 2%;
      }
        #way li:nth-child(1) a{
          position: relative;
          display: block;
          width: fit-content;
          margin-top: 0.5em;
          padding: 2px 10px 2px 12px;
          border-radius: 3px;
          color: var(--color-blue);
          font-weight: bold;
          text-decoration: none;
        }
        #way li:nth-child(1) a::before{
          position: absolute;
          display: block;
          content: "";
          top: 0.6em;
          left: 0;
          width: 0;
          height: 0;
          border-style: solid;
          border-top: 4px solid transparent;
          border-bottom: 4px solid transparent;
          border-left: 6px solid var(--color-blue);
          border-right: 0;
        }
        #way li:nth-child(2) a{
          display: block;
          width: 85%;
          margin-top: 1em;
        }
    #announce .items{
      padding-top: 1em;
    }
      #announce .items li{
        padding-bottom: 0.25em;
      }

/* ---------注意事項--------- */
#LP_notice{
  width: 85%;
  margin: 0 auto 1vw;
  padding-top: 2vw;
}
#LP_notice h2{
  margin-bottom: 1.5em;
}
  #LP_notice h3{
    font-size: 1rem;
  }
  #LP_notice > p, #LP_notice li{
    text-align: justify;
    text-justify: inter-ideograph;
  }
  #LP_notice p{
    padding-bottom: 2.5em;
  }
    #LP_notice h3{
      padding-bottom: 0.5em;
    }
    #LP_notice p + ul{
      margin-top: -2em;
    }
    #LP_notice ol > li:last-child{
      padding-top: 2.5em;
    }
    #LP_notice li:nth-child(3) li{
      padding-bottom: 0.5em;
    }

/* ---------予約サイトへのリンク--------- */
#LP_link{
  display: block;
  width: 60%;
  margin: 0 auto;
}


/*---------------------------------------------------------
                        SP
---------------------------------------------------------*/
@media screen and (max-width: 750px){
  :root {
  --font-size-xsmall: 0.63rem;
  --font-size-small:  0.85rem;
  --font-size-normal:  1rem;
  --font-size-large: 1.15rem;
  --font-size-xlarge: 1.3rem;
  --font-size-xxlarge: 1.8rem;
}
  .pc-only{
    display: none;
  }
  body{
    overflow-x: hidden;
  }
  /* ヘッダー */
  h1#LP_header {
    width: 100vw;
    height: 133vw;
    background-image: url("https://img2.tour.l-tike.com/contents/campaign/newyear2026/img/header-sp.jpg");
    background-size: contain;
    background-repeat: no-repeat;
    background-color: #fff;
  }
   h1#LP_header img{
    display: none;
   }

   .LP_top h2{
    margin-top: 1em;
    padding-bottom: 29.2%;
    background-image: url("https://img2.tour.l-tike.com/contents/campaign/newyear2026/img/top_h2-sp.png");
  }
  .LP_top h2 + p{
    padding-bottom: 5vw;
  }

  #LP_cont{
    width: 100vw;
  }
  .LP_cp > li a{
    width: 60%;
  }

  /* box */
  #LP_detail h2{
    margin-top: -1rem;
    padding: 2px 20px;
  }

  /* キャンペーン */
  .LP_cp{
    flex-direction: column;
  }
  .LP_cp > li{
    display: block;
    width: 100%;
    height: 0;
    margin: 0 auto 5vw;
  }
  .LP_cp li:nth-child(1){ background-image: url("https://img2.tour.l-tike.com/contents/campaign/newyear2026/img/cp01-sp.png"); padding-bottom: 119.5%;}
  .LP_cp li:nth-child(2){ background-image: url("https://img2.tour.l-tike.com/contents/campaign/newyear2026/img/cp02-sp.png"); padding-bottom: 100%;}
  .LP_cp li:nth-child(3){ background-image: url("https://img2.tour.l-tike.com/contents/campaign/newyear2026/img/cp03-sp.jpg"); padding-bottom: 126.9%;}
  
  /* 詳細 */
  #way li{
    flex-direction: column;
  }
    #way li h3{
      width: 100%;
    }
    #way li p{
      width: 100%;
      padding-left: 0;
      margin-top: 0.5em;
    }
    #way li a{
      display: block;
      width: 100%!important;
    }
    #way li:nth-child(1) a{
      font-size: 4vw;
    }
    #LP_detail .box{
      padding: 0 1em 1em 1em;
    }
  
  #LP_notice, #LP_link{
    width: 95%;
  }
  #LP_link{
    margin-bottom: 10vw;
  }
}




/*---------------------------------------------------------
                        PC
---------------------------------------------------------*/
@media screen and (min-width: 750px){
.sp-only, .sp-only *{
  display: none!important;
  height: 0px!important;
  padding: 0px!important;
  margin: 0px!important;
}

/* ボタンの影 */
.freeContents .shadow{
  border-radius: 8%;
  box-shadow: 5px 5px 5px rgba(0, 0, 0, 0.2);
}
.freeContents .shadow:hover{
  box-shadow: none;
  position: relative;
}
  .freeContents .shadow:hover img{
    margin-top: 5px;
    margin-left: 5px;
    margin-right: -5px;
  }
  #detail_01 a:hover{
    margin-top: -5px;
  }
}