@charset "UTF-8";
/*------------------------------------------------------------------


-------------------------------------------------------------------*/
/*  ==========================================================================
    Fonts
    ========================================================================== */
@import url("https://fonts.googleapis.com/css?family=Arimo:400,400i,700,700i");
@import url("https://fonts.googleapis.com/css?family=Playfair+Display:400,400i,700,700i,900,900i");
@import url("https://maxcdn.bootstrapcdn.com/font-awesome/4.7.0/css/font-awesome.min.css");
body {
  font-family: 'Noto Sans JP', 'ヒラギノ角ゴ ProN W3', 'Hiragino Kaku Gothic ProN', '游ゴシック', YuGothic, 'メイリオ', Meiryo, sans-serif;
  /*font-family: 'Noto Serif JP',游明朝,'Yu Mincho',YuMincho,'Hiragino Mincho ProN',HGS明朝E,メイリオ,Meiryo,serif;*/
  /*font-family: 'Roboto Condensed', sans-serif;*/ }

.mincho {
  font-family: 'Noto Serif JP',游明朝,'Yu Mincho',YuMincho,'Hiragino Mincho ProN',HGS明朝E,メイリオ,Meiryo,serif !important; }

_:-ms-lang(x)::-ms-backdrop, .mincho {
  font-weight: 300; }

.gothic {
  font-family: 'Noto Sans JP', 'ヒラギノ角ゴ ProN W3', 'Hiragino Kaku Gothic ProN', '游ゴシック', YuGothic, 'メイリオ', Meiryo, sans-serif !important; }

/*  ==========================================================================
    MISC
    ========================================================================== */
body {
  font-size: 16px;
  line-height: 1.5;
  padding: 0;
  margin: 0;
  color: #464646;
  font-weight: 500;
  letter-spacing: 0.05em; }
  @media only screen and (max-width: 767px) {
    body {
      font-size: 14px; } }

h1,
h2,
h3,
h4,
h5,
h6 {
  margin: 0;
  line-height: normal;
  font-weight: 700; }

h1 {
  font-size: 60px; }

h2 {
  font-size: 36px; }

h4 {
  font-size: 20px;
  font-weight: 500; }
  @media only screen and (max-width: 767px) {
    h4 {
      font-size: 16px; } }

h5 {
  font-size: 18px;
  font-weight: 500; }
  @media only screen and (max-width: 767px) {
    h5 {
      font-size: 15px; } }

ul,
li {
  list-style-type: none;
  margin: 0;
  padding: 0; }

select {
  background: transparent;
  border: none;
  outline: 0; }

