body {
  color:#333;
}

@media print, screen and (min-width: 768px) {
  #wrap {
      position:relative;

  }
  .header {
      position: absolute;
      top: 0;
      left: 0;
      width: 100%;
      z-index: 1;
  }

  .columns.reverse {
    -webkit-box-orient: horizontal;
    -webkit-box-direction: reverse;
    -ms-flex-direction: row-reverse;
    flex-direction: row-reverse;
  }

  .columns.reverse.columns_2>* {
    margin-right: 0;
  }

  .columns.reverse.columns_2>*:nth-child(2n) {
    margin-right: 30px;
  }
}

.f_18 {
  font-size: 1.8rem;
}

.f_30 {
  font-size: 3rem;
}

.top_section h2 {
  margin-top: 0;
  margin-bottom: 40px;
  padding: 0;
  font-size:2.4rem;
  border-top:1px solid #eee;
  border-bottom:1px solid #eee;
  position:relative;
  font-family: "æ¸¸æ˜Žæœ", "Yu Mincho", YuMincho, "Hiragino Mincho ProN", "Hiragino Mincho Pro", "HGSæ˜ŽæœE", serif;
}
.top_section h2:after{
      content: "";
    display: block;
    position: absolute;
    top:-10px;
    bottom:0;
    left:0;
    right:0;
    margin:0 auto;
    width:100%;
    height:calc(100% + 20px);
   border-top:1px solid #eee;
  border-bottom:1px solid #eee;
}
.top_section h2 .en{
  height:120px;
  display:inline-block;
  padding-top:50px;
}
.top_section h3 {
  color: #333;
  padding: 0;
  margin-top: 0;
  background:none;
    font-family: "æ¸¸æ˜Žæœ", "Yu Mincho", YuMincho, "Hiragino Mincho ProN", "Hiragino Mincho Pro", "HGSæ˜ŽæœE", serif;
}
.line{
  line-height: 5rem;
  padding-bottom:10px;
  border-bottom:1px solid #ccc;
}

.top_section .container {
  width:1000px;
  max-width: 96%;
}

.sec_bnr{
  padding: 70px 0 0;
}

.sec_bnr:first-child{
  padding: 20px 0 0;
}


.sec01 {
  padding: 70px 0 0;
}
.sec01 h2 .en{
  padding-left:531px;
  background:url(../img/sec01_en.png)no-repeat left center;
}
.sec01 .con01{
  height:500px;
  background: url("../img/sec01_bg.jpg") no-repeat center center/cover;
}
.sec01 .con01 .container{
  height:100%;
}
.sec01 .con01 .columns{
  height: 100%;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;}

.sec01 .col_2{
  margin-right:0!important;
}
.sec01 ul{
  margin-top:0;
}
.sec01 ul li{
  position:relative;
  font-size:2.4rem;
  padding-left:36px;
    font-family: "æ¸¸æ˜Žæœ", "Yu Mincho", YuMincho, "Hiragino Mincho ProN", "Hiragino Mincho Pro", "HGSæ˜ŽæœE", serif;
}
.sec01 ul li:before{
      content: "";
    display: block;
    position: absolute;
    top:1.2rem;
    left:0;
    margin:0 auto;
    width:25px;
    height:23px;
    background:url(../img/check01.png)no-repeat center / cover;
}

