@charset "UTF-8";
body {
  color: #333 !important;
  font-family: "Hiragino Sans", "ヒラギノ角ゴ ProN", "Hiragino Kaku Gothic ProN", "メイリオ", Meiryo, "游ゴシック", YuGothic, sans-serif;
  letter-spacing: .05em !important;
}

a {
  color: #222;
  transition: all .2s linear;
}

@media screen and (max-width: 950px) {
  .on_pc {
    display: none !important;
  }
}

@media screen and (min-width: 951px) {
  .on_sp {
    display: none !important;
  }
}

input[type="text"],
input[type="email"],
textarea {
  width: 100%;
  padding: .75em 1em;
  border: 1px solid #fff;
  border-radius: 5px;
  box-sizing: border-box;
  background: #fff;
  font-size: 16px;
  transition: all .2s linear;
}

input[type="text"]:hover,
input[type="text"]:focus,
input[type="email"]:hover,
input[type="email"]:focus,
textarea:hover,
textarea:focus {
  border: 1px solid #096d38;
  outline: none;
}

table {
  width: 100%;
}

.flex,
.media,
.card,
.flex_half {
  display: flex;
}

.media_tx {
  flex: 1;
}

.card {
  flex-direction: column;
}

.flex_half > * {
  flex: 1;
}

.flex_half > *:nth-child(2) {
  margin-left: 30px;
}

.base_table {
  margin-bottom: 90px;
  border-top: 1px solid #096d38;
}

.base_table > dl {
  display: flex;
  align-items: center;
  position: relative;
  margin: 0;
  border-bottom: 1px solid #096d38;
}

@media screen and (max-width: 950px) {
  .base_table > dl {
    flex-direction: column;
  }
}

.base_table > dl::before {
  position: absolute;
  top: 0;
  left: 0;
  width: 18em;
  height: 100%;
  background: rgba(255, 255, 255, .5);
  content: "";
}

@media screen and (max-width: 950px) {
  .base_table > dl::before {
    display: none;
  }
}

.base_table > dl > dt {
  position: relative;
  width: 18em;
  padding: 1.5em;
  box-sizing: border-box;
  color: #096d38;
  font-weight: 500;
  text-align: center;
}

@media screen and (max-width: 950px) {
  .base_table > dl > dt {
    width: 100%;
    padding: 1em;
    background: rgba(255, 255, 255, .5);
  }
}

.base_table > dl > dd {
  flex: 1;
  margin: 0;
  padding: 1.5em;
  box-sizing: border-box;
  text-align: left;
  word-break: break-all;
}

@media screen and (max-width: 950px) {
  .base_table > dl > dd {
    width: 100%;
    padding: 1em;
  }
}

.base_table > dl > dd a {
  text-decoration: underline;
}

.base_table > dl > dd a:hover {
  text-decoration: none;
}

.base_table > dl > dd dt {
  color: #096d38;
  font-size: 1.2em;
}

.base_table iframe {
  width: 100%;
  height: 390px;
  margin-top: 20px;
}

@media screen and (max-width: 950px) {
  .base_table iframe {
    height: 210px;
  }
}

.base_table ul {
  margin-bottom: 0;
}

.history_table {
  position: relative;
  padding-top: 20px;
  font-size: 100%;
}

.history_table::before {
  position: absolute;
  top: 0;
  left: 305px;
  width: 2px;
  height: 100%;
  background: #eee;
  content: "";
}

@media screen and (max-width: 950px) {
  .history_table::before {
    left: 15px;
  }
}

.history_table dl {
  display: flex;
}

@media screen and (max-width: 950px) {
  .history_table dl {
    flex-direction: column;
    margin-bottom: 10px;
    padding-left: 40px;
  }
}

.history_table dt {
  position: relative;
  width: 270px;
  margin-right: 50px;
  color: #666;
  text-align: right;
}

@media screen and (max-width: 950px) {
  .history_table dt {
    width: 100%;
    margin-bottom: 0;
    text-align: left;
  }
}

.history_table dt::before {
  position: absolute;
  top: 13px;
  left: 301px;
  width: 10px;
  height: 10px;
  border-radius: 10px;
  background: #096d38;
  content: "";
}

@media screen and (max-width: 950px) {
  .history_table dt::before {
    top: 9px;
    left: -29px;
  }
}

.history_table dt span {
  font-size: .7em;
}

.history_table dd {
  flex: 1;
  margin-left: 30px;
}

@media screen and (max-width: 950px) {
  .history_table dd {
    margin-left: 15px;
    line-height: 1.75;
  }
}

.name dl {
  font-size: 1em;
  font-family: "Times New Roman", "游明朝", "Yu Mincho", "游明朝体", "YuMincho", "ヒラギノ明朝 Pro W3", "Hiragino Mincho Pro", "HiraMinProN-W3", "HGS明朝E", "ＭＳ Ｐ明朝", "MS PMincho", serif;
  text-align: right;
}

