/*! HTML5 Boilerplate v5.0 | MIT License | http://h5bp.com/ */

/* ==========================================================================
   font-famiry CSS
   ========================================================================== */


   @font-face {
    font-family: "Yu Gothic";
    src: local("Yu Gothic Medium");
    font-weight: 100;
  }
  @font-face {
    font-family: "Yu Gothic";
    src: local("Yu Gothic Medium");
    font-weight: 200;
  }
  @font-face {
    font-family: "Yu Gothic";
    src: local("Yu Gothic Medium");
    font-weight: 300;
  }
  @font-face {
    font-family: "Yu Gothic";
    src: local("Yu Gothic Medium");
    font-weight: 400;
  }
  @font-face {
    font-family: "Yu Gothic";
    src: local("Yu Gothic Bold");
    font-weight: bold;
  }
  @font-face {
    font-family: "Helvetica Neue";
    src: local("Helvetica Neue Regular");
    font-weight: 100;
  }
  @font-face {
    font-family: "Helvetica Neue";
    src: local("Helvetica Neue Regular");
    font-weight: 200;
  }

  body {
    font-family: "游明朝", YuMincho, "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", serif;
    color: #313131;
    font-size: 14px;
  }

  /* IE10以上 */
  @media all and (-ms-high-contrast: none) {
    body {
      font-family: Verdana, Meiryo, sans-serif;
    }
  }

  /* ゴシック用クラス */
  .gothic{font-family: -apple-system, BlinkMacSystemFont, "Helvetica Neue", "Yu Gothic", YuGothic, Verdana, Meiryo, "M+ 1p", sans-serif;}


/* ==========================================================================
   swiper css
   ========================================================================== */

   .swiper-wrap{
    overflow-x: hidden;
  }

  .swiper-container {
    max-width: 1200px;
    max-height: 480px;
    overflow: visible;
  }

  /* 1300px以下の処理 */
  @media only screen and (max-width: 1200px){
    overflow: hidden;
  }

