@charset "UTF-8";
@media screen and (min-width: 769px) {
  /* --------------------------------------------------------------
   共通
  -------------------------------------------------------------- */
  .sponly {
    display: none;
  }
}
@media screen and (max-width: 768px) {
  /* --------------------------------------------------------------
   共通
  -------------------------------------------------------------- */
  body {
    min-width: 3.2rem;
    font-size: 0.15rem;
  }

  .container {
    width: calc(100% - .2rem);
  }

  .container_min {
    width: calc(100% - .2rem);
  }

  .pconly {
    display: none !important;
  }

  .cmn_header {
    padding: 0.135rem 0 0.17rem;
  }
  .cmn_header .tel img {
    width: 100%;
  }
  .cmn_header .tel .img01 {
    margin-right: 0.05rem;
    margin-left: 0.13rem;
  }

  .cmn_footer {
    padding: 0.265rem 0.38rem 1.5rem;
  }
  .cmn_footer .outer ul {
    margin-bottom: 0.435rem;
  }
  .cmn_footer .outer ul li {
    line-height: 1.71;
    font-size: 0.085rem;
  }
  .cmn_footer .outer ul li:not(:last-of-type) {
    margin-bottom: 0.15rem;
  }
  .cmn_footer .outer ul:first-of-type {
    margin-right: 0.315rem;
  }
  .cmn_footer small {
    font-size: 0.09rem;
  }

  .fixed_btn_area {
    display: block;
    width: 100%;
    position: fixed;
    bottom: 0;
    left: 0;
    z-index: 100;
  }
  .fixed_btn_area .inner {
    position: relative;
  }
  .fixed_btn_area .inner img {
    width: 100%;
  }
  .fixed_btn_area .inner .btn02 {
    position: absolute;
    top: 0.24rem;
    left: 0.3rem;
    width: 3.23rem;
  }
  .fixed_btn_area .inner .btn02 img img {
    transition: 0.2s ease;
  }
  .fixed_btn_area .inner .btn02:hover img {
    transform: scale(0.98, 0.98);
    transition: 0.2s ease;
  }

  .fixed_btn_link {
    display: block;
    margin: 5px;
    padding: 10px;
    color: #fff;
    text-align: center;
    text-decoration: none;
    background-color: #f893ae;
    border-radius: 5px;
  }

  .mv .txt img {
    width: 100%;
  }

  .sec01 {
    padding: 0.2rem 0;
  }
  .sec01 .box {
    width: auto;
    padding: 0.235rem 0.185rem 0.215rem;
    box-shadow: 0 0 0.15rem rgba(0, 0, 0, 0.3);
    border-radius: 0.1rem;
  }
  .sec01 .box h2 {
    font-size: 0.14rem;
    margin-bottom: 0.15rem;
  }
  .sec01 .box h2:after {
    width: 1.9rem;
    top: 0.07rem;
  }
  .sec01 .box p {
    line-height: 1.92;
    font-size: 0.15rem;
  }

  .subsc .tit {
    padding: 0.195rem 0 0.2rem;
  }
  .subsc .tit .img {
    width: 3.135rem;
  }
  .subsc .tit span {
    bottom: -0.2rem;
  }
  .subsc .tit span img {
    width: 0.3rem;
  }
  .subsc .txt01 {
    text-align: center;
    background: #e6e3e9;
  }
  .subsc .txt02 {
    padding: 0.15rem 0 0.125rem;
  }
  .subsc .txt02 .tit02 {
    margin-bottom: 0.1rem;
  }
  .subsc .txt02 .tit02 img {
    width: 2.04rem;
  }
  .subsc .txt02 .img {
    width: 3.345rem;
  }
  .subsc .txt03 {
    padding: 0.25rem 0 0.325rem;
  }
  .subsc .txt03 .container {
    width: calc(100% - .05rem);
  }
  .subsc .txt03 .outer {
    display: block;
  }
  .subsc .txt03 .outer .desc {
    margin-top: -0.4rem;
  }
  .subsc .txt03 .outer .desc img {
    width: 3.655rem;
  }
  .subsc .txt03 .inner {
    width: 3.44rem;
    padding: 1.8rem 0 0.2rem;
    margin: -0.3rem auto 0 0.155rem;
  }
  .subsc .txt03 .inner .btn a {
    display: block;
    margin-bottom: 10px;
  }
  .subsc .txt03 .inner .btn a img {
    width: 3.23rem;
    transition: 0.2s ease;
  }
  .subsc .txt03 .inner .btn a:hover img {
    transform: scale(0.98, 0.98);
    transition: 0.2s ease;
  }
  .subsc .txt03 .inner .desc02 {
    margin-bottom: 15px;
    position: relative;
  }
  .subsc .txt03 .inner .desc02 img {
    width: 3.695rem;
    position: absolute;
    top: -1.5rem;
    left: -0.14rem;
    max-width: initial;
  }
  .subsc .txt03 .inner .desc03 {
    margin-top: 0.1rem;
  }
  .subsc .txt03 .inner .desc03 img {
    width: 3.155rem;
  }

  .subsc02 .tit {
    padding: 0.05rem 0.2rem 0.1rem;
  }
  .subsc02 .tit span {
    bottom: -0.37rem;
  }
  .subsc02 .tit img:first-of-type {
    margin-bottom: 0.1rem;
  }
  .subsc02 .tit .outer {
    display: inline-grid;
  }

  .sec02 {
    padding: 0;
  }
  .sec02 p {
    padding-right: 0;
  }
  .sec02 img {
    width: 100%;
  }

  .sec03 {
    padding: 0.19rem 0 0.5rem;
    background-image: url("../images/sec03/bg_sp.jpg");
    background-position: top;
    position: relative;
  }
  .sec03 .tit {
    margin-bottom: -0.05rem;
  }
  .sec03 p {
    margin-bottom: -0.25rem;
  }
  .sec03 .logo {
    position: absolute;
    left: 50%;
    bottom: -0.35rem;
    transform: translateX(-50%);
    z-index: 10;
  }
  .sec03 .logo img {
    width: 1.35rem;
  }

  .sec04 {
    padding: 0.15rem 0 0.6rem;
    background-image: url("../images/sec04/bg_sp.png");
    background-position: top;
    position: relative;
  }
  .sec04 p {
    margin-bottom: -0.25rem;
  }
  .sec04 .logo {
    position: absolute;
    bottom: -0.1rem;
    left: 50%;
    transform: translateX(-50%);
  }
  .sec04 .logo img {
    width: 0.415rem;
  }

  .sec05 {
    padding: 0 0 0.425rem;
    background-image: url("../images/sec05/bg_sp.png");
  }
  .sec05 p {
    margin: 0 0.2rem;
  }
  .sec05 .pic {
    margin: 0.2rem 0.2rem 0.26rem;
  }

  .sec06 {
    padding: 0.215rem 0 0.225rem;
    background-image: url("../images/sec06/bg_sp.png");
    background-size: contain;
    background-position: center;
  }
  .sec06 .tit {
    margin-bottom: 0.25rem;
  }
  .sec06 .txt {
    margin-bottom: 0.165rem;
  }

  .sec07 {
    padding: 0.25rem 0 0.425rem;
    background-image: url("../images/sec07/bg_sp.png");
  }
  .sec07 .tit {
    margin-bottom: 0.035rem;
  }
  .sec07 .tit img {
    width: 2.75rem;
  }

  .sec08 {
    padding: 0.275rem 0 0;
    background-image: url("../images/sec08/bg_sp.png");
  }
  .sec08 .txt {
    margin-bottom: 0.15rem;
  }

  .sec09 {
    padding: 0.05rem 0 0.2rem;
  }

  .slide_sec {
    padding: 0 0.2rem 0.215rem;
  }
  .slide_sec .tit {
    margin-bottom: 0.1rem;
  }
  .slide_sec .tit img {
    margin-top: -0.15rem;
  }
  .slide_sec .slick-dots li {
    margin: 0;
  }
  .slide_sec .slick-dots li button:before {
    width: 0.085rem;
    height: 0.085rem;
  }
  .slide_sec .slick-dots {
    bottom: -0.35rem;
  }
  .slide_sec .slick_outer {
    position: relative;
  }
  .slide_sec .slick_outer .slider li img {
    width: 3.435rem;
    border-radius: 0.1rem;
  }
  .slide_sec .slick_outer .arrow {
    width: 3.7rem;
    margin: 0 auto;
    display: flex;
    justify-content: space-between;
    position: absolute;
    top: 2rem;
    left: 50%;
    transform: translateX(-50%);
  }
  .slide_sec .slick_outer .arrow .prev {
    width: 0.35rem;
  }
  .slide_sec .slick_outer .arrow .next {
    width: 0.35rem;
  }

  .sec10 {
    padding: 0 0 0.25rem;
    text-align: center;
  }
  .sec10 .txt01 {
    margin: -0.1rem 0 0.265rem;
    padding-left: 0.2rem;
  }
  .sec10 .txt02 {
    margin: 0 0.2rem;
  }

  .qa_sec {
    padding: 0.36rem 0 0.4rem;
  }
  .qa_sec .qa {
    padding: 0.42rem 0 0.25rem;
    margin-bottom: 0.475rem;
    border: 0.04rem solid #262e6a;
  }
  .qa_sec .qa .tit {
    margin: -0.57rem auto 0.2rem;
    width: 1.42rem;
    height: 0.265rem;
    font-size: 0.16rem;
    text-align: center;
    border-radius: 0.05rem;
    line-height: 1.45;
  }
  .qa_sec .qa .lists dd,
.qa_sec .qa .lists dt {
    padding-left: 0.345rem;
  }
  .qa_sec .qa .lists dt {
    margin-bottom: 0.2rem;
    font-size: 0.15rem;
    line-height: 1.28;
  }
  .qa_sec .qa .lists dt:before {
    content: "";
    width: 0.285rem;
    height: 0.285rem;
    left: 0;
    position: absolute;
    background-image: url("../images/qa/q.png");
    background-size: 100%;
  }
  .qa_sec .qa .lists dd {
    font-size: 0.125rem;
    line-height: 1.6;
    color: #000;
  }
  .qa_sec .qa .lists dd:not(:last-of-type) {
    margin-bottom: 0.42rem;
  }
  .qa_sec .qa .lists dd:not(:last-of-type):after {
    content: "";
    height: 0.02rem;
    width: 0.465rem;
    left: 0;
    bottom: -0.16rem;
  }
  .qa_sec .qa .lists dd:before {
    content: "";
    width: 0.285rem;
    height: 0.285rem;
    left: 0;
    position: absolute;
    background-image: url("../images/qa/a.png");
    background-size: 100%;
  }
  .qa_sec .btn {
    margin: 0 auto;
    text-align: center;
  }
  .qa_sec .btn img {
    transition: 0.2s ease;
  }
  .qa_sec .btn:hover img {
    transform: scale(0.98, 0.98);
    transition: 0.2s ease;
  }
}