.name dt {
  font-weight: 500;
}

.name dd {
  font-size: 1.3em;
}

.name span {
  margin-right: 1em;
  color: #096d38;
  font-size: .8em;
}

.fit_img_wrap {
  position: relative;
  width: 100%;
  height: 0;
  padding-top: calc(100% / 3 * 2);
  overflow: hidden;
}

.fit_img {
  height: 100% !important;
  font-family: "object-fit: cover;";
     object-fit: cover;

  -o-object-fit: cover;
}

.short_inner {
  max-width: 840px;
  margin: 0 auto;
}

.bg_gray {
  box-sizing: border-box;
  background: #f7f7f7;
}

.inner {
  width: 90%;
  max-width: 1000px;
  margin: 0 auto !important;
}

.big_inner {
  width: 90%;
  margin: 0 auto !important;
}

.ta_left {
  text-align: left;
}

.ta_center {
  text-align: center;
}

.rich_font {
  font-family: "Kiwi Maru", sans-serif;
  letter-spacing: 0;
}

#bread_crumb li:before {
  top: -3px;
}

.style3a,
.cf_content_list .headline {
  font-weight: 500;
  font-family: "Kiwi Maru", sans-serif;
}

.style3b {
  padding: .75em !important;
  border-top-color: #2f9a4e;
  font-size: 20px !important;
  font-family: "Kiwi Maru", sans-serif;
}

@media screen and (max-width: 950px) {
  .style3b {
    font-size: 16px !important;
  }
}

.style4a {
  border-left-color: #2f9a4e;
  color: #096d38;
  font-size: 22px !important;
  font-family: "Kiwi Maru", sans-serif;
}

@media screen and (max-width: 950px) {
  .style4a {
    font-size: 18px !important;
  }
}

.style6b {
  margin-bottom: 1em !important;
  padding-bottom: 15px !important;
  border-bottom: 1px solid #2f9a4e;
  font-weight: 500;
  font-family: "Kiwi Maru", sans-serif;
}

@media screen and (max-width: 950px) {
  .style6b {
    padding-bottom: 10px !important;
    font-size: 18px !important;
  }
}

#main_contents {
  display: flex;
  justify-content: space-between;
  align-items: flex-start;
}

@media screen and (max-width: 950px) {
  #main_contents {
    flex-direction: column;
    align-items: center;
  }
}

#main_contents::after {
  display: none;
}

#main_col {
  float: none !important;
}

@media screen and (max-width: 950px) {
  #main_col {
    width: 100%;
  }
}

#side_col {
  position: sticky !important;
  top: 100px;
  float: none !important;
}

@media screen and (max-width: 950px) {
  #side_col {
    width: 100%;
  }
}

.column1,
.column2 {
  margin-top: 15px;
}

.column1 > *,
.column2 > * {
  flex: 1;
}

.column1 > *:first-child,
.column2 > *:first-child {
  margin-right: 30px;
}

.column1 > li,
.column2 > li {
  color: #096d38;
  font-family: "Kiwi Maru", sans-serif;
}

.column1 > li dt,
.column2 > li dt {
  color: #096d38;
  font-weight: 500;
  font-size: 1.1em;
  font-family: "Kiwi Maru", sans-serif;
}

.column1 ul li,
.column2 ul li {
  font-family: "Hiragino Sans", "ヒラギノ角ゴ ProN", "Hiragino Kaku Gothic ProN", "メイリオ", Meiryo, "游ゴシック", YuGothic, sans-serif;
}

.column1 dd,
.column2 dd {
  color: #333;
  font-family: "Hiragino Sans", "ヒラギノ角ゴ ProN", "Hiragino Kaku Gothic ProN", "メイリオ", Meiryo, "游ゴシック", YuGothic, sans-serif;
}

@media screen and (min-width: 951px) {
  #page_header_catch {
    transform: translateY(-35%);
  }
}

.page_header_catch_main {
  margin-bottom: 1.5em;
}

.page_header_catch_main span {
  display: inline-block;
  padding-bottom: .5em;
  border-bottom: 2px solid rgba(255, 255, 255, .75);
  font-size: 18px;
  font-family: "Kiwi Maru", sans-serif;
}

.frost_bg:before {
  background: rgba(255, 255, 255, .7);
}

.voice dt {
  color: #096d38;
  font-weight: 500;
  font-size: 1.2em;
  font-family: "Kiwi Maru", sans-serif;
}

.frame {
  margin-bottom: 20px;
  padding: 15px;
  border-radius: 10px;
  background: #fff;
}

.frame p {
  margin-bottom: 0;
}

.frame p:empty {
  display: none;
}

.frame p + p {
  margin-top: 1em;
}

.step dl {
  align-items: center;
  position: relative;
  border-radius: 10px;
  background: #fff;
}

.step dl::before {
  position: absolute;
  bottom: -15px;
  left: calc(50% - 8px);
  transform: rotate(135deg);
  width: 10px;
  height: 10px;
  border-top: 2px solid #2f9a4e;
  border-right: 2px solid #2f9a4e;
  content: "";
}

