@charset "UTF-8";
/* ===================================================================== */
/* General * /
/* ===================================================================== */
a {
  -webkit-transition: all 0.2s ease;
  -moz-transition: all 0.2s ease;
  -ms-transition: all 0.2s ease;
  -o-transition: all 0.2s ease;
  transition: all 0.2s ease;
  color: #003399;
  cursor: pointer;
}
  a:hover, a:focus, a:active {
    color: #009933;
  }
  a:hover, a:focus, a:active {
    outline: none;
    color: #009933;
    text-decoration: none;
  }
input {
  -webkit-transition: all 0.5s ease;
  -moz-transition: all 0.5s ease;
  -ms-transition: all 0.5s ease;
  -o-transition: all 0.5s ease;
  transition: all 0.5s ease;
}


/* ===================================================================== */
/* margin * /
/* ===================================================================== */
.m00 { margin: 0; }
.m005 { margin: .5rem; }
.m01 { margin: 1rem; }
.m02 { margin: 2rem; }
.m03 { margin: 3rem; }
.m04 { margin: 4rem; }
.m05 { margin: 5rem; }
.m06 { margin: 6rem; }
.m07 { margin: 7rem; }
.m08 { margin: 8rem; }
.m09 { margin: 9rem; }
.m10 { margin: 10rem; }

.mt00 { margin-top: 0; }
.mt005 { margin-top: .5rem; }
.mt01 { margin-top: 1rem; }
.mt02 { margin-top: 2rem; }
.mt03 { margin-top: 3rem; }
.mt04 { margin-top: 4rem; }
.mt05 { margin-top: 5rem; }
.mt06 { margin-top: 6rem; }
.mt07 { margin-top: 7rem; }
.mt08 { margin-top: 8rem; }
.mt09 { margin-top: 9rem; }
.mt10 { margin-top: 10rem; }

.mr00 { margin-right: 0; }
.mr005 { margin-right: .5rem; }
.mr01 { margin-right: 1rem; }
.mr02 { margin-right: 2rem; }
.mr03 { margin-right: 3rem; }
.mr04 { margin-right: 4rem; }
.mr05 { margin-right: 5rem; }
.mr06 { margin-right: 6rem; }
.mr07 { margin-right: 7rem; }
.mr08 { margin-right: 8rem; }
.mr09 { margin-right: 9rem; }
.mr10 { margin-right: 10rem; }

.mb00 { margin-bottom: 0; }
.mb005 { margin-bottom: .5rem; }
.mb01 { margin-bottom: 1rem; }
.mb02 { margin-bottom: 2rem; }
.mb03 { margin-bottom: 3rem; }
.mb04 { margin-bottom: 4rem; }
.mb05 { margin-bottom: 5rem; }
.mb06 { margin-bottom: 6rem; }
.mb07 { margin-bottom: 7rem; }
.mb08 { margin-bottom: 8rem; }
.mb09 { margin-bottom: 9rem; }
.mb10 { margin-bottom: 10rem; }

.ml00 { margin-left: 0; }
.ml005 { margin-left: .5rem; }
.ml01 { margin-left: 1rem; }
.ml02 { margin-left: 2rem; }
.ml03 { margin-left: 3rem; }
.ml04 { margin-left: 4rem; }
.ml05 { margin-left: 5rem; }
.ml06 { margin-left: 6rem; }
.ml07 { margin-left: 7rem; }
.ml08 { margin-left: 8rem; }
.ml09 { margin-left: 9rem; }
.ml10 { margin-left: 10rem; }

/* ===================================================================== */
/* padding * /
/* ===================================================================== */
.p00 { padding: 0; }
.p005 { padding: .5rem; }
.p01 { padding: 1rem; }
.p02 { padding: 2rem; }
.p03 { padding: 3rem; }
.p04 { padding: 4rem; }
.p05 { padding: 5rem; }
.p06 { padding: 6rem; }
.p07 { padding: 7rem; }
.p08 { padding: 8rem; }
.p09 { padding: 9rem; }
.p10 { padding: 10rem; }

.pt00 { padding-top: 0; }
.pt005 { padding-top: .5rem; }
.pt01 { padding-top: 1rem; }
.pt02 { padding-top: 2rem; }
.pt03 { padding-top: 3rem; }
.pt04 { padding-top: 4rem; }
.pt05 { padding-top: 5rem; }
.pt06 { padding-top: 6rem; }
.pt07 { padding-top: 7rem; }
.pt08 { padding-top: 8rem; }
.pt09 { padding-top: 9rem; }
.pt10 { padding-top: 10rem; }

.pr00 { padding-right: 0; }
.pr005 { padding-right: .5rem; }
.pr01 { padding-right: 1rem; }
.pr02 { padding-right: 2rem; }
.pr03 { padding-right: 3rem; }
.pr04 { padding-right: 4rem; }
.pr05 { padding-right: 5rem; }
.pr06 { padding-right: 6rem; }
.pr07 { padding-right: 7rem; }
.pr08 { padding-right: 8rem; }
.pr09 { padding-right: 9rem; }
.pr10 { padding-right: 10rem; }

.pb00 { padding-bottom: 0; }
.pb005 { padding-bottom: .5rem; }
.pb01 { padding-bottom: 1rem; }
.pb02 { padding-bottom: 2rem; }
.pb03 { padding-bottom: 3rem; }
.pb04 { padding-bottom: 4rem; }
.pb05 { padding-bottom: 5rem; }
.pb06 { padding-bottom: 6rem; }
.pb07 { padding-bottom: 7rem; }
.pb08 { padding-bottom: 8rem; }
.pb09 { padding-bottom: 9rem; }
.pb10 { padding-bottom: 10rem; }

.pl00 { padding-left: 0; }
.pl005 { padding-left: .5rem; }
.pl01 { padding-left: 1rem; }
.pl02 { padding-left: 2rem; }
.pl03 { padding-left: 3rem; }
.pl04 { padding-left: 4rem; }
.pl05 { padding-left: 5rem; }
.pl06 { padding-left: 6rem; }
.pl07 { padding-left: 7rem; }
.pl08 { padding-left: 8rem; }
.pl09 { padding-left: 9rem; }
.pl10 { padding-left: 10rem; }

/* ===================================================================== */
/* Width * /
/* ===================================================================== */
.w10 { width: 10%; }
.w20 { width: 20%; }
.w30 { width: 30%; }
.w40 { width: 40%; }
.w50 { width: 50%; }
.w60 { width: 60%; }
.w70 { width: 70%; }
.w80 { width: 80%; }
.w90 { width: 90%; }
.w100 { width: 100%; }

/* ===================================================================== */
/* align * /
/* ===================================================================== */
.ta_left { text-align: left; }
.ta_center { text-align: center; }
.ta_right { text-align: right; }
.va_top { vertical-align: top; }
.va_middle { vertical-align: middle; }
.va_bottom { vertical-align: bottom; }

/* ===================================================================== */
/* font * /
/* ===================================================================== */
/* size */
.fs10 { font-size: 1.0rem; }
.fs12 { font-size: 1.2rem; }
.fs14 { font-size: 1.4rem; }
.fs16 { font-size: 1.6rem; }
.fs18 { font-size: 1.8rem; }
.fs20 { font-size: 2.0rem; }
.fs22 { font-size: 2.2rem; }
.fs24 { font-size: 2.4rem; }
.fs26 { font-size: 2.6rem; }
.fs28 { font-size: 2.8rem; }
.fs30 { font-size: 3.0rem; }

/* line-height */
.lh10 { line-height: 1.0rem; }
.lh12 { line-height: 1.2rem; }
.lh14 { line-height: 1.4rem; }
.lh16 { line-height: 1.6rem; }
.lh18 { line-height: 1.8rem; }
.lh20 { line-height: 2.0rem; }
.lh22 { line-height: 2.2rem; }
.lh24 { line-height: 2.4rem; }
.lh26 { line-height: 2.6rem; }
.lh28 { line-height: 2.8rem; }
.lh30 { line-height: 3.0rem; }

/* letter-spacing */
.ltsp00 { letter-spacing: 0; }
.ltsp01 { letter-spacing: 1rem; }
.ltsp02 { letter-spacing: 2rem; }
.ltsp03 { letter-spacing: 3rem; }
.ltsp04 { letter-spacing: 4rem; }
.ltsp05 { letter-spacing: 5rem; }
.ltsp06 { letter-spacing: 6rem; }
.ltsp07 { letter-spacing: 7rem; }
.ltsp08 { letter-spacing: 8rem; }
.ltsp09 { letter-spacing: 9rem; }
.ltsp10 { letter-spacing: 10rem; }

/* font-weight */
.fw_100 { font-weight: 100; }
.fw_200 { font-weight: 200; }
.fw_300 { font-weight: 300; }
.fw_normal { font-weight: normal; } /*400*/
.fw_500 { font-weight: 500; }
.fw_600 { font-weight: 600; }
.fw_bold { font-weight: bold; } /*700*/
.fw_800 { font-weight: 800; }
.fw_900 { font-weight: 900; }

/* font-style */
@font-face {
  font-family: 'themify';
  src: url("../fonts/themify/themify.eot?-fvbane");
  src: url("../fonts/themify/themify.eot?#iefix-fvbane") format("embedded-opentype"), url("../fonts/themify/themify.woff?-fvbane") format("woff"), url("../fonts/themify/themify.ttf?-fvbane") format("truetype"), url("../fonts/themify/themify.svg?-fvbane#themify") format("svg");
  font-weight: normal;
  font-style: normal;
}
@import url('https://fonts.googleapis.com/css2?family=Lora&text=0123456789');
.font-Lora { font-family: 'Lora', serif; }
.font-sawarabi { font-family: 'Sawarabi Mincho', sans-serif; }
.font-cursive { font-family: 'Cedarville Cursive', cursive; }
.font-italic { font-style: italic; }

