4@charset "utf-8";
/* Generic Child-Oiso : front-page ONLY
    フロントページのみに適用されるスタイル
　　　-body
　　　-コンテナ div id="container" #container
　　　-共通要素 （ .btn.more-link ）
    　-メインビジュアルスライダーdiv id="main-vis" #main-vis （bxslider）
    　-各コンテンツ section
　　　-メディアクエリ（ブレイクポイントごと）
*/

/*トップページは背景画像無し*/
body {
    background-image: none;
}

/* コンテナ div id="container" #container
---------------------------------------------------- */
#container {
    background-color: transparent;
    margin: 0 auto;
    width: 100%;
}
/*メインコンテンツ - メインカラム*/
main.content {
    float: none;
    margin: 0;
    padding: 00;
    width: 100%;
}

/* 共通要素
---------------------------------------------------- */
/* .btn.more-link */
p.btn.more-link{}
p.btn.more-link a{
    align-items: center;
    background-color: #88CB7F;
    border: #88CB7F solid 1px;
    border-radius: 15px;
    color: #fff;
    display: inline-flex;
    justify-content: center;
    line-height: normal;
    padding: 15px 30px;
    text-decoration: none;
    margin: 0px 20px;
    width: 300px;
}

p.btn.more-link a:hover{
    background-color: #E54863;
}

/* メインビジュアルスライダーdiv id="main-vis" #main-vis （bxslider）
---------------------------------------------------- */
#main-vis{
    margin: 0 ;
    padding: 0;
    position: relative;
    margin-top: 126px;
    margin-bottom: 120px;
}
.bx-wrapper img {
  margin: 0 auto;
}
/*bxslider スタイルリセット*/
#main-vis .bx-wrapper {
    border: none;
    -moz-box-shadow: none;
    -webkit-box-shadow: none;
    box-shadow: none;
    margin: 0;
	overflow: hidden;
    padding: 0;
}
#main-vis .bx-wrapper .bx-viewport{
	overflow: visible !important;
	width: 100% !important; /* スライド画像の横幅 */
	margin: 0 auto;
}
/*各スライド設定*/
#main-vis .bx-wrapper .bx-viewport .slider > div{
    height: auto;
    overflow: hidden;
    position: relative;
}


/*キャッチコピー*/
#main-vis .catch{
    display: flex;
    flex-direction: column;
    height: 100%;
    justify-content: flex-end;
    padding: 1vmax;
    position: absolute;
        left: 0;
        bottom: 5%;
    width: 100%;
}
#main-vis .catch h2{
    color: #F9627B;
    font-family: 'Poppins', sans-serif;
    font-size: 32px;
    font-weight: normal;
    line-height: 1;
    margin: 0;
    width: 100%;
    text-shadow: white 1px 1px 15px, white -1px 1px 15px,
        white 1px -1px 15px, white -1px -1px 15px;
    text-align: center;
    letter-spacing: 2px;
}


/*メインビジュアル内告知エリア.catch.attention*/
#main-vis .attention{
    background-color: rgba(255,255,255,.75);
    border: #fff double 3px;
    height: auto;
    padding: .5rem;
    position: absolute;
        left: 10%;
        top: 120px;
    text-align: left;
    width: 80%;
}
#main-vis .attention ul li{
    align-items: center;
    display: flex;
    padding: .5rem;
}
#main-vis .attention ul li:not(:last-child) {
    border-bottom: #ccc dotted 1px;
}
#main-vis .attention ul li h2{
    color: #ff7474;
    font-size: 1rem;
    font-weight: normal;
    width: auto;
}
#main-vis .attention ul li h2::before{
    content: "\e645";
    font-family:"Material Icons";
}
#main-vis .attention ul li h2::after{
    content: "：";
}
#main-vis .attention ul li div.textwidget{
    flex: 1;
    padding: 0 .25rem;
}
#main-vis .attention ul li div.textwidget p{
    margin: 0;
}
#main-vis .attention ul li div.textwidget p a{
    color: #000;
}
/* TOPページと下層ページのグローバルメニュー表示を切り替え
---------------------------------------------------- */
.under-only-gm #menu {
 display: none;
}
/* 各コンテンツ section
---------------------------------------------------- */
/* front-wrap --- */
.front-wrap{
    background-color: #fff;
    margin: 0;
    padding: 0;
}
/* common 共通 --- */
#container .content section{}
section .section-wrap{
    margin: 0 auto;
    width: 900px;
}
/* common 共通 - header h2見出し --- */
section .section-wrap header{
    align-items: center;
    text-align: center;
}
section .section-wrap header h2{
    font-size: 2em;
    font-weight: normal;
    margin: 0 0 2rem;
}

/* common 共通 - .entry-list（お知らせ・ブログ新着表示 共通） --- */
.entry-list .section-wrap .article-list{
    margin: 0 auto;

}
.entry-list .section-wrap .article-list article{
    align-items: center;
    background-color: #fff;
    border-bottom: #ddd dotted 1px;
    display: flex;
    justify-content: flex-start;
    margin: 0;
    padding: 1rem 0;
    position: relative;
    transition: .3s;
}
.entry-list .section-wrap .article-list article:first-child{
    border-top: #ddd dotted 1px;
}

.entry-list .section-wrap .article-list article:hover{
    background-color: #f7f7f7;
    cursor:pointer;
}
.entry-list .section-wrap .article-list article .entry-meta{
    color: #666;
    margin: 0;
}
.entry-list .section-wrap .article-list article .entry-meta .entry-time{
    display: inline-block;
    padding: 0 0 0 .5em;
    width: 10em;
}
.entry-list .section-wrap .article-list article .entry-meta .category{
    background-color: #ddd;
    border: #ddd solid 1px;
    border-radius: 5px;
    color: #666;
    display: inline-block;
    padding: .25em;
    text-align: center;
    width: 12em;
}
.entry-list .section-wrap .article-list article .entry-title{
    flex: 1;
    font-size: 1rem;
    font-weight: normal;
    padding: 0 0 0 1em;
}
.entry-list .section-wrap .article-list article .entry-title a{
    color: #000;
    text-decoration: none;
}

.entry-list .section-wrap p.btn.more-link {
    margin: 2rem auto;
    text-align: center;
}

