@charset "utf-8";
/*
Theme Name:FPオフィス　Keep on Smile LIFE
Author:JIMOTOPAGE
Author URI:http://jimotopage.com/
*/

html, body {
  height: 100%;
}
html {
  font-size: 62.5%;
}
body {
  font-family: "ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic ProN", "游ゴシック", YuGothic, "メイリオ", Meiryo, sans-serif;
  font-size: 10px;
  font-size: 1.0rem;
  line-height: 1.5;
  width: 100%;
  -webkit-text-size-adjust: 100%; /* sp 横表示対応 */
  word-wrap: break-word;
  position: relative;
  background-image: url(img/common/bg.png);
  overflow-y: scroll;
}
@media all and (-ms-high-contrast: none) {
  body {
    font-family: "ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic ProN", "メイリオ", Meiryo, sans-serif;
  }
}
*, *:before, *:after {
  box-sizing: border-box;
}
a[href^="tel:"] {
  cursor: default;
  opacity: 1.0;
}
a:link {
  color: #000;
}
img {
  vertical-align: bottom;
}
.align-left {
  text-align: left;
}
.wrapper {
  display: flex;
  flex-direction: column;
  min-height: 100%;
}
/*------------------------------------------------------------
     common
------------------------------------------------------------ */
.clearfix::after {
  display: block;
  clear: both;
  content: "";
}
.inner {
  width: 960px;
  margin: 0 auto;
}
.color_main {
  background-color: #ca4b57;
}
.color_services {
  background-color: #ec6941;
}
.color_price {
  background-color: #f8b551;
}
.color_seminar {
  background-color: #b3d465;
}
.color_company {
  background-color: #80c269;
}
.color_access {
  background-color: #13b5b1;
}
.color_contact {
  background-color: #448aca;
}
.color_tel {
  background-color: #556fb5;
}
.center {
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  margin: auto;
}
.contentsbox {
  margin-bottom: 40px;
}
.white_hover img {
  transition: all.3s;
}
.white_hover:hover img {
  opacity: 0.7;
  filter: alpha(opacity=70);
  -ms-filter: "alpha(opacity=70)";
}
/* headline */
.headline {
  margin-bottom: 20px;
  position: relative;
  color: #CA4B57;
  font-size: 30px;
  font-size: 3rem;
  text-align: center;
}
.headline:before {
  width: 100%;
  position: absolute;
  top: 50%;
  left: 0;
  border-top: 1px dashed #CA4B57;
  content: "";
}
.headline span {
  display: inline-block;
  padding: 0 0.5em;
  position: relative;
  background-image: url(img/common/bg.png);
}
/* page top */
#pageTop {
  bottom: 64px;
  right: 48px;
  z-index: 500;
  position: fixed;
}
/* header
------------------------------------------------------------ */
.header {
  min-height: 70px;
  padding: 5px 0;
  background-color: #fff;
}
.c-header__discription {
  margin-bottom: 6px;
  font-size: 12px;
  font-size: 1.2rem;
  text-align: center;
  letter-spacing: 0.1em;
}
.h_grid_box {
  width: 343px;
  float: right;
  color: #fff;
}
.h_grid:link, .h_grid:visited, .h_telnum a:link {
  color: #fff;
}
.h_grid {
  width: 70px;
  height: 70px;
  display: block;
  float: left;
  margin-left: 6px;
  text-align: center;
  transition: all.3s;
  fill: #fff;
}
.h_grid:hover {
  background-color: #fff;
}
.access_grid {
  border: 2px solid #13B5B1;
}
.access_ico {
  margin: 13px 0 5px;
}
.access_grid:hover {
  color: #13B5B1;
  fill: #13B5B1;
}
.contact_ico {
  /*margin: 15px 0 8px;*/
  margin: 12px 0 0px;
}
.contact_grid {
  border: 2px solid #448ACA;
}
.contact_grid:hover {
  color: #448ACA;
  fill: #448ACA;
}
.access_grid p {
  font-size: 12px;
  font-size: 1.2rem;
  letter-spacing: 0.2em;
}
.contact_grid p {
  font-size: 9px;
  font-size: 0.9rem;
  letter-spacing: 0.1em;
}
.h_telbox {
  width: 185px;
  height: 70px;
  margin-left: 6px;
  float: left;
}
.h_telico {
  width: 31px;
  margin: 10px;
  float: left;
}
.h_telico img {
  margin: 0 auto 7px;
  display: block;
}
.h_telnum {
  margin-top: 9px;
  float: left;
  font-family: Arial, Helvetica, sans-serif;
  font-weight: bold;
  font-size: 16px;
  font-size: 1.6rem;
  letter-spacing: 0.1em;
}
@media all and (-ms-high-contrast: none) {
  .h_telnum {
    letter-spacing: 0.05em;
  }
}
.h_telnum a {
  margin-bottom: 6px;
  display: block;
}
/* logo */
.logo {
  float: left;
  margin-top: 10px;
}
/* nav */
.nav {
  height: 61px;
  font-size: 20px;
  font-size: 2rem;
  border-bottom: 1px solid #eee;
  background-color: #fff;
  overflow: hidden;
}
.nav li {
  width: 20%;
  float: left;
}
.nav a {
  position: relative;
  display: block;
  text-align: center;
  border-left: 1px solid #eee;
  border-top-width: 6px;
  border-top-style: solid;
  border-radius: 6px 6px 0px 0px;
  overflow: hidden;
  margin-top: 10px;
  padding: 10px 0 15px;
  transition: all.3s;
}
.nav li:last-child a {
  border-right: 1px solid #eee;
}
.nav li a:hover {
  margin-top: 0px;
  color: #fff;
}
.nav .nav_hover:link, .nav .nav_hover:visited {
  margin-top: 0px;
  color: #fff;
}
.nav_home, .nav_home:link {
  border-top-color: #BF4A54;
  color: #BF4A54;
}
.nav_home:hover, .nav_home.nav_hover {
  background-color: #BF4A54;
}
.nav_service, .nav_service:link {
  border-top-color: #EC6941;
  color: #EC6941;
}
.nav_service:hover, .nav_service.nav_hover {
  background-color: #EC6941;
}
.nav_price, .nav_price:link {
  color: #F8B551;
  border-top-color: #F8B551;
}
.nav_price:hover, .nav_price.nav_hover {
  background-color: #F8B551;
}
.nav_seminar, .nav_seminar:link {
  color: #B3D465;
  border-top-color: #B3D465;
}
.nav_seminar:hover, .nav_seminar.nav_hover {
  background-color: #B3D465;
}
.nav_company, .nav_company:link {
  color: #80C269;
  border-top-color: #80C269;
}
.nav_company:hover, .nav_company.nav_hover {
  background-color: #80C269;
}
/* footer
------------------------------------------------------------ */
.wrap {
  min-height: 100%;
  margin-bottom: -250px;
}
.footer {
  height: 250px;
  margin-top: auto;
  overflow: hidden;
}
.footer {
  padding-top: 20px;
  background-image: url(img/common/f_bg.png);
  text-align: center;
  color: #fff;
}
.f_menu, .f_menu a:link, .f_menu a:visited {
  margin-bottom: 40px;
  color: #fff;
  font-size: 18px;
  font-size: 1.8rem;
  letter-spacing: 0.05em;
}
.f_menu a:hover {
  text-decoration: underline;
}
.f_add {
  margin-bottom: 5px;
  font-size: 16px;
  font-size: 1.6rem;
  letter-spacing: 0.05em;
}
.f_telbox {
  margin: 0 auto 45px;
  width: 480px;
}
.f_telinner {
  width: 41%;
  margin-left: 20px;
  float: left;
  font-size: 23px;
  font-size: 2.2rem;
  font-weight: bold;
  letter-spacing: 0.05em;
}
.f_telinner p, .f_telinner a:link {
  float: left;
  color: #fff;
}
.f_telinner p {
  width: 18%;
}
.f_telinner a {
  width: 82%;
  font-family: Arial, Helvetica, sans-serif;
}
.f_telinner img {
  margin: 0 0 6px auto;
}
.copy {
  background-color: #434343;
  font-size: 12px;
  font-size: 1.2rem;
  letter-spacing: 0.1em;
  padding: 8px 0;
  border-style: none;
}
@media all and (-ms-high-contrast: none) {
  .copy {
    -webkit-box-sizing: content-box;
    -moz-box-sizing: content-box;
    box-sizing: content-box !important;
  }
}
/*------------------------------------------------------------
     index
------------------------------------------------------------ */
#main_image {
  position: relative;
  z-index: -2;
  background-color: #fff;
}
#main_image img {
  display: block;
  margin: 0 auto;
}
#m_image_bg {
  position: absolute;
  top: 23%;
  width: 100%;
  opacity: 1;
  z-index: -1;
  max-height: 44px;
  min-height: 14.5%;
}
#main {
  padding-top: 15px;
  padding-bottom: 130px;
}
#newsticker {
  background-color: #fff;
  padding-bottom: 42px;
  float: left;
  width: 86.46%;
  overflow: hidden;
}
#news_tab {
  width: 13.54%;
  float: left;
  color: #fff;
  font-size: 20px;
  font-size: 2rem;
  text-align: center;
  letter-spacing: 0.1em;
  position: relative;
  padding: 6px 0;
  z-index: 3;
}
#news_tab:after {
  width: 29.69px;
  height: 29.69px;
  content: "";
  background-color: #CA4B57;
  position: absolute;
  right: -15px;
  top: 6.1px;
  -moz-transform: rotate(45deg);
  -webkit-transform: rotate(45deg);
  -o-transform: rotate(45deg);
  -ms-transform: rotate(45deg);
  z-index: -1;
}
#newsticker ul {
  position: relative;
}
#newsticker ul li {
  width: 95%;
  display: none;
  overflow: hidden;
  font-size: 16px;
  font-size: 1.6rem;
  letter-spacing: 0.2em;
  white-space: nowrap;
  text-overflow: ellipsis;
}
/* ニュースが1つの場合 */
#newsticker ul li {
  display: block;
  position: absolute;
  top: 10px;
  left: 40px;
}
#newsticker ul li:nth-child(n+2) {
  display: none;
}
#newsticker ul li a {
  text-decoration: underline;
}
.color_main_h2 {
  border-bottom-color: #CA4B57;
  color: #CA4B57;
}
#life_stage ul {
  margin-bottom: 15px;
}
#life_stage ul li {
  width: 12.5%;
  color: #fff;
  position: relative;
  float: left;
}
#life_stage ul li:after {
  width: 20px;
  height: 20px;
  margin: auto;
  position: absolute;
  top: 0;
  bottom: 0;
  right: -10px;
  content: "";
  -moz-transform: rotate(45deg);
  -webkit-transform: rotate(45deg);
  -o-transform: rotate(45deg);
  -ms-transform: rotate(45deg);
}
#life_stage ul li:last-child:after {
  display: none;
}
#life_stage li p {
  padding-top: 10px;
  font-size: 24px;
  font-size: 2.4rem;
  letter-spacing: 0.2em;
  text-align: center;
}
.life_item {
  padding-bottom: 74px;
  position: relative;
}
#life_s_1 {
  background-color: #F29B76;
  z-index: 8;
}
#life_s_1:after {
  background-color: #F29B76;
}
#life_s_2 {
  background-color: #F6B37F;
  z-index: 7;
}
#life_s_2:after {
  background-color: #F6B37F;
}
#life_s_3 {
  background-color: #FACD89;
  z-index: 6;
}
#life_s_3:after {
  background-color: #FACD89;
  z-index: 6;
}
#life_s_4 {
  background-color: #CCE198;
  z-index: 5;
}
#life_s_4:after {
  background-color: #CCE198;
  z-index: 5;
}
#life_s_5 {
  background-color: #ACD598;
  z-index: 4;
}
#life_s_5:after {
  background-color: #ACD598;
  z-index: 4;
}
#life_s_6 {
  background-color: #89C997;
  z-index: 3;
}
#life_s_6:after {
  background-color: #89C997;
  z-index: 3;
}
#life_s_7 {
  background-color: #84CCC9;
  z-index: 2;
}
#life_s_7:after {
  background-color: #84CCC9;
  z-index: 2;
}
#life_s_8 {
  background-color: #88ABDA;
  z-index: 1;
}
.index_contents {
  color: #CA4B57;
  font-size: 16px;
  font-size: 1.6rem;
  line-height: 1.5;
  text-align: center;
  letter-spacing: 0.05em;
  font-family: "Hiragino Kaku Gothic ProN", "Hiragino Kaku Gothic Pro", "游明朝体", "Yu Mincho", YuMincho, "メイリオ", Meiryo, "ＭＳ ゴシック", sans-serif;
}
#other_indust ul {
  margin: 0 auto;
  width: 87.5%;
}
#other_indust ul li {
  width: 100px;
  height: 100px;
  display: block;
  float: left;
  border-radius: 50px;
  text-align: center;
  color: #fff;
  margin-bottom: 8px;
}
#other_indust ul li:nth-child(-n+5) {
  margin-right: 68px;
}
#other_indust ul li:nth-child(n+6) {
  margin-left: 68px;
}
#other_indust img {
  margin: 9px 0 2px;
}
.f_10px {
  font-size: 10px;
  font-size: 1rem;
  line-height: 1.2;
  letter-spacing: 0.05em;
}
.f_14px {
  font-size: 14px;
  font-size: 1.4rem;
  line-height: 1.14286;
  letter-spacing: 0.1em;
}
.f_16px {
  font-size: 16px;
  font-size: 1.6rem;
  letter-spacing: 0.2em;
}
.f_18px {
  font-size: 18px;
  font-size: 1.8rem;
  letter-spacing: 0.1em;
}
#indust1 {
  background-color: #89C997;
}
#indust2 {
  background-color: #FACD89;
}
#indust3 {
  background-color: #ACD598;
}
#indust4 {
  background-color: #84CCC9;
}
#indust5 {
  background-color: #F29B76;
}
#indust6 {
  background-color: #F19EC2;
}
#indust7 {
  background-color: #88ABDA;
}
#indust8 {
  background-color: #F6B37F;
}
#indust9 {
  background-color: #8F82BC;
}
#indust10 {
  background-color: #F29C9F;
}
#pageplugin {
  width: 96%;
  max-width: 500px;
  margin: 0 auto;
}
.fb_iframe_widget, .fb_iframe_widget span, .fb_iframe_widget iframe[style] {
  width: 100% !important;
}
/*------------------------------------------------------------
     kasou
------------------------------------------------------------ */
#pankuzu {
  width: 960px;
  font-size: 12px;
  font-size: 1.2rem;
  margin: 0 auto;
  line-height: 1.7;
}
#pankuzu a {
  text-decoration: underline;
}
.kasou_title {}
.kasou_contentsbox {
  margin-top: 25px;
}
.contentsbox_innar {
  margin-top: 20px;
}
/*------------------------------------------------------------
     service
------------------------------------------------------------ */
#service_c .headline, #service_c .headline:before {
  color: #EC6941;
  border-top-color: #EC6941;
}
#service_c ul {
  width: 964px;
  margin-right: -4px;
}
#service_c ul li {
  width: 478px;
  float: left;
  margin: 0 4px 4px 0;
  background-color: #FFFFFF;
}
.s_icon_box {
  width: 156px;
  height: 156px;
  float: left;
  background-color: #EC6941;
  position: relative;
}
.s_icon_box img {
  margin: auto;
  position: absolute;
  top: 0;
  left: 0;
  bottom: 0;
  right: 0;
}
.s_description_box {
  width: 322px;
  float: left;
  padding-left: 11px;
  padding-top: 8px;
  font-size: 12px;
  font-size: 1.2rem;
  line-height: 1.5;
  letter-spacing: 0.05em;
}
.s_description_box h3 {
  color: #EC6941;
  font-size: 18px;
  font-size: 1.8rem;
  letter-spacing: 0.1em;
  margin-bottom: 5px;
}
/*------------------------------------------------------------
     price
------------------------------------------------------------ */
#price_c .headline, #price_c .headline:before {
  color: #F8B551;
  border-top-color: #F8B551;
}
table {
  width: 100%;
  margin-bottom: 15px;
}
#price_c tr {
  border-bottom: 1px solid #FFF7FB;
}
#price_c th {
  width: 29.8958%;
  padding: 7px 0 4px 20px;
  color: #fff;
  font-size: 16px;
  font-size: 1.6rem;
  letter-spacing: 0.2em;
  background-color: #F8B551;
  text-align: left;
}
#price_c td {
  width: 70.1042%;
  background-color: #fff;
  vertical-align: middle;
}
.money, .money_hour {
  float: left;
  font-family: "Hiragino Kaku Gothic ProN", "Hiragino Kaku Gothic Pro", "游明朝体", "Yu Mincho", YuMincho, "メイリオ", Meiryo, "ＭＳ ゴシック", sans-serif;
  font-size: 24px;
  font-size: 2.4rem;
  letter-spacing: 0.2em;
  font-weight: bold;
}
.money {
  width: 30.76%;
  text-align: right;
  padding-right: 3%;
}
.money span {
  font-size: 12px;
  font-size: 1.2rem;
}
#price_c .contentsbox_innar > p {
  width: 96.4583%;
  margin: 0 auto;
  font-size: 18px;
  font-size: 1.8rem;
  line-height: 1.33333;
  letter-spacing: 0.05em;
}
.saturday {
  color: #00a0e9;
}
.holliday {
  color: #e60012;
}
/*------------------------------------------------------------
     seminar
------------------------------------------------------------ */
#seminar_c .headline, #seminar_c .headline:before {
  color: #f1c753;
  border-top-color: #f1c753;
}
#seminar_c th {
  color: #fff;
  border: 1px solid #B3D465;
  border-right: 1px solid #FFFAFC;
  font-size: 24px;
  font-size: 2.4rem;
  letter-spacing: 0.2em;
  vertical-align: middle;
  border-bottom: 1px solid #FFFFFF;
  padding: 10px 0;
}
#seminar_c td {
  background-color: #fff;
  font-size: 18px;
  font-size: 1.8rem;
  letter-spacing: 0.2em;
  text-align: center;
  border-width: 1px;
  border-style: solid;
  vertical-align: middle;
  padding-top: 5px;
  padding-bottom: 5px;
}
#seminar_c .time_inner {
  width: 50%;
  padding: 5px 0;
  float: left;
}
#seminar_c .seminar_place {
  font-size: 16px;
  letter-spacing: 0.05em;
}
#seminar_c .seminar_place .br {
  display: inline-block;
  margin: 0 5px;
}
.schedule {
  width: 12.6042%;
}
#seminar_c .time {
  width: 16.4584%;
  font-size: 18px;
  font-size: 1.8rem;
  letter-spacing: 0.1em;
  position: relative;
}
#seminar_c .time_con {
  font-size: 16px;
  font-size: 1.6rem;
  position: relative;
  overflow: hidden;
}
#seminar_c .time:after, #seminar_c .time_con:after {
  position: absolute;
  content: "";
  height: 100%;
  left: 50%;
  top: -2%;
}
#seminar_c .time:after {
  border-right: 1px dashed #fff;
}
#seminar_c .time_con:after {
  border-right: 1px dashed #B3D465;
}
.seminar_contents {
  width: 42.7083%;
}
#seminar_c .seminar_con {
  text-align: left;
  padding-left: 10px;
}
.seminar_con a {
  text-decoration: underline;
}
#seminar_c table .end_seminar:after {
  width: 65px;
  height: 26px;
  color: #fff;
  font-size: 16px;
  font-size: 1.6rem;
  letter-spacing: 0.2em;
  border-radius: 10px;
  background-color: #000;
  content: "終了";
  float: right;
  margin-right: 4px;
  padding-top: 1px;
  text-align: center;
}
#seminar_c p {
  font-size: 14px;
  font-size: 1.4rem;
  letter-spacing: 0.05em;
}
.note {
  display: none;
}
#seminar_c .map {
  display: inline-block;
  background-color: #B3D465;
  border: 1px solid #B3D465;
  border-radius: 10px;
  color: #fff;
  padding: 2px;
  font-size: 12px;
  transition: all.3s;
}
#seminar_c .map:hover {
  background-color: #fff !important;
  color: #B3D465;
}
#seminar_c .alarm {
  position: relative;
  margin: 40px auto 30px;
  padding: 20px;
  border-radius: 10px;
  border: dotted 2px #ff0000;
  background-color: #ffefef;
  font-size: 14px;
  clear: both;
  width: 96%;
}
#seminar_c .alarm::before {
  position: absolute;
  left: 20px;
  top: -15px;
  content: "\f071";
  background: url(img/common/bg.png);
  color: #ff0000;
  font-family: "FontAwesome";
  font-size: 26px;
  line-height: 1;
}
/* modal window */
#modal_open {
  width: 100%;
  height: 100%;
  position: absolute;
  top: 0;
  left: 0;
  display: none;
}
.close_overlay {
  width: 100%;
  height: 100%;
  display: block;
  position: fixed;
  top: 0;
  left: 0;
  opacity: 0.5;
  z-index: 5;
  text-indent: -9999px;
  background: #000;
}
.modal_window {
  width: 90%;
  max-width: 493px;
  max-height: 680px;
  display: block;
  margin: auto;
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  font-size: 13px;
  font-size: 1.3rem;
  text-align: center;
  background: #fff;
  z-index: 10;
  overflow: hidden;
}
.modal_window h3 {
  padding: 5px 0;
  font-size: 15px;
  font-size: 1.5rem;
  background: #ddd;
}
.flyer_box {
  position: relative;
  padding-bottom: 123.5%;
}
.modal_window img {
  position: absolute;
  width: 80%;
  height: auto;
  margin: 5% 10%;
  transition: all.3s;
}
.fl_btn_r, .fl_btn_l {
  position: absolute;
  top: 50%;
  margin-top: -18.5px;
  color: #ccc;
  transition: all.3s;
  cursor: pointer;
}
.fl_btn_r {
  right: 1%;
}
.fl_btn_l {
  left: 1%;
}
#flyer1_ridio, #flyer2_ridio {
  display: none;
}
#flyer1_ridio:checked ~ .flyer_box .fl_btn_l {
  opacity: 0;
}
#flyer2_ridio:checked ~ .flyer_box .fl_btn_r {
  opacity: 0;
}
#flyer1_ridio:checked ~ .flyer_box #flyer1 {
  left: 0%;
}
#flyer1_ridio:checked ~ .flyer_box #flyer2 {
  left: 100%;
}
#flyer2_ridio:checked ~ .flyer_box #flyer2 {
  left: 0%;
}
#flyer2_ridio:checked ~ .flyer_box #flyer1 {
  left: 100%;
}
@-webkit-keyframes modalFadeIn {
  0% {
    opacity: 0;
    display: block;
  }
  100% {
    opacity: 1;
  }
}
div#modal div:target {
  -webkit-animation-name: modalFadeIn;
  -webkit-animation-duration: 1s;
  -webkit-animation-iteration-count: 1;
  opacity: 1;
  display: block;
}
#seminar_c .application {
  width: 49.8%;
  display: inline-block;
  margin-bottom: 15px;
  padding: 5px 0;
  color: #fff;
  font-size: 20px;
  text-align: center;
  border: 2px solid #B3D465;
  background-color: #B3D465;
  transition: all.3s;
}
#seminar_c .application:hover {
  color: #B3D465;
  background-color: #fff;
}
#seminar_c .application.type_woman {
  border-color: #FF9E9F;
  background-color: #FF9E9F;
  box-shadow: 0 3px 0 #c16b98;
  -webkit-box-shadow: 0 3px 0 #c16b98;
  border-radius: 5px;
  display: block;
  margin: 0 auto 40px;
}
#seminar_c .application.type_woman:hover {
  box-shadow: none;
  -webkit-transform: translateY(3px);
  transform: translateY(3px);
  opacity: 1;
  color: #FFFFFF;
  background-color: #FF9E9F;
}
#seminar_c .application.type_kids {
  border-color: #f1c753;
  background-color: #f1c753;
  box-shadow: 0 3px 0 #b08200;
  -webkit-box-shadow: 0 3px 0 #b08200;
  border-radius: 5px;
  display: block;
  margin: 0 auto 40px;
}
#seminar_c .application.type_kids:hover {
  box-shadow: none;
  -webkit-transform: translateY(3px);
  transform: translateY(3px);
  opacity: 1;
  color: #FFFFFF;
  background-color: #f1c753;
}
.tb_heading_sp {
  display: none;
  padding: 20px;
  font-size: 20px;
  width: 96%;
  margin: 0 auto 15px;
  color: #FFFFFF;
  font-weight: bold;
  text-align: center;
}
.tb_heading_sp.type_kids {
  background-color: #f1c753;
}
.tb_heading_sp.type_woman {
  background-color: #FF9E9F;
}
/*#seminar_c .application.type_pink:hover {
  color: #FF9E9F;
  background-color: #fff;  
}*/
.note {
  display: none;
}
#seminar_c .type_kids th {
  background-color: #f1c753;
  border-color: #FFFFFF;
}
#seminar_c table.type_kids td, #seminar_c table.type_kids .time_con::after {
  border-color: #f1c753;
}
#seminar_c table.type_kids .map {
  background: #f1c753;
  border-color: #f1c753;
}
#seminar_c table.type_kids .map:hover {
  color: #f1c753;
}
#seminar_c table.type_woman th {
  background-color: #FF9E9F;
  border-color: #FFFFFF;
}
#seminar_c table.type_woman td, #seminar_c table.type_woman .time_con::after {
  border-color: #FF9E9F;
}
#seminar_c table.type_woman .map {
  background: #FF9E9F;
  border-color: #FF9E9F;
}
#seminar_c table.type_woman .map:hover {
  color: #FF9E9F;
}
#seminar_c #semipage_heading {
  color: #B3D465;
  border-top-color: #B3D465;
}
#seminar_c #semipage_heading:before {
  color: #B3D465;
  border-top-color: #B3D465;
}
/*------------------------------------------------------------
     company
------------------------------------------------------------ */
#company_c .headline, #company_c .headline:before {
  color: #80C269;
  border-top-color: #80C269;
}
#c_contentsbox {
  margin-bottom: 40px;
}
.c_about_box {
  width: 42.1875%;
  float: left;
  background-color: #fff;
}
.c_name_box {
  margin-bottom: 18px;
  padding: 15px 18px;
  color: #fff;
  font-size: 24px;
  font-size: 2.4rem;
  line-height: 1.25;
  letter-spacing: 0.1em;
  background-color: #80C269;
}
.c_about_innar {
  margin: 0 auto 17px;
  width: 92%;
}
.c_add_innar {
  margin-bottom: 8px;
  font-size: 18px;
  font-size: 1.8rem;
  line-height: 1.33333;
  letter-spacing: 0.05em;
}
.c_tel_box {
  margin-bottom: 12px;
  font-family: Arial, Helvetica, sans-serif;
  font-size: 18px;
  font-size: 1.8rem;
  font-weight: bold;
  letter-spacing: 0.05em;
}
.c_tel_innar {
  width: 186px;
  float: left;
}
#icon_tel {
  margin: 0 4px -4px 3px;
}
#icon_freedail {
  margin-bottom: -2px;
}
.c_about_innar .c_contact_box {
  color: #fff;
  font-size: 20px;
  font-size: 2rem;
  letter-spacing: 0.05em;
  fill: #fff;
  padding: 3% 5%;
  border: 2px solid #448ACA;
  background-color: #448ACA;
  display: block;
  transition: all.3s;
}
.c_about_innar .c_contact_box:hover {
  color: #3D8ECE;
  fill: #3D8ECE;
  background-color: #fff;
}
.c_btn_inner1, .c_btn_inner2 {
  float: left;
}
.c_btn_inner1 {
  width: 10%;
}
.c_btn_inner2 {
  width: 90%;
}
.c_contact_box svg {
  display: block;
  margin: 2px auto 0;
}
.c_contact_box p {
  text-align: center;
}
.c_about_box img {
  width: 100%;
  height: auto;
}
.map {
  width: 57.8125%;
}
#oc_box tr {
  border-bottom: 1px solid #FFFAFC;
  background-color: #fff;
  font-size: 18px;
  font-size: 1.8rem;
  letter-spacing: 0.05em;
}
#oc_box th {
  padding: 12px 0;
  color: #fff;
  letter-spacing: 0.2em;
  background-color: #80C269;
  width: 23.9583%;
}
#oc_box td {
  padding-left: 3%;
}
#oc_box td a {
  text-decoration: underline;
}
/*------------------------------------------------------------
     contact
------------------------------------------------------------ */
#contact_c .headline, #contact_c .headline:before {
  color: #448ACA;
  border-top-color: #448ACA;
}
#contact_c p {
  font-size: 16px;
  font-size: 1.6rem;
  line-height: 1.5;
  text-align: center;
  letter-spacing: 0.1em;
  margin-bottom: 15px;
}
.form_table {
  width: 90%;
  margin: 0 auto 40px;
  background-color: #fff;
  font-size: 16px;
  font-size: 1.6rem;
}
.form_table tr {
  border-bottom: 1px solid #FFFAFC;
}
.form_table th {
  width: 27.1715%;
  padding: 10px 0 10px 10px;
  color: #fff;
  letter-spacing: 0.1em;
  background-color: #448ACA;
  text-align: left;
  position: relative;
}
.form_table th span {
  font-size: 12px;
  font-size: 1.2rem;
  letter-spacing: 0.1em;
}
.form_table th .annotation {
  font-size: 10px;
  font-size: 1rem;
  line-height: 1.6;
  letter-spacing: 0.05em;
}
.form_table .required:after {
  width: 52px;
  height: 22px;
  display: block;
  color: #000;
  font-size: 16px;
  letter-spacing: 0.1em;
  border-radius: 5px;
  background-color: #FFF45C;
  content: "必須";
  text-align: center;
  position: absolute;
  top: 0.7em;
  right: 0.5em;
}
.form_table td {
  vertical-align: middle;
  text-align: center;
  padding: 0 2%;
}
.form_table .input_text {
  width: 100%;
  padding: 4px 0 4px 5px;
  border: 1px solid #d2d2d2;
  background-color: #FCFCFC;
}
.form_table .radio_box {
  width: 96%;
  margin-left: 2%;
}
.radio_box .input_radio {
  width: 20%;
  float: left;
}
.form_table select {
  width: 27%;
  padding: 0.5em 0 0.5em 5%;
  color: #646464;
  border-radius: 2px;
  border: 1px solid #d2d2d2;
  background-color: #FCFCFC;
}
.cons_contents {
  border-bottom: 1px solid #e5e5e5;
  padding: 17px 0;
}
.cons_contents:last-child {
  border-bottom-style: none;
}
.form_table .cons_title, .form_table ul {
  float: left;
  text-align: left;
}
.form_table .cons_title {
  width: 35%;
  letter-spacing: 0.1em;
}
.form_table ul li {
  font-size: 14px;
}
#textarea {
  width: 65%;
  min-height: 136px;
  border: 1px solid #d2d2d2;
  background-color: #FCFCFC;
}
#trans {
  width: 254px;
  padding: 10px 0;
  border: 2px solid #448ACA;
  background-color: #448ACA;
  color: #fff;
  font-size: 30px;
  letter-spacing: 0.2em;
  margin: 0 auto;
  display: block;
  position: relative;
  transition: all.3s;
  -webkit-appearance: none;
  cursor: pointer;
}
#trans:hover {
  color: #448ACA;
  background-color: #fff;
}
/*------------------------------------------------------------
     event_contact
------------------------------------------------------------ */
#e_contact_c .form_table th {
  background-color: #f1c753;
  color: #000;
}
.chi_title_box {
  width: 69%;
  margin-top: 5px;
  margin-right: 0;
  margin-left: 31%;
  margin-bottom: 0;
}
.chi_title_box p {
  float: left;
  margin-right: 14%;
}
.chi_title_box .chi_t_name {
  margin-right: 48%;
}
.child_box {
  border-bottom: 1px solid #eee;
  margin-top: 7px;
}
.child_box:last-child {
  border-bottom-style: none;
}
.child_name, .child_age, .child_gender, .label_right {
  float: left;
}
.child_name {
  width: 65%;
  margin-right: 5%;
  margin-top: 7px;
}
.child_age {
  width: 5%;
  margin-right: 1%;
  margin-top: 7px;
  min-width: 30px;
}
.label_right {
  margin-right: 6.5%;
  margin-top: 7px;
}
.wish_time {
  margin: 5px 0;
}
#e_contact_c .input_textarea {
  width: 100%;
}
#e_contact_c #trans {
  border-color: #f1c753;
  background-color: #f1c753;
  color: #fff;
}
#e_contact_c #trans:hover {
  color: #f1c753;
  background-color: #fff;
}
#seminar_c.type_pink .headline, #seminar_c.type_pink .headline:before {
  color: #FF9E9F;
  border-top-color: #FF9E9F;
}
#e_contact_c.type_pink .form_table th {
  background-color: #FF9E9F;
}
#e_contact_c.type_pink #trans {
  background-color: #FF9E9F;
  border-color: #FF9E9F;
}
#e_contact_c.type_pink #trans:hover {
  background-color: #fff;
  color: #FF9E9F;
}
.top_info .alarm {
  position: relative;
  margin: 40px auto 30px;
  padding: 20px;
  border-radius: 10px;
  border: dotted 2px #ff0000;
  background-color: #ffefef;
  font-size: 14px;
  clear: both;
  width: 96%;
}
.top_info .alarm::before {
  position: absolute;
  left: 20px;
  top: -15px;
  content: "\f071";
  background: url(img/common/bg.png);
  color: #ff0000;
  font-family: "FontAwesome";
  font-size: 26px;
  line-height: 1;
}
.to_enquete {
  text-align: right;
  font-size: 13px;
}
.to_enquete a {
  text-decoration: underline;
  color: blue;
}
.form_table .p-seminar-contact__list {
  float: none;
  text-align: center;
}
/* seminar 臨時枠
------------------------------------------------------------ */
.special_seminar {
  padding-top: 40px;
}
.special_seminar hr {
  margin-bottom: 40px;
}
.special_seminar .special_image {
  text-align: center;
}
.special_seminar .special_image a {
  display: inline-block;
}
.special_seminar .special_image img {
  max-width: 100%;
  height: auto;
  vertical-align: bottom;
}
/* 201910追加
------------------------------------------------------------ */
.top_banner {
  max-width: 90%;
  margin: 30px auto 30px;
  text-align: center;
}
.top_banner a {
  display: inline-block;
}
.top_banner img {
  max-width: 100%;
  height: auto;
}
.label_box {
  padding-top: 10px;
  text-align: left;
}
.label_box input[type="checkbox"] {
  margin-right: .5em;
}
.top_btn {
  text-align: center;
  margin-bottom: 40px;
}
.top_btn a {
  display: inline-block;
  padding: 10px 40px;
  ;
  background-color: #BF4A54;
  color: #FFF;
  border: 1px solid #BF4A54;
  border-radius: 10px;
  font-size: 20px;
  font-size: 2.0rem;
  font-weight: bold;
  letter-spacing: .1em;
  -webkit-transition: 0.3s;
  -moz-transition: 0.3s;
  -o-transition: 0.3s;
  -ms-transition: 0.3s;
  transition: 0.3s;
}
.top_btn a:hover {
  background-color: #FFF;
  color: #BF4A54;
}
.top_btn a br {
  display: none;
}
.form_table ul.form-list {
  float: none;
  line-height: 2;
}
.form_table ul.form-list:first-child {
  padding-top: 2%;
}
.wrap.mb-0 {
  margin-bottom: auto;
}
#counseling .headline, #counseling .headline::before {
  color: #448ACA;
  border-top-color: #448ACA;
}
#counseling .ment {
  margin-bottom: 30px;
  text-align: center;
  font-size: 16px;
}
.p-counseling__iframe {
  width: 100%;
  vertical-align: bottom;
}
.p-counseling__iframe-sp {
  height: 1700px;
}
/* top blog 2021/10/12
---------------------------------------------------------------------------- */
.p-top-blog {
  margin-bottom: 50px;
}
.p-top-blog__heading {
  padding: .5em 1em;
  background-color: rgb(202, 75, 87);
  border-radius: 5px;
  color: #FFF;
  font-size: 20px;
  font-size: 2.0rem;
  letter-spacing: .1em;
}
.p-top-blog__list {
  overflow: hidden;
}
* + .p-top-blog__list {
  margin-top: 10px;
}
.p-top-blog__list-group {
  display: flex;
  flex-wrap: wrap;
  margin: -5px;
}
.p-top-blog__list-group-item {
  display: flex;
  width: 33.333%;
  padding: 5px;
}
.p-top-blog__list-card {
  width: 100%;
  padding: 20px;
  background-color: #FFF;
  border-radius: 5px;
}
.p-top-blog__list-thumbnail {
  text-align: center;
}
.p-top-blog__list-thumbnail a {
  display: block;
  transition: .3s;
}
.p-top-blog__list-thumbnail a:hover {
  opacity: .8;
}
.p-top-blog__list-thumbnail img {
  width: 100%;
  height: auto;
}
.p-top-blog__list-date {
  margin-top: .5em;
  font-size: 16px;
  font-size: 1.6rem;
  letter-spacing: .05em;
}
.p-top-blog__list-categories {
  margin-top: .5em;
  font-size: 14px;
  font-size: 1.4rem;
  letter-spacing: .05em;
}
.p-top-blog__list-categories a {
  display: inline-block;
  padding: .1em .5em;
  background-color: rgb(202, 75, 87);
  border: 2px solid rgb(202, 75, 87);
  border-radius: 5px;
  color: #FFF;
  font-weight: 700;
  transition: .3s;
}
.p-top-blog__list-categories a:hover {
  background-color: rgb(255, 255, 255);
  color: rgb(202, 75, 87);
}
.p-top-blog__list-blogtitle {
  margin-top: .5em;
  font-size: 18px;
  font-size: 1.8rem;
  letter-spacing: .05em;
}
.p-top-blog__list-blogtitle a:hover {
  text-decoration: underline;
}