.step dt {
  position: relative;
  top: -2px;
  width: 120px;
  color: #096d38;
  font-family: "Kiwi Maru", sans-serif;
  text-align: center;
}

.step dd {
  flex: 1;
  margin-bottom: 0;
  padding: 10px;
}

@media screen and (max-width: 950px) {
  .cf_catch .catch {
    font-size: 18px;
  }
}

.engage {
  width: 90%;
  margin: 60px auto;
  text-align: center;
}

.engage > div {
  margin: 0 auto;
}

@media screen and (max-width: 950px) {
  .engage > div {
    width: 100% !important;
  }
}

.side_engage {
  width: 100%;
  margin-top: 30px;
}

.side_engage > div {
  width: 100% !important;
}

.btn {
  text-align: center;
}

.btn a {
  display: inline-block;
  padding: 20px 50px;
  box-sizing: border-box;
  background: #2f9a4e;
  color: #fff !important;
  line-height: 1.5;
}

.btn a:hover {
  background: #096d38;
}

#header_logo .logo a {
  display: block;
  position: relative;
  padding-left: 65px;
  color: #444;
  font-family: "Kiwi Maru", sans-serif;
  letter-spacing: 0;
}

@media screen and (max-width: 950px) {
  #header_logo .logo a {
    padding-left: 45px;
  }
}

#header_logo .logo a::before {
  position: absolute;
  top: 50%;
  left: 0;
  transform: translateY(-50%);
  width: 60px;
  height: 60px;
  background: url(../img/logo.png) no-repeat center left;
  background-size: auto 100%;
  content: "";
}

@media screen and (max-width: 950px) {
  #header_logo .logo a::before {
    background-size: auto 70%;
  }
}

#header_logo .logo a:hover {
  color: #096d38;
}

#header_button .button a,
#global_menu * {
  font-weight: 500;
  font-size: 16px !important;
  font-family: "Kiwi Maru", sans-serif;
  letter-spacing: -.5px;
}

.pc #global_menu {
  border-top: 1px solid #dcead2;
}

.pc #global_menu > ul > li > a {
  padding: 0;
}

.pc #global_menu > ul > li > a:hover {
  color: #096d38;
}

@media screen and (min-width: 951px) {
  #menu-item-131,
  #menu-item-132 {
    display: none;
  }
}

#menu-item-139 a {
  background: #2f9a4e url(../img/blank_link.svg) no-repeat center right 20px !important;
  background-size: 14px auto !important;
}

@media screen and (max-width: 1250px) {
  #menu-item-139 a {
    background-image: url(../img/blank_link_bk.svg) !important;
    background-color: #eee !important;
  }
}

#menu-item-139 a:hover {
  background-color: #096d38 !important;
}

@media screen and (max-width: 1250px) {
  #menu-item-139 a:hover {
    background-color: #eee !important;
  }
}

.pc #global_menu ul ul a {
  color: #fff;
  font-size: 15px !important;
}

#mobile_menu #global_menu .child_menu_button .icon:before {
  color: #333;
}

#mobile_menu #global_menu .child_menu_button.active .icon:before,
#mobile_menu #global_menu .child_menu_button:hover .icon:before {
  color: #333;
}

.megamenu_campaign_list .menu_area li a,
.megamenu_campaign_list .post_list li .title span {
  font-size: 1.1em;
  font-family: "Kiwi Maru", sans-serif;
  letter-spacing: 0;
}

.megamenu_campaign_list .post_list li .title span {
  line-height: 1.3;
}

.megamenu_clinic_list2 .title {
  font-weight: 400;
  font-size: 18px;
}

#header_button .button1 {
  margin-right: 1px;
}

#header_slider_wrap.animate .caption.para_slider_caption .title {
  margin-bottom: 15px;
  font-size: 40px;
  font-family: "Kiwi Maru", sans-serif;
}

@media screen and (max-width: 950px) {
  #header_slider_wrap.animate .caption.para_slider_caption .title {
    font-size: 24px;
  }
}

#header_slider_wrap.animate .caption.para_slider_caption .sub_title {
  line-height: 1.75;
}

.index_box_content .box {
  background: #f2fbec;
}

.index_box_content .box .image {
  opacity: .3;
}

.index_box_content.row1 .title {
  color: #333 !important;
  font-weight: 500;
}

@media screen and (max-width: 950px) {
  .index_box_content.row1 .title {
    font-size: 24px;
  }
}

.index_box_content.row1 .catch {
  color: #333 !important;
  line-height: 1.5;
}

.corona h2 {
  margin-bottom: 1em;
  padding-bottom: .5em;
  border-bottom: 2px solid #2f9a4e;
  color: #096d38;
  font-weight: 500;
  font-size: 28px;
  font-family: "Kiwi Maru", sans-serif;
  text-align: center;
}

