@charset "UTF-8";
/* Scss Document */
body {
  color: #333;
  font: 14px/2em "游ゴシック", "Yu Gothic", "Helvetica Neue", "Helvetica", "Arial", sans-serif; }

input, textarea, select, button {
  font: 14px/2em "游ゴシック", "Yu Gothic", "Helvetica Neue", "Helvetica", "Arial", sans-serif; }

@media screen and (max-width: 62.5em) {
  body {
    min-width: 0;
    font-size: 12px; } }
.content_w {
  width: 1040px;
  margin: 0 auto; }

@media screen and (max-width: 77.5em) {
  .content_w {
    width: 100%;
    padding: 0 3%;
    box-sizing: border-box; } }
@media screen and (max-width: 46.875em) {
  .content_w {
    padding: 0 3%;
    box-sizing: border-box; } }
table {
  border: none; }

a {
  text-decoration: none;
  display: block;
  color: #333; }

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

.f_right {
  float: right; }

.f_left {
  float: left; }

@media screen and (min-width: 62.5625em) {
  .pc_no {
    display: none !important; } }
.scroll {
  padding-top: 130px; }

@media screen and (min-width: 62.5625em) {
  .pc_no {
    display: none !important; } }
@media screen and (max-width: 62.5em) {
  .scroll {
    padding-top: 60px; } }
/* header
-------------------------------*/
header {
  width: 100%;
  margin: 0 auto;
  background: #fff; }

#header_inc {
  display: block; }

header.fixed {
  position: fixed;
  top: 0;
  left: 0;
  z-index: 200; }

.nav-wrap {
  width: 1400px;
  margin: 0 auto; }

@media screen and (max-width: 69.625em) {
  .nav-wrap {
    width: 100%;
    margin: 0 auto; } }
.header_top {
  width: 1400px;
  margin: 0 auto;
  border-left: solid 1px #e1e9e9;
  box-sizing: border-box; }

@media screen and (min-width: 62.5625em) {
  .header_right p {
    display: inline-block; }

  .header_inq {
    border-radius: 4px;
    background-color: #77b723;
    width: 200px;
    line-height: 32px;
    margin-right: 20px;
    padding: 0 2px 0 10px; }
    .header_inq a {
      color: #fff;
      position: relative;
      padding-left: 30px;
      -webkit-transition: all .4s;
      transition: all .4s; }
      .header_inq a:before {
        content: url("../img/common/icon_heafer_inq.png");
        top: 1px;
        left: 4px;
        position: absolute; }
    .header_inq:hover {
      border-radius: 4px;
      opacity: 0.5;
      -webkit-transition: all .4s;
      transition: all .4s; }
      .header_inq:hover a {
        color: #fff; }

  .header_event {
    background-color: #e6435a;
    width: 188px;
    line-height: 32px;
    margin-right: 20px;
    padding: 0 2px 0 10px;
    border-radius: 4px; }
    .header_event a {
      color: #fff;
      -webkit-transition: all .4s;
      transition: all .4s;
      position: relative;
      padding-left: 18px; }
      .header_event a:before {
        content: url("../img/common/arrow04.png");
        margin: 0px 5px;
        position: absolute;
        top: -2px;
        left: 4px; }
    .header_event:hover {
      opacity: 0.5;
      -webkit-transition: all .4s;
      transition: all .4s; }
      .header_event:hover a {
        color: #fff; }

  .header_guest {
    font-weight: bold;
    width: 108px;
    display: table-cell;
    vertical-align: middle;
    height: 78px;
    border: solid 1px #e1e9e9;
    border-bottom: none;
    line-height: 20px;
    -webkit-transition: all .4s;
    transition: all .4s;
    background-color: #e1e9e9; }
    #header_user .header_guest {
      background: #77b723;
      color: #fff; }
      #header_user .header_guest:hover {
        -webkit-transition: all .4s;
        transition: all .4s;
        opacity: 0.8; }
    .header_guest:hover {
      -webkit-transition: all .4s;
      transition: all .4s;
      background-color: #e6fba7; }
    .header_guest a {
      padding-top: 28%;
      line-height: 1.2rem;
      -webkit-transition: all .4s;
      transition: all .4s;
      background: url(../img/common/gnav_gest.png) no-repeat top 10px center; }
      .header_guest a:hover {
        color: #333;
        -webkit-transition: all .4s;
        transition: all .4s; }
      #header_user .header_guest a {
        background: url(../img/common/gnav_gest_user.png) no-repeat top 10px center;
        color: #fff; }
        #header_user .header_guest a:hover {
          color: #fff;
          -webkit-transition: all .4s;
          transition: all .4s; } }
@media screen and (min-width: 62.5625em) {
  .header .header_guest {
    display: none; } }
@media screen and (max-width: 62.5em) {
  .header .header_guest {
    font-weight: bold;
    width: 22.9333333333%;
    height: 60px;
    max-width: 172px;
    min-width: 100px;
    background-color: #e1e9e9;
    right: 60px;
    position: absolute; }
    #header_user .header .header_guest {
      background: #77b723;
      color: #fff; }
      #header_user .header .header_guest:hover {
        -webkit-transition: all .4s;
        transition: all .4s;
        opacity: 0.8; }
    .header .header_guest:hover {
      -webkit-transition: all .4s;
      transition: all .4s;
      background-color: #e6fba7; }
    .header .header_guest a {
      padding-top: 24px;
      line-height: 1rem;
      background: url(../img/common/gnav_gest.png) no-repeat top 5px center; }
      #header_user .header .header_guest a {
        background: url(../img/common/gnav_gest_user.png) no-repeat top 5px center;
        color: #fff; } }
@media screen and (max-width: 1420px) {
  .header_top {
    width: 100%; } }
@media screen and (max-width: 62.5em) {
  header {
    width: 100%; } }
#gnav {
  width: 1400px; }

.header {
  display: flex;
  justify-content: space-between;
  background: #fff; }
  .header .logo {
    font-size: 20px; }

#header_user .header_top .logo {
  font-weight: bold;
  font-size: 1.1428571429em; }
  #header_user .header_top .logo a {
    display: inline-block; }
    #header_user .header_top .logo a img {
      margin-top: -7px; }

.nav-button {
  display: none; }

.nav a {
  text-decoration: none;
  font-size: 14px;
  -webkit-transition: all .4s;
  transition: all .4s; }
  .nav a:hover, .nav a.current {
    background-color: #e6fba7;
    color: #333;
    -webkit-transition: all .4s;
    transition: all .4s; }
.nav li {
  float: left;
  width: 16.6666666667%;
  box-sizing: border-box;
  text-align: center; }
  #header_user .nav li {
    width: 20%; }
@media screen and (max-width: 62.5em) {
  .nav li {
    width: 100%; }
    #header_user .nav li {
      width: 100%; } }
.nav .g_contact a span {
  background: url("../img/common/gnav_contact.png") no-repeat left center;
  font-weight: bold; }
.nav .g_faq a span {
  background: url("../img/common/gnav_faq.png") no-repeat left center;
  font-weight: bold; }
.nav .g_case a span {
  background: url("../img/common/gnav_case.png") no-repeat left center;
  font-weight: bold; }
.nav .g_product a span {
  background: url("../img/common/gnav_product.png") no-repeat left center;
  font-weight: bold; }
.nav .g_flow a span {
  background: url("../img/common/gnav_flow.png") no-repeat left center;
  font-weight: bold; }
.nav .g_point a span {
  background: url("../img/common/gnav_point.png") no-repeat left center;
  font-weight: bold; }
.nav .g_about a span {
  background: url("../img/common/gnav_about.png") no-repeat left center;
  font-weight: bold; }
.nav .g_seminar a span {
  background: url("../img/common/gnav_seminar.png") no-repeat left center;
  font-weight: bold; }
