@charset "UTF-8";

a img:hover {
  opacity:0.9;
}

body {  
  font-family: 'Noto Serif JP', sans-serif;
  font-weight:400;
  font-size:0.9rem;
  line-height:170%;
}

.fade-in {
  opacity:0;
  transition: opacity 0.8s;
  -moz-transition: opacity 0.8s;
  -webkit-transition: opacity 0.8s;
  -o-transition: opacity 0.8s;
  }

  #floatingmenu_pc {
    border-top:1px solid #ccc;
    font-size:12px;
    display: block;
    width: 100%;
    padding: 1rem;
    position: fixed;
    left: 0px;
    bottom: 0px;
    z-index: 9999;
    background: linear-gradient(90deg, rgb(22, 135, 237, 0), rgb(0, 0, 0, 0.4)), url(../img/common/bg-blue.jpg) center center;
    background-size:cover;
    color:#fff;
    }

    #floatingmenu_sp {
      display:none;
    }

.btn-gold {
  background-color:#d4b572;
  border-color:#d4b572;
  text-align:center;
  color:#053c61;
  border-radius: 0;
  font-size:0.9rem;
  padding:1rem 0;
  font-weight:700;
}

.btn-gold:hover {
  background-color:#d4b572;
  border-color:#d4b572;
}

.btn-gold:focus,
.btn-gold:not(:disabled):not(.disabled):active{
  background-color:#d4b572;
  border-color:#d4b572;
  box-shadow: 0 0 0 0.2rem rgba(137, 153, 45, 0.568);
}

.btn-orange-h:focus, .btn-orange-h:active, .btn-orange-h:hover, .btn-orange-f:focus, .btn-orange-f:active, .btn-orange-f:hover, .btn-primary:not(:disabled):not(.disabled).active, .btn-primary:not(:disabled):not(.disabled):active, .show>.btn-primary.dropdown-toggle {
  background-color:#d4b572;
  border-color:#d4b572;
  box-shadow: 0 0 0 0.2rem rgba(137, 153, 45, 0.568);
}

.btn-big-cv {
  background-color:#01c6df;
  border:0;
  text-align:center;
  color:#fff;
  border-radius: 0;
  font-size:1.5rem;
  padding:1.5rem 0;
  box-shadow: #01a8c9 0 5px 0;
}

.btn-big-cv:hover {
  background-color:#01a8c9;
  box-shadow: none;
  transform: translateY(5px);
}

.btn-big-cv:focus,
.btn-big-cv:not(:disabled):not(.disabled):active{
  background-color:#01a8c9;
  box-shadow: none;
  transform: translateY(5px);
}

.phone-no {
  font-weight:500;
  font-size:3rem;
  color:#d4b572;
  padding-top:1rem;
  text-align:right;
}

.phone-no-sub {
  line-height:120%;
  padding-top:1.1rem;
  text-align:right;
}

.main {
  margin-top:4.3vw;
}

header {
  background-color:#f2f2f2;
}

.navbar {
  border-bottom:1px solid #01365e;
}
.navbar-light .navbar-nav .nav-link {
  color:#000;
  font-weight:700;
  font-family: 'Noto San JP', sans-serif;
  font-size:0.8vw;
}


.head-logo {
  width:20vw;
}

.head-sub {
  margin-left:4vw;
  line-height:1.4vw;
}

.head-sub01 {
  background-color:#01c6df;
  position: absolute;
  color:#fff;
  right:19vw;
  width:11vw;
  top:2.2vh;
  padding:0.2vw 0;
  text-align:center;
  font-weight:bold;
  font-size:0.9vw;
}

.head-sub01:hover {
  background-color: #01a8c9;
}

.head-sub02 {
  background: linear-gradient(90deg, rgb(22, 135, 237, 0), rgb(0, 0, 0, 0.2)), url(../img/common/bg-blue.jpg) center center;
  width:30vw;
  height:4.3vw;
  color:#fff;
  padding-left:12vw;
  font-size:0.6vw;
  padding-right:2vw;
  padding-top:0.4rem;
}

.head-phone-no {
  color:#d4b572;
  font-weight:700;
  font-size:1.8vw;
  text-align:center;
  padding-top:0.3rem;
}



main {
  background: url(../img/bg.png);
}

.bg-light {
  background-color:#f2f2f2 !important;
  height:4.3vw;
  padding:0 0 0 3rem;
}