/*------------------------------------------------------------
     archive 2021/10/12
------------------------------------------------------------ */
.p-archive-list {
  overflow: hidden;
}
.p-archive-list__group {
  margin: -5px;
}
.p-archive-list__group-item {
  padding: 5px;
}
.p-archive-list__card {
  display: flex;
  padding: 10px;
  background-color: #FFF;
  border-radius: 5px;
}
.p-archive-list__thumbnail {
  width: 190px;
  flex-shrink: 0;
}
.p-archive-list__thumbnail a {
  display: block;
  transition: .3s;
}
.p-archive-list__thumbnail a:hover {
  opacity: .8;
}
.p-archive-list__thumbnail img {
  width: 100%;
  height: auto;
}
.p-archive-list__blogdata {
  margin-left: 40px;
}
.p-archive-list__date {
  font-size: 14px;
  font-size: 1.4rem;
  letter-spacing: .05em;
}
.p-archive-list__blogtitle {
  margin-top: .5em;
  font-size: 20px;
  font-size: 2.0rem;
  letter-spacing: .05em;
}
.p-archive-list__blogtitle a:hover {
  text-decoration: underline;
}
.p-archive-list__excerpt {
  margin-top: .5em;
  font-size: 14px;
  font-size: 1.4rem;
  letter-spacing: .05em;
}
.p-archive-list__more {
  margin-top: .75em;
  font-size: 14px;
  font-size: 1.4rem;
  font-weight: 700;
  letter-spacing: .05em;
  text-decoration: underline;
}
/* wp pagenavi */
.wp-pagenavi {
  display: flex;
  flex-wrap: wrap;
  margin: 0 -5px;
}
* + .wp-pagenavi {
  margin-top: 25px;
}
.wp-pagenavi a, .wp-pagenavi span {
  display: flex;
  align-items: center;
  justify-content: center;
  min-width: 30px;
  height: 30px;
  background-color: #FFF;
  border: 2px solid rgb(202, 75, 87);
  border-radius: 5px;
  margin: 5px;
  color: rgb(202, 75, 87);
  font-size: 16px;
  font-size: 1.6rem;
  font-weight: 700;
  transition: .3s;
}
.wp-pagenavi a:hover, .wp-pagenavi span {
  background-color: rgb(202, 75, 87);
  color: #FFF;
}
/*------------------------------------------------------------
     404
------------------------------------------------------------ */
.p-404__heading {
  font-size: 24px;
  font-size: 2.4rem;
}
.p-404__text {
  margin-top: 1em;
  font-size: 16px;
  font-size: 1.6rem;
}