.nav .g_tips a span {
  background: url("../img/common/gnav_tips.png") no-repeat left center;
  font-weight: bold; }
.nav .g_nav_li a span {
  position: relative;
  padding-left: 22px; }
.nav .g_nav_li a span:before {
  position: absolute;
  top: 0;
  left: 0;
  height: 20px;
  width: 20px; }

.nav-wrap.open {
  display: block; }

.nav-wrap.close {
  display: none; }

@media screen and (min-width: 62.5625em) and (max-width: 69.625em) {
  .nav .g_nav_li a span {
    padding-left: 0;
    background: none; } }
@media screen and (min-width: 62.5625em) {
  .nav-wrap {
    display: block !important; }

  .header .logo {
    display: none; }

  .g_nav_li {
    width: 173px;
    border-top: #e1e9e9 solid 1px;
    border-right: #e1e9e9 solid 1px;
    line-height: 50px; }
    .g_nav_li:first-of-type {
      border-left: #e1e9e9 solid 1px; } }
@media screen and (max-width: 62.5em) {
  .header {
    height: 60px; }
    .header img {
      height: 60px; }

  .nav-button {
    display: block;
    cursor: pointer;
    border-left: solid 1px #e1e9e9; }

  .nav-wrap {
    position: fixed;
    left: 0;
    top: 0;
    display: none;
    z-index: 999;
    background-color: rgba(0, 0, 0, 0.7);
    width: 100%;
    height: 100%; }
    .nav-wrap .nav {
      height: 100%;
      position: relative;
      overflow-x: hidden;
      overflow-y: auto;
      padding: 10% 0; }
    .nav-wrap li {
      display: block;
      float: none;
      margin: 0;
      width: 100%; }
      .nav-wrap li a {
        color: #fff;
        font-size: 18px;
        padding: 5% 0;
        height: 100%; }

  .nav .g_nav_li a span:before {
    top: 0; }

  /*メニューボタン*/
  .nav-button,
  .nav-button span {
    display: inline-block;
    -webkit-transition: all .4s;
    transition: all .4s;
    box-sizing: border-box; }

  .nav-button {
    z-index: 1000;
    width: 60px;
    height: 60px;
    box-sizing: border-box; }

  .nav_button_size {
    position: relative;
    width: 20px;
    height: 18px;
    margin: 20px auto 0; }

  .nav-button span {
    position: absolute;
    left: 0;
    width: 100%;
    height: 1px;
    background-color: #19a046;
    border-radius: 1px; }

  .nav-button span:nth-of-type(1) {
    top: 0; }

  .nav-button span:nth-of-type(2) {
    top: 9px; }

  .nav-button span:nth-of-type(3) {
    bottom: 0; }

  .nav-button.active span:nth-of-type(1) {
    -webkit-transform: translateY(8px) rotate(-45deg);
    transform: translateY(8px) rotate(-45deg); }

  .nav-button.active span:nth-of-type(2) {
    opacity: 0; }

  .nav-button.active span:nth-of-type(3) {
    -webkit-transform: translateY(-8px) rotate(45deg);
    transform: translateY(-8px) rotate(45deg); } }
/* footer
-------------------------------*/
#footer_inc {
  background: #fff; }

#footer {
  max-width: 1240px;
  margin: 0 auto;
  font-size: 12px;
  line-height: 1.6666666667;
  text-align: left; }
  #footer .row {
    padding-top: 40px; }
    #footer .row a {
      display: inline; }
    #footer .row .f_right span {
      display: inline-block; }
      #footer .row .f_right span img {
        width: 100%; }
      #footer .row .f_right span:nth-child(2) {
        border: #000 solid 1px;
        padding: 5px;
        text-align: center;
        margin-left: 15px; }
        #footer .row .f_right span:nth-child(2) img {
          width: 45%; }

.footer_link {
  max-width: 1240px;
  margin: 0 auto;
  border-bottom: solid 1px #e1e9e9;
  padding-top: 30px;
  text-align: left;
  padding-bottom: 30px; }
  .footer_link a {
    display: inline-block;
    margin-right: 15px; }
    .footer_link a:hover {
      color: #aed632; }
  .footer_link .footer_pdf:after {
    content: url("/img/common/icon_pdf.png");
    margin: 0px 5px; }

.pagetop {
  width: 80px;
  line-height: 80px;
  text-align: center;
  background-color: #19a046;
  position: fixed;
  right: 0;
  bottom: 0;
  z-index: 999;
  -webkit-transition: all .4s;
  transition: all .4s; }
  .pagetop:hover {
    background-color: #cbe57c;
    -webkit-transition: all .4s;
    transition: all .4s; }
  .pagetop a {
    display: block; }

.copyright {
  padding: 90px 0 0;
  margin-bottom: 27px; }

.footer_logo {
  margin-bottom: 1rem; }
  .footer_logo a:after {
    content: none !important; }

@media screen and (max-width: 69.625em) {
  .footer_link {
    margin: 0 5%; } }
@media screen and (max-width: 62.5em) {
  .footer_link {
    font-size: 12px;
    width: 89.3333333333%;
    margin: 0 auto;
    padding-bottom: 16px; }
    .footer_link a {
      display: inline-block;
      float: left;
      width: 50%;
      padding-bottom: 0.5rem;
      margin-right: 0; }

  .row {
    width: 89.3333333333%;
    margin: 0 auto; }
    .row .f_right {
      float: none;
      text-align: center; }
    .row .f_right span {
      width: 10.6666666667%;
      margin-right: 4%; }
      .row .f_right span:nth-child(2) {
        border: #000 solid 1px;
        width: 15.3333333333%; }

  .footer_left {
    float: none;
    margin-bottom: 15px; }
    .footer_left .footer_logo {
      text-align: center;
      margin-bottom: 1rem; }
      .footer_left .footer_logo a:after {
        content: none !important; }

  .copyright {
    width: 89.3333333333%;
    margin: 0 auto;
    text-align: left;
    margin-top: 45px;
    padding: 0; }

  .pagetop {
    width: 50px;
    line-height: 50px; } }
/* main_key
--------------------------------*/
.main_key {
  text-align: center;
  padding: 80px 0 110px;
  background: #bfe78e;
  position: relative;
  background-image: url("../img/dummy/key.jpg");
  background-repeat: no-repeat;
  background-position: top center;
  background-size: cover; }
  .main_key .h1_area {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%); }
    .main_key .h1_area p {
      color: #77b723;
      margin-bottom: 1rem; }
    .main_key .h1_area h1 {
      font-size: 32px;
      line-height: 1.5em; }

@media screen and (min-width: 46.9375em) {
  .main_key {
    height: 262px;
    box-sizing: border-box;
    margin-bottom: 120px; }
    .main_key img {
      display: none; } }
@media screen and (max-width: 46.875em) {
  .main_key {
    background-image: url(../img/dummy/sp_key.png);
    background-repeat: no-repeat;
    background-position: top center;
    background: none;
    padding: 0;
    position: relative;
    margin-bottom: 60px; }
    .main_key img {
      width: 100%; } }
@media screen and (max-width: 26.25em) {
  .main_key .h1_area h1 {
    font-size: 24px; } }
/* panlist
--------------------------------*/
.panlist {
  position: absolute;
  bottom: 0;
  left: 0;
  background: #fff;
  text-align: right; }

