@charset "UTF-8";

body {
  font-size: 0.875rem;
}

header h1 {
  font-size: 1.3rem;
}

section#mainvisual div.caption h2{
    font-size:3.75rem;
}

main div.greeting dl dd{
  font-size: 0.875rem;
}

main div.greeting dl dd em{
  font-size: 2.05rem;
}

main div.img-text3 h2{
  font-size: 2.3rem;
}

main div.img-text3 ul li em{
  font-size: 1.3rem;
}

main div#news h2{
 font-size: 2.3rem;
}

main div#news ul li{
  font-size: 0.875rem;
}

main div#news ul li time{
  font-size: 0.875rem;
}

footer section.inner{
  font-size: 0.875rem;
}

footer section.inner span{
  font-size: 1.3rem;
}

footer section.inner ul li{
  font-size: 0.875rem;
}

footer section.inner div::first-line{
  font-size: 1.3rem;
}

footer p{
  font-size: 0.875rem;
}

article#undermain section.caption h2{
  font-size: 2.3rem;
}

main h2{
  font-size: 2.3rem;
}

main h3{
  font-size: 1.25rem;
}

main h4{
  font-size: 1rem;
}

main table.hl2 tr th{
  font-size: 1rem;
}

main table.hl2 tr td{
  font-size: 0.875rem;
}

main table.hl3 tr th{
  font-size: 1rem;
}

main table.hl3 tr td{
  font-size: 0.875rem;
}

main table.hl4 tr th{
  font-size: 1rem;
}

main table.hl4 tr td{
  font-size: 0.875rem;
}

main table.hl5 tr th{
  font-size: 1rem;
}

main table.hl5 tr td{
  font-size: 0.875rem;
}

main table.vl2 tr th{
  font-size: 1rem;
}

main table.vl2 tr td{
  font-size: 0.875rem;
}

main table.vl2 tr td:last-child{
  border-right: none;
}

main table.vl3 tr th{
  font-size: 1rem;
}

main table.vl3 tr td{
  font-size: 0.875rem;
}

main table.vl3 tr td:last-child{
  border-right: none;
}

main table.vl4 tr th{
  font-size: 1rem;
}

main table.vl4 tr td{
  font-size: 0.875rem;
}

main table.vl5 tr th{
  font-size: 1rem;
}

main table.vl5 tr td{
  font-size: 0.875rem;
}

main dl.img-txt-h1-left dd{
  font-size: 0.875rem;
}

main dl.img-txt-h1-left dd em{
  font-size: 2.05rem;
}

main div.img-txt-h2-left dl dd em{
  font-size: 1.3rem;
}

main div.img-txt-h3-left dl dd em{
  font-size: 0.875rem;
}

main dl.img-txt-h1-right dd{
  font-size: 0.875rem;
}

main dl.img-txt-h1-right dd em{
  font-size: 2.05rem;
}

main div.img-txt-h2-right dl dd em {
    font-size: 1.3rem;
}

main div.img-txt-h3-right  dl dd em {
    font-size: 0.875rem;
}

div.img-text2 ul li em{
  font-size: 1.3rem;
}

div.img-text3 ul li em{
  font-size: 1.3rem;
}

div.img-text4 ul li em{
  font-size: 1.3rem;
}

ul.btn-img li a em{
  font-size: 1.875rem;
}

main div.greeting2 dl dd{
  font-size: 0.875rem;
}

main div.greeting2 dl dd em{
  font-size: 2.05rem;
}

main table.company tr th{
  font-size: 1rem;
}

main table.company tr td{
  font-size: 0.875rem;
}

main table.recruit tr th{
  font-size: 1rem;
}

main table.recruit tr td{
  font-size: 0.875rem;
}

aside#local-navi02 h2{
  font-size: 1.3rem;
}

aside#local-navi h2{
  font-size: 1.3rem;
}

form.inner dl dt{
  font-size: 1rem;
}

form.inner dl dd input[type="text"]{
  font-size: 0.875rem;
}

#form dl.required dt:after {
    font-size: 0.75rem;
}

form.inner dl.radio-button dd label {
  font-size: 0.875rem;
}

form.inner dl.check-box dd label {
  font-size: 0.875rem;
}

form.inner section.policy label {
  font-size: 0.875rem;
}

form.inner section.policy_link label {
  font-size: 0.875rem;
}

.swiper-wrapper .txt {
  font-size: 3.25rem;
}

.swiper-pagination-bullet{
  font-size: 0;
}

.menu > ul > li > ul > li span{
  font-size: 0.75rem;
}

.menu > ul > li > ul > li > ul > li {
  font-size: .8em;
}

.menu-mobile:after {
  font-size: 2.5rem;
}

/* --------------------------------------------------------- レスポンシブ */
@media screen and (max-width: 1400px) {
  header h1{
    font-size: 1.3rem;
  }

  section#mainvisual div.caption h2{
    font-size: 2rem;
  }

  main section.greeting dl dd em{
    font-size: 1.3rem;
  }

  main section.greeting{
    margin-bottom: 100px;
  }

  main section.greeting dl dt{
    margin-top: 30px;
    padding: 0 20px;
  }

  main section.greeting dl dd{
    width: 100%;
    position: unset;
    padding: 90px 24px;
    display: table-cell;
  }

  main section.greeting dl dt img{
    width: 100%;
    height: auto;

  }

  main section.img_text3 ul li{
    width: 100%;
    margin-bottom: 50px;
  }

  main section.img_text3 ul li::last-child{
    margin-bottom: 0;
  }

  main section.img_text3 ul li figure img{
    height: auto;
  }

  main section.img_text3{
    margin-bottom: 100px;
  }

  main section.news{
    width: 100%;
  }

  main section.news ul{
    padding: 0 20px;
  }

  main section.news ul li time{
    display: block;
  }

  main article#banner{
    width: 100%;
  }

  main article#banner ul{
    display: block;
    text-align: center;
  }

  main article#banner ul li{
    text-align: center;
    margin: 0 auto;
  }

  main article#link{
    width: 100%;
  }

  main article#link ul{
    display: block;
    text-align: center;
  }

  main article#link ul li{
    text-align: center;
    margin: 0 auto;
  }


  /*下層*/
  main p.paragraph-left{
    width: 90%;
  }

  main p.paragraph-center{
    width: 90%;
  }

  main p.paragraph-right{
    width: 90%;
  }

  main section blockquote{
    width: 90%;
  }

  main section hr{
    width: 90%;
  }

  section.sentence{
    width: 90%;
  }

  main section h2{
    width: 90%;
  }

  main section h3{
    width: 90%;
  }

  main section h4{
    width: 90%;
  }

  main ul.list{
    width: 90%;
  }

  main ul.list li:before{
    top: -2.1%;
  }

  main table.hl2{
    width: 90%;
  }

  main table.hl3{
    width: 90%;
  }

  .swiper-wrapper .txt{
    font-size: 1.75rem;
  }
}

@media (max-width: 769px) {
  .swiper-wrapper .txt{
    font-size: 0.75rem;
  }
}


@media screen and (max-width: 478px) {
  header h1{
    font-size: 0.875rem;
  }

  section#mainvisual div.caption h2{
    font-size: 1.3rem;
  }
}