@charset "UTF-8";
ul { padding: 0;}
footer .footer-tel { ont-size: 38px; }
h2 {
  font-size: 1.8rem;
  letter-spacing: .1rem;
}
h2 span {
  font-size: 2.4rem;
  color: #a89872;
}
#main_img img {
  width: 100%;
}
.contents-index li a {
  box-shadow: 2px 2px 4px gray;
  display: block;
}
.contents-index .band {
  background: #5d5d5d;
  color: #fff;
  letter-spacing: .1rem;
}
.contents-index .band span:first-child {
  font-size: .8rem;
  width: 32%;
  display: inline-block;
  align-items: center;
}
.contents-index .band span:nth-child(2) {
  font-size: 1.3rem;
  width: 65%;
}
.contents-index .detail {
  font-size: .8rem;
  letter-spacing: .1rem;
}
.contents-index .detail .arrow-pict {
  position: relative;
  padding: 0px 3px;
  font-size: .8rem;
}
.contents-index .explanatory {
  height: 6rem;
  font-size: .9rem;
}

/* ========
　見出し(縦)
================ */
.tate {
  color: #000;
  font-size: 2rem;
}
.tate span {
  font-size: 1rem;
  border-bottom: solid 1px;
  font-weight: lighter;
}
/* ========
　slider
================ */
.staff.slide .slick-slide:not(.slick-active) {
  opacity: 0.7;
}
.staff.slide .slide .slick-slide {
  margin: 0 30px;
}
.slick-prev,
.slick-next {
  background: #b1b1b1;
  background: #b1b1b1;
  height: 4rem;
  width: 2rem;
  padding: 0 1rem!important;
  line-height: 1rem;
  text-align: center;
  z-index: 3;
}
.slick-prev {
  left: 15px;
}
.slick-next {
  right: -20px;
}
.slick-prev:hover,
.slick-next:hover {
  background: #b1b1b1;
  background: #b1b1b1;
}

.slick-prev:before {
  font-family: "Font Awesome 5 Free";
  content: '\f053';
  font-weight: 900;
  position: absolute;
  top: 50%;
  left: 0;
  right: 0;
  transform: translateY(-50%);
  transition: 0.2s;
}
.slick-next:before {
  font-family: "Font Awesome 5 Free";
  content: '\f054';
  font-weight: 900;
  position: absolute;
  top: 50%;
  left: 0;
  right: 0;
  transform: translateY(-50%);
  transition: 0.2s;
}
.staff li .staff-img {
  overflow: hidden;
  width: 100%;
  height: 220px;
  position: relative;
  display: block;
  padding: 0.5rem;
}
/* 高さに合わせてリサイズ、はみ出た分をトリミング */
.staff li .staff-img img {
  position: absolute;
  top: 50%;
  left: 50%;
  -webkit-transform: translate(-50%, -50%);
  -ms-transform: translate(-50%, -50%);
  transform: translate(-50%, -50%);
}
/* ========
　company
================ */
#company li a {
  border: 1px solid #ddd;
  margin: 0 auto;
  overflow: hidden;
  background: #000;
}
#company li img{
  cursor: pointer;
  transition-duration: 0.3s;
}
#company li a:hover {
  opacity: 1;
}
#company li a > span:hover {
  opacity: .6;
}
#company li img:hover {
  opacity: 6;
  transition-duration: 0.3s;
}
#company .on-text {
  position: absolute;
  width: 70%;
  padding: 0!important;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  margin: auto;
  color: #fff;
}
#company .on-text > span:first-child {
  font-size: 1.3rem;
  letter-spacing: .2rem;
  border-top: solid #fff 1px;
  border-bottom: solid #fff 1px;
  line-height: 2.5;
}
#company .on-text span:nth-child(2) {
  font-size: .8rem;
}
#company .on-text span.arrow-pict {
  position: relative;
  color: #414042;
  background: #fff;
  padding: 0px 5px;
  font-size: .8rem!important;
  transform: translateY(-50%);
  transition: 0.2s;
  border: none!important;
}
.fw-600 {
  font-weight: 600;
}