/* #important.entry-list --- */
section#important.entry-list{
    background-color: #FFD9DE;
    margin: 0;
}
#important .section-wrap{
    align-items: center;
    color: #fff;
    display: flex;
    flex-wrap: wrap;
    padding: 15px;
}
#important .section-wrap h2{
    background-color: #fff;
    color: #ff7474;
    display: inline-block;
    font-size: .875rem;
    font-weight: normal;
    margin: 0 1rem 0 0;
    padding: .5rem 1rem;
}
#important .section-wrap .article-wrap{
    flex:1;
}
#important .section-wrap .post{
    align-items: center;
    display: flex;
    flex-wrap: wrap;
    margin: 0 0rem;
    padding: 0 0rem;
    position: relative;
    margin-bottom: 15px;
}
#important .section-wrap .post:last-child{
    border-bottom: none;
    margin: 0;
    padding: 0;
}
#important .section-wrap .post .entry-meta{
    color: #fff;
    margin: 0;
    padding: 0 1rem;
}
#important .section-wrap .post h3{
    flex: 1;
    font-size: 16px;
    font-weight: normal;
    display: flex;
    align-items: center;
    border-bottom: 1px solid #FFD9DE;
}
#important .section-wrap .post h3 a{
    color:#000;
    text-decoration: none;
    display: block;
}
#important .section-wrap .post a:hover{
    color:#88CB7F;
}
#important .section-wrap .post h3 a:hover{
    cursor:pointer;
    transition: .3s;
    color:#88CB7F;
}
#important .section-wrap .post time{
    color:#000;
    margin-right: 20px;
}
#important .section-wrap .post time{
    color:#000;
    margin-right: 20px;
}
#important .section-wrap .post .important-ttl {
  background-color: #88CB7F;
  color: #fff;
  padding: 2px 5px;
  font-size: 14px;
}
#important .section-wrap .post .important-ttl {
  background-color: #88CB7F;
  color: #fff;
  padding: 8px 10px;
  font-size: 14px;
  margin-right: 20px;
}
/*
#important .section-wrap .post h3 a::after{
    position:absolute;
        top:0;
        right:0;
        bottom:0;
        left:0;
    z-index:1;
    pointer-events:auto;
    content:"";
    background-color:rgba(0,0,0,0);
}
#important .section-wrap .post::after{
    content: "\eaaa";
    font-family: 'Material Icons';
    font-size: 1.5rem;
    line-height: 1;
    padding: 0 0 0 1rem;
}*/
/* #各コンテンツ見出し　背景画像--- */
.section-wrap .header-wrap .ttl-bk{
  position: absolute;
  left: 50%;
  transform: translateX(-50%);
}

/* #about --- */
#about {
  margin: 0 0 0px;
  position: relative;
}
#about::before {
  content: "";
  background-image: url(../images/front/about/bk-before.png);
  background-repeat: no-repeat;
  position: absolute;
  top: 0%;
  left: 1%;
  width: 270px;
  height: 220px;
}
#about::after {
  content: "";
  background-image: url(../images/front/about/bk-after.png);
  background-repeat: no-repeat;
  position: absolute;
  bottom: 0%;
  right: 1%;
  z-index: 1;
  width: 270px;
  height: 220px;
}
#about .section-wrap {
  margin: 0 auto;
  width: 1260px;
  padding: 60px 0px;
  margin-bottom: 30px;
}
#about .section-wrap .contents {
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  justify-content: space-between;
  margin-bottom: 50px;
}
#about .section-wrap .contents .box {
  width: 33.3%;
  text-align: center;
  border-right: #666767 dotted 1px;
  padding: 0 40px;
  z-index: 2;
}
#about .section-wrap .contents .box:last-child {
  border-right: #ddd dotted 0px;
}
#about .section-wrap .contents .box h2 {
  font-family: 游明朝, "Yu Mincho", YuMincho, "Hiragino Mincho ProN", "Hiragino Mincho Pro", HGS明朝E, メイリオ, Meiryo, serif；;
  font-size: 32px;
  text-align: center;
  margin-bottom: 40px;
  color: #323333;
}
#about .section-wrap .contents .box img {
  border-radius: 10px;
  margin-bottom: 40px;
}
#about .section-wrap .contents .box p {
  font-size: 18px;
  margin-bottom: 40px;
}
#about .section-wrap .contents .box a.link-more {
  font-size: 20px;
  color: #000;
  text-decoration: none;
  align-items: center;
  display: flex;
  height: auto;
  justify-content: center;
  line-height: normal;
  padding: 0px;
  text-decoration: none;
  transition .3s; /* 滑らかな移動 */
}
#about .section-wrap .contents .box a.link-more::after {
  background-image: url(../images/front/arrow.png);
  content: "";
  display: inline-block;
  margin-right: 8px;
  width: 60px;
  height: 60px;
  background-repeat: no-repeat;
  margin-left: 10px;
}
#about .section-wrap .contents .box a.link-more:hover {
  color: #85C37C;
}

#about .section-wrap .contents .box a.link-more:hover::after {
  transform: translateX(15px); /* ホバー時に右に移動 */
  transition: transform 0.3s ease;
}

/* #introduction --- */
#introduction {
  margin: 0 0 10px;
  position: relative;
}
#introduction .section-wrap {
  margin: 0 auto;
  width: 100%;
  position: relative;
}
#introduction .section-wrap .contents {
  display: -webkit-flex;
  display: flex;
  width: 100%;
}
#introduction .section-wrap .contents .box {
  width: 50%;
  padding: 70px 7%;
}
#introduction .section-wrap .contents .box.time {
  background-color: #F7F3E5;
}
#introduction .section-wrap .contents .box.time table tr{
  border-bottom: 1px solid #CCCCCC;
}
#introduction .section-wrap .contents .box.time table th{
  width: 30%;
  font-size: 20px;
  padding: 25px;
  font-weight: 500;

}
#introduction .section-wrap .contents .box.time table td{
  width: 10%;
  font-size: 20px;
  padding: 25px;
  text-align: center;
}
#introduction .section-wrap .contents .box.time table td.f-green{
  color: #65B688;
  font-weight: bold;
}
#introduction .section-wrap .contents .box.news {
  background-color: #D3E6C8;
}
#introduction .section-wrap h2{
 color: #666666;
 font-size:36px;
 align-items: center;
 display: flex;
}
#introduction .section-wrap .box.time h2::before{
   content: "";
   background-image: url(../images/front/introduction/h2-time.png);
   background-repeat: no-repeat;
   width: 65px;
   height: 80px;
   padding-left: 5px;
   text-decoration: none;
}
#introduction .section-wrap .box.time p{
  text-align: right;
}
#introduction .section-wrap .box.news h2::before{
   content: "";
   background-image: url(../images/front/introduction/h2-news.png);
   background-repeat: no-repeat;
   width: 65px;
   height: 80px;
   padding-left: 5px;
   display: inline-block;
}
#introduction .br-layout {
  display: none;
}
/* #news --- */
section#news{
  position: relative;
}
#news{
  margin: 0 auto;
  border-radius: 20px;
  background-color: #fff;
  padding: 20px;
}
#news .post {
  margin-bottom: 20px;
}
.box.news .head {
  display: -webkit-flex;
  display: flex;
  justify-content: space-between;
  width: 100%;
}
.box.time h2 {
  margin-bottom: 0px;
}
.box.time table{
  margin: 0px 0 30px 0px;
}
.box.news .head h2 {
  margin-bottom: 20px;
}
.box.news a.link-more{
  display: -webkit-flex;
  display: flex;
  justify-content: space-between;
}
.box.news a.link-more {
  font-size: 20px;
  color: #000;
  text-decoration: none;
  align-items: center;
  display: flex;
  height: auto;
  justify-content: center;
  line-height: normal;
  padding: 0px;
  text-decoration: none;
}
.box.news a.link-more::after {
  background-image: url(../images/front/arrow.png);
  content: "";
  display: inline-block;
  margin-right: 8px;
  width: 60px;
  height: 60px;
  background-repeat: no-repeat;
  margin-left: 10px;
}
.box.news a.link-more:hover {
  color: #85C37C;
}
.box.news a.link-more:hover::after {
  transform: translateX(15px); /* ホバー時に右に移動 */
  transition: transform 0.3s ease;
}
#news .article-list .entry-meta{
  color: #65B688;
  font-size: 18px;
  margin: 0 0 5px 0;
}
#news .article-list .entry-title a{
  font-family: 'Noto Sans JP', sans-serif;
  color: #323333;
  font-size: 18px;
}