@media screen and (max-width: 950px) {
  .corona h2 {
    font-size: 24px;
  }
}

.corona h2 + p {
  font-size: 16px;
  text-align: center;
}

@media screen and (max-width: 950px) {
  .corona h2 + p {
    font-size: 15px;
    text-align: left;
  }
}

.corona .flex {
  flex-wrap: wrap;
  margin: 0 -30px;
}

@media screen and (max-width: 950px) {
  .corona .flex {
    flex-direction: column;
  }
}

.corona .flex > li {
  list-style: none;
  width: 50%;
  padding: 0 30px;
  box-sizing: border-box;
}

@media screen and (max-width: 950px) {
  .corona .flex > li {
    width: 100%;
  }
}

.corona dt {
  margin-bottom: 10px;
  padding: 10px 15px;
  background: #f2fbec;
  color: #096d38;
  font-size: 1.2em;
  line-height: 1.5;
  font-family: "Kiwi Maru", sans-serif;
}

#index_campaign_slider .category a {
  background: #2f9a4e;
}

#index_banner {
  padding-top: 90px;
}

@media screen and (max-width: 950px) {
  #index_banner {
    padding-top: 30px;
  }
}

#index_banner .ttl {
  font-weight: 500;
  font-size: 42px;
  font-family: "Kiwi Maru", sans-serif;
  text-align: center;
}

@media screen and (max-width: 950px) {
  #index_banner .ttl {
    font-size: 20px;
    line-height: 1.5;
  }
}

#index_banner .desc {
  width: 90%;
  margin: 20px auto 50px;
  font-size: 16px;
  line-height: 2;
  text-align: center;
}

@media screen and (max-width: 950px) {
  #index_banner .desc {
    margin: 5px auto 30px;
    font-size: 14px;
  }
}

#index_banner .title {
  width: 300px;
  height: auto;
  padding: 20px 0;
  font-weight: 500;
  line-height: 1.5;
}

#index_clinic .title_area {
  color: #333;
}

#index_clinic .title_area .title {
  font-weight: 500;
}

@media screen and (max-width: 950px) {
  #index_clinic .title_area_inner {
    padding: 20px;
  }
}

@media screen and (max-width: 950px) {
  #index_staff_slider .desc_area {
    height: 120px;
    padding: 0;
  }
}

#index_staff_slider .desc_area p {
  padding: 20px;
  line-height: 1.75;
}

#campaign_list .category a,
.cf_header_no_image .category a,
.cf_header_image .category a {
  background: #2f9a4e;
}

.cf_header_no_image .title span,
#campaign_list2 .title span,
.cf_header_image .title span {
  font-weight: 500;
}

#campaign_list .title span {
  color: #333;
  font-weight: 500;
}

.ess_category_intro {
  padding: 15px 0;
}

.ess_category_intro .catch {
  color: #096d38;
  font-size: 26px;
  line-height: 1.75;
  font-family: "Kiwi Maru", sans-serif;
  text-align: center;
}

@media screen and (max-width: 950px) {
  .ess_category_intro .catch {
    font-size: 20px;
  }
}

.ess_category_intro .lead {
  margin-top: 20px;
  font-size: 16px;
  line-height: 2;
}

#campaign_list2 .desc {
  overflow: visible;
  font-size: 15px;
  line-height: 1.75;
}

#single_campaign .cf_catch .catch {
  color: #096d38 !important;
  color: #444 !important;
  font-weight: 400;
  font-size: 28px;
}

@media screen and (max-width: 950px) {
  #single_campaign .cf_catch .catch {
    font-size: 20px;
  }
}

.elderly_support_services_info section {
  margin-bottom: 40px;
}

.elderly_support_services_info .headline {
  height: auto;
  padding: .75em 15px !important;
  border-left-color: #2f9a4e;
  line-height: 1.5;
}

.elderly_support_services_info p {
  margin: 0;
}

.elderly_support_services_info p:empty {
  display: none;
}

@media screen and (max-width: 950px) {
  .elderly_support_services_info .flex {
    flex-direction: column;
    align-items: center;
  }
}

.elderly_support_services_info .img {
  flex: 1;
  margin-right: 30px;
}

@media screen and (max-width: 950px) {
  .elderly_support_services_info .img {
    flex: initial;
    width: 100%;
    max-width: 300px;
    margin: 0 0 15px 0;
  }
}

.elderly_support_services_info img {
  width: 100%;
}

.elderly_support_services_info .tx {
  flex: 1.5;
}

@media screen and (max-width: 950px) {
  .elderly_support_services_info .tx {
    flex: initial;
    width: 100%;
  }
}

.page_ess3 .base_table {
  margin-bottom: 40px;
}

.page_ess3 .base_table dl::before {
  width: 8em;
  background: #f7f7f7;
}

.page_ess3 .base_table dt {
  width: 8em;
  background: #f7f7f7;
}

@media screen and (max-width: 950px) {
  .page_ess3 .base_table dt {
    width: 100%;
  }
}