h1.topics-title {
  font-weight:500;
  color:#86cc92;
  font-size:2rem;
  border-bottom:1px solid #bbcf51;
  padding-bottom:1rem;
  margin-bottom:2rem;
  text-align:left;
}

h1.topics-title:before {
  position: relative;
  top: 10px;
  margin: 0 7px 0 0;
  content: url(../img/topics.png);
}

.breadcomb {
  font-size:0.7rem;
  font-weight:700;
  font-family: 'Noto San JP', sans-serif;
  padding-top:4.5vw;
}

.breadcomb a {
  text-decoration:none;
  color:#999;
}

.breadcomb a:hover {
  text-decoration:underline;
}

footer {
  border-top:1px solid #ccc;
  background: linear-gradient(90deg, rgb(22, 135, 237, 0), rgb(0, 0, 0, 0.4)), url(../img/common/bg-blue.jpg) center center;
  background-size:cover;
  text-align:center;
  font-size:0.7rem;
  line-height:130%;
  padding-bottom:2rem;
  padding-top:2rem;
  color:#fff
}

footer a {
  color:#fff;
}

.copy {
  padding-top:1rem;
  font-size:0.6rem;
}

.copy-box {
  padding-top:2rem;
  border-top:1px solid #d4b572;
  font-size:0.6rem;
  font-family: 'Noto Sans JP', sans-serif;
}

footer {
  padding-bottom:10rem;
}

.foot-phone-no {
  color:#d4b572;
  font-weight:500;
  font-size:3.5rem;
  margin-bottom:2.3rem;
}

.foot-phone-no-sub01 {
  margin-bottom:1.7rem;
  font-size:0.8rem;
}

a.foot-btn {
  display:block;
  height:100%;
  background-color:#fff;
  padding:1.2rem 0;
  color:#000;
  font-weight:700;
  font-size:0.8rem;
}

a.foot-btn:hover {
  text-decoration:none;
  background-color:#eee;
}

.con-main {
  padding: 1.5vw 0 3vw 0;
  background: linear-gradient(90deg, rgb(22, 135, 237, 0), rgb(0, 0, 0, 0.4));
  background-color: #01365e;
}

.con-title h2 {
  color:#01365e;
  font-size:2vw;
  margin:4vw 0;
  font-weight:500;
}

.con-main h3 {
  color:#d4b572;
  margin-bottom:1rem;
}

.con-main h4 {
  color:#fff;
  font-size:0.9vw;
  line-height:170%;
}

.con-index-box {
  background-color:#fff;
  padding:1.5rem;
  padding-bottom: 7rem !important;
}

.con-index-box .btn-gold {
  position: absolute;
  bottom: 70px;
  left: 12.5%;
}

.con-index-box img {
  box-shadow: #d4b572 10px 10px 0;
  margin-bottom:40px;
}

.con-index-box h3 {
  font-size:1.3vw;
  font-weight:500;
  color:#01365e;
  margin-bottom:1.3vw;
  padding-bottom:1.3vw;
  border-bottom:1px solid #ccc;
}

.midashi {
  padding: 3vw 0;
}

.midashi h4 {
  font-size:1vw;
}

.con-main2 {
  padding: 1vw 0;
}

.con-index-box2,.con-index-box3 {
  background-color:#fff;
  padding:5vw 6vw;
  margin:0 3vw;
}

.con-index-box2 img,.con-index-box3 img {
  margin:0.5rem 0;
}

.con-index-box2 p {
  font-size:0.9rem;
  margin:0.5rem 0;
}

.con-index-box2 h3 {
  font-size:1.8vw;
  font-weight:500;
  color:#01365e;
  margin-bottom:2rem;
  padding-bottom:1.5rem;
  border-bottom:solid 1px #01365e;
}

.con-index-box2 h4 {
  font-size:1.2vw;
  font-weight:100;
  color:#000;
  margin-bottom:1.5rem;
}

.con-index-box2 h5 {
  font-size:1.2vw;
  font-weight:500;
  color:#01365e;
  height:auto;
  padding-bottom:0.7rem;
  border-bottom:solid 1px #01365e;
  margin-bottom:1.1rem;
}

.con-index-box2 h6 {
  font-size:1.4vw;
  font-weight:bold;
  color:#01365e;
  height:auto;
  margin:3rem 0;
  text-align:center;
}

ul.kajougaki {
  padding: 15px 15px 15px 42px;
  border: 1px solid #333333;
}

.line {
  padding:2.2rem;
  border: 1px solid #333333;
}

