@charset "UTF-8";
/* CSS Document */
body {
  font-family: "游ゴシック Medium", "Yu Gothic Medium", "游ゴシック体", YuGothic, "Helvetica Neue", メイリオ, Meiryo, sans-serif;
  -webkit-text-size-adjust: 100%;
  /* iPhone用 */
  font-size: 15px;
  font-size: 1.5rem;
  height: 100%;
  width: 100%;
  padding-top: 0 !important;
  -webkit-font-smoothing: antialiased;
  color: #393939;
  letter-spacing: 0.025em;
  line-height: 1.6em; }

@media (max-width: 767px) {
  body {
    font-size: 12px;
    font-size: 1.2rem;
    line-height: 1.4em; } }
html {
  height: 100%;
  font-size: 62.5%; }

@media screen and (min-width: 768px) and (max-width: 1024px) {
  html {
    font-size: 55%; } }
.pc_only {
  display: block; }

.sp_only {
  display: none !important; }

@media (max-width: 767px) {
  .pc_only {
    display: none; }

  .sp_only {
    display: block !important; } }
/* 共通
-----------------------------------------*/
#contents {
  position: relative;
  display: block;
  padding-top: 140px; }

.inner {
  max-width: 1100px;
  width: 100%;
  margin: 0 auto; }

@media (max-width: 1150px) {
  .inner {
    max-width: auto;
    width: 90%;
    margin: 0 auto; } }
@media (max-width: 767px) {
  #contents {
    padding-top: 70px; }

  .inner {
    width: auto;
    padding: 0 6%; } }
/* クリアー */
.clearfix {
  zoom: 1; }

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