/* Line-Marker */
.lineMarker_yellow {
  background: linear-gradient(transparent 20%, #ffffa8 0%);
}

/* color */
.fc_black { color: #000000; }
.fc_33_gray { color: #333333; }
.fc_66_gray { color: #666666; }
.fc_88_gray { color: #888888; }
.fc_aa_gray { color: #aaaaaa; }
.fc_white { color: #ffffff; }

.fc_yellow { color: #fbdb00; }
.fc_d_yellow { color: #ffc200; }
.fc_d_orange { color: #ff9900; }
.fc_blue { color: #003399; }
.fc_green { color: #669933; }
.fc_d_green { color: #009933; }
.fc_md_green { color: #336600; }
.fc_light_green { color: #30a44a; }

/* ===================================================================== */
/* border * /
/* ===================================================================== */
.bc_black { border: 1px #000000 solid; }
.bc_33_gray { border: 1px #333333 solid; }
.bc_66_gray { border: 1px #666666 solid; }
.bc_aa_gray { border: 1px #aaaaaa solid; }
.bc_cc_gray { border: 1px #cccccc solid; }
.bc_white { border: 1px #ffffff solid; }

.bc_yellow { border: 1px #fbdb00 solid; }
.bc_orange { border: 1px #ff9900 solid; }
.bc_blue { border: 1px #003399 solid; }
.bc_green { border: 1px #669933 solid; }
.bc_d_green { border: 1px #336600 solid; }

.bb_aa_gray {
  border-bottom: 1px #aaaaaa solid;
}
.bb_dot_cc_gray {
  border-bottom: 1px #cccccc dotted;
}

.bt_none { border-top: 0; }
.br_none { border-right: 0; }
.bb_none { border-bottom: 0; }
.bl_none { border-left: 0; }

.br005 { border-radius: .5rem; }
.br01 { border-radius: 1rem; }

/* ===================================================================== */
/* background-color* /
/* ===================================================================== */
.bg_black { background-color: #000000; }
.bg_38_gray { background-color: #383838; }
.bg_88_gray { background-color: #888888; }
.bg_dd_gray { background-color: #dddddd; }
.bg_e7_gray { background-color: #e7e7e7; }
.bg_smoke_white { background-color: #eeeeee; }
.bg_lest_gray { background-color: #fefefe; }
.bg_white { background-color: #ffffff; }

.bg_green { background-color: #669933; }
.bg_light_green { background-color: #a7cd02; }
.bg_yellow { background-color: #fbf4c7; }
.bg_trans_black_d { background-color: rgba(0, 0, 0, 0.9); }
.bg_trans_black_m { background-color: rgba(0, 0, 0, 0.5); }
.bg_trans_black_l { background-color: rgba(0, 0, 0, 0.3); }

/* ===================================================================== */
/* display * /
/* ===================================================================== */
.only_sp_show { display: none; }  /* スマホ時のみ表示 */
.only_pc_show { display: block; } /* PC時のみ表示 */
.only_pad_show { display: none; } /* iPad時のみ表示 */
.only_pad_pro_show { display: none; } /* iPad_pro時のみ表示 */
/* --------------------
for Smartphone
-------------------- */
@media screen and (max-width: 480px) {
  .only_sp_show { display: block; }
  .only_pc_show { display: none; }
  .only_pad_show { display: none; }
  .only_pad_pro_show { display: none; }
}
/* --------------------
for iPad
-------------------- */
@media screen and (min-width: 481px) and (max-width: 768px){
  .only_sp_show { display: none; }
  .only_pc_show { display: none; }
  .only_pad_show { display: block; }
  .only_pad_pro_show { display: none; }
}
/* --------------------
for iPad pro
-------------------- */
@media screen and (min-width: 769px) and (max-width: 1024px){
  .only_pc_show { display: none; }
  .only_sp_show { display: none; }
  .only_pad_show { display: none; }
  .only_pad_pro_show { display: block; }
}

.d_block { display: block;}
.d_inline { display: inline; }
.d_inline-block { display: inline-block;}


/* ===================================================================== */
/* alert_box * /
/* ===================================================================== */
.alert_box {
  width: 100%;
  margin: 1rem 0 1rem 0;
  padding: 1rem 0 !important;
  text-align: center;
  color: #ab4442 !important;
  background-color: #f2dede;
}

/* ===================================================================== */
/* cv_title - catch for conversion area * /
/* ===================================================================== */
.cv_title,
.cv_title_y {
  display: inline-block;
  font-size: 4.6rem;
  line-height: 2.0rem;
  margin: 0 0 0 0;
  color: #333333;
  text-transform: none;
  font-family: 'Lora', serif;
}
.cv_title_y {
  color: #669933;
}

  /* --------------------
  fot Smartphone
  -------------------- */
@media screen and (max-width: 768px) {
  .cv_title,
  .cv_title_y {
    line-height: 4.0rem;
  }
}
/* ===================================================================== */
/* box * /
/* ===================================================================== */
.product_box {
  width: 100%;
  margin: 1rem auto 0 auto;
  overflow: hidden;
  border-radius: .5rem;
  padding: 3rem;
  box-shadow: 0 0.125em 0.125em 0 rgba(0, 0, 0, 0.125);
}
/* ===================================================================== */
/* btn_box * /
/* ===================================================================== */
#btn_contact {
  position: fixed;
  z-index: 100;
  bottom: 35%;
  right: -150px;
  margin-right: 0px;
}
.btn_box {
  width: 100%;
  margin: 1rem 0 1rem 0;
}

  .btn_box a.btn_l,
  .btn_box a.btn_y_l,
  .btn_box a.btn_g_l,
  .btn_box a.btn_fb_blue_l {
    padding: 2rem 3rem;
    font-size: 1.6rem;
    line-height: 2.0rem;
  }
  .btn_box a.btn_m,
  .btn_box a.btn_y_m,
  .btn_box a.btn_g_m,
  .btn_box a.btn_fb_blue_m {
    padding: 1rem 2rem;
    font-size: 1.4rem;
    line-height: 1.8rem;
  }
  .btn_box a.btn_s,
  .btn_box a.btn_y_s,
  .btn_box a.btn_g_s,
  .btn_box a.btn_fb_blue_s {
    padding: .5rem 1rem;
    font-size: 1.2rem;
    line-height: 1.6rem;
  }

  /* black button */
  .btn_box a.btn_l,
  .btn_box a.btn_m,
  .btn_box a.btn_s {
    display: inline-block;
    margin: 0 auto;
    border: 2px #000000 solid;
    border-radius: .5rem;
    background-color: rgba(0, 0, 0, 0.8);
    color: #ffffff !important;
    text-shadow:  -.5px -.5px 0 #000000;
  }
    .btn_box a.btn_l:hover,
    .btn_box a.btn_m:hover,
    .btn_box a.btn_s:hover {
      opacity: 0.7;
    }

  /* green button */
  .btn_box a.btn_g_l,
  .btn_box a.btn_g_m,
  .btn_box a.btn_g_s {
    display: inline-block;
    margin: 0 auto;
    border-radius: .5rem;
    background-color: #669933;
    color: #ffffff !important;
    text-shadow:  -.5px -.5px 0 #000000;
    box-shadow: 0 5px 10px rgba(0,0,0,0.4);
  }
    .btn_box a.btn_g_l:hover,
    .btn_box a.btn_g_m:hover,
    .btn_box a.btn_g_s:hover {
      opacity: 0.7;
    }

  /* yellow button */
  .btn_box a.btn_y_l,
  .btn_box a.btn_y_m,
  .btn_box a.btn_y_s {
    display: inline-block;
    margin: 0 auto;
    border: 2px #669933 solid; /*green*/
    border-radius: .5rem;
    background-color: rgba(0, 153, 51, 0.9); /*green*/
    color: #ffffff !important;
    text-shadow:  -.5px -.5px 0 #000000;
  }
    .btn_box a.btn_y_l:hover,
    .btn_box a.btn_y_m:hover,
    .btn_box a.btn_y_s:hover {
      opacity: 0.7;
    }

  /* facebook blue button */
  .btn_box a.btn_fb_blue_l,
  .btn_box a.btn_fb_blue_m,
  .btn_box a.btn_fb_blue_s {
    display: inline-block;
    margin: 0 auto;
    border: 2px #4267b2 solid; /*facebook blue*/
    border-radius: .5rem;
    background-color: rgba(66, 103, 178, 0.9); /*facebook blue*/
    color: #ffffff !important;
    text-shadow:  -.5px -.5px 0 #000000;
  }
    .btn_box a.btn_fb_blue_l:hover,
    .btn_box a.btn_fb_blue_m:hover,
    .btn_box a.btn_fb_blue_s:hover {
      opacity: 0.7;
    }

    /* contact button */
  .btn_box a.btn_contact_l,
  .btn_box a.btn_contact_m,
  .btn_box a.btn_contact_s {
    box-shadow: 0 5px 10px rgba(0,0,0,0.4);
    display: inline-block;
    margin: 0;
    border-radius: .5rem 0 0 .5rem;
    padding: 2rem 1rem;
    -webkit-writing-mode: vertical-rl;
    -ms-writing-mode: tb-rl;
    writing-mode: vertical-rl;
  }
    .btn_box a.btn_contact_l:hover,
    .btn_box a.btn_contact_m:hover,
    .btn_box a.btn_contact_s:hover {
      background-color: rgba(0, 0, 0, 0.9) !important;
      color: #ffffff !important;
      border-top: 1px #000000 solid !important;
      border-left: 1px #000000 solid !important;
      border-bottom: 1px #000000 solid !important;
    }
    .btn_box a span {
      display: inline-block;
      margin: 0 .5rem;
    }
    .btn_box a.btn_l span,
    .btn_box a.btn_y_l span,
    .btn_box a.btn_g_l span {
      font-size: 1.7rem;
    }
    .btn_box a.btn_m span,
    .btn_box a.btn_y_m span,
    .btn_box a.btn_g_m span {
      font-size: 1.6rem;
    }
    .btn_box a.btn_s span,
    .btn_box a.btn_y_s span,
    .btn_box a.btn_g_s span {
      font-size: 1.4rem;
    }
@media screen and (max-width: 767px) {
  #btn_contact {
    background-color: #000000;
    right: 0;
    bottom: -150px;
    margin-bottom: 0px;
  }
    #btn_contact ul {
      display: flex;
      justify-content: center;
      flex-wrap: wrap;
    }
      #btn_contact ul li {
        float: left;
        width: 60%;
      }
        #btn_contact ul li a {
          display: inline-block;
          min-height: 6rem;
        }
          #btn_contact ul li a span {
            font-size: 1.4rem;
          }
  .btn_box {
    float: none;
    width: 100%;
    inline-size: auto;
    margin: 0 2% 0 2% !important;
  }
    .btn_box a.btn_contact_l,
    .btn_box a.btn_contact_m,
    .btn_box a.btn_contact_s {
      border-right: 1px #000000 solid;
      border-bottom: none;
      border-radius: .5rem;
      min-width: 0rem;
      width: 100%;
      -webkit-writing-mode: horizontal-tb;
      -ms-writing-mode: lr-tb;
      writing-mode: horizontal-tb;
    }
}
@media screen and (min-width: 768px) and (max-width: 1023px){
  #btn_contact {
    background-color: #000000;
    right: 0;
    bottom: -150px;
    margin-bottom: 0px;
  }
    #btn_contact ul {
      display: flex;
      justify-content: center;
      flex-wrap: wrap;
    }
      #btn_contact ul li {
        width: 50%;
        float: left;
      }
        #btn_contact ul li a {
          display: inline-block;
          min-height: 6rem;
          padding: 2rem !important;
        }
          #btn_contact ul li a span {
            font-size: 1.8rem;
          }
  .btn_box {
    float: none;
    width: 100%;
    inline-size: auto;
    margin: 0 2% 0 2% !important;
  }
    .btn_box a.btn_contact_l,
    .btn_box a.btn_contact_m,
    .btn_box a.btn_contact_s {
      border-right: 1px #000000 solid;
      border-bottom: none;
      border-radius: .5rem;
      min-width: 0rem;
      width: 100%;
      -webkit-writing-mode: horizontal-tb;
      -ms-writing-mode: lr-tb;
      writing-mode: horizontal-tb;
    }
}
@media screen and (min-width: 1024px) and (max-width: 1210px){
  #btn_contact {
    background-color: #000000;
    right: 0;
    bottom: -150px;
    margin-bottom: 0px;
  }
    #btn_contact ul {
      display: flex;
      justify-content: center;
      flex-wrap: wrap;
    }
  .show_b_r {
    width: 100%;
  }
      #btn_contact ul li {
        width: 50%;
        float: left;
      }
        #btn_contact ul li a {
          display: inline-block;
          min-height: 6rem;
        }
          #btn_contact ul li a span {
            font-size: 2.4rem;
          }
  .btn_box {
    float: none;
    width: 100%;
    inline-size: auto;
    margin: 0 2% 0 2% !important;
  }
    .btn_box a.btn_contact_l,
    .btn_box a.btn_contact_m,
    .btn_box a.btn_contact_s {
      border-right: 1px #000000 solid;
      border-bottom: none;
      border-radius: .5rem;
      min-width: 0rem;
      width: 100%;
      -webkit-writing-mode: horizontal-tb;
      -ms-writing-mode: lr-tb;
      writing-mode: horizontal-tb;
    }
}
/* ===================================================================== */
/* list * /
/* ===================================================================== */
.list--none {
  list-style-type: none;
  padding: 0;
}
/* ===================================================================== */
/* img * /
/* ===================================================================== */
img.img_xs {
  width: 10%;
}
img.img_s {
  width: 30%;
}
img.img_m {
  width: 50%;
}
img.img_l {
  width: 80%;
}
img.img_xl {
  width: 100%;
}
/* ===================================================================== */
/* text-align * /
/* ===================================================================== */
.l-001  {
  position: relative;
  left: -1px;
}
.t003 {
  position: relative;
  top: 3px;
}
/* ===================================================================== */
/* font * /
/* ===================================================================== */

.f_u_line {
  border-bottom: 1px dotted;
  display: inline-block;
  padding-bottom: .1rem;
}
.f_u_line_red { border-color: #ff0000; }
.f_u_line_green { border-color: #669933; }
.f_emph {
  color: #669933;
  font-weight: bold;
}


/* ===================================================================== */
/* for icons * /
/* ===================================================================== */
.icon_border {
  border: 1px solid;
  padding: .5rem;
  border-radius: 50%;
}
.icon_lg {
 display: inline-block;
 font-size: 3.0rem;
}
.icon_md {
  display: inline-block;
  font-size: 2.0rem;
}

/* list icon */
    ul.li_check_square li::before {
      margin-right: .5rem;
      display: inline-block;
      font-family: "FontAwesome";
      content: "\f14a";
      font-weight: bold;
    }
    ul.li_square li::before {
      margin-right: .5rem;
      display: inline-block;
      font-family: "FontAwesome";
      content: "\f0c8";
      font-weight: bold;
    }
    ul.li_bookmark li::before {
      margin-right: .5rem;
      display: inline-block;
      font-family: "FontAwesome";
      content: "\f02e";
      font-weight: bold;
    }

/* ===================================================================== */
/* border * /
/* ===================================================================== */
.b_btn_black {
  border-top: 1px #000000 solid !important;
  border-left: 1px #000000 solid !important;
  border-bottom: 1px #000000 solid !important;
}
.show_b_r {
  position: fixed;
  bottom: 30rem;
  right: 0px;
  z-index: 21;
}
@media screen and (max-width: 768px) {
  .show_b_r {
    bottom: 0rem;
    left: 0;
    right: 0;
    padding: 0 !important;
  }
}

.disp_overflow_hidden {
  overflow: hidden;
}
.disp_clear_both {
  clear: both;
}
.disp_float_none {
  float: none;
}

/* ===================================================================== */
/* Heading * /
/* ===================================================================== */
h1, .h1, h2, .h2, h3, .h3, h4, .h4, h5, .h5, h6, .h6 {
  margin: 0 0 20px 0;
  padding: 0;
  color: #000000;
}

h1, .h1 {
  font-size: 30px;
  line-height: 42px;
}

h2, .h2 {
  color: #333333;
  margin-bottom: 0;
  font-size: 3.0rem;
  line-height: 4.2rem;
  letter-spacing: .3rem;
  font-family: 'Sawarabi Mincho', sans-serif !important;
}
  h2 span,
  .h2 span {
    color: #666666;
    display: block;
    font-size: 1.8rem;
    text-transform: uppercase;
    font-weight: normal;
    letter-spacing: .5rem;
    font-family: 'Lora', serif !important;
  }

h3, .h3 {
  font-size: 2.4rem;
  line-height: 3rem;
  color: #333333;
  margin-bottom: 1.5rem;
  font-weight: normal;
  text-align: center;
  letter-spacing: .3rem;font-family: 'Sawarabi Mincho', sans-serif !important;
}
  h3 span,
  .h3 span {
    display: block;
    font-size: 1.2rem;
    text-transform: uppercase;
    color: #666666;
    margin-bottom: .1rem;
    font-weight: normal;
    letter-spacing: .5rem;
    font-family: 'Lora', serif !important;
  }

h4, .h4 {
  font-size: 16px;
  line-height: 28px;
  font-family: 'Sawarabi Mincho', sans-serif !important;
}

h5, .h5 {
  font-size: 14px;
  line-height: 24px;
}

h6, .h6 {
  font-size: 12px;
  line-height: 24px;
}

ul, ol {
  padding: 0 15px 0 15px;
  line-height: 26px;
}
ul ul, ul ol, ol ul, ol ol {
  padding-left: 25px;
}

ul, ol, p {
  margin: 0 0 2rem 0;
}

input[type="text"],
input[type="password"],
input[type="email"],
input[type="search"],
textarea {
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
}

/* --------------------
fot Smartphone
-------------------- */
@media screen and (max-width: 480px) {
  ul, ol {
    padding: 0 8px 0 8px;
  }
  h3, .h3 {
    font-size: 2.3rem;
  }
}

/* ===================================================================== */
/* Header * /
/* ===================================================================== */
#fh5co-header-section {
  margin-top: 150px;
  top: -150px;
  width: 100%;
  -webkit-transition: all 0.5s ease;
  -moz-transition: all 0.5s ease;
  -ms-transition: all 0.5s ease;
  -o-transition: all 0.5s ease;
  transition: all 0.5s ease;
  z-index: 103;
  background-color:rgba(0, 153, 51, 0.8);
  position:fixed;
}

#fh5co-menu-logo {
  clear: both;
}

#fh5co-quick-contacts {
  float: right;
  width: 100%;
  text-align: right;
  margin-top: 2em;
}
  #fh5co-quick-contacts .sep {
    padding: 0 .5em;
    color: rgba(255, 255, 255, 0.5);
  }
  #fh5co-quick-contacts a {
    font-size: 14px;
    padding: 20px 10px;
    color: white;
  }
    #fh5co-quick-contacts a > i {
      margin-right: 10px;
      margin-top: 5px;
      color: white;
    }

/* ===================================================================== */
/* h1 Logo * /
/* ===================================================================== */
#fh5co-logo {
  margin: 1rem 0 1rem 0;
  padding: 0;
  line-height: 6rem;
}
  #fh5co-logo a {
    border-bottom: none !important;
    color: #ffffff;
    letter-spacing: 3px;
    text-transform: uppercase;
  }
    #fh5co-logo a:hover {
      opacity: .7;
    }
  #fh5co-logo img {
    text-shadow: 2px 2px 1px rgba(0, 0, 0, 0.8);
  }

/*--------------------
fot Smartphone
-------------------- */
@media screen and (max-width: 768px) {
  #fh5co-logo {
    text-align: center;
    margin: 0px 0 0 0;
    float: none !important;
    line-height: 3rem;
  }
}

/* ===================================================================== */
/* Global Navigation * /
/* ===================================================================== */
/* Superfish Override Menu */
.sf-menu {
  margin: .5rem 0 0 0;
  float: right;
  line-height: 1rem
}
  .sf-menu ul {
    box-shadow: none;
    border: transparent;
    min-width: 8rem;
    *width: 8rem;
  }
  .sf-menu a,
  #fh5co-mobile-menu-ul a,p {
    color: rgba(0, 0, 0, 0.8);
    color: #ffffff;
    padding: .75em 1em;
    font-weight: normal;
    border-left: none;
    border-top: none;
    border-top: none;
    text-decoration: none;
    zoom: 1;
    font-size: 1.4rem;
    border-bottom: none !important;
    margin: 0;
  }
        #fh5co-mobile-menu-ul li > ul li > a {
          font-size: 1rem;
        }
      .sf-menu a:hover {
        color: #000000 !important;
      }
@media screen and (min-width: 200px) and (max-width: 415px) {
      #fh5co-mobile-menu-ul .sfHover-mobile .sf-with-ul{
        color: #ffffff;
      }
        #fh5co-mobile-menu #fh5co-mobile-menu-ul li:nth-child(2) > a{
          color: #ffffff !important;
          }
}
    .sf-menu li {
      margin:1rem 0;
    }
    .sf-menu li,
    .sf-menu ul li,
    .sf-menu ul ul li,
    .sf-menu li:hover,
    .sf-menu li.sfHover {
      background: transparent;
    }
      .sf-menu ul li a,
      .sf-menu ul ul li a {
        text-transform: none;
        padding: .75em 1em;
        letter-spacing: 1px;
      }

/* ====================== フォントサービス =================================*/
    .sf-menu li:hover a,
    .sf-menu li.sfHover a,
    .sf-menu ul li:hover a,
    .sf-menu ul li.sfHover a {
      color: #666666;
    }
    .sf-menu ul li:hover,
    .sf-menu ul li.sfHover {
      background: transparent;
    }
    .sf-menu ul li {
      background: transparent;
    }
  .sf-arrows .sf-with-ul {
    padding-right: 2.5em;
    *padding-right: 1em;
  }
    .sf-arrows > li > .sf-with-ul:focus:after,
    .sf-arrows > li:hover > .sf-with-ul:after,
    .sf-arrows > .sfHover > .sf-with-ul:after {
      border-top-color: #ccc;
    }
    .sf-arrows ul .sf-with-ul:after {
      margin-top: -5px;
      margin-right: -3px;
      border-color: transparent;
      border-left-color: #ccc;
    }
      .sf-arrows ul li > .sf-with-ul:focus:after,
      .sf-arrows ul li:hover > .sf-with-ul:after,
      .sf-arrows ul .sfHover > .sf-with-ul:after {
        border-left-color: #ccc;
      }

/* ===================================================================== */
/*  * /
/* ===================================================================== */
#fh5co-menu-wrap {
  float: right;
  position: relative;
  margin-right: -20px;
}
  #fh5co-menu-wrap .sf-menu a,
  #fh5co-mobile-menu #fh5co-mobile-menu-ul a,p{
    padding: 1.5rem 2rem;
    letter-spacing: .2rem;
  }
    #fh5co-primary-menu    > li > ul li.active > a,
    #fh5co-mobile-menu-ul  > li > ul li:hover {
      color: #856531 !important;
    }
    #fh5co-primary-menu > li > .sf-with-ul{
      position: relative;
    }
    #fh5co-primary-menu > li > .sf-with-ul::after {
      border: none !important;
      font-family: 'themify';
      speak: none;
      font-style: normal;
      font-weight: normal;
      font-variant: normal;
      text-transform: none;
      line-height: 1;
      -webkit-font-smoothing: antialiased;
      -moz-osx-font-smoothing: grayscale;
      position: absolute;
      padding-top: 20px;
      left: 50%;
      margin-left: -7px;
      font-size: 14px;
      width: 100%;
      content: "\e64b";
      color: #ffffff;
      -webkit-transition: all 0.2s ease;
      -moz-transition: all 0.2s ease;
      -ms-transition: all 0.2s ease;
      -o-transition: all 0.2s ease;
      transition: all 0.2s ease;
    }
/*–––––––––––––––––––––––––– END ––––––––––––––––––––––––––––––––––––––––––––––*/


#fh5co-primary-menu > li > .sf-with-ul:hover::after {
  padding-top: 25px;
}
#fh5co-primary-menu > li > ul li > .sf-with-ul:after {
  border: none !important;
  font-family: 'themify';
  speak: none;
  font-style: normal;
  font-weight: normal;
  font-variant: normal;
  text-transform: none;
  line-height: 1;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  position: absolute;
  float: right;
  margin-right: 10px;
  top: 13px;
  font-size: 12px;
  content: "\e649";
  color: rgba(255, 255, 255, 0.5);
}

#fh5co-mobile-menu-ul > li > .sf-with-ul.active::after {
  transform: rotate(180deg);
}