.sec01 .col_3{
  box-sizing:border-box;
  padding: 4rem 3rem;
  border:1px solid #cccccc;
  background:url(../img/sec01_bg02.jpg)no-repeat center / cover;
}
.sec01 .con02 h3{
  padding-bottom: 1rem;
  color:#01377f;
  text-align:center;
  font-size:2.4rem;
  border-bottom:1px solid #6c84ae;
}
.sec01 .con02 h3 .merit{
  font-size:3.6rem;
  display:block;
}
.sec01 .con02 p{
  margin:2rem 2rem 0;
}
.sec02{
  padding: 70px 0 0;
}
.sec02 h2 .en{
  padding-left:245px;
  background:url(../img/sec02_en.png)no-repeat left center;
}
.sec02 .con01 h3{
  text-align:center;
  border-bottom:1px solid #fff;
  padding-bottom:1rem;
  width:100%;
  color:#fff;
}
.sec02 .con01 .text_box{
  background:#01377f;
  color:#fff;
}
.sec02 .con01 .img_box,
.sec02 .con01 .text_box{
  width:500px;
  max-width:50%;
}
.sec02 .con01 .text_box{
  padding:4rem 6rem;
  display: -webkit-box;
display: -ms-flexbox;
display: flex;
-ms-flex-wrap: wrap;
flex-wrap: wrap;
-webkit-box-pack: center;
-ms-flex-pack: center;
justify-content: center;
-webkit-box-align: center;
-ms-flex-align: center;
align-items: center;
}
.sec02 .con01 ul{
  display: -webkit-box;
display: -ms-flexbox;
display: flex;
-ms-flex-wrap: wrap;
flex-wrap: wrap;
-webkit-box-pack: justify;
-ms-flex-pack: justify;
justify-content: space-between;
-webkit-box-align: center;
-ms-flex-align: center;
align-items: center;
margin-top:0;
}
.sec02 .con01 ul li{
  position:relative;
  font-size:1.8rem;
  padding-left:36px;
  width:50%;
}
.sec02 .con01 ul li:before{
      content: "";
    display: block;
    position: absolute;
    top:0.6rem;
    left:0;
    margin:0 auto;
    width:21px;
    height:19px;
    background:url(../img/check02.png)no-repeat center / cover;
}
.sec02 .con02{
  margin-top:70px;
}
.sec02 .con02 h3{
  text-align:center;
}

.sec02 .con02 .columns{
  position:relative;
  margin-top:40px;
  padding-top:100px;
}
.sec02 .con02 .text_box{
  width:820px;
  max-width:82%;
  box-sizing: border-box;
  background:#d8dff0;
  padding: 3rem 320px 3rem 4rem;
}

.sec02 .con02 figure{
  position:absolute;
  top:0;
  right:0;
  width: 470px;
  max-width: 50%;
}
.sec02 .con02 .text_box p{
  margin-top:0;
}
.sec03{
  padding:70px 0 0;
}
.sec03 h2 .en{
  padding-left:276px;
  background:url(../img/sec03_en.png)no-repeat left center;
}
.sec03 h3{
  font-size:2.4rem;
  color:#01377f;
  position:relative;
  letter-spacing: 0;
}
.sec03 h3:before{
      content: "01";
      display: block;
      position: absolute;
      top: -90px;
      left:0;
      font-size:6rem;
      font-weight:normal;
}
.sec03 .con01 h3:before{
      content: "01";
}
.sec03 .con02 h3:before{
      content: "02";
}
.sec03 .con03 h3:before{
      content: "03";
}
.sec03 .con04 h3:before{
      content: "04";
}
.sec03 .con05 h3:before{
      content: "05";
}
.sec03 .con06 h3:before{
      content: "06";
}
.sec03 .con07 h3:before{
      content: "07";
}
.sec03 .bg{
  padding:70px 0;
  background:url(../img/sec03_bg.jpg)no-repeat center /cover;
}
.sec03 .columns{
  position:relative;
  margin-top:40px;
  padding-top:140px;
}
.sec03 figure{
  position:absolute;
  top:0;
  right:0;
  width: 520px;
  max-width: 52%;
}
.sec03 .reverse figure{
right:auto;
left:0;
}
.sec03 .text_box{
  background:#fff;
  width:640px;
  max-width:64%;
  box-sizing: border-box;
  padding: 5rem 200px 3rem 4rem;
}
.sec03 .reverse .text_box{
  padding: 5rem 4rem 3rem 200px;
}
.sec04{
  padding: 70px 0 0;
}
.sec04 h2{
  margin-bottom:10px;
}
.sec04 h2 .en{
  padding-left:267px;
  background:url(../img/sec04_en.png)no-repeat left center;
}
.sec04 .con01{
  padding: 70px 0;
  background:url(../img/sec04_bg.jpg)no-repeat center / cover;
}
.sec04 .con01_01 ul li{
  position:relative;
  font-size:1.8rem;
  padding-left:28px;
  font-family: "æ¸¸æ˜Žæœ", "Yu Mincho", YuMincho, "Hiragino Mincho ProN", "Hiragino Mincho Pro", "HGSæ˜ŽæœE", serif;
  font-weight: bold;
}