.panlist a {
  display: inline-block;
  position: relative;
  overflow: hidden;
  padding: 12px 0 0; }
  .panlist a span {
    border-right: solid #e1e9e9 1px;
    padding: 0 16px; }
  .panlist a:last-child span {
    border-right: none; }
  .panlist a.act {
    cursor: default; }
  .panlist a.act:before {
    left: 0; }
  .panlist a.act:hover {
    color: #333; }

.panlist a:before {
  content: "";
  position: absolute;
  width: 100%;
  height: 1px;
  background-color: #77b723;
  top: 0;
  left: -100%;
  -webkit-transition: all 0.3s ease-in-out;
  -o-transition: all 0.3s ease-in-out;
  transition: all 0.3s ease-in-out; }

.panlist a:after {
  bottom: 0 !important;
  top: auto !important;
  right: -100%;
  left: auto; }

.panlist a:hover:before {
  left: 0; }

@media screen and (max-width: 46.875em) {
  .panlist {
    display: none; } }
/*  margin pading
-------------------------------*/
.m_b50 {
  margin-bottom: 50px; }

.p_t50 {
  padding-top: 50px; }

.p_pb80 {
  padding-bottom: 80px; }

.mt_10 {
  margin-top: 10px; }

.mb_10 {
  margin-bottom: 10px !important; }

.mt_20 {
  margin-top: 20px; }

.mb_20 {
  margin-bottom: 20px !important; }

.mt_30 {
  margin-top: 30px; }

.mb_30 {
  margin-bottom: 30px !important; }

.mt_40 {
  margin-top: 40px; }

.mb_40 {
  margin-bottom: 40px !important; }

.mt_50 {
  margin-top: 50px; }

.mb_50 {
  margin-bottom: 50px !important; }

.mt_60 {
  margin-top: 60px; }

.mb_60 {
  margin-bottom: 60px !important; }

/* 
	animetion
-------------------------------*/
.scroll {
  transition: 0.8s; }

.scroll .up {
  transform: translate(0, 50px);
  opacity: 0;
  transition: 0.8s; }

.scroll .up_anime {
  transform: translate(0, 0);
  opacity: 1; }

/* title
--------------------------------*/
.title01, .FAQ_title h2 {
  font-size: 28px;
  text-align: center;
  border-bottom: solid #e1e9e9 1px;
  position: relative;
  padding: 0;
  padding-bottom: 35px;
  margin-bottom: 50px;
  line-height: 1.5em;
  color: #333;
  background: none; }
  .title01 p, .FAQ_title h2 p {
    font-size: 14px;
    margin-bottom: 24px;
    font-weight: normal; }
  .title01:after, .FAQ_title h2:after {
    position: absolute;
    content: " ";
    display: block;
    border-bottom: solid 1px #77b723;
    bottom: -1px;
    width: 40px;
    left: 50%;
    transform: translateY(-50%) translateX(-50%); }

@media screen and (max-width: 26.25em) {
  .title01, .FAQ_title h2 {
    font-size: 22px;
    margin-bottom: 15px;
    padding-bottom: 17px; }
    .title01 p, .FAQ_title h2 p {
      font-size: 12px;
      margin-bottom: 20px; } }
.title02 {
  color: #19a046;
  font-size: 20px;
  margin-bottom: 1.5rem; }

@media screen and (max-width: 46.875em) {
  .title02 {
    font-size: 16px;
    line-height: 1.6; } }
.title03 {
  margin-bottom: 1.9rem;
  padding-bottom: 1rem;
  font-weight: bold;
  font-size: 16px;
  position: relative; }
  .title03:after {
    position: absolute;
    content: " ";
    display: block;
    border-bottom: solid 1px #77b723;
    bottom: -1px;
    width: 40px;
    left: 20px;
    transform: translateY(-50%) translateX(-50%); }

.title04 {
  color: #19a046;
  font-size: 20px;
  margin-bottom: 1.5rem;
  border-bottom: solid 1px #e1e9e9;
  padding-bottom: 1rem; }

.title05 {
  font-size: 28px;
  text-align: left;
  border-bottom: solid #e1e9e9 1px;
  position: relative;
  padding-bottom: 35px; }
  .title05:after {
    position: absolute;
    content: " ";
    display: block;
    border-bottom: solid 1px #77b723;
    bottom: -1px;
    width: 40px;
    left: 20px;
    transform: translateY(-50%) translateX(-50%); }

.title06 {
  background: #e1e9e9;
  line-height: 50px;
  padding: 0 10px;
  margin-bottom: 30px;
  box-sizing: border-box;
  font-size: 20px; }

@media screen and (max-width: 46.875em) {
  .title06 {
    font-size: 14px;
    margin-bottom: 15px;
    /* padding: 0 5px; */
	padding: 10px;
	line-height: 25px; } }
.title07 {
  font-size: 28px;
  margin-bottom: 50px; }

.title08 {
  font-size: 28px;
  border-bottom: solid #e1e9e9 1px;
  position: relative;
  padding-bottom: 35px;
  margin-bottom: 50px;
  line-height: 1.5em; }
  .title08 p {
    font-size: 14px;
    margin-bottom: 24px;
    font-weight: normal; }
  .title08:after {
    position: absolute;
    content: " ";
    display: block;
    border-bottom: solid 1px #77b723;
    bottom: -1px;
    width: 40px;
    left: 0;
    transform: translateY(-50%); }

@media screen and (max-width: 46.875em) {
  .title08 {
    font-size: 22px;
    margin-bottom: 15px; }
    .title08 p {
      font-size: 12px;
      margin-bottom: 20px; } }
/* text
--------------------------------*/
.text_b {
  font-weight: bold; }

.text_link {
  font-weight: bold;
  text-decoration: underline;
  display: inline-block; }
  .text_link:hover {
    color: #77b723; }

.attention {
  font-size: 12px; }
  @media screen and (max-width: 46.875em) {
    .attention {
      font-size: 10px; } }

.main_lead {
  margin-bottom: 50px; }
  @media screen and (max-width: 46.875em) {
    .main_lead {
      margin-bottom: 25px; } }

/* btn
-------------------------------*/
.btn01 {
  cursor: pointer;
  border-radius: 4px;
  background-color: #19a046;
  box-shadow: 0px 12px 24px 0px rgba(51, 51, 51, 0.1);
  font-size: 16px;
  text-align: center;
  overflow: hidden;
  -webkit-transition: all .4s;
  transition: all .4s; }
  .btn01:hover {
    background-color: #cbe57c;
    -webkit-transition: all .4s;
    transition: all .4s;
    color: #fff;
    letter-spacing: 5px; }
    .btn01:hover a, .btn01:hover button {
      color: #19a046;
      -webkit-transition: all .4s;
      transition: all .4s;
      letter-spacing: 5px; }
  .btn01 a, .btn01 button {
    color: #fff;
    -webkit-transition: all .4s;
    transition: all .4s; }

.btn01:hover:after {
  background-color: #19a046;
  -webkit-transition: all .4s;
  transition: all .4s; }

.btn02 {
  background-color: #e7f6f5;
  border-radius: 34px;
  color: #333333;
  font-size: 14px;
  line-height: 48px;
  display: inline-block;
  text-align: center;
  font-weight: bold;
  padding: 6px 24px !important;
  -webkit-transition: all .4s;
  transition: all .4s; }
  .btn02:hover {
    background-color: #cbe57c;
    -webkit-transition: all .4s;
    transition: all .4s; }
    .btn02:hover a {
      color: #333;
      -webkit-transition: all .4s;
      transition: all .4s; }
  .btn02.arrow_aicon01 {
    padding-right: 38px !important; }

@media screen and (max-width: 46.875em) {
  .btn02 {
    font-size: 10px;
    line-height: 36px; }
    .btn02 a.line2 {
      line-height: 1.9; } }
.btn03 {
  background-image: -webkit-linear-gradient(180deg, #d8dd00 0%, #81bf29 100%);
  background-image: -moz-linear-gradient(180deg, #d8dd00 0%, #81bf29 100%);
  background-image: -o-linear-gradient(180deg, #d8dd00 0%, #81bf29 100%);
  background-image: linear-gradient(-90deg, #d8dd00 0%, #81bf29 100%);
  color: #fff;
  text-align: center;
  line-height: 36px;
  border-radius: 18px;
  padding: 0 24px; }

.btn04 {
  background-color: #e6435a;
  box-shadow: 0px 3px 8px 0px rgba(51, 51, 51, 0.06); }
  .btn04:hover {
    opacity: 0.5; }
  .btn04 a {
    color: #fff; }

.btn06 {
  border-radius: 8px;
  background-color: #ffffff;
  box-shadow: -1px 4px 8px -3px #e3e3e3;
  height: 115px;
  text-align: center;
  font-size: 16px;
  -webkit-transition: all .4s;
  transition: all .4s; }
  .btn06 a {
    line-height: 115px;
    -webkit-transition: all .4s;
    transition: all .4s; }
  .btn06:hover {
    background: #77b723;
    -webkit-transition: all .4s;
    transition: all .4s; }
    .btn06:hover a {
      color: #fff;
      -webkit-transition: all .4s;
      transition: all .4s; }

.btn07 {
  border-radius: 4px;
  background-color: #a0a0a0;
  box-shadow: 0px 12px 24px 0px rgba(51, 51, 51, 0.1);
  font-size: 16px;
  text-align: center;
  overflow: hidden;
  color: #fff;
  cursor: pointer;
  -webkit-transition: all .4s;
  transition: all .4s; }
  .btn07:hover {
    background-color: #ddd;
    -webkit-transition: all .4s;
    transition: all .4s;
    color: #fff;
    letter-spacing: 5px; }
    .btn07:hover a, .btn07:hover button {
      color: #fff;
      -webkit-transition: all .4s;
      transition: all .4s;
      letter-spacing: 5px; }
  .btn07 a, .btn07 button {
    color: #fff;
    -webkit-transition: all .4s;
    transition: all .4s; }

.btn07:hover:after {
  -webkit-transition: all .4s;
  transition: all .4s; }

.arrow_aicon {
  position: relative;
  display: inline-block;
  padding: 0 23px 0 0;
  color: #000;
  vertical-align: middle;
  text-decoration: none; }

.arrow_aicon::before,
.arrow_aicon::after {
  position: absolute;
  top: -1px;
  bottom: 0;
  right: 17px;
  margin: auto;
  content: "";
  vertical-align: middle; }

.arrow_aicon01::before {
  width: 16px;
  height: 16px;
  -webkit-border-radius: 50%;
  border-radius: 50%;
  background-color: #aed632; }
.arrow_aicon01::after {
  right: 23px;
  width: 5px;
  height: 5px;
  border-top: 1px solid #fff;
  border-right: 1px solid #fff;
  -webkit-transform: rotate(45deg);
  transform: rotate(45deg); }

@media screen and (max-width: 62.5em) {
  .btn01, .btn07 {
    line-height: 44px !important;
    font-size: 12px; } }
.btn05 {
  border-radius: 4px;
  background-color: #19a046;
  box-shadow: 0px 12px 24px 0px rgba(51, 51, 51, 0.1);
  font-size: 16px;
  text-align: center;
  overflow: hidden;
  padding: 0 20px;
  -webkit-transition: all .4s;
  transition: all .4s; }
  .btn05 a {
    color: #fff;
    text-align: center;
    vertical-align: middle;
    display: table-cell; }
  .btn05:hover {
    background-color: #cbe57c;
    -webkit-transition: all .4s;
    transition: all .4s;
    color: #fff; }
    .btn05:hover a {
      color: #fff;
      -webkit-transition: all .4s;
      transition: all .4s;
      letter-spacing: 5px; }
  .btn05 a {
    color: #fff;
    -webkit-transition: all .4s;
    transition: all .4s; }

@media screen and (min-width: 46.9375em) {
  .btn05 {
    width: 350px;
    height: 68px;
    line-height: 68px;
    box-sizing: border-box;
    display: inline-block; }

  .btn05 a {
    width: inherit;
    height: 68px; }

  .btn_2lin a {
    line-height: 1.5rem; } }
@media screen and (max-width: 46.875em) {
  .btn05 {
    width: 100%;
    box-sizing: border-box;
    height: 70px;
    display: block;
    line-height: 70px; }
    .btn05 a {
      height: 70px;
      font-size: 16px;
      display: block; }

  /*2行*/
  .btn_2lin {
    line-height: 1.5rem;
    padding-top: 11px; } }
.btn01:hover:after {
  background-color: #19a046;
  -webkit-transition: all .4s;
  transition: all .4s; }

/* aicon
--------------------------------*/
.arrow_aicon02 {
  position: relative; }

.arrow_aicon02::after,
.arrow_aicon02::before {
  display: block;
  content: '';
  position: absolute; }

.arrow_aicon02::after {
  width: 14px;
  height: 14px;
  background-color: #77b723;
  border-radius: 100%;
  right: 50%;
  bottom: 0; }

.arrow_aicon02::before {
  z-index: 2;
  top: auto;
  left: auto;
  right: 51.3%;
  bottom: 4px;
  width: 4px;
  height: 4px;
  border-right: 1px solid #fff;
  border-bottom: 1px solid #fff;
  -webkit-transform: rotate(45deg);
  transform: rotate(45deg); }

/* caption
--------------------------------*/
.img_right .text_box {
  float: left; }
.img_right .img {
  float: right; }
.img_right img {
  width: 100%; }

.img_left .text_box {
  float: right; }
.img_left .img {
  float: left; }
.img_left img {
  width: 100%; }

.col-md-2, .col-md-3, .col-md-4,
.col-2, .col-3, .col-4,
.grit-md-2, .grit-md-3, .grit-md-4,
.grit-sp-2, .grit-sp-3, .grit-sp-4 {
  float: left;
  margin-bottom: 15px; }

.col-md-2 {
  width: 48.2142857143%;
  margin-right: 3.5714285714%;
  box-sizing: border-box; }
  .col-md-2 img {
    width: 100%; }
  .col-md-2:nth-child(2n) {
    margin-right: 0; }

.col-md-3 {
  width: 30.9523809524%;
  margin-right: 3.5714285714%;
  box-sizing: border-box;
  margin-bottom: 30px; }
  .col-md-3 img {
    width: 100%; }
  .col-md-3:nth-child(3n) {
    margin-right: 0; }

@media screen and (min-width: 46.9375em) {
  .grit-md-2 {
    width: 50%;
    box-sizing: border-box;
    margin-bottom: 30px;
    padding: 0 15px; }

  .grit-md-3 {
    width: 33.3333333333%;
    box-sizing: border-box;
    margin-bottom: 15px;
    padding: 0 15px; }

  .grit-md-4 {
    width: 25%;
    box-sizing: border-box;
    margin-bottom: 15px;
    padding: 0 15px; } }
@media screen and (max-width: 46.875em) {
  .grit-sp-2 {
    width: 50%;
    box-sizing: border-box;
    margin-bottom: 15px;
    padding: 0 15px; }

  .grit-sp-3 {
    width: 33.3333333333%;
    box-sizing: border-box;
    margin-bottom: 15px;
    padding: 0 15px; } }
@media screen and (min-width: 46.9375em) {
  .w50 {
    width: 48.2142857143%;
    box-sizing: border-box; }

  .w30 {
    width: 30.192307692299998%;
    box-sizing: border-box; }

  .w70 {
    width: 64.6153846154%;
    box-sizing: border-box; }

  .test_w02 {
    width: 65%; }

  .col-md-4 {
    width: 22.3214285714%;
    margin-right: 3.5714285714%;
    box-sizing: border-box; }
    .col-md-4:nth-child(4n) {
      margin-right: 0; } }
@media screen and (max-width: 46.875em) {
  .img_right .text_box, .img_left .text_box {
    float: none;
    width: 100%; }
  .img_right .img, .img_left .img {
    float: none;
    width: 100%; }

  .img_right.col-md-1_3 .w30, .img_left.col-md-1_3 .w30 {
    width: 40%;
    box-sizing: border-box; }
  .img_right.col-md-1_3 .w70, .img_left.col-md-1_3 .w70 {
    width: 52.8%;
    box-sizing: border-box; }

  .img_right.col-md-1_3 .text_box {
    float: left; }
  .img_right.col-md-1_3 .img {
    float: right; }
  .img_right.col-md-1_3 img {
    width: 100%; }

  .img_left.col-md-1_3 .text_box {
    float: right; }
  .img_left.col-md-1_3 .img {
    float: left; }
  .img_left.col-md-1_3 img {
    width: 100%; }

  .col-md-2 {
    float: none;
    margin: 0;
    width: 100%; }

  .col-md-3 {
    float: none;
    width: 100%; }
    .col-md-3 div {
      float: left;
      width: 46.4285714286%;
      margin-right: 3.5714285714%;
      box-sizing: border-box; }
      .col-md-3 div:nth-child(2n) {
        margin-right: 0; }

  .col-sp-2 {
    width: 46.4285714286%;
    margin-right: 3.5714285714%;
    float: left;
    box-sizing: border-box; }
    .col-sp-2:nth-child(2n) {
      margin-right: 0; } }
/* caption
--------------------------------*/
.caption {
  font-size: 12px; }
  @media screen and (min-width: 46.9375em) {
    .caption {
      margin-bottom: 35px; } }
  @media screen and (max-width: 46.875em) {
    .caption {
      margin-bottom: 15px; } }

/* 囲み罫テキスト
--------------------------------*/
.enclosure_box {
  border: solid 1px #000;
  background: #000;
  padding: 3.8461538462%; }

.enclosure_head {
  text-align: center;
  background: #000;
  font-size: 16px;
  font-weight: bold;
  line-height: 2.5rem;
  margin-bottom: 1.25rem; }

@media screen and (max-width: 46.875em) {
  .enclosure_head {
    font-size: 14px; } }
.enclosure_a {
  border: solid 1px #e1e9e9;
  background: #fff; }
  .enclosure_a .enclosure_head {
    background: #e1e9e9; }

.enclosure_b {
  border: solid 1px #e9b8bd;
  background: #f8e5e7; }
  .enclosure_b .enclosure_head {
    background: #e9b8bd; }

.enclosure_c {
  border-top: solid 2px #e1e9e9;
  border-bottom: solid 2px #e1e9e9;
  border-right: none;
  border-left: none;
  background: #fff;
  padding-right: 0;
  padding-left: 0; }
  .enclosure_c .enclosure_head {
    text-align: left;
    background: #fff; }

/* list_style
--------------------------------*/
.list_style01 li {
  position: relative;
  padding: 0.5em 0.5em 0.5em 1.5em;
  margin-bottom: 5px;
  line-height: 1.5;
  vertical-align: middle;
  position: relative; }

.list_style01 li:before {
  display: inline-block;
  vertical-align: middle;
  content: '・';
  color: #77b723;
  position: absolute;
  top: 49%;
  left: 0;
  transform: translateY(-50%); }

.link.col-md-3 {
  float: left; }

.list_style02 li {
  display: inline-block;
  margin-right: 20px; }
  .list_style02 li a {
    display: inline-block; }

@media screen and (max-width: 26.25em) {
  .list_style02 li {
    display: block;
    margin-right: 0; }
    .list_style02 li a {
      display: block; } }
.list_style04 li {
  position: relative;
  padding-left: 25px;
  margin-bottom: 1rem; }
  .list_style04 li:before {
    content: " ";
    width: 10px;
    height: 10px;
    background-color: #19a046;
    position: absolute;
    left: 0;
    top: 8px; }
  .list_style04 li:last-child {
    margin-bottom: 0; }
  .list_style04 li a {
    display: inline-block; }

@media screen and (max-width: 26.25em) {
  .list_style04 li {
    display: block;
    margin-right: 0; }
    .list_style04 li a {
      display: block; } }
/* boder
--------------------------------*/
/* page_link
--------------------------------*/
.page_link01, .page_link02, .page_link {
  border-right: solid 1px #e1e9e9;
  display: table; }
  .page_link01 a, .page_link02 a, .page_link a {
    background: url(../img/common/arrow09.png) no-repeat bottom 5px center;
    padding-bottom: 10px;
    display: table-cell;
    vertical-align: middle; }
    .page_link01 a:hover, .page_link02 a:hover, .page_link a:hover {
      background: url(../img/common/arrow09.png) no-repeat bottom center; }

@media screen and (min-width: 46.9375em) {
  .page_link.grit-md-3:first-child {
    border-left: solid 1px #e1e9e9; } }
@media screen and (max-width: 46.875em) {
  .page_link.grit-sp-2:nth-child(odd) {
    border-left: solid 1px #e1e9e9; } }
/* tab
--------------------------------*/
.tab_wrap {
  width: 100%;
  margin: 80px auto;
  border: #e1e9e9 solid 1px; }

input[type="radio"] {
  display: none; }

.tab_area label {
  border-right: solid 4px #fff;
  display: table;
  padding: 12px 0;
  background: #fff;
  text-align: center;
  font-size: 13px;
  cursor: pointer;
  transition: ease 0.2s opacity;
  box-sizing: border-box;
  position: relative; }
  .tab_area label:before {
    position: absolute;
    width: 100%;
    height: 3px;
    background: #77b723;
    top: 0;
    left: 0;
    content: "";
    transform: scale(0, 1);
    transition: 0.4s; }
  .tab_area label:hover:before {
    transform: scale(1); }
  .tab_area label:last-child {
    margin-right: 0; }
  .tab_area label span {
    display: table-cell;
    padding: 0 10px;
    vertical-align: middle; }

.tab_area label:hover {
  background: #e7f6f5; }

.panel_area {
  background: #fff; }

.tab_panel {
  width: 100%;
  padding: 80px 0;
  display: none; }

.tab_panel p {
  font-size: 14px;
  letter-spacing: 1px;
  text-align: center; }

@keyframes tabAnim {
  0% {
    opacity: 0; }
  100% {
    opacity: 1; } }
#tab1:checked ~ .tab_area .tab1_label {
  background: #e7f6f5; }
  #tab1:checked ~ .tab_area .tab1_label:before {
    position: absolute;
    width: 100%;
    height: 3px;
    background: #77b723;
    top: 0;
    left: 0;
    content: "";
    transform: scale(1, 1);
    transition: 0.4s; }
#tab1:checked ~ .panel_area #panel1 {
  display: block;
  animation: tabAnim ease 2s forwards;
  -ms-animation: tabAnim ease 2s forwards; }

#tab2:checked ~ .tab_area .tab2_label {
  background: #e7f6f5; }
  #tab2:checked ~ .tab_area .tab2_label:before {
    position: absolute;
    width: 100%;
    height: 3px;
    background: #77b723;
    top: 0;
    left: 0;
    content: "";
    transform: scale(1, 1);
    transition: 0.4s; }
#tab2:checked ~ .panel_area #panel2 {
  display: block;
  animation: tabAnim ease 2s forwards;
  -ms-animation: tabAnim ease 2s forwards; }

#tab3:checked ~ .tab_area .tab3_label {
  background: #e7f6f5; }
  #tab3:checked ~ .tab_area .tab3_label:before {
    position: absolute;
    width: 100%;
    height: 3px;
    background: #77b723;
    top: 0;
    left: 0;
    content: "";
    transform: scale(1, 1);
    transition: 0.4s; }
#tab3:checked ~ .panel_area #panel3 {
  display: block;
  animation: tabAnim ease 2s forwards;
  -ms-animation: tabAnim ease 2s forwards; }

#tab4:checked ~ .tab_area .tab4_label {
  background: #e7f6f5; }
  #tab4:checked ~ .tab_area .tab4_label:before {
    position: absolute;
    width: 100%;
    height: 3px;
    background: #77b723;
    top: 0;
    left: 0;
    content: "";
    transform: scale(1, 1);
    transition: 0.4s; }
#tab4:checked ~ .panel_area #panel4 {
  display: block;
  animation: tabAnim ease 2s forwards;
  -ms-animation: tabAnim ease 2s forwards; }

#tab5:checked ~ .tab_area .tab5_label {
  background: #e7f6f5; }
  #tab5:checked ~ .tab_area .tab5_label:before {
    position: absolute;
    width: 100%;
    height: 3px;
    background: #77b723;
    top: 0;
    left: 0;
    content: "";
    transform: scale(1, 1);
    transition: 0.4s; }
#tab5:checked ~ .panel_area #panel5 {
  display: block;
  animation: tabAnim ease 2s forwards;
  -ms-animation: tabAnim ease 2s forwards; }

#tab6:checked ~ .tab_area .tab6_label {
  background: #e7f6f5; }
  #tab6:checked ~ .tab_area .tab6_label:before {
    position: absolute;
    width: 100%;
    height: 3px;
    background: #77b723;
    top: 0;
    left: 0;
    content: "";
    transform: scale(1, 1);
    transition: 0.4s; }
#tab6:checked ~ .panel_area #panel6 {
  display: block;
  animation: tabAnim ease 2s forwards;
  -ms-animation: tabAnim ease 2s forwards; }

#tab7:checked ~ .tab_area .tab7_label {
  background: #e7f6f5; }
  #tab7:checked ~ .tab_area .tab7_label:before {
    position: absolute;
    width: 100%;
    height: 3px;
    background: #77b723;
    top: 0;
    left: 0;
    content: "";
    transform: scale(1, 1);
    transition: 0.4s; }
#tab7:checked ~ .panel_area #panel7 {
  display: block;
  animation: tabAnim ease 2s forwards;
  -ms-animation: tabAnim ease 2s forwards; }

@media screen and (min-width: 46.9375em) {
  .tab_area {
    font-size: 0;
    width: 100%; }

  .tab_area label {
    width: 25%; } }
@media screen and (max-width: 46.875em) {
  .tab_area {
    display: inline-block; }

  .tab_area label {
    margin-right: 0 !important;
    text-align: center;
    position: relative; } }
/* tab02
--------------------------------*/
.tab1_wrap {
  width: 100%;
  margin: 80px auto;
  border: #e1e9e9 solid 1px; }

input[type="radio"] {
  display: none; }

.tab1_area label {
  border-right: solid 4px #fff;
  display: table;
  padding: 12px 0;
  background: #fff;
  text-align: center;
  font-size: 13px;
  cursor: pointer;
  transition: ease 0.2s opacity;
  box-sizing: border-box;
  position: relative; }
  .tab1_area label:before {
    position: absolute;
    width: 100%;
    height: 3px;
    background: #77b723;
    top: 0;
    left: 0;
    content: "";
    transform: scale(0, 1);
    transition: 0.4s; }
  .tab1_area label:hover:before {
    transform: scale(1); }
  .tab1_area label:last-child {
    margin-right: 0; }
  .tab1_area label span {
    display: table-cell;
    vertical-align: middle;
    padding: 0 10px; }

.tab1_area label:hover {
  background: #e7f6f5; }

.panel1_area {
  background: #fff; }

.tab1_panel1 {
  width: 100%;
  padding: 80px 0;
  display: none; }

.tab1_panel1 p {
  letter-spacing: 1px;
  text-align: center; }

@keyframes tabAnim {
  0% {
    opacity: 0; }
  100% {
    opacity: 1; } }
#tab11:checked ~ .tab1_area .tab11_label {
  background: #e7f6f5; }
  #tab11:checked ~ .tab1_area .tab11_label:before {
    position: absolute;
    width: 100%;
    height: 3px;
    background: #77b723;
    top: 0;
    left: 0;
    content: "";
    transform: scale(1, 1);
    transition: 0.4s; }
#tab11:checked ~ .panel1_area #panel11 {
  display: block;
  animation: tabAnim ease 2s forwards;
  -ms-animation: tabAnim ease 2s forwards; }

#tab12:checked ~ .tab1_area .tab12_label {
  background: #e7f6f5; }
  #tab12:checked ~ .tab1_area .tab12_label:before {
    position: absolute;
    width: 100%;
    height: 3px;
    background: #77b723;
    top: 0;
    left: 0;
    content: "";
    transform: scale(1, 1);
    transition: 0.4s; }
#tab12:checked ~ .panel1_area #panel12 {
  display: block;
  animation: tabAnim ease 2s forwards;
  -ms-animation: tabAnim ease 2s forwards; }

#tab13:checked ~ .tab1_area .tab13_label {
  background: #e7f6f5; }
  #tab13:checked ~ .tab1_area .tab13_label:before {
    position: absolute;
    width: 100%;
    height: 3px;
    background: #77b723;
    top: 0;
    left: 0;
    content: "";
    transform: scale(1, 1);
    transition: 0.4s; }
#tab13:checked ~ .panel1_area #panel13 {
  display: block;
  animation: tabAnim ease 2s forwards;
  -ms-animation: tabAnim ease 2s forwards; }

#tab14:checked ~ .tab1_area .tab14_label {
  background: #e7f6f5; }
  #tab14:checked ~ .tab1_area .tab14_label:before {
    position: absolute;
    width: 100%;
    height: 3px;
    background: #77b723;
    top: 0;
    left: 0;
    content: "";
    transform: scale(1, 1);
    transition: 0.4s; }
#tab14:checked ~ .panel1_area #panel14 {
  display: block;
  animation: tabAnim ease 2s forwards;
  -ms-animation: tabAnim ease 2s forwards; }

#tab15:checked ~ .tab1_area .tab15_label {
  background: #e7f6f5; }
  #tab15:checked ~ .tab1_area .tab15_label:before {
    position: absolute;
    width: 100%;
    height: 3px;
    background: #77b723;
    top: 0;
    left: 0;
    content: "";
    transform: scale(1, 1);
    transition: 0.4s; }
#tab15:checked ~ .panel1_area #panel15 {
  display: block;
  animation: tabAnim ease 2s forwards;
  -ms-animation: tabAnim ease 2s forwards; }