#fh5co-mobile-menu-ul > li > .sf-with-ul:after {
  position: absolute;
  left: 40%;
  font-family: 'themify';
  content: "\e64b";
  color: rgba(255, 255, 255, 0.5);
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  -webkit-transition: all 1s ease;
  -moz-transition: all 1s ease;
  -ms-transition: all 1s ease;
  -o-transition: all 1s ease;
  transition: all .3s ease;
}


#fh5co-primary-menu .fh5co-sub-menu{
  padding: 7px 0 3px;
  background: rgba(0, 153, 51, 0.8);
  -webkit-border-radius: .5rem;
  -moz-border-radius: .5rem;
  -ms-border-radius: .5rem;
  border-radius: .5rem;
}
#fh5co-primary-menu .fh5co-sub-menu .vanish-pc,
#fh5co-primary-menu .vanish-pc
 {
  display: none;
}


#fh5co-primary-menu .fh5co-sub-menu:before {
  position: absolute;
  top: -9px;
  right: 20px;
  width: 0;
  height: 0;
  content: '';
}

#fh5co-primary-menu .fh5co-sub-menu:after {
  position: absolute;
  top: -8px;
  right: 21px;
  width: 0;
  height: 0;
  border-right: 8px solid transparent;
  border-bottom: 8px solid #669933;
  border-bottom: 8px solid rgba(0, 153, 51, 0.8);
  border-left: 8px solid transparent;
  content: '';
}