/* #faq --- */
#faq {
    margin: 0 0 0px;
    position: relative;
    padding: 100px 0px;
  }
#faq::before {
    content: "";
    background-image: url(../images/front/faq/bk-before.png);
    background-repeat: no-repeat;
    position: absolute;
    top: 0%;
    left: 0%;
    z-index: 1;
    width: 617px;
    height: 225px;
  }
  #faq::after {
      content: "";
      background-image: url(../images/front/faq/bk-after.png);
      background-repeat: no-repeat;
      position: absolute;
      bottom: 0%;
      right: 0;
      z-index: 1;
      width: 617px;
      height: 225px;
    }
#faq .section-wrap {
    margin: 0 auto;
    width: 960px;
    padding-bottom: 60px;
  }
#faq .section-wrap h2 {
    font-size: 36px;
    text-align: center;
    z-index: 2;
    position: relative;
    color: #666666;
    margin-bottom: 70px;
  }
  #faq .section-wrap .box{
    z-index: 2;
    position: relative;
    margin-bottom: 60px;
  }
  #faq .section-wrap .box dl {
    border-bottom: #B6D6AA dotted 1px;
    padding: 24px 0px;
    font-size: 18px;
  }
  #faq .section-wrap .box dl dt{
    color: #85C37C;
    font-weight: normal;
    margin-bottom: 15px;
  }
  #faq .section-wrap .box dl dt::before{
    content: "Q.";
    margin-right: 15px;
    font-weight:normal;
    color: #85C37C;
    font-weight: bold;
  }
  #faq .section-wrap .box dl dd::before{
    content: "A.";
    margin-right: 15px;
    color: #DF6A6D;
    font-weight: bold;
  }
  #faq .section-wrap .flex-area{
    display: -webkit-flex;
    display: flex;
    justify-content: center;
    align-items: center;
  }
  #faq .section-wrap .flex-area .inquiry-btn {
    margin: 0px 40px;
    z-index: 3;
  }
  #faq .section-wrap .flex-area a.link-more {
    font-size: 20px;
    color: #000;
    text-decoration: none;
    align-items: center;
    display: flex;
    height: auto;
    justify-content: center;
    line-height: normal;
    padding: 0px;
    text-decoration: none;
  }
  #faq .section-wrap .flex-area a.link-more::after {
    background-image: url(../images/front/arrow.png);
    content: "";
    display: inline-block;
    margin-right: 8px;
    width: 60px;
    height: 60px;
    background-repeat: no-repeat;
    margin-left: 10px;
  }
  #faq .section-wrap .flex-area .inquiry-btn a{
    background-color: #EDA84A;
    border: 1px solid #EDA84A;
    color: #fff;
    display: block;
    margin: 0 auto;
    padding: 20px 50px;
    text-decoration: none;
    width: 300px;
    -webkit-border-radius: 30px;
    -moz-border-radius: 30px;
    border-radius: 50px;
    text-align: center;
    font-size: 20px;
    font-weight: bold;
  }
  #faq .section-wrap .flex-area .inquiry-btn a:hover{
    background-color:#fff;
    border: solid 1px #EDA84A;
    color: #EDA84A;
  }
  #faq .section-wrap .flex-area a.link-more:hover {
  color: #85C37C;
  }
  #faq .section-wrap .flex-area a.link-more:hover::after {
    transform: translateX(15px); /* ホバー時に右に移動 */
    transition: transform 0.3s ease;
  }




/* #outline--- */
section#outline{
  position: relative;
  padding: 90px 0px;
  background-color: #EAF5F5;
}
#outline .section-wrap{
  width: 1260px;
  margin: 0 auto;
  background-color: #fff;
  border-radius: 60px;
  padding: 60px 30px;
}
#outline .section-wrap h2 {
  font-size: 36px;
  text-align: center;
  z-index: 2;
  position: relative;
  color: #666666;
  margin-bottom: 50px;
  }

#outline .section-wrap .contents  {
  display: -webkit-flex;
  display: flex;
  width: 100%;
  justify-content: space-between;
  color: #323333;
}
#outline .section-wrap .contents .map-area{
  width: 60%;
}
#outline .section-wrap .contents .map-area .map{
  width: 100%;
  max-width: 700px;
  border-radius: 10px;
}
#outline .section-wrap .contents .info-area{
  width: 35%;
}
#outline .section-wrap .contents .info-area .access {
  margin: 20px 0px 10px 0px;
}
#outline .section-wrap .contents .info-area .tel {
  display: -webkit-flex;
  display: flex;
  font-size: 24px;
  align-items: center;
  margin: 0px 0px 20px 0px;
}
#outline .section-wrap .contents .info-area .tel::before{
  background-image: url(../images/front/outline/ico-tel.png);
  background-position: center center;
  background-repeat: no-repeat;
  content: "";
  width: 26px;
  height: 26px;
  display: inline-block;
  margin-right: 12px;
}
#outline .section-wrap .contents .info-area dl.car {
  margin-bottom: 24px;
}
#outline .section-wrap .contents .info-area dl.car dt::before{
  background-image: url(../images/front/outline/ico-car.png);
  background-position: center center;
  background-repeat: no-repeat;
  content: "";
  width: 20px;
  height: 17px;
  display: inline-block;
  margin-right: 12px;
}
#outline .section-wrap .contents .info-area dl.car dt,
#outline .section-wrap .contents .info-area dl.train dt{
  display: -webkit-flex;
  display: flex;
  align-items: center;
  font-size: 20px;
  font-weight: normal;
  margin-bottom: 3px;
}
#outline .section-wrap .contents .info-area dl.train dt::before{
  background-image: url(../images/front/outline/ico-train.png);
  background-position: center center;
  background-repeat: no-repeat;
  content: "";
  width: 20px;
  height: 20px;
  display: inline-block;
  margin-right: 12px;
}
#outline .section-wrap .contents .info-area dl dd {
  margin-left: 30px;
}


/* #recruit--- */
section#recruit{
  position: relative;
}
#recruit .section-wrap{
  width: 100%;
}
#recruit .section-wrap .header-wrap h2 {
    color: #88CB7F;
    font-size: 24px;
    z-index: 40;
    text-align: center;
    position: relative;
    padding: 30px 0px;
    margin-bottom: 50px;
  }
#recruit .section-wrap .contents{
  display: -webkit-flex;
  display: flex;
  justify-content: space-between;
  margin: 0 auto;
  color: #323333;
}
#recruit .section-wrap .contents .left-area,
#recruit .section-wrap .contents .right-area{
  width: 50%;
}
#recruit .section-wrap .contents .left-area {
  padding: 60px 8% 20px 8%;
}
#recruit .section-wrap .contents .left-area h2{
  font-size: 36px;
  text-align: center;
  z-index: 2;
  position: relative;
  color: #666666;
  margin-bottom: 50px;
}
#recruit .section-wrap .contents .left-area p {
  margin-bottom: 80px;
}
#recruit .section-wrap .contents .left-area ul{
  display: -webkit-flex;
  display: flex;
  justify-content: space-between;
  -webkit-flex-wrap: wrap;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
}
#recruit .section-wrap .contents .left-area ul li{
  width: 45%;
}
#recruit .section-wrap .contents .left-area ul li a {
   font-size: 18px;
   color: #000;
   text-decoration: none;
   align-items: center;
   display: block;
   height: auto;
   justify-content: flex-start;
   line-height: normal;
   padding: 0px;
   text-decoration: none;
   position: relative;
   margin-bottom: 80px;
 }