.page_ess7 ul {
  margin-top: 15px;
}

.page_ess9 .column2 {
  flex-wrap: wrap;
  justify-content: space-between;
  margin-top: 15px;
}

.page_ess9 .column2 > li {
  flex: initial;
  width: calc(50% - 20px);
  margin: 0;
}

@media screen and (max-width: 950px) {
  .page_ess9 .column2 > li {
    width: 100%;
  }
}

.page_ess9 .column2 > li:last-child {
  width: 100%;
}

.page_ess9 .column2 dt {
  margin-bottom: 10px;
  border-bottom: 1px solid rgba(9, 109, 56, .3);
  font-size: 1.2em;
}

.page_ess9 ul {
  list-style: none;
  margin: 0;
}

.page_ess10 .column2 {
  flex-wrap: wrap;
  justify-content: space-between;
  margin-top: 15px;
}

.page_ess10 .column2 > li {
  flex: initial;
  width: calc(50% - 20px);
  margin: 0;
}

@media screen and (max-width: 950px) {
  .page_ess10 .column2 > li {
    width: 100%;
  }
}

.page_ess10 .column2 > li li {
  list-style: circle;
  margin-left: 1.4em;
}

.page_ess10 .column2 dt {
  margin-bottom: 10px;
  padding-bottom: 10px;
  border-bottom: 1px solid rgba(9, 109, 56, .3);
  font-size: 1.2em;
  line-height: 1.5;
}

.page_ess10 ul {
  list-style: none;
  margin: 0;
}

.disabled_support_services_intro {
  max-width: 780px;
  margin: 0 auto 60px;
  font-size: 16px;
  line-height: 2.5;
}

@media screen and (max-width: 950px) {
  .disabled_support_services_intro {
    font-size: 14px;
    line-height: 2;
  }
}

#clinic_list .bottom_area {
  height: 300px;
}

@media screen and (max-width: 950px) {
  #clinic_list .bottom_area {
    height: 180px;
  }
}

#clinic_list .bottom_area_inner {
  width: 100%;
}

@media screen and (max-width: 950px) {
  #clinic_list .bottom_area_inner {
    padding: 20px;
  }
}

#archive_clinic .title {
  font-weight: 500;
}

#archive_clinic .catch {
  font-size: 20px;
}

@media screen and (max-width: 950px) {
  #archive_clinic .catch {
    font-size: 15px;
  }
}

#column_list .title span {
  font-weight: 500;
}

#side_column_list .headline {
  background: #2f9a4e;
  color: #fff;
  font-size: 22px;
}

#side_column_list.type1 a {
  background: #f7f7f8;
}

#side_column_list.type1 li:nth-child(even) a {
  background: #f1f1f1;
}

#side_column_list li.active a {
  color: #096d38;
}

.side_category_list a:hover,
.side_category_list li.active > a {
  color: #096d38;
}

.page_onsen_active_center .catch {
  margin: 0;
  padding: 0;
  font-weight: 500;
  line-height: 1.5;
  text-align: center;
}

.page_onsen_active_center .style4a {
  background: #fff;
}

.page_onsen_active_center .outline dl {
  display: flex;
  border-bottom: 1px solid #ccc;
}

.page_onsen_active_center .outline dl * {
  line-height: 2.2;
}

.page_onsen_active_center .outline dt {
  width: 90px;
  color: #096d38;
}

.page_onsen_active_center .outline dd {
  flex: 1;
}

.page_onsen_active_center .outline dd p {
  margin: 0;
}

.page_onsen_active_center .memo {
  font-weight: 700;
  font-size: .9em;
}

.page_training .info .img {
  flex: 1;
  margin-right: 30px;
}

@media screen and (max-width: 950px) {
  .page_training .info .img {
    margin-right: 20px;
  }
}

.page_training .info .tx {
  flex: 1.5;
}

.page_classroom_program .target {
  margin-bottom: 15px;
  color: #096d38;
}

.page_classroom_program .price {
  margin-top: -20px;
  padding: 15px;
  border-radius: 10px;
  background: #fff;
  font-size: .9em;
}

@media screen and (max-width: 950px) {
  .page_swimming-web .btn a {
    display: block;
    width: 100%;
    max-width: 300px;
    margin: 0 auto;
  }
}

.page_swimming-web .blc02 .flex {
  justify-content: center;
}

@media screen and (max-width: 950px) {
  .page_swimming-web .blc02 .flex {
    flex-direction: column;
  }
}

.page_swimming-web .blc02 .btn {
  margin: 0 10px;
}

@media screen and (max-width: 950px) {
  .page_swimming-web .blc02 .btn {
    margin: 0 0 10px 0;
  }
}

.page_membership table * {
  font-size: 15px;
  line-height: 1.5;
}

@media screen and (max-width: 950px) {
  .page_membership table * {
    font-size: 12px;
  }
}