.sec04 .con01_01 ul li:before{
      content: "";
    display: block;
    position: absolute;
    top:1rem;
    left:0;
    margin:0 auto;
    width:18px;
    height:16px;
    background:url(../img/check03.png)no-repeat center / cover;
}
.sec04 .con01_02{
  margin-top:40px;
  padding:3rem 4rem;
  box-sizing:border-box;
  background:#f7f2ee;
}
.sec04 .con01_02 p:first-child{
  margin-top:0;
}

.sec04 .con01_01 .img_box{
  text-align:right;
}
.sec04 .con02{
  padding: 40px 0 0;
  font-family: "æ¸¸æ˜Žæœ", "Yu Mincho", YuMincho, "Hiragino Mincho ProN", "Hiragino Mincho Pro", "HGSæ˜ŽæœE", serif;
}

.sec04 .con02 h3{
  text-align:center;
}
.sec04 .con02 .columns{
-ms-flex-wrap: wrap;
flex-wrap: wrap;
margin-top:40px;
}
.sec04 .con02 .con02_01,.sec04 .con02 .con02_02,
.sec04 .con02 .con02_03,.sec04 .con02 .con02_04,.sec04 .con02 .con02_05{
  padding: 30px 20px;
  box-sizing:border-box;
  height:480px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
  -webkit-box-align: flex-end;
  -ms-flex-align: flex-end;
  align-items: flex-end;
  position: relative;
  }

.sec04 .con02 .con02_01{
  background:url(../img/sec04_f01.jpg)no-repeat center / cover;
}
.sec04 .con02 .con02_02{
  background:url(../img/sec04_f02.jpg)no-repeat center / cover;
}
.sec04 .con02 .con02_03{
  background:url(../img/sec04_f03.jpg)no-repeat center / cover;
}
.sec04 .con02 .con02_04{
  background:url(../img/sec04_f04.jpg)no-repeat center / cover;
}
.sec04 .con02 .con02_05{
  background:url(../img/sec04_f05.jpg)no-repeat center / cover;
}
.sec04 .con02 .feature{
  color:#fff;
  position: absolute;
  margin-top: 0;
  top: 20px;
  left: 20px;
  font-size: 3rem;
  -webkit-transform:skew(-10deg);
  transform: skew(-10deg);
}
.sec04 .con02 h4{
  color:#fff;
  padding:0;
  width:100%;
  font-size:3.6rem;
  line-height: 4rem;
}
.sec04 .con02 h4:before{
  display:none;
}
.sec04 .con02 h4 + p{
  font-size:2.4rem;
  color:#fff;
  margin-top: 1rem;
}
.sec05{
  padding:70px 0 0;
}
.sec05 h2 .en{
  padding-left:332px;
  background:url(../img/sec05_en.png)no-repeat left center;
}
.sec05 h3{
  font-size:3rem;
  color:#01377f;
}
.sec05 .columns{
  padding-top:80px;
  position:relative;
}
.sec05 .columns + .columns{
  margin-top:140px;
}
.sec05 .columns + .columns:before{
      content: "";
      display: block;
      position: absolute;
      top: -100px;
      left:0;
      right:0;
      margin:0 auto;
      width:104px;
      height:52px;
      background:url(../img/arrow01.png)no-repeat center / cover;
}
.sec05 figure{
  width:1000px;
  max-width:50%;
  position:absolute;
  top:0;
  right:0;
}
.sec05 .reverse figure{
  left:0;
  right:auto;
}
.sec05 .con_r,
.sec05 .con_l{
  width:1300px;
  max-width:65%;
  min-height: 420px;
  background:url(../img/sec05_bg01.jpg)no-repeat center / cover;
  box-sizing:border-box;
  padding: 4rem 4rem 4rem 18vw;
}
.sec05 .con_l{
  padding: 4rem 18vw 4rem 4rem;
}
.sec05 .text_box{
  width: 470px;
  max-width:96%;
}
.sec05 .con_l .text_box{
  float:right;
}
.sec06{
  padding:70px 0 0;
}
.sec06 h2 .en{
  padding-left:113px;
  background:url(../img/sec06_en.png)no-repeat left center;
}
.sec07{
  padding:70px 0 0;
}
.sec07 h2{
  margin-bottom:10px;
}
.sec07 h2 .en{
  padding-left:180px;
  background:url(../img/sec07_en.png)no-repeat left center;
}
.sec07 .bg{
  padding: 70px 0;
  background:url(../img/sec07_bg.jpg)no-repeat center / cover;
}
.sec07 table.t01 th {
  width: 80px;
  text-align: left;
  padding-right: 10px;
}