#tab16:checked ~ .tab1_area .tab16_label {
  background: #e7f6f5; }
  #tab16:checked ~ .tab1_area .tab16_label:before {
    position: absolute;
    width: 100%;
    height: 3px;
    background: #77b723;
    top: 0;
    left: 0;
    content: "";
    transform: scale(1, 1);
    transition: 0.4s; }
#tab16:checked ~ .panel1_area #panel16 {
  display: block;
  animation: tabAnim ease 2s forwards;
  -ms-animation: tabAnim ease 2s forwards; }

#tab17:checked ~ .tab1_area .tab17_label {
  background: #e7f6f5; }
  #tab17:checked ~ .tab1_area .tab17_label:before {
    position: absolute;
    width: 100%;
    height: 3px;
    background: #77b723;
    top: 0;
    left: 0;
    content: "";
    transform: scale(1, 1);
    transition: 0.4s; }
#tab17:checked ~ .panel1_area #panel17 {
  display: block;
  animation: tabAnim ease 2s forwards;
  -ms-animation: tabAnim ease 2s forwards; }

@media screen and (min-width: 46.9375em) {
  .tab1_area {
    font-size: 0;
    width: 100%; }

  .tab1_area label {
    width: 20%; } }
@media screen and (max-width: 46.875em) {
  .tab1_are {
    display: inline-block; }

  .tab_area02 label {
    margin-right: 0 !important;
    text-align: center;
    position: relative; } }