p.round {
  font-size:1vw;
  color: #fff;
  background-color:#01365e;
  padding:1.5rem 0.5rem;
  text-align:center;
  border-radius:10px;
  }

p.roundcolor1 {
  font-size:0.9vw;
  color: #000;
  background-color:#2ca9e1;
  padding:1rem 0.5rem;
  text-align:center;
  border-radius:10px;
  margin:1rem 0;
  }

p.roundcolor2 {
  font-size:0.9vw;
  color:#000;
  background-color:#dccb18;
  padding:1rem 0.5rem;
  text-align:center;
  border-radius:10px;
  margin:1rem 0;
  }

p.roundcolor3 {
  font-size:0.9vw;
  color: #000;
  background-color:#aacf53;
  padding:1rem 0.5rem;
  text-align:center;
  border-radius:10px;
  margin:1rem 0;
  }

p.roundcolor4 {
  font-size:0.9vw;
  color: #000;
  background-color:#f08300;
  padding:1rem 0.5rem;
  text-align:center;
  border-radius:10px;
  margin:1rem 0;
  }

p.roundcolor5 {
  font-size:0.8vw;
  color: #fff;
  background-color:#8c6450;
  padding:1rem 0.5rem;
  text-align:center;
  border-radius:10px;
  margin:1rem 0;
  }

p.roundcolor6 {
  font-size:0.9vw;
  color: #000;
  background-color:#f2f2f2;
  padding:1rem 0.5rem;
  text-align:center;
  border-radius:10px;
  margin:1rem 0;
  }

p.round2 {
  font-size:1.1vw;
  color: #fff;
  background-color:#01365e;
  padding:1rem 1.5rem;
  margin:1rem 0;
  border-radius:10px;
  }

p.round3 {
  font-size:1.1vw;
  color: #fff;
  background-color:#01365e;
  padding:1rem 2rem;
  margin:1rem 0 0.5rem 0;
  border-radius:10px;
  text-align: center;
  line-height:170%;
  }

p.type {
  font-size:1vw;
  padding-bottom:0.4rem;
  margin-bottom:0;
  border-bottom: solid 1px #000;
  }

.round {
  margin:auto 0;
  }

.center {
  text-align: center;
  }
  
td.even {
  text-align:left;
  padding-left:2vw;
  }

.nec {
  color:red;
  font-weight:bold;
  }

.box {
  padding:0.4vw 0;
  }

.number{
  color:red;
  font-size:1.6vw;
  font-weight: bold;
}

.layer{
  font-size:0.9vw;
  margin:10rem 20rem;
  }

  ul#sns-icon {
    display: flex;

  }

  ul#sns-icon {
    margin:0;
    padding:0;
    list-style: none;
  }
  ul#sns-icon li {
    list-style:none;
    margin: 0 5px;
  }

  small {
  font-size:70%;
  }