/* ==========================================================================
   helper css
   ========================================================================== */

   .m80{margin-bottom: 80px;}

   @media only screen and (max-width: 768px){
   .m80{margin-bottom: 40px;}

   }


   /* ==========================================================================
   common css
   ========================================================================== */

   a,
   a:link,
   a:hover,
   a:visited{color: #313131; text-decoration: none;}

   /* リンクアニメーション */

   a{opacity: 1.0; transition: all .3s cubic-bezier(.55,0,.1,1);}
   a:hover{opacity: 0.7;}

   .common-wrap{
     max-width: 1200px; 
     margin: 0 auto;
   }

   .col::after{display: block; content: ""; clear: both;}

   .col2{float: left; width: 50%;}

   .right{float: right;}

   @media only screen and (max-width: 768px){


     .col2{float: none; width: 100%;}

     .right{float: none;}

   }

/* ==========================================================================
   header & footer css
   ========================================================================== */

   header,footer{text-align: center; padding-top: 30px;}
   header h1,
   footer h2
   {margin-bottom: 30px;}

   footer{margin-bottom: 50px;}

   .g-nav{margin-bottom: 30px;}
   .g-nav li{display: inline-block;}
   .g-nav li a{
    display: block;
    /* margin:0 10px; */
    border-right: 1px solid #313131;
    line-height: 1;
    padding: 0 10px;
    font-size: 21px;
  }
  .g-nav li:last-child a{border-right: none;}


/* ==========================================================================
   content css
   ========================================================================== */

   /* スライダークリックで動画再生 */
   .js-modal-btn-vimeo {
      cursor: pointer;
    }
    @media screen and (max-width: 767px) {
      .modal-video-close-btn {
        right: 8px !important;
      }
    }

   /* イントロエリア */
   .area-box {text-align: center; padding:80px 0;}
   .area-box.green{background: url('../img/backimg-green.png'); color: #fff;}
   .area-box.green h2{margin-bottom: 30px;}
   .area-box.green p{line-height: 2.2; font-size: 15px;}


   /* お知らせエリア */
   .area-box.decoframe{
    padding: 100px 0;
    background-image:
    url("../img/line01.png"), /* 上飾り枠 */
    url("../img/line02.png"); /* 下飾り枠 */

    background-repeat:
    no-repeat, /* 上飾り枠 */
    no-repeat; /* 下飾り枠 */

    background-position:
    top center, /* 上飾り枠 */
    bottom center; /* 下飾り枠 */
  }

  .section-title{
    display: inline-block;
    width: auto;
    margin: 0 auto 20px;
    color: #45954D;
    font-size: 30px;
    font-weight: normal;
  }
  .section-title span{display: block; font-size: 15px;}

  .news_content{
    max-width: 800px;
    margin:0 auto;
    text-align: left;
    margin-bottom: 60px;
  }
  .news_content dl{display: block;}
  .news_content dl > *{display: inline-block;}
  .news_content dt{display: inline-block; color: #45954D;}

  .link-button{
    display: block;
    margin: 0 auto;
    max-width: 230px;
    border-radius: 5px;
    border: 1px solid #999;
    padding: 15px 0px;
    text-align: center;
  }

  .link-button::before{
    display: inline-block;
    content: "▶"; /*"▶"の文字*/
    transform: scaleY(0.5);
    margin-right: 5px;
  }
.news-box{
  max-width: 800px;margin: 0 auto;
  margin-top: -40px;
}
.news-box h2{font-size: 1.8em;width: 100%;border-bottom: 1px solid #45954D;}
.news-box li{font-size: 1.1em;width: 100%;border-bottom: 1px dotted #888;margin-bottom: 10px;padding-bottom: 10px;line-height: 160%;}
.news-box span{color: #fff;background-color: #45954D;padding: 3px 10px;border-radius: 5px;}

  @media only screen and (max-width: 768px){
.news-box{padding: 10px;}
  }

  /* 事業内容エリア */
  .area-box.yellow01{
    background: #fdfbe0;
  }

  .section-title.sidewing{position: relative; margin-bottom: 50px;}

  .section-title.sidewing::before,
  .section-title.sidewing::after{position: absolute;}

  .section-title.sidewing::before{content: url('../img/line03.png'); top: 0; left: -140px;}
  .section-title.sidewing::after{content: url('../img/line04.png'); top: 0; right: -140px;}

  .col3{display: table; width: 100%;}
  .col3 li{display: table-cell; width: 33.33%; text-align: center;}
  .col3 li:first-child{text-align: left;}
  .col3 li:last-child{text-align: right;}
  .col3 li a{display: block;}
  .col3 li:nth-of-type(1) a{margin-right: 12px;}
  .col3 li:nth-of-type(2) a{margin: 0 12px;}
  .col3 li:nth-of-type(3) a{margin-left: 12px;}

  /* 1200px以下の処理 */
  @media only screen and (max-width: 768px){

    .area-box.green{padding: 20px;}
    .area-box.green p{text-align: left;}

    .col3,
    .col3 li{display: inline-block; width: 100%;}
    .col3 li{margin-bottom: 20px;}
    .col3 li:first-child,
    .col3 li:last-child{text-align: center;}
    .col3 li a{margin:0 12px;}

    .section-title.sidewing::before,
    .section-title.sidewing::after{content:none;}



  }

  /* フジモトゆめグループ代表エリア */
  /* .area-box.m0 {padding:0;} */
  .ceo{
    max-width: 1300px;
    margin:0 auto;
    /* display: table; */
  }
  /* .ceo div{display: table-cell; width: 50%; vertical-align: middle;} */
  /* .ceo div:first-child{ text-align: center; } */

  .ceo-info{text-align: left; width: 100%;}
  .ceo-info *{font-weight: normal;}
  .ceo-info h3{margin-bottom: 50px; line-height: 1;}
  .ceo-info h3 span{font-size: 20px; margin-bottom: 20px; display: block;}
  .ceo-info h3 b{font-size: 50px; margin-right: 30px;}
  .ceo-info h3 i{font-size: 13px; font-style: normal; letter-spacing: 2px;}

  /* 1300px以下の処理 */
  @media only screen and (max-width: 1300px){

    .ceo-info{padding-left: 0px;}

    .ceo div,
    .ceo div{display: block; width: 100%; text-align: center;}

    .ceo div:first-child{ margin-bottom: 30px; }

    .ceo-info h3{margin-bottom: 30px;}
    .ceo-info h3 b{font-size: 40px; margin: 0 0 15px 0; display: block;}
    .ceo-info h3 i{display: block;}
    .ceo-info p{margin: 0 0 30px 0;}

  }


  /* 書籍エリア */
  .area-box.yellow02{background: #F1EA8B;}
  .books{
    text-align: left;
    max-width: 1080px;
    margin:0 auto;
  }
  .books .col2:first-child{width: 30%; text-align: right;}
  .books .col2:last-child{width: 70%; text-align: left;}
  .books .col2:last-child figure{
    margin-bottom: 30px;
    padding-bottom: 25px;
    border-bottom: 2px solid #d5d082;
  }

  .books p{line-height: 2.2;}
  .books p.link-box{text-align: right; padding-top: 10px;}
  .books p.link-box a{color: #81511c;}

  /* 1080以下の処理 */
  @media only screen and (max-width: 1080px){


   .books .col2{float: none;}

   .books .right{float: none;}

   .books .col2:first-child{margin-bottom: 50px;}
   .books .col2:first-child,
   .books .col2:last-child{text-align: center;  width: 100%;}
   .books .col2:last-child{ padding:0 20px;}
   .books .col2:last-child p{text-align: left;}

 }



 /* 固定用 */

  /* .swiper-container {
    width: 1200px;
    height: 480px;
  }

  .common-wrap{
    width: 1200px;
  }

  .ceo{
    width: 1300px;
  }

  .books{
    width: 1080px;
  }  