#fh5co-primary-menu .fh5co-sub-menu .fh5co-sub-menu:before {
  top: 6px;
  right: 100%;
}

#fh5co-primary-menu .fh5co-sub-menu .fh5co-sub-menu:after {
  top: 7px;
  right: 100%;
  border: none !important;
}

.site-header.has-image #primary-menu .sub-menu {
  border-color: #ebebeb;
  box-shadow: 0 0 0 1px rgba(0, 0, 0, 0.19);
}
.site-header.has-image #primary-menu .sub-menu:before {
  display: none;
}
#fh5co-primary-menu .fh5co-sub-menu a {
  letter-spacing: 0;
  padding: 0 15px;
  font-size: 14px;
  line-height: 26px;
  color: #ffffff !important;
  text-transform: none;
  background: none;
}
#fh5co-primary-menu .fh5co-sub-menu a:hover {
  color: #000000 !important;
  filter: alpha(opacity=80);
  opacity:0.8;
}
.fh5co-nav-toggle {
  width: 25px;
  height: 25px;
  cursor: pointer;
  text-decoration: none;
}
.fh5co-nav-toggle.active i::before, .fh5co-nav-toggle.active i::after {
  background: #2e2e2e;
}
.fh5co-nav-toggle:hover, .fh5co-nav-toggle:focus, .fh5co-nav-toggle:active {
  outline: none;
  border-bottom: none !important;
}
.fh5co-nav-toggle i {
  position: relative;
  display: inline-block;
  width: 25px;
  height: 3px;
  color: #252525;
  font: bold 14px/.4 Helvetica;
  text-transform: uppercase;
  text-indent: -55px;
  background: #252525;
  transition: all .2s ease-out;
}
.fh5co-nav-toggle i::before, .fh5co-nav-toggle i::after {
  content: '';
  width: 25px;
  height: 3px;
  background: #252525;
  position: absolute;
  left: 0;
  transition: all .2s ease-out;
}
.fh5co-nav-toggle.fh5co-nav-white > i {
  color: #ffffff;
  background: #ffffff;
}
.fh5co-nav-toggle.fh5co-nav-white > i::before, .fh5co-nav-toggle.fh5co-nav-white > i::after {
  background: #ffffff;
}

.fh5co-nav-toggle i::before {
  top: -7px;
}

.fh5co-nav-toggle i::after {
  bottom: -7px;
}

.fh5co-nav-toggle:hover i::before {
  top: -10px;
}

.fh5co-nav-toggle:hover i::after {
  bottom: -10px;
}

.fh5co-nav-toggle.active i {
  background: transparent;
}

.fh5co-nav-toggle.active i::before {
  top: 0;
  -webkit-transform: rotateZ(45deg);
  -moz-transform: rotateZ(45deg);
  -ms-transform: rotateZ(45deg);
  -o-transform: rotateZ(45deg);
  transform: rotateZ(45deg);
}

.fh5co-nav-toggle.active i::after {
  bottom: 0;
  -webkit-transform: rotateZ(-45deg);
  -moz-transform: rotateZ(-45deg);
  -ms-transform: rotateZ(-45deg);
  -o-transform: rotateZ(-45deg);
  transform: rotateZ(-45deg);
}

.fh5co-nav-toggle {
  position: absolute;
  top: 0;
  left: 0;
  z-index: 21;
  padding: 16px 0 0 0;
  display: block;
  margin: 0 auto;
  display: none;
  background-color:rgba(0, 153, 51, 0.8);
  height: 60px;
  width: 45px;
  border-bottom: none !important;
}
@media screen and (max-width: 768px) {
  .fh5co-nav-toggle {
    display: block;
  }
}

/* ===================================================================== */
/* Mobile Menu * /
/* ===================================================================== */
#fh5co-mobile-menu {
  -moz-transform: translateX(-275px);
  -webkit-transform: translateX(-275px);
  -ms-transform: translateX(-275px);
  transform: translateX(-275px);
  display: block;
  height: 100%;
  left: 0;
  overflow-y: auto;
  position: fixed;
  top: 0;
  width: 275px;
  z-index: 10002;
  background-color:rgba(0, 153, 51, 0.8);
  padding: 0.75em 1.25em;
}
#fh5co-mobile-menu #fh5co-mobile-menu-ul {
  padding: 0;
  margin: 0;
}
#fh5co-mobile-menu #fh5co-mobile-menu-ul li {
  list-style: none;
}
#fh5co-mobile-menu #fh5co-mobile-menu-ul li:hover > a {
  color: #000;
  transition: all 0.2s ease;
}


/* ===============  For iPad  ==========================-*/
@media screen and (min-width: 760px) and (max-width: 769px) {
  #fh5co-mobile-menu #fh5co-mobile-menu-ul li:nth-child(2) > a{
  color: #ffffff !important;
  }
}
#fh5co-mobile-menu #fh5co-mobile-menu-ul a,p {
  border-bottom: none !important;
  padding: 7px 0;
  margin-bottom: 2rem;
  color: #ffffff;
}
p {
  color: #000;
}
#fh5co-mobile-menu #fh5co-mobile-menu-ul a:hover {
  color: #669933;
}
#fh5co-mobile-menu #fh5co-mobile-menu-ul .fh5co-sub-ddown {
  position: relative;
}
#fh5co-mobile-menu #fh5co-mobile-menu-ul .fh5co-sub-ddown::after {
  font-family: 'themify';
  speak: none;
  font-style: normal;
  font-weight: normal;
  font-variant: normal;
  text-transform: none;
  line-height: 1;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  position: absolute;
  right: 0;
  margin-top: 2px;
  content: "\e64b";
}
#fh5co-mobile-menu #fh5co-mobile-menu-ul .fh5co-sub-menu {
  display: none;
  padding-left: 0px;
  margin-bottom: 15px;
}
@media screen and (max-width: 768px) {
   #fh5co-mobile-menu #fh5co-mobile-menu-ul .vanish-sp {
    display: none;
   }
}
#fh5co-mobile-menu #fh5co-mobile-menu-ul .fh5co-sub-menu li {
  list-style: none;
  padding-left: 10px;
}
#fh5co-mobile-menu #fh5co-mobile-menu-ul .fh5co-sub-menu > li:hover {
  color: #856531;
}

#fh5co-logo-mobile-wrap {
  -webkit-transition: all 0.3s ease;
  -moz-transition: all 0.3s ease;
  -ms-transition: all 0.3s ease;
  -o-transition: all 0.3s ease;
  transition: all 0.3s ease;
  display: block;
  height: 60px;
  left: 0;
  position: fixed;
  text-align: center;
  top: -100px;
  margin-top: 100px;
  width: 100%;
  z-index: 10001;
  background-color:rgba(0, 153, 51, 0.8);
  color: #cccccc;
  -webkit-box-shadow: 0 0.125em 0.125em 0 rgba(0, 0, 0, 0.125);
  -moz-box-shadow: 0 0.125em 0.125em 0 rgba(0, 0, 0, 0.125);
  -ms-box-shadow: 0 0.125em 0.125em 0 rgba(0, 0, 0, 0.125);
  -o-box-shadow: 0 0.125em 0.125em 0 rgba(0, 0, 0, 0.125);
  box-shadow: 0 0.125em 0.125em 0 rgba(0, 0, 0, 0.125);
}
#fh5co-logo-mobile-wrap span {
  padding: 0;
  margin: 0;
  font-size: 20px;
  font-weight: bold;
  line-height: 56px;
}
#fh5co-logo-mobile-wrap h1 a {
  border-bottom: none !important;
  color: #ccc;
  letter-spacing: 3px;
  text-transform: uppercase;
}
#fh5co-logo-mobile-wrap h1 img {
  width: 246px;
}

/* ===================================================================== */
/*  * /
/* ===================================================================== */
#fh5co-hero {
  background-color: #ffffff;
  background-size: cover;
  background-repeat: no-repeat;
  background-position: center left;
  float: left;
  width: 100%;
  display: table;
  position: relative;
  z-index: 20;
  color: #ffffff;
}
#fh5co-hero .overlay {
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  z-index: -1;
  background: #000000;
  opacity: .99;
  background-size: 100%;
  background-repeat: no-repeat;
}

  /* main visual settings */
  /*index.html*/
  #fh5co-hero .mainvisual {
    background-image: url(../images/main_visual.png);
    background-size: cover;
    background-position: top;
    background-color: #E7E8E7;
  }


  /*products*/
  #fh5co-hero .productsvisual {
    background-image: url(../images/main_visual_products.jpg);
    background-size: cover;
    background-position: bottom;
  }
  #fh5co-hero .servicevisual {
    background-image: url(../images/main_visual_service.jpg);
    background-size: cover;
    background-position: center;
  }

    /*offshore_dev.html*/
    #fh5co-hero .offshore_dev_visual {
      background-image: url(../images/main_visual_offshore_dev.jpg);
      background-size: cover;
      background-position: center;
    }

    /*minimum_development.html*/
    #fh5co-hero .min_dev_visual {
      background-image: url(../images/main_visual_min_dev.jpg);
      background-size: cover;
      background-position: center;
    }
      /*system_index.html*/
      #fh5co-hero .system_visual {
        background-image: url(../images/main_visual_system.jpg);
        background-size: cover;
        background-position: center;
      }

      /*system_01.html*/
      #fh5co-hero .system_01_visual {
        background-image: url(../images/main_visual_system_01.jpg);
        background-size: cover;
        background-position: bottom;
      }

      /*system_02.html*/
      #fh5co-hero .system_02_visual {
        background-image: url(../images/main_visual_system_02.jpg);
        background-size: cover;
        background-position: center;
      }

      /*system_03.html*/
      #fh5co-hero .system_03_visual {
        background-image: url(../images/main_visual_system_03.jpg);
        background-size: cover;
        background-position: center;
      }

      /*system_04.html*/
      #fh5co-hero .system_04_visual {
        background-image: url(../images/main_visual_system_04.jpg);
        background-size: cover;
        background-position: center;
      }

      /*system_05.html*/
      #fh5co-hero .system_05_visual {
        background-image: url(../images/main_visual_system_05.jpg);
        background-size: cover;
        background-position: center;
      }

      /*system_06.html*/
      #fh5co-hero .system_06_visual {
        background-image: url(../images/main_visual_system_06.jpg);
        background-size: cover;
        background-position: 50% 75%;
      }

      /*system_07.html*/
      #fh5co-hero .system_07_visual {
        background-image: url(../images/main_visual_system_07.jpg);
        background-size: cover;
        background-position: center;
      }

      /*system_08.html*/
      #fh5co-hero .system_08_visual {
        background-image: url(../images/main_visual_system_08.jpg);
        background-size: cover;
        background-position: bottom;
      }

      /*system_09.html*/
      #fh5co-hero .system_09_visual {
        background-image: url(../images/main_visual_system_09.jpg);
        background-size: cover;
        background-position: center;
      }

      /*system_10.html*/
      #fh5co-hero .system_10_visual {
        background-image: url(../images/main_visual_system_10.jpg);
        background-size: cover;
        background-position: center;
      }

      /*system_11.html*/
      #fh5co-hero .system_11_visual {
        background-image: url(../images/main_visual_system_11.jpg);
        background-size: cover;
        background-position: center;
      }

      /*system_12.html*/
      #fh5co-hero .system_12_visual {
        background-image: url(../images/main_visual_system_12.jpg);
        background-size: cover;
        background-position: 50% 25%;
      }

      /*system_13.html*/
      #fh5co-hero .system_13_visual {
        background-image: url(../images/main_visual_system_13.jpg);
        background-size: cover;
        background-position: 50% 25%;
      }

      /*system_14.html*/
      #fh5co-hero .system_14_visual {
        background-image: url(../images/main_visual_system_14.jpg);
        background-size: cover;
        background-position: center;
      }

      /*system_15.html*/
      #fh5co-hero .system_15_visual {
        background-image: url(../images/main_visual_system_15.jpg);
        background-size: cover;
        background-position: center;
      }

      /*system_16.html*/
      #fh5co-hero .system_16_visual {
        background-image: url(../images/main_visual_system_16.jpg);
        background-size: cover;
        background-position: center;
      }

      /*system_17.html*/
      #fh5co-hero .system_17_visual {
        background-image: url(../images/main_visual_system_17.jpg);
        background-size: cover;
        background-position: center;
      }

      /*system_18.html*/
      #fh5co-hero .system_18_visual {
        background-image: url(../images/main_visual_system_18.jpg);
        background-size: cover;
        background-position: center;
      }

  /*recruit*/
  #fh5co-hero .recruitvisual {
    background-image: url(../images/main_visual_recruit.jpg);
    background-size: cover;
    background-position: center;
  }

  /*for general use*/
  #fh5co-hero .generalvisual {
    background-image: url(../images/main_visual_general.jpg);
    background-size: cover;
    background-position: center;
  }

  /*contact.html*/
  #fh5co-hero .contactvisual {
    background-image: url(../images/main_visual_contact.jpg);
    background-size: cover;
    background-position: center;
  }

  /*404.html*/
  #fh5co-hero .notfoundvisual {
    background-image: url(../images/main_visual_notfound.jpg);
    background-size: cover;
    background-position: top center;
  }

  /*news*/
  #fh5co-hero .newsvisual {
    background-image: url(../images/main_visual_news.jpg);
    background-size: cover;
    background-position: center;
  }
