@charset "UTF-8";
img {
  width: 100%;
  height: auto; }

a,
a:visited,
a:hover {
  color: inherit;
  text-decoration: none; }

button {
  padding: 0;
  background: transparent;
  box-shadow: none;
  color: inherit;
  font-size: inherit;
  border: none;
  cursor: pointer;
  font-weight: inherit; }
  _:-ms-input-placeholder, :root button .ie_btn_hack {
    position: relative !important; }
  button .ie_btn_hack:active {
    transform: translate(-1px, -1px); }
  button:not(:focus) {
    outline: none; }

body.is_fixed {
  position: fixed; }

.bold {
  font-weight: bold; }

.mt5 {
  margin-top: 5px !important; }

.mt10 {
  margin-top: 10px !important; }

.mt20 {
  margin-top: 20px !important; }

.mb5 {
  margin-bottom: 5px !important; }

/************************************************

	Global_menu

*************************************************/
.global_menu {
  width: 230px;
  position: fixed;
  top: 0;
  left: 0;
  background: #367e61;
  min-height: 100vh;
  box-shadow: 3px 0 5px 0 rgba(0, 0, 0, 0.1);
  z-index: 10;
  height: 100vh;
  overflow: auto; }
  @media screen and (max-width: 1024px) {
    .global_menu {
      width: 100%;
      position: fixed;
      min-height: auto;
      display: -webkit-flex;
      display: flex;
      height: auto; } }
  .global_menu .logo {
    font-size: 0; }
    @media screen and (max-width: 1024px) {
      .global_menu .logo {
        width: 115px; } }
    .global_menu .logo a, .global_menu .logo button {
      display: block;
      text-align: center;
      padding: 40px 10px;
      background: #fff; }
      @media screen and (max-width: 1024px) {
        .global_menu .logo a, .global_menu .logo button {
          padding: 10px;
          height: 100%;
          box-sizing: border-box;
          display: -webkit-flex;
          display: flex;
          align-items: center;
          justify-content: center; } }
      @media (hover: hover) {
        .global_menu .logo a:hover img,
        .global_menu .logo button:hover img {
          opacity: .7; } }
      _:-ms-input-placeholder:hover img, :root .global_menu .logo a:hover img,
      :root .global_menu .logo button:hover img {
        opacity: .7; }
    .global_menu .logo img {
      max-width: 150px;
      transition: opacity .3s; }
      @media screen and (max-width: 1024px) {
        .global_menu .logo img {
          max-width: 80px; } }
  @media screen and (max-width: 1024px) {
    .global_menu .global_nav {
      display: none; } }
  .global_menu .global_nav .nav_box {
    padding: 20px 20px 0; }
  .global_menu .global_nav .nav_btn {
    text-align: center;
    color: #fff;
    font-size: 1.4rem;
    font-weight: bold;
    transition: background .3s; }
    @media (hover: hover) {
      .global_menu .global_nav .nav_btn:hover {
        color: #F5FF59; }
        .global_menu .global_nav .nav_btn:hover a {
          border-color: #F5FF59; }
        .global_menu .global_nav .nav_btn:hover .cls-1 {
          fill: #F5FF59; } }
    _:-ms-input-placeholder:hover, :root .global_menu .global_nav .nav_btn:hover {
      color: #F5FF59; }
      _:-ms-input-placeholder:hover a, :root .global_menu .global_nav .nav_btn:hover a {
        border-color: #F5FF59; }
      _:-ms-input-placeholder:hover .cls-1, :root .global_menu .global_nav .nav_btn:hover .cls-1 {
        fill: #F5FF59; }
    .global_menu .global_nav .nav_btn + .nav_btn {
      margin-top: 20px; }
    .global_menu .global_nav .nav_btn a {
      border: 1px solid #fff;
      display: block;
      padding: 7px 5px;
      transition: border-color .3s, color .3s; }
    .global_menu .global_nav .nav_btn._white {
      background: #fff;
      color: #367e61; }
      .global_menu .global_nav .nav_btn._white .cls-1 {
        fill: #367e61; }
      @media (hover: hover) {
        .global_menu .global_nav .nav_btn._white:hover {
          background: #F5FF59;
          color: #367e61; }
          .global_menu .global_nav .nav_btn._white:hover .cls-1 {
            fill: #367e61; } }
      _:-ms-input-placeholder:hover, :root .global_menu .global_nav .nav_btn._white:hover {
        background: #F5FF59;
        color: #367e61; }
        _:-ms-input-placeholder:hover .cls-1, :root .global_menu .global_nav .nav_btn._white:hover .cls-1 {
          fill: #367e61; }
    .global_menu .global_nav .nav_btn._yellow {
      background: #fffa97;
      color: #4e4b00; }
      .global_menu .global_nav .nav_btn._yellow a {
        border: 1px solid #fffa97 !important; }
      .global_menu .global_nav .nav_btn._yellow .cls-1 {
        fill: #4e4b00; }
      @media (hover: hover) {
        .global_menu .global_nav .nav_btn._yellow:hover {
          background: #F5FF59;
          color: #4e4b00; }
          .global_menu .global_nav .nav_btn._yellow:hover .cls-1 {
            fill: #4e4b00; } }
      _:-ms-input-placeholder:hover, :root .global_menu .global_nav .nav_btn._yellow:hover {
        background: #F5FF59;
        color: #4e4b00; }
        _:-ms-input-placeholder:hover .cls-1, :root .global_menu .global_nav .nav_btn._yellow:hover .cls-1 {
          fill: #4e4b00; }
    .global_menu .global_nav .nav_btn svg {
      width: 100%;
      height: 100%; }
    .global_menu .global_nav .nav_btn .cls-1 {
      transition: fill .3s;
      fill: #fff; }
    .global_menu .global_nav .nav_btn [class^="ico_"] {
      position: relative;
      display: inline-block; }
      .global_menu .global_nav .nav_btn [class^="ico_"] .ico {
        display: block;
        position: absolute;
        height: 15px;
        top: 50%;
        left: 0;
        transform: translateY(-9.5px); }
    .global_menu .global_nav .nav_btn .ico_my_page {
      padding-left: 23px; }
      .global_menu .global_nav .nav_btn .ico_my_page .ico {
        width: 13px; }
    .global_menu .global_nav .nav_btn .ico_log_out {
      padding-left: 25px; }
      .global_menu .global_nav .nav_btn .ico_log_out .ico {
        width: 15px;
        left: -3px; }
    .global_menu .global_nav .nav_btn .ico_contact {
      padding-left: 28px; }
      .global_menu .global_nav .nav_btn .ico_contact .ico {
        width: 18px; }
    .global_menu .global_nav .nav_btn .ico_seminar {
      padding-left: 26px; }
      .global_menu .global_nav .nav_btn .ico_seminar .ico {
        height: 18px; }
  .global_menu .global_nav .nav_list {
    color: #fff;
    list-style: disc;
    margin-top: 25px; }
    .global_menu .global_nav .nav_list > li {
      border-top: 1px solid #699c87; }
      .global_menu .global_nav .nav_list > li:last-of-type {
        border-bottom: 1px solid #699c87; }
      .global_menu .global_nav .nav_list > li.has_list_tags {
        padding: 0; }
      .global_menu .global_nav .nav_list > li > a {
        transition: color .3s;
        padding: 10px 22px;
        display: block; }
        @media (hover: hover) {
          .global_menu .global_nav .nav_list > li > a:hover {
            color: #F5FF59; } }
        _:-ms-input-placeholder:hover, :root .global_menu .global_nav .nav_list > li > a:hover {
          color: #F5FF59; }
  .global_menu .global_nav .tag_parent {
    display: -webkit-flex;
    display: flex;
    align-items: center;
    background: #2b7155; }
    .global_menu .global_nav .tag_parent a {
      padding: 10px 10px 10px 22px;
      display: block;
      flex-grow: 1;
      position: relative;
      transition: color .3s;
      /*&::after {
          content: '';
          display: block;
          width: .8em;
          height: .8em;
          background: #fff;
          border-radius: 50%;
          position: absolute;
          top: 50%;
          left: 0;
          transform: translateY(-50%);
      }*/ }
      @media (hover: hover) {
        .global_menu .global_nav .tag_parent a:hover {
          color: #F5FF59; } }
      _:-ms-input-placeholder:hover, :root .global_menu .global_nav .tag_parent a:hover {
        color: #F5FF59; }
    .global_menu .global_nav .tag_parent .ico_accordion {
      width: 24px;
      height: 24px;
      flex-shrink: 0;
      background: #fff;
      margin-left: auto;
      margin-right: 22px;
      position: relative;
      transition: background .3s; }
      @media (hover: hover) {
        .global_menu .global_nav .tag_parent .ico_accordion:hover {
          background: #F5FF59; } }
      _:-ms-input-placeholder:hover, :root .global_menu .global_nav .tag_parent .ico_accordion:hover {
        background: #F5FF59; }
      .global_menu .global_nav .tag_parent .ico_accordion::before, .global_menu .global_nav .tag_parent .ico_accordion::after {
        content: '';
        width: 50%;
        height: 2px;
        background: #367e61;
        position: absolute;
        top: 50%;
        left: 50%; }
      .global_menu .global_nav .tag_parent .ico_accordion::before {
        transform: translate(-50%, -50%); }
      .global_menu .global_nav .tag_parent .ico_accordion::after {
        transform: translate(-50%, -50%) rotate(-90deg);
        transition: transform .3s; }
      .global_menu .global_nav .tag_parent .ico_accordion.is_open::after {
        transform: translate(-50%, -50%) rotate(0); }
  .global_menu .global_nav .list_tags {
    display: none;
    padding-bottom: 5px;
    background: #1d5f44; }
    .global_menu .global_nav .list_tags > li {
      position: relative; }
      .global_menu .global_nav .list_tags > li > a {
        display: block;
        padding: 5px 22px;
        transition: color .3s;
        line-height: 1.3;
        font-size: 1.4rem; }
        @media (hover: hover) {
          .global_menu .global_nav .list_tags > li > a:hover {
            color: #F5FF59; } }
        _:-ms-input-placeholder:hover, :root .global_menu .global_nav .list_tags > li > a:hover {
          color: #F5FF59; }
        .global_menu .global_nav .list_tags > li > a .ico_disc {
          position: relative;
          display: block;
          padding-left: 16px; }
          .global_menu .global_nav .list_tags > li > a .ico_disc::after {
            content: '';
            width: 6px;
            height: 6px;
            background: #fff;
            display: block;
            border-radius: 50%;
            position: absolute;
            top: 50%;
            left: 0;
            transform: translateY(-50%); }
  .global_menu .global_nav .nav_box02 {
    padding: 0 20px;
    margin-top: 25px; }
  .global_menu .global_nav_sp {
    margin-left: auto;
    display: none; }
    @media screen and (max-width: 1024px) {
      .global_menu .global_nav_sp {
        display: block; } }
    .global_menu .global_nav_sp .global_nav_sp_inner {
      display: -webkit-flex;
      display: flex;
      padding: 10px 0; }
    .global_menu .global_nav_sp .nav_btn {
      width: 50px;
      font-size: 1rem;
      line-height: 1.5;
      font-weight: bold;
      color: #fff;
      margin-right: 20px;
      text-align: center;
      transition: color .3s; }
      @media (hover: hover) {
        .global_menu .global_nav_sp .nav_btn:hover {
          color: #F5FF59; }
          .global_menu .global_nav_sp .nav_btn:hover .ico .cls-1 {
            fill: #F5FF59; }
          .global_menu .global_nav_sp .nav_btn:hover .ico_menu .ico span {
            background: #F5FF59; } }
      _:-ms-input-placeholder:hover, :root .global_menu .global_nav_sp .nav_btn:hover {
        color: #F5FF59; }
        _:-ms-input-placeholder:hover .ico .cls-1, :root .global_menu .global_nav_sp .nav_btn:hover .ico .cls-1 {
          fill: #F5FF59; }
        _:-ms-input-placeholder:hover .ico_menu .ico span, :root .global_menu .global_nav_sp .nav_btn:hover .ico_menu .ico span {
          background: #F5FF59; }
      .global_menu .global_nav_sp .nav_btn:last-child {
        margin-right: 10px; }
      .global_menu .global_nav_sp .nav_btn .ico {
        display: block; }
        .global_menu .global_nav_sp .nav_btn .ico .cls-1 {
          fill: #fff;
          transition: fill .3s; }
      .global_menu .global_nav_sp .nav_btn .ico_my_page .ico {
        width: 21px;
        height: 28px;
        margin: 0 auto; }
      .global_menu .global_nav_sp .nav_btn .ico_log_out .ico {
        width: 25px;
        height: 28px;
        padding-right: 5px;
        margin: 0 auto; }
      .global_menu .global_nav_sp .nav_btn .ico_menu .ico {
        width: 40px;
        height: 28px;
        position: relative; }
        .global_menu .global_nav_sp .nav_btn .ico_menu .ico span {
          display: block;
          width: 75%;
          height: 2px;
          background: #fff;
          position: absolute;
          margin: 0 auto;
          left: 0;
          right: 0;
          transition: background .3s; }
          .global_menu .global_nav_sp .nav_btn .ico_menu .ico span:nth-child(1) {
            top: 0; }
          .global_menu .global_nav_sp .nav_btn .ico_menu .ico span:nth-child(2) {
            top: 10px; }
          .global_menu .global_nav_sp .nav_btn .ico_menu .ico span:nth-child(3) {
            bottom: 05px; }

.hamburger_menu {
  width: 100%;
  height: 0vh;
  overflow: auto;
  position: fixed;
  z-index: 10;
  transition: height .3s;
  background: #367e61; }
  @media screen and (max-width: 1024px) {
    .hamburger_menu.opened {
      height: 100vh; } }
  .hamburger_menu .hamburger_menu_inner {
    width: 100%;
    padding: 15px;
    box-sizing: border-box;
    color: #fff; }
  .hamburger_menu .cls-1 {
    fill: #fff; }
  .hamburger_menu .hamburger_head {
    text-align: right; }
  .hamburger_menu .ico_close {
    display: -webkit-inline-flex;
    display: inline-flex;
    align-items: center;
    line-height: 1.5;
    font-weight: bold;
    transition: color .3s; }
    @media (hover: hover) {
      .hamburger_menu .ico_close:hover {
        color: #F5FF59; }
        .hamburger_menu .ico_close:hover .ico::before, .hamburger_menu .ico_close:hover .ico::after {
          background: #F5FF59; } }
    _:-ms-input-placeholder:hover, :root .hamburger_menu .ico_close:hover {
      color: #F5FF59; }
      _:-ms-input-placeholder:hover .ico::before, _:-ms-input-placeholder:hover .ico::after, :root .hamburger_menu .ico_close:hover .ico::before, :root .hamburger_menu .ico_close:hover .ico::after {
        background: #F5FF59; }
    .hamburger_menu .ico_close .ico {
      display: block;
      width: 18px;
      height: 18px;
      margin-right: 5px;
      position: relative; }
      .hamburger_menu .ico_close .ico::before, .hamburger_menu .ico_close .ico::after {
        content: '';
        display: block;
        height: 2px;
        width: 100%;
        background: #fff;
        position: absolute;
        top: 50%;
        left: 0;
        transition: background .3s; }
      .hamburger_menu .ico_close .ico::before {
        transform: translateY(-50%) rotate(45deg); }
      .hamburger_menu .ico_close .ico::after {
        transform: translateY(-50%) rotate(-45deg); }
  .hamburger_menu .nav_list {
    text-align: center;
    font-size: 1.8rem;
    margin-top: 20px; }
    .hamburger_menu .nav_list > li {
      border-top: 1px solid #699c87; }
      .hamburger_menu .nav_list > li > a {
        display: block;
        padding: 20px;
        transition: color .3s; }
        @media (hover: hover) {
          .hamburger_menu .nav_list > li > a:hover {
            color: #F5FF59; } }
        _:-ms-input-placeholder:hover, :root .hamburger_menu .nav_list > li > a:hover {
          color: #F5FF59; }
      .hamburger_menu .nav_list > li:last-of-type {
        border-bottom: 1px solid #699c87; }
    .hamburger_menu .nav_list .tag_parent {
      display: -webkit-flex;
      display: flex;
      align-items: center;
      background: #2b7155; }
      .hamburger_menu .nav_list .tag_parent a {
        padding: 20px 10px 20px 22px;
        display: block;
        flex-grow: 1;
        position: relative;
        transition: color .3s;
        /*&::after {
            content: '';
            display: block;
            width: .8em;
            height: .8em;
            background: #fff;
            border-radius: 50%;
            position: absolute;
            top: 50%;
            left: 0;
            transform: translateY(-50%);
        }*/ }
        @media (hover: hover) {
          .hamburger_menu .nav_list .tag_parent a:hover {
            color: #F5FF59; } }
        _:-ms-input-placeholder:hover, :root .hamburger_menu .nav_list .tag_parent a:hover {
          color: #F5FF59; }
      .hamburger_menu .nav_list .tag_parent .ico_accordion {
        width: 24px;
        height: 24px;
        flex-shrink: 0;
        background: #fff;
        margin-left: auto;
        margin-right: 22px;
        position: relative;
        transition: background .3s; }
        @media (hover: hover) {
          .hamburger_menu .nav_list .tag_parent .ico_accordion:hover {
            background: #F5FF59; } }
        _:-ms-input-placeholder:hover, :root .hamburger_menu .nav_list .tag_parent .ico_accordion:hover {
          background: #F5FF59; }
        .hamburger_menu .nav_list .tag_parent .ico_accordion::before, .hamburger_menu .nav_list .tag_parent .ico_accordion::after {
          content: '';
          width: 50%;
          height: 2px;
          background: #367e61;
          position: absolute;
          top: 50%;
          left: 50%; }
        .hamburger_menu .nav_list .tag_parent .ico_accordion::before {
          transform: translate(-50%, -50%); }
        .hamburger_menu .nav_list .tag_parent .ico_accordion::after {
          transform: translate(-50%, -50%) rotate(-90deg);
          transition: transform .3s; }
        .hamburger_menu .nav_list .tag_parent .ico_accordion.is_open::after {
          transform: translate(-50%, -50%) rotate(0); }
    .hamburger_menu .nav_list .list_tags {
      display: none;
      padding-bottom: 5px;
      background: #1d5f44; }
      .hamburger_menu .nav_list .list_tags > li {
        position: relative; }
        .hamburger_menu .nav_list .list_tags > li > a {
          display: block;
          padding: 10px 0;
          transition: color .3s;
          line-height: 1.3;
          font-size: 1.4rem;
          /*.ico_disc {
              position: relative;
              display: block;
              padding-left: 16px;
              
              &::after {
                  content: '';
                  width: 6px;
                  height: 6px;
                  background: #fff;
                  display: block;
                  border-radius: 50%;
                  position: absolute;
                  top: 50%;
                  left: 0;
                  transform: translateY(-50%);
              }
          }*/ }
          @media (hover: hover) {
            .hamburger_menu .nav_list .list_tags > li > a:hover {
              color: #F5FF59; } }
          _:-ms-input-placeholder:hover, :root .hamburger_menu .nav_list .list_tags > li > a:hover {
            color: #F5FF59; }
  .hamburger_menu .nav_btn {
    text-align: center;
    margin-top: 30px; }
    .hamburger_menu .nav_btn .ico_contact {
      border: 1px solid #fff;
      padding: 10px 25px;
      margin: 30px auto 0;
      transition: color .3s, border-color .3s; }
      @media (hover: hover) {
        .hamburger_menu .nav_btn .ico_contact:hover {
          border-color: #F5FF59;
          color: #F5FF59; }
          .hamburger_menu .nav_btn .ico_contact:hover .cls-1 {
            fill: #F5FF59; } }
      _:-ms-input-placeholder:hover, :root .hamburger_menu .nav_btn .ico_contact:hover {
        border-color: #F5FF59;
        color: #F5FF59; }
        _:-ms-input-placeholder:hover .cls-1, :root .hamburger_menu .nav_btn .ico_contact:hover .cls-1 {
          fill: #F5FF59; }
      .hamburger_menu .nav_btn .ico_contact .ico {
        display: inline-block;
        width: 15px;
        height: 11px;
        margin-right: 5px; }
      .hamburger_menu .nav_btn .ico_contact .cls-1 {
        transition: fill .3s; }
    .hamburger_menu .nav_btn .ico_seminar {
      border: 1px solid #fffa97 !important;
      padding: 10px 25px;
      margin: 30px auto 0;
      transition: color .3s, border-color .3s;
      background: #fffa97;
      color: #4e4b00; }
      @media (hover: hover) {
        .hamburger_menu .nav_btn .ico_seminar:hover {
          border-color: #F5FF59;
          color: #4e4b00; } }
      _:-ms-input-placeholder:hover, :root .hamburger_menu .nav_btn .ico_seminar:hover {
        border-color: #F5FF59;
        color: #4e4b00; }
      .hamburger_menu .nav_btn .ico_seminar .ico {
        display: inline-block;
        width: 15px;
        height: 11px;
        margin-right: 5px; }

/************************************************

	Footer

*************************************************/
.footer {
  background: #565656;
  color: #fff;
  padding: 10px 20px;
  display: -webkit-flex;
  display: flex;
  align-items: center;
  margin-top: 100px; }
  @media screen and (max-width: 767px) {
    .footer {
      display: block;
      padding: 20px 10px;
      margin-top: 60px; } }

.footer_nav {
  display: -webkit-flex;
  display: flex;
  font-size: 1.2rem; }
  @media screen and (max-width: 767px) {
    .footer_nav {
      justify-content: center; } }
  .footer_nav li:not(:first-child) {
    padding-left: 10px; }
  .footer_nav li:not(:last-child) {
    border-right: 1px solid #b3b3b3;
    padding-right: 10px; }
  @media (hover: hover) {
    .footer_nav li:hover {
      color: #F5FF59; } }
  _:-ms-input-placeholder:hover, :root .footer_nav li:hover {
    color: #F5FF59; }

.copy_right {
  font-size: 1.2rem;
  margin-left: auto; }
  @media screen and (max-width: 767px) {
    .copy_right {
      margin-top: 20px;
      text-align: center; } }

/************************************************

	Contents

*************************************************/
.main {
  margin-left: 230px;
  background: #ebf6e9;
  position: relative;
  width: calc(100% - 230px); }
  @media screen and (max-width: 1024px) {
    .main {
      margin-left: 0;
      width: 100%;
      padding-top: 63px; } }

.main_contents {
  min-height: calc(100vh - 141px); }

.contents_bg {
  background: #ebf6e9;
  background: -moz-linear-gradient(-45deg, #ebf6e9 0%, #e5f7d7 50%, #9edba0 100%);
  background: -webkit-linear-gradient(-45deg, #ebf6e9 0%, #e5f7d7 50%, #9edba0 100%);
  background: linear-gradient(135deg, #ebf6e9 0%, #e5f7d7 50%, #9edba0 100%);
  filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#ebf6e9', endColorstr='#9edba0',GradientType=1 );
  width: calc(100% - 230px);
  height: 100vh;
  position: fixed; }
  @media screen and (max-width: 1024px) {
    .contents_bg {
      margin-left: 0;
      width: 100%; } }
  .contents_bg .triangle {
    position: absolute;
    bottom: 0;
    right: 0;
    width: 406px; }

.contents {
  position: relative;
  z-index: 1; }

.contents_inner {
  max-width: 1200px;
  padding: 0 20px;
  margin: 0 auto; }
  @media screen and (max-width: 767px) {
    .contents_inner {
      padding: 0 10px; } }

/************************************************

	Title

*************************************************/
.c_top_ttl {
  position: relative;
  padding-right: 70px;
  font-size: 3.2rem;
  font-weight: normal;
  display: inline-block; }
  @media screen and (max-width: 767px) {
    .c_top_ttl {
      padding-right: 50px;
      font-size: 2.6rem; } }
  .c_top_ttl::after {
    content: '';
    display: block;
    width: 50px;
    height: 1px;
    background: #333;
    position: absolute;
    top: 50%;
    right: 0; }
    @media screen and (max-width: 767px) {
      .c_top_ttl::after {
        width: 30px; } }

/************************************************

	Btn

*************************************************/
.c_btn01 {
  text-align: center;
  color: #fff;
  font-size: 1.4rem;
  transition: background .3s; }
  .c_btn01 a {
    border: 1px solid #fff;
    display: block;
    padding: 5px 15px;
    transition: border-color .3s, color .3s; }
  @media (hover: hover) {
    .c_btn01:hover {
      color: #F5FF59; }
      .c_btn01:hover a {
        border-color: #F5FF59; }
      .c_btn01:hover [class^="ico_arrow"]::after {
        border-color: transparent transparent transparent #F5FF59; } }
  _:-ms-input-placeholder:hover, :root .c_btn01:hover {
    color: #F5FF59; }
    _:-ms-input-placeholder:hover a, :root .c_btn01:hover a {
      border-color: #F5FF59; }
    _:-ms-input-placeholder:hover [class^="ico_arrow"]::after, :root .c_btn01:hover [class^="ico_arrow"]::after {
      border-color: transparent transparent transparent #F5FF59; }

.c_btn02_ib {
  display: inline-block;
  color: #fff;
  background: #367e61;
  font-size: 1.4rem;
  transition: background .3s; }
  .c_btn02_ib a {
    border: 1px solid #367e61;
    display: block;
    padding: 5px 15px;
    transition: border-color .3s, color .3s; }
  @media (hover: hover) {
    .c_btn02_ib:hover {
      color: #F5FF59; }
      .c_btn02_ib:hover [class^="ico_arrow"]::after {
        border-color: transparent transparent transparent #F5FF59; } }
  _:-ms-input-placeholder:hover, :root .c_btn02_ib:hover {
    color: #F5FF59; }
    _:-ms-input-placeholder:hover [class^="ico_arrow"]::after, :root .c_btn02_ib:hover [class^="ico_arrow"]::after {
      border-color: transparent transparent transparent #F5FF59; }

.c_btn03 {
  color: #fff;
  background: #2b7155;
  font-size: 1.4rem;
  font-weight: bold;
  transition: background .3s;
  max-width: 230px;
  margin: 0 auto; }
  .c_btn03 a {
    border: 1px solid #2b7155;
    display: block;
    padding: 10px;
    transition: border-color .3s, color .3s;
    text-align: center; }
  @media (hover: hover) {
    .c_btn03:hover {
      color: #F5FF59; }
      .c_btn03:hover [class^="ico_arrow"]::after {
        border-color: transparent transparent transparent #F5FF59; } }
  _:-ms-input-placeholder:hover, :root .c_btn03:hover {
    color: #F5FF59; }
    _:-ms-input-placeholder:hover [class^="ico_arrow"]::after, :root .c_btn03:hover [class^="ico_arrow"]::after {
      border-color: transparent transparent transparent #F5FF59; }

.c_btn_back01 {
  color: #fff;
  background: #666;
  margin: 0 auto;
  max-width: 170px;
  font-size: 1.4rem;
  line-height: 1;
  transition: color .3s; }
  .c_btn_back01 a {
    display: block;
    padding: 10px;
    text-align: center;
    transition: border-color .3s, color .3s; }
    @media (hover: hover) {
      .c_btn_back01 a:hover {
        color: #F5FF59; }
        .c_btn_back01 a:hover [class^="ico_arrow"]::after {
          border-color: transparent #F5FF59 transparent transparent; } }
    _:-ms-input-placeholder:hover, :root .c_btn_back01 a:hover {
      color: #F5FF59; }
      _:-ms-input-placeholder:hover [class^="ico_arrow"]::after, :root .c_btn_back01 a:hover [class^="ico_arrow"]::after {
        border-color: transparent #F5FF59 transparent transparent; }

.c_box_btn_right {
  text-align: right; }

/************************************************

	Ico

*************************************************/
.ico_arrow {
  position: relative;
  padding-right: 20px; }
  .ico_arrow::after {
    content: '';
    display: block;
    width: 0;
    height: 0;
    border-style: solid;
    border-width: 5px 0 5px 5px;
    border-color: transparent transparent transparent #ffffff;
    position: absolute;
    top: 50%;
    right: 0;
    transform: translateY(-50%);
    transition: border-color .3s; }

.ico_arrow_l {
  position: relative;
  padding-left: 20px; }
  .ico_arrow_l::after {
    content: '';
    display: block;
    width: 0;
    height: 0;
    border-style: solid;
    border-width: 5px 5px 5px 0;
    border-color: transparent #ffffff transparent transparent;
    position: absolute;
    top: 50%;
    left: 0;
    transform: translateY(-50%);
    transition: border-color .3s; }

.ico_log_in {
  position: relative;
  display: inline-block;
  padding-left: 23px; }
  .ico_log_in .ico {
    display: block;
    position: absolute;
    height: 15px;
    top: 50%;
    left: -3px;
    transform: translateY(-9.5px);
    width: 15px; }
    .ico_log_in .ico .cls-1 {
      fill: #fff; }

.ico_blank01 {
  position: relative;
  display: inline-block;
  padding-right: 26px;
  background: url(/assets/front/img/ico_blank.svg) no-repeat right center/16px 12px; }

.ico_blank02 {
  position: relative;
  display: inline-block;
  padding-right: 26px; }
  .ico_blank02::before, .ico_blank02::after {
    content: '';
    display: block;
    width: 13px;
    height: 9px;
    position: absolute;
    top: 50%;
    right: 0;
    color: #367e61;
    transform: translateY(-50%); }
  .ico_blank02::before {
    border-top: 1px solid;
    border-left: 1px solid;
    margin-right: 3px;
    margin-top: -3px; }
  .ico_blank02::after {
    border: 1px solid; }

.ico_illust {
  display: inline-block;
  padding-left: 68px;
  background: url(/assets/front/img/ico_illust_news.svg) no-repeat left center/58px 58px; }
  @media screen and (max-width: 767px) {
    .ico_illust {
      padding-left: 54px;
      background-size: 46px 46px; } }

.ico_illust_ttl01 {
  display: inline-block;
  padding-left: 68px;
  background: url(/assets/front/img/ico_illust_ttl01.svg) no-repeat left center/58px 42px; }
  @media screen and (max-width: 767px) {
    .ico_illust_ttl01 {
      padding-left: 54px;
      background-size: 46px 34px; } }

.ico_illust_ttl02 {
  display: inline-block;
  padding-left: 68px;
  background: url(/assets/front/img/ico_illust_ttl02.svg) no-repeat 10px center/45px 47px; }
  @media screen and (max-width: 767px) {
    .ico_illust_ttl02 {
      padding-left: 54px;
      background-size: 36px 38px; } }

.ico_illust_ttl03 {
  display: inline-block;
  padding-left: 68px;
  background: url(/assets/front/img/ico_illust_ttl03.svg) no-repeat 10px center/40px 46px; }
  @media screen and (max-width: 767px) {
    .ico_illust_ttl03 {
      padding-left: 54px;
      background-size: 32px 37px; } }

/************************************************

	under

*************************************************/
.under_head {
  background: rgba(255, 255, 255, 0.5);
  padding: 45px 20px; }
  @media screen and (max-width: 767px) {
    .under_head {
      padding: 30px 10px; } }
  .under_head .under_ttl {
    margin: 0 auto; }

.block_pagenation {
  margin: 40px auto 0;
  max-width: 400px;
  padding: 0 45px;
  position: relative; }
  @media screen and (max-width: 767px) {
    .block_pagenation {
      margin-top: 20px; } }
  .block_pagenation .btn_prev, .block_pagenation .btn_next {
    width: 15px;
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    font-size: 0;
    transition: opacity .3s; }
    @media (hover: hover) {
      .block_pagenation .btn_prev:hover,
      .block_pagenation .btn_next:hover {
        opacity: .7; } }
    _:-ms-input-placeholder:hover, :root .block_pagenation .btn_prev:hover,
    :root .block_pagenation .btn_next:hover {
      opacity: .7; }
  .block_pagenation .btn_prev {
    left: 20px; }
  .block_pagenation .btn_next {
    right: 20px; }
  .block_pagenation .box_pages {
    display: -webkit-flex;
    display: flex;
    flex-wrap: wrap;
    justify-content: center; }
  .block_pagenation .pages {
    display: -webkit-flex;
    display: flex;
    flex-wrap: wrap; }
    .block_pagenation .pages li {
      padding: 0 10px; }
      .block_pagenation .pages li a {
        display: block;
        width: 20px;
        font-size: 1.6rem;
        color: #919191;
        text-align: center;
        transition: color .3s; }
        @media (hover: hover) {
          .block_pagenation .pages li a:hover {
            color: #367e61; } }
        _:-ms-input-placeholder:hover, :root .block_pagenation .pages li a:hover {
          color: #367e61; }
        .block_pagenation .pages li a.current {
          color: #367e61;
          font-weight: bold;
          pointer-events: none;
          cursor: default; }

/************************************************

	form

*************************************************/
input[type="text"],
input[type="email"],
input[type="password"],
textarea {
  box-sizing: border-box;
  padding: 10px;
  border: 1px solid #CCC;
  font-size: 1.5rem; }
  input[type="text"]:focus,
  input[type="email"]:focus,
  input[type="password"]:focus,
  textarea:focus {
    outline: 1px solid #367e61;
    border: 1px solid #367e61;
    box-shadow: 0 0 3px 0 #367e61; }

.form01 .form_row {
  display: -webkit-flex;
  display: flex;
  align-items: center; }
  @media screen and (max-width: 767px) {
    .form01 .form_row {
      display: block; } }
  .form01 .form_row + .form_row {
    margin-top: 10px; }
  .form01 .form_row dt {
    width: 95px;
    flex-basis: 95px;
    margin-right: 20px;
    flex-shrink: 0; }
  .form01 .form_row dd {
    width: 100%; }

/*.input_text {
	padding: 7px 10px;
	border: 1px solid $green01;
}*/
.input_wfull {
  width: 100%; }

/************************************************

	utility

*************************************************/
.c_text_u_line {
  text-decoration: underline; }

.d_ib {
  display: inline-block; }

.sp_br {
  display: none; }
  @media screen and (max-width: 767px) {
    .sp_br {
      display: inline-block; } }

/************************************************

	modal

*************************************************/
@keyframes mmfadeIn {
  from {
    opacity: 0; }
  to {
    opacity: 1; } }
@keyframes mmfadeOut {
  from {
    opacity: 1; }
  to {
    opacity: 0; } }
@keyframes mmslideIn {
  from {
    transform: translateY(15%); }
  to {
    transform: translateY(0); } }
@keyframes mmslideOut {
  from {
    transform: translateY(0); }
  to {
    transform: translateY(-10%); } }
.c_modal {
  display: none; }

.c_modal.is-open {
  display: block; }

.c_modal[aria-hidden="false"] .c_modal_cover {
  animation: mmfadeIn 0.3s cubic-bezier(0, 0, 0.2, 1); }

.c_modal[aria-hidden="false"] .c_modal_contents_inner {
  animation: mmslideIn 0.3s cubic-bezier(0, 0, 0.2, 1); }

.c_modal[aria-hidden="true"] .c_modal_cover {
  animation: mmfadeOut 0.3s cubic-bezier(0, 0, 0.2, 1); }

.c_modal[aria-hidden="true"] .c_modal_contents_inner {
  animation: mmslideOut 0.3s cubic-bezier(0, 0, 0.2, 1); }

.c_modal .modal__container,
.c_modal .modal__overlay {
  will-change: transform; }

.c_modal .c_modal_cover {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100vh;
  z-index: 100;
  background: rgba(0, 0, 0, 0.7); }
.c_modal .c_modal_contents {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  width: calc(100% - 40px);
  max-width: 600px;
  max-height: 60vh; }
  @media screen and (max-width: 767px) {
    .c_modal .c_modal_contents {
      width: calc(100% - 20px); } }
.c_modal .c_modal_contents_inner {
  margin: 0 20px;
  border-top: 5px solid #367e61;
  border-bottom: 5px solid #367e61;
  background: #ebf2ef;
  box-shadow: 3px 3px 15px 0 rgba(0, 0, 0, 0.2);
  padding: 20px;
  box-sizing: border-box; }
  @media screen and (max-width: 767px) {
    .c_modal .c_modal_contents_inner {
      margin: 0 10px; } }
.c_modal .c_modal_btns {
  margin-top: 20px;
  display: -webkit-flex;
  display: flex;
  justify-content: center; }
  .c_modal .c_modal_btns .c_modal_btn01 {
    display: block;
    padding: 5px 15px;
    border: 1px solid #666;
    background: #fff;
    text-align: center;
    width: 150px;
    margin-right: 20px;
    transition: opacity .3s; }
    @media (hover: hover) {
      .c_modal .c_modal_btns .c_modal_btn01:hover {
        opacity: .7; } }
    _:-ms-input-placeholder:hover, :root .c_modal .c_modal_btns .c_modal_btn01:hover {
      opacity: .7; }
  .c_modal .c_modal_btns .c_modal_btn02 {
    display: block;
    padding: 5px 15px;
    border: 1px solid #367e61;
    color: #fff;
    background: #367e61;
    text-align: center;
    width: 150px;
    transition: opacity .3s; }
    @media (hover: hover) {
      .c_modal .c_modal_btns .c_modal_btn02:hover {
        opacity: .7; } }
    _:-ms-input-placeholder:hover, :root .c_modal .c_modal_btns .c_modal_btn02:hover {
      opacity: .7; }

/************************************************

	codeigniter

*************************************************/
#codeigniter_profiler {
  position: relative; }
  @media screen and (min-width: 1025px) {
    #codeigniter_profiler {
      padding-left: 220px !important; } }
  #codeigniter_profiler code > span {
    word-break: break-all; }

/************************************************

	pop-up

*************************************************/
.popup_area {
  display: none;
  width: 100%;
  height: 100%;
  background: rgba(0, 0, 0, 0.6);
  position: fixed;
  z-index: 10; }

.popup_contents {
  width: 50vw;
  min-height: 400px;
  position: absolute;
  top: 50%;
  left: 40%;
  transform: translate(-50%, -50%);
  -webkit-transform: translate(-50%, -50%);
  -ms-transform: translate(-50%, -50%);
  background-color: #fff;
  z-index: 2;
  padding: 20px 40px; }
  @media screen and (max-width: 1024px) {
    .popup_contents {
      width: 70vw;
      min-height: 380px;
      position: fixed;
      top: 50%;
      left: 50%;
      transform: translate(-50%, -50%);
      margin: 0 !important;
      padding: 10px 20px; } }
  .popup_contents #pop_title {
    font-size: 160%;
    font-weight: bold;
    margin-bottom: 20px;
    background: #e7e7e7;
    padding: 10px 20px; }
    @media screen and (max-width: 767px) {
      .popup_contents #pop_title {
        font-size: 120%;
        line-height: 1.5;
        padding: 10px; } }
  .popup_contents #pop_contents {
    height: 250px;
    overflow: auto;
    padding-right: 12px;
    margin-bottom: 30px; }
    @media screen and (max-width: 767px) {
      .popup_contents #pop_contents {
        height: 220px; } }
    .popup_contents #pop_contents img {
      width: auto;
      height: auto;
      max-width: 100%; }
    .popup_contents #pop_contents h1, .popup_contents #pop_contents h2, .popup_contents #pop_contents h3, .popup_contents #pop_contents h4, .popup_contents #pop_contents h5, .popup_contents #pop_contents h6 {
      margin-bottom: 15px; }
    .popup_contents #pop_contents h1 {
      font-size: 2.2rem;
      line-height: 1.5;
      font-weight: bold;
      margin-top: 30px; }
    .popup_contents #pop_contents h2 {
      font-weight: bold;
      font-size: 2rem;
      line-height: 1.5;
      border-bottom: 1px solid;
      margin-top: 30px; }
    .popup_contents #pop_contents h3 {
      font-weight: bold;
      font-size: 2rem;
      line-height: 1.5;
      margin-top: 30px; }
    .popup_contents #pop_contents h4 {
      font-weight: bold;
      font-size: 1.8rem;
      line-height: 1.5;
      display: inline-block;
      border-bottom: 2px solid;
      margin-top: 30px; }
    .popup_contents #pop_contents h5 {
      font-weight: bold;
      font-size: 1.8rem;
      line-height: 1.5;
      margin-top: 30px; }
    .popup_contents #pop_contents h6 {
      font-weight: bold;
      font-size: 1.4rem;
      line-height: 1.5;
      margin-top: 30px; }
    .popup_contents #pop_contents pre {
      padding: 5px 20px;
      background: rgba(54, 126, 97, 0.1); }
    .popup_contents #pop_contents blockquote {
      padding: 10px;
      margin: 30px 10px 16px;
      border-left: 5px solid #438db5;
      line-height: 17.28px; }
    .popup_contents #pop_contents ul {
      list-style: disc;
      margin-left: 25px; }
    .popup_contents #pop_contents ol {
      margin-left: 25px; }
    .popup_contents #pop_contents table {
      border-collapse: collapse;
      width: 100%; }
      .popup_contents #pop_contents table th,
      .popup_contents #pop_contents table td {
        border: 1px solid #888;
        padding: 5px 10px; }
    .popup_contents #pop_contents a,
    .popup_contents #pop_contents a:visited {
      color: #156bc7; }
    .popup_contents #pop_contents a {
      transition: opacity .3s; }
      @media (hover: hover) {
        .popup_contents #pop_contents a:hover {
          opacity: .7; } }
      _:-ms-input-placeholder:hover, :root .popup_contents #pop_contents a:hover {
        opacity: .7; }
    .popup_contents #pop_contents p {
      margin-top: 0;
      margin-bottom: 1rem; }
  .popup_contents .btn_area {
    text-align: center; }
  .popup_contents button {
    background: #eee;
    padding: 8px 20px;
    border: 1px solid #888;
    border-radius: 5px; }

/************************************************

	seminer_link

*************************************************/
.seminer_link {
  display: none; }
  @media screen and (max-width: 1024px) {
    .seminer_link {
      display: block;
      background: #fffa97;
      padding: 8px 20px 5px;
      text-align: center;
      color: #4e4b00 !important;
      font-size: 1.8rem;
      text-decoration: underline;
      border-bottom: 1px solid #ddd; } }
  .seminer_link .ico {
    margin-right: 8px;
    vertical-align: middle; }

html {
  font-size: 62.5%; }

body {
  font-family: "Helvetica Neue", Arial, "Hiragino Kaku Gothic ProN", "Hiragino Sans", "BIZ UDPGothic", Meiryo, sans-serif;
  line-height: 1.75;
  font-size: 1.5em;
  color: #333; }

.sec_pickup {
  padding-top: 40px; }
  @media screen and (max-width: 767px) {
    .sec_pickup {
      padding-top: 25px; } }
  .sec_pickup .c_top_ttl::after {
    transform: translateY(-4px); }
  .sec_pickup + .sec_news {
    margin-top: 60px; }

.block_pickup {
  margin-top: 10px;
  display: -webkit-flex;
  display: flex;
  flex-wrap: wrap; }
  .block_pickup.one > * {
    width: 100%;
    max-width: 80%;
    margin: 0 auto; }
    @media screen and (max-width: 767px) {
      .block_pickup.one > * {
        max-width: none; } }
  .block_pickup.two > * {
    width: 49%; }
    @media screen and (max-width: 767px) {
      .block_pickup.two > * {
        width: 49%;
        margin-right: 0; }
        .block_pickup.two > *:nth-of-type(odd) {
          margin-right: 20px; }
        .block_pickup.two > *:nth-of-type(n+3) {
          margin-top: 20px; } }
    .block_pickup.two > *:nth-of-type(odd) {
      margin-right: 2%; }
      @media screen and (max-width: 767px) {
        .block_pickup.two > *:nth-of-type(odd) {
          margin-right: 0; } }
    .block_pickup.two > *:nth-of-type(n+3) {
      margin-top: 2%; }
      @media screen and (max-width: 767px) {
        .block_pickup.two > *:nth-of-type(n+3) {
          margin-right: 0; } }
  .block_pickup.three {
    justify-content: center; }
    @media screen and (max-width: 767px) {
      .block_pickup.three {
        justify-content: left; } }
    .block_pickup.three > * {
      width: 32%;
      margin-right: 2%; }
      @media screen and (max-width: 767px) {
        .block_pickup.three > * {
          width: 49%;
          margin-right: 0; }
          .block_pickup.three > *:nth-of-type(odd) {
            margin-right: 2%; }
          .block_pickup.three > *:nth-of-type(n+3) {
            margin-top: 20px; } }
      .block_pickup.three > *:nth-of-type(3) {
        margin-right: 0; }
  .block_pickup.overfour > * {
    width: 23%;
    margin-right: 2%; }
    @media screen and (max-width: 767px) {
      .block_pickup.overfour > * {
        width: 49%;
        margin-right: 0; }
        .block_pickup.overfour > *:nth-of-type(odd) {
          margin-right: 2%; }
        .block_pickup.overfour > *:nth-of-type(n+3) {
          margin-top: 20px; } }
    .block_pickup.overfour > *:nth-of-type(4n) {
      margin-right: 0; }
    .block_pickup.overfour > *:nth-of-type(n+5) {
      margin-top: 20px; }
  .block_pickup .pickup_box {
    position: relative;
    background: #fff;
    transition: opacity .3s;
    box-sizing: border-box; }
    @media (hover: hover) {
      .block_pickup .pickup_box:hover .pickup_thumb::after {
        opacity: .7;
        transform: translate(0, -50%); }
      .block_pickup .pickup_box:hover .pickup_thumb::before {
        opacity: 1; }
      .block_pickup .pickup_box:hover .pickup_thumb img {
        transform: scale(1.1, 1.1); } }
    _:-ms-input-placeholder:hover .pickup_thumb::after, :root .block_pickup .pickup_box:hover .pickup_thumb::after {
      opacity: .7;
      transform: translate(0, -50%); }
    _:-ms-input-placeholder:hover .pickup_thumb::before, :root .block_pickup .pickup_box:hover .pickup_thumb::before {
      opacity: 1; }
    _:-ms-input-placeholder:hover .pickup_thumb img, :root .block_pickup .pickup_box:hover .pickup_thumb img {
      transform: scale(1.1, 1.1); }
    @media screen and (max-width: 767px) {
      .block_pickup .pickup_box.is-thumb_only .pickup_thumb {
        height: 0 !important;
        padding-top: 83%; }
        .block_pickup .pickup_box.is-thumb_only .pickup_thumb img {
          object-position: center; } }
    .block_pickup .pickup_box a {
      display: block;
      padding: 15px;
      height: 100%;
      box-sizing: border-box; }
      @media screen and (max-width: 767px) {
        .block_pickup .pickup_box a {
          padding: 10px; } }
    .block_pickup .pickup_box .pickup_thumb {
      position: relative;
      font-size: 0;
      overflow: hidden;
      height: 0;
      padding-top: 56%;
      border: 1px solid #ddd; }
      .block_pickup .pickup_box .pickup_thumb img {
        transition: transform .5s;
        object-fit: cover;
        font-family: 'object-fit: cover;';
        width: 100%;
        height: 100%;
        position: absolute;
        top: 0;
        left: 0;
        z-index: 0; }
  .block_pickup .pickup_label {
    position: absolute;
    top: 0;
    left: 0;
    background: #fff;
    padding: 5px 10px;
    text-align: center;
    font-weight: bold;
    border-left: 3px solid;
    letter-spacing: 1px;
    z-index: 1; }
    .block_pickup .pickup_label.category_news {
      color: #367e61; }
    .block_pickup .pickup_label.category_seminar {
      color: #2984e2; }
    .block_pickup .pickup_label.category_important {
      color: #c90000; }
  .block_pickup .pickup_ttl {
    margin-top: 8px;
    width: 100%;
    font-size: 1.7rem;
    box-sizing: border-box;
    line-height: 1.5; }
  .block_pickup .pickup_category_list {
    display: -webkit-flex;
    display: flex;
    flex-wrap: wrap;
    margin: 5px -5px 0; }
    .block_pickup .pickup_category_list li {
      padding: 2px 10px;
      border-radius: 20px;
      background: #438db5;
      color: #fff;
      margin: 5px 3px 0;
      font-size: 1.0rem; }
      @media screen and (max-width: 767px) {
        .block_pickup .pickup_category_list li {
          padding: 2px 8px;
          font-size: 1.0rem; } }

.sec_news_bnr {
  margin-top: 60px; }
  .sec_news_bnr .list_bnr {
    display: -webkit-flex;
    display: flex;
    flex-wrap: wrap; }
    .sec_news_bnr .list_bnr li {
      width: 49%;
      font-size: 0;
      background: #fff; }
      @media screen and (max-width: 767px) {
        .sec_news_bnr .list_bnr li {
          width: 100%; } }
      .sec_news_bnr .list_bnr li:nth-of-type(odd) {
        margin-right: 2%; }
        @media screen and (max-width: 767px) {
          .sec_news_bnr .list_bnr li:nth-of-type(odd) {
            margin-right: 0; } }
      .sec_news_bnr .list_bnr li:nth-of-type(n+3) {
        margin-top: 2%; }
      @media screen and (max-width: 767px) {
        .sec_news_bnr .list_bnr li:nth-of-type(n+2) {
          margin-top: 2%; } }
      .sec_news_bnr .list_bnr li a {
        transition: opacity .3s; }
        @media (hover: hover) {
          .sec_news_bnr .list_bnr li a:hover {
            opacity: .7; } }
        _:-ms-input-placeholder:hover, :root .sec_news_bnr .list_bnr li a:hover {
          opacity: .7; }

.sec_iryou {
  padding-top: 60px; }
  .sec_iryou .c_top_ttl::after {
    transform: translateY(-4px); }
  .sec_iryou .c_box_btn_right {
    margin-top: 30px; }

.block_iryou {
  margin-top: 10px;
  display: -webkit-flex;
  display: flex;
  flex-wrap: wrap; }
  .block_iryou.one > * {
    width: 100%;
    max-width: 80%;
    margin: 0 auto; }
    @media screen and (max-width: 767px) {
      .block_iryou.one > * {
        max-width: none; } }
  .block_iryou.two > * {
    width: 49%; }
    @media screen and (max-width: 767px) {
      .block_iryou.two > * {
        width: 49%;
        margin-right: 0; }
        .block_iryou.two > *:nth-of-type(odd) {
          margin-right: 2%; }
        .block_iryou.two > *:nth-of-type(n+3) {
          margin-top: 20px; } }
    .block_iryou.two > *:nth-of-type(odd) {
      margin-right: 2%; }
      @media screen and (max-width: 767px) {
        .block_iryou.two > *:nth-of-type(odd) {
          margin-right: 0; } }
  .block_iryou.three {
    justify-content: center; }
    @media screen and (max-width: 767px) {
      .block_iryou.three {
        justify-content: left; } }
    .block_iryou.three > * {
      width: 32%;
      margin-right: 2%; }
      @media screen and (max-width: 767px) {
        .block_iryou.three > * {
          width: 49%;
          margin-right: 0; }
          .block_iryou.three > *:nth-of-type(odd) {
            margin-right: 2%; }
          .block_iryou.three > *:nth-of-type(n+3) {
            margin-top: 20px; } }
      .block_iryou.three > *:nth-of-type(3) {
        margin-right: 0; }
  .block_iryou.overfour > * {
    width: 23%;
    margin-right: 2%; }
    @media screen and (max-width: 767px) {
      .block_iryou.overfour > * {
        width: 49%;
        margin-right: 0; }
        .block_iryou.overfour > *:nth-of-type(odd) {
          margin-right: 2%; }
        .block_iryou.overfour > *:nth-of-type(n+3) {
          margin-top: 20px; } }
    .block_iryou.overfour > *:nth-of-type(4n) {
      margin-right: 0; }
    .block_iryou.overfour > *:nth-of-type(n+5) {
      margin-top: 20px; }
  .block_iryou .iryou_box {
    position: relative;
    background: #fff;
    transition: opacity .3s;
    box-sizing: border-box; }
    @media (hover: hover) {
      .block_iryou .iryou_box:hover .iryou_thumb::after {
        opacity: .7;
        transform: translate(0, -50%); }
      .block_iryou .iryou_box:hover .iryou_thumb::before {
        opacity: 1; }
      .block_iryou .iryou_box:hover .iryou_thumb img {
        transform: scale(1.1, 1.1); } }
    _:-ms-input-placeholder:hover .iryou_thumb::after, :root .block_iryou .iryou_box:hover .iryou_thumb::after {
      opacity: .7;
      transform: translate(0, -50%); }
    _:-ms-input-placeholder:hover .iryou_thumb::before, :root .block_iryou .iryou_box:hover .iryou_thumb::before {
      opacity: 1; }
    _:-ms-input-placeholder:hover .iryou_thumb img, :root .block_iryou .iryou_box:hover .iryou_thumb img {
      transform: scale(1.1, 1.1); }
    .block_iryou .iryou_box a {
      display: block;
      padding: 15px;
      height: 100%;
      box-sizing: border-box; }
    .block_iryou .iryou_box .iryou_thumb {
      position: relative;
      font-size: 0;
      overflow: hidden;
      height: 0;
      padding-top: 56%;
      border: 1px solid #ddd; }
      .block_iryou .iryou_box .iryou_thumb img {
        transition: transform .5s;
        object-fit: cover;
        font-family: 'object-fit: cover;';
        width: 100%;
        height: 100%;
        position: absolute;
        top: 0;
        left: 0;
        z-index: 0; }
  .block_iryou .iryou_label {
    position: absolute;
    top: 0;
    left: 0;
    background: #fff;
    padding: 5px 10px;
    text-align: center;
    font-weight: bold;
    border-left: 3px solid;
    letter-spacing: 1px;
    z-index: 1; }
    .block_iryou .iryou_label.category_news {
      color: #367e61; }
    .block_iryou .iryou_label.category_seminar {
      color: #2984e2; }
    .block_iryou .iryou_label.category_important {
      color: #c90000; }
  .block_iryou .iryou_ttl {
    margin-top: 8px;
    width: 100%;
    font-size: 1.7rem;
    box-sizing: border-box;
    line-height: 1.5; }
  .block_iryou .iryou_category_list {
    display: -webkit-flex;
    display: flex;
    flex-wrap: wrap;
    margin: 5px -5px 0; }
    .block_iryou .iryou_category_list li {
      padding: 2px 10px;
      border-radius: 20px;
      background: #438db5;
      color: #fff;
      margin: 5px 3px 0;
      font-size: 1.0rem; }

.sec_fukurou {
  padding-top: 60px; }
  .sec_fukurou .c_top_ttl::after {
    transform: translateY(-4px); }
  .sec_fukurou .c_box_btn_right {
    margin-top: 30px; }

.block_fukurou {
  margin-top: 10px;
  display: -webkit-flex;
  display: flex;
  flex-wrap: wrap; }
  .block_fukurou > * {
    width: calc((100% - 6%)/4);
    margin-right: 2%; }
    _:-ms-input-placeholder, :root .block_fukurou > * {
      width: calc((100% - 6%)/4 - 1px); }
    @media screen and (max-width: 767px) {
      .block_fukurou > * {
        width: 49%;
        margin-right: 2%; } }
    .block_fukurou > *:nth-of-type(4) {
      margin-right: 0; }
    @media screen and (max-width: 767px) {
      .block_fukurou > *:nth-of-type(2n) {
        margin-right: 0; } }
    @media screen and (max-width: 767px) {
      .block_fukurou > *:nth-of-type(n+3) {
        margin-top: 20px; } }
  .block_fukurou .fukurou_box {
    position: relative;
    background: #fff; }
    @media (hover: hover) {
      .block_fukurou .fukurou_box:hover .fukurou_thumb::after {
        opacity: .7;
        transform: translate(0, -50%); }
      .block_fukurou .fukurou_box:hover .fukurou_thumb::before {
        opacity: 1; }
      .block_fukurou .fukurou_box:hover .fukurou_thumb img {
        transform: scale(1.05, 1.05); } }
    _:-ms-input-placeholder:hover .fukurou_thumb::after, :root .block_fukurou .fukurou_box:hover .fukurou_thumb::after {
      opacity: .7;
      transform: translate(0, -50%); }
    _:-ms-input-placeholder:hover .fukurou_thumb::before, :root .block_fukurou .fukurou_box:hover .fukurou_thumb::before {
      opacity: 1; }
    _:-ms-input-placeholder:hover .fukurou_thumb img, :root .block_fukurou .fukurou_box:hover .fukurou_thumb img {
      transform: scale(1.05, 1.05); }
    .block_fukurou .fukurou_box .fukurou_thumb {
      position: relative;
      font-size: 0;
      overflow: hidden;
      height: 0;
      padding-top: 70.8%; }
      .block_fukurou .fukurou_box .fukurou_thumb::after {
        content: '';
        display: block;
        width: 0;
        height: 0;
        border-style: solid;
        border-width: 10px 0 10px 10px;
        border-color: transparent transparent transparent #333;
        position: absolute;
        top: 50%;
        right: 20px;
        transform: translate(-10px, -50%);
        opacity: 0;
        transition: opacity .3s, transform .3s; }
      .block_fukurou .fukurou_box .fukurou_thumb img {
        transition: transform 1s;
        object-fit: cover;
        font-family: 'object-fit: cover;';
        width: 100%;
        height: 100%;
        position: absolute;
        top: 0;
        left: 0;
        z-index: 0; }
  .block_fukurou .fukurou_label {
    position: absolute;
    top: 0;
    left: 0;
    background: #fff;
    padding: 5px 10px;
    text-align: center;
    font-weight: bold;
    border-left: 3px solid;
    letter-spacing: 1px;
    z-index: 1; }
    .block_fukurou .fukurou_label.category_news {
      color: #367e61; }
    .block_fukurou .fukurou_label.category_seminar {
      color: #2984e2; }
    .block_fukurou .fukurou_label.category_important {
      color: #c90000; }
  .block_fukurou .fukurou_ttl {
    position: absolute;
    bottom: 0;
    left: 0;
    width: 100%;
    padding: 5px 10px;
    color: #fff;
    font-size: 1.5rem;
    box-sizing: border-box;
    background: rgba(0, 0, 0, 0.6); }

.sec_news {
  background: -moz-linear-gradient(left, rgba(235, 246, 233, 0) 0%, rgba(255, 255, 255, 0.7) 35%);
  background: -webkit-linear-gradient(left, rgba(235, 246, 233, 0) 0%, rgba(255, 255, 255, 0.7) 35%);
  background: linear-gradient(to right, rgba(235, 246, 233, 0) 0%, rgba(255, 255, 255, 0.7) 35%);
  filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#00ebf6e9', endColorstr='#ffffff',GradientType=1 );
  overflow: hidden; }
  @media screen and (max-width: 767px) {
    .sec_news {
      background: #fff;
      margin-right: 10px;
      margin-left: 10px; } }
  .sec_news + .sec_news {
    margin-top: 40px; }
  .sec_news .contents_inner {
    display: -webkit-flex;
    display: flex; }
    @media screen and (max-width: 767px) {
      .sec_news .contents_inner {
        display: block;
        padding: 0; } }
  .sec_news .news_box_l {
    background: #449155;
    width: 320px;
    display: -webkit-flex;
    display: flex;
    align-items: center;
    justify-content: center;
    position: relative;
    padding-right: 20px; }
    @media screen and (max-width: 1024px) {
      .sec_news .news_box_l {
        width: 310px; } }
    @media screen and (max-width: 767px) {
      .sec_news .news_box_l {
        width: 100%;
        padding: 20px 10px;
        box-sizing: border-box; } }
    .sec_news .news_box_l::after {
      content: '';
      display: block;
      background: #449155;
      width: 50vw;
      height: 100%;
      position: absolute;
      top: 0;
      right: 0;
      z-index: 1; }
      @media screen and (max-width: 767px) {
        .sec_news .news_box_l::after {
          display: none; } }
    .sec_news .news_box_l .box_l_inner {
      position: relative;
      z-index: 2; }
      @media screen and (max-width: 767px) {
        .sec_news .news_box_l .box_l_inner {
          display: -webkit-flex;
          display: flex;
          align-items: center;
          width: 100%; } }
  .sec_news .news_box_r {
    width: 100%; }
  .sec_news .sec_news_ttl {
    font-size: 2.4rem;
    line-height: 1.5;
    font-weight: normal;
    color: #fff; }
    @media screen and (max-width: 767px) {
      .sec_news .sec_news_ttl {
        font-size: 2.4rem;
        display: -webkit-flex;
        display: flex;
        align-items: center; } }
  .sec_news .list_news {
    padding: 35px 0 35px 50px; }
    @media screen and (max-width: 1024px) {
      .sec_news .list_news {
        padding: 35px 0 35px 30px; } }
    @media screen and (max-width: 767px) {
      .sec_news .list_news {
        padding: 0 10px; } }
    .sec_news .list_news li {
      border-bottom: 2px dotted #bbb;
      font-size: 1.4rem;
      font-feature-settings: "palt"; }
      @media screen and (max-width: 767px) {
        .sec_news .list_news li:last-child {
          border-bottom: none; } }
      .sec_news .list_news li a {
        display: block;
        padding: 10px 0 5px;
        transition: background .3s;
        display: -webkit-flex;
        display: flex;
        align-items: baseline; }
        @media screen and (max-width: 767px) {
          .sec_news .list_news li a {
            padding: 15px 0; } }
        @media (hover: hover) {
          .sec_news .list_news li a:hover {
            background: #e2f3dd;
            background: #fff; } }
        _:-ms-input-placeholder:hover, :root .sec_news .list_news li a:hover {
          background: #e2f3dd;
          background: #fff; }
      .sec_news .list_news li .date {
        display: inline-block;
        font-size: 1.2rem;
        color: #666;
        margin-right: 20px; }
    .sec_news .list_news .ico_attention {
      display: inline-block;
      color: #fff;
      background: #449155;
      padding: 6px;
      margin-left: 8px;
      font-size: 1.2rem;
      line-height: 1;
      vertical-align: baseline;
      transform: translateY(-0.2em); }
  .sec_news .c_btn01 {
    margin-top: 40px; }
    @media screen and (max-width: 767px) {
      .sec_news .c_btn01 {
        margin-top: 0;
        margin-left: auto; } }

.sec_service {
  padding-top: 60px; }
  .sec_service .c_top_ttl::after {
    transform: translateY(-4px); }
  .sec_service .c_box_btn_right {
    margin-top: 30px; }

.block_service {
  margin-top: 10px;
  display: -webkit-flex;
  display: flex;
  flex-wrap: wrap;
  align-items: flex-start; }
  .block_service > * {
    width: 32%;
    margin-right: 2%; }
    @media screen and (max-width: 767px) {
      .block_service > * {
        width: 100%;
        margin-right: 0; } }
    .block_service > *:nth-child(3n) {
      margin-right: 0; }
    .block_service > *:nth-child(n+4) {
      margin-top: 2%; }
      @media screen and (max-width: 767px) {
        .block_service > *:nth-child(n+4) {
          margin-top: 0; } }
    @media screen and (max-width: 767px) {
      .block_service > *:nth-child(n+2) {
        margin-top: 2%; } }
  .block_service .box_service {
    background: #fff; }
    @media (hover: hover) {
      .block_service .box_service:hover .service_box_info {
        opacity: 1; } }
    _:-ms-input-placeholder:hover .service_box_info, :root .block_service .box_service:hover .service_box_info {
      opacity: 1; }
    .block_service .box_service .service_box_upper {
      position: relative; }
    .block_service .box_service .item_logo {
      display: -webkit-flex;
      display: flex;
      padding: 30px 20px;
      align-items: center;
      justify-content: center;
      min-height: 190px;
      box-sizing: border-box; }
      @media screen and (max-width: 767px) {
        .block_service .box_service .item_logo {
          min-height: 150px; } }
      .block_service .box_service .item_logo img {
        width: 75%; }
    .block_service .box_service .service_box_info {
      background: rgba(0, 0, 0, 0.9);
      color: #fff;
      padding: 20px;
      position: absolute;
      top: 0;
      left: 0;
      width: 100%;
      box-sizing: border-box;
      height: 100%;
      opacity: 0;
      transition: opacity .3s;
      overflow: auto; }
      @media (hover: none) {
        .block_service .box_service .service_box_info {
          border-top: 1px solid #e6e6e6;
          padding-bottom: 0; } }
      @media screen and (max-width: 767px) {
        .block_service .box_service .service_box_info {
          border-top: 1px solid #e6e6e6;
          padding-bottom: 0; } }
      .block_service .box_service .service_box_info .item_name {
        font-size: 1.6rem;
        font-weight: bold; }
@media screen and (min-width: 769px) and (hover: hover) {
  .block_service .box_service .service_box_info .item_name {
    color: #fff !important; } }

      .block_service .box_service .service_box_info .item_text {
        font-size: 1.4rem;
        line-height: 2;
        margin-top: 5px;
        letter-spacing: 1px; }
        @media (hover: none) {
          .block_service .box_service .service_box_info .item_text {
            line-height: 1.75; } }
        @media screen and (max-width: 767px) {
          .block_service .box_service .service_box_info .item_text {
            line-height: 1.75; } }
      @media (hover: none) {
        .block_service .box_service .service_box_info {
          background: #fff;
          position: relative;
          opacity: 1;
          color: #333; } }
      @media screen and (max-width: 767px) {
        .block_service .box_service .service_box_info {
          background: #fff;
          position: relative;
          opacity: 1;
          color: #333; } }
    .block_service .box_service .service_box_btn {
      padding: 10px;
      border-top: 1px solid #e6e6e6; }
      @media (hover: none) {
        .block_service .box_service .service_box_btn {
          border-top: none; } }
      @media screen and (max-width: 767px) {
        .block_service .box_service .service_box_btn {
          border-top: none; } }
      .block_service .box_service .service_box_btn .btn_service {
        background: #e2840e;
        color: #fff;
        font-weight: bold;
        font-size: 1.4rem;
        text-align: center;
        padding: 10px; }
        @media (hover: hover) {
          .block_service .box_service .service_box_btn .btn_service:hover {
            opacity: .7; } }
        _:-ms-input-placeholder:hover, :root .block_service .box_service .service_box_btn .btn_service:hover {
          opacity: .7; }

.login .login_hide {
  display: none; }
.login .form01 {
  font-size: 1.4rem; }
  .login .form01 input {
    font-size: 1.4rem; }
.login .c_btn03 {
  margin-top: 30px; }

.sec_login {
  display: -webkit-flex;
  display: flex;
  align-items: center;
  justify-content: center;
  min-height: calc(100vh - 141px); }
  @media screen and (max-width: 767px) {
    .sec_login {
      padding-top: 20px; } }

.login_inner {
  max-width: 620px;
  width: 100%;
  margin: 0 20px;
  padding-top: 40px; }

.login_service_name {
  max-width: 230px;
  margin: 0 auto; }

.login_text {
  margin-top: 40px;
  text-align: center;
  line-height: 1.5; }
  @media screen and (max-width: 767px) {
    .login_text {
      margin-top: 20px; } }

.box_login {
  margin-top: 20px;
  border-top: 10px solid #367e61;
  border-bottom: 10px solid #367e61;
  padding: 30px 50px;
  background: rgba(255, 255, 255, 0.7);
  box-shadow: 3px 3px 15px 0 rgba(0, 0, 0, 0.1); }
  @media screen and (max-width: 767px) {
    .box_login {
      padding: 20px 30px; } }

.login_btn .ico .cls-1 {
  transition: fill .3s; }
@media (hover: hover) {
  .login_btn:hover .ico .cls-1 {
    fill: #F5FF59; } }
_:-ms-input-placeholder:hover .ico .cls-1, :root .login_btn:hover .ico .cls-1 {
  fill: #F5FF59; }

.login_text01 {
  color: #666;
  font-size: 1.4rem;
  text-align: center;
  margin-top: 15px;
  line-height: 1.5; }
  .login_text01 a {
    transition: opacity .3s; }
    @media (hover: hover) {
      .login_text01 a:hover {
        opacity: .7; } }
    _:-ms-input-placeholder:hover, :root .login_text01 a:hover {
      opacity: .7; }

.box_error {
  margin-top: 20px;
  border: 1px solid #b95252;
  background: #ffd3d3;
  padding: 10px 15px;
  box-shadow: 3px 3px 5px 0 rgba(195, 0, 0, 0.1); }
  .box_error p {
    color: #222; }

.box_terms {
  background: #fff;
  margin-top: 10px;
  border: 1px solid #aaa;
  padding: 20px;
  max-height: 30vh;
  overflow: auto;
  font-size: 1.4rem;
  box-sizing: border-box; }
  @media screen and (max-width: 767px) {
    .box_terms {
      padding: 20px 10px; } }
  .box_terms h2 {
    font-size: 1.8rem;
    text-align: center;
    margin-bottom: 10px; }
  .box_terms h3 {
    margin-top: 20px;
    margin-bottom: 5px;
    font-size: 1.5rem; }
  .box_terms a {
    color: #367e61;
    text-decoration: underline;
    word-break: break-all;
    display: inline-block; }
  .box_terms .box_terms_list01 {
    padding-left: 2rem; }
    .box_terms .box_terms_list01 > li + li {
      margin-top: 10px; }
  .box_terms .box_terms_list02 {
    list-style: none;
    counter-reset: number 0;
    margin-top: 5px;
    margin-bottom: 5px; }
    .box_terms .box_terms_list02 > li {
      padding-left: 2.6rem; }
      .box_terms .box_terms_list02 > li::before {
        counter-increment: number 1;
        content: "（" counter(number) "） ";
        margin-left: -2.6rem; }
      .box_terms .box_terms_list02 > li + li {
        margin-top: 10px; }
  .box_terms .right {
    text-align: right;
    margin-top: 20px; }

/************************************************

	news_index news02_index

*************************************************/
.sec_news_index {
  min-height: calc(100vh - 141px); }
  .sec_news_index .under_head {
    text-align: center; }
    .sec_news_index .under_head .under_ttl {
      display: inline-block;
      font-weight: bold;
      color: #367e61;
      font-size: 3.2rem; }
      @media screen and (max-width: 767px) {
        .sec_news_index .under_head .under_ttl {
          font-size: 2.8rem; } }
      .sec_news_index .under_head .under_ttl .ico_illust {
        display: inline-block;
        background: url(/assets/front/img/ico_illust_news.svg) no-repeat left center/56px 36px;
        padding-left: 66px; }
  .sec_news_index .news_index_inner {
    max-width: 770px;
    margin: 0 auto;
    padding-top: 40px; }
    @media screen and (max-width: 767px) {
      .sec_news_index .news_index_inner {
        padding-top: 20px; } }
  .sec_news_index .list_news {
    padding: 0 20px; }
    .sec_news_index .list_news li {
      border-bottom: 2px dotted #bbb;
      font-size: 1.4rem;
      font-feature-settings: "palt"; }
      .sec_news_index .list_news li a {
        display: block;
        padding: 10px 0 5px;
        transition: background .3s;
        display: -webkit-flex;
        display: flex;
        align-items: baseline; }
        @media (hover: hover) {
          .sec_news_index .list_news li a:hover {
            background: rgba(255, 255, 255, 0.5); } }
        _:-ms-input-placeholder:hover, :root .sec_news_index .list_news li a:hover {
          background: rgba(255, 255, 255, 0.5); }
      .sec_news_index .list_news li .date {
        display: inline-block;
        font-size: 1.4rem;
        color: #666;
        margin-right: 20px; }
      .sec_news_index .list_news li .news_ttl {
        font-size: 1.6rem; }
    .sec_news_index .list_news .ico_attention {
      display: inline-block;
      color: #fff;
      background: #449155;
      padding: 6px;
      margin-left: 8px;
      font-size: 1.2rem;
      line-height: 1;
      vertical-align: baseline;
      transform: translateY(-0.2em); }

/************************************************

	news_index_thumb

*************************************************/
.news_index_thumb .under_head {
  text-align: center; }
  .news_index_thumb .under_head .under_ttl {
    display: inline-block;
    font-weight: bold;
    color: #367e61;
    font-size: 3.6rem; }
    @media screen and (max-width: 767px) {
      .news_index_thumb .under_head .under_ttl {
        font-size: 2.8rem; } }
    .news_index_thumb .under_head .under_ttl .ico_illust {
      display: inline-block;
      background: url(/assets/front/img/ico_illust_news.svg) no-repeat left center/56px 36px;
      padding-left: 66px; }

.sec_news_index_thumb {
  min-height: calc(100vh - 141px); }
  .sec_news_index_thumb .news_index_inner {
    max-width: 720px;
    margin: 0 auto;
    padding-top: 40px; }
    @media screen and (max-width: 767px) {
      .sec_news_index_thumb .news_index_inner {
        padding-top: 20px; } }
  .sec_news_index_thumb .list_news {
    padding-top: 40px;
    display: -webkit-flex;
    display: flex;
    flex-wrap: wrap; }
    @media screen and (max-width: 767px) {
      .sec_news_index_thumb .list_news {
        padding-top: 20px; } }
    .sec_news_index_thumb .list_news li {
      width: calc((100% - 30px)/2);
      border-bottom: 2px dotted #bbb;
      font-feature-settings: "palt";
      padding-bottom: 10px; }
      @media screen and (max-width: 767px) {
        .sec_news_index_thumb .list_news li {
          width: 100%; } }
      .sec_news_index_thumb .list_news li:nth-child(odd) {
        margin-right: 30px; }
        @media screen and (max-width: 767px) {
          .sec_news_index_thumb .list_news li:nth-child(odd) {
            margin-right: 0; } }
      .sec_news_index_thumb .list_news li:nth-child(n+3) {
        margin-top: 30px; }
      @media screen and (max-width: 767px) {
        .sec_news_index_thumb .list_news li:nth-child(n+1) {
          margin-top: 30px; } }
      .sec_news_index_thumb .list_news li a {
        display: -webkit-flex;
        display: flex;
        align-items: center;
        transition: background .3s; }
        @media (hover: hover) {
          .sec_news_index_thumb .list_news li a:hover {
            background: rgba(255, 255, 255, 0.5); } }
        _:-ms-input-placeholder:hover, :root .sec_news_index_thumb .list_news li a:hover {
          background: rgba(255, 255, 255, 0.5); }
        .sec_news_index_thumb .list_news li a .photo {
          font-size: 0;
          margin-right: 20px;
          width: 100%;
          flex-basis: 100%;
          flex-shrink: 0;
          max-width: 140px;
          height: 99px; }
          @media screen and (max-width: 767px) {
            .sec_news_index_thumb .list_news li a .photo {
              max-width: 110px; } }
          .sec_news_index_thumb .list_news li a .photo img {
            object-fit: cover;
            font-family: 'object-fit: cover;';
            width: 100%;
            height: 100%; }
        .sec_news_index_thumb .list_news li a .date {
          display: inline-block;
          font-size: 1.4rem;
          color: #666;
          margin-right: 20px; }
        .sec_news_index_thumb .list_news li a .news_ttl {
          font-size: 1.6rem; }

/************************************************

	news_detail

*************************************************/
.news_detail .under_head {
  text-align: center; }
  .news_detail .under_head .under_ttl {
    display: inline-block;
    font-weight: bold;
    color: #464646;
    font-size: 2.6rem;
    line-height: 4.0rem;
    max-width: 1000px; }
    @media screen and (max-width: 767px) {
      .news_detail .under_head .under_ttl {
        font-size: 2.0rem;
        line-height: 3.0rem; } }
    .news_detail .under_head .under_ttl .ico_illust {
      display: inline-block;
      background: url(/assets/front/img/ico_illust_news.svg) no-repeat left center/56px 36px;
      padding-left: 66px; }

.sec_news_detail {
  min-height: calc(100vh - 141px); }
  .sec_news_detail .news_detail_inner {
    max-width: 1000px;
    margin: 0 auto;
    padding-top: 40px; }
    @media screen and (max-width: 767px) {
      .sec_news_detail .news_detail_inner {
        padding-top: 20px; } }
  .sec_news_detail .c_btn_back01 {
    margin-top: 30px; }

.block_news_detail {
  padding: 20px;
  background: rgba(255, 255, 255, 0.7);
  box-shadow: 3px 3px 5px 0 rgba(0, 0, 0, 0.1);
  margin: 0 10px; }
  .block_news_detail .detail_head {
    display: -webkit-flex;
    display: flex;
    align-items: center; }
    .block_news_detail .detail_head .category {
      font-size: 1.7rem;
      line-height: 1.3;
      color: #367e61;
      padding: 0 10px;
      border-left: 5px solid #367e61;
      margin-right: 20px; }
    .block_news_detail .detail_head .date {
      font-size: 1.4rem;
      line-height: 1.3;
      color: #666; }
  .block_news_detail .detail_ttl {
    margin-top: 20px;
    font-size: 2.2rem;
    line-height: 1.5;
    font-weight: bold; }
  .block_news_detail .detail_list_tags {
    margin-top: 10px;
    display: -webkit-flex;
    display: flex;
    flex-wrap: wrap; }
    .block_news_detail .detail_list_tags li {
      margin-top: 10px;
      background: #438db5;
      color: #fff;
      font-size: 1.4rem;
      line-height: 1;
      margin-right: 10px;
      padding: 5px 10px;
      border-radius: 1em;
      font-weight: bold; }
  .block_news_detail .detail_body {
    margin-top: 1.75rem; }
  .block_news_detail .medidata_body > div::before {
    content: '　'; }
  .block_news_detail #detail_body > *:first-child {
    margin-top: 0; }
  .block_news_detail #detail_body img {
    width: auto;
    height: auto;
    max-width: 100%; }
  .block_news_detail #detail_body h1, .block_news_detail #detail_body h2, .block_news_detail #detail_body h3, .block_news_detail #detail_body h4, .block_news_detail #detail_body h5, .block_news_detail #detail_body h6 {
    margin-bottom: 15px; }
  .block_news_detail #detail_body h1 {
    font-size: 2.2rem;
    line-height: 1.5;
    font-weight: bold;
    margin-top: 30px; }
  .block_news_detail #detail_body h2 {
    font-weight: bold;
    font-size: 2rem;
    line-height: 1.5;
    border-bottom: 1px solid;
    margin-top: 30px; }
  .block_news_detail #detail_body h3 {
    font-weight: bold;
    font-size: 2rem;
    line-height: 1.5;
    margin-top: 30px; }
  .block_news_detail #detail_body h4 {
    font-weight: bold;
    font-size: 1.8rem;
    line-height: 1.5;
    display: inline-block;
    border-bottom: 2px solid;
    margin-top: 30px; }
  .block_news_detail #detail_body h5 {
    font-weight: bold;
    font-size: 1.8rem;
    line-height: 1.5;
    margin-top: 30px; }
  .block_news_detail #detail_body h6 {
    font-weight: bold;
    font-size: 1.4rem;
    line-height: 1.5;
    margin-top: 30px; }
  .block_news_detail #detail_body pre {
    padding: 5px 20px;
    background: rgba(54, 126, 97, 0.1); }
  .block_news_detail #detail_body blockquote {
    padding: 10px;
    margin: 30px 10px 16px;
    border-left: 5px solid #438db5;
    line-height: 17.28px; }
  .block_news_detail #detail_body ul {
    list-style: disc;
    margin-left: 25px; }
  .block_news_detail #detail_body ol {
    margin-left: 25px; }
  .block_news_detail #detail_body table {
    border-collapse: collapse;
    width: 100%; }
    .block_news_detail #detail_body table th,
    .block_news_detail #detail_body table td {
      border: 1px solid #888;
      padding: 5px 10px; }
  .block_news_detail #detail_body a,
  .block_news_detail #detail_body a:visited {
    color: #156bc7; }
  .block_news_detail #detail_body a {
    transition: opacity .3s; }
    @media (hover: hover) {
      .block_news_detail #detail_body a:hover {
        opacity: .7; } }
    _:-ms-input-placeholder:hover, :root .block_news_detail #detail_body a:hover {
      opacity: .7; }
  .block_news_detail #detail_body p {
    margin-top: 0;
    margin-bottom: 1rem; }
  .block_news_detail .box_files {
    margin-top: 50px;
    border-top: 1px solid #bfbfbf;
    border-bottom: 1px solid #bfbfbf;
    padding: 10px 0; }
    .block_news_detail .box_files a {
      transition: opacity .3s; }
      @media (hover: hover) {
        .block_news_detail .box_files a:hover {
          opacity: .7; } }
      _:-ms-input-placeholder:hover, :root .block_news_detail .box_files a:hover {
        opacity: .7; }
  .block_news_detail .detail_file_list {
    display: -webkit-flex;
    display: flex;
    flex-wrap: wrap;
    margin-left: 0 !important; }
    .block_news_detail .detail_file_list li {
      list-style: none; }
      .block_news_detail .detail_file_list li::after {
        content: '|';
        margin-left: 20px;
        margin-right: 20px; }
      .block_news_detail .detail_file_list li:last-child::after {
        display: none; }

/************************************************

	pages

*************************************************/
.page {
  min-height: calc(100vh - 141px); }
  .page .under_head {
    text-align: center; }
    .page .under_head .under_ttl {
      display: inline-block;
      font-weight: bold;
      color: #367e61;
      font-size: 3.2rem;
      line-height: 4.0rem;
      max-width: 1000px; }
      @media screen and (max-width: 767px) {
        .page .under_head .under_ttl {
          font-size: 2.0rem;
          line-height: 3.0rem; } }
      .page .under_head .under_ttl .ico_illust {
        display: inline-block;
        background: url(/assets/front/img/ico_illust_news.svg) no-repeat left center/56px 36px;
        padding-left: 66px; }
  .page .page_inner {
    max-width: 1000px;
    margin: 0 auto;
    padding-top: 40px; }
    .page .page_inner .block_page_detail {
      padding: 40px 20px;
      background: rgba(255, 255, 255, 0.7);
      box-shadow: 3px 3px 5px 0 rgba(0, 0, 0, 0.1);
      margin: 0 10px; }
      .page .page_inner .block_page_detail .c_top_ttl {
        margin-bottom: 10px; }
    .page .page_inner .box01 {
      padding-top: 30px; }
      .page .page_inner .box01 ul {
        padding-left: 30px; }
  .page .mt10 {
    margin-top: 10px; }

/************************************************

	calender

*************************************************/
.p-calender {
  	/************************************************
  
  		modal
  
  	*************************************************/ }
  .p-calender .contents__inner {
    min-height: calc(100vh - 141px); }
  .p-calender .under_head {
    text-align: center;
    padding: 42px 20px; }
    @media screen and (max-width: 767px) {
      .p-calender .under_head {
        padding: 30px 10px; } }
    .p-calender .under_head .under_ttl {
      display: inline-block;
      font-weight: bold;
      color: #367e61;
      font-size: 3.6rem; }
      @media screen and (max-width: 767px) {
        .p-calender .under_head .under_ttl {
          font-size: 2.8rem; } }
      .p-calender .under_head .under_ttl .ico_illust {
        display: inline-block;
        background: url(/assets/front/img/ico_calender_ttl.svg) no-repeat left center/46px 48px;
        padding-left: 56px; }
  .p-calender .calendar {
    padding: 20px 30px; }
    @media screen and (max-width: 767px) {
      .p-calender .calendar {
        padding: 20px 10px; } }
    .p-calender .calendar .calendar__head {
      background: #fff;
      padding: 10px;
      display: -webkit-flex;
      display: flex; }
      @media screen and (max-width: 767px) {
        .p-calender .calendar .calendar__head {
          display: block;
          padding: 5px; } }
      .p-calender .calendar .calendar__head .calendar__head__right {
        display: -webkit-flex;
        display: flex;
        align-items: center;
        width: 100%; }
    .p-calender .calendar .calendar__controler {
      display: -webkit-flex;
      display: flex;
      margin-right: 15px;
      flex-shrink: 0; }
    .p-calender .calendar .calendar__btn {
      background: #367e61;
      border: 1px solid #367e61;
      line-height: 1;
      padding: 3px 10px;
      margin-right: 10px;
      transition: opacity .3s; }
      @media (hover: hover) {
        .p-calender .calendar .calendar__btn:hover {
          opacity: 0.7; } }
      _:-ms-input-placeholder:hover, :root .p-calender .calendar .calendar__btn:hover {
        opacity: 0.7; }
      @media screen and (max-width: 767px) {
        .p-calender .calendar .calendar__btn {
          padding: 8px 10px; } }
      .p-calender .calendar .calendar__btn.calendar__btn--white {
        color: #367e61;
        padding: 3px 7px;
        background: #fff; }
    .p-calender .calendar .calendar__ico_arrow {
      width: 12px;
      height: 17px; }
      .p-calender .calendar .calendar__ico_arrow.calendar__ico_arrow--double {
        width: 22px; }
    .p-calender .calendar .calendar__title {
      font-size: 2rem;
      font-weight: bold;
      margin-right: 20px; }
      @media screen and (max-width: 767px) {
        .p-calender .calendar .calendar__title {
          margin-top: 10px; } }
    .p-calender .calendar .calendar__toggle_btns {
      margin-left: auto; }
      @media screen and (max-width: 767px) {
        .p-calender .calendar .calendar__toggle_btns {
          margin-top: 10px; } }
      .p-calender .calendar .calendar__toggle_btns .calendar__toggle_btns__btn {
        width: 36px;
        height: 30px;
        border: 1px solid #c9c9c9;
        padding: 7px;
        font-size: 0;
        transition: background .3s; }
        .p-calender .calendar .calendar__toggle_btns .calendar__toggle_btns__btn:hover {
          background: #e1ece7; }
        .p-calender .calendar .calendar__toggle_btns .calendar__toggle_btns__btn.is-active {
          border-color: #367e61;
          background: #367e61;
          cursor: auto; }
          .p-calender .calendar .calendar__toggle_btns .calendar__toggle_btns__btn.is-active .calendar__ico_view {
            -webkit-filter: brightness(0) invert(1);
            filter: brightness(0) invert(1); }
    .p-calender .calendar .calendar__body {
      background: #fff;
      padding: 10px;
      margin-top: 10px;
      max-height: calc(100vh - 313px);
      overflow-y: auto;
      overflow-x: hidden;
      overscroll-behavior: none; }
      @media screen and (max-width: 767px) {
        .p-calender .calendar .calendar__body {
          max-height: inherit;
          padding: 5px; } }
    .p-calender .calendar .calendar__table {
      width: 100%;
      box-sizing: border-box;
      table-layout: fixed; }
      .p-calender .calendar .calendar__table thead {
        font-size: 1.6rem;
        width: 100%; }
        @media screen and (max-width: 767px) {
          .p-calender .calendar .calendar__table thead {
            font-size: 1.4rem; } }
        .p-calender .calendar .calendar__table thead th {
          width: 14.28%;
          text-align: center;
          padding-bottom: 5px; }
          .p-calender .calendar .calendar__table thead th:nth-child(1) span {
            display: block;
            background: #faeeed; }
          .p-calender .calendar .calendar__table thead th:nth-child(7) span {
            display: block;
            background: #e8f2f9; }
      .p-calender .calendar .calendar__table tbody {
        margin-top: 5px; }
        .p-calender .calendar .calendar__table tbody:first-child {
          margin-top: 5px; }
          .p-calender .calendar .calendar__table tbody:first-child tr {
            padding-top: 5px; }
      .p-calender .calendar .calendar__table tr {
        width: 100%; }
      .p-calender .calendar .calendar__table td {
        width: 14.28%;
        border-top: 1px solid #c9c9c9;
        padding: 5px;
        padding-bottom: 10px;
        padding-right: 0;
        font-size: 1.4rem;
        line-height: 1; }
        .p-calender .calendar .calendar__table td:nth-child(1), .p-calender .calendar .calendar__table td.is-holiday {
          background: #faeeed; }
        .p-calender .calendar .calendar__table td:nth-child(7) {
          background: #e8f2f9; }
        .p-calender .calendar .calendar__table td.is-today {
          background: #b5cdc4; }
    .p-calender .calendar .h_table {
      font-size: 1.4rem; }
      @media screen and (max-width: 767px) {
        .p-calender .calendar .h_table {
          display: -webkit-flex;
          display: flex;
          flex-wrap: wrap; } }
      .p-calender .calendar .h_table .h_table__row {
        display: -webkit-flex;
        display: flex;
        border-top: 2px solid #c9c9c9;
        box-sizing: border-box; }
        @media screen and (max-width: 767px) {
          .p-calender .calendar .h_table .h_table__row {
            display: block;
            width: 50%;
            position: relative; } }
        @media screen and (max-width: 414px) {
          .p-calender .calendar .h_table .h_table__row {
            width: 100%; } }
        @media screen and (max-width: 767px) {
          .p-calender .calendar .h_table .h_table__row:nth-child(2n) {
            border-right: 2px solid #c9c9c9;
            border-left: 2px solid #c9c9c9; } }
        @media screen and (max-width: 767px) {
          .p-calender .calendar .h_table .h_table__row:nth-child(2n-1) {
            border-right: 2px solid #c9c9c9; } }
        @media screen and (max-width: 414px) {
          .p-calender .calendar .h_table .h_table__row:nth-child(2n-1) {
            border-left: 2px solid #c9c9c9; } }
        .p-calender .calendar .h_table .h_table__row:last-child {
          border-bottom: 2px solid #c9c9c9; }
        @media screen and (max-width: 767px) {
          .p-calender .calendar .h_table .h_table__row:nth-last-of-type(2) {
            border-bottom: 2px solid #c9c9c9; } }
        @media screen and (max-width: 414px) {
          .p-calender .calendar .h_table .h_table__row:nth-last-of-type(2) {
            border-bottom: none; } }
        .p-calender .calendar .h_table .h_table__row.h_table__row--head {
          text-align: center;
          font-weight: bold;
          background: #e1ece7;
          border-top: 2px solid #c9c9c9; }
          @media screen and (max-width: 767px) {
            .p-calender .calendar .h_table .h_table__row.h_table__row--head {
              display: none; } }
      .p-calender .calendar .h_table .h_table__date {
        width: 6em;
        padding: 10px;
        flex-shrink: 0;
        border-right: 1px solid #c9c9c9;
        text-align: center;
        font-weight: bold; }
        @media screen and (max-width: 767px) {
          .p-calender .calendar .h_table .h_table__date {
            padding: 5px 10px 0;
            border: none;
            width: 100%;
            box-sizing: border-box;
            background: #e1ece7;
            text-align: left; } }
      .p-calender .calendar .h_table .h_table__time {
        width: 8em;
        padding: 10px;
        flex-shrink: 0;
        border-right: 1px solid #c9c9c9; }
        @media screen and (max-width: 767px) {
          .p-calender .calendar .h_table .h_table__time {
            box-sizing: border-box;
            width: 100%;
            border: none;
            padding-top: 5px;
            padding-bottom: 5px;
            background: #e1ece7; } }
      .p-calender .calendar .h_table .h_table__maker {
        width: 7em;
        padding: 10px;
        flex-shrink: 0;
        border-right: 1px solid #c9c9c9; }
        @media screen and (max-width: 767px) {
          .p-calender .calendar .h_table .h_table__maker {
            width: 100%;
            border: none;
            box-sizing: border-box;
            padding-top: 0; } }
        @media screen and (max-width: 767px) {
          .p-calender .calendar .h_table .h_table__maker::before {
            content: 'メーカー：'; } }
      .p-calender .calendar .h_table .h_table__title {
        width: 100%;
        padding: 10px;
        border-right: 1px solid #c9c9c9;
        font-size: 1.3rem;
        box-sizing: border-box; }
        @media screen and (max-width: 767px) {
          .p-calender .calendar .h_table .h_table__title {
            padding-top: 5px;
            border: none; } }
        .p-calender .calendar .h_table .h_table__title button {
          font-weight: bold;
          font-size: 1.4rem;
          text-decoration: underline;
          text-underline-offset: 3px;
          font-feature-settings: 'palt';
          transition: color .3s;
          text-align: left;
          margin-bottom: 5px; }
          @media (hover: hover) {
            .p-calender .calendar .h_table .h_table__title button:hover {
              color: #367e61; } }
          _:-ms-input-placeholder:hover, :root .p-calender .calendar .h_table .h_table__title button:hover {
            color: #367e61; }
          @media screen and (max-width: 767px) {
            .p-calender .calendar .h_table .h_table__title button {
              margin-bottom: 10px; } }
      .p-calender .calendar .h_table .h_table__speaker {
        width: calc((100% - 38em) / 2);
        padding: 10px;
        flex-shrink: 0;
        border-right: 1px solid #c9c9c9; }
        @media screen and (max-width: 767px) {
          .p-calender .calendar .h_table .h_table__speaker {
            width: 100%;
            border: none;
            box-sizing: border-box;
            padding-top: 0; } }
        @media screen and (max-width: 767px) {
          .p-calender .calendar .h_table .h_table__speaker::before {
            content: '講師：'; } }
      .p-calender .calendar .h_table .h_table__remind {
        width: 8em;
        padding: 10px;
        flex-shrink: 0;
        text-align: center;
        display: -webkit-flex;
        display: flex;
        align-items: center;
        justify-content: center; }
        @media screen and (max-width: 767px) {
          .p-calender .calendar .h_table .h_table__remind {
            position: absolute;
            width: fit-content;
            top: 5px;
            right: 5px;
            padding: 0; } }
        .p-calender .calendar .h_table .h_table__remind .h_table__remind__checkbox {
          width: fit-content;
          cursor: pointer; }
          .p-calender .calendar .h_table .h_table__remind .h_table__remind__checkbox input {
            position: absolute;
            opacity: 0;
            width: 0;
            height: 0;
            margin: 0; }
            .p-calender .calendar .h_table .h_table__remind .h_table__remind__checkbox input:checked + .h_table__remind__ico {
              -webkit-filter: grayscale(0%) brightness(1);
              filter: grayscale(0%) brightness(1); }
          .p-calender .calendar .h_table .h_table__remind .h_table__remind__checkbox .h_table__remind__ico {
            width: 21px;
            height: 24px;
            -webkit-filter: grayscale(100%) brightness(1.7);
            filter: grayscale(100%) brightness(1.7);
            transition: filter .3s; }
            .p-calender .calendar .h_table .h_table__remind .h_table__remind__checkbox .h_table__remind__ico:hover {
              -webkit-filter: grayscale(75%) brightness(1.7);
              filter: grayscale(75%) brightness(1.7); }
    .p-calender .calendar .calendar__events {
      height: 70px;
      overflow-y: auto;
      overflow-x: hidden;
      overscroll-behavior: none;
      margin-top: 7px; }
      @media screen and (max-width: 767px) {
        .p-calender .calendar .calendar__events {
          height: 100px; } }
      .p-calender .calendar .calendar__events li {
        padding-right: 5px; }
        .p-calender .calendar .calendar__events li + li {
          margin-top: 5px; }
        .p-calender .calendar .calendar__events li button {
          display: block;
          overflow: hidden;
          width: 100%;
          min-height: 16px;
          text-align-last: left;
          padding: 1px 3px;
          box-sizing: border-box;
          word-break: keep-all;
          white-space: nowrap;
          font-feature-settings: "palt";
          background: #f0f0f0;
          border: 1px solid #c9c9c9;
          transition: opacity .3s; }
          @media (hover: hover) {
            .p-calender .calendar .calendar__events li button:hover {
              opacity: 0.7; } }
          _:-ms-input-placeholder:hover, :root .p-calender .calendar .calendar__events li button:hover {
            opacity: 0.7; }
          @media screen and (max-width: 767px) {
            .p-calender .calendar .calendar__events li button {
              padding: 5px 3px; } }
          .p-calender .calendar .calendar__events li button.is-alert {
            background: #ffff70;
            padding-left: 24px;
            position: relative; }
            .p-calender .calendar .calendar__events li button.is-alert::before {
              content: '';
              display: inline-block;
              background: url("../img/ico_alert.svg") no-repeat center/14px 16px;
              width: 14px;
              height: 16px;
              position: absolute;
              top: 50%;
              left: 5px;
              transform: translateY(-50%); }
    .p-calender .calendar .calendar__day {
      display: block;
      text-align: right;
      padding-right: 5px; }
    .p-calender .calendar .js-calender {
      display: none; }
      .p-calender .calendar .js-calender.is-show {
        display: block; }
  .p-calender .footer {
    margin-top: 0; }
@keyframes mmfadeIn {
  from {
    opacity: 0; }
  to {
    opacity: 1; } }
@keyframes mmfadeOut {
  from {
    opacity: 1; }
  to {
    opacity: 0; } }
@keyframes mmslideIn {
  from {
    transform: translateY(15%); }
  to {
    transform: translateY(0); } }
@keyframes mmslideOut {
  from {
    transform: translateY(0); }
  to {
    transform: translateY(-10%); } }
  .p-calender .modal {
    display: none; }
    .p-calender .modal.is-open {
      display: block; }
    .p-calender .modal[aria-hidden="false"] .modal__cover {
      animation: mmfadeIn 0.3s cubic-bezier(0, 0, 0.2, 1); }
    .p-calender .modal[aria-hidden="false"] .modal__contents_inner {
      animation: mmslideIn 0.3s cubic-bezier(0, 0, 0.2, 1); }
    .p-calender .modal[aria-hidden="true"] .modal__cover {
      animation: mmfadeOut 0.3s cubic-bezier(0, 0, 0.2, 1); }
    .p-calender .modal[aria-hidden="true"] .modal__contents_inner {
      animation: mmslideOut 0.3s cubic-bezier(0, 0, 0.2, 1); }
    .p-calender .modal .modal__container,
    .p-calender .modal .modal__overlay {
      will-change: transform; }
    .p-calender .modal .modal__cover {
      position: fixed;
      top: 0;
      left: 0;
      width: 100%;
      height: 100vh;
      z-index: 100;
      background: rgba(63, 126, 101, 0.8); }
    .p-calender .modal .modal__contents {
      position: absolute;
      top: 50%;
      left: 50%;
      transform: translate(-50%, -50%);
      width: 100%;
      max-width: 800px;
      max-height: 90vh;
      padding-inline: 40px;
      box-sizing: border-box; }
      @media screen and (max-width: 767px) {
        .p-calender .modal .modal__contents {
          padding-inline: 20px; } }
    .p-calender .modal .modal__contents_inner {
      margin: 0 auto;
      background: #fff;
      position: relative;
      padding: 25px 40px;
      box-sizing: border-box; }
      @media screen and (max-width: 767px) {
        .p-calender .modal .modal__contents_inner {
          padding: 20px 10px; } }
    .p-calender .modal .modal__scroller {
      max-height: calc(90dvh - 50px);
      overflow: auto;
      overscroll-behavior: none; }
    .p-calender .modal .modal__btn_outer {
      position: absolute;
      top: 0;
      right: 0;
      width: 36px;
      height: 36px;
      transform: translate(50%, -50%); }
      @media screen and (max-width: 767px) {
        .p-calender .modal .modal__btn_outer {
          width: 30px;
          height: 30px; } }
    .p-calender .modal .modal__btn_close {
      background: #367e61;
      border: 2px solid #fff;
      position: relative;
      width: 100%;
      height: 100%;
      border-radius: 50%;
      box-shadow: none;
      padding: 0; }
    .p-calender .modal .modal__btn_close::before,
    .p-calender .modal .modal__btn_close::after {
      width: 60%;
      height: 1px;
      background: #fff;
      content: '';
      display: block;
      position: absolute;
      top: 50%;
      left: 50%;
      transform: translate(-50%, -50%) rotate(-45deg); }
    .p-calender .modal .modal__btn_close::after {
      transform: translate(-50%, -50%) rotate(45deg); }
    .p-calender .modal .modal__ttl {
      text-align: center;
      color: #367e61;
      font-weight: bold;
      font-size: 1.6rem;
      line-height: 1.5; }
    .p-calender .modal .modal__information {
      margin-top: 25px;
      font-size: 1.4rem;
      line-height: 1.5; }
      @media screen and (max-width: 767px) {
        .p-calender .modal .modal__information {
          margin-top: 20px; } }
      .p-calender .modal .modal__information .modal__information__row {
        border-bottom: 1px solid #5B8674;
        display: -webkit-flex;
        display: flex; }
        .p-calender .modal .modal__information .modal__information__row:first-child {
          border-top: 1px solid #5B8674; }
      .p-calender .modal .modal__information dt,
      .p-calender .modal .modal__information dd {
        padding: 10px 15px; }
      .p-calender .modal .modal__information dt {
        background: #EDF1F0;
        width: calc(6em + 20px);
        padding: 10px 10px 10px 20px;
        flex-shrink: 0; }
        @media screen and (max-width: 767px) {
          .p-calender .modal .modal__information dt {
            padding: 10px 5px 10px 10px; } }
      .p-calender .modal .modal__information dd {
        padding: 10px 20px; }
        @media screen and (max-width: 767px) {
          .p-calender .modal .modal__information dd {
            padding: 10px 15px; } }
        .p-calender .modal .modal__information dd p {
          font-weight: bold;
          font-size: 1.4rem;
          text-decoration: underline;
          text-underline-offset: 3px;
          font-feature-settings: 'palt'; }
      .p-calender .modal .modal__information a {
        text-decoration: underline;
        color: #1363ca;
        transition: opacity .3s; }
        @media (hover: hover) {
          .p-calender .modal .modal__information a:hover {
            opacity: 0.7; } }
        _:-ms-input-placeholder:hover, :root .p-calender .modal .modal__information a:hover {
          opacity: 0.7; }
    .p-calender .modal .modal__check {
      margin-top: 20px;
      text-align: center;
      font-size: 1.4rem; }
      .p-calender .modal .modal__check label {
        cursor: pointer;
        position: relative;
        padding-left: 23px; }
      .p-calender .modal .modal__check input {
        opacity: 0;
        position: absolute;
        width: 0;
        height: 0;
        margin: 0; }
        .p-calender .modal .modal__check input:checked + .modal__check__ico::before {
          display: block; }
      .p-calender .modal .modal__check .modal__check__ico {
        display: inline-block;
        width: 18px;
        height: 18px;
        background: #fff;
        border: 2px solid #b1b1b1;
        box-sizing: border-box;
        position: absolute;
        top: 0;
        left: 0;
        transform: translateY(-0.1em); }
        .p-calender .modal .modal__check .modal__check__ico::before {
          content: '';
          display: none;
          width: 8px;
          height: 4px;
          border-left: 4px solid #367e61;
          border-bottom: 4px solid #367e61;
          position: absolute;
          top: 50%;
          left: 50%;
          transform: translate(-50%, -70%) rotate(-45deg); }

.main_staff_login {
  background: #ebf6e9;
  position: relative; }
  .main_staff_login .contents_bg {
    width: 100%; }
  .main_staff_login .form01 {
    text-align: center; }

.note_small {
  font-size: 85%;
  font-weight: normal;
  background-color: none; }

.global_nav_sp .nav_btn button {
  background: none !important; }

/*********************************************************
	
	spiral 一覧表
	
*********************************************************/
div.smp-popup-filter {
  z-index: 100; }

div.smp-popup-wrapper {
  z-index: 100; }

.smp-search-form-table {
  padding-top: 20px;
  text-align: left;
  width: 100%; }

.smp-search-form-table td {
  font-size: 10pt !important; }

.smp-search-form-table input[type="submit"] {
  width: 230px;
  height: 50px;
  border: hidden;
  border-radius: 5px;
  background: #2b7155;
  color: #FFFFFF;
  font-size: 125%;
  font-weight: normal;
  text-align: center;
  cursor: pointer;
  transition: background .3s; }

.smp-table {
  width: 100%; }

.smp-table input[name="smp-table-submit-button"] {
  background: #dcdcde;
  color: #4f4f4f;
  font-size: 100%;
  font-weight: normal;
  text-align: center;
  cursor: pointer;
  padding: 11px 10px;
  margin-bottom: 8px;
  border: 1px solid #999999; }

.smp-table .smp-cell-row-1 {
  vertical-align: bottom; }

.smp-table .smp-table-button {
  background: #dcdcde;
  color: #4f4f4f;
  font-size: 100%;
  font-weight: normal;
  text-align: center;
  cursor: pointer;
  padding: 11px 10px;
  margin-bottom: 8px;
  border: 1px solid #999999; }

.smp-table .smp-cell-data {
  background-color: #fff; }

.smp-table .smp-cell-data a {
  text-decoration: underline;
  color: #001DFF; }

.smp-table .smp-cell-data a:visited {
  color: #971EFF; }

.smp-pager td {
  border: 1px solid #999999;
  padding: 2px 10px;
  background: #fff; }

.smp-pager td.smp-current-page {
  background: #367e61;
  color: #fff; }

/*********************************************************
	
	spiral 単票
	
*********************************************************/
.smp-card-list {
  border-collapse: collapse;
  border: 1px solid #999999;
  margin: auto;
  width: 100%; }

.smp-card-list th {
  background-color: #DEDEDE;
  border: 1px solid #999999;
  padding: 10px 5px;
  width: 150px;
  font-size: 10pt;
  text-align: left; }

.smp-card-list td {
  background-color: #FFFFFF;
  border: 1px solid #999999;
  padding: 5px;
  width: 300px;
  font-size: 10pt;
  text-align: left; }

#SMP_STYLE .mainBody {
  width: 100%;
  border-width: 0 1 0 1;
  border-style: solid;
  border-color: #F0F0F0; }

/*********************************************************
	
	spiral フォーム
	
*********************************************************/
#SMP_STYLE .body {
  margin: 0;
  padding: 0; }

#SMP_STYLE .under_head {
  text-align: center; }
  #SMP_STYLE .under_head .under_ttl {
    display: inline-block;
    font-weight: bold;
    color: #367e61;
    font-size: 30px; }
    @media screen and (max-width: 767px) {
      #SMP_STYLE .under_head .under_ttl {
        font-size: 28px; } }

#SMP_STYLE .content_innner {
  padding: 40px;
  text-align: center;
  width: 100%;
  max-width: 900px;
  margin: 0 auto;
  box-sizing: border-box; }
  @media screen and (max-width: 1024px) {
    #SMP_STYLE .content_innner {
      padding: 20px; } }

#SMP_STYLE .body_tbl {
  width: 900px;
  margin: 0 auto;
  padding-bottom: 30px; }

#SMP_STYLE .header_img_smartphone {
  display: none; }

#SMP_STYLE .header_img_tablet {
  display: none; }

#SMP_STYLE .header_img_pc {
  display: block; }

#SMP_STYLE .header_text {
  margin: 0;
  padding: 20px 70px 20px 70px;
  background: #F1F1F1;
  color: #111111;
  font-size: 100%;
  font-weight: normal;
  text-align: left; }

#SMP_STYLE .header_rmesg {
  margin: 0;
  padding: 30px 70px 10px 70px;
  color: #111111;
  font-size: 100%;
  font-weight: normal;
  text-align: left;
  line-height: 1.5; }

#SMP_STYLE .header_emesg {
  width: 720px;
  margin: 30px auto;
  padding: 20px 20px 20px 20px;
  border: 2px solid #FF0000;
  color: #FF0000;
  font-size: 100%;
  font-weight: normal;
  text-align: left; }

/*#SMP_STYLE .smp_tmpl {
 width: 760px;
 padding: 20px 0 0 0;
 margin: 0 70px;
}*/
#SMP_STYLE .main dl {
  position: relative;
  margin: 0;
  padding: 13px 0 0 0;
  max-width: 900px;
  width: 100%;
  border-bottom: 1px dashed #DDDDDD; }

#SMP_STYLE dl.top {
  border-top: 1px dashed #DDDDDD; }

#SMP_STYLE dt.title {
  display: inline-block;
  width: 220px;
  margin: 0;
  padding: 18px 15px 18px 0;
  color: #333333;
  font-size: 108%;
  font-weight: bold;
  text-align: left;
  line-height: 1.2;
  vertical-align: top; }

#SMP_STYLE dt.title .caution {
  display: block;
  width: 220px;
  color: #5F5F5F;
  font-size: 85%;
  font-weight: normal;
  padding: 10px 0 0 0;
  line-height: 1.2;
  text-align: left; }

#SMP_STYLE dd.data {
  display: inline-block;
  width: 520px;
  margin: 0;
  padding: 18px 0;
  color: #5F5F5F;
  font-size: 100%;
  font-weight: bold;
  text-align: left; }

#SMP_STYLE .input {
  width: 420px;
  margin-bottom: 8px;
  color: #333333;
  border: 1px solid #CCC;
  font-size: 108%;
  text-align: left; }

#SMP_STYLE dd.data p {
  line-height: 1.6;
  font-weight: normal; }

#SMP_STYLE input[type="button"],
#SMP_STYLE input[type="text"],
#SMP_STYLE input[type="email"],
#SMP_STYLE input[type="tel"],
#SMP_STYLE input[type="password"],
#SMP_STYLE input[type="submit"],
#SMP_STYLE textarea {
  -webkit-appearance: none;
  /*border-radius: 0;*/ }

#SMP_STYLE input[type="text"],
#SMP_STYLE input[type="email"],
#SMP_STYLE input[type="tel"],
#SMP_STYLE input[type="password"],
#SMP_STYLE select,
#SMP_STYLE textarea {
  padding: 10px;
  font-size: 1.5rem;
  font-family: 'メイリオ',Meiryo,"ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
  border: 1px solid #CCC; }

#SMP_STYLE .zipcode li.code01 input {
  width: 80px; }

#SMP_STYLE .zipcode li.code02 input {
  width: 100px; }

#SMP_STYLE .phone li.num01 input {
  width: 80px; }

#SMP_STYLE .phone li.num02 input {
  width: 80px; }

#SMP_STYLE .phone li.num03 input {
  width: 80px; }

#SMP_STYLE .price input {
  width: 200px; }

#SMP_STYLE .num input {
  width: 60px; }

#SMP_STYLE .integer input {
  width: 90px; }

#SMP_STYLE .real input {
  width: 170px; }

#SMP_STYLE .pass input {
  width: 300px; }

#SMP_STYLE .epass input {
  width: 160px; }

#SMP_STYLE .time input {
  width: 50px;
  margin-right: 6px; }

#SMP_STYLE .time .year {
  width: 90px;
  margin-right: 6px; }

#SMP_STYLE .name1 {
  width: 190px;
  margin-right: 10px; }

#SMP_STYLE .name2 {
  width: 190px; }

#SMP_STYLE .time .month,
#SMP_STYLE .time .day {
  width: 65px;
  margin-right: 6px; }

#SMP_STYLE .zipcode ul li,
#SMP_STYLE .phone ul li,
#SMP_STYLE .time ul li {
  width: auto;
  float: left;
  margin: 0 6px 0 0;
  padding: 0;
  line-height: 35px; }

#SMP_STYLE .multi1 label {
  display: block;
  float: left;
  min-width: 135px;
  margin: 0 0 7px 0;
  padding: 0 10px;
  text-align: left; }

#SMP_STYLE .multi1 label input {
  display: block;
  float: left;
  width: 1em;
  height: 1em;
  margin: 0.4em 0 0 0;
  padding: 0;
  box-shadow: 0 0 0 0 rgba(0, 0, 0, 0) inset;
  border-radius: 0 0 0 0;
  overflow: hidden; }

#SMP_STYLE .multi1 label span {
  display: block;
  margin: 8px 0 0 30px;
  font-size: 100%;
  font-weight: normal; }

#SMP_STYLE .multi1 .radio input {
  border-radius: 1em; }

#SMP_STYLE .multi2 li {
  display: inline;
  float: left;
  min-width: 135px;
  margin: 0 0 0 0;
  padding: 0 5px 2px 10px;
  text-align: left;
  clear: both;
  line-height: normal; }

#SMP_STYLE .multi2 label input {
  display: block;
  float: left;
  width: 1em;
  height: 1em;
  box-shadow: 0 0 0 0 rgba(0, 0, 0, 0) inset;
  margin: 0.2em 0 0 0;
  padding: 0;
  border-radius: 0 0 0 0;
  overflow: hidden; }

#SMP_STYLE .multi2 label span {
  display: block;
  margin: 0 0 0 30px;
  font-size: 100%;
  font-weight: normal; }

#SMP_STYLE .multi2 .radio input {
  border-radius: 1em; }

#SMP_STYLE select {
  margin-bottom: 8px;
  font-size: 100%; }

#SMP_STYLE textarea {
  width: 510px;
  padding: 5px;
  border: 1px solid #CCC;
  font-size: 108%;
  text-align: left; }

#SMP_STYLE .image input {
  width: 100%; }

#SMP_STYLE .file input {
  width: 100%; }

#SMP_STYLE input.clear {
  width: 55px;
  text-align: center; }

#SMP_STYLE input.submit {
  width: 270px;
  height: 60px;
  margin: 40px 10px 40px 10px;
  border: hidden;
  border-radius: 5px;
  background: #2b7155;
  color: #FFFFFF;
  font-size: 125%;
  font-weight: normal;
  text-align: center;
  cursor: pointer; }

#SMP_STYLE button {
  padding: 8px;
  border: hidden;
  border-radius: 5px;
  background: #7a7a7a;
  color: #FFFFFF;
  font-weight: normal;
  text-align: center;
  cursor: pointer;
  vertical-align: top; }

#SMP_STYLE .nav_btn button {
  padding: 0; }

#SMP_STYLE .hamburger_head button {
  background: none; }

#SMP_STYLE .nav_list button {
  background: #fff;
  border-radius: 0; }

#SMP_STYLE input.submit[name="SMPFORM_BACK"],
#SMP_STYLE input.submit.reset {
  background: #DDD !important;
  color: #555; }

#SMP_STYLE .btn_back {
  width: 270px;
  height: 60px;
  margin: 40px 10px 40px 10px;
  border: hidden;
  border-radius: 5px;
  background: #DDD;
  color: #555;
  font-size: 125%;
  font-weight: normal;
  text-align: center;
  cursor: pointer;
  display: inline-block;
  line-height: 60px; }

#SMP_STYLE .btn_next {
  width: 270px;
  height: 60px;
  margin: 40px 10px 40px 10px;
  border: hidden;
  border-radius: 5px;
  background: #2b7155;
  color: #FFFFFF;
  font-size: 125%;
  font-weight: normal;
  text-align: center;
  cursor: pointer;
  display: inline-block;
  line-height: 60px; }

#SMP_STYLE .btn_delete {
  padding: 0px 10px;
  height: 60px;
  margin: 40px 10px 40px 10px;
  border: hidden;
  border-radius: 5px;
  background: #a11919;
  color: #fff;
  font-size: 125%;
  font-weight: normal;
  text-align: center;
  cursor: pointer;
  display: inline-block;
  line-height: 60px; }

#SMP_STYLE input.submit:hover {
  filter: alpha(opacity=90);
  -ms-filter: alpha(opacity=90);
  opacity: 0.9; }

#SMP_STYLE input.image {
  margin: 40px 0 40px 0;
  width: auto;
  border: none;
  padding: 0;
  vertical-align: middle; }

#SMP_STYLE .sample {
  color: #555555;
  font-size: 93%;
  font-weight: normal;
  text-align: left;
  line-height: 1.2; }

#SMP_STYLE .suffix {
  color: #111111;
  font-size: 100%;
  font-weight: normal;
  text-align: left;
  height: 35px;
  line-height: 35px; }

#SMP_STYLE .need {
  color: #CC0000;
  font-size: 100%;
  font-weight: bold;
  text-align: left; }

#SMP_STYLE .msg {
  display: block;
  color: #DD0000;
  font-size: 100%;
  font-weight: bold;
  margin-bottom: 5px;
  text-align: left; }

#SMP_STYLE .sub_text {
  width: 100%;
  font-size: 123.1%;
  font-weight: bold;
  padding: 50px 0;
  /*text-align:left;*/
  color: #111111;
  line-height: 1.6; }

#SMP_STYLE .error {
  background: #FFE4E4; }

#SMP_STYLE .spiralSeal {
  width: 100%;
  overflow: hidden;
  margin: 0 0 20px;
  background-color: #FFFFFF;
  border: 1px solid #CCCCCC; }

#SMP_STYLE .spiralSeal tr td.description {
  display: table-cell;
  text-align: left;
  overflow: auto;
  vertical-align: middle; }

#SMP_STYLE .spiralSeal tr td.img {
  display: table-cell;
  margin-left: 0px;
  margin-right: 0px;
  overflow: auto;
  text-align: center; }

@media screen and (max-width: 771px) {
  #SMP_STYLE .spiralSeal tr td.description {
    display: block;
    text-align: left;
    overflow: auto; }

  #SMP_STYLE .spiralSeal tr td.img {
    display: block;
    margin: 0 auto;
    max-width: 100px;
    overflow: auto;
    text-align: center; } }
#SMP_STYLE .footer_text {
  width: 760px;
  font-size: 100%;
  margin: 30px 0 0 0;
  font-weight: normal;
  text-align: left; }

#SMP_STYLE .cf:before, #SMP_STYLE .cf:after {
  content: "";
  display: table; }

#SMP_STYLE .cf:after {
  clear: both; }

#SMP_STYLE .cf {
  *zoom: 1; }

#SMP_STYLE .w150 {
  width: 150px; }

#SMP_STYLE .w200 {
  width: 200px; }

#SMP_STYLE input:disabled,
#SMP_STYLE input[type="text"]:read-only {
  background-color: rgba(239, 239, 239, 0.3); }

@media screen and (max-width: 771px) {
  #SMP_STYLE .body {
    margin: 0;
    padding: 0;
    font-size: 13px;
    *font-size: small;
    *font: x-small;
    background: #FFFFFF; }

  #SMP_STYLE .body_tbl {
    width: 100%;
    margin: 0 auto;
    padding: 0 10px 30px;
    border: none;
    background: #FFFFFF;
    box-sizing: border-box; }

  #SMP_STYLE .header_img_smartphone {
    display: block; }

  #SMP_STYLE .header_img_tablet {
    display: none; }

  #SMP_STYLE .header_img_pc {
    display: none; }

  #SMP_STYLE .header_text {
    margin: 0;
    padding: 15px 15px 15px 15px;
    background: #F1F1F1;
    color: #111111;
    font-size: 85%;
    font-weight: normal;
    text-align: left; }

  #SMP_STYLE .header_rmesg {
    margin: 0 0 0 0;
    padding: 15px 0 10px;
    color: #111111;
    font-size: 100%;
    font-weight: normal;
    text-align: left; }

  #SMP_STYLE .header_emesg {
    width: 100%;
    margin: 10px auto 10px;
    padding: 15px 15px 15px 15px;
    border: 2px solid #FF0000;
    color: #FF0000;
    font-size: 100%;
    font-weight: normal;
    text-align: left;
    box-sizing: border-box; }

  #SMP_STYLE dl {
    display: block;
    margin: 0 0 10px 0;
    padding: 5px 0 0 0;
    position: relative;
    width: 100%;
    border-bottom: 1px dashed #DDDDDD; }

  #SMP_STYLE dl.top {
    border-top: 1px dashed #DDDDDD; }

  #SMP_STYLE dt.title {
    display: block;
    width: 100%;
    margin: 0;
    padding: 0 0 0 0;
    color: #333333;
    font-size: 108%;
    font-weight: bold;
    text-align: left;
    vertical-align: middle; }

  #SMP_STYLE dt.title .caution {
    display: block;
    width: 100%;
    color: #5F5F5F;
    font-size: 85%;
    font-weight: normal;
    padding: 10px 0 0 0;
    line-height: 1.2;
    text-align: left; }

  #SMP_STYLE dd.data {
    position: relative;
    display: block;
    width: 100%;
    margin: 0 0 10px 0;
    padding: 10px 0 0 0;
    color: #5F5F5F;
    font-size: 100%;
    font-weight: bold;
    text-align: left; }

  #SMP_STYLE .input {
    width: 100%;
    font-size: 108%; }

  #SMP_STYLE .zipcode li.code01 input {
    width: 80px; }

  #SMP_STYLE .zipcode li.code02 input {
    width: 100px; }

  #SMP_STYLE .phone li.num01 input {
    width: 80px; }

  #SMP_STYLE .phone li.num02 input {
    width: 80px; }

  #SMP_STYLE .phone li.num03 input {
    width: 80px; }

  #SMP_STYLE .price input {
    width: 150px; }

  #SMP_STYLE .num input {
    width: 60px; }

  #SMP_STYLE .integer input {
    width: 90px; }

  #SMP_STYLE .real input {
    width: 170px; }

  #SMP_STYLE .pass input {
    width: 150px; }

  #SMP_STYLE .epass input {
    width: 160px; }

  #SMP_STYLE .time input {
    width: 50px; }

  #SMP_STYLE .time .year {
    width: 80px; }

  #SMP_STYLE .time .month,
  #SMP_STYLE .time .day {
    width: 60px; }

  #SMP_STYLE .time .new_line {
    clear: both; }

  #SMP_STYLE ul, #smp_style li {
    list-style-type: none;
    margin: 0;
    padding: 0; }

  #SMP_STYLE .zipcode ul li,
  #SMP_STYLE .phone ul li,
  #SMP_STYLE .time ul li {
    width: auto;
    float: left;
    margin: 0 3px 0 0;
    padding: 0;
    line-height: 35px; }

  #SMP_STYLE .multi1 label {
    display: block;
    min-width: 250px;
    margin: 0 10px 10px 0;
    padding: 10px;
    border-radius: 4px 4px 4px 4px;
    background: #F1F1F1;
    text-align: left; }

  #SMP_STYLE .multi1 label input {
    display: block;
    float: left;
    width: 20px;
    margin: 0.2em 0 0 0;
    padding: 0;
    box-shadow: 0 0 0 0 rgba(0, 0, 0, 0) inset;
    border-radius: 3px 3px 3px 3px;
    text-align: left;
    overflow: hidden; }

  #SMP_STYLE .multi1 label span {
    display: block;
    margin: 0 0 0 25px;
    font-size: 100%; }

  #SMP_STYLE .multi1 .radio input {
    border-radius: 1em; }

  #SMP_STYLE .multi2 li {
    display: block;
    min-width: 100%;
    margin: 0 10px 10px 0;
    padding: 10px;
    border-radius: 4px 4px 4px 4px;
    background: #F1F1F1;
    text-align: left;
    width: auto;
    box-sizing: border-box; }

  #SMP_STYLE .multi2 label input {
    display: block;
    float: left;
    width: 20px;
    margin: 0.2em 0 0 0;
    padding: 0;
    box-shadow: 0 0 0 0 rgba(0, 0, 0, 0) inset;
    border-radius: 3px 3px 3px 3px;
    text-align: left;
    overflow: hidden; }

  #SMP_STYLE .multi2 label span {
    display: block;
    margin: 0 0 0 25px;
    font-size: 100%; }

  #SMP_STYLE .multi2 .radio input {
    border-radius: 1em; }

  #SMP_STYLE select {
    margin-bottom: 8px;
    font-size: 100%; }

  #SMP_STYLE textarea {
    width: 100%;
    font-size: 108%; }

  #SMP_STYLE .image input {
    width: 100%; }

  #SMP_STYLE .file input {
    width: 100%; }

  #SMP_STYLE input.clear {
    width: 55px;
    text-align: center; }

  #SMP_STYLE input.submit {
    width: 86%;
    margin: 20px auto 10px; }

  #SMP_STYLE input.image {
    margin: 40px 0 40px 0;
    width: auto;
    border: none;
    padding: 0;
    vertical-align: middle; }

  #SMP_STYLE .sample {
    color: #555555;
    font-size: 93%;
    font-weight: normal;
    text-align: left;
    line-height: 1.2; }

  #SMP_STYLE .suffix {
    color: #111111;
    font-size: 100%;
    font-weight: normal;
    text-align: left;
    height: 35px;
    line-height: 35px; }

  #SMP_STYLE .need {
    color: #CC0000;
    font-size: 100%;
    font-weight: bold;
    text-align: left; }

  #SMP_STYLE .msg {
    display: block;
    color: #DD0000;
    font-size: 100%;
    font-weight: bold;
    margin-bottom: 5px;
    text-align: left; }

  #SMP_STYLE .sub_text {
    width: 100%;
    font-size: 123.1%;
    font-weight: bold;
    padding: 30px 0;
    /*text-align:left;*/
    color: #111111; }

  #SMP_STYLE .error {
    background: #FFE4E4; }

  /* #SMP_STYLE .spiralSeal {
    width: 270px;
    overflow: hidden;
    margin: 0 0 20px;
    background-color: #FFFFFF;
    border: 1px solid #CCCCCC;
   }
  
   #SMP_STYLE .spiralSeal tr td.description {
    display: block;
    text-align: left;
    overflow: auto;
   }
  
   #SMP_STYLE .spiralSeal tr td.img {
    display: block;
    margin-left: 60px;
    margin-right: 60px;
    overflow: auto;SMP_STYLE input[type="text"]
    text-align: center;
   }*/
  #SMP_STYLE .cf:before, #SMP_STYLE .cf:after {
    content: "";
    display: table; }

  #SMP_STYLE .cf:after {
    clear: both; }

  #SMP_STYLE .cf {
    *zoom: 1; } }
#SMP_STYLE .staff .global_menu .global_nav_sp .nav_btn {
  width: 70px;
  margin-right: 10px; }

#SMP_STYLE .contents {
  min-height: calc(100vh - 41px);
  box-sizing: border-box;
  position: relative; }
  @media screen and (max-width: 1024px) {
    #SMP_STYLE .contents {
      min-height: calc(100vh - 101px);
      padding-bottom: 91px; } }
  @media screen and (max-width: 767px) {
    #SMP_STYLE .contents {
      min-height: calc(100vh - 61px);
      padding-bottom: 111px; } }

/*********************************************************
	
	spiral 管理者画面デザイン
	
*********************************************************/
.staff .global_menu {
  background: #209c73; }

.staff .contents_bg {
  background: #f1f3f1; }

.admin .global_menu {
  background: #439ce4; }

.admin .contents_bg {
  background: #e2f6ff; }

.admin input[type="text"], .admin input[type="email"], .admin input[type="password"], .admin textarea {
  border: 1px solid #439ce4; }
  .admin input[type="text"]:focus, .admin input[type="email"]:focus, .admin input[type="password"]:focus, .admin textarea:focus {
    outline: 1px solid #439ce4;
    border: 1px solid #439ce4;
    box-shadow: 0 0 3px 0 #439ce4; }

.staff .box_login {
  border-top: 10px solid #209c73;
  border-bottom: 10px solid #209c73; }

.admin .box_login {
  border-top: 10px solid #439ce4;
  border-bottom: 10px solid #439ce4; }

#SMP_STYLE .staff input.submit,
.staff .smp-search-form-table input[type="submit"],
.staff .smp-pager td.smp-current-page {
  background: #1cb57b; }

#SMP_STYLE .admin input.submit,
.admin .smp-search-form-table input[type="submit"],
.admin .smp-pager td.smp-current-page {
  background: #3486c7; }

#SMP_STYLE .staff .under_head .under_ttl {
  color: #209c73; }

#SMP_STYLE .admin .under_head .under_ttl {
  color: #36607e; }

#SMP_STYLE .staff .btn_next {
  background: #1cb57b; }

#SMP_STYLE .admin .btn_next {
  background: #3486c7; }

#SMP_STYLE .admin input.submit[name="SMPFORM_BACK"], #SMP_STYLE input.submit.reset {
  background: #DDD; }

/*# sourceMappingURL=style.css.map */