.page_membership table span {
  display: block;
  color: #096d38;
  font-size: 13px;
}

@media screen and (max-width: 950px) {
  .page_membership table span {
    font-size: 10px;
    text-align: left;
  }
}

.page_membership table th,
.page_membership table td {
  padding: 10px;
  vertical-align: middle;
}

@media screen and (max-width: 950px) {
  .page_membership table th,
  .page_membership table td {
    padding: 5px;
  }
}

.page_membership table th {
  background: #dcead2;
  font-weight: 700;
}

.page_membership table .sub {
  background: #f2fbec;
}

.page_membership table td {
  text-align: center;
}

.page_membership table dl {
  justify-content: space-between;
  margin-bottom: 0;
}

@media screen and (max-width: 950px) {
  .page_membership table dl {
    flex-direction: column;
  }
}

.page_membership table dl + dl {
  margin-top: 5px;
  padding-top: 5px;
  border-top: 1px solid #ccc;
}

.page_membership table dd {
  margin-bottom: 0;
}

.page_membership .memo {
  color: #096d38;
}

.page_membership .blc01 span {
  display: block;
  margin-top: -5px;
  color: #096d38;
  font-weight: 700;
  font-size: .8em;
}

.page_membership .completed {
  color: #096d38;
  font-weight: 500;
  font-size: 1.2em;
  font-family: "Kiwi Maru", sans-serif;
  text-align: center;
}

.page_cafe_mimakien .catch {
  color: #096d38;
  font-weight: 500;
  font-size: 26px;
  line-height: 1.75;
  font-family: "Kiwi Maru", sans-serif;
  text-align: center;
}

@media screen and (max-width: 950px) {
  .page_cafe_mimakien .catch {
    font-size: 18px;
  }
}

.page_cafe_mimakien .blc01 img {
  margin-bottom: 20px;
}

.page_cafe_mimakien .blc02 ul {
  margin-left: 0;
}

@media screen and (max-width: 950px) {
  .page_cafe_mimakien .blc02 ul {
    flex-direction: column;
  }
}

.page_cafe_mimakien .blc02 .btn a {
  background-image: url(../img/blank_link.svg);
  background-position: center right 20px;
  background-size: 14px auto;
  background-repeat: no-repeat;
}

.page_cafe_mimakien .card + .card {
  margin-left: 30px;
}

@media screen and (max-width: 950px) {
  .page_cafe_mimakien .card + .card {
    margin-left: 0;
  }
}

.page_cafe_mimakien .card_tx p span {
  margin-left: 1.5em;
  font-weight: 700;
}

.post-type-archive-staff .catch {
  font-size: 30px !important;
}

@media screen and (max-width: 950px) {
  .post-type-archive-staff .catch {
    font-size: 18px !important;
  }
}

@media screen and (max-width: 950px) {
  .post-type-archive-staff #page_header_catch .desc {
    font-size: 12px;
    line-height: 1.5;
    text-align: left;
  }
}

.post-type-archive-staff #staff_list .title {
  font-weight: 500;
}

.page_staff section {
  margin-top: 60px;
  padding-top: 60px;
  border-top: 2px solid #2f9a4e;
}

@media screen and (max-width: 950px) {
  .page_staff section {
    margin-top: 30px;
    padding-top: 30px;
  }
}

.page_staff .prof {
  justify-content: center;
  align-items: center;
}

.page_staff .prof .img {
  width: 240px;
  height: 240px;
  margin-right: 40px;
  overflow: hidden;
  border-radius: 600px;
}

@media screen and (max-width: 950px) {
  .page_staff .prof .img {
    width: 120px;
    height: 120px;
    margin-right: 20px;
  }
}

.page_staff .prof .img img {
  width: 100%;
  height: 100%;
}

.page_staff .prof dl {
  font-family: "Kiwi Maru", sans-serif;
}

.page_staff .prof dt,
.page_staff .prof dd {
  line-height: 1.75;
}

.page_staff .prof dt {
  color: #2f9a4e;
  font-weight: 500;
}

.page_staff .prof dd {
  font-size: 1.2em;
}

.page_staff .interview > * {
  margin-top: 40px;
}

.page_staff .interview dt {
  position: relative;
  padding-left: 40px;
  color: #096d38;
}

@media screen and (max-width: 950px) {
  .page_staff .interview dt {
    padding-left: 30px;
  }
}

.page_staff .interview dt::before {
  position: absolute;
  top: 15px;
  left: 0;
  width: 30px;
  height: 3px;
  background: #2f9a4e;
  content: "";
}

@media screen and (max-width: 950px) {
  .page_staff .interview dt::before {
    top: 10px;
    width: 20px;
  }
}

.page_staff .interview dd {
  padding-left: 40px;
}

@media screen and (max-width: 950px) {
  .page_staff .interview dd {
    padding-left: 30px;
  }
}

.page_staff .interview .img {
  margin: 40px 0;
}

@media screen and (max-width: 950px) {
  .page_staff .interview .img {
    margin: 30px 0;
  }
}