/* --------------------
for Large
-------------------- */
@media screen and (min-width: 1200px){
  #fh5co-hero {
    background-position: center center;
    height: 300px;
  }
  #fh5co-hero .overlay {
    background-repeat: no-repeat;
    background-size: 100%;
  }

    /* main visual settings */
    /*index.html*/
    #fh5co-hero .mainvisual {
        background-position: 0% 0%;
        background-color: #E7E8E7;
        background-size: 100%;
      }

    /*products*/
    #fh5co-hero .productsvisual {
      background-position: 0% 50%;
      background-size: 100%
    }
    #fh5co-hero .offshore_dev_visual {
      background-position: 0% 0%;
      background-size: 100%
    }
    /*contact.html*/
    #fh5co-hero .contactvisual {
      background-position: 0% 0%;
      background-size: 100%
    }

    /*404.html*/
    #fh5co-hero .notfoundvisual {
      background-image: url(../images/main_visual_notfound.jpg);
      background-size: cover;
      background-position: center;
    }
}
@media screen and (min-width: 1500px) {
  #fh5co-hero .mainvisual {
    background-position: 50% 100%;
    background-color: #E7E8E7;
    background-size: 60%;
  }
}
/* --------------------
fot Smartphone
-------------------- */
@media screen and (max-width: 767px) {
  #fh5co-hero {
    background-position: center center;
    height: 300px;
  }
  #fh5co-hero .overlay {
    background-position: 0% 0%;
    background-repeat: no-repeat;
    background-size: auto 100%;
  }

    /* main visual settings */
    /*index.html*/
    #fh5co-hero .mainvisual {
        background-position: 50% 100%;
        background-color: #f6fafe;
        background-size: auto 70%;
      }

    /*products*/
    #fh5co-hero .productsvisual {
      background-position: 100% 50%;
      background-color: #000000;
      background-size: auto 80%;
    }
    #fh5co-hero .servicevisual {
        background-position: 35% 100%;
        background-color: #f6fafe;
      }

    #fh5co-hero .offshore_dev_visual {
      background-position: 50% 0%;
      background-size: auto 100%
    }
    /*contact.html*/
    #fh5co-hero .contactvisual {
      background-position: 50% 100%;
      background-color: #f6fafe;
      background-size: auto 100%;
    }

    /*404.html*/
    #fh5co-hero .notfoundvisual {
      background-image: url(../images/main_visual_notfound.jpg);
      background-size: cover;
      background-position: center;
    }
}

#fh5co-hero .fh5co-arrow {
  position: absolute;
  bottom: -25px;
  left: 50%;
  margin-left: -30px;
  display: table;
  color: #ffffff;
  font-size: 24px;
  z-index: 99;
  text-decoration: none;
  width: 50px;
  height: 50px;
  background: #666666;
  border-bottom: none !important;
  text-align: center;
  -webkit-border-radius: 50%;
  -moz-border-radius: 50%;
  -ms-border-radius: 50%;
  -o-border-radius: 50%;
  border-radius: 50%;
  -webkit-box-shadow: 0 0.125em 0.125em 0 rgba(0, 0, 0, 0.125);
  -moz-box-shadow: 0 0.125em 0.125em 0 rgba(0, 0, 0, 0.125);
  -ms-box-shadow: 0 0.125em 0.125em 0 rgba(0, 0, 0, 0.125);
  -o-box-shadow: 0 0.125em 0.125em 0 rgba(0, 0, 0, 0.125);
  box-shadow: 0 0.125em 0.125em 0 rgba(0, 0, 0, 0.125);
}
#fh5co-hero .fh5co-arrow i {
  display: table-cell;
  vertical-align: middle;
}
#fh5co-hero .fh5co-arrow:active, #fh5co-hero .fh5co-arrow:focus, #fh5co-hero .fh5co-arrow:hover {
  outline: none;
}

#fh5co-hero .fh5co-hero-wrap,
#fh5co-hero .fh5co-hero-wrap-sec {
  padding-top: 15rem;
  display: table;
  height: 600px;
  width: 100%;
}

  /*fot secondary pages*/
  #fh5co-hero .fh5co-hero-wrap-sec {
    height: 350px;
  }

/* --------------------
for Medium
-------------------- */
@media screen and (min-width: 768px) and (max-width: 991px){
  #fh5co-hero .fh5co-hero-wrap {
    padding-top: 10rem;
  }
  #fh5co-hero .overlay {
    background-position: 0% 0%;
    background-repeat: no-repeat;
    background-size: auto 100%;
  }
}
/* --------------------
fot Smartphone
-------------------- */
@media screen and (max-width: 767px) {
  #fh5co-hero .fh5co-hero-wrap {
    padding-top: 10rem;
  }

}

/* ===================================================================== */
/*  * /
/* ===================================================================== */
#fh5co-hero .fh5co-hero-wrap .fh5co-hero-intro,
  #fh5co-hero .fh5co-hero-wrap-sec .fh5co-hero-intro-nologo,
    #fh5co-hero .fh5co-hero-wrap .fh5co-hero-intro-nologo {
  background-image: url(../images/logo_mid.png);
  padding-top: 4rem;
  padding-bottom: 10rem;
  background-repeat: no-repeat;
  background-position: center bottom;
  vertical-align: middle;
  text-align: center;
  color: #ffffff;
}

  /*fot secondary pages*/
  #fh5co-hero .fh5co-hero-wrap-sec .fh5co-hero-intro-nologo,
    #fh5co-hero .fh5co-hero-wrap .fh5co-hero-intro-nologo {
    background-image: none;
    padding-top: 0;
    padding-bottom: 0;
    margin-bottom: 10rem;
  }
#fh5co-hero .fh5co-hero-wrap .fh5co-hero-intro a,
#fh5co-hero .fh5co-hero-wrap-sec .fh5co-hero-intro-nologo a,
#fh5co-hero .fh5co-hero-wrap .fh5co-hero-intro-nologo a {
  color: rgba(255, 255, 255, 0.7);
  border-bottom: 1px solid rgba(255, 255, 255, 0.3);
}
#fh5co-hero .fh5co-hero-wrap .fh5co-hero-intro a:hover,
#fh5co-hero .fh5co-hero-wrap-sec .fh5co-hero-intro-nologo a:hover ,
#fh5co-hero .fh5co-hero-wrap .fh5co-hero-intro-nologo a:hover {
  color: #ffffff;
  border-bottom: 1px solid white;
}



  /* --------------------
  fot Smartphone
  -------------------- */
  @media screen and (max-width: 768px) {

  }

/* ===================================================================== */
/* Main Visual Title : h1 * /
/* ===================================================================== */
#fh5co-hero .fh5co-hero-wrap .fh5co-hero-intro > h1,
#fh5co-hero .fh5co-hero-wrap-sec .fh5co-hero-intro-nologo > h1,
#fh5co-hero .fh5co-hero-wrap .fh5co-hero-intro-nologo > h1 {
  font-size: 4.2rem;
  line-height: 4.8rem;
  letter-spacing: .2rem;
  font-weight: bold;
  text-shadow: 1px 1px 1px rgba(102, 102, 102, 0.3);
  color: #333333;
  margin-bottom: .5rem;
  font-family: 'Sawarabi Mincho', sans-serif !important;
}
  #fh5co-hero .fh5co-hero-wrap .fh5co-hero-intro > h1 {
  }
  #fh5co-hero .fh5co-hero-wrap-sec .fh5co-hero-intro-nologo > h1,
  #fh5co-hero .fh5co-hero-wrap .fh5co-hero-intro-nologo > h1 {
    font-size: 3.2rem;
    line-height: 4.4rem;
    color: #ffffff;
    font-weight: normal;
    margin-top: .8rem;
  }
  #fh5co-hero .fh5co-hero-wrap .fh5co-hero-intro-nologo > h1 {
    font-weight: normal;
  }
  #fh5co-hero .fh5co-hero-wrap-sec .fh5co-hero-intro-nologo br.system_mainVisual_title{
    display: none;
  }
  .pd-h1-md-br{
    display: none;
  }

  .pd-pc-br {
    display: inline-block;
  }
.subtitle {
  color: #666666;
  display: block;
  font-size: 1.8rem;
  text-transform: uppercase;
  font-weight: normal;
  letter-spacing: .5rem;
  font-family: 'Lora', serif !important;
}
#breadcrumb_list {
  margin: 0;
  padding: 0;
  width: 100%;
  font-family: 'Lora', serif;
  background: transparent;
  text-shadow: 0px 0px 10px black;
  position: absolute;
  top: 56px;
}
#breadcrumb_list .breadcrumb {
  margin: 0;
  padding: 9px 10px;
  overflow: hidden;
  border-radius: 0;
  background: transparent;
}

#breadcrumb_list .breadcrumb li {
  display:inline;/*横に並ぶように*/
  list-style: none;
}

#breadcrumb_list .breadcrumb li:after {/* >を表示*/
  content: '>';
  padding: 0 3px;
  color: #ffffff;
}

#breadcrumb_list .breadcrumb li:last-child:after {
  content: '';
}
#breadcrumb_list .breadcrumb li::before {
  content: none;
}

#breadcrumb_list .breadcrumb li a {
  text-decoration: none;
  color: #ffffff;
}