#recruit .section-wrap .contents .left-area ul li a::after {
   background-image: url(../images/front/recruit/arrow.png);
   content: "";
   display: inline-block;
   width: 60px;
   height: 60px;
   background-repeat: no-repeat;
   position: absolute;
   right: 10%;
   top: 0;
    bottom: 0;
    margin: auto 0;
 }
#recruit .section-wrap .contents .left-area ul li a:hover {
   color: #3DA37F;
 }
#recruit .section-wrap .contents .left-area ul li a:hover::after {
   transform: translateX(15px); /* ホバー時に右に移動 */
   transition: transform 0.3s ease;
 }

 /* #event--- */
 section#event{
   position: relative;
   padding: 90px 0px 60px 0px;
 }
 #event::before {
  content: "";
  background-image: url(../images/front/about/bk-before.png);
  background-repeat: no-repeat;
  position: absolute;
  top: 0%;
  left: 1%;
  z-index: 1;
  width: 270px;
  height: 220px;
}
#event::after {
  content: "";
  background-image: url(../images/front/about/bk-after.png);
  background-repeat: no-repeat;
  position: absolute;
  bottom: 0%;
  right: 1%;
  z-index: 1;
  width: 270px;
  height: 220px;
}
 #event .section-wrap {
   width: 1260px;
   margin: 0 auto;
   background-color: #fff;
   border-radius: 60px;
 }
 #event .section-wrap h2 {
    font-size: 36px;
    text-align: center;
    z-index: 2;
    position: relative;
    color: #666666;
    margin-bottom: 50px;
  }
 #event .section-wrap .contents .box a {
   align-items: center;
    color: #000;
    font-weight: bold;
    display: -webkit-flex;
    display: flex;
    height: 100%;
    justify-content: flex-start;
    position: relative;
    text-decoration: none;
    width: 100%;
    margin-bottom: 30px;
    z-index: 2;
 }
  #event .section-wrap .contents .box .cont {
    margin-left: 45px;
  }
   #event .section-wrap .contents .box p{
     margin: 0;
   }
 #event .section-wrap .contents .box .head {
   display: -webkit-flex;
   display: flex;
   font-weight: normal;
   font-size: 18px;
    margin-bottom: 20px;
 }
 #event .section-wrap .contents .box .head .time{
   display: block;
   font-weight: normal;
   color: #85C37C;
   margin-right: 15px;
 }
  #event .section-wrap .contents .box .txt {
    font-weight: normal;
  }
 #event .section-wrap .flex-area{
     display: -webkit-flex;
     display: flex;
     justify-content: center;
     margin: 55px auto;
     align-items: center;
   }
   #event .section-wrap .flex-area div {
     margin: 0px 40px;
     z-index: 3;
   }
   #event .section-wrap .flex-area a.link-more {
     font-size: 20px;
     color: #000;
     text-decoration: none;
     align-items: center;
     display: flex;
     height: auto;
     justify-content: center;
     line-height: normal;
     padding: 0px;
     text-decoration: none;
   }
   #event .section-wrap .flex-area a.link-more::after {
     background-image: url(../images/front/arrow.png);
     content: "";
     display: inline-block;
     margin-right: 8px;
     width: 60px;
     height: 60px;
     background-repeat: no-repeat;
     margin-left: 10px;
   }
   #event .section-wrap .flex-area a.link-more:hover {
  color: #85C37C;
  }
  #event .section-wrap .flex-area a.link-more:hover::after {
    transform: translateX(15px); /* ホバー時に右に移動 */
    transition: transform 0.3s ease;
  }
   #event .section-wrap .flex-area .insta-btn a{
     background-color: #FFF;
     border: 2px solid #CCCCCC;
     color: #323333;
     padding: 20px 50px;
     text-decoration: none;
     width: 300px;
     -webkit-border-radius: 30px;
     -moz-border-radius: 30px;
     border-radius: 50px;
     text-align: center;
     font-size: 20px;
     align-items: center;
     display: flex;
     height: auto;
     justify-content: center;
     line-height: normal;
     font-weight: bold;
   }
   #event .section-wrap .flex-area .insta-btn a::before{
     background-image: url(../images/front/event/ico-insta.png);
     content: "";
     display: inline-block;
     margin-right: 8px;
     width: 32px;
     height: 32px;
     background-repeat: no-repeat;
     margin-left: 10px;
   }
   #event .section-wrap .contents .box .head .time:hover {
     text-decoration: none;
   }
   #event .section-wrap .flex-area .insta-btn a:hover{
     background-color:#F2F2F2;
     border: solid 2px #CCCCCC;
     color: #323333;
   }
   #event .section-wrap .contents .box a:hover {
     text-decoration: underline;
   }


/* perfect-scrollbar.js スクロールバー設定 */
.ps__rail-x, .ps__rail-y {
    opacity: 0.6 !important;
}
.ps__thumb-y {
    background-color: #ddd !important;
}

/* お知らせカテゴリタブリスト */
.news-list-wrap {
    align-items: flex-start;
    display: flex;
    flex-wrap: wrap;
}
/* 各カテゴリタブ */
.tab-switch {
    display: none;
}
.tab-label {
    color: #000;
    flex: 1;
    margin-right: 5px;
    order: -1;
    padding: 18px;
    text-align: center;
    transition: .3s;
    font-family: "Noto Sans JP", "Hiragino Kaku Gothic ProN", Meiryo, sans-serif;
}
.news-list-wrap .tab-label:last-of-type {
    margin-right: 0;
}
.tab-label:hover {
    background: #efefef;
    cursor: pointer;
}
/* 各カテゴリタブ - アクティブ*/
.tab-switch:checked+.tab-label {
    background: #ddd;
}
/* カテゴリタブ - アクティブ：全て*/
.tab-switch:checked+.tab-label.all {
    background:#FFD9DE;
    position: relative;
    display: inline-block;
    padding: 18px;
    color: #555;
    font-size: 16px;
}
.tab-label.all:hover {
    background:#FFD9DE;
    position: relative;
    display: inline-block;
    padding: 18px;
    color: #555;
    font-size: 16px;
}
.tab-switch:checked+.tab-label.all:before {
  content: "";
  position: absolute;
  top: 100%;
  left: 50%;
  margin-left: -15px;
  border: 15px solid transparent;
  border-top: 15px solid #FFD9DE;
}
/* カテゴリタブ - アクティブ：お知らせ*/
.tab-switch:checked+.tab-label.news {
    background:#FFF5CA;
    position: relative;
    display: inline-block;
    padding: 18px;
    color: #555;
    font-size: 16px;
}
.tab-label.news:hover {
    background:#FFF5CA;
    position: relative;
    display: inline-block;
    padding: 18px;
    color: #555;
    font-size: 16px;
}
.tab-switch:checked+.tab-label.news:before {
  content: "";
  position: absolute;
  top: 100%;
  left: 50%;
  margin-left: -15px;
  border: 15px solid transparent;
  border-top: 15px solid #FFF5CA;
}
/* カテゴリタブ - アクティブ：更新情報*/
.tab-switch:checked+.tab-label.update {
    background:#EAEFBF;
    position: relative;
    display: inline-block;
    padding: 18px;
    color: #555;
    font-size: 16px;
}
.tab-label.update:hover {
    background:#EAEFBF;
    position: relative;
    display: inline-block;
    padding: 18px;
    color: #555;
    font-size: 16px;
}
.tab-switch:checked+.tab-label.update:before {
  content: "";
  position: absolute;
  top: 100%;
  left: 50%;
  margin-left: -15px;
  border: 15px solid transparent;
  border-top: 15px solid #EAEFBF;
}
/* カテゴリタブ - アクティブ：採用情報*/
.tab-switch:checked+.tab-label.recruit {
    background:#BDE5C0;
    position: relative;
    display: inline-block;
    padding: 18px;
    color: #555;
    font-size: 16px;
}
.tab-label.recruit:hover {
    background:#BDE5C0;
    position: relative;
    display: inline-block;
    padding: 18px;
    color: #555;
    font-size: 16px;
}
.tab-switch:checked+.tab-label.recruit:before {
  content: "";
  position: absolute;
  top: 100%;
  left: 50%;
  margin-left: -15px;
  border: 15px solid transparent;
  border-top: 15px solid #BDE5C0;
}