.sec07 table a {
  color: #333;
  text-decoration: none;
}
.sec07 .table_timetable{
  margin-top:0;
}
.sec07 .table_timetable+p {
  margin-top: 1rem;
}

.sec07 .slider-pro {
  margin-top: 40px;
}

.sec07 .sp-bottom-thumbnails {
  margin-top: 30px;
}

.sec07 .sp-thumbnail-container {}

.sec07 .slick-slider {
  max-width: 1000px;
  margin: 30px auto 0;
}

.sec07 .slide-item.slick-slide {
  position: relative;
}

.sec07 .slick-slider p {
  background: rgba(0, 0, 0, 0.7);
  color: #fff;
  text-align: center;
  padding: 10px;
  box-sizing: border-box;
  margin-bottom: 0;
  width: 100%;
  position: absolute;
  bottom: 0;
  left: 0;
}

.thumb-item .slick-slide,
.thumb-item-nav .slick-slide {
  margin: 3px !important;
}

.under img.slide-arrow.next-arrow.slick-arrow {
  position: absolute;
  top: 50%;
  -webkit-transform: translateY(-50%);
  transform: translateY(-50%);
  right: 5px;
  z-index: 50;
}

.under img.slide-arrow.prev-arrow.slick-arrow {
  position: absolute;
  top: 50%;
  -webkit-transform: translateY(-50%);
  transform: translateY(-50%);
  left: 5px;
  z-index: 50;
}

.under img.slide-arrow.prev-arrow.slick-arrow:hover,
.under img.slide-arrow.next-arrow.slick-arrow:hover {
  cursor: pointer;
}

.thumb-item li {
  position: relative;
}

.slider-wrap .slider-text {
  font-size: 20px;
  text-align: center;
  line-height: 1.4;
  margin: 0;
  bottom: 0;
  top: auto !important;
  transform-origin: left bottom !important;
  position: absolute;
  display: block;
  width: 100%;
  left: 0px;
  bottom: 0px;
  transform-origin: left bottom;
  transform: scale(1) translate3d(0px, 0px, 0px);
  opacity: 1;
  color: #FFF;
  background: #000;
  background: rgba(0, 0, 0, .7);
  padding: 0.5em;
  box-sizing: border-box;
}

.under ul.thumb-item.slick-initialized.slick-slider {
  max-width: 767px;
  margin: 0 auto;
}

.under .thumb-item-nav .slider-text {
  display: none;
}

.slick-slider {
  position: relative;
}