#breadcrumb_list .breadcrumb li:first-child a:before {
  /*家アイコンに*/
  font-family: FontAwesome;
  content: '\f015';
  font-weight: normal;
  font-size: 1.1em;
}

#breadcrumb_list .breadcrumb li a:hover {
  text-decoration: underline;
}
/* --------------------
for Large
-------------------- */
@media screen and (min-width: 992px) and (max-width: 1199px){

}
/* --------------------
for Medium
-------------------- */
@media screen and (min-width: 768px) and (max-width: 991px){
  #fh5co-hero .fh5co-hero-wrap .fh5co-hero-intro,
  #fh5co-hero .fh5co-hero-wrap-sec .fh5co-hero-intro-nologo {
    background-image: none;
    padding-top: 0;
    margin-bottom: 5rem;
  }
  #fh5co-hero .fh5co-hero-wrap .fh5co-hero-intro > h1,
  #fh5co-hero .fh5co-hero-wrap-sec .fh5co-hero-intro-nologo > h1,
  #fh5co-hero .fh5co-hero-wrap .fh5co-hero-intro-nologo > h1 {
    font-size: 3rem;
    text-align: center;
    line-height: 4rem;
  }
  .pd-h1-md-br{
    display: inline;
  }

}
/* --------------------
fot Smartphone
-------------------- */
@media screen and (max-width: 767px) {
  #fh5co-hero .fh5co-hero-wrap .fh5co-hero-intro,
  #fh5co-hero .fh5co-hero-wrap-sec .fh5co-hero-intro-nologo {
    background-image: none;
    padding-top: 0;
    margin-bottom: 5rem;
  }
  #fh5co-hero .fh5co-hero-wrap .fh5co-hero-intro > h1,
  #fh5co-hero .fh5co-hero-wrap-sec .fh5co-hero-intro-nologo > h1,
  #fh5co-hero .fh5co-hero-wrap .fh5co-hero-intro-nologo > h1 {
    font-size: 3rem;
    text-align: center;
    line-height: 4rem;
  }

  #fh5co-hero .fh5co-hero-wrap-sec .fh5co-hero-intro-nologo > .fs28{
    font-size: 2.8rem;
  }
  #fh5co-hero .fh5co-hero-wrap-sec .fh5co-hero-intro-nologo br.system_mainVisual_title {
    display: inline-block;
  }
  .p02-sp{
    padding: 2rem !important;
  }
  #breadcrumb_list {
    top: 6.0rem;
  }
  #breadcrumb_list   .breadcrumb {
  }

  #breadcrumb_list .breadcrumb li {
  }

  #breadcrumb_list .breadcrumb li:after {/* >を表示*/
  }

  #breadcrumb_list .breadcrumb li:last-child:after {
  }
  #breadcrumb_list .breadcrumb li::before {
  }

  #breadcrumb_list .breadcrumb li a {
  }

  #breadcrumb_list .breadcrumb li:first-child a:before {
  }

  #breadcrumb_list .breadcrumb li a:hover {
  }
  .pd-pc-br {
    display: none;
  }
}

/* ===================================================================== */
/* Main Visual Title : h2 * /
/* ===================================================================== */
#fh5co-hero .fh5co-hero-wrap .fh5co-hero-intro > h2,
#fh5co-hero .fh5co-hero-wrap-sec .fh5co-hero-intro-nologo > h2,
#fh5co-hero .fh5co-hero-wrap .fh5co-hero-intro-nologo > h2 {
  letter-spacing: 0;
  font-size: 2.4rem;
  line-height: 3.2rem;
  font-weight: normal;
  position: relative;
  color: #999999;
  font-family: 'Lora', serif;
}
  #fh5co-hero .fh5co-hero-wrap .fh5co-hero-intro > h2 {
    margin-bottom: 0;
  }
  #fh5co-hero .fh5co-hero-wrap-sec .fh5co-hero-intro-nologo > h2,
  #fh5co-hero .fh5co-hero-wrap .fh5co-hero-intro-nologo > h2 {
    color: #aaaaaa;
    text-transform: uppercase;
    letter-spacing: .5rem;
    font-size: 1.6rem;
  }
  #fh5co-hero .fh5co-hero-wrap .fh5co-hero-intro-nologo > h2 {
    color: #ffffff;
    letter-spacing: 0;
    font-size: 2.4rem;
  }
  .h2-sp-br{
    display: none;
  }
/* --------------------
for Large
-------------------- */
@media screen and (min-width: 992px) and (max-width: 1199px){

}
/* --------------------
for Medium
-------------------- */
@media screen and (min-width: 768px) and (max-width: 991px){
  #fh5co-hero .fh5co-hero-wrap .fh5co-hero-intro > h2,
  #fh5co-hero .fh5co-hero-wrap-sec .fh5co-hero-intro-nologo > h2,
  #fh5co-hero .fh5co-hero-wrap .fh5co-hero-intro-nologo > h2 {
    letter-spacing: 3px;
    text-align: center;
  }
}
/* --------------------
fot Smartphone
-------------------- */
@media screen and (max-width: 767px) {
  #fh5co-hero .fh5co-hero-wrap .fh5co-hero-intro > h2,
  #fh5co-hero .fh5co-hero-wrap-sec .fh5co-hero-intro-nologo > h2,
  #fh5co-hero .fh5co-hero-wrap .fh5co-hero-intro-nologo > h2 {
    letter-spacing: 3px;
    text-align: center;
  }
  .h2-sp-br{
    display: inline;
  }
}
/* ===================================================================== */
/* Main Visual Title : p * /
/* ===================================================================== */
#fh5co-hero .fh5co-hero-wrap .fh5co-hero-intro > p,
#fh5co-hero .fh5co-hero-wrap-sec .fh5co-hero-intro-nologo > p,
#fh5co-hero .fh5co-hero-wrap .fh5co-hero-intro-nologo > p {
  letter-spacing: 0;
  font-size: 2.4rem;
  line-height: 3.2rem;
  font-weight: normal;
  position: relative;
  color: #999999;
  font-family: 'Sawarabi Mincho', sans-serif !important;

}
  #fh5co-hero .fh5co-hero-wrap .fh5co-hero-intro > p {
    margin-bottom: 0;
  }
  #fh5co-hero .fh5co-hero-wrap-sec .fh5co-hero-intro-nologo > p,
  #fh5co-hero .fh5co-hero-wrap .fh5co-hero-intro-nologo > p {
    color: #aaaaaa;
    text-transform: uppercase;
    letter-spacing: .5rem;
    font-size: 1.6rem;
  }
  #fh5co-hero .fh5co-hero-wrap .fh5co-hero-intro-nologo > p {
    color: #ffffff;
    letter-spacing: 0;
    font-size: 2.4rem;
  }
  .p-sp-br{
    display: none;
  }
/* --------------------
for Large
-------------------- */
@media screen and (min-width: 992px) and (max-width: 1199px){

}
/* --------------------
for Medium
-------------------- */
@media screen and (min-width: 768px) and (max-width: 991px){
  #fh5co-hero .fh5co-hero-wrap .fh5co-hero-intro > p,
  #fh5co-hero .fh5co-hero-wrap-sec .fh5co-hero-intro-nologo > p,
  #fh5co-hero .fh5co-hero-wrap .fh5co-hero-intro-nologo > p {
    letter-spacing: 3px;
    text-align: center;
  }
}
/* --------------------
fot Smartphone
-------------------- */
@media screen and (max-width: 767px) {
  #fh5co-hero .fh5co-hero-wrap .fh5co-hero-intro > p,
  #fh5co-hero .fh5co-hero-wrap-sec .fh5co-hero-intro-nologo > p,
  #fh5co-hero .fh5co-hero-wrap .fh5co-hero-intro-nologo > p {
    letter-spacing: 3px;
    text-align: center;
  }
  .p-sp-br{
    display: inline;
  }
}

/* ===================================================================== */
/* information_box * /
/* ===================================================================== */
.information_box {
  padding: 0 0 0 0;
  position: fixed;
  top: 70%;
  right: 0;
  z-index: 999;
}
  .information_box a {
    padding: 1rem 1.5rem 1rem 1.5rem;
    text-align: center;
    background-color: #7651a6;
    color: #f9da31;
    display: block;
    cursor: pointer;
    width: 20rem;
    border-radius: .5rem 0 0 .5rem;
    font-size: 1.8rem;
    line-height: 2.0rem;
    font-weight: normal;
    text-shadow: rgba(0, 0, 0, 0.5);
    filter: drop-shadow(1px 1px 1px rgba(0,0,0,0.5));
  }
    .information_box a:hover {
      background-color: #a27dd5;
    }
      .information_box a img {
        width: 100%;
        margin: 1rem 0;
      }
      .information_box a span {
        display: block;
        font-weight: normal;
      }
        .information_box a span.index_info_01 {
          font-size: 1.0rem;
          line-height: 1.4rem;
        }
        .information_box a span.index_info_02 {
          font-size: 1.0rem;
          line-height: 1.4rem;
        }
        .information_box a span.index_info_03 {
          font-size: 1.4rem;
          line-height: 1.6rem;
        }

  /* --------------------
  fot Smartphone
  -------------------- */
  @media screen and (max-width: 768px) {
    .information_box {
      top: auto;
      bottom: 1%;
    }
      .information_box a {
        width: auto;
        overflow: hidden;
      }
        .information_box a:hover {
        }
          .information_box a img {
            display: none;
          }
          .information_box a span {
          }
            .information_box a span.index_info_01 {
              display: none;
            }
            .information_box a span.index_info_02 {
              font-size: 1.2rem;
              line-height: 1.6rem;
            }
            .information_box a span.index_info_03 {
            }
  }

/* ===================================================================== */
/*  * /
/* ===================================================================== */
#fh5co-hero .fh5co-hero-wrap .btn,
#fh5co-hero .fh5co-hero-wrap-sec .btn {
  color: #ffffff;
  text-shadow: 2px 2px 1px rgba(0, 0, 0, 0.08);
}
#fh5co-hero .fh5co-hero-wrap .btn:hover,
#fh5co-hero .fh5co-hero-wrap .btn:active,
#fh5co-hero .fh5co-hero-wrap .btn:focus,
#fh5co-hero .fh5co-hero-wrap-sec .btn:hover,
#fh5co-hero .fh5co-hero-wrap-sec .btn:active,
#fh5co-hero .fh5co-hero-wrap-sec .btn:focus {
  background: #669933;
  border-color: #669933;
}

body.inner-page #fh5co-hero .fh5co-hero-wrap,
body.inner-page #fh5co-hero .fh5co-hero-wrap-sec {
  padding-top: 15em;
}
body {
  font-family: 'Lora', serif;
  font-size: 1.4rem;
  line-height: 2.4rem;
  font-weight: 300;
  color: #333333;
}

/* --------------------
fot Smartphone
-------------------- */
@media screen and (max-width: 768px) {
  body.inner-page #fh5co-hero .fh5co-hero-wrap,
  body.inner-page #fh5co-hero .fh5co-hero-wrap-sec {
    padding-top: 4rem;
  }
  #fh5co-hero .fh5co-hero-wrap .btn,
  #fh5co-hero .fh5co-hero-wrap-sec .btn {
    display: block;
    margin-right: 0;
    padding-left: 0;
    padding-right: 0;
    white-space: normal;
  }
}

/* --------------------
fot Smartphone
-------------------- */
@media screen and (max-width: 768px) {
  #fh5co-hero, .fh5co-hero-wrap {
    position: relative;
    padding: 8rem 0 0 0;
    height: inherit !important;
  }
}

/* ===================================================================== */
/*  * /
/* ===================================================================== */
#fh5co-main {
  position: relative;
  float: left;
  width: 100%;
  clear: both;
}