/* 各カテゴリタブ コンテンツ */
.tab-content {
    display: none;
    height: auto;
    padding: 1rem 1rem 0 0;
    position: relative;
    width: 100%;
}
/* 各カテゴリタブ コンテンツ - アクティブ*/
.tab-switch:checked+.tab-label+.tab-content {
    display: block;
}

/*カテゴリアイコン*/
#news .article-list article .entry-meta .category{
    background-color:rgba(255,255,255,1.00);
    border: rgba(3,164,239,.50) solid 1px;
}
#news .article-list article .entry-meta .category.important{
    background-color:rgba(255,255,255,1.00);
    border: rgba(236,109,113,.50) solid 1px;
}





/* TOPのみheader高さ調節
---------------------------------------------------- */
#site-title #logo-container {
/*max-height: 0px!important;*/
}

/* メディアクエリ（ブレイクポイントごと）
---------------------------------------------------- */

@media(min-width:1921px){ /*メインビジュアル画像幅（1920px）より広い画面サイズの時*/
    /* メインビジュアルスライダーdiv id="main-vis" #main-vis （bxslider）
    ---------------------------------------------------- */
    /*各スライド設定*/
    #main-vis .bx-wrapper .bx-viewport .slider > div img{
        width: 100%;
    }
}
@media(max-width:1850px) {
  #introduction .section-wrap .contents .box.time table th,
  #introduction .section-wrap .contents .box.time table td {
      padding: 25px 10px;
  }
  #introduction .section-wrap .contents .box.time {
    padding: 70px 3%;
  }
  #recruit .section-wrap .contents .right-area img {
    background-size: contain;
    height: 100%;
    object-fit: cover;
  }
  #recruit .section-wrap .contents .left-area {
      padding: 60px 3%;
  }
}
@media(max-width:1500px) {
  #about .section-wrap {
    margin-bottom: 100px;
  }
  #about::after {
    bottom: -10%;
  }
}
@media(max-width:1366px) {
  #introduction .section-wrap .contents .box.news {
    padding: 70px 3%;
  }
  /* #outline --- */
  section#outline {
    padding:60px 0px;
  }
  #main-vis {
    margin-bottom: 60px;
  }


}
@media(max-width:1260px) {
/* 各コンテンツ section
---------------------------------------------------- */
    /* common 共通 --- */
    #container .content section{}
    section .section-wrap{
        width: 90%!important;
    }
    /* common 共通 - header h2見出し --- */
    section .section-wrap header h2{
        font-size: 1.5em;
    }

    /* #about --- */
    #about .section-wrap .contents .box {
      padding: 0 20px;
    }
    #about .section-wrap .contents .box h2 {
      font-size: 26px;
    }
    #about .section-wrap .contents .box p {
      font-size: 15px;
    }
    #about .section-wrap .contents .box img {
      margin-bottom: 10px;
    }
    #about .section-wrap .contents .box a.link-more {
      font-size: 18px;
    }
    /* #introduction --- */
    #introduction .section-wrap {
      width: 100%!important;
    }
    #introduction .section-wrap .contents .box.time table th,
    #introduction .section-wrap .contents .box.time table td {
      font-size: 16px;
    }
    #news .article-list .entry-title a,#news .article-list .entry-meta {
      font-size: 15px;
    }
    .box.news a.link-more {
      font-size: 18px;
    }

    /* #faq --- */
    #faq .section-wrap .flex-area a.link-more {
      font-size: 18px;
    }
    #faq .section-wrap .flex-area .inquiry-btn a {
      font-size: 18px;
    }
    #faq .section-wrap .box dl {
      font-size: 15px;
    }

    /* #outline --- */
    #outline .section-wrap .contents .map-area {
      width: 50%;
    }
    #outline .section-wrap .contents .info-area {
      width: 47%;
    }
    #outline .section-wrap .contents .info-area .access,
    #outline .section-wrap .contents .info-area dl dd {
      font-size: 15px;
    }
    #outline .section-wrap .contents .info-area .tel {
      font-size: 22px;
    }
    #outline .section-wrap .contents .info-area dl.car dt, #outline .section-wrap .contents .info-area dl.train dt {
      font-size: 18px;
    }
    /* #recruit --- */
    #recruit .section-wrap {
      width: 100%!important;
    }
    #recruit .section-wrap .contents .left-area ul li {
      width: 49%;
    }
    #recruit .section-wrap .contents .left-area {
      width: 60%;
      padding: 50px 3% 0px 3%;
    }
    #recruit .section-wrap .contents .right-area {
      width: 40%;
    }
    #recruit .section-wrap .contents .left-area p {
      margin-bottom: 50px;
      font-size: 15px;
    }
    #recruit .section-wrap .contents .left-area h2 {
      margin-bottom: 30px;
    }

    /* #event --- */
    #event .section-wrap .contents .box .head {
      font-size: 15px;
    }
    #event .section-wrap .contents .box .txt {
      font-size: 15px;
    }
    #event .section-wrap .flex-area a.link-more {
      font-size: 18px;
    }
    #event .section-wrap .flex-area .insta-btn a {
      font-size: 18px;
    }





}
@media(max-width:1024px) {

    /*トップページの背景画像サイズ指定*/
    body {
        background-size: auto 60vmax;
    }

/* 共通要素
---------------------------------------------------- */
    /* .btn.more-link */
    p.btn.more-link{}
    p.btn.more-link a{

    }

    /* TOPページと下層ページのグローバルメニュー表示を切り替え
    ---------------------------------------------------- */
    .under-only-gm #menu {
     display: block;
    }
/* メインビジュアル div id="main-vis" #main-vis
---------------------------------------------------- */
    #main-vis {
      margin-bottom: 0px;
      margin-top: 80px;
    }
    /*各スライド設定*/
    #main-vis .bx-wrapper .bx-viewport .slider > div{
        height: 60vmax;
        position: relative;
    }

    #main-vis .bx-wrapper .bx-viewport .slider > div img{
        display: none;
    }
    #main-vis .bx-wrapper .bx-viewport .slider .slide01{
        background: url("../images/front/main-vis/slide01_re.jpg") center center no-repeat;
        background-size: contain;
    }
    #main-vis .bx-wrapper .bx-viewport .slider .slide02{
        background: url("../images/front/main-vis/slide02.jpg") center center no-repeat;
        background-size: contain;
    }


