*{font-family: 'Noto Sans JP', sans-serif;
} 
.sp {
  display: none
}

.contact{
  padding: 10vh 0vh 10vh 0vh;
}

h3#tel,h3#qr {
    padding-top: 70px;
    margin-top: -70px;
}

h2#mail {
      padding-top: 120px;
    margin-top: -120px;
}

.contact:nth-child(2){
  background:#1e65a7;
  
}

.arrow1 {
    display: block;
    width: 30px;
    height: 30px;
    border: 5px solid;
    border-color: transparent transparent #0e406e #0e406e;
    transform: rotate(
-45deg);
    margin: 0 auto;
    margin-top: 30px;
    margin-bottom: 50px;
}

h1 {
  padding: 1em;
  color: #0e406e;
  background:#E5EEFF;
  border-left: solid 6px #0e406e;
  font-size: calc(10px + 1.5vw) !important;
  margin: 2em 0em !important;
  /* line-height:1.8em; */
  font-weight: bold;
}

h2 {
    background: #19466d;
    background: -moz-linear-gradient(top, #19466d 0%, #2679a5 51%, #19466d 100%);
    background: -webkit-linear-gradient(top, #19466d 0%,#2679a5 51%,#19466d 100%);
    background: linear-gradient(to bottom, #19466d 0%,#2679a5 51%,#19466d 100%);
    filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#19466d', endColorstr='#19466d',GradientType=0 );
    color: #fff;
    font-size: calc(10px + 1.8vw);
    margin-top: 2em;
    margin-bottom: 1em;
    line-height: 1em;
    padding: 1.5em;
    text-align: center;

}

h3 {
  width: 100%;
  line-height: 1.5em;
  background: none;
  font-size: calc(10px + 1.4vw);
  text-align: center;
  color: #0b406e;
}

p {
    color: #424242;
    line-height: 1.8em;
    font-weight: 500;
    font-size: calc(8px + 0.8vw);
    letter-spacing: -1px;
    text-align:center;
}

dt::before,dt::after {
    content: "\201D";
}

.news dd,.news dt {
    margin-left: 0px;
    background: #E5EEFF;
    color: #0e406e;
    font-weight:bold;
    border-left: solid 6px #0e406e;
    font-size: calc(10px + 0.4vw);
}

.news dd{
    padding:1em 1em 0em 1em;
}

.news dt{
    margin-bottom: 1.5em;
    padding:0em 1em 1em 1em;
    font-size: calc(10px + 0.4vw);
}


table{
    width: 100%;
    text-align: center;
    font-size: calc(8px + 0.8vw);
    color: #424242;
    margin: 2em 0;
}


th{background: #424242;font-weight:bold;color: #fff;font-size: calc(10px + 0.4vw);}


th,td{padding: 0.5em !important;}

td{font-size: calc(10px + 0.3vw);}

.btn-flat-border {
  padding: 0.8em 3em;
  text-decoration: none;
  color: #0E406E;
  border: solid 3px #0E406E;
  transition: .4s;
  -webkit-border-radius: 50px;
  font-weight: 600;
  display: block;
  margin: 20px 10px;
  font-size: calc(10px + 1vw);
  }

  .btn-flat-border-line {
  padding: 0.8em 3em;
  text-decoration: none;
  color: #ffffff;
  border: solid 3px #c54949;
  transition: .4s;
  -webkit-border-radius: 50px;
  font-weight: 600;
  display: block;
  margin: 10px 15% 20px 15%;
  background: #ff5252;
  text-align: center;
  font-size: calc(10px + 1vw);
  }


.btn-flat-border-line:hover {
  background: #0d406f;
  color: #fff;
    border: solid 3px #fff;
}

.btn-flat-border:hover {
  background: #0E406E;
  color: #fff;
}

span.c1 {
    color: #0b406e;
    font-weight: bold;
    background: linear-gradient(transparent 50%, #fff2a7 50%);
}

span.c2 {
    color: #0b406e;
    font-weight: bold;
    background: linear-gradient(transparent 50%, #a7d6ff 50%);
}


a.floatline {
    position: fixed;
    bottom: 240px;
    right: 20px;
    width: 30vw;
    max-width: 300px;
}


a.floatline2 {
    position: fixed;
    bottom: 130px;
    right: 20px;
    width: 30vw;
    max-width: 300px;
}

a.floatline3 {
    position: fixed;
    bottom: 20px;
    right: 20px;
    width: 30vw;
    max-width: 300px;
}

a.qrbanner{
    display: flex;
    justify-content: center;
   align-items: center;
}

a.qrbanner>img {
    width: auto;
    vertical-align:middle;
}

@media screen and (max-width: 800px) {
  .pc {
    display: none;
  }
  .sp {
    display: inherit;
  }

    a.floatline {
        width: 40vw !important;
        bottom: 110px;
        right: 5px;
    }

        a.floatline2 {
        width: 40vw !important;
        bottom: 60px;
        right: 5px;
    }

          a.floatline3 {
        width: 40vw !important;
        bottom: 10px;
        right: 5px;
    }


 img{
   width:100% !important;
   height:auto;
   padding: 5px;
   }

 .cp_cssslider label img{
   width:60px !important;
 }
    
}