/* text_btn
--------------------------------*/
.text_btn {
  border-bottom: 1px solid #e1e9e9;
  line-height: 50px; }
  .text_btn:hover {
    border-color: #aed632; }
  .text_btn a {
    background: url("../img/common/icon_arrow08.png") no-repeat right center; }

.text_btn .arrow08 {
  background-image: url("../img/common/icon_arrow08.png");
  padding-right: 40px; }

.text_btn .pdf {
  background-image: url("../img/common/icon_pdf.png");
  padding-right: 40px; }

.text_btn .blank {
  background-image: url("../img/common/icon_blank.png");
  padding-right: 40px; }

.text_btn_logo {
  background: url("../img/common/icon_logo.png") no-repeat left center;
  padding-left: 30px; }

.boder01 li {
  border-bottom: 1px solid #e1e9e9; }

/* link
--------------------------------*/
.link01 {
  border-right: solid 1px #e1e9e9;
  padding: 10px 0;
  text-align: center; }
  .link01:first-of-type {
    border-left: solid 1px #e1e9e9; }

a.link02 {
  text-decoration: underline;
  background-position: left center;
  background-repeat: no-repeat;
  padding-left: 30px; }
  a.link02:hover {
    text-decoration: none; }

.arrow08 {
  background-image: url("/img/common/icon_arrow08.png");
  font-weight: bold; }

.pdf {
  background-image: url("/img/common/icon_pdf.png");
  font-weight: bold; }

.blank {
  background-image: url("/img/common/icon_blank.png");
  font-weight: bold; }

a.blank[target="_blank"]:after {
  content: none; }

/* Label
--------------------------------*/
.cate_label {
  color: #fff;
  font-size: 14px;
  border-radius: 8px;
  display: inline-block;
  background-color: #19a046;
  padding: 3px 12px;
  border: #47b36b solid 2px; }
  .cate_label:hover {
    background: #5ebc7d;
    border: solid 2px #7eca97; }

.label01 {
  color: #2ab1d3;
  font-size: 12px;
  font-weight: 700;
  line-height: 28px;
  border-width: 1px;
  border-color: #2ab1d3;
  border-style: solid;
  background-color: #ffffff;
  border-radius: 20px;
  padding: 3px 16px;
  display: inline-block;
  -webkit-transition: all .4s;
  transition: all .4s; }
  .label01:hover {
    background: #2ab1d3;
    color: #fff;
    -webkit-transition: all .4s;
    transition: all .4s; }
  a:hover .label01 {
    background: #2ab1d3;
    color: #fff;
    -webkit-transition: all .4s;
    transition: all .4s; }

.label02 {
  color: #e03e3e;
  font-size: 12px;
  font-weight: 700;
  line-height: 28px;
  border-width: 1px;
  border-color: #e03e3e;
  border-style: solid;
  background-color: #ffffff;
  border-radius: 20px;
  padding: 3px 16px;
  display: inline-block;
  -webkit-transition: all .4s;
  transition: all .4s; }
  .label02:hover {
    background: #e03e3e;
    color: #fff;
    -webkit-transition: all .4s;
    transition: all .4s; }
  a:hover .label02 {
    background: #e03e3e;
    color: #fff;
    -webkit-transition: all .4s;
    transition: all .4s; }

.label03 {
  color: #5cddb7;
  font-size: 12px;
  font-weight: 700;
  line-height: 28px;
  border-width: 1px;
  border-color: #5cddb7;
  border-style: solid;
  background-color: #ffffff;
  border-radius: 20px;
  padding: 3px 16px;
  display: inline-block;
  -webkit-transition: all .4s;
  transition: all .4s; }
  .label03:hover {
    background: #5cddb7;
    color: #fff;
    -webkit-transition: all .4s;
    transition: all .4s; }
  a:hover .label03 {
    background: #5cddb7;
    color: #fff;
    -webkit-transition: all .4s;
    transition: all .4s; }

.label04 {
  color: #d1c64b;
  font-size: 12px;
  font-weight: 700;
  line-height: 28px;
  border-width: 1px;
  border-color: #d1c64b;
  border-style: solid;
  background-color: #ffffff;
  border-radius: 20px;
  padding: 3px 16px;
  display: inline-block;
  -webkit-transition: all .4s;
  transition: all .4s; }
  .label04:hover {
    background: #d1c64b;
    color: #fff;
    -webkit-transition: all .4s;
    transition: all .4s; }
  a:hover .label04 {
    background: #d1c64b;
    color: #fff;
    -webkit-transition: all .4s;
    transition: all .4s; }

.label0midstream {
  color: #2ab1d3;
  font-size: 12px;
  font-weight: 700;
  line-height: 28px;
  border-width: 1px;
  border-color: #2ab1d3;
  border-style: solid;
  background-color: #ffffff;
  border-radius: 20px;
  padding: 3px 16px;
  display: inline-block;
  -webkit-transition: all .4s;
  transition: all .4s; }
  .label0midstream:hover {
    background: #2ab1d3;
    color: #fff;
    -webkit-transition: all .4s;
    transition: all .4s; }
  a:hover .label0midstream {
    background: #2ab1d3;
    color: #fff;
    -webkit-transition: all .4s;
    transition: all .4s; }

.label0end {
  color: #f39800;
  font-size: 12px;
  font-weight: 700;
  line-height: 28px;
  border-width: 1px;
  border-color: #f39800;
  border-style: solid;
  background-color: #ffffff;
  border-radius: 20px;
  padding: 3px 16px;
  display: inline-block;
  -webkit-transition: all .4s;
  transition: all .4s; }
  .label0end:hover {
    background: #f39800;
    color: #fff;
    -webkit-transition: all .4s;
    transition: all .4s; }
  a:hover .label0end {
    background: #f39800;
    color: #fff;
    -webkit-transition: all .4s;
    transition: all .4s; }

.tag_link {
  text-decoration: underline; }
  .tag_link:hover {
    text-decoration: none; }

/* table
--------------------------------*/
.table_style01 th {
  border: none;
  border-top: solid 1px #77b723;
  padding: 1.5384615385%;
  box-sizing: border-box;
  font-weight: bold;
  text-align: left;
  box-sizing: border-box; }
.table_style01 td {
  border-top: solid 1px #e1e9e9;
  padding: 1.5384615385%;
  box-sizing: border-box; }

@media screen and (min-width: 46.9375em) {
  .table_style01 th {
    width: 19.2307692308%; } }
@media screen and (max-width: 46.875em) {
  .table_style01 th {
    width: 100%;
    display: block; }
  .table_style01 td {
    width: 100%;
    display: block; } }
.table_style02 {
  border: solid 1px #e1e9e9;
  border-top: none; }
  .table_style02 th {
    border: solid 1px #e1e9e9;
    border-bottom: none;
    padding: 1.5384615385%;
    box-sizing: border-box;
    font-weight: bold;
    text-align: left;
    background-color: #e7f6f5; }
  .table_style02 td {
    border-top: solid 1px #e1e9e9;
    padding: 1.5384615385%;
    box-sizing: border-box;
    line-height: 1.6; }

@media screen and (min-width: 46.9375em) {
  .table_style02 th {
    width: 19.2307692308%; } }
@media screen and (max-width: 46.875em) {
  .table_style02 th {
    width: 100%;
    display: block; }
  .table_style02 td {
    width: 100%;
    display: block; } }
.table {
  width: 100%;
  display: table;
  border: solid 1px #e1e9e9;
  border-right: none; }
  .table .row {
    display: table;
    width: 100%;
    border-right: solid 1px #e1e9e9; }
  .table .column {
    box-sizing: border-box;
    padding: 1.5384615385%;
    width: 25%;
    text-align: left;
    display: table-cell;
    border-right: solid 1px #e1e9e9; }
  .table .table-head {
    display: table;
    text-align: left;
    width: 100%; }
    .table .table-head .column {
      background-color: #e7f6f5;
      text-align: left;
      display: table-cell;
      font-weight: bold; }
  .table tbody {
    display: table;
    width: 100%; }

@media only screen and (max-width: 750px) {
  .table_style03 tr {
    display: block;
    width: 100%; }
  .table_style03 tbody {
    display: block;
    width: 100%;
    overflow: hidden; }
    .table_style03 tbody th {
      list-style: none; }
    .table_style03 tbody td {
      margin-left: 0px;
      border-bottom: none;
      line-height: 1.6; }
    .table_style03 tbody th, .table_style03 tbody td {
      width: 100%;
      display: block; }

  .table-head {
    display: none !important; }

  .row {
    margin-bottom: 30px; }

  .table {
    border-bottom: none; }
    .table .column {
      width: 100%;
      display: block;
      position: relative;
      border: none;
      border-bottom: solid 1px #e1e9e9;
      padding: 0; }
      .table .column > div {
        padding: 1.5384615385%; }

  tbody {
    position: relative; }
    tbody .column:before {
      content: attr(data-label);
      background-color: #e7f6f5;
      display: block;
      margin-bottom: 10px;
      font-weight: bold;
      padding: 1.5384615385%;
      border-bottom: solid 1px #e1e9e9; } }
.sp {
  width: 420px;
  margin: auto; }
  .sp .table-head {
    display: none !important; }
  .sp .table .column {
    display: block;
    width: 100%;
    border-bottom: none;
    position: relative; }
  .sp .row {
    margin-bottom: 30px; }
  .sp tbody .column:before {
    content: attr(data-label);
    display: block;
    margin-bottom: 10px;
    font-weight: bold;
    color: #000;
    font-size: 14px;
    border-bottom: solid 1px #e1e9e9; }

/* list
--------------------------------*/
.faq_list li span {
  background: url(../img/common/icon_q.png) no-repeat 25px center;
  padding: 17px 54px 17px 89px;
  width: 100%;
  display: inline-block;
  box-sizing: border-box; }
.faq_list li .text {
  background: url(../img/common/icon_a.png) no-repeat 25px 17px;
  padding: 17px 20px 17px 89px;
  width: 100%;
  display: inline-block;
  box-sizing: border-box;
  display: none; }

.list_type11 li {
  margin-bottom: 5px; }
.list_type11 .title {
  background: url("../img/common/arrow09.png") no-repeat right 30px center;
  width: 100%;
  display: inline-block;
  padding: 10px 7px;
  box-sizing: border-box;
  background-color: #e1e9e9; }
.list_type11 .acd__btn {
  background-color: #e1e9e9;
  box-sizing: border-box;
  cursor: pointer;
  -webkit-transition: all .4s;
  transition: all .4s; }
  .list_type11 .acd__btn.open {
    background-color: #e7f6f5;
    -webkit-transition: all .4s;
    transition: all .4s; }
    .list_type11 .acd__btn.open.title {
      background: url(../img/common/arrow10.png) no-repeat right 30px center #e7f6f5; }

/* pagination
--------------------------------*/
.pagination {
  padding: 8px;
  background-clip: padding-box;
  border-radius: 3px;
  display: inline-block;
  vertical-align: baseline;
  zoom: 1;
  *display: inline;
  *vertical-align: auto;
  text-align: center;
  display: table;
  margin: 0 auto; }

.pagination > a, .pagination > span {
  float: left;
  margin-left: 5px;
  padding: 0 6px;
  min-width: 17px;
  line-height: 27px;
  height: 27px;
  width: 17px;
  font-size: 12px;
  font-weight: 500;
  text-align: center;
  text-decoration: none;
  border: #77b723 1px solid;
  border-radius: 3px; }

.rn_Paginator > .rn_PaginationLinks > ul > li {
  float: left;
  margin-left: 5px;
  padding: 0 6px;
  min-width: 17px;
  line-height: 27px;
  height: 27px;
  width: 17px;
  font-size: 12px;
  font-weight: 500;
  text-align: center;
  text-decoration: none;
  border: #77b723 1px solid;
  border-radius: 3px;
  display: inline-block;
  border-radius: 50%;
  border-width: 1px;
  border-color: #aed632;
  border-style: solid;
  background-color: #fff;
  color: #aed632;
  -webkit-transition: all .4s;
  transition: all .4s; }

.pagination :first-child {
  margin-left: 0; }

.pagination > a {
  border-radius: 50%;
  border-width: 1px;
  border-color: #aed632;
  border-style: solid;
  background-color: #fff;
  color: #aed632;
  -webkit-transition: all .4s;
  transition: all .4s; }

.pagination > a:hover {
  border-radius: 50%;
  background-color: #77b723;
  color: #fff;
  -webkit-transition: all .4s;
  transition: all .4s; }

.pagination > span, .pagination > a:active {
  border-radius: 50%;
  background-color: #77b723;
  color: #fff; }

.pagination .prev, .pagination .next {
  background-color: #aed632;
  border-color: #aed632;
  color: #fff; }

.pagination .lead {
  color: #77b723;
  border: none;
  background: none; }

/* select
--------------------------------*/
.custom-dropdown {
  position: relative;
  display: block;
  vertical-align: middle;
  margin: 0 auto;
  width: 55.7692307692%; }

.custom-dropdown select {
  background-color: #fff;
  height: 50px;
  box-sizing: border-box;
  border-radius: 8px;
  font-size: inherit;
  padding: .5em;
  padding-right: 50px;
  border: 0;
  margin: 0;
  border-radius: 3px;
  text-indent: 0.01px;
  text-overflow: '';
  -webkit-appearance: button;
  /* hide default arrow in chrome OSX */
  border: solid 1px #e1e9e9;
  width: 100%; }

.custom-dropdown::before,
.custom-dropdown::after {
  content: "";
  position: absolute;
  pointer-events: none; }

.custom-dropdown::after {
  /*  Custom dropdown arrow */
  content: url("../img/common/arrow11.png");
  height: 1em;
  line-height: 1;
  right: 17px;
  top: 50%;
  margin-top: -.5em; }

.custom-dropdown::before {
  /*  Custom dropdown arrow cover */
  width: 50px;
  right: 0;
  top: 0;
  bottom: 0;
  border-radius: 0 3px 3px 0; }

.custom-dropdown select[disabled] {
  color: rgba(0, 0, 0, 0.3); }

.custom-dropdown select[disabled]::after {
  color: rgba(0, 0, 0, 0.1); }

.custom-dropdown::before {
  background-color: #aed632; }

.custom-dropdown::after {
  color: rgba(0, 0, 0, 0.4); }

@media screen and (max-width: 46.875em) {
  .custom-dropdown {
    width: 100%; } }
/* other 
--------------------------------*/
.list02 li {
  height: 58px; }
  .list02 li a {
    line-height: 57px; }
  .list02 li .btn_2lin {
    height: 100%;
    line-height: 1.5rem; }

@media screen and (min-width: 46.9375em) {
  .kaiyu_bg {
    height: 125px; }

  .kaiyu_bg02 {
    margin-top: -60px !important; } }
@media screen and (max-width: 46.875em) {
  .kaiyu_bg {
    height: 260px; }

  .kaiyu_bg02 {
    padding: 0 3%;
    box-sizing: border-box;
    margin-top: -200px !important; } }