/* 各コンテンツ section
---------------------------------------------------- */
    /* common 共通 --- */
    #container .content section{}
    /* common 共通 - .entry-list（お知らせ・ブログ新着表示 共通） --- */
    .entry-list .section-wrap .article-list article{
        border-bottom: #ccc dotted 1px;
        flex-wrap: wrap;
        padding: .5rem 0;
    }
    .entry-list .section-wrap .article-list article::after{
        display: none;
    }
    .entry-list .section-wrap .article-list article .entry-meta ,
    .entry-list .section-wrap .article-list article .entry-title{
        width: 100%;
    }
    .entry-list .section-wrap .article-list article .entry-meta{
        align-items: center;
        display: flex;
        flex-wrap: wrap;
    }
    .entry-list .section-wrap .article-list article .entry-meta .entry-time{
            padding: 0 .5em;
            width: auto;
    }
    .entry-list .section-wrap .article-list article .entry-meta .category{
            width: auto;
    }
    .entry-list .section-wrap .article-list article .entry-title{
        padding: .5em 0 0;
    }
    .entry-list .section-wrap .article-list article .entry-title::before{
        content: '\e5df';
        display: inline-block;
        font-family: 'Material Icons';
        padding: 0;
    }

    /* #important.entry-list --- */
    #important .section-wrap::after{
        display: none;
    }
    #important .section-wrap h2{
        background-color: transparent;
        color: #fff;
        display: block;
        font-size: 1.14rem;
        font-weight: bold;
        margin: 0;
        padding: 0 0 .5rem;
        text-align: center;
        width: 100%;
    }
    #important .section-wrap h2::before{
        content: "\e000";
        font-family: 'Material Icons';
        font-weight: normal;
        padding: 0 .25rem 0 0;
    }
    #important .section-wrap .post{
        justify-content: center;
        width: 100%;
    }
    #important .section-wrap .post:last-child{
        margin: 0 0rem;
        padding: 0 0rem;
    }

    /* #about --- */
    /* #about {
       margin: -50px 0 0px;
     }*/
    #about .section-wrap .contents .box img {
      border-radius: 10px;
    }
    /* #introduction--- */
    #introduction .section-wrap h2 {
      font-size: 30px;
      margin-bottom: 20px;
    }
    #introduction .br-layout {
      display: block;
    }
    #introduction .section-wrap .contents .box.time table th, #introduction .section-wrap .contents .box.time table td {
      padding: 10px 2px;
    }
    /* #faq --- */

    #faq {
      padding: 140px 0px;
    }
    #faq .section-wrap h2 {
      font-size: 30px;
      margin-bottom: 30px;
    }
    /* #introduction --- */
    #introduction::before {
      display: none;
    }


    /* #news --- */
    #news::before {
      display: none;
    }
    #news .header-wrap h2 {
      margin-bottom: 60px
    }

    /* #outline --- */
    #outline .section-wrap h2 {
      font-size: 30px;
      margin-bottom: 30px;
    }

    /* #recruit --- */
    #recruit .section-wrap {
      padding-bottom: 0px;
    }
    #recruit .section-wrap h2 {
      font-size: 30px;
      margin-bottom: 30px;
    }
    section#recruit {
      padding: 0px 0px 10px 0px;
    }
    section#recruit {
      padding: 0px 0px 10px 0px;
    }
    #recruit .section-wrap .contents .box p {
      font-size: 18px;
    }
    #recruit .section-wrap .contents .box ul li {
      width: 48%;
    }
    #recruit .section-wrap .contents .box ul li a {
      padding: 1.5rem;
    }
    /* #event --- */
    #event .section-wrap h2 {
      font-size: 30px;
      margin-bottom: 30px;
    }


    /* 各カテゴリタブ */
    .tab-label {
        font-size: .875rem !important;
    }

}
@media(max-width:900px) {
  #main-vis .bx-wrapper .bx-viewport .slider > div {
    height: 50vmax;
  }
  #main-vis .bx-wrapper .bx-viewport {
    height: 500px !important;
  }
  /* #about --- */
  #about .section-wrap .contents {
    display: -ms-flexbox;
    display: -webkit-block;
    flex-wrap: wrap;
  }
  #about .section-wrap .contents .box {
    width: 49%;
    border-right: #666767 dotted 0px;
    margin: 0 auto;
  }
  #about .section-wrap .contents .box:last-child{
    margin-top: 30px;
  }
  #about .section-wrap .contents .box h2 {
    margin-bottom: 15px;
  }
  #about .section-wrap .contents .box img {
  }
  #about .section-wrap .contents .box p {
    margin-bottom: 10px;
  }
  #about::after{

  }
  #introduction .section-wrap {
    padding: 0px;
  }
  #introduction .section-wrap .contents {
    display: -webkit-block;
    display: block;
  }
  #introduction .section-wrap .contents .box.time {
    width: 100%;
    padding: 40px 7%;
  }
  #introduction .section-wrap .contents .box.news {
    width: 100%;
    padding: 40px 7% 60px 7%
  }
  #introduction .section-wrap .contents .box.time table th, #introduction .section-wrap .contents .box.time table td {
    padding: 20px 2px;
  }
  #introduction .br-layout{
    display: none;
  }
  #outline .section-wrap .contents {
    display: -webkit-block;
    display: block;
  }
  #outline .section-wrap .contents .map-area,
  #outline .section-wrap .contents .info-area {
    width: 100%;
  }
  #outline .section-wrap .contents .map-area .map{
    height: 250px;
  }
  #outline .section-wrap .contents .map-area {
    margin-bottom: 20px;
  }
  #outline .section-wrap .contents .info-area {
    text-align: center;
  }
  #outline .section-wrap .contents .info-area .tel {
    text-align: center;
    justify-content: center;
  }
  #outline .section-wrap .contents .info-area dl.car dt, #outline .section-wrap .contents .info-area dl.train dt {
    justify-content: center;
  }
  #outline .section-wrap .contents .info-area .access, #outline .section-wrap .contents .info-area dl dd {
    margin-left: 0px;
  }
  #recruit .section-wrap .contents {
    display: -webkit-block;
    display: block;
  }
  #recruit .section-wrap .contents .left-area {
    width: 100%;
  }
  #recruit .section-wrap .contents .right-area {
    width: 100%;
  }
  #recruit .section-wrap .contents .left-area {
    padding: 50px 8% 0px 8%;
  }
  #event .section-wrap .contents .box .head {
    margin-bottom: 5px;
  }
}
@media(min-width:769px) {}
@media(max-width:768px) {
/* メインビジュアルスライダーdiv id="main-vis" #main-vis （bxslider）
---------------------------------------------------- */
    #main-vis .bx-wrapper .bx-viewport .slider > div img{
        display: none;
    }
    #main-vis .bx-wrapper .bx-viewport .slider .slide01{
        background: url("../images/front/main-vis/slide01_sp_re.jpg") top center no-repeat;
        background-size: contain;
    }
    #main-vis .bx-wrapper .bx-viewport .slider .slide02{
        background: url("../images/front/main-vis/slide02_sp.jpg") top center no-repeat;
        background-size: contain;
    }
    /*メインビジュアル内告知エリア.catch.attention*/

    #main-vis .attention ul li{
        align-items: flex-start;
        flex-direction: column;
    }
    #main-vis .attention ul li h2::after{
        display: none;
    }
    #main-vis .catch h2 {
      font-size: 30px;

    }

    .section-wrap h2 {
      line-height: 30px;
    }