@media screen and (max-width: 768px) {

  .breadcomb {
    padding-top:18vw;
  }

  .con-title h2 {
    font-size:1.5rem;
    margin:2.5rem 0;
  }

  .bg-light {
    height:auto;
    padding:0;
  }

  .navbar-light .navbar-toggler {
    border:0;
  }

  .head-logo {
    width:300px;
    margin:1rem 2rem;
  }

  h1.topics-title:before {
    content: '';/*何も入れない*/
    display: inline-block;/*忘れずに！*/
    width: 2rem;/*画像の幅*/
    height: 2rem;/*画像の高さ*/
    background-image: url(../img/topics.png);
    background-size: contain;
  }

  .concept-con,
  .news-con,
  .features-con,
  .program-con,
  .flow-con,
  .gaiyou-con,
  .contact-con {
    padding:1rem !important;

  }

  #floatingmenu_sp {
    border-top:1px solid #ccc;
    font-size:12px;
    display: block;
    width: 100%;
    height: 13vh;
    padding: 0.5vh 0;
    position: fixed;
    left: 0px;
    bottom: 0px;
    z-index: 9999;
    text-align: center;
    background: linear-gradient(90deg, rgb(22, 135, 237, 0), rgb(0, 0, 0, 0.4)), url(../img/common/bg-blue.jpg) center center;
    background-size: cover;
    color: #fff;    
    }

    .sp-sub-btn {
      padding-bottom:0.5vh;
    }

    .sp-main-btn {
      font-family: 'Noto San JP', sans-serif;
      font-weight:700;
      line-height:110%;
      font-size:0.6rem;
    }

    .sp-sub-btn-box01 {
      padding:0.1rem 0;
      font-size:0.7rem;
      font-weight:900;
    }

    .sp-sub-btn-box02 {
      background-color:#d4b572;
      color:#053c61;
      border-right:1px solid #053c61;
    }

    .sp-sub-btn-box02c {
      background-color:#01c6df;
      color:#053c61;
    }

    .sp-sub-btn-box02in {
      padding:0.2rem 0;
    }

    .sp-phone-no {
      font-weight:700;
      font-size:1.4rem;
      color:#d4b572;
      padding-top:0.2rem;
    }

    .thanks {
      font-size:1rem;
    }

    .btn-big-cv {
      font-size:1rem;
      padding:0.5rem 0;
    }

    .foot-phone-no-sub01,
    .foot-phone-no,
    .foot-phone-no-sub01 {
      text-align:center;
    }

    .foot-phone-no-sub01 {
      margin-top:3rem;
    }

    .foot-phone-no {
      font-size:2.6rem;
    }

    .head-sub02 {
    }

    .head-sub01 {
      right:40vw;
      width:22vw;
      padding:2.5vw 0;
      font-size:0.6rem;
      margin-top:0.5rem;
    }

    .head-phone-no {
      font-size:5.4vw;
      padding:1rem 0;
      margin-top:0.5rem;
    }

    .bd-highlight {
      font-size:0.6rem;
    }

    .con-index-box {
      padding-bottom: 1rem !important;
    }

    .con-index-box .btn-gold {
      position: absolute;
      bottom: 20px;
      left: 12%;
    }

    .con-index-box h3 {
      font-size:1.2rem;
    }

    .con-index-box p {
      font-size:0.9rem;
      height:8rem;
    }

    .con-main2 {
      padding: 1.5vw 0;
    }

    .con-index-box2,.con-index-box3 {
      padding:1rem 2rem;
    }

    .con-index-box2 p {
      font-size:0.9rem;
    }

    .con-index-box2 h3 {
      font-size:1.2rem;
    }

    .con-index-box2 h4 {
      font-size:1rem;
    }
}

@media screen and (max-width: 599px)  {

  .breadcomb .container-fluid{
    display:none;
  }

  .con-main h3 {
  font-size:6.6vw;
  margin-bottom:0;
  }

  .con-main2 {
    margin:1rem 0.3rem;
  }
  
  .con-index-box2 {
    background-color:#fff;
    padding:1.8rem 1.5rem;
  }

  .con-index-box3 {
    background-color:#fff;
    padding:0.5rem 0;
  }
  
  p.round {
    font-size:0.9rem;
    color: #fff;
    background-color:#01365e;
    padding:0.8rem 0.5rem;
    text-align:center;
    margin:0.5rem 0;
    border-radius:10px;
    }
  
  p.round2 {
    font-size:0.9rem;
    color: #fff;
    background-color:#01365e;
    padding:1rem;
    margin:0.8rem 0;
    border-radius:10px;
    }

  p.round3 {
    font-size:1.1rem;
    color: #fff;
    background-color:#01365e;
    padding:1rem 2rem;
    margin:1rem 0 0.5rem 0;
    border-radius:10px;
    text-align: center;
    line-height:170%;
    }
  
  .con-index-box2 h3 {
    font-size:1.5rem;
    font-weight:500;
    color:#01365e;
    margin-bottom:1rem;
    }
  
  .con-index-box2 h4 {
    font-size:1rem;
    }
  
  .con-index-box2 h5 {
    font-size:1.2rem;
    font-weight:500;
    color:#01365e;
    height:auto;
    margin-bottom:0.6rem;
    }
    
  .con-index-box2 h6 {
    font-size:1.2rem;
    font-weight:bold;
    color:#01365e;
    height:auto;
    margin-bottom:0.8rem;
  }
  
  .midashi {
    padding: 1.8rem 0;
    }
  
  .midashi h4 {
    font-size:0.9rem;
    }
  
  p.roundcolor1  ,p.roundcolor2 ,p.roundcolor3 ,p.roundcolor4 ,p.roundcolor5  {
    font-size:1rem;
    margin:0.5rem;
    }
  
  .number{
    color:red;
    font-size:1.3rem;
    font-weight: bold;
  }
  
  h4.access {
    font-size:0.9rem;
    font-weight:bold;
    margin:0;
  }
  
  .access2 {
    font-size:0.8rem;
    margin:1rem 0.5rem;
  }
  
  .map iframe{
  width:100%;
  height:250px;
  }

  .layer{
  font-size:0.9rem;
  margin:2.5rem;
  }
}