/* --------------------
fot Smartphone
-------------------- */
@media screen and (max-width: 768px) {
  body.inner-page #fh5co-main {
    margin-top: 0px;
    padding-top: 20px;
  }
}

#fh5co-hero,
#fh5co-main,
#fh5co-logo-mobile-wrap {
  -moz-transform: translateX(0px);
  -webkit-transform: translateX(0px);
  -ms-transform: translateX(0px);
  transform: translateX(0px);
}

/* =============  井口開発中　js animation  ==================== */
body.fh5co-mobile-menu-visible #fh5co-hero,
body.fh5co-mobile-menu-visible #fh5co-main,
body.fh5co-mobile-menu-visible #fh5co-logo-mobile-wrap {
  -moz-transform: translateX(275px);
  -webkit-transform: translateX(275px);
  -ms-transform: translateX(275px);
  transform: translateX(275px);
}

body.fh5co-mobile-menu-visible #fh5co-mobile-menu {
  -moz-transform: translateX(0);
  -webkit-transform: translateX(0);
  -ms-transform: translateX(0);
  transform: translateX(0);
}

/* ===================================================================== */
/*  * /
/* ===================================================================== */
#fh5co-works .fh5co-work-item .heading {
  font-size: 17px;
  margin-bottom: 40px;
}

/* ===================================================================== */
/*  * /
/* ===================================================================== */
#fh5co-footer {
  clear: both;
  position: relative;
  padding: 7rem 0 1rem 0;
  background-color: #383838;
  float: left;
  width: 100%;
  font-size: 1.4rem;
  line-height: 1.9;
  font-weight: normal;
  color: #8b969c;
  letter-spacing: .1rem;
}
#fh5co-footer .fh5co-arrow {
  position: absolute;
  top: -34px;
  left: 50%;
  margin-left: -30px;
  display: table;
  color: #ffffff !important;
  font-size: 24px;
  z-index: 99;
  text-decoration: none;
  width: 60px;
  height: 60px;
  background: #666666;
  border-bottom: none !important;
  text-align: center;
  -webkit-border-radius: 50%;
  -moz-border-radius: 50%;
  -ms-border-radius: 50%;
  -o-border-radius: 50%;
  border-radius: 50%;
  -webkit-box-shadow: 0 0.125em 0.125em 0 rgba(0, 0, 0, 0.125);
  -moz-box-shadow: 0 0.125em 0.125em 0 rgba(0, 0, 0, 0.125);
  -ms-box-shadow: 0 0.125em 0.125em 0 rgba(0, 0, 0, 0.125);
  -o-box-shadow: 0 0.125em 0.125em 0 rgba(0, 0, 0, 0.125);
  box-shadow: 0 0.125em 0.125em 0 rgba(0, 0, 0, 0.125);
}
#fh5co-footer .fh5co-arrow i {
  display: table-cell;
  vertical-align: middle;
}
#fh5co-footer .fh5co-arrow:active, #fh5co-footer .fh5co-arrow:focus, #fh5co-footer .fh5co-arrow:hover {
  outline: none;
  color: #ffffff !important;
}
#fh5co-footer .fh5co-copyright {
  margin-top: 5em;
}
#fh5co-footer .fh5co-copyright p {
  font-size: 10px;
  line-height: 1.9;
  color: #ffffff;
  letter-spacing: .3rem;
}
  #fh5co-footer .fh5co-copyright p a {
    color: #ffffff;
  }
    #fh5co-footer .fh5co-copyright p a img {
      margin-bottom: 0.5rem;
    }

#fh5co-footer .fh5co-footer-heading {
  font-size: 1.6rem;
  text-transform: uppercase;
  color: #ccc;
  margin-bottom: 10px;
  font-family: 'Lora', serif !important;
  letter-spacing: .2rem;
}
#fh5co-footer .fh5co-footer-links {
  padding: 0;
  margin: 0 0 30px 0;
}
#fh5co-footer .fh5co-footer-links li {
  padding: 0;
  margin: 0;
  white-space: nowrap;
  list-style: none;
}
#fh5co-footer .fh5co-footer-links li a {
  cursor: pointer;
  color: #ffffff;
  text-decoration: none;
  font-family: 'Lora', serif !important;
  }
  #fh5co-footer .fh5co-footer-links li a span {
    display: block;
    font-size: 1.2rem;
    text-transform: uppercase;
    color: #888888;
    margin: 0 0 0 2.7rem;
    padding: 0;
    font-weight: normal;
    font-family: 'Lora', serif !important;
  }
/* ===================================================================== */
/* cards * /
/* ===================================================================== */
.fh5co-cards {
  background: #000000;
  box-shadow: 0 0.125em 0.125em 0 rgba(0, 0, 0, 0.125);
}

/* --------------------
fot Smartphone
-------------------- */
@media screen and (max-width: 768px) {
  .fh5co-cards {
    padding: 3em 0;
  }
}

.fh5co-cards .fh5co-card {
  display: block;
  background-color: rgba(255, 255, 255, 0.8);
  position: relative;
  overflow: hidden;
  -webkit-border-radius: .5rem;
  -moz-border-radius: .5rem;
  -ms-border-radius: .5rem;
  border-radius: .5rem;
  -webkit-box-shadow: 0 0.125em 0.125em 0 rgba(0, 0, 0, 0.125);
  -moz-box-shadow: 0 0.125em 0.125em 0 rgba(0, 0, 0, 0.125);
  -ms-box-shadow: 0 0.125em 0.125em 0 rgba(0, 0, 0, 0.125);
  -o-box-shadow: 0 0.125em 0.125em 0 rgba(0, 0, 0, 0.125);
  box-shadow: 0 0.125em 0.125em 0 rgba(0, 0, 0, 0.125);
  margin-bottom: 30px;
  border-bottom: none;
  bottom: 0;
  -webkit-transition: all 0.3s ease;
  -moz-transition: all 0.3s ease;
  -ms-transition: all 0.3s ease;
  -o-transition: all 0.3s ease;
  transition: all 0.3s ease;
}
.fh5co-cards .fh5co-card img {
  z-index: -1;
}
.fh5co-cards .fh5co-card .fh5co-card-body {
  padding: 2rem;
}
.fh5co-cards .fh5co-card .fh5co-card-body h4 {
  font-size: 2.4rem;
  line-height: 3.2rem;
  color: #333333;
  margin-bottom: 1.5rem;
  font-weight: normal;
  text-align: center;
  letter-spacing: 0;
}
  .fh5co-cards .fh5co-card .fh5co-card-body h4 span {
    display: block;
    font-size: 1.4rem;
    line-height: 2.0rem;
    text-transform: uppercase;
    color: #666666;
    margin-bottom: .1rem;
    font-weight: normal;
    letter-spacing: 0;
  }
.fh5co-cards .fh5co-card .fh5co-card-body p:last-child {
  margin-bottom: 0;
}
.fh5co-cards .fh5co-card:hover {
  text-decoration: none;
  border-bottom: none;
  bottom: 10px;
}
.fh5co-cards .fh5co-card.fh5co-card--noanimate:hover {
  bottom: 0;
}
.fh5co-cards .fh5co-card:hover h3 {
  -webkit-transition: all 0.5s ease;
  -moz-transition: all 0.5s ease;
  -ms-transition: all 0.5s ease;
  -o-transition: all 0.5s ease;
  transition: all 0.5s ease;
  color: #228abf;
}

.quote {
  width: 80%;
  margin: 0 auto;
  font-size: 28px;
  font-weight: 300;
  line-height: 38px;
}
.quote cite {
  margin-top: 20px;
  display: block;
  font-size: 20px;
  font-style: normal;
}

/* --------------------
fot Smartphone
-------------------- */
@media screen and (max-width: 768px) {
  .fh5co-cards .fh5co-card .fh5co-card-body {
    height:auto; /*added*/
  }
  .quote {
    font-size: 20px;
    width: 100%;
  }
  .fh5co-cards .fh5co-card .fh5co-card-body {
    min-height: auto;
  }
}

/* ===================================================================== */
/* Features * /
/* Members */
/* ===================================================================== */
#fh5co-features {
  padding: 10rem 0 0 0;
}
#fh5co-features .fh5co-feature {
  margin-bottom: 3rem;
}
#fh5co-features .fh5co-feature .heading {
  font-size: 2.2rem;
  margin-bottom: 20px !important;
  font-weight: normal;
  color: #2e2e2e;
}
#fh5co-features .feature_inner {
  padding: 2.5rem;
  border-radius: .5rem;
  background: #ffffff;
  box-shadow: 0 0.125em 0.125em 0 rgba(0, 0, 0, 0.125);
  -webkit-transition: all 0.3s ease;
  -moz-transition: all 0.3s ease;
  -ms-transition: all 0.3s ease;
  -o-transition: all 0.3s ease;
  position: relative;
  bottom: 0;
  min-height: 42rem;
}
  #fh5co-features .feature_inner:hover {
    bottom: 10px;
  }
#fh5co-features img {
  margin: 0 auto 2rem auto;
  width: 100%;
  border-radius: .5rem;
}

  #fh5co-features .feature_inner h3 {
    margin-bottom: 0;
    font-size: 1.8rem;
  }
    #fh5co-features .feature_inner h3 span {
      font-size: 1.0rem;
    }
    #fh5co-features .feature_inner h4 {
      font-size: 1.2rem;
      line-height: 1.4rem;
      color: #666666;
      margin-top: 1rem;
      margin-bottom: 1.5rem;
      font-weight: normal;
      text-align: center;
    }
    #fh5co-features .feature_inner h4 span {
      display: block;
      font-size: .8rem;
      text-transform: uppercase;
      color: #999999;
      margin-bottom: .1rem;
      font-weight: normal
      letter-spacing: 0;
    }
  #fh5co-features .feature_inner p {
    color: #666666;
    font-size: 1.4rem;
    line-height: 1.8rem;
  }

/* --------------------
fot Smartphone
-------------------- */
@media screen and (max-width: 768px) {
  #fh5co-features .feature_inner {
    min-height: auto;
  }
}


/* ===================================================================== */
/* Helper Classes * /
/* ===================================================================== */
/* Spacer */
.fh5co-spacer {
  clear: both;
  position: relative;
  border: none;
  padding: 0;
  margin: 0;
}

.fh5co-spacer-md {
  height: 80px;
}
.fh5co-spacer-xs {
  height: 30px;
}

/* --------------------
fot Smartphone
-------------------- */
@media screen and (max-width: 768px) {
  .fh5co-spacer-md {
    height: 30px;
  }
  .fh5co-spacer-xs {
    height: 20px;
  }
}

/* ===================================================================== */
/* Components * /
/* ===================================================================== */
/* Buttons */
.btn {
  border-bottom: none !important;
  letter-spacing: 2px;
  margin-bottom: 20px;
  -webkit-border-radius: .5rem;
  -moz-border-radius: .5rem;
  -ms-border-radius: .5rem;
  -o-border-radius: .5rem;
  border-radius: .5rem;
  padding-left: 4rem;
  padding-right: 4rem;
  margin-right: 10px;
}
.btn:hover,
.btn:focus,
.btn:active {
  box-shadow: none;
  outline: none !important;
  border-color: transparent;
}

.btn-outline {
  border: 2px solid #669933 !important;
  background-color:rgba(0, 153, 51, 0.2) !important;
  color: #669933;
}
.btn-outline:hover,
.btn-outline:active,
.btn-outline:focus {
  border: 2px solid #669933 !important;
  background-color:rgba(0, 153, 51, 0.8) !important;
  color: #ffffff;
  cursor: pointer;
}

.js .to-animate,
.js .feature-box,
.js .work-box,
.js .footer-box,
.js .animate-box {
  opacity: 0;
}

.heading {
  margin-bottom: 1rem;
}

/* ===================================================================== */
/* Header * /
/* ===================================================================== */
.fh5co-header {
  text-align: center;
}