/* 各コンテンツ section
---------------------------------------------------- */
    /* common 共通 - header h2見出し --- */
    section .section-wrap header h2 {
        margin: 0 0 1.5rem;
    }



    /* #important.entry-list --- */
    #important .section-wrap {
      padding: 15px 0px!important;
    }
    #important .section-wrap .post{
        flex-wrap: wrap;
        justify-content: flex-start;
        width: 100%;
        display: block;
    }
    #important .section-wrap .post .entry-meta ,
    #important .section-wrap .post h3{
        width: 100%;
        display: block;
    }
    #important .section-wrap .post .entry-meta {
        padding: 0;
    }
    #important .section-wrap .post h3 a {
      display: block;
      margin-top: 20px;
    }
    #about::before {
      width: 200px;
      background-size: contain;
    }
    #about::after {
      width: 200px;
      bottom: -12%;
      background-size: contain;
    }
    #about .section-wrap {
      padding: 60px 0px 0px 0px;
      margin-bottom: 130px;
    }

    /* #introduction --- */
    #introduction .section-wrap ul  {
    }
    #introduction .section-wrap ul li {
      width: 40%;
      margin: 0 auto;
      text-align: center;
    }
    #introduction .section-wrap ul li span{
      display: block;
    }
    .box.news a.link-more {
      margin-top:20px
    }


    /* #faq --- */
    #faq::before {
      background-size: contain;
      width: 400px;
    }
    #faq::after {
      background-size: contain;
      width: 400px;
      bottom: -10%;
      margin-bottom: 10px;
    }
    #faq .section-wrap {
      display: -webkit-block;
      display: -ms-blockbox;
      display:block;
    }
    #faq .section-wrap .box {
      width: 100%;
      margin-bottom: 30px;
    }
    #faq .section-wrap .flex-area .inquiry-btn a {
      width: 230px;
    }
    #faq .section-wrap .flex-area {
      justify-content: space-around;
    }
    #faq .section-wrap .flex-area div {
      margin: 0px 10px;
    }


    /* #outline --- */
    #outline .section-wrap .header-wrap h2 {
      margin-bottom: 70px;
    }
    #outline .section-wrap .contents .name span {
      background: none;
    }
    #outline .section-wrap .contents .name {
      font-size: 16px;
    }
    #outline .section-wrap .contents .tel {
      margin: 10px auto;
      max-width: 100%;
    }
    #outline .section-wrap .contents .tel p span {
      font-size: 16px;
    }
    #outline .section-wrap .contents .form  {
      max-width: 100%;
    }
    #outline .section-wrap .contents .form .inquiry::before {
      display: none;
    }
    #outline .section-wrap .contents .form .faq::before {
      display: none;
    }
    #outline .section-wrap .contents .map {
      display: -webkit-block;
      display: block;
    }
    #outline .section-wrap .contents .map .box {
      width: 100%;
      margin-bottom: 30px;
    }
     #outline .section-wrap .contents .map .box dd {
       width: 67%;
     }

     /* #recruite --- */
     #recruit .section-wrap .contents {
       display: -webkit-block;
       display: block;
       justify-content: space-between;
     }
     #recruit .section-wrap .contents .box{
      width: 100%;
     }
     #recruit .section-wrap .contents .box p {
       margin-top: 20px;
     }
     #recruit .section-wrap .contents .box ul li {
       text-align: center;
     }
     #recruit .section-wrap .contents .box ul li a {
       padding: 1.8rem 0px;
       font-size: 14px;
     }
     /* #event --- */
     #event::before {
        width: 200px;
        background-size: contain;
      }
      #event::after {
         width: 200px;
         bottom: -12%;
         background-size: contain;
       }
     section#event {
       margin-bottom: 50px;
     }
     #event .section-wrap .flex-area div {
       margin: 0px 10px;
     }
     #event .section-wrap .flex-area .insta-btn a {
        width: 230px;
        padding: 15px 0px;
     }



    /* #news --- */
    section#news{
        margin: 0px 0 ;
    }
    #news{
    }
    #news .header-wrap{

    }
    #news .header-wrap header{
    }
    #news .header-wrap header::after{
        display: none;
    }
    #news .header-wrap header h2{
        margin: 0;
    }
    #news .header-wrap p.btn.more-link {
        margin: 0 ;
    }
    #news .article-list{
        padding: 0rem;
        width: 100%;
        margin-top: 0px;
    }
    .tab-content {
      padding:1rem 0rem 0rem 0rem;
    }

    /* #recruit --- */
    section#recruit{
        padding: 0 0 50px;
    }

}
@media(max-width:767px) {



}
@media(max-width:576px) {

  /* TOPのみheader高さ調節
  ---------------------------------------------------- */
  #site-title #logo-container {
  /*  max-height: 0px!important;*/
  }
  /* メインビジュアル div id="main-vis" #main-vis
  ---------------------------------------------------- */

  #main-vis .bx-wrapper .bx-viewport {
    height: 420px !important;
  }
  #main-vis {
    margin-top:
  }
    /*キャッチコピー*/
    #main-vis .catch{
        text-align: center;
    }

    /*メインビジュアル内告知エリア.catch.attention*/
    #main-vis .attention{
        text-align: left;
    }
    #main-vis .catch h2 {
      font-size: 26px;
    }

