@charset "utf-8";

/* ======================================================
 * walleca.css
 * ------------------------------------------------------
 * @media print, screen and (min-width: 768px)
 * - Page Component
 * - Clearfix
 * PC Media Queries
 * @media only screen and (max-width: 767px)
 * - Page Component
 * - Clearfix
 * SP Media Queries
 * Print
====================================================== */

/* ======================================================
 * Font
====================================================== */
.LPSLC_main, .LPSLC_date_text,
.LPSLC_feature, .LPSLC_place,
.LPSLC_point_title {
  font-family: "Noto Sans", "Noto Sans CJK JP", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
}

/* ======================================================
 * PC
====================================================== */
@media print, screen and (min-width: 768px) {
  /* ------------------------------------------------------
   * Override
  ------------------------------------------------------ */
  .column_image .image-set.mt-0 {
    margin-top: 0;
  }
  
  .list-note {
    margin-top: 35px;
  }
  
  /* ------------------------------------------------------
   * Page Component
  ------------------------------------------------------ */
  /* ----- LPSLC_main ----- */
  .LPSLC_main {
    background: linear-gradient(90deg, #f2fcff , #e6f3f7);
  }
  .LPSLC_main_inner {
    display: flex;
    flex-flow: row nowrap;
    align-items: center;
  }
  .LPSLC_main_head {
    width: calc((100% - 36px) / 2);
    margin-right: 36px;
    padding: 25px 20px 15px;
    text-align: center;
  }
  .LPSLC_main_body {
    width: calc((100% - 36px) / 2);
    padding: 20px min(calc((50/1280)*100vw),50px) 20px 0;
  }
  .LPSLC_main_lead {
    width: 100%;
    padding: 1px 10px 3px;
    border-radius: 20px;
    background-color: #719aa7;
    color: #fff;
    font-size: 2rem;
    font-weight: bold;
    text-align: center;
  }
  .LPSLC_main_title {
    margin-top: 18px;
    font-size: 5.2rem;
    font-weight: bold;
    line-height: 1.3;
  }
  .LPSLC_main_subtitle {
    margin-top: 12px;
    font-size: 2rem;
    line-height: 1.4;
  }
  .LPSLC_main_body_image {
    margin-top: 20px;
    padding-top: 35px;
    border-top: 1px solid #ccc;
  }

  /* ----- LPSLC_date_text ----- */
  .LPSLC_date_text {
    font-size: 1.8rem;
    font-weight: bold;
    text-align: right;
    margin-top: 14px;
  }
  
  /* ----- LPSLC_feature ----- */
  .LPSLC_feature {
    display: flex;
    flex-flow: row wrap;
    margin: 60px 0;
  }
  .LPSLC_feature_item {
    display: flex;
    flex-flow: row nowrap;
    align-items: center;
    position: relative;
    width: calc((100% - 36px) / 2);
    padding: min(calc((20/1280)*100vw),20px) 10px min(calc((20/1280)*100vw),20px) 0;
    background-color: #fffbc7;
  }
  .LPSLC_feature_item:nth-of-type(2n) {
    margin-left: 36px;
  }
  .LPSLC_feature_image01,
  .LPSLC_feature_image02 {
    width: min(calc((273/1280)*100vw),273px);
    height: 100%;
  }
  .LPSLC_feature_image01 > img,
  .LPSLC_feature_image02 > img {
    position: absolute;
  }
  .LPSLC_feature_image01 > img {
    width: min(calc((190/1280)*100vw),190px);
    top: max(calc((-36/1280)*100vw),-36px);
    left: min(calc((56/1280)*100vw),56px);
  }
  .LPSLC_feature_image02 > img {
    width: min(calc((142/1280)*100vw),142px);
    top: max(calc((-42/1280)*100vw),-42px);
    left: min(calc((84/1280)*100vw),84px);
  }
  .LPSLC_feature_lead {
    margin-left: 18px;
    font-size: 2.4rem;
    font-weight: bold;
    line-height: 1.55;
  }
  
  /* ----- LPSLC_place ----- */
  .LPSLC_place {
    margin-top: 82px;
  }
  .LPSLC_place_title {
    padding: 3px 10px 7px;
    border-radius: 30px;
    background-color: #8c8c8c;
    color: #fff;
    font-size: 2rem;
    font-weight: bold;
    text-align: center;
  }
  .LPSLC_place_title .LPSLC_place_em {
    margin-left: 20px;
    font-style: normal;
    font-size: 2.6rem;
  }
  .LPSLC_place_column {
    display: flex;
    flex-flow: row wrap;
    margin-top: 20px;
  }
  .LPSLC_place_item {
    width: calc((100% - 108px) / 4);
    margin-right: 36px;
  }
  .LPSLC_place_item:nth-of-type(4n) {
    margin-right: 0;
  }
  
  /* ----- LPSLC_point ----- */
  .LPSLC_point {
    display: flex;
    flex-flow: row wrap;
    margin-top: 70px;
  }
  .LPSLC_point_item {
    width: calc((100% - 72px) / 3);
    margin-right: 36px;
    border-top: 4px dotted #719aa7;
    padding-top: 15px;
  }
  .LPSLC_point_item:nth-of-type(3n) {
    margin-right: 0;
  }
  .LPSLC_point_title {
    display: flex;
    flex-flow: row nowrap;
    align-items: center;
  }
  .LPSLC_point_title_badge {
    display: flex;
    flex-flow: column;
    justify-content: center;
    align-items: center;
    flex-shrink: 0;
    width: 60px;
    height: 60px;
    margin-right: 18px;
    border-radius: 50%;
    background-color: #719aa7;
    color: #fff;
    font-size: 1.2rem;
    font-weight: bold;
    text-align: center;
    line-height: 1;
  }
  .LPSLC_point_title_badge > em {
    display: block;
    margin-top: 2px;
    font-size: 2.4rem;
    font-style: normal;
    line-height: 1;
  }
  .LPSLC_point_title_text {
    color: #719aa7;
    font-size: 2.4rem;
    font-weight: bold;
    line-height: 1.4;
  }
  .LPSLC_point_image {
    margin-top: 20px;
  }
  .LPSLC_point_text {
    margin-top: 15px;
    line-height: 1.6;
  }
  .LPSLC_point_detail {
    display: flex;
    flex-flow: row wrap;
    margin-top: 20px;
  }
  .LPSLC_point_detail_item {
    width: 50%;
    text-align: center;
  }
  .LPSLC_point_detail_image {
    padding: 5px min(calc((33/1280)*100vw),33px) 0;
  }
  .LPSLC_point_detail_badge {
    display: inline-block;
    margin-top: 25px;
    padding: 6px 18px 4px;
    border-radius: 20px;
    background-color: #719aa7;
    color: #fff;
    font-size: 1.8rem;
    font-weight: bold;
    text-align: center;
    line-height: 1.2;
  }
  .LPSLC_point_detail_text {
    margin-top: 10px;
    line-height: 1.6;
  }
  
  /* ----- LPSLC_heading ----- */
  .LPSLC_heading {
    margin-top: 2.8em;
    border-bottom: 2px solid #ddd;
    padding: 8px 0;
  }
  .LPSLC_heading .LPSLC_heading_title {
    font-size: 2.8rem;
    font-weight: bold;
  }
  
  
  /* ------------------------------------------------------
   * Clearfix
  ------------------------------------------------------ */
  .clearfix::after{
    display: block;
    clear: both;
    content: "";
  }
}

/* ======================================================
 * PC Media Queries
====================================================== */
@media screen and (min-width: 768px) and (max-width: 1280px) {
}

/* ======================================================
 * SP
====================================================== */
@media only screen and (max-width: 767px) {
  
  /* ------------------------------------------------------
   * Page Component
  ------------------------------------------------------ */
  /* ----- LPSLC_main ----- */
  .LPSLC_main {
    margin: 0 -15px;
    background: linear-gradient(90deg, #f2fcff , #e6f3f7);
  }
  .LPSLC_main_inner {
    padding: 10px 15px 25px;
  }
  .LPSLC_main_head {
    padding: 0 28px;
  }
  .LPSLC_main_body {
  }
  .LPSLC_main_lead {
    width: 100%;
    margin-top: 15px;
    padding: 5px 8px 7px;
    border-radius: 20px;
    background-color: #719aa7;
    color: #fff;
    font-size: 1.3rem;
    font-weight: bold;
    text-align: center;
  }
  .LPSLC_main_title {
    margin-top: 10px;
    font-size: 3.2rem;
    font-weight: bold;
    line-height: 1.3;
    text-align: center;
  }
  .LPSLC_main_subtitle {
    margin-top: 6px;
    font-size: 1.3rem;
    line-height: 1.4;
    text-align: center;
    letter-spacing: .2px;
  }
  .LPSLC_main_body_image {
    margin-top: 10px;
    padding-top: 23px;
    border-top: 1px solid #ccc;
  }

  /* ----- LPSLC_date_text ----- */
  .LPSLC_date_text {
    font-size: 1.4rem;
    font-weight: bold;
    text-align: right;
    margin-top: 14px;
  }
  
  /* ----- LPSLC_feature ----- */
  .LPSLC_feature {
    display: flex;
    flex-flow: row wrap;
    margin: 55px 0 0;
  }
  .LPSLC_feature_item {
    position: relative;
    width: calc((100% - 15px) / 2);
    padding: 10px 0;
    background-color: #fffbc7;
  }
  .LPSLC_feature_item:nth-of-type(2n) {
    margin-left: 15px;
  }
  .LPSLC_feature_image01,
  .LPSLC_feature_image02 {
    height: 130px;
    text-align: center;
    margin-top: -40px;
  }
  .LPSLC_feature_image01 > img {
    width: 119px;
  }
  .LPSLC_feature_image02 > img {
    width: 90px;
  }
  .LPSLC_feature_lead {
    margin-top: 3px;
    font-size: 1.6rem;
    font-weight: bold;
    line-height: 1.6;
    text-align: center;
  }
  
  /* ----- LPSLC_place ----- */
  .LPSLC_place {
    margin-top: 35px;
  }
  .LPSLC_place_title {
    display: flex;
    flex-flow: column;
    padding: 6px 10px 7px;
    border-radius: 30px;
    background-color: #8c8c8c;
    color: #fff;
    font-size: 1.3rem;
    font-weight: bold;
    text-align: center;
  }
  .LPSLC_place_title .LPSLC_place_em {
    margin-top: 2px;
    font-style: normal;
    font-size: 1.7rem;
  }
  .LPSLC_place_column {
    display: flex;
    flex-flow: row wrap;
    margin-top: 15px;
  }
  .LPSLC_place_item {
    width: calc((100% - 15px) / 2);
    margin-right: 15px;
  }
  .LPSLC_place_item:nth-of-type(2n) {
    margin-right: 0;
  }
  .LPSLC_place_item:nth-of-type(n+3) {
    margin-top: 20px;
  }
  
  /* ----- LPSLC_point ----- */
  .LPSLC_point {
    margin-top: 45px;
  }
  .LPSLC_point_item {
    border-top: 4px dotted #719aa7;
    padding-top: 15px;
  }
  .LPSLC_point_item + .LPSLC_point_item {
    margin-top: 30px;
  }
  .LPSLC_point_title {
    display: flex;
    flex-flow: row nowrap;
    align-items: center;
  }
  .LPSLC_point_title_badge {
    display: flex;
    flex-flow: column;
    justify-content: center;
    align-items: center;
    flex-shrink: 0;
    width: 50px;
    height: 50px;
    margin-right: 15px;
    border-radius: 50%;
    background-color: #719aa7;
    color: #fff;
    font-size: 1.1rem;
    font-weight: bold;
    text-align: center;
    line-height: 1;
  }
  .LPSLC_point_title_badge > em {
    display: block;
    margin-top: 1px;
    font-size: 2rem;
    font-style: normal;
    line-height: 1;
  }
  .LPSLC_point_title_text {
    color: #719aa7;
    font-size: 1.8rem;
    font-weight: bold;
    line-height: 1.4;
  }
  .LPSLC_point_image {
    margin-top: 20px;
  }
  .LPSLC_point_text {
    margin-top: 16px;
    line-height: 1.6;
  }
  .LPSLC_point_detail {
    display: flex;
    flex-flow: row wrap;
    margin-top: 25px;
  }
  .LPSLC_point_detail_item {
    width: calc((100% - 15px) / 2);
    margin-right: 15px;
    text-align: center;
  }
  .LPSLC_point_detail_item:nth-of-type(2n) {
    margin-right: 0;
  }
  .LPSLC_point_detail_image {
    padding: 0 26px;
  }
  .LPSLC_point_detail_badge {
    display: inline-block;
    margin-top: 25px;
    padding: 6px 18px 3px;
    border-radius: 20px;
    background-color: #719aa7;
    color: #fff;
    font-size: 1.5rem;
    font-weight: bold;
    text-align: center;
    line-height: 1.2;
  }
  .LPSLC_point_detail_text {
    margin-top: 10px;
    line-height: 1.6;
  }
  
  /* ----- LPSLC_heading ----- */
  .LPSLC_heading {
    margin-top: 1.8em;
    border-bottom: 2px solid #ddd;
    padding-bottom: 4px;
  }
  .LPSLC_heading .LPSLC_heading_title {
    font-size: 2rem;
    font-weight: bold;
  }
  
  /* ------------------------------------------------------
   * Clearfix
  ------------------------------------------------------ */
  .clearfix::after {
    display: block;
    clear: both;
    content: "";
  }
}


/* ======================================================
 * SP Media Queries
====================================================== */
@media screen and (min-width: 400px) and (max-width: 767.9px) {
}

@media only screen and (max-width: 330px) {
}


/* ======================================================
 * Print
====================================================== */
@media print {
}