.page_staff .card_tx {
  margin-bottom: 30px;
}

.page_staff .card_tx dl,
.page_staff .card_tx dd {
  margin-bottom: 0;
}

.page_staff p:empty {
  display: none;
}

.page_welfare .base_table dl::before {
  background: #f7f7f7;
}

.page_welfare .base_table dt {
  background: #f7f7f7;
}

.postid-32 .catch {
  display: none;
}

.page_recruit_faq dl {
  margin-top: 30px;
}

@media screen and (max-width: 950px) {
  .page_recruit_faq dl {
    margin-top: 20px;
  }
}

.page_recruit_faq dt {
  position: relative;
  padding-left: 40px;
  color: #096d38;
  font-weight: 500;
  font-size: 1.2em;
  line-height: 1.75;
  font-family: "Kiwi Maru", sans-serif;
}

@media screen and (max-width: 950px) {
  .page_recruit_faq dt {
    padding-left: 32px;
    font-size: 1.1em;
  }
}

.page_recruit_faq dt::before {
  position: absolute;
  top: -18px;
  left: 0;
  margin-right: 10px;
  color: rgba(9, 109, 56, .3);
  font-weight: 500;
  font-size: 1.8em;
  content: "Q";
}

@media screen and (max-width: 950px) {
  .page_recruit_faq dt::before {
    top: -14px;
  }
}

.page_recruit_faq dd {
  margin: 5px 0 0 60px;
  line-height: 1.75;
}

@media screen and (max-width: 950px) {
  .page_recruit_faq dd {
    margin-left: 32px;
  }
}

@media screen and (max-width: 950px) {
  #blog_list .image {
    height: 240px !important;
  }
}

#blog_list .title_area .title span {
  font-weight: 500;
}

#blog_list .category a,
#single_category a {
  background: #2f9a4e;
}

.page_about .catch {
  margin-bottom: 30px;
  color: #444;
  font-weight: 500;
  line-height: 1.75;
  text-align: center;
}

.page_public_information .style6b {
  margin-bottom: .5em !important;
}

.page_public_information ul {
  margin-left: 2em;
}

.page_public_information a {
  display: flex;
  color: #333;
}

.page_public_information a br {
  display: none;
}

.page_public_information svg {
  width: 18px;
  height: auto;
  margin-left: .5em;
}

.post-type-archive-news #main_col,
.single-news #main_col {
  margin: 0 auto;
}

.post-type-archive-news #side_col,
.single-news #side_col {
  display: none;
}

#news_archive .date {
  color: #2f9a4e;
}

.contact_primary {
  width: 100%;
}

.contact_primary .req {
  display: inline-block;
  padding: 0 10px;
  border-radius: 100px;
  background: #2f9a4e;
  color: #fff;
  font-weight: bold;
  font-size: 12px;
  line-height: 1.75;
}

.contact_primary .bg_gray {
  margin-bottom: 120px;
  padding: 40px;
}

@media screen and (max-width: 950px) {
  .contact_primary .bg_gray {
    margin-bottom: 30px;
    padding: 10px;
  }
}

.contact_primary .form_btns {
  justify-content: center;
}

@media screen and (max-width: 750px) {
  .contact_primary .form_btns {
    flex-direction: row;
  }
}

.contact_primary .form_btns .form_btn input {
  display: inline-block;
  min-width: 300px !important;
  height: auto !important;
  margin: 30px 5px 5px;
  padding: 25px;
  border: none !important;
  background: #2f9a4e;
  color: #fff !important;
  font-size: 22px !important;
  line-height: 1.5 !important;
  font-family: "Kiwi Maru", sans-serif;
  letter-spacing: .1em;
  text-align: center;
  cursor: pointer;
  transition: all .2s linear;
}

@media screen and (max-width: 950px) {
  .contact_primary .form_btns .form_btn input {
    min-width: 150px !important;
    margin-top: 0;
    padding: 15px 20px;
    font-size: 16px !important;
  }
}

.contact_primary .form_btns .form_btn input:hover {
  background: #096d38 !important;
}

.contact_primary .form_btns .btn_back input {
  background: #999;
}

.contact_primary .form_btns .btn_back input:hover {
  background: #999 !important;
}

.contact_primary .mw_wp_form .error {
  color: #cd0e0e;
}

.contact_primary .complete_msg {
  margin-top: 60px;
}

@media screen and (max-width: 950px) {
  .contact_primary .complete_msg {
    margin-top: 0;
  }
}

.contact_primary .complete_msg a {
  margin: 0 10px;
}

.contact_primary .mail_form_msg {
  margin: 60px 0 30px;
  font-weight: 700;
  text-align: center;
}

@media screen and (max-width: 950px) {
  .contact_primary .mail_form_msg {
    margin-top: 30px;
    text-align: left;
  }
}

.contact_primary #contact_error .mail_form_msg {
  color: #cd0e0e;
}