/* 各コンテンツ section
---------------------------------------------------- */
    /* common 共通 --- */
    #container .content section{}
    #container .content section .section-wrap{
        width: 94%;
    }
    /* common 共通 - .entry-list（お知らせ・ブログ新着表示 共通） --- */
    .entry-list .section-wrap .article-list article .entry-meta .category{
        line-height: 1;
    }
    .entry-list .section-wrap .article-list article .entry-title{
        font-size: .875rem;
        line-height: 1;
        padding: 0;
    }

    /* common 共通 - h2見出し --- */
    #container .content section .section-wrap > h2{
        font-size: 1.75em;
    }
    .section-wrap {
      padding: 50px 0px;
    }
    /* #important.entry-list --- */
    #container .content #important .section-wrap h2{
        font-size: 1.14rem;
    }
    .section-wrap .header-wrap .ttl-bk{
      display: none;
    }

    /* #about --- */
    #about .section-wrap .contents .box h2 {
      text-shadow: white 1px 1px 15px, white -1px 1px 15px, white 1px -1px 15px, white -1px -1px 15px;
    }
    #about .section-wrap .contents .box {
      width: 100%;
      margin-bottom: 50px;
    }
    #about .section-wrap .contents .box:last-child {
      margin-top: 0px;
    }
    #about .section-wrap .contents .box p {
      margin-top: 5px;
      width: 90%;
      text-align: center;
      margin: 0 auto 15px auto;
    }
    #about .section-wrap .contents .box a.link-more {
      justify-content: flex-end;
    }
    #about .section-wrap .contents .box a.link-more::after {
      background-image: url(../images/front/arrow-sp.png);
      content: "";
      display: inline-block;
      margin-right: 8px;
      width: 40px;
      height: 40px;
      background-repeat: no-repeat;
      margin-left: 10px;
    }

    /* #faq--- */
    #faq {
      padding: 80px 0px;
    }
    #faq .section-wrap {
      padding-bottom: 70px;
    }
    #faq .section-wrap h2 {
      text-shadow: white 1px 1px 20px, white -1px 1px 20px, white 1px -1px 20px, white -1px -1px 20px;
      margin-bottom: 10px;
    }
    #faq .section-wrap .flex-area {
      display: block;
      display: -webkit-block;
    }
    #faq .section-wrap .flex-area div {
      position: relative;
      margin-bottom: 20px;
    }
    #faq .section-wrap .flex-area .inquiry-btn a {
      width: 80%;
      padding: 15px;
    }
    #faq .section-wrap .flex-area a.link-more {
      justify-content: end;
      margin-bottom: 50px;
    }
    #faq .section-wrap .flex-area a.link-more::after {
      background-image: url(../images/front/arrow-sp.png);
      content: "";
      display: inline-block;
      margin-right: 8px;
      width: 40px;
      height: 40px;
      background-repeat: no-repeat;
      margin-left: 10px;
    }

    /* #introduction --- */
    #introduction {
      margin: 0 0 0 0px;
    }
    #introduction .section-wrap {
    }
    #introduction .section-wrap h2 {
      font-size: 1.75em;
      display: flex;
      align-items: center;
    }
    #introduction .section-wrap .box.time h2 {
      margin-bottom: 0px;
    }
    #introduction .section-wrap .box.time h2::before {
      background-size: contain;
      width: 40px;
    }
    #introduction .section-wrap .box.time table {
      margin: 0px 0px 20px 0px;
    }
    #introduction .section-wrap .box.news h2::before {
      background-size: contain;
      width: 40px;
      height: 50px;
    }
    #introduction .br-layout {
      display: block;
    }
    #news .article-list .entry-meta {
      font-size: 15px;
      margin: 0 0 2px 0;
    }
    #news .article-list .entry-title a {
      font-size: 15px;
    }
    .box.news a.link-more {
      justify-content: end;
    }
    .box.news a.link-more::after {
      background-image: url(../images/front/arrow-sp.png);
      content: "";
      display: inline-block;
      margin-right: 8px;
      width: 40px;
      height: 40px;
      background-repeat: no-repeat;
      margin-left: 10px;
    }
    #introduction .section-wrap .contents .box.time table th, #introduction .section-wrap .contents .box.time table td {
      font-size: 15px;
    }
    #introduction .section-wrap .box.time p {
      text-align: left;
    }


    /* #news--- */
    #news .header-wrap h2  {
      font-size:20px;
      margin-bottom: 0px!important;
      padding: 0px 0px 0px 10px;
    }
    #news .article-list {
      margin-top: 10px;
    }
    #news p.btn.more-link {
      margin:2rem auto 0rem;
    }
    #important .section-wrap .post time {
      margin-right: 0px;
    }



    /* #outline--- */
    #outline .section-wrap .header-wrap h2 {
      margin: 0px auto 10px auto;
      padding: 0px;
    }
    #outline .section-wrap .contents .tel {
      display: -webkit-block;
      display: block;
    }
    #outline .section-wrap {
      padding: 30px 20px;
      border-radius: 30px;
    }
    #outline .section-wrap img.logo {
      width: 180px;
    }
    /* #recruit--- */
    section#recruit {
      padding: 0 0 0px;
    }
    #recruit .section-wrap .contents .left-area h2 {
      margin-bottom: 0px;
      padding: 0px;
      font-size: 1.75em;
    }
    #recruit .section-wrap {
      margin: 0 auto;
      padding: 0px;
    }
    #recruit .section-wrap .contents .left-area {
      padding: 50px 4% 0px 4%;
    }
    #recruit .section-wrap .contents .left-area p {
      margin-bottom: 20px;
    }
    #recruit .section-wrap .contents .left-area ul li {
      width: 50%;
    }
    #recruit .section-wrap .contents .left-area ul li a {
      justify-content: end;
      margin-bottom: 30px;
      font-size: 16px;
    }
    #recruit .section-wrap .contents .left-area ul li a::after {
      background-image: url(../images/front/arrow-sp.png);
      content: "";
      display: inline-block;
      margin-right: 8px;
      width: 40px;
      height: 40px;
      background-repeat: no-repeat;
      margin-left: 0px;
      margin-right: 0px;
      right: 0%;
      background-size: contain;
      height: 100%;
    }
    #event .section-wrap .flex-area {
      display: block;
      display: -webkit-block;
    }
    #event .section-wrap .flex-area a.link-more {
      justify-content: end;
      margin-bottom: 50px;
    }
    #event .section-wrap .flex-area div {
      position: relative;
      margin-bottom: 20px;
    }
    #event .section-wrap .flex-area a.link-more::after {
        background-image: url(../images/front/arrow-sp.png);
        content: "";
        display: inline-block;
        margin-right: 8px;
        width: 40px;
        height: 40px;
        background-repeat: no-repeat;
        margin-left: 10px;
    }
    #event .section-wrap .flex-area .insta-btn a {
      width: 80%;
      padding: 15px;
      margin: 0 auto;
    }
    #event .box .img img {
      width: 200px;
    }




    /* #news --- */
    /* 各カテゴリタブ */
    .tab-label {

    }
    /* 各カテゴリタブ コンテンツ */
    .tab-content {

    }
    /* 各カテゴリタブ コンテンツ - アクティブ*/
    .tab-switch:checked+.tab-label+.tab-content ,
    .tab-switch:checked+.tab-label.news+.tab-content ,
    .tab-switch:checked+.tab-label.lecture+.tab-content ,
    .tab-switch:checked+.tab-label.recruit+.tab-content {
        border-top: none;
    }
    .tab-label {
      padding: 10px 0px!important;
      width: 20%;
    }
    .tab-switch:checked+.tab-label.all:before {
      border: 10px solid transparent!important;
      border-top: 10px solid #FFD9DE!important;
      margin-left: -10px!important;
    }
    .tab-switch:checked+.tab-label.news:before {
      border: 10px solid transparent!important;
      border-top: 10px solid #FFF5CA!important;
      margin-left: -10px!important;
    }
    .tab-switch:checked+.tab-label.update:before {
      border: 10px solid transparent!important;
      border-top: 10px solid #EAEFBF!important;
      margin-left: -10px!important;
    }
    .tab-switch:checked+.tab-label.recruit:before {
      border: 10px solid transparent!important;
      border-top: 10px solid #BDE5C0!important;
      margin-left: -10px!important;
    }
    /* #recruit --- */
    #container .content #recruit .section-wrap{
        width: calc( 100% - 4rem);
    }


}
@media(max-width:460px) {
#main-vis .bx-wrapper .bx-viewport {
  height: 350px !important;
}
#event::after {
  bottom:-10%;
}


}
@media(max-width:400px) {

    #main-vis .bx-wrapper .bx-viewport .slider > div {
      height: 70vmax;
    }
    #faq::before,
    #faq::after {
      width: 300px;
    }

    #faq .section-wrap .box dl dt {
      margin-bottom: 5px;
    }
    #faq .section-wrap .box {
      margin-bottom: 20px;
    }
    #faq .section-wrap .flex-area a.link-more {
      margin-bottom: 30px;
    }

}
@media(max-width:350px) {
    /* #news --- */
    /* 各カテゴリタブ */
    .tab-label {
        font-size: .875rem;
    }
}