#news li {
  word-wrap: break-word;
}
#news .category {
  border: solid #595757 1px;
  border-radius: 8px;
  font-size: .9rem;
}
#news .news-image {
  position: relative;
  height: auto;
}
#news .news-image:before {
  content: '';
  display: block;
  width: 100%;
  padding-top: 75%;
  background-color: #fff;
}
#news .news-image .fit-image-contain {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}
#news .news-image .no-image {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  display: flex;
  justify-content: center;
  align-items: center;
  background-color: #fff;
  font-size: 1.4rem;
}
#news .new-ribbon {
  display: inline-block;
  margin: 0 0 0 -5px;
  width: 100px;
  height: 36px;
  position: absolute;
  top: -10px;
  left: 0;
  color: #fff;
  background-color: crimson;
  z-index:1;
}
#news .new-ribbon .ribbon-text {
  font-weight: bold;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  font-size: 1.2rem;
  line-height: 36px;
  text-align: center;
}
#news .new-ribbon .ribbon-text:before {
  content: '';
  position: absolute;
  top: 100%;
  left: 0;
  border: none;
  border-right: solid 5px #d57777;
  border-bottom: solid 5px transparent;
}
#news .new-ribbon .ribbon-text:after {
  content: '';
  position: absolute;
  width: 0;
  height: 0;
  top: 0;
  right: -10px;
  z-index: 1;
  border-style: solid;
  border-width: 18px 10px 18px 0;
  border-color: crimson transparent;
}


.google-maps {
  position: relative;
  padding-bottom: 35%;
  overflow: hidden;
  height: 300px;
  }
.google-maps iframe {
  position: absolute;
  top: 0;
  left: 0;
  width: 100% !important;
  height: 100% !important;
}
#main_img {
  position: relative;
}
.line-tracking {
  position: fixed;
  right: 0%;
  bottom: 0;
  width: 55px;
  z-index: 10;
}
.sp_wrap_reverse {
  flex-wrap: wrap-reverse;
}
br.se {
  display: none;
}
.dot {
  font-size: 12px!important;
  width: auto!important;
}

.top-banner-international {
  display: block;
  box-shadow: 2px 2px 4px gray;
}

@media (min-width: 576px) {
  h2 { font-size: 1.5rem; }
  .tate {
    -webkit-writing-mode: vertical-rl;
    -ms-writing-mode: tb-rl;
    writing-mode: vertical-rl;
    -webkit-text-orientation: sideways;
    text-orientation: sideways;
  }
  .tate span {
    border-left: solid 1px;
    border-bottom: none;
  }
  #company .on-text span:first-child {
    font-size: 3rem;
  }
  .line-tracking {
    right: 2%;
    bottom: 2%;
    top: auto;
    width: 200px;
  }
  .line-tracking{
    animation: key1 1.5s ease infinite alternate;
  }
  @keyframes key1{
    0% {transform: translateY(0px);}
    100% {transform: translateY(-12px);}
  }

  .sp_wrap_reverse {
    flex-wrap: wrap;
  }
  .staff li .staff-img {
    height: 150px;
  }
  br.se {
    display: block;
  }
  .staff li .staff-img {
    height: 250px;
  }
  #company .on-text > span:first-child {
    font-size: 1.5rem;
    border-top: solid #fff 2px;
    border-bottom: solid #fff 2px;
    line-height: 2;
  }
}

@media (min-width: 576px) and (max-width: 767.98px) {

}

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

}

@media (min-width: 992px) and (max-width: 1199.98px) {


}

@media (min-width: 1200px) {

}
@media (max-width: 320px) {
  /*br.se {
    display: block;
  }
  #top-contents li:nth-child(4) p:nth-child(2) {
    padding: 3px!important;
    line-height: 1.3;
  }*/

}

@media (max-width: 767.98px) {
    #main-message h2{
        font-size: 1.2rem;
    }
    #main-message h2 span{
        font-size: 1.5rem;
    }
}