a {
  -webkit-transition: all 0.3s ease-out;
  transition: all 0.3s ease-out;
  text-decoration: none;
  outline: none;
  color: #0B4500; }

a:hover {
  outline: none;
  opacity: 0.5;
  -webkit-transition: -webkit-transform .3s;
  transition: -webkit-transform .3s;
  transition: transform .3s;
  transition: transform .3s, -webkit-transform .3s;
  text-decoration: none !important; }

button {
  outline: none; }

p,
dl {
  margin: 0; }

img {
  width: 100%;
  vertical-align: top; }

.sect img {
  max-width: 100%;
  width: auto;
  vertical-align: top; }

/*　color
----------------------------------------*/
.bg-p {
  background: #f092ae !important; }

.bg-bl {
  background: #003c7b !important; }

.bg-lbl {
  background-color: #3DBDFF !important; }

.bg-red {
  background: #B1002A !important; }

.bg-gray {
  background: #64635E !important; }

.bg-purple {
  background: #584A87 !important; }

.bg-green {
  background: #007131 !important; }

.bg-orange {
  background: #E37D00 !important; }

.bg-brown {
  background-color: #f5f4f2 !important; }

.bg-d-brown {
  background-color: #D6D2CB !important; }

.bg-w {
  background-color: #fff !important; }

.c-w {
  color: #fff !important; }

.c-green {
  color: #007131 !important; }

.c-dgreen {
  color: #005332 !important; }

.c-red {
  color: #B1002A; }

.c-r {
  color: #C1272D !important; }

.c-bl {
  color: #003c7b !important; }

.c-lbl {
  color: #3DBDFF !important; }

.c-gray {
  color: #64635E !important; }

.c-purple {
  color: #584A87 !important; }

.c-orange {
  color: #E37D00 !important; }

.bor-green {
  border: 1px solid #007131; }

.bor-lbl {
  border: 1px solid #3DBDFF; }

.bor-r-n {
  border-right: none !important; }

/*　float
----------------------------------------*/
.flo-l {
  float: left; }

.flo-r {
  float: right; }

@media screen and (max-width: 767px) {
  .flo-n-sp {
    float: none !important; } }

/*　display
----------------------------------------*/
.only-pc {
  display: block !important; }
  @media only screen and (max-width: 767px) {
    .only-pc {
      display: none !important; } }

.only-sp {
  display: none !important; }
  @media only screen and (max-width: 767px) {
    .only-sp {
      display: block !important; } }

.only-i-pc {
  display: inline !important; }
  @media only screen and (max-width: 767px) {
    .only-i-pc {
      display: none !important; } }

.only-i-sp {
  display: none !important; }
  @media only screen and (max-width: 767px) {
    .only-i-sp {
      display: inline !important; } }

.only-f-pc {
  display: -webkit-box !important;
  display: -ms-flexbox !important;
  display: flex !important; }
  @media only screen and (max-width: 767px) {
    .only-f-pc {
      display: none !important; } }

.only-f-sp {
  display: none !important; }
  @media only screen and (max-width: 767px) {
    .only-f-sp {
      display: -webkit-box !important;
      display: -ms-flexbox !important;
      display: flex !important; } }

.aifs {
  -webkit-box-align: end;
      -ms-flex-align: end;
          align-items: flex-end; }

/*　btn
----------------------------------------*/
.btn a {
  position: relative;
  font-size: 20px;
  display: block;
  width: 300px;
  margin: 0 auto;
  text-align: center;
  padding: 5px 12px;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  border: 1px solid #a2a2a2;
  color: #a2a2a2;
  line-height: 1.5;
  font-family: 'Noto Serif JP',游明朝,'Yu Mincho',YuMincho,'Hiragino Mincho ProN',HGS明朝E,メイリオ,Meiryo,serif; }
  .btn a.disabled {
    opacity: 0.3;
    pointer-events: none; }
  @media only screen and (max-width: 767px) {
    .btn a {
      font-size: 18px;
      width: auto; } }

.btn a::before {
  position: absolute;
  content: "";
  right: 15px;
  width: 10px;
  height: 10px;
  top: 15px;
  border-top: 1px solid #a2a2a2;
  border-right: 1px solid #a2a2a2;
  -webkit-transform: rotate(45deg);
  transform: rotate(45deg); }

.btn.btnl a {
  margin: 0; }

.btn.btn-w a {
  margin: 0;
  border: 1px solid #fff;
  color: #fff; }

.btn.arrow-n a::before {
  display: none; }

.btn.green a {
  background: #007130;
  color: #fff;
  font-size: 20px; }

.btn.green a::before {
  border-top: 1px solid #fff;
  border-right: 1px solid #fff; }

/*小ボタン*/
.btn_sm {
  position: relative;
  font-size: 14px;
  display: block;
  max-width: 230px;
  min-width: 188px;
  width: 100%;
  margin: 0 auto;
  text-align: center;
  padding: 5px 10px;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  color: #fff;
  background: #005332;
  line-height: 2; }

.btn_sm::before {
  position: absolute;
  content: "";
  right: 15px;
  width: 10px;
  height: 10px;
  top: 38%;
  border-top: 1px solid #fff;
  border-right: 1px solid #fff;
  -webkit-transform: rotate(45deg);
  transform: rotate(45deg); }

.btn_sm.btn-w {
  margin: 0;
  border: 1px solid #fff;
  color: #fff; }

.btn_sm.arrow-n::before {
  display: none; }

@media screen and (max-width: 767px) {
  .a_sm {
    font-size: 18px;
    width: auto; } }

/*.btn-submit*/
.btn-submit {
  text-align: center;
  margin-top: 100px; }
  .btn-submit input {
    width: 600px;
    background: #007130;
    display: inline-block;
    padding: 38px 20px;
    color: #fff;
    font-size: 20px; }
    .btn-submit input:hover {
      opacity: 0.8; }

@media screen and (max-width: 767px) {
  .btn-submit {
    margin-top: 30px; }
    .btn-submit input {
      width: 90%;
      padding: 10px 20px; } }

.sec-career .btn.btnl a {
  width: 100%; }

/*　icon-blank
----------------------------------------*/
.ico-blank::after, .ico-blank-g::after, .ico-blank-w::after {
  content: "";
  background: url(../images/common/icon-link-blank.png) center center no-repeat;
  background-size: 100%;
  width: 18px;
  height: 12px;
  display: inline-block;
  margin-left: 5px; }

.ico-blank-g::after {
  background: url(../images/common/icon-link-blank-g.png) center center no-repeat; }

.ico-blank-w::after {
  background: url(../images/common/icon-link-blank-w.png) center center no-repeat; }

.ico-blank-before::before, .ico-blank-before-w::before {
  content: "";
  background: url(../images/common/icon-link-blank.png) center center no-repeat;
  background-size: 100%;
  width: 18px;
  height: 12px;
  display: inline-block;
  margin-right: 5px; }

.ico-blank-before-w::before {
  background: url(../images/common/icon-link-blank-w.png) center center no-repeat; }

/*　画像幅調整
----------------------------------------*/
.fix-img {
  max-width: 100%;
  width: auto; }

/*　font-weight
----------------------------------------*/
.fw-l {
  font-weight: 300 !important; }

.fw-m {
  font-weight: 500 !important; }

.fw-b {
  font-weight: 700 !important; }

/*　align
----------------------------------------*/
.tcenter {
  text-align: center !important; }

.tleft {
  text-align: left !important; }

.tright {
  text-align: right !important; }

@media screen and (max-width: 767px) {
  .tcenter-sp {
    text-align: center !important; }
  .tleft-sp {
    text-align: left !important; }
  .tright-sp {
    text-align: right !important; } }

/*　border
----------------------------------------*/
.bb {
  border-bottom: 1px solid #A7A7A7; }

/*　wrap
----------------------------------------*/
.ws-nowrap {
  white-space: nowrap; }

@media screen and (min-width: 768px) {
  .ws-nowrap-pc {
    white-space: nowrap; } }

@media screen and (max-width: 767px) {
  .ws-nowrap-sp {
    white-space: nowrap; } }

/*　font-size
----------------------------------------*/
.fs44 {
  font-size: 44px !important; }

.fs30 {
  font-size: 30px !important; }

.fs28 {
  font-size: 28px !important; }

.fs26 {
  font-size: 26px !important; }

.fs24 {
  font-size: 24px !important; }

.fs22 {
  font-size: 22px !important; }

.fs20 {
  font-size: 20px !important; }

.fs18 {
  font-size: 18px !important; }

.fs16 {
  font-size: 16px !important; }

.fs14 {
  font-size: 14px !important; }

.fs13 {
  font-size: 13px !important; }

.fs12 {
  font-size: 12px !important; }

@media screen and (max-width: 767px) {
  .fs30-sp {
    font-size: 30px !important; }
  .fs28-sp {
    font-size: 28px !important; }
  .fs26-sp {
    font-size: 26px !important; }
  .fs24-sp {
    font-size: 24px !important; }
  .fs22-sp {
    font-size: 22px !important; }
  .fs20-sp {
    font-size: 20px !important; }
  .fs18-sp {
    font-size: 18px !important; }
  .fs16-sp {
    font-size: 16px !important; }
  .fs14-sp {
    font-size: 14px !important; }
  .fs13-sp {
    font-size: 13px !important; }
  .fs12-sp {
    font-size: 12px !important; } }

/*　margin
----------------------------------------*/
/*上マージン*/
.mt0 {
  margin-top: 0 !important; }

.mt10 {
  margin-top: 10px !important; }

.mt20 {
  margin-top: 20px !important; }

.mt30 {
  margin-top: 30px !important; }

.mt40 {
  margin-top: 40px !important; }

.mt50 {
  margin-top: 50px !important; }

.mt60 {
  margin-top: 60px !important; }

.mt70 {
  margin-top: 70px !important; }

.mt80 {
  margin-top: 80px !important; }

.mt90 {
  margin-top: 90px !important; }

.mt100 {
  margin-top: 100px !important; }

/*下マージン*/
.mb0 {
  margin-bottom: 0 !important; }

.mb10 {
  margin-bottom: 10px !important; }

.mb20 {
  margin-bottom: 20px !important; }

.mb30 {
  margin-bottom: 30px !important; }

.mb40 {
  margin-bottom: 40px !important; }

.mb50 {
  margin-bottom: 50px !important; }

.mb60 {
  margin-bottom: 60px !important; }

.mb70 {
  margin-bottom: 70px !important; }

.mb80 {
  margin-bottom: 80px !important; }

.mb90 {
  margin-bottom: 90px !important; }

.mb100 {
  margin-bottom: 100px !important; }

/*左マージン*/
.ml0 {
  margin-left: 0 !important; }

.ml10 {
  margin-left: 10px !important; }

.ml20 {
  margin-left: 20px !important; }

.ml30 {
  margin-left: 30px !important; }

.ml40 {
  margin-left: 40px !important; }

.ml50 {
  margin-left: 50px !important; }

.ml60 {
  margin-left: 60px !important; }

.ml70 {
  margin-left: 70px !important; }

.ml80 {
  margin-left: 80px !important; }

.ml90 {
  margin-left: 90px !important; }

.ml100 {
  margin-left: 100px !important; }

/*右マージン*/
.mr0 {
  margin-right: 0 !important; }

.mr10 {
  margin-right: 10px !important; }

.mr20 {
  margin-right: 20px !important; }

.mr30 {
  margin-right: 30px !important; }

.mr40 {
  margin-right: 40px !important; }

.mr50 {
  margin-right: 50px !important; }

.mr60 {
  margin-right: 60px !important; }

.mr70 {
  margin-right: 70px !important; }

.mr80 {
  margin-right: 80px !important; }

.mr90 {
  margin-right: 90px !important; }

.mr100 {
  margin-right: 100px !important; }

/*上パディング*/
.pt0 {
  padding-top: 0 !important; }

.pt10 {
  padding-top: 10px !important; }

.pt20 {
  padding-top: 20px !important; }

.pt30 {
  padding-top: 30px !important; }

.pt40 {
  padding-top: 40px !important; }

.pt50 {
  padding-top: 50px !important; }

.pt60 {
  padding-top: 60px !important; }

.pt70 {
  padding-top: 70px !important; }

.pt80 {
  padding-top: 80px !important; }

.pt90 {
  padding-top: 90px !important; }

.pt100 {
  padding-top: 100px !important; }

/*下パディング*/
.pb0 {
  padding-bottom: 0 !important; }

.pb10 {
  padding-bottom: 10px !important; }

.pb20 {
  padding-bottom: 20px !important; }

.pb30 {
  padding-bottom: 30px !important; }

.pb40 {
  padding-bottom: 40px !important; }

.pb50 {
  padding-bottom: 50px !important; }

.pb60 {
  padding-bottom: 60px !important; }

.pb70 {
  padding-bottom: 70px !important; }

.pb80 {
  padding-bottom: 80px !important; }

.pb90 {
  padding-bottom: 90px !important; }

.pb100 {
  padding-bottom: 100px !important; }

/*左パディング*/
.pl0 {
  padding-left: 0 !important; }

.pl10 {
  padding-left: 10px !important; }

.pl20 {
  padding-left: 20px !important; }

.pl30 {
  padding-left: 30px !important; }

.pl40 {
  padding-left: 40px !important; }

.pl50 {
  padding-left: 50px !important; }

.pl60 {
  padding-left: 60px !important; }

.pl70 {
  padding-left: 70px !important; }

.pl80 {
  padding-left: 80px !important; }

.pl90 {
  padding-left: 90px !important; }

.pl100 {
  padding-left: 100px !important; }

/*右パディング*/
.pr0 {
  padding-right: 0 !important; }

.pr10 {
  padding-right: 10px !important; }

.pr20 {
  padding-right: 20px !important; }

.pr30 {
  padding-right: 30px !important; }

.pr40 {
  padding-right: 40px !important; }

.pr50 {
  padding-right: 50px !important; }

.pr60 {
  padding-right: 60px !important; }

.pr70 {
  padding-right: 70px !important; }

.pr80 {
  padding-right: 80px !important; }

.pr90 {
  padding-right: 90px !important; }

.pr100 {
  padding-right: 100px !important; }

@media screen and (max-width: 767px) {
  /*上マージン*/
  .mt0-sp {
    margin-top: 0 !important; }
  .mt10-sp {
    margin-top: 10px !important; }
  .mt20-sp {
    margin-top: 20px !important; }
  .mt30-sp {
    margin-top: 30px !important; }
  .mt40-sp {
    margin-top: 40px !important; }
  .mt50-sp {
    margin-top: 50px !important; }
  .mt60-sp {
    margin-top: 60px !important; }
  .mt70-sp {
    margin-top: 70px !important; }
  .mt80-sp {
    margin-top: 80px !important; }
  .mt90-sp {
    margin-top: 90px !important; }
  .mt100-sp {
    margin-top: 100px !important; }
  /*下マージン*/
  .mb0-sp {
    margin-bottom: 0 !important; }
  .mb10-sp {
    margin-bottom: 10px !important; }
  .mb20-sp {
    margin-bottom: 20px !important; }
  .mb30-sp {
    margin-bottom: 30px !important; }
  .mb40-sp {
    margin-bottom: 40px !important; }
  .mb50-sp {
    margin-bottom: 50px !important; }
  .mb60-sp {
    margin-bottom: 60px !important; }
  .mb70-sp {
    margin-bottom: 70px !important; }
  .mb80-sp {
    margin-bottom: 80px !important; }
  .mb90-sp {
    margin-bottom: 90px !important; }
  .mb100-sp {
    margin-bottom: 100px !important; }
  /*左マージン*/
  .ml0-sp {
    margin-left: 0 !important; }
  .ml10-sp {
    margin-left: 10px !important; }
  .ml20-sp {
    margin-left: 20px !important; }
  .ml30-sp {
    margin-left: 30px !important; }
  .ml40-sp {
    margin-left: 40px !important; }
  .ml50-sp {
    margin-left: 50px !important; }
  .ml60-sp {
    margin-left: 60px !important; }
  .ml70-sp {
    margin-left: 70px !important; }
  .ml80-sp {
    margin-left: 80px !important; }
  .ml90-sp {
    margin-left: 90px !important; }
  .ml100-sp {
    margin-left: 100px !important; }
  /*右マージン*/
  .mr0-sp {
    margin-right: 0 !important; }
  .mr10-sp {
    margin-right: 10px !important; }
  .mr20-sp {
    margin-right: 20px !important; }
  .mr30-sp {
    margin-right: 30px !important; }
  .mr40-sp {
    margin-right: 40px !important; }
  .mr50-sp {
    margin-right: 50px !important; }
  .mr60-sp {
    margin-right: 60px !important; }
  .mr70-sp {
    margin-right: 70px !important; }
  .mr80-sp {
    margin-right: 80px !important; }
  .mr90-sp {
    margin-right: 90px !important; }
  .mr100-sp {
    margin-right: 100px !important; }
  /*上パディング*/
  .pt0-sp {
    padding-top: 0 !important; }
  .pt10-sp {
    padding-top: 10px !important; }
  .pt20-sp {
    padding-top: 20px !important; }
  .pt30-sp {
    padding-top: 30px !important; }
  .pt40-sp {
    padding-top: 40px !important; }
  .pt50-sp {
    padding-top: 50px !important; }
  .pt60-sp {
    padding-top: 60px !important; }
  .pt70-sp {
    padding-top: 70px !important; }
  .pt80-sp {
    padding-top: 80px !important; }
  .pt90-sp {
    padding-top: 90px !important; }
  .pt100-sp {
    padding-top: 100px !important; }
  /*下パディング*/
  .pb0-sp {
    padding-bottom: 0 !important; }
  .pb10-sp {
    padding-bottom: 10px !important; }
  .pb20-sp {
    padding-bottom: 20px !important; }
  .pb30-sp {
    padding-bottom: 30px !important; }
  .pb40-sp {
    padding-bottom: 40px !important; }
  .pb50-sp {
    padding-bottom: 50px !important; }
  .pb60-sp {
    padding-bottom: 60px !important; }
  .pb70-sp {
    padding-bottom: 70px !important; }
  .pb80-sp {
    padding-bottom: 80px !important; }
  .pb90-sp {
    padding-bottom: 90px !important; }
  .pb100-sp {
    padding-bottom: 100px !important; }
  /*左パディング*/
  .pl0-sp {
    padding-left: 0 !important; }
  .pl10-sp {
    padding-left: 10px !important; }
  .pl20-sp {
    padding-left: 20px !important; }
  .pl30-sp {
    padding-left: 30px !important; }
  .pl40-sp {
    padding-left: 40px !important; }
  .pl50-sp {
    padding-left: 50px !important; }
  .pl60-sp {
    padding-left: 60px !important; }
  .pl70-sp {
    padding-left: 70px !important; }
  .pl80-sp {
    padding-left: 80px !important; }
  .pl90-sp {
    padding-left: 90px !important; }
  .pl100-sp {
    padding-left: 100px !important; }
  /*右パディング*/
  .pr0-sp {
    padding-right: 0 !important; }
  .pr10-sp {
    padding-right: 10px !important; }
  .pr20-sp {
    padding-right: 20px !important; }
  .pr30-sp {
    padding-right: 30px !important; }
  .pr40-sp {
    padding-right: 40px !important; }
  .pr50-sp {
    padding-right: 50px !important; }
  .pr60-sp {
    padding-right: 60px !important; }
  .pr70-sp {
    padding-right: 70px !important; }
  .pr80-sp {
    padding-right: 80px !important; }
  .pr90-sp {
    padding-right: 90px !important; }
  .pr100-sp {
    padding-right: 100px !important; } }

/*　width
----------------------------------------*/
.wd100 {
  width: 100% !important; }

.wd95 {
  width: 95% !important; }

.wd90 {
  width: 90% !important; }

.wd85 {
  width: 85% !important; }

.wd80 {
  width: 80% !important; }

.wd75 {
  width: 75% !important; }

.wd70 {
  width: 70% !important; }

.wd65 {
  width: 65% !important; }

.wd60 {
  width: 60% !important; }

.wd55 {
  width: 55% !important; }

.wd50 {
  width: 50% !important; }

.wd48 {
  width: 48% !important; }

.wd45 {
  width: 45% !important; }

.wd40 {
  width: 40% !important; }

.wd35 {
  width: 35% !important; }

.wd30 {
  width: 30% !important; }

.wd25 {
  width: 25% !important; }

.wd20 {
  width: 20% !important; }

.wd15 {
  width: 15% !important; }

.wd10 {
  width: 10% !important; }

.wd5 {
  width: 5% !important; }

@media screen and (min-width: 768px) {
  .wd100-pc {
    width: 100% !important; }
  .wd95-pc {
    width: 95% !important; }
  .wd90-pc {
    width: 90% !important; }
  .wd85-pc {
    width: 85% !important; }
  .wd80-pc {
    width: 80% !important; }
  .wd75-pc {
    width: 75% !important; }
  .wd70-pc {
    width: 70% !important; }
  .wd65-pc {
    width: 65% !important; }
  .wd60-pc {
    width: 60% !important; }
  .wd55-pc {
    width: 55% !important; }
  .wd50-pc {
    width: 50% !important; }
  .wd48-pc {
    width: 48% !important; }
  .wd45-pc {
    width: 45% !important; }
  .wd40-pc {
    width: 40% !important; }
  .wd35-pc {
    width: 35% !important; }
  .wd30-pc {
    width: 30% !important; }
  .wd25-pc {
    width: 25% !important; }
  .wd20-pc {
    width: 20% !important; }
  .wd15-pc {
    width: 15% !important; }
  .wd10-pc {
    width: 10% !important; }
  .wd5-pc {
    width: 5% !important; } }

@media screen and (max-width: 767px) {
  .wd100-sp {
    width: 100% !important; }
  .wd95-sp {
    width: 95%; }
  .wd90-sp {
    width: 90%; }
  .wd85-sp {
    width: 85% !important; }
  .wd80-sp {
    width: 80% !important; }
  .wd75-sp {
    width: 75% !important; }
  .wd70-sp {
    width: 70% !important; }
  .wd65-sp {
    width: 65% !important; }
  .wd60-sp {
    width: 60% !important; }
  .wd55-sp {
    width: 55% !important; }
  .wd50-sp {
    width: 50% !important; }
  .wd48-sp {
    width: 48% !important; }
  .wd45-sp {
    width: 45% !important; }
  .wd40-sp {
    width: 40% !important; }
  .wd35-sp {
    width: 35% !important; }
  .wd30-sp {
    width: 30% !important; }
  .wd25-sp {
    width: 25% !important; }
  .wd20-sp {
    width: 20% !important; }
  .wd15-sp {
    width: 15% !important; }
  .wd10-sp {
    width: 10% !important; }
  .wd5-sp {
    width: 5% !important; } }

/*　行間
----------------------------------------*/
.lh1 {
  line-height: 1; }

.lh2 {
  line-height: 2; }

.lh12 {
  line-height: 1.2; }

.lh15 {
  line-height: 1.5; }

/*　flexボックス
----------------------------------------*/
.d-f {
  display: -webkit-box !important;
  display: -ms-flexbox !important;
  display: flex !important; }

.d-b {
  display: block !important; }

.d-ib {
  display: inline-block !important; }

/*flex-wrap*/
.fw-w {
  -ms-flex-wrap: wrap !important;
      flex-wrap: wrap !important; }

.fw-nw {
  -ms-flex-wrap: nowrap !important;
      flex-wrap: nowrap !important; }

.fw-r {
  -ms-flex-wrap: wrap-reverse !important;
      flex-wrap: wrap-reverse !important; }

/*justify-content*/
.jc-fs {
  -webkit-box-pack: start !important;
      -ms-flex-pack: start !important;
          justify-content: flex-start !important; }

.jc-fe {
  -webkit-box-pack: end !important;
      -ms-flex-pack: end !important;
          justify-content: flex-end !important; }

.jc-c {
  -webkit-box-pack: center !important;
      -ms-flex-pack: center !important;
          justify-content: center !important; }

.jc-sb {
  -webkit-box-pack: justify !important;
      -ms-flex-pack: justify !important;
          justify-content: space-between !important; }

.jc-sa {
  -ms-flex-pack: distribute !important;
      justify-content: space-around !important; }

/*align-items*/
.ai-fs {
  -webkit-box-align: start !important;
      -ms-flex-align: start !important;
          align-items: flex-start !important; }

.ai-fe {
  -webkit-box-align: end !important;
      -ms-flex-align: end !important;
          align-items: flex-end !important; }

.ai-c {
  -webkit-box-align: center !important;
      -ms-flex-align: center !important;
          align-items: center !important; }

.ai-s {
  -webkit-box-align: stretch !important;
      -ms-flex-align: stretch !important;
          align-items: stretch !important; }

.ai-fs {
  -webkit-box-align: start !important;
      -ms-flex-align: start !important;
          align-items: flex-start !important; }

/*justify-content*/
@media screen and (max-width: 767px) {
  .d-f-sp {
    display: -webkit-box !important;
    display: -ms-flexbox !important;
    display: flex !important; }
  .d-b-sp {
    display: block !important; }
  /*flex-wrap*/
  .fw-w-sp {
    -ms-flex-wrap: wrap !important;
        flex-wrap: wrap !important; }
  .fw-nw-sp {
    -ms-flex-wrap: nowrap !important;
        flex-wrap: nowrap !important; }
  .fw-r-sp {
    -ms-flex-wrap: wrap-reverse !important;
        flex-wrap: wrap-reverse !important; }
  /*justify-content*/
  .jc-fs-sp {
    -webkit-box-pack: start !important;
        -ms-flex-pack: start !important;
            justify-content: flex-start !important; }
  .jc-fe-sp {
    -webkit-box-pack: end !important;
        -ms-flex-pack: end !important;
            justify-content: flex-end !important; }
  .c-c-sp {
    -webkit-box-pack: center !important;
        -ms-flex-pack: center !important;
            justify-content: center !important; }
  .jc-sb-sp {
    -webkit-box-pack: justify !important;
        -ms-flex-pack: justify !important;
            justify-content: space-between !important; }
  .jc-sa-sp {
    -ms-flex-pack: distribute !important;
        justify-content: space-around !important; }
  /*align-items*/
  .ai-fs-sp {
    -webkit-box-align: start !important;
        -ms-flex-align: start !important;
            align-items: flex-start !important; }
  .ai-fe-sp {
    -webkit-box-align: end !important;
        -ms-flex-align: end !important;
            align-items: flex-end !important; }
  .ai-c-sp {
    -webkit-box-align: center !important;
        -ms-flex-align: center !important;
            align-items: center !important; }
  .ai-s-sp {
    -webkit-box-align: stretch !important;
        -ms-flex-align: stretch !important;
            align-items: stretch !important; }
  .ai-fs-sp {
    -webkit-box-align: start !important;
        -ms-flex-align: start !important;
            align-items: flex-start !important; } }

/*order*/
.order01 {
  -webkit-box-ordinal-group: 2;
      -ms-flex-order: 1;
          order: 1; }

.order02 {
  -webkit-box-ordinal-group: 3;
      -ms-flex-order: 2;
          order: 2; }

.order03 {
  -webkit-box-ordinal-group: 4;
      -ms-flex-order: 3;
          order: 3; }

.order04 {
  -webkit-box-ordinal-group: 5;
      -ms-flex-order: 4;
          order: 4; }

.order05 {
  -webkit-box-ordinal-group: 6;
      -ms-flex-order: 5;
          order: 5; }

@media screen and (max-width: 767px) {
  .order01-sp {
    -webkit-box-ordinal-group: 2;
        -ms-flex-order: 1;
            order: 1; }
  .order02-sp {
    -webkit-box-ordinal-group: 3;
        -ms-flex-order: 2;
            order: 2; }
  .order03-sp {
    -webkit-box-ordinal-group: 4;
        -ms-flex-order: 3;
            order: 3; }
  .order04-sp {
    -webkit-box-ordinal-group: 5;
        -ms-flex-order: 4;
            order: 4; }
  .order05-sp {
    -webkit-box-ordinal-group: 6;
        -ms-flex-order: 5;
            order: 5; } }

/*　link　緑
----------------------------------------*/
a.link-c {
  color: #007130;
  text-decoration: underline;
  font-weight: 300; }
  a.link-chover {
    text-decoration: none; }

/*　common
----------------------------------------*/
.content {
  width: 1100px;
  padding: 0 60px;
  margin: 0 auto;
  -webkit-box-sizing: border-box;
          box-sizing: border-box; }
  @media only screen and (max-width: 767px) {
    .content {
      width: 100%;
      padding: 0 20px; } }

.sec {
  padding: 50px 0; }

/*下層セクション*/
.sect {
  padding: 100px 0;
  line-height: 2; }

.sect:last-of-type {
  padding: 100px 0 50px;
  line-height: 2; }

.sect:last-of-type.bg-brown,
.sect:last-of-type.bg-w {
  padding: 100px 0 100px;
  line-height: 2; }

.sect:first-of-type {
  padding-top: 100px;
  margin-top: -20px; }

@media screen and (max-width: 767px) {
  .sect {
    padding: 50px 0; }
  .sect:last-of-type {
    padding: 50px 0; }
  .sect:last-of-type.bg-brown,
  .sect:last-of-type.bg-w {
    padding: 50px 0; }
  .sect:first-of-type {
    padding-top: 50px;
    margin-top: -10px; } }

/*タイトル*/
.main-ttl-area {
  margin-bottom: 50px;
  text-align: center;
  letter-spacing: 0.1em;
  margin-left: auto;
  margin-right: auto;
  line-height: 1.2; }

.main-ttl {
  font-size: 45px;
  font-family: 'Noto Serif JP',游明朝,'Yu Mincho',YuMincho,'Hiragino Mincho ProN',HGS明朝E,メイリオ,Meiryo,serif; }

.main-ttl-small {
  font-size: 30px;
  font-family: 'Noto Serif JP',游明朝,'Yu Mincho',YuMincho,'Hiragino Mincho ProN',HGS明朝E,メイリオ,Meiryo,serif; }

.main-ttl span {
  font-size: 80%; }

.sub-ttl {
  font-size: 22px;
  font-weight: 500;
  margin-top: 10px; }

.sub-ttl-small {
  font-size: 16px;
  font-weight: 500;
  margin-top: 10px; }

@media screen and (max-width: 767px) {
  .main-ttl-area {
    margin-bottom: 25px; }
  .main-ttl {
    font-size: 24px; }
  .sub-ttl {
    font-size: 14px; }
  .main-ttl-small {
    font-size: 21px; }
  .sub-ttl-small {
    font-size: 14px; } }

/*3階層目タイトル*/
.main-ttl-area.line-ttl .main-ttl::after {
  content: "";
  display: block;
  border-bottom: 2px solid #007130;
  width: 102px;
  margin: 20px auto 40px; }

.main-ttl-area.line-ttl .sub-ttl {
  color: #007130; }

@media only screen and (max-width: 767px) {
  .main-ttl-area.line-ttl .main-ttl::after {
    margin: 10px auto 20px; }
  .main-ttl-area.line-ttl .sub-ttl {
    font-size: 15px; } }

/*　menu
----------------------------------------*/
.menu {
  height: 50px;
  position: absolute;
  right: 35px;
  top: 30px;
  width: 55px;
  z-index: 99;
  cursor: pointer; }

.menu__line {
  background: #a5a5a5;
  display: block;
  height: 3px;
  position: absolute;
  -webkit-transition: -webkit-transform .3s;
  transition: -webkit-transform .3s;
  transition: transform .3s;
  transition: transform .3s, -webkit-transform .3s;
  width: 100%; }

.menu__line--center {
  top: 13px; }

.menu__line--bottom {
  bottom: 20px; }

.menu__line--top.active {
  top: 9px;
  -webkit-transform: rotate(45deg);
          transform: rotate(45deg); }

.menu__line--center.active {
  -webkit-transform: scaleX(0);
          transform: scaleX(0); }

.menu__line--bottom.active {
  bottom: 38px;
  -webkit-transform: rotate(135deg);
          transform: rotate(135deg); }

.menu__line--menu {
  bottom: 15px;
  text-align: center;
  background: none;
  color: #464646;
  font-size: 16px;
  font-weight: 500;
  letter-spacing: 0.05em; }

.menu__line--menu.active {
  display: none; }

.menu__line--menu2 {
  display: none; }

.menu__line--menu2.active {
  bottom: 15px;
  text-align: center;
  background: none;
  color: #464646;
  font-size: 16px;
  font-weight: bold;
  letter-spacing: 0.05em;
  display: block; }

@media screen and (max-width: 767px) {
  .menu {
    width: 30px;
    height: 20px;
    right: 20px;
    top: 20px; }
  .menu__line--center {
    top: 9px; }
  .menu__line--bottom {
    bottom: 0; }
  .menu__line--top.active {
    top: 9px;
    -webkit-transform: rotate(45deg);
            transform: rotate(45deg); }
  .menu__line--center.active {
    -webkit-transform: scaleX(0);
            transform: scaleX(0); }
  .menu__line--bottom.active {
    bottom: 9px;
    -webkit-transform: rotate(135deg);
            transform: rotate(135deg); }
  .menu__line--menu {
    display: none; }
  .menu__line--menu2, .menu__line--menu2.active {
    display: none; } }

/*　head-block
----------------------------------------*/
.head-block {
  background: #fff;
  height: 100px;
  position: fixed;
  width: 100%;
  z-index: 9999999999999; }

.logo-area {
  max-width: 284px;
  padding: 25px 28px; }

@media screen and (max-width: 767px) {
  .head-block {
    height: 60px;
    border-bottom: 4px solid #007130; }
  .logo-area {
    max-width: 170px;
    padding: 15px 15px; } }

/*　gnav
----------------------------------------*/
.gnav {
  background: #464646;
  display: none;
  height: 100%;
  position: fixed;
  width: 100%;
  letter-spacing: 0;
  z-index: 98; }

.gnav__inner {
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  overflow-x: hidden;
  overflow-y: scroll;
  padding: 100px 120px 90px 50px;
  height: 100%; }

.gnav__wrap {
  /*align-items:center;*/
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  /*position: absolute;*/
  width: 100%;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  max-width: 1235px;
  margin: 0 auto;
  padding-top: 50px;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  /*left: 0;
	right: 0;*/ }

.gnav__menu {
  width: 23%;
  margin-bottom: 50px; }
  .gnav__menu .gnav__menu__item {
    padding-top: 0.1em;
    padding-bottom: 0.1em;
    line-height: 1.2; }
    .gnav__menu .gnav__menu__item a {
      color: #fff;
      font-size: 12px;
      text-decoration: none;
      -webkit-transition: .5s;
      transition: .5s;
      font-weight: 100; }
      .gnav__menu .gnav__menu__item a:hover {
        color: #666; }
    .gnav__menu .gnav__menu__item ul {
      margin-left: 1em; }
      .gnav__menu .gnav__menu__item ul li {
        padding-top: 0.1em;
        padding-bottom: 0.1em;
        line-height: 1.2; }
        .gnav__menu .gnav__menu__item ul li::before {
          content: '-';
          display: inline-block;
          margin-left: -1em;
          width: 1em;
          color: #fff; }
  @media only screen and (min-width: 1024px) {
    .gnav__menu.gnav__menu--half {
      display: -webkit-box;
      display: -ms-flexbox;
      display: flex;
      -ms-flex-wrap: wrap;
          flex-wrap: wrap;
      width: 48.5%; }
      .gnav__menu.gnav__menu--half .menu__header {
        width: 100%; }
      .gnav__menu.gnav__menu--half .gnav__menu__item {
        display: block;
        width: 33.33%;
        padding-right: 3.33%; }
    .gnav__menu.gnav__menu--full {
      display: -webkit-box;
      display: -ms-flexbox;
      display: flex;
      -ms-flex-wrap: wrap;
          flex-wrap: wrap;
      width: 100%; }
      .gnav__menu.gnav__menu--full .menu__header {
        width: 100%; }
      .gnav__menu.gnav__menu--full .gnav__menu__item {
        display: block;
        width: 16.66%;
        padding-right: 1.66%;
        text-wrap: nowrap; } }

.gnav__menu dt, .gnav__menu dt a {
  font-size: 18px;
  color: #fff; }

.gnav__menu dt {
  margin-bottom: 10px;
  padding-bottom: 10px; }
  .gnav__menu dt.menu__header {
    border-bottom: 1px solid #fff; }
  .gnav__menu dt.next_block {
    margin-top: 40px; }
  .gnav__menu dt dt span {
    display: none; }

.gnav__btn {
  width: 100%;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center; }

.gnav__btn div {
  margin: 0 20px; }

.gnav__btn div a {
  width: auto;
  font-size: 18px;
  width: 320px;
  font-weight: 300; }

.gnav__search {
  width: 100%;
  position: fixed;
  bottom: 0;
  padding-right: 120px;
  opacity: 0;
  z-index: -1;
  -webkit-transition: all 0.3s;
  transition: all 0.3s; }

.gnav__search.current {
  opacity: 1;
  z-index: 9999999999999999999999999999999;
  -webkit-transition: all 0.9s;
  transition: all 0.9s; }

#headersearchbox {
  width: 100%;
  margin: 0 auto;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  color: #fff;
  background: #007130;
  border-top: #fff 1px solid;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center; }

.gsc-results-wrapper-overlay {
  height: 80%;
  left: 0 !important;
  right: 0 !important; }

.gsc-control-cse {
  border-color: #007130 !important;
  background-color: #007130 !important;
  padding: 20px !important; }

#___gcse_0 {
  width: 500px; }

.cse .gsc-control-wrapper-cse, .gsc-control-wrapper-cse {
  position: relative; }

.gnav__search .gsc-search-button-v2, .gnav__search .gsc-search-button-v2:hover, .gnav__search .gsc-search-button-v2:focus {
  border: none !important;
  position: absolute;
  left: 0;
  top: 0;
  width: 19px;
  height: 19px;
  background: url("../images/common/icon-search.png") center center no-repeat;
  background-size: 100%;
  margin: 8px;
  padding: 0; }

.gsc-search-button-v2 svg {
  display: none; }

.gnav__search .gsc-input-box, .gsc-input-box-hover, .gsc-input-box-focus {
  border: none; }

table.gsc-search-box {
  margin-left: 30px; }

.cse .gsc-control-wrapper-cse, .gsc-control-wrapper-cse {
  background: #fff !important; }

.gsc-results-wrapper-visible {
  top: 120px !important; }

@media screen and (max-width: 767px) {
  .gnav {
    top: 60px;
    overflow-x: hidden;
    overflow-y: scroll;
    padding: 0 120px 0 0; }
  .gnav__inner {
    display: block;
    width: 100%;
    max-width: 100%;
    padding: 20px 20px 170px 20px; }
  .gnav__wrap {
    display: block;
    width: 100%;
    max-width: 100%;
    padding: 0; }
  .gnav__menu {
    width: 100%;
    margin-bottom: 10px; }
    .gnav__menu.gnav__menu--half {
      width: 100%; }
  .gnav__menu__item {
    height: 0px;
    opacity: 0;
    display: none; }
    .gnav__menu__item.inline {
      display: none; }
    .gnav__menu__item.is-active {
      height: auto;
      opacity: 1;
      -webkit-transition: all 0.6s;
      transition: all 0.6s;
      display: block; }
  .gnav__menu dt, .gnav__menu dt a {
    font-size: 14px; }
  .gnav__menu dt {
    border-bottom: 1px solid #fff;
    margin-bottom: 5px;
    padding-bottom: 5px; }
    .gnav__menu dt.next_block {
      margin-top: 0; }
    .gnav__menu dt span {
      display: block;
      width: 20px;
      height: 20px;
      background: url(../images/common/menu_sub_closed.png) center center no-repeat;
      background-size: 70%;
      float: right;
      margin-right: 2px;
      cursor: pointer;
      -webkit-transition: all 0.1s;
      transition: all 0.1s; }
      .gnav__menu dt span.is-active {
        background: url(../images/common/menu_sub_opend.png) center center no-repeat;
        background-size: 100%;
        -webkit-transition: all 0.1s;
        transition: all 0.1s; }
  .gnav__btn {
    display: block; }
  .gnav__btn div {
    margin: 10px 0; }
  .gnav__btn div a {
    font-size: 16px;
    width: 100%; }
  #headersearchbox {
    -webkit-box-pack: left;
        -ms-flex-pack: left;
            justify-content: left;
    padding: 0 10px; }
  .gsc-control-cse {
    padding: 10px 0 10px 10px !important; }
  form.gsc-search-box {
    margin-bottom: 0 !important; }
  #___gcse_0 {
    width: auto; }
  .gsib_a {
    padding: 0 !important; }
  input.gsc-input {
    /*padding: 5px !important;*/ } }

/*　r-navi
----------------------------------------*/
.r-navi {
  width: 120px;
  background: #007130;
  z-index: 99;
  font-size: 14px;
  border-bottom: 2px solid #00511c;
  position: fixed;
  right: 0;
  top: 100px;
  height: 100%;
  -webkit-transition: all 0.9s;
  transition: all 0.9s; }

.r-navi a {
  color: #fff;
  font-weight: 500;
  /*padding: 30px 13px;*/
  /*display: block;*/
  text-align: center;
  height: 8vh;
  max-height: 80px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  background: url(../images/common/navi-bg.png) right center no-repeat;
  background-size: 15% 50%;
  letter-spacing: normal; }

.r-navi li {
  border-bottom: 1px solid #00511c; }

.r-navi.current {
  background: #585858; }

.r-navi.current li {
  border-bottom: 1px solid #231815; }

.r-navi.current a {
  background: url(../images/common/navi-bg-hover.png) right center no-repeat;
  background-size: 15% 50%; }

@media screen and (max-width: 1024px) {
  .r-navi {
    right: -1000px;
    -webkit-transition: all 1.9s;
    transition: all 1.9s; }
  .r-navi.current {
    right: 0;
    -webkit-transition: all 0.3s;
    transition: all 0.3s; } }

@media screen and (max-width: 767px) {
  .r-navi {
    right: -1000px;
    top: 60px;
    line-height: 1.2;
    -webkit-transition: all 0.3s;
    transition: all 0.3s; }
  .r-navi.current {
    right: 0;
    -webkit-transition: all 0.3s;
    transition: all 0.3s; } }

/*　main-content
----------------------------------------*/
.main-content {
  /*display: flex;*/
  /*overflow: hidden*/ }

/*　l-content
----------------------------------------*/
.l-content {
  width: 100%;
  min-width: 1100px;
  padding-right: 120px;
  padding-top: 100px;
  -webkit-box-sizing: border-box;
          box-sizing: border-box; }

@media screen and (max-width: 1024px) {
  .l-content {
    padding-right: 0; } }

@media screen and (max-width: 767px) {
  .l-content {
    width: 100%;
    min-width: 100%;
    padding-right: 0;
    padding-top: 64px; } }

/*　footer
----------------------------------------*/
footer {
  padding-right: 120px;
  min-width: 1100px;
  -webkit-box-sizing: border-box;
          box-sizing: border-box; }

@media screen and (max-width: 1024px) {
  footer {
    padding-right: 0; } }

@media screen and (max-width: 767px) {
  footer {
    padding-right: 0;
    min-width: 100%;
    -webkit-box-sizing: border-box;
            box-sizing: border-box; } }

/*materials-areaa*/
.materials-area {
  background: #007130;
  margin: 100px;
  padding: 50px; }

.materials-list {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center; }

.materials-list li {
  margin: 0 20px; }

@media screen and (max-width: 767px) {
  .materials-area {
    margin: 20px;
    padding: 25px 10px; }
  .materials-list {
    display: block;
    max-width: 560px;
    margin: 0 auto; }
  .materials-list li {
    margin: 0 0 10px 0px; }
  .materials-list li:last-child {
    margin: 0; } }

/*campus-area*/
.campus-area {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  overflow: hidden; }

.campus-box {
  width: 50%;
  position: relative; }

.campus-block {
  position: absolute;
  top: 0;
  width: 100%;
  height: 100%;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  /*align-items: flex-end;*/
  color: #fff;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  /*padding: 60px 0;*/
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  text-align: center; }

.campus-block .campus-name {
  position: relative;
  height: 50%;
  width: 100%; }

.campus-block .campus-name h3 {
  position: absolute;
  width: 100%;
  top: 50%;
  left: 50%;
  -webkit-transform: translateY(-50%) translateX(-50%);
          transform: translateY(-50%) translateX(-50%);
  text-align: center;
  font-size: 60px;
  font-weight: 500; }

.campus-block .campus-name h3 span {
  display: block;
  text-align: center;
  font-size: 20px; }

.campus-block p {
  padding: 0 1em;
  font-size: 16px;
  line-height: 2; }

.campus-block .campus-buttons {
  width: 100%;
  height: 50%;
  text-align: center; }

.campus-block .btn {
  width: 100%;
  text-align: center; }

.campus-block .btn a {
  display: inline-block;
  width: 50%;
  max-width: 400px;
  margin: 40px 0 0 0;
  padding: 15px;
  font-size: 18px; }

@media screen and (max-width: 1600px) {
  .campus-block .campus-name h3 {
    font-size: 40px;
    margin-bottom: 20px; }
  .campus-block p {
    font-size: 12px;
    line-height: 2; }
  .campus-block .btn a {
    margin: 10px 0 0 0;
    padding: 10px;
    font-size: 16px; } }

@media screen and (max-width: 767px) {
  .campus-box {
    width: 100%; }
  .campus-block {
    width: 100%; }
  .campus-block .campus-name h3 {
    font-size: 10vw;
    width: 100%;
    margin-bottom: 0; }
  .campus-block .campus-name h3 span {
    font-size: 16px; }
  .campus-block .btn a {
    margin: 20px 0 0 0;
    width: 70%; } }

/*foot-navi-area*/
.foot-navi-area {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  padding-top: 110px;
  min-width: 1100px;
  background: #f5f4f2; }

.foot-logo-area {
  max-width: 500px;
  width: 30%;
  padding: 0 60px;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  border-right: 1px solid #dad9d7; }

.foot-logo-ttl {
  font-size: 20px;
  font-weight: 700;
  margin-top: 30px; }

.foot-logo-campus {
  font-size: 15px;
  font-weight: 300;
  letter-spacing: 0;
  margin-top: 30px; }

.foot-logo-houjin {
  font-size: 15px;
  font-weight: 300;
  letter-spacing: 0;
  margin-top: 30px;
  border-top: 1px solid #dad9d7;
  padding-top: 30px; }
  @media only screen and (max-width: 767px) {
    .foot-logo-houjin {
      padding-top: 20px; } }

.foot-logo-area p {
  margin-bottom: 20px; }

.foot-navi-area nav {
  padding: 0 60px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  width: 70%; }

.foot-navi-area .nav-sec {
  margin: 0;
  width: 33.33333%; }

.foot-navi-area .nav-relation {
  margin-top: 40px; }

.foot-navi-area .nav-sec-relation {
  margin: 0;
  width: 100%; }

.foot-navi-area .nav-sec-relation dd,
.foot-navi-area .nav-sec-relation li {
  display: inline-block;
  padding-left: 0;
  padding-right: 20px;
  line-height: 1.2; }

.foot-navi-area nav dl,
.foot-navi-area nav ul {
  vertical-align: top;
  margin-right: 20px;
  margin-bottom: 30px; }

.foot-navi-area nav dl ul {
  margin-bottom: 10px; }
  .foot-navi-area nav dl ul li::before {
    content: '-';
    display: inline-block;
    margin-left: -1em;
    width: 1em; }

.foot-navi-area .nav-sec-relation dl:first-of-type,
.foot-navi-area .nav-sec-relation ul:first-of-type {
  margin-bottom: 0; }

.foot-navi-area .nav-sec-relation dl:last-of-type,
.foot-navi-area .nav-sec-relation ul:last-of-type {
  margin-bottom: 30px; }

.foot-navi-area nav dl dt {
  font-size: 18px;
  font-weight: 700; }

.foot-navi-area nav dl dd,
.foot-navi-area nav ul li {
  padding-left: 20px;
  padding-top: 0.5em;
  font-size: 14px;
  font-weight: 300;
  letter-spacing: 0;
  line-height: 1.2; }

@media screen and (max-width: 767px) {
  .foot-navi-area {
    display: block;
    min-width: 100%;
    padding-top: 50px; }
  .foot-logo-area {
    max-width: 100%;
    width: 100%;
    padding: 0 20px;
    margin-bottom: 20px;
    border-right: none;
    border-bottom: 1px solid #dad9d7; }
  .foot-logo-area img {
    max-width: 400px; }
  .foot-navi-area nav {
    padding: 0 20px;
    width: 100%; }
  .foot-navi-area .nav-sec {
    margin: 0;
    width: 100%; } }

/*copyrigh*/
.copyright {
  text-align: center;
  font-size: 12px;
  letter-spacing: normal;
  padding: 50px 0 20px;
  background: #f5f4f2; }

@media screen and (max-width: 767px) {
  .copyright {
    font-size: 10px; } }

/*　下層ページ
----------------------------------------*/
/*タイトル*/
.second-ttl {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  height: 330px;
  background-position: center;
  background-size: cover;
  text-align: center;
  font-size: 42px;
  color: #fff;
  font-weight: 900;
  background-color: #007130;
  position: relative; }
  .second-ttl span {
    z-index: 1; }

/*画像無し*/
.second-ttl.others {
  height: 165px;
  background-color: #004D22; }

@media screen and (max-width: 767px) {
  .second-ttl {
    height: 200px;
    font-size: 22px;
    background-size: cover;
    line-height: 1.5; }
  /*画像無し*/
  .second-ttl.others {
    height: 100px; } }

/*breadcrumb*/
.breadcrumb {
  padding: 15px 0;
  background-color: #f5f4f2; }

.breadcrumb li {
  color: #007130;
  display: inline-block;
  margin-right: 5px;
  font-size: 14px;
  letter-spacing: 0; }

.breadcrumb li::after {
  content: ">";
  margin-left: 10px;
  color: #464646; }

.breadcrumb li:last-child::after {
  display: none; }

.breadcrumb li a {
  color: #464646; }

@media screen and (max-width: 767px) {
  .breadcrumb li {
    display: inline; } }

/*　sec-news 下層の新着情報一覧
----------------------------------------*/
.second-news.sect .panel-group {
  border-top: none;
  margin-bottom: 50px; }

.second-news.sect .panel {
  display: none; }

.second-news.sect .panel.is-show {
  display: block; }

.second-news.sect .info-box {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  margin: 0 -1%; }

.second-news.sect .info-box li {
  width: 25%;
  border-right: 1px solid #464646;
  padding: 0 1%;
  margin-bottom: 40px;
  -webkit-box-sizing: border-box;
          box-sizing: border-box; }

.second-news.sect .info-box li:last-child, .second-news.sect .info-box li:nth-child(4n) {
  border: none; }

.second-news.sect .info-box li a {
  display: block; }

.second-news.sect .info-box time {
  font-family: 'Roboto Condensed', sans-serif;
  font-size: 20px;
  font-weight: 100;
  display: block;
  margin-bottom: 10px; }

.second-news.sect .info-txt {
  padding: 0 15px 15px; }

.second-news.sect .cat-label {
  color: #fff;
  text-align: center;
  font-size: 16px;
  margin-bottom: 10px;
  padding: 0 5px;
  background-color: #007131; }

.second-news.sect .info-img {
  position: relative;
  width: 100%;
  margin-bottom: 15px;
  overflow: hidden; }
  .second-news.sect .info-img::before {
    content: '';
    display: block;
    padding-top: 100%; }
  .second-news.sect .info-img img {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    -o-object-fit: cover;
       object-fit: cover;
    font-family: 'object-fit: cover'; }

.second-news.sect .type-0 {
  background-color: #007131;
  /* 汎用 */ }

.second-news.sect .type-1 {
  background-color: #27ae60;
  /* お知らせ */ }

.second-news.sect .type-2 {
  background-color: #9529b9;
  /* 受験生向け */ }

.second-news.sect .type-3 {
  background-color: #2980b9;
  /* イベント */ }

.second-news.sect .type-4 {
  background-color: #ef8ba2;
  /* クラブ */ }

.second-news.sect .type-5 {
  background-color: #7c9b0d;
  /* bg-lime */ }

.second-news.sect .type-6 {
  background-color: #5e4a8b;
  /* bg-purple */ }

.second-news.sect .category-0 {
  background-color: #007131;
  /* bg-green */ }

.second-news.sect .category-1 {
  background-color: #003c7b;
  /* bg-blue */ }

.second-news.sect .category-2 {
  background-color: #B1002A;
  /* bg-red */ }

.second-news.sect .category-3 {
  background-color: #64635E;
  /* bg-gray */ }

.second-news.sect .category-4 {
  background-color: #584A87;
  /* bg-purple */ }

.second-news.sect .category-5 {
  background-color: #007131;
  /* bg-green */ }

.second-news.sect .category-6 {
  background-color: #E37D00;
  /* bg-orange */ }

.page-nation ul {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -ms-flex-line-pack: center;
      align-content: center;
  font-size: 20px; }
  .page-nation ul li {
    border: 1px solid #A2A2A2;
    text-align: center;
    width: 50px;
    height: 50px;
    margin: 0 5px;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    color: #A2A2A2;
    -webkit-transition: all 0.3s ease-out;
    transition: all 0.3s ease-out; }
    .page-nation ul li.current {
      background: #e5e2de; }
    .page-nation ul li a {
      height: 100%;
      width: 100%;
      display: block;
      color: #A2A2A2;
      display: -webkit-box;
      display: -ms-flexbox;
      display: flex;
      -webkit-box-align: center;
          -ms-flex-align: center;
              align-items: center;
      -webkit-box-pack: center;
          -ms-flex-pack: center;
              justify-content: center; }
    .page-nation ul li.pn-prev {
      background: url(../images/common/pn-prev.png) center center no-repeat; }
    .page-nation ul li.pn-next {
      background: url(../images/common/pn-next.png) center center no-repeat; }
    .page-nation ul li:hover {
      background-color: #e5e2de;
      -webkit-transition: -webkit-transform .3s;
      transition: -webkit-transform .3s;
      transition: transform .3s;
      transition: transform .3s, -webkit-transform .3s; }

@media screen and (max-width: 767px) {
  .second-news.sect .panel-group {
    margin-bottom: 0; }
  .second-news.sect .info-box {
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    margin: 0 -4%; }
  .second-news.sect .info-box li:nth-child(n+5) {
    display: none; }
  .second-news.sect .info-box li:nth-child(even) {
    border: none; }
  .second-news.sect .tab-outer {
    border-bottom: none;
    overflow: auto; }
  .second-news.sect .tab-group {
    display: table; }
  .second-news.sect .info-box li {
    width: 50%;
    padding: 0 4%;
    margin-bottom: 20px; }
  .second-news.sect .info-txt {
    padding: 15px 0; }
  .second-news.sect .cat-label {
    font-size: 12px; }
  .page-nation ul {
    font-size: 14px;
    margin-top: 20px; }
    .page-nation ul li {
      height: 25px;
      margin: 0 2px; } }

/*　target-contents-area
----------------------------------------*/
.target-contents-area {
  padding: 0 60px; }
  .target-contents-area .target-contents-main {
    max-width: 1300px;
    margin: 0 auto;
    overflow: hidden;
    position: relative; }
    .target-contents-area .target-contents-main .target-contents-main-img {
      max-width: 655px;
      width: 51%;
      float: left;
      position: absolute;
      top: 0;
      left: 0; }
    .target-contents-area .target-contents-main .target-contents-main-txt {
      max-width: 900px;
      width: 66%;
      padding: 40px 25px 40px 19%;
      border: 1px solid #007130;
      float: right;
      margin-top: 50px;
      line-height: 1.5; }
      .target-contents-area .target-contents-main .target-contents-main-txt .big {
        font-size: 26px; }
        .target-contents-area .target-contents-main .target-contents-main-txt .big .small {
          font-size: 60%;
          font-weight: 300;
          margin-left: 30px; }
      .target-contents-area .target-contents-main .target-contents-main-txt .middle {
        font-size: 18px; }
      .target-contents-area .target-contents-main .target-contents-main-txt .small {
        font-size: 14px;
        font-weight: 300;
        line-height: 1.5;
        margin-bottom: 20px; }
      .target-contents-area .target-contents-main .target-contents-main-txt .target-contents-main-txt-img {
        margin-bottom: 25px;
        margin-top: 15px; }
        .target-contents-area .target-contents-main .target-contents-main-txt .target-contents-main-txt-img img {
          width: auto;
          max-width: 100%; }
    .target-contents-area .target-contents-main .target-contents-flex {
      display: -webkit-box;
      display: -ms-flexbox;
      display: flex;
      -webkit-box-pack: justify;
          -ms-flex-pack: justify;
              justify-content: space-between;
      line-height: 2; }
      .target-contents-area .target-contents-main .target-contents-flex .target-content-left {
        width: 284px;
        padding-right: 10px; }
        .target-contents-area .target-contents-main .target-contents-flex .target-content-left p {
          font-size: 14px;
          font-weight: 300;
          line-height: 1.5; }
        .target-contents-area .target-contents-main .target-contents-flex .target-content-left.fix {
          width: 60%; }
      .target-contents-area .target-contents-main .target-contents-flex .target-content-right {
        width: 284px; }
      .target-contents-area .target-contents-main .target-contents-flex.fix .target-content-left {
        width: 35%; }
      .target-contents-area .target-contents-main .target-contents-flex.fix .target-content-right {
        width: 65%; }
      .target-contents-area .target-contents-main .target-contents-flex.fix02 {
        -webkit-box-pack: start;
            -ms-flex-pack: start;
                justify-content: flex-start; }
        .target-contents-area .target-contents-main .target-contents-flex.fix02 .target-content-left {
          width: 230px;
          margin-right: 2%; }
        .target-contents-area .target-contents-main .target-contents-flex.fix02 .target-content-right {
          width: 230px; }
        .target-contents-area .target-contents-main .target-contents-flex.fix02 .btn_sm {
          margin: 0;
          width: 100%; }
    .target-contents-area .target-contents-main img {
      width: auto;
      max-width: 100%; }

@media screen and (max-width: 767px) {
  .target-contents-area {
    padding: 0 20px; }
    .target-contents-area .target-contents-main {
      border: 1px solid #007130;
      padding-top: 5px; }
      .target-contents-area .target-contents-main .target-contents-main-img {
        width: 94%;
        float: none;
        margin: 0 auto;
        position: relative; }
      .target-contents-area .target-contents-main .target-contents-main-txt {
        width: 100%;
        padding: 20px 10px;
        float: none;
        margin-top: 0;
        padding-top: 10px;
        border: none; }
        .target-contents-area .target-contents-main .target-contents-main-txt .big {
          margin-top: 15px; }
          .target-contents-area .target-contents-main .target-contents-main-txt .big .small {
            display: block;
            margin-left: 0; }
        .target-contents-area .target-contents-main .target-contents-main-txt .target-contents-main-txt-img {
          margin-bottom: 20px; }
      .target-contents-area .target-contents-main .target-contents-flex {
        display: block; }
        .target-contents-area .target-contents-main .target-contents-flex .target-content-left {
          width: 100%;
          margin-bottom: 20px; }
        .target-contents-area .target-contents-main .target-contents-flex .target-content-right {
          width: 100%; }
          .target-contents-area .target-contents-main .target-contents-flex .target-content-right a {
            float: none !important; }
        .target-contents-area .target-contents-main .target-contents-flex.fix .target-content-left {
          width: 65%;
          margin: 0 auto; }
        .target-contents-area .target-contents-main .target-contents-flex.fix .target-content-right {
          width: 65%;
          margin: 0 auto; }
        .target-contents-area .target-contents-main .target-contents-flex.fix02 {
          -webkit-box-pack: start;
              -ms-flex-pack: start;
                  justify-content: flex-start; }
          .target-contents-area .target-contents-main .target-contents-flex.fix02 .target-content-left {
            margin-right: auto;
            margin-left: auto;
            padding: 0; }
          .target-contents-area .target-contents-main .target-contents-flex.fix02 .target-content-right {
            margin-right: auto;
            margin-left: auto; }
          .target-contents-area .target-contents-main .target-contents-flex.fix02 .btn_sm {
            margin: 0;
            width: 100%; } }

/*　target-contents-two
----------------------------------------*/
.target-contents-two {
  max-width: 1300px;
  margin: 0 auto 70px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  padding: 0 60px;
  -webkit-box-sizing: content-box;
          box-sizing: content-box; }
  .target-contents-two .target-contents-two-img {
    max-width: 199px;
    width: 32%;
    float: left;
    position: absolute;
    top: 0;
    left: 0; }
  .target-contents-two .target-contents-two-txt {
    max-width: 506px;
    width: 58%;
    padding: 35px 25px 35px 18%;
    border: 1px solid #007130;
    float: right;
    margin-top: 50px;
    font-size: 26px;
    line-height: 1.5; }
    .target-contents-two .target-contents-two-txt p img {
      width: auto;
      max-width: 100%; }
  .target-contents-two .target-contents-two-box {
    font-size: 16px;
    font-weight: 300;
    line-height: 2; }
  .target-contents-two .target-contents-two-left, .target-contents-two .target-contents-two-right {
    position: relative;
    max-width: 624px;
    width: 48%; }

@media screen and (max-width: 767px) {
  .target-contents-two {
    margin: 0 auto 70px;
    display: block;
    padding: 0 20px; }
    .target-contents-two .target-contents-two-img {
      max-width: 199px;
      width: 80%;
      float: none;
      position: relative;
      margin-left: 20px;
      margin: 0 auto; }
    .target-contents-two .target-contents-two-txt {
      max-width: 100%;
      width: 100%;
      padding: 50px 20px 20px 20px;
      float: none;
      margin-top: -40px;
      font-size: 16px;
      -webkit-box-sizing: border-box;
              box-sizing: border-box;
      border: none; }
    .target-contents-two .target-contents-two-box {
      margin-top: 10px;
      font-size: 14px;
      font-weight: 300; }
    .target-contents-two .target-contents-two-left, .target-contents-two .target-contents-two-right {
      max-width: 100%;
      width: 100%;
      border: 1px solid #007130;
      padding-top: 10px; }
    .target-contents-two .target-contents-two-left {
      margin-bottom: 20px; } }

.target-btn-area {
  line-height: 1.5;
  margin-top: 80px; }
  .target-btn-area .target-btn-list {
    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;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap; }
    .target-btn-area .target-btn-list li {
      width: 49%;
      background: #f5f4f2;
      margin-bottom: 20px;
      position: relative; }
      .target-btn-area .target-btn-list li a {
        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;
        -ms-flex-line-pack: center;
            align-content: center; }
        .target-btn-area .target-btn-list li a .target-btn-img {
          width: 208px; }
        .target-btn-area .target-btn-list li a .target-btn-txt {
          width: 272px;
          padding-left: 40px;
          position: relative;
          font-size: 18px; }
      .target-btn-area .target-btn-list li::before {
        position: absolute;
        content: "";
        right: 15px;
        width: 10px;
        height: 10px;
        top: 50%;
        -webkit-transform: translateY(-50%);
        /* Safari用 */
        transform: translateY(-50%);
        border-top: 1px solid #464646;
        border-right: 1px solid #464646;
        -webkit-transform: rotate(45deg);
        transform: rotate(45deg); }
      .target-btn-area .target-btn-list li .link-c {
        font-size: 14px;
        font-weight: 300; }
    .target-btn-area .target-btn-list .no-link {
      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;
      -ms-flex-line-pack: center;
          align-content: center; }
      .target-btn-area .target-btn-list .no-link .target-btn-img {
        width: 208px; }
      .target-btn-area .target-btn-list .no-link .target-btn-txt {
        width: 272px;
        padding-left: 40px;
        position: relative; }
      .target-btn-area .target-btn-list .no-link::before {
        display: none; }

@media screen and (max-width: 767px) {
  .target-btn-area {
    margin-top: 40px; }
    .target-btn-area .target-btn-list {
      display: block; }
      .target-btn-area .target-btn-list li {
        margin-bottom: 10px;
        width: 100%; }
        .target-btn-area .target-btn-list li a .target-btn-img {
          width: 40%; }
        .target-btn-area .target-btn-list li a .target-btn-txt {
          width: 60%;
          padding-left: 20px;
          font-size: 14px; }
      .target-btn-area .target-btn-list li.no-link {
        width: 100%; }
        .target-btn-area .target-btn-list li.no-link .target-btn-img {
          width: 40%; }
        .target-btn-area .target-btn-list li.no-link .target-btn-txt {
          width: 60%;
          padding-left: 20px; } }

/*下層コンテンツブロック*/
.content-lead {
  margin-bottom: 80px; }

.content-block {
  padding-bottom: 70px; }
  .content-block h3 {
    font-size: 22px;
    background: #D6D2CB;
    padding: 15px;
    margin-bottom: 20px;
    text-align: center;
    font-weight: 500;
    position: relative; }
  .content-block:last-child {
    margin-bottom: 0;
    padding-bottom: 0; }
  .content-block .content-dl {
    margin-bottom: 30px; }
    .content-block .content-dl:last-child {
      margin-bottom: 0; }
    .content-block .content-dl dd {
      padding-left: 15px; }
      .content-block .content-dl dd li {
        text-indent: -52px;
        margin-left: 52px; }

.white-box {
  background: #fff;
  padding: 25px; }

.brown-box {
  background: #F5F4F2;
  padding: 25px;
  margin-top: 20px; }
  .brown-box h4 {
    font-weight: 300;
    font-size: 16px; }
  .brown-box .flex-box {
    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; }
    .brown-box .flex-box p {
      width: 48%;
      font-size: 38px;
      font-family: 'Roboto Condensed', sans-serif; }
      .brown-box .flex-box p span {
        background: #D6D2CB;
        padding: 5px 15px;
        font-size: 16px;
        margin-right: 10px;
        position: relative;
        top: -7px;
        font-family: 'Noto Sans JP', 'ヒラギノ角ゴ ProN W3', 'Hiragino Kaku Gothic ProN', '游ゴシック', YuGothic, 'メイリオ', Meiryo, sans-serif; }

.title-line {
  border-bottom: 1px solid #a3a2a0;
  font-size: 18px;
  margin-bottom: 10px;
  font-weight: 500; }

@media screen and (max-width: 767px) {
  .content-block h3 {
    font-size: 18px;
    padding: 10px; }
  .content-block .content-dl {
    margin-bottom: 30px; }
    .content-block .content-dl:last-child {
      margin-bottom: 0; }
    .content-block .content-dl dd {
      padding-left: 10px; }
      .content-block .content-dl dd li {
        text-indent: -44px;
        margin-left: 44px; }
  .brown-box h4 {
    margin-bottom: 15px; }
  .brown-box .flex-box {
    display: block; }
    .brown-box .flex-box p {
      width: 100%;
      font-size: 30px;
      line-height: 1.2;
      margin-bottom: 20px;
      text-align: center; }
      .brown-box .flex-box p span {
        font-size: 15px;
        display: block; }
      .brown-box .flex-box p:last-child {
        margin-bottom: 0; } }

/*テーブルスタイル*/
/*table01*/
.table01 {
  width: 100%; }
  .table01 th {
    display: block;
    width: 100%;
    font-size: 22px;
    background: #D6D2CB;
    padding: 15px;
    margin: 10px 0;
    text-align: center;
    font-weight: 500; }
  .table01 td {
    display: block;
    width: 100%;
    font-size: 20px;
    padding: 15px 0 60px; }
  .table01 input, .table01 textarea {
    border: 1px solid #A2A2A2;
    width: 100%;
    padding: 15px; }
  .table01 .tow-colum {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
    text-align: left; }
    .table01 .tow-colum .block {
      width: 47%; }
  .table01 .three-colum {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
    text-align: left; }
    .table01 .three-colum .block {
      width: 30%;
      position: relative; }
      .table01 .three-colum .block::after {
        content: "ー";
        position: absolute;
        right: -12%;
        top: 16px; }
      .table01 .three-colum .block:last-child::after {
        display: none; }
  .table01 .equired {
    color: #C1272D;
    font-size: 80%;
    margin-left: 20px; }

@media screen and (max-width: 767px) {
  .table01 th {
    font-size: 18px;
    padding: 10px; }
  .table01 td {
    font-size: 16px;
    padding: 0px 0 30px; }
  .table01 input, .table01 textarea {
    padding: 10px; }
  .table01 .three-colum {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
    text-align: left; }
    .table01 .three-colum .block {
      width: 29%;
      position: relative; }
      .table01 .three-colum .block::after {
        right: -19%;
        top: 10px; } }

/*table02*/
.table02 {
  width: 100%;
  border-collapse: collapse; }
  .table02 th, .table02 td {
    border: 1px solid #a2a2a2;
    padding: 5px 30px; }
  .table02 th {
    background: #464646;
    color: #fff;
    font-weight: 500; }
  .table02 td {
    font-weight: 300; }

@media screen and (max-width: 767px) {
  .table02 th, .table02 td {
    border: 1px solid #a2a2a2;
    padding: 5px 15px; } }

/*　情報公開
----------------------------------------*/
.i-btn.nolink span {
  position: relative;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  width: 100%;
  text-align: center;
  padding: 5px 12px;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  border: 1px solid #A2A2A2;
  color: #A2A2A2;
  line-height: 1.2;
  min-height: 50px;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  letter-spacing: 0; }

.i-btn a {
  position: relative;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  width: 100%;
  text-align: center;
  padding: 5px 12px;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  border: 1px solid #464646;
  color: #464646;
  line-height: 1.2;
  min-height: 50px;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  letter-spacing: 0; }

_:-ms-lang(x)::-ms-backdrop, .i-btn a {
  height: 50px; }

.i-btn a::before {
  position: absolute;
  content: "";
  right: 15px;
  width: 10px;
  height: 10px;
  top: 40%;
  border-top: 1px solid #464646;
  border-right: 1px solid #464646;
  -webkit-transform: rotate(45deg);
  transform: rotate(45deg); }

.i-btn a.icon-pdf::after {
  position: absolute;
  content: "PDF";
  right: 0;
  top: 0;
  color: #fff;
  padding: 4px 15px;
  background: #464646;
  font-size: 14px;
  font-weight: 700; }

.i-btn a.icon-pdf::before {
  display: none !important; }

.i-btn a.icon-word::after {
  position: absolute;
  content: "Word";
  right: 0;
  top: 0;
  color: #fff;
  padding: 4px 10px;
  background: #464646;
  font-size: 14px;
  font-weight: 700; }

.i-btn a.icon-word::before {
  display: none !important; }

@media screen and (max-width: 767px) {
  .i-btn a.icon-pdf::after {
    font-size: 12px;
    padding: 1px 5px; }
  _:-ms-lang(x)::-ms-backdrop, .i-btn a {
    height: 60px; }
  .i-btn a.icon-word::after {
    font-size: 12px;
    padding: 1px 5px; } }

/*　開閉アコーディオンスタイル
----------------------------------------*/
.accordion-ttl {
  padding: 8px !important;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between; }
  .accordion-ttl .ttl {
    display: block;
    width: 96%;
    padding-left: 2%; }

@media screen and (max-width: 767px) {
  .content-block h3.accordion-ttl {
    margin-bottom: 5px; } }

.accordion-btn {
  position: relative;
  /* top: -1px; */
  /* right: -2px; */
  /* display: block; */
  width: 50px;
  /* height: 200px; */
  margin: -9px 0;
  right: -9px;
  background: url(../images/common/menu_sub_closed.png) center center no-repeat #005D24;
  background-size: 40%;
  /* float: right; */
  /* margin-right: 2px; */
  cursor: pointer;
  -webkit-transition: all 0.1s;
  transition: all 0.1s; }

.accordion-btn.btn-active {
  background: url(../images/common/menu_sub_opend.png) center center no-repeat #B5B5B5;
  background-size: 40%;
  -webkit-transition: all 0.1s;
  transition: all 0.1s; }

.accordion-content {
  display: none;
  height: 1; }
  .accordion-content .bg-brown,
  .accordion-content .bg-w {
    padding: 30px 40px 40px;
    margin-bottom: 20px; }
    .accordion-content .bg-brown:last-of-type,
    .accordion-content .bg-w:last-of-type {
      margin-bottom: 0; }

.noaccordion-content .bg-brown,
.noaccordion-content .bg-w {
  padding: 30px 40px 40px;
  margin-bottom: 20px; }
  .noaccordion-content .bg-brown:last-of-type,
  .noaccordion-content .bg-w:last-of-type {
    margin-bottom: 0; }

.accordion-content.cont-active {
  height: auto; }

.content-box-2col {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap; }
  .content-box-2col .box {
    width: 48%;
    margin-bottom: 20px; }

@media screen and (max-width: 767px) {
  .accordion-btn {
    background-size: 40%; }
  .accordion-btn.btn-active {
    background-size: 40%; }
  .content-box-2col .box {
    width: 100%; }
    .content-box-2col .box:last-of-type {
      margin-bottom: 0; }
  .accordion-content {
    display: none;
    height: 1; }
    .accordion-content .bg-brown,
    .accordion-content .bg-w {
      padding: 20px; }
  .noaccordion-content .bg-brown,
  .noaccordion-content .bg-w {
    padding: 20px; } }

/*　情報公開テーブル
----------------------------------------*/
.i-table table {
  width: 100%;
  border-collapse: collapse; }
  .i-table table th, .i-table table td {
    border: 1px solid #A2A2A2;
    padding: 10px 20px;
    text-align: center;
    line-height: 1.5; }
    .i-table table th a, .i-table table td a {
      color: #007130;
      text-decoration: underline;
      font-weight: 300; }
    .i-table table th:hover, .i-table table td:hover {
      text-decoration: none; }
  .i-table table th {
    background: #D6D2CB;
    font-weight: 500; }
  .i-table table td {
    font-weight: 300; }

@media screen and (max-width: 767px) {
  .scroll-table {
    overflow: auto;
    white-space: nowrap;
    padding-bottom: 10px; }
  .scroll-table::-webkit-scrollbar {
    height: 5px; }
  .scroll-table::-webkit-scrollbar-track {
    background: #F1F1F1; }
  .scroll-table::-webkit-scrollbar-thumb {
    background: #BCBCBC; } }

/*　カレントナビ
----------------------------------------*/
.r-navi .current-nav a {
  background: url(../images/common/navi-bg-hover.png) right center no-repeat #585858;
  background-size: 15% 50%; }

/*　Photoswipe
----------------------------------------*/
.pswp {
  z-index: 9999999999999999 !important; }

.pswp__bg {
  background-color: #fff !important; }

.pswp__container {
  background: #fff !important; }

/*　ページ上部へ戻る
----------------------------------------*/
#back_to_top {
  width: 90px;
  height: 90px;
  position: fixed;
  right: 150px;
  bottom: 20px; }
  @media only screen and (max-width: 767px) {
    #back_to_top {
      width: 50px;
      height: 50px;
      right: 20px;
      bottom: 40px; } }
  @media only screen and (min-width: 768px) and (max-width: 1023px) {
    #back_to_top {
      width: 50px;
      height: 50px;
      right: 20px;
      bottom: 40px; } }
  #back_to_top a {
    position: relative;
    display: block;
    width: 90px;
    height: 90px;
    background: #007131;
    border: solid 1px rgba(255, 255, 255, 0.5);
    opacity: 1.0;
    /*border-radius: 50%;*/
    text-decoration: none; }
    #back_to_top a:hover {
      opacity: 0.6; }
    @media only screen and (max-width: 767px) {
      #back_to_top a {
        width: 50px;
        height: 50px; } }
    @media only screen and (min-width: 768px) and (max-width: 1023px) {
      #back_to_top a {
        width: 50px;
        height: 50px; } }
    #back_to_top a::before {
      font-family: 'FontAwesome';
      font-weight: 900;
      content: '\f102';
      font-size: 25px;
      color: #fff;
      position: absolute;
      width: 25px;
      height: 25px;
      top: -30px;
      bottom: 0;
      right: 0;
      left: 0;
      margin: auto;
      text-align: center; }
    #back_to_top a::after {
      content: 'TOP';
      font-size: 13px;
      color: #fff;
      position: absolute;
      top: 45px;
      bottom: 0;
      right: 0;
      left: 0;
      margin: auto;
      text-align: center; }
      @media only screen and (max-width: 767px) {
        #back_to_top a::after {
          top: 25px; } }
      @media only screen and (min-width: 768px) and (max-width: 1023px) {
        #back_to_top a::after {
          top: 25px; } }

/*　ページ内アンカーリンク用ユーティリティ
----------------------------------------*/
.anchor {
  padding-top: 100px !important;
  margin-top: -100px !important; }

/* loading
----------------------------------------*/
.loading,
.loading::after {
  border-radius: 50%;
  width: 6em;
  height: 6em; }

.loading {
  margin: 60px auto;
  font-size: 10px;
  position: relative;
  text-indent: -9999em;
  border-top: 1.1em solid rgba(0, 0, 0, 0.1);
  border-right: 1.1em solid rgba(0, 0, 0, 0.1);
  border-bottom: 1.1em solid rgba(0, 0, 0, 0.1);
  border-left: 1.1em solid #ffffff;
  -webkit-transform: translateZ(0);
  transform: translateZ(0);
  -webkit-animation: load8 1.1s infinite linear;
  animation: load8 1.1s infinite linear; }

@-webkit-keyframes load8 {
  0% {
    -webkit-transform: rotate(0deg);
    transform: rotate(0deg); }
  100% {
    -webkit-transform: rotate(360deg);
    transform: rotate(360deg); } }

@keyframes load8 {
  0% {
    -webkit-transform: rotate(0deg);
    transform: rotate(0deg); }
  100% {
    -webkit-transform: rotate(360deg);
    transform: rotate(360deg); } }