/* リンク
----------------------------*/
a {
  -webkit-transition: all 0.3s;
  -moz-transition: all 0.3s;
  transition: all 0.3s;
  text-decoration: none;
  display: block;
  color: #393939; }

a:hover {
  opacity: 0.5; }

/* ナビゲーション
----------------------------*/
.h-shadow {
  height: 114px;
  width: 100%;
  -webkit-box-shadow: 0px 2px 10px 0px rgba(0, 0, 0, 0.2);
  /* Safari, Chrome用 */
  box-shadow: 0px 2px 10px 0px rgba(0, 0, 0, 0.2);
  /* CSS3草案 */
  top: 0;
  z-index: 9999; }

header {
  width: 100%;
  margin: 0 auto;
  height: 120px;
  position: fixed;
  z-index: 10000;
  background: #FFF;
  border-top: 6px solid #006134; }
  header p.logo {
    float: left;
    display: block;
    margin: 38px 50px 15px 20px;
    position: fixed;
    z-index: 10001;
    top: 0; }
    header p.logo img {
      height: 50px; }
  header p.tel {
    font-size: 40px;
    font-size: 4rem;
    font-weight: normal;
    color: #006134;
    position: absolute;
    right: 7%;
    top: 45px; }

@media (max-width: 767px) {
  .h-shadow {
    height: 56px; }

  header {
    height: 60px;
    border-top: 4px solid #006134; }
    header p.logo {
      margin: 18px 0px 10px 10px; }
      header p.logo img {
        height: 25px; }
    header p.tel {
      font-size: 18px;
      font-size: 1.8rem;
      right: 3%;
      top: 20px;
      font-weight: bold;
      letter-spacing: 0; }
      header p.tel a {
        color: #006134; } }
@media (max-width: 359px) {
  header p.logo {
    margin: 18px 0px 10px 7px; }
    header p.logo img {
      height: 24px; } }
/* contents
----------------------------*/
h1 {
  text-align: center;
  font-size: 40px;
  font-size: 4rem;
  font-weight: normal;
  color: #006134;
  margin: 70px auto 80px;
  line-height: 1.6em; }

.text_container .block_container {
  width: 100%;
  border: 2px solid rgba(57, 57, 57, 0.2);
  overflow: hidden;
  position: relative;
  margin-bottom: 70px;
  -webkit-box-shadow: 0px 0px 10px 0px rgba(153, 153, 153, 0.5);
  box-shadow: 0px 0px 10px 0px rgba(153, 153, 153, 0.5); }
  .text_container .block_container h2 {
    position: absolute;
    font-size: 32px;
    font-size: 3.2rem;
    top: 0;
    left: 0;
    color: #FFF;
    height: 70px;
    width: 300px;
    font-weight: normal; }
    .text_container .block_container h2:after {
      content: "";
      border-style: solid;
      border-color: transparent transparent #FFF transparent;
      border-width: 0 0 70px 30px;
      z-index: 10;
      position: absolute;
      right: 0;
      top: 0; }
  .text_container .block_container.course {
    padding: 130px 50px 30px; }
    .text_container .block_container.course h2 {
      background: #006134;
      padding: 22px 0 20px 60px; }
  .text_container .block_container.form {
    padding: 130px 50px 80px; }
    .text_container .block_container.form h2 {
      background: #8dc21f;
      padding: 22px 0 20px 42px; }
  .text_container .block_container div {
    display: inline-block;
    float: left; }
  .text_container .block_container .trim-img {
    width: 300px;
    height: 300px;
    background-repeat: no-repeat;
    background-size: cover;
    background-position: right top; }
  .text_container .block_container .text_box {
    position: relative;
    width: 690px;
    padding-left: 60px; }
    .text_container .block_container .text_box h3 {
      font-size: 22px;
      font-size: 2.2rem;
      margin-bottom: 10px; }
      .text_container .block_container .text_box h3.title {
        font-size: 24px;
        font-size: 2.4rem;
        margin-bottom: 20px;
        line-height: 1.4em; }
    .text_container .block_container .text_box p {
      position: relative;
      line-height: 1.8em;
      margin-bottom: 40px; }
      .text_container .block_container .text_box p b {
        font-size: 20px;
        font-size: 2rem;
        position: relative;
        margin-right: 2px;
        font-weight: normal; }
      .text_container .block_container .text_box p a.btn {
        position: absolute;
        right: 0;
        top: 0;
        display: inline-block;
        background: rgba(57, 57, 57, 0.2);
        padding: 2px 6px 1px 7px; }
        .text_container .block_container .text_box p a.btn:hover {
          opacity: 1;
          background: #8dc21f;
          color: #FFF; }
  .text_container .block_container.form dl {
    width: 750px;
    margin: 0 auto;
    overflow: hidden;
    display: block;
    padding-left: 20px; }
    .text_container .block_container.form dl dt, .text_container .block_container.form dl dd {
      display: inline-block;
      float: left; }
    .text_container .block_container.form dl dt {
      width: 35%;
      text-align: left;
      padding-left: 5%;
      padding-top: 6px;
      margin-bottom: 30px;
      font-size: 24px;
      font-size: 2.4rem; }
    .text_container .block_container.form dl dd {
      width: 65%;
      margin: 0 0 30px 0;
      font-size: 22px;
      font-size: 2.2rem;
      /* IE */
      /* Edge */ }
      .text_container .block_container.form dl dd span.error {
        font-size: 80% !important;
        color: #f39b74;
        font-weight: bold; }
      .text_container .block_container.form dl dd.select {
        background: rgba(57, 57, 57, 0.1); }
      .text_container .block_container.form dl dd input, .text_container .block_container.form dl dd textarea {
        border: none;
        background: rgba(57, 57, 57, 0.1); }
      .text_container .block_container.form dl dd input, .text_container .block_container.form dl dd textarea, .text_container .block_container.form dl dd select {
        text-shadow: none;
        width: 100%;
        padding: 2px 6px;
        border-radius: unset; }
        .text_container .block_container.form dl dd input:focus, .text_container .block_container.form dl dd textarea:focus, .text_container .block_container.form dl dd select:focus {
          outline: none; }
      .text_container .block_container.form dl dd input::placeholder {
        color: rgba(57, 57, 57, 0.2);
        font-size: 22px;
        font-size: 2.2rem; }
      .text_container .block_container.form dl dd input:-ms-input-placeholder {
        color: rgba(57, 57, 57, 0.2); }
      .text_container .block_container.form dl dd input::-ms-input-placeholder {
        color: rgba(57, 57, 57, 0.2); }
      .text_container .block_container.form dl dd input:focus::-webkit-input-placeholder {
        color: transparent; }
      .text_container .block_container.form dl dd input:focus::-ms-input-placeholder {
        color: transparent; }
      .text_container .block_container.form dl dd input:focus::placeholder {
        color: transparent; }
      .text_container .block_container.form dl dd input:focus:-ms-input-placeholder {
        color: transparent; }
      .text_container .block_container.form dl dd input:focus::-ms-input-placeholder {
        color: transparent; }
      .text_container .block_container.form dl dd textarea {
        height: 200px; }
      .text_container .block_container.form dl dd select {
        background: none;
        height: 42px;
        border-radius: 0 !important;
        border-width: 0;
        outline: none;
        position: relative;
        -webkit-appearance: none;
        -moz-appearance: none;
        appearance: none;
        background-image: url(../img/common/ico_select_arrow_gray.png);
        background-position: center right;
        background-repeat: no-repeat;
        background-size: 30px 30px;
        cursor: pointer; }
  .text_container .block_container.form p.btn {
    width: 750px;
    margin: 0 auto; }
    .text_container .block_container.form p.btn button, .text_container .block_container.form p.btn input[type="button"], .text_container .block_container.form p.btn input[type="reset"], .text_container .block_container.form p.btn input[type="submit"] {
      border-radius: 0;
      background: #006134;
      border: none;
      text-shadow: none;
      box-shadow: none;
      color: #FFF;
      float: right;
      font-size: 22px;
      font-size: 2.2rem;
      padding: 8px 16px 9px 18px;
      transition: all 0.3s;
      line-height: 1em; }
      .text_container .block_container.form p.btn button:focus, .text_container .block_container.form p.btn input[type="button"]:focus, .text_container .block_container.form p.btn input[type="reset"]:focus, .text_container .block_container.form p.btn input[type="submit"]:focus {
        outline: none; }
      .text_container .block_container.form p.btn button:hover, .text_container .block_container.form p.btn input[type="button"]:hover, .text_container .block_container.form p.btn input[type="reset"]:hover, .text_container .block_container.form p.btn input[type="submit"]:hover {
        background: #8dc21f; }
  .text_container .block_container .mw_wp_form {
    display: block;
    float: none; }
  .text_container .block_container .mw_wp_form_confirm form dd {
    padding-top: 6px;
    min-height: 30px; }
    .text_container .block_container .mw_wp_form_confirm form dd.select {
      background: none; }
.text_container p.lead {
  font-weight: bold;
  margin: -15px 0 60px;
  font-size: 18px;
  font-size: 1.8rem;
  line-height: 1.5em; }
.text_container .mw_wp_form_thanks {
  min-height: 400px;
  padding-top: 80px;
  text-align: center;
  line-height: 1.6em; }
  .text_container .mw_wp_form_thanks a {
    display: inline-block;
    background: rgba(57, 57, 57, 0.2);
    padding: 2px 8px 1px 9px; }
    .text_container .mw_wp_form_thanks a:hover {
      background: #8dc21f;
      color: #FFF;
      opacity: 1; }

@media (max-width: 1150px) {
  h1 {
    font-size: 38px;
    font-size: 3.8rem; }

  .text_container .block_container h2 {
    font-size: 28px;
    font-size: 2.8rem;
    height: 60px;
    width: 250px; }
    .text_container .block_container h2:after {
      border-width: 0 0 60px 20px; }
  .text_container .block_container.course {
    padding: 15% 6% 2%; }
    .text_container .block_container.course h2 {
      padding: 18px 0 16px 45px; }
  .text_container .block_container.form {
    padding: 15% 6% 6%; }
    .text_container .block_container.form h2 {
      padding: 18px 0 16px 35px; }
  .text_container .block_container .trim-img {
    width: 40%;
    height: 260px; }
  .text_container .block_container .text_box {
    width: 60%;
    padding-left: 5%; }
  .text_container .block_container.form dl {
    width: 100%;
    padding-left: 0; }
    .text_container .block_container.form dl dt {
      width: 30%;
      padding-left: 0; }
    .text_container .block_container.form dl dd {
      width: 70%; }
  .text_container .block_container.form p.btn {
    width: 100%; } }
@media (max-width: 900px) {
  .text_container .block_container .trim-img {
    height: 200px; } }
@media (max-width: 767px) {
  h1 {
    font-size: 22px;
    font-size: 2.2rem;
    line-height: 1.4em;
    margin: 40px auto; }

  .text_container .block_container {
    width: 100%;
    border: 1px solid rgba(57, 57, 57, 0.2);
    margin-bottom: 40px;
    -webkit-box-shadow: 0px 0px 6px 0px rgba(153, 153, 153, 0.5);
    box-shadow: 0px 0px 6px 0px rgba(153, 153, 153, 0.5); }
    .text_container .block_container h2 {
      font-size: 18px;
      font-size: 1.8rem;
      height: 42px;
      width: 170px; }
      .text_container .block_container h2:after {
        border-style: solid;
        border-color: transparent transparent #FFF transparent;
        border-width: 0 0 42px 20px; }
    .text_container .block_container.course {
      padding: 20% 8% 2%; }
      .text_container .block_container.course h2 {
        padding: 12px 0 12px 30px; }
    .text_container .block_container.form {
      padding: 20% 8% 8%; }
      .text_container .block_container.form h2 {
        background: #8dc21f;
        padding: 12px 0 12px 22px; }
    .text_container .block_container div {
      display: block;
      float: none; }
    .text_container .block_container .trim-img {
      width: 100%;
      height: 280px;
      margin-bottom: 8%; }
    .text_container .block_container .text_box {
      width: 100%;
      padding-left: 0; }
      .text_container .block_container .text_box h3 {
        font-size: 15px;
        font-size: 1.5rem;
        margin-bottom: 8px; }
        .text_container .block_container .text_box h3.title {
          font-size: 18px;
          font-size: 1.8rem;
          margin-bottom: 6%;
          line-height: 1.6em; }
      .text_container .block_container .text_box p {
        margin-bottom: 25px; }
        .text_container .block_container .text_box p b {
          font-size: 18px;
          font-size: 1.8rem; }
        .text_container .block_container .text_box p a.btn {
          top: -25px;
          padding: 1px 6px 1px 7px; }
    .text_container .block_container.form dl {
      width: 100%;
      padding-left: 0; }
      .text_container .block_container.form dl dt, .text_container .block_container.form dl dd {
        display: block;
        float: none; }
      .text_container .block_container.form dl dt {
        width: 100%;
        padding-left: 0;
        padding-top: 5px;
        margin-bottom: 10px;
        font-size: 15px;
        font-size: 1.5rem;
        font-weight: bold; }
      .text_container .block_container.form dl dd {
        width: 100%;
        margin: 0 0 20px 0;
        font-size: 16px;
        font-size: 1.6rem; }
        .text_container .block_container.form dl dd input {
          height: 32px;
          padding: 2px 6px 4px;
          border-radius: 0 !important; }
        .text_container .block_container.form dl dd input::placeholder {
          font-size: 16px;
          font-size: 1.6rem; }
        .text_container .block_container.form dl dd textarea {
          height: 160px;
          padding: 6px;
          border-radius: 0 !important; }
        .text_container .block_container.form dl dd select {
          background: none;
          height: 32px;
          border-radius: 0 !important;
          border-width: 0;
          outline: none;
          position: relative;
          background-image: url(../img/common/ico_select_arrow_gray.png);
          background-position: center right;
          background-repeat: no-repeat;
          background-size: 22px 22px; }
        .text_container .block_container.form dl dd:last-child {
          margin-bottom: 10px; }
    .text_container .block_container.form p.btn {
      width: 100%; }
      .text_container .block_container.form p.btn button, .text_container .block_container.form p.btn input[type="button"], .text_container .block_container.form p.btn input[type="reset"], .text_container .block_container.form p.btn input[type="submit"] {
        font-size: 18px;
        font-size: 1.8rem;
        padding: 8px 16px 9px 18px; }
    .text_container .block_container .mw_wp_form_confirm form dd {
      padding-top: 0;
      min-height: auto; }
  .text_container p.lead {
    margin: -10px 0 30px;
    font-size: 13px;
    font-size: 1.3rem;
    line-height: 1.4em; }
  .text_container .mw_wp_form_thanks {
    min-height: 220px;
    padding: 5% 5% 0; }
    .text_container .mw_wp_form_thanks a {
      margin-top: -10px;
      padding: 2px 8px 2px 9px; } }
@media (max-width: 450px) {
  .text_container .block_container .trim-img {
    height: 190px; } }
/* footer
----------------------------*/
footer {
  position: relative; }
  footer .arrow {
    position: absolute;
    right: 15px;
    bottom: -5px; }
    footer .arrow a i {
      font-size: 35px;
      font-size: 3.5rem;
      color: #006134; }
  footer .copyright {
    width: 100%;
    display: block;
    font-weight: normal;
    font-size: 12px;
    font-size: 1.2rem;
    margin: 20px auto 30px; }
    footer .copyright span {
      font-size: 13px;
      font-size: 1.3rem;
      position: relative;
      top: 1px; }

@media (max-width: 767px) {
  footer .copyright {
    font-size: 11px;
    font-size: 1.1rem;
    padding-top: 20px; }
    footer .copyright span {
      font-size: 12px;
      font-size: 1.2rem; } }
.fadeinup {
  opacity: 0; }

.fadeinup.animated {
  -webkit-animation-name: fadeInUp;
  animation-name: fadeInUp;
  -webkit-animation-duration: 0.5s;
  animation-duration: 0.5s;
  -webkit-animation-timing-function: ease-in-out;
  animation-timing-function: ease-in-out;
  -webkit-animation-fill-mode: both;
  animation-fill-mode: both; }

@-webkit-keyframes fadeInUp {
  from {
    opacity: 0;
    -webkit-transform: translate3d(0, 10px, 0);
    transform: translate3d(0, 10px, 0); }
  to {
    opacity: 1;
    -webkit-transform: none;
    transform: none; } }
@keyframes fadeInUp {
  from {
    opacity: 0;
    -webkit-transform: translate3d(0, 10px, 0);
    transform: translate3d(0, 10px, 0); }
  to {
    opacity: 1;
    -webkit-transform: none;
    transform: none; } }
