@charset "UTF-8";

* {
    box-sizing: border-box;
    line-break: strict;
}

body {
    font-family: "Hiragino Sans", "Hiragino Kaku Gothic ProN", Meiryo, "sans-serif";
}

img {
    max-width: 100%;
    height: auto;
    -webkit-backface-visibility: hidden;
    backface-visibility: hidden;
}
.footer-banner img {
    max-width: 665px;
    margin: 0 auto 0 auto;
}

.content-area {
    width: 100%;
    max-width: 750px;
    margin: 0 auto 0 auto;
}

.cv {
    padding: 30px 20px 70px;
    width: 100%;
}

.cv a {
    display: block;
    max-width: 370px;
    width: 30%;
    margin: 0 auto;
    transition: 0.3s;
}

.cv a:hover {
    opacity: 0.7;
    cursor: pointer;
}


.jelly {
    -moz-animation: gelatine 1s infinite;
    animation: gelatine 1s infinite;
}

.cta a{
    display: block;
    margin: 20px 40px 30px 40px;
}

@keyframes gelatine {

    from,
    to {
        transform: scale(0.95, 0.95);
    }

    50% {
        transform: scale(1, 1);
    }
}

.map {
    position: relative;
}

.map iframe {
    position: absolute;
    width: 18%;
    height: 37%;
    bottom: 31%;
    left: 25%;
    right: 0;
    margin: auto;
}

.margin-bottom {
    margin-bottom:100px;
}


.c-cvbtn_sp {
    display: none;
    position: fixed;
    bottom: 0;
    left: 0;
    z-index: 10;
    width: 100%;
    background-color: rgba(255, 255, 255, 0.8);
  }
  @media only screen and (max-width: 750px) {
    .c-cvbtn_sp {
      display: block;
    }
  }
  .c-cvbtn_sp ul {
    padding: 14px 11px;
    display: -webkit-flex;
    display: -moz-flex;
    display: -ms-flex;
    display: -o-flex;
    display: flex;
    justify-content: space-between;
    align-items: stretch;
  }
  .c-cvbtn_sp ul li {
    width: 31.1614730878%;
    padding-bottom: 5px;
    position: relative;
    z-index: 1;
  }
  .c-cvbtn_sp ul li::before {
    content: " ";
    display: block;
    width: 100%;
    height: 100%;
    border-radius: 20px;
    background-color: #038faa;
    position: absolute;
    bottom: 0;
    left: 0;
    z-index: -1;
  }
  .c-cvbtn_sp ul li a {
    padding-top: 50px;
    display: block;
    height: 80px;
    border-radius: 20px;
    background-color: #06b4d6;
    color: #fff;
    text-decoration: none;
    font-size: 1.5rem;
    font-weight: 800;
    text-align: center;
    box-sizing: border-box;
    letter-spacing: 0;
    background-position: center 18px;
    background-repeat: no-repeat;
  }
  .c-cvbtn_sp ul li.mail a {
    background-image: url(../img/sp/icon_mail.png);
    background-size: 31px auto;
  }
  .c-cvbtn_sp ul li.tel a {
    background-image: url(../img/sp/icon_tel.png);
    background-size: 32px auto;
  }
  .c-cvbtn_sp ul li.line::before {
    background-color: #048904;
  }
  .c-cvbtn_sp ul li.line a {
    background-image: url(../img/sp/icon_line.png);
    background-size: 31px auto;
    background-position: center 15px;
    background-color: #00b900;
  }
  .cta a{
    display: block;
    margin: 20px 30px 20px 20px;
}
/*-- カルーセルcss --*/
.swiper-parent {
    position: relative;
    max-width: 750px;
    width: 100%;
    margin-bottom: min(138px, calc(138/750*100vw))!important;
}

.swiper-pagination {
    position: absolute;
    left: 50%;
    bottom: min(-50px, calc(-50/750*100%))!important;
    transform: translateX(-50%);
}

.swiper-pagination-bullet {
    width: min(10px, calc(10/750*100vw));
    height: min(10px, calc(10/750*100vw));
    margin: 0 min(10px, calc(10/750*100vw))!important;
    background-color: #e0f6fa!important;
    opacity: 1!important;
}

.swiper-pagination-bullet-active {
    background-color: #082d59!important;
}

.swiper{
    width: min(692px, calc(692/750*100vw))!important;
}

/* 前へ次への矢印カスタマイズ */
.swiper-button-prev,
.swiper-button-next {
    position: relative;
    height: min(107px, calc(107/750*100vw));
    width: min(56px, calc(107/750*100vw));
}

.swiper-button-prev{
    left: 0!important;
}
.swiper-button-next{
    right: 0!important;
}

/* 前へ次への矢印カスタマイズ */
.swiper-button-prev::after,
.swiper-button-next::after {
    content: ""!important;
    background-repeat: no-repeat;
    background-size: contain;
    height: min(107px, calc(107/750*100vw));
    width: min(56px, calc(56/750*100vw));
}

/* 前への矢印カスタマイズ */
.swiper-button-prev::after {
    background-image: url(../img/arrow-left.png);
}

/* 次への矢印カスタマイズ */
.swiper-button-next::after {
    background-image: url(../img/arrow-right.png);
}

#FAQ-area dt{
    position: relative;
    cursor: pointer;
}
#FAQ-area dt::after{
    content: "";
    position: absolute;
    top: calc( 50% - min(10px, calc(10/750*100vw)));
    right: min(48px, calc(48/750*100vw));
    display: block;
    background-image: url(../img/FAQ-arrow.png);
    background-repeat: no-repeat;
    background-size: contain;
    width: min(35px, calc(35/750*100vw));
    height: min(20px, calc(20/750*100vw));
    transition: all .3s;
    transform: rotate(-180deg);
}
#FAQ-area dt.is-active::after{
    transform: rotate(0deg);
}
#FAQ-area dd{
    display: none;
}
/*-- is-active --*/