﻿@charset "UTF-8";
  .main-area.top .main_img{
    width: 100%;
    height: auto;
    display: block;
    margin: 10px 0;
  }
  .main-area.top .topics_img.img_04,
  .main-area.top .topics_img.img_05,
  .main-area.top .topics_img.img_06,
  .main-area.top .topics_img.img_07{
    margin-top: 0;
  }
  .main-area {
    display: block;
    min-width: unset;
    max-width: unset;
  }
  
  .contALL .slick-dots li.slick-active button:before {
    background-color: #e2dbcc;
    content: "";
  }
  
  .contALL .slick-dots li button:before {
    background-color: #f2efe8;
    content: "";
    opacity: 1 !important;
  }
  
  .contALL {
    overflow-x: hidden;
    overflow-y: hidden;
    margin: 0 auto;
  }
  .contALL * {
    box-sizing: border-box;
  }
  .contALL li, .contALL summary {
    list-style: none;
  }
  .contALL img, .contALL video, .contALL picture {
    width: 100%;
    height: auto;
  }
  .contALL a, .contALL picture, .contALL figure {
    display: block;
  }
  .contALL a {
    color: inherit;
    text-decoration: none;
  }
  .contALL table {
    border-collapse: collapse;
  }
  .contALL img {
    width: 100%;
    height: auto;
    border: none;
    vertical-align: bottom;
  }
  @media all and (-ms-high-contrast: none) {
    .contALL video {
      transform: scale(1.02);
      transform-origin: top left;
    }
  }
  .contALL address {
    font-style: inherit;
  }
  .contALL *:focus {
    outline: none;
  }
  .contALL .whitebg {
    position: relative;
    z-index: 1;
  }
  .contALL .whitebg::after {
    content: "";
    position: absolute;
    width: 100%;
    height: 100%;
    background: #fff;
    top: 0;
    left: 0;
    z-index: -1;
  }
  .contALL .cont_inner {
    max-width: 1400px;
    width: 100%;
    margin: 0 auto;
  }
  
  @media screen and (max-width: 767px) {
    .contALL .pcOnly {
      display: none;
    }
    .contALL .spOnly {
      display: block;
    }
    .contALL .whitebg::after {
      display: none;
    }
    .contALL .cont_inner {
      max-width: none;
    }
  }
  @media screen and (min-width: 768px) {
    .slick-dots {
      margin: 0;
    }
    .contALL .spOnly {
      display: none;
    }
    .contALL img {
      image-rendering: -webkit-optimize-contrast;
    }
  }
  @media only screen and (min-width: 768px) and (max-width: 1400px) {
    html {
      font-size: 0.7142857143vw;
    }
  }
  .contALL .js-fade-Vr {
    transition-duration: 2.5s;
    opacity: 0;
    transform: translateY(100px);
  }
  
  .contALL .js-fade-Vr.active {
    opacity: 1;
    transform: translateY(0);
  }
  
  .contALL {
    font-family: "游ゴシック体", YuGothic, "游ゴシック Medium", "Yu Gothic Medium", "Yu Gothic", "Open Sans", "メイリオ", sans-serif;
    font-weight: 400;
    font-style: normal;
    color: #000;
  }
  
  .contALL {
    overflow: hidden;
    margin: 0;
    text-align: center;
    background: #f6f5f4;
    padding-top: 3.4rem;
    padding-bottom: 10rem;
    position: relative;
  }
  @media screen and (max-width: 767px) {
    .contALL {
      padding: calc(40 *(100vw / 750)) 0 calc(140 *(100vw / 750)) 0;
    }
  }
  .contALL .item_name {
    white-space: nowrap;
  }
  @media screen and (max-width: 767px) {
    .contALL {
      margin: 0;
    }
    .contALL .pcOnly {
      display: none;
    }
  }
  
  .bg_area {
    position: relative;
    z-index: 2;
  }
  
  .contALL::after {
    content: "";
    display: block;
    width: 116rem;
    height: 85rem;
    background: #FFFFFF;
    border-radius: 8.3rem;
    top: 3.4rem;
    left: 50%;
    transform: translateX(-50%);
    -webkit-transform: translateX(-50%);
    -ms-transform: translateX(-50%);
    position: absolute;
    z-index: 0;
  }
  @media screen and (max-width: 767px) {
    .contALL::after {
      width: calc(710 *(100vw / 750));
      height: calc(2349 *(100vw / 750));
      border-radius: calc(80 *(100vw / 750));
      top: calc(37 *(100vw / 750));
    }
  }
  
  .color_name {
    pointer-events: none;
  }
  
  .cont1 {
    margin-top: 6.1rem;
  }
  @media screen and (max-width: 767px) {
    .cont1 {
      margin-top: calc(68 *(100vw / 750));
    }
  }
  .cont1 .top--mainimg {
    width: 62.5rem;
    margin: 0 auto;
    pointer-events: none;
  }
  @media screen and (max-width: 767px) {
    .cont1 .top--mainimg {
      width: calc(578 *(100vw / 750));
    }
  }
  
  .cont2 {
    margin-top: 5rem;
  }
  @media screen and (max-width: 767px) {
    .cont2 {
      margin-top: calc(72 *(100vw / 750));
    }
  }
  .cont2--flexarea {
    width: 62.4rem;
    margin: 0 auto;
    display: flex;
    justify-content: space-between;
  }
  @media screen and (max-width: 767px) {
    .cont2--flexarea {
      width: calc(532 *(100vw / 750));
      margin: 0 auto;
      flex-direction: column;
    }
  }
  .cont2--flexarea .box1 {
    width: 23rem;
    pointer-events: none;
  }
  @media screen and (max-width: 767px) {
    .cont2--flexarea .box1 {
      width: calc(345 *(100vw / 750));
      margin: calc(70 *(100vw / 750)) auto 0;
    }
  }
  .cont2--flexarea .box2 {
    margin-top: 3.4rem;
  }
  @media screen and (max-width: 767px) {
    .cont2--flexarea .box2 {
      margin-top: calc(70 *(100vw / 750));
    }
  }
  .cont2--flexarea .box2 .hukidasi_txt {
    width: 32rem;
    pointer-events: none;
  }
  @media screen and (max-width: 767px) {
    .cont2--flexarea .box2 .hukidasi_txt {
      width: calc(532 *(100vw / 750));
    }
  }
  .cont2--flexarea .box2 .txt_area {
    margin-top: 4rem;
  }
  @media screen and (max-width: 767px) {
    .cont2--flexarea .box2 .txt_area {
      margin-top: calc(0 *(100vw / 750));
    }
  }
  .cont2--flexarea .box2 .txt_area li .icon01 {
    width: 2.4rem;
    margin: 0 auto;
    pointer-events: none;
  }
  @media screen and (max-width: 767px) {
    .cont2--flexarea .box2 .txt_area li .icon01 {
      width: calc(42 *(100vw / 750));
    }
  }
  .cont2--flexarea .box2 .txt_area li .icon02 {
    width: 3.1rem;
    margin: 0 auto;
    pointer-events: none;
  }
  @media screen and (max-width: 767px) {
    .cont2--flexarea .box2 .txt_area li .icon02 {
      width: calc(54 *(100vw / 750));
    }
  }
  .cont2--flexarea .box2 .txt_area li .icon03 {
    width: 3.2rem;
    margin: 0 auto;
    pointer-events: none;
  }
  @media screen and (max-width: 767px) {
    .cont2--flexarea .box2 .txt_area li .icon03 {
      width: calc(58 *(100vw / 750));
    }
  }
  .cont2--flexarea .box2 .txt_area li .icon_txt {
    font-size: 1.4rem;
    letter-spacing: 0.075em;
    font-feature-settings: "palt";
    font-family: "Hiragino Kaku Gothic ProN", "Hiragino Sans", メイリオ, Meiryo, "ＭＳ Ｐゴシック", "Helvetica Neue", Helvetica, Arial, sans-serif;
    font-weight: 400;
    font-style: normal;
    margin-top: 1.4rem;
  }
  @media screen and (max-width: 767px) {
    .cont2--flexarea .box2 .txt_area li .icon_txt {
      font-size: calc(28 *(100vw / 750));
      line-height: 1.8;
      margin-top: calc(20 *(100vw / 750));
    }
  }
  .cont2--flexarea .box2 .txt_area li:nth-child(2) {
    margin-top: 3.2rem;
  }
  @media screen and (max-width: 767px) {
    .cont2--flexarea .box2 .txt_area li:nth-child(2) {
      margin-top: calc(54 *(100vw / 750));
    }
  }
  .cont2--flexarea .box2 .txt_area li:nth-child(2) .icon_txt {
    line-height: 1.8;
    margin-top: 1rem;
  }
  @media screen and (max-width: 767px) {
    .cont2--flexarea .box2 .txt_area li:nth-child(2) .icon_txt {
      margin-top: calc(21 *(100vw / 750));
    }
  }
  .cont2--flexarea .box2 .txt_area li:last-child {
    margin-top: 2.6rem;
  }
  @media screen and (max-width: 767px) {
    .cont2--flexarea .box2 .txt_area li:last-child {
      margin-top: calc(52 *(100vw / 750));
    }
  }
  .cont2--flexarea .box2 .txt_area li:last-child .icon_txt {
    line-height: 1.8;
    margin-top: 1rem;
  }
  @media screen and (max-width: 767px) {
    .cont2--flexarea .box2 .txt_area li:last-child .icon_txt {
      margin-top: calc(16 *(100vw / 750));
    }
  }
  
  .cont3 {
    margin-top: 5rem;
  }
  @media screen and (max-width: 767px) {
    .cont3 {
      margin-top: calc(96 *(100vw / 750));
    }
  }
  .cont3 .dl_flexarea {
    width: 36.7rem;
    margin: 0 auto;
    display: flex;
    justify-content: space-between;
  }
  @media screen and (max-width: 767px) {
    .cont3 .dl_flexarea {
        width: 100%;
      flex-direction: column;
      align-items: center;
    }
  }
  .cont3 .dl_flexarea--logo_flex .icon_txt {
    width: 17.3rem;
    pointer-events: none;
  }
  @media screen and (max-width: 767px) {
    .cont3 .dl_flexarea--logo_flex .icon_txt {
      width: calc(323 *(100vw / 750));
    }
  }
  .cont3 .dl_flexarea--dl_iconflex {
    width: 17.4rem;
    display: flex;
    justify-content: space-between;
    align-items: center;
  }
  @media screen and (max-width: 767px) {
    .cont3 .dl_flexarea--dl_iconflex {
      width: calc(326 *(100vw / 750));
      margin-top: calc(19 *(100vw / 750));
    }
  }
  .cont3 .dl_flexarea--dl_iconflex .app_icon {
    width: 8.4rem;
  }
  @media screen and (max-width: 767px) {
    .cont3 .dl_flexarea--dl_iconflex .app_icon {
      width: calc(157 *(100vw / 750));
    }
  }
  .cont3 .dl_flexarea--dl_iconflex .google_icon {
    width: 8.4rem;
  }
  @media screen and (max-width: 767px) {
    .cont3 .dl_flexarea--dl_iconflex .google_icon {
      width: calc(157 *(100vw / 750));
    }
  }
  
  aside.viewall__box {
    margin: 11.8rem auto 12rem;
    text-align: center;
  }
  aside.viewall__box img {
    width: 33rem;
  }
  @media screen and (max-width: 767px) {
    aside.viewall__box {
      width: calc(660 *(100vw / 750));
      margin: calc(178 *(100vw / 750)) auto calc(160 *(100vw / 750));
    }
  }
  
  @media screen and (max-width: 767px) {
    div#breadcrumb {
      background: #fff;
      padding: calc(1 *(100vw / 750)) 0;
    }
  }
  
  @media screen and (max-width: 767px) {
    section.mainvisual_lp {
      background: #fff;
      padding-bottom: calc(128 *(100vw / 750));
    }
  }
  
  @media screen and (max-width: 767px) {
    footer#footer {
      background: #fff;
      padding-top: calc(36 *(100vw / 750));
    }
  }