/* ===================================================================== */
/* Header * /
/* ===================================================================== */
/* Easy Rsponsive Tabs */
.fh5co-tab {
  clear: both;
  display: block;
}

.resp-tab-active {
  color: #228abf;
}

/* ===================================================================== */
/* fh5co-testimonial * /
/* ===================================================================== */
#fh5co-testimonial {
  padding: 7em 0;
  background-size: cover;
}

/* --------------------
fot Smartphone
-------------------- */
@media screen and (max-width: 768px) {
  #fh5co-testimonial {
    padding: 7em 0;
  }
}
#fh5co-testimonial blockquote {
  padding-left: 0;
  width: 70%;
  margin: 0 auto;
  color: #ffffff;
  border-left: none;
  font-size: 45px;
  line-height: 57px;
}

/* --------------------
fot Smartphone
-------------------- */
@media screen and (max-width: 768px) {
  #fh5co-testimonial blockquote {
    width: 100%;
    font-size: 35px;
    line-height: 47px;
  }
}
#fh5co-testimonial blockquote p {
  text-align: center;
  color: #ffffff;
}

/* ===================================================================== */
/* Accordions * /
/* ===================================================================== */
/* Progress Bars */
.progress {
  height: 15px;
  -webkit-border-radius: 30px;
  -moz-border-radius: 30px;
  -ms-border-radius: 30px;
  -o-border-radius: 30px;
  border-radius: 30px;
}

/* ===================================================================== */
/* Owl Override Style * /
/* ===================================================================== */
.owl-carousel .owl-controls,
.owl-carousel-posts .owl-controls {
  margin-top: 0;
}

.owl-carousel .owl-controls .owl-nav .owl-next,
.owl-carousel .owl-controls .owl-nav .owl-prev,
.owl-carousel-posts .owl-controls .owl-nav .owl-next,
.owl-carousel-posts .owl-controls .owl-nav .owl-prev {
  top: 50%;
  margin-top: -29px;
  z-index: 9999;
  position: absolute;
  -webkit-transition: all 0.2s ease;
  -moz-transition: all 0.2s ease;
  -ms-transition: all 0.2s ease;
  -o-transition: all 0.2s ease;
  transition: all 0.2s ease;
}

.owl-carousel-posts .owl-controls .owl-nav .owl-next,
.owl-carousel-posts .owl-controls .owl-nav .owl-prev {
  top: 24%;
}

.owl-carousel .owl-controls .owl-nav .owl-next,
.owl-carousel-posts .owl-controls .owl-nav .owl-next {
  right: -40px;
}
.owl-carousel .owl-controls .owl-nav .owl-next:hover,
.owl-carousel-posts .owl-controls .owl-nav .owl-next:hover {
  margin-right: -10px;
}

.owl-carousel .owl-controls .owl-nav .owl-prev,
.owl-carousel-posts .owl-controls .owl-nav .owl-prev {
  left: -40px;
}
.owl-carousel .owl-controls .owl-nav .owl-prev:hover,
.owl-carousel-posts .owl-controls .owl-nav .owl-prev:hover {
  margin-left: -10px;
}

.owl-carousel-posts .owl-controls .owl-nav .owl-next {
  right: -50px;
}

/* --------------------
fot Smartphone
-------------------- */
@media screen and (max-width: 768px) {
  .owl-carousel-posts .owl-controls .owl-nav .owl-next {
    right: 0px;
  }
}

.owl-carousel-posts .owl-controls .owl-nav .owl-prev {
  left: -50px;
}

@media screen and (max-width: 768px) {
  .owl-carousel-posts .owl-controls .owl-nav .owl-prev {
    left: 0px;
  }
}

.owl-carousel-posts .owl-controls .owl-nav .owl-next i,
.owl-carousel-posts .owl-controls .owl-nav .owl-prev i,
.owl-carousel-fullwidth .owl-controls .owl-nav .owl-next i,
.owl-carousel-fullwidth .owl-controls .owl-nav .owl-prev i {
  color: #2e2e2e;
}
.owl-carousel-posts .owl-controls .owl-nav .owl-next:hover i,
.owl-carousel-posts .owl-controls .owl-nav .owl-prev:hover i,
.owl-carousel-fullwidth .owl-controls .owl-nav .owl-next:hover i,
.owl-carousel-fullwidth .owl-controls .owl-nav .owl-prev:hover i {
  color: #000000;
}

.owl-carousel-fullwidth.fh5co-light-arrow .owl-controls .owl-nav .owl-next i,
.owl-carousel-fullwidth.fh5co-light-arrow .owl-controls .owl-nav .owl-prev i {
  color: #ffffff;
}
.owl-carousel-fullwidth.fh5co-light-arrow .owl-controls .owl-nav .owl-next:hover i,
.owl-carousel-fullwidth.fh5co-light-arrow .owl-controls .owl-nav .owl-prev:hover i {
  color: #ffffff;
}

/* --------------------
fot Smartphone
-------------------- */
@media screen and (max-width: 768px) {
  .owl-theme .owl-controls .owl-nav {
    display: none;
  }
}

.owl-theme .owl-controls .owl-nav [class*="owl-"] {
  background: none !important;
}
.owl-theme .owl-controls .owl-nav [class*="owl-"] i {
  font-size: 30px;
}
.owl-theme .owl-controls .owl-nav [class*="owl-"] i:hover,
.owl-theme .owl-controls .owl-nav [class*="owl-"] i:focus {
  background: none !important;
}
.owl-theme .owl-controls .owl-nav [class*="owl-"]:hover,
.owl-theme .owl-controls .owl-nav [class*="owl-"]:focus {
  background: none !important;
}

.owl-theme .owl-dots {
  position: absolute;
  bottom: 0;
  width: 100%;
  text-align: center;
}

.owl-carousel-fullwidth.owl-theme .owl-dots {
  bottom: 0;
  margin-bottom: -2.5em;
}

.owl-theme .owl-dots .owl-dot span {
  width: 10px;
  height: 10px;
  background: #228abf;
  -webkit-transition: all 0.2s ease;
  -moz-transition: all 0.2s ease;
  -ms-transition: all 0.2s ease;
  -o-transition: all 0.2s ease;
  transition: all 0.2s ease;
  border: 2px solid transparent;
}
.owl-theme .owl-dots .owl-dot span:hover {
  background: none;
  border: 2px solid #228abf;
}

.owl-theme .owl-dots .owl-dot.active span,
.owl-theme .owl-dots .owl-dot:hover span {
  background: none;
  border: 2px solid #228abf;
}

/* ===================================================================== */
/* element * /
/* ===================================================================== */
.pd_iframe {
  width: 100%;
}

/*# sourceMappingURL=style.css.map */

/*769以上のサイズでbr改行をオフにする　= 768以下でのみ改行*/
/*brでの改行をオフにする*/
/*.br--sp = smart phoneだけbr */
/* br_pc_ip = pc iPad だけ　*/
@media screen and (max-width: 1024px) {
  .br--pc {
    display: none;
  }
}
@media screen and (min-width: 1025px) {
  .br--sp_ip {
    display: none;
  }
}

@media screen and (min-width: 769px) {
  .br--sp {
    display: none;
  }
}

@media screen and (max-width: 1024px) and (min-width: 768px) {
  .br_ip {
    display: none;
  }
  #fh5co-hero .mainvisual {
    background-position: 50% 100%;
    background-size: 70%;
  }
}

@media screen and (max-width: 414px) {
  .br_pc_ip {
    display: none;
  }
}

/* ===================================================================== */
/* block * /
/* ===================================================================== */
.section {
  padding-top: 9rem;
}

.article {
  margin-bottom: 4rem;
}
.section .article:last-child {
  margin-bottom: 0;
}

.card {
  margin: 2rem 0 0;
}

/* ===================================================================== */
/* anchor * /
/* ===================================================================== */
.a--nochange,
.a--nochange:hover {
  color: inherit;
}

.read_more {
  display: inline-block;
  margin: 0 auto;
  color: #003399;
}
a:hover .read_more {
  color: #009966;
}

.read_more_line {
  border-bottom: 1px #003399 dotted;
}
.read_more_line:hover {
  border-bottom: 1px #009966 solid;
}

.read_more_fixed {
  position: absolute;
  bottom: 2rem;
}
/* --------------------
fot Smartphone
-------------------- */
@media screen and (max-width: 768px) {
  .read_more_line {
    border-bottom: 1px #003399 dotted;
  }
}

/* ===================================================================== */
/* pr */
/* ===================================================================== */
#pr {
  padding: 10rem 0;
}

#pr .container {
  margin: 0 auto;
  text-align: center;
  max-width: 600px;
}

#pr h2 {
  color: #333;
  font-size: 1.8rem;
  font-weight: bold;
  letter-spacing: 0;
  line-height: 1.4;
  margin: 0 0 2rem;
}

#pr figure {
  margin: 0;
}

#pr figure img {
  width: 100%;
}

#pr figure figcaption {
  font-size: 1.4rem;
  margin: 2rem 0 0;
}

#pr figure figcaption p {
  color: #333;
  letter-spacing: 0;
  margin: 0 0 1rem;
  padding: 0;
}
#pr figure figcaption p:last-child {
  margin: 0;
}

#pr .note {
  color: #777;
  font-size: 1.2rem;
}

@media screen and (max-width: 768px) {
  #pr .container {
    padding: 0 1rem;
    text-align: left;
  }
}

/* ===================================================================== */
/* news * /
/* ===================================================================== */
#news {
  padding: 10rem 0;
}

#news .container .row {
  margin: 0 0 2rem;
}
#news .container .row:last-child {
  margin: 0;
}

#news .container .row .h2 {
  text-align: center;
}

.news_title {
  padding: 3rem 0 3rem 0;
}
.news_title p {
  color: #333333;
  margin-bottom: 0;
  font-size: 3.0rem;
  letter-spacing: .3rem;
}
.news_title p span {
  color: #666666;
  display: block;
  font-size: 1.8rem;
  text-transform: uppercase;
  font-weight: normal;
  letter-spacing: 0;
}
#news .news_inner {
  overflow: hidden;
  background-color: #ffffff;
  margin: 0 0 2rem 0;
  padding: 2rem 2rem;
  border-radius: .5rem;
}
#news .news_inner img {
  float: left;
  width: 20%;
  margin: 0 2% 1rem 0;
  border: 1px #cccccc solid;
  border-radius: .5rem;
}
#news .news_inner span {
  text-align: left;
  letter-spacing: 0;
  font-size: 1.2rem;
}
#news .news_inner h2 {
  float: left;
  width: 78%;
  text-align: left;
  letter-spacing: 0;
  font-size: 2.0rem;
  line-height: 3.2rem;
}
#news .news_inner p {
  float: left;
  width: 78%;
  color: #333333;
  font-size: 1.4rem;
  line-height: 2.2rem;
}
#news .news_inner ul {
  margin: 0 0 0 0;
  padding: 0;
}
#news .news_inner ul li {
  margin: 0 0 0 0;
  padding: 0;
  color: #333333;
  font-size: 1.4rem;
  line-height: 2.2rem;
  list-style-type: none;
}
#news .news_inner ul li span.news_ttl {
  font-weight: bold;
  display: inline-block;
  margin-right: 1rem;
  width: 6rem;
}

/* --------------------
for smartphone
-------------------- */
@media screen and (max-width: 768px) {
  #news .news_inner img {
    clear: both;
    width: 100%;
    margin: 0 0 1rem 0;
  }
  #news .news_inner span {
    clear: both;
    width: 100%;
  }
  #news .news_inner h2 {
    clear: bboth;
    width: 100%;
    line-height: 2.8rem;
  }
  #news .news_inner p {
    clear: both;
    width: 100%;
  }
}