.slide-arrow.prev-arrow.slick-arrow {
  top: 50%;
  left: 10px;
  position: absolute;
  z-index: 1;
}

.slide-arrow.next-arrow.slick-arrow {
  top: 50%;
  right: 10px;
  position: absolute;
  z-index: 1;
}

.slide-arrow.prev-arrow.slick-arrow:hover,
.slide-arrow.next-arrow.slick-arrow:hover {
  cursor: pointer;
}
@media ( min-width : 768px ) {
  .sec_bnr .col_2{
    margin-top:0;
  }

.sec04 .con01_01 .img_box,
.sec04 .con01_01 .text_box{
  width:500px;
  width:50%;
}
.sec04 .con02 .con02_01,.sec04 .con02 .con02_02{
  width:50%;
}
.sec04 .con02 .con02_03,.sec04 .con02 .con02_04,.sec04 .con02 .con02_05{
width:33.3333%;
}
  .sec07 .col_2{
    margin-top:0;
  }

}
@media print, screen and (min-width: 768px) and (max-width: 1039px) {
  .sec01.top_section h2 .en{
    padding-top:28px;
  }
  .sec01 ul li{
    font-size:2rem;
  }
  .sec01 .col_3{
    padding:3rem 2rem;
  }
  .sec01 .con02 h3{
    font-size:1.8rem;
  }
  .sec02 .con01 .text_box{
    padding:3rem;
  }
  .sec02 .con01 h3{
    font-size:2rem;
  }
  .sec02 .con01 ul li{
    font-size:1.4rem;
    padding-left:26px;
  }
  .sec02 .con01 ul li:before{
    top:0.3rem;
  }
  .sec02 .con02 .columns{
    padding-top:60px;
  }
  .sec02 .con02 .text_box{
    padding-right: 32vw;
  }

  .sec03 .columns{
    padding-top:80px;
  }
  .sec03 .text_box{
    padding-right:18vw;
  }
  .sec03 .reverse .text_box{
    padding-left:18vw;
  }

  .sec04 .con02 h4{
    font-size:3rem;
  }
  .sec04 .con02 h4 + p{
    font-size:2rem;
  }
  .sec04 .con02 .con02_01, .sec04 .con02 .con02_02, .sec04 .con02 .con02_03, .sec04 .con02 .con02_04, .sec04 .con02 .con02_05{
    height:360px;
  }
  .sec05 figure{
    max-width:80%;
  }
  .sec05 .columns{
    padding-top: 30vw;
  }
  .sec05 .con_r, .sec05 .con_l{
    max-width:80%;
    padding:4rem;
    min-height:0;
  }
  .sec05 .con_l .text_box{
    float:none;
  }
}
@media print, screen and (max-width: 767px){
  .top_section .container{
    width:480px;
  }
  .sec01 h2 .en,
.sec02 h2 .en,
.sec03 h2 .en,
.sec04 h2 .en,
.sec05 h2 .en,
.sec06 h2 .en,
.sec07 h2 .en{
  padding: 80px 0 0;
  box-sizing: border-box;
  background-position: top 10px center;
  min-width: 320px;
  background-size:auto 60px;
}
.sec_bnr:first-child{
  padding: 3rem 0 1rem;
}
.sec_bnr{
  padding: 3rem 0;
}
.sec_bnr .col_2:first-child{
  margin-top:0;
}
.sec01{
  padding:3rem 0;
}
.sec01 h2 .en{
  background-size:100%;
}
.sec01 .con01{
  width:480px;
  max-width:100%;
  margin:auto;
}
.sec01 .con01{padding: 2rem 0;height:auto;background: #f7f4f2 url(../img/sp_sec01_bg.jpg)no-repeat left bottom;background-size:contain;}
.sec01 .con01 .columns{
  display: -webkit-box;
display: -ms-flexbox;
display: flex;
-webkit-box-pack: justify;
-ms-flex-pack: justify;
justify-content: space-between;
-webkit-box-align: center;
-ms-flex-align: center;
align-items: center;
-webkit-box-orient: horizontal;
-webkit-box-direction: reverse;
-ms-flex-direction: row-reverse;
flex-direction: row-reverse;
}
.sec01 .col_2{
  width: 60%;
  margin-top: 0;
}
.sec01 ul li{
  font-size:1.4rem;
  padding-left:20px;
}
.sec01 ul li:before{
  top:0;
  width:14px;
  background-size:100%;
}
.sec01 .col_3{
  padding:2rem;
}
.sec02{
  padding:3rem 0 0;
}
.sec02 .con01 h3{
  font-size: 1.4rem;
  line-height: 1.8rem;
  margin-bottom: 1rem;
}
.sec02 .con01 .img_box{
 max-width:36%;
 }
  .sec02 .con01 .text_box{
max-width:64%
}
.sec02 .con01 .text_box{
  padding:1rem;
}
.sec02 .con01 ul li{
  font-size: 1.2rem;
  padding-left:14px;
  line-height: 2rem;
  margin-bottom: 6px;
}
.sec02 .con01 ul li:before{
  top:0;
  width:10px;
  background-size:100%;
}
.sec02 .con02{
  margin-top: 3rem;
}
.sec02 .con02 figure{
  position: static;
  max-width: 100%;
  margin-bottom:2rem;
}
.sec02 .con02 .columns{
  padding:0;
}
.sec02 .con02 .text_box{
  max-width:100%;
  padding:3rem 2rem;
}
.sec03{
  padding:3rem 0 0
}
.sec03 .bg{
  padding:3rem 0;
}
.sec03 h3:before{
  top:-70px;
}
.sec03 .columns{
  padding-top:0;
}
.sec03 .con01.columns{
  margin-top:0;
}
.sec03 figure{
  margin-bottom: 5rem;
  position:static;
  max-width:100%;
}

.sec03 .text_box{
  max-width:100%;
  padding:3rem 2rem!important;
}
.sec04{
  padding:3rem 0 0;
}
.sec04 .con01{
  padding:3rem 0;
  background: url(../img/sp_sec04_bg.jpg)no-repeat center / cover;
}
.sec04 .con01_01 .img_box{
  margin-bottom:2rem;
}
.sec04 .con01_01 ul li:before{
  top:0.8rem;
}
.sec04 .con01_02{
  margin-top:2rem;
  padding:3rem 2rem;
}
.sec04 .con02{
  padding:3rem 0 0;
}
.sec04 .con02 .con02_01, .sec04 .con02 .con02_02, .sec04 .con02 .con02_03, .sec04 .con02 .con02_04, .sec04 .con02 .con02_05{
  height:220px;
}
.sec04 .con02 h4{
  font-size:2.6rem;
}
.sec04 .con02 h4 + p{
  font-size:2rem;
  line-height:3rem;
}
.sec05{
  padding:3rem 0 0;
}
.sec05 .columns{
  width:480px;
  max-width:100%;
  padding-top: 0;
  margin:auto;
}
.sec05 figure{
  position:static;
  max-width:100%;
}
.sec05 .con_r, .sec05 .con_l{
  max-width:100%;
  min-height: 0;
  padding:3rem 2rem;
}
.sec05 .columns + .columns{
  margin-top: 70px;
  padding-top:0;
}
.sec05 .columns + .columns:before{
  top: -60px;
  width:70px;
  background-size:100%;
}
.sec06{
  padding:3rem 0 0;
}
.sec06 h2 .en{
  background-size:auto;
}
table.table_normal tbody th{
  padding:1rem;
}
.sec07{
  padding:3rem 0 0;
}
.sec07 .bg{
  padding:3rem 0;
}
.sec07 .columns .col_2:first-child{
  margin-top:0;
}
.sec07 .t01{
  margin-top:0;
}
}