.mail_form_intro {
  margin-top: 60px;
  text-align: center;
}

@media screen and (max-width: 950px) {
  .mail_form_intro {
    margin-top: 0;
  }
}

.mail_form_intro .for_phone {
  margin-bottom: 40px;
  text-align: center;
}

@media screen and (max-width: 950px) {
  .mail_form_intro .for_phone {
    margin-bottom: 20px;
  }
}

.mail_form_intro .for_phone dl {
  margin-bottom: 0;
}

.mail_form_intro .for_phone dt {
  margin-bottom: 0;
  font-weight: 400;
  font-size: 34px;
  font-family: "Kiwi Maru", sans-serif;
}

@media screen and (max-width: 750px) {
  .mail_form_intro .for_phone dt {
    margin-bottom: 10px;
    font-size: 18px;
  }
}

.mail_form_intro .for_phone dd {
  margin: 0;
}

@media screen and (max-width: 950px) {
  .mail_form_intro .for_phone dd {
    margin-top: -20px;
  }
}

.mail_form_intro .for_phone a {
  display: inline-block;
  color: #2f9a4e;
  font-weight: 400;
  font-size: 2.5em;
  line-height: 1;
  font-family: "Kiwi Maru", sans-serif;
  transition: all .2s linear;
}

@media screen and (max-width: 600px) {
  .mail_form_intro .for_phone a {
    font-size: 2.4em;
  }
}

.mail_form_intro .for_phone a:hover {
  opacity: .7;
  text-decoration: none;
}

.mail_form_intro .for_phone svg {
  position: relative;
  top: 9px;
  width: 30px;
}

.mail_form_intro .btn a {
  font-size: 16px;
}

.mail_form_intro .btn svg {
  position: relative;
  top: 3px;
  width: 20px;
  height: 20px;
}

.mail_form_intro ul {
  margin: 0 0 40px 0;
}

.mail_form_intro li {
  list-style: none;
  font-weight: 700;
  font-size: 14px;
}

.mail_form_intro .req {
  margin-right: 10px;
  font-family: "Kiwi Maru", sans-serif;
}

.mail_form_intro .desc {
  font-size: 14px;
}

@media screen and (max-width: 950px) {
  .mail_form_intro .desc {
    text-align: left;
  }
}

@media screen and (max-width: 950px) {
  .form_cont dl {
    margin-top: 0;
  }
}

.form_cont dt {
  font-weight: 400;
  font-size: 1.3em;
  font-family: "Kiwi Maru", sans-serif;
}

@media screen and (max-width: 950px) {
  .form_cont dt {
    font-size: 1.2em;
  }
}

.form_cont dd {
  margin: 5px 0 0 20px;
}

.form_cont .req {
  position: relative;
  top: -3px;
  margin-left: 10px;
}

.form_cont .zip input[type="text"] {
  width: 9em;
}

.form_cont .agreement {
  display: flex;
  justify-content: center;
  align-items: center;
  margin-top: 15px;
}

.privacy {
  height: 300px;
  margin-top: 30px;
  padding: 30px;
  overflow-y: scroll;
  border: 1px solid #ddd;
  background: #fff;
  font-size: .8em;
}

@media screen and (max-width: 950px) {
  .privacy {
    height: 240px;
    padding: 20px;
  }
}

.privacy h3,
.privacy h4 {
  margin-bottom: 10px;
  font-weight: 400;
  font-size: 1.75em;
  font-family: "Kiwi Maru", sans-serif;
}

@media screen and (max-width: 950px) {
  .privacy h3,
  .privacy h4 {
    font-size: 1.4em;
  }
}

.privacy p {
  line-height: 1.5;
}

#footer_company {
  margin: 0 auto;
  border: none;
  text-align: center;
}

#footer_logo .logo a {
  display: block;
  position: relative;
  width: 270px;
  margin: 0 auto 30px;
  padding-left: 65px;
  color: #444;
  font-family: "Kiwi Maru", sans-serif;
  letter-spacing: 0;
}

@media screen and (max-width: 950px) {
  #footer_logo .logo a {
    padding-left: 45px;
  }
}

#footer_logo .logo a::before {
  position: absolute;
  top: 50%;
  left: 0;
  transform: translateY(-50%);
  width: 60px;
  height: 60px;
  background: url(../img/logo.png) no-repeat center left;
  background-size: auto 100%;
  content: "";
}

@media screen and (max-width: 950px) {
  #footer_logo .logo a::before {
    background-size: auto 70%;
  }
}

#footer_logo .logo a:hover {
  color: #096d38;
}

#footer_logo .logo a span {
  font-size: 22px !important;
}

#footer_menu {
  width: 100%;
  padding-right: 0;
  padding-left: 0;
}

#footer_menu .menu {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
}

#footer_menu .menu li {
  margin: 0 15px;
}

#footer_menu .menu a:hover {
  color: #096d38;
}
/*# sourceMappingURL=style.css.map */
