@charset "UTF-8";
/*
Theme Name: runrun-hoikuen.com
Version: 1.0.0
Author: ICC Co.Ltd.
License: ICC Co.Ltd.
*/
@media screen and (min-width: 768px) {
  .pc_br {
    display: block;
  }
}

.sp_br {
  display: block;
}

@media screen and (min-width: 768px) {
  .sp_br {
    display: none;
  }
}

.md_br {
  display: block;
}

@media screen and (min-width: 481px) {
  .md_br {
    display: none;
  }
}

/* -- contact_form --
--------------------------------------------------------------　*/
@media screen and (max-width: 767px) {
  .contact_form .form_inner {
    padding: 30px 10px;
  }
}

@media screen and (min-width: 768px) {
  .contact_form .form_inner {
    padding: 50px 20px;
    width: 80%;
    margin: 0 auto;
  }
}

.contact_form p {
  display: none;
}

.contact_form .requiredmark {
  display: inline-block;
  margin-left: 15px;
  background: #ffcce5;
  padding: 3px 5px;
  color: #fff;
  font-weight: normal;
  font-size: 12px;
  line-height: 1;
}

@media screen and (max-width: 767px) {
  .contact_form .requiredmark {
    font-size: 11px;
  }
}

.contact_form div.wpcf7-mail-sent-ok, .contact_form div.wpcf7-validation-errors {
  border: double 4px #ffcce5;
  font-weight: bold;
  font-size: 20px;
  padding: 10px;
  display: block;
  margin: 30px auto;
  text-align: center;
  background-color: #fff;
}

@media screen and (max-width: 767px) {
  .contact_form div.wpcf7-mail-sent-ok, .contact_form div.wpcf7-validation-errors {
    font-size: 15px;
  }
}

.contact_form form.sent .acceptance, .contact_form form.sent .submit {
  display: none;
}

.contact_form form table {
  border-collapse: collapse;
}

.contact_form form table tr:last-child th, .contact_form form table tr:last-child td {
  border: none;
}

.contact_form form table th, .contact_form form table td {
  vertical-align: top;
}

@media screen and (min-width: 768px) {
  .contact_form form table th, .contact_form form table td {
    border-bottom: dashed 1px #b3b3b3;
  }
}

@media screen and (max-width: 767px) {
  .contact_form form table th, .contact_form form table td {
    padding: 7px;
    display: block;
    width: 100%;
    vertical-align: middle;
  }
}

@media screen and (min-width: 768px) {
  .contact_form form table th {
    padding: 15px 10px 7px 20px;
  }
}

@media screen and (min-width: 768px) {
  .contact_form form table td {
    padding: 10px;
  }
}

.contact_form form table .wpcf7-form-control {
  margin: 5px;
}

.contact_form form input.s_size {
  margin-left: 10px;
}

.contact_form form input.s_size[type=text] {
  width: 30%;
}

.contact_form form input[type=tel], .contact_form form input[type=number], .contact_form form input[type=number], .contact_form form input[type=text], .contact_form form input[type=email] {
  padding: 5px;
  border: solid 1px #ccc;
  background-color: #fff;
}

@media screen and (max-width: 767px) {
  .contact_form form input[type=tel], .contact_form form input[type=number], .contact_form form input[type=number], .contact_form form input[type=text], .contact_form form input[type=email] {
    font-size: 14px;
  }
}

.contact_form form input[type=tel] {
  width: 16em;
}

.contact_form form input[type=number] {
  width: 3em;
}

.contact_form form input[type=text] {
  width: 98%;
}

.contact_form form input[type=text]#zip, .contact_form form input[type=text]#pref {
  width: 16em;
}

.contact_form form input[type=email] {
  width: 98%;
}

.contact_form form input[type="radio"] {
  margin: 0 0 4px 0 !important;
}

.contact_form form input[type=submit] {
  display: block;
  width: 200px;
  padding: 10px;
  margin: 0 auto;
  font-size: 14px;
  cursor: pointer;
  color: #ffcce5;
  background: #fff;
  border: solid 1px #ffcce5;
  letter-spacing: 5px;
}

.contact_form form input[type=submit]:hover {
  color: #fff;
  background: #ffcce5;
  border: solid 1px #ffcce5;
}

.contact_form form input[type="submit"][disabled] {
  cursor: not-allowed;
  width: 200px;
}

.contact_form form input[type="submit"][disabled]:hover {
  background: #fff;
  border: solid 1px #ff0000;
  color: #ff0000;
}

.contact_form form .acceptance {
  padding: 10px 0;
  margin: 10px auto;
  font-size: 14px;
  text-align: center;
}

.contact_form form .acceptance input[type="checkbox"] {
  margin: 0;
}

.contact_form form .acceptance span {
  vertical-align: middle;
}

.contact_form form textarea {
  width: 98%;
  padding: 5px;
  border: solid 1px #ccc;
  background-color: #fff;
}

.contact_form form .form_select {
  overflow: hidden;
  width: 90%;
  margin-left: 5px;
  text-align: center;
}

.contact_form form .form_select select {
  width: 100%;
  cursor: pointer;
  text-indent: 0.01px;
  text-overflow: ellipsis;
  border: none;
  outline: none;
  background: transparent;
  background-image: none;
  box-shadow: none;
  -webkit-appearance: none;
  -moz-appearance: none;
       appearance: none;
}

.contact_form form .form_select select::-ms-expand {
  display: none;
}

.contact_form form .form_select {
  position: relative;
  border: 1px solid #bbbbbb;
  border-radius: 2px;
  background: #ffffff;
}

.contact_form form .form_select::before {
  position: absolute;
  top: 0.8em;
  right: 0.9em;
  width: 0;
  height: 0;
  padding: 0;
  content: '';
  border-left: 6px solid transparent;
  border-right: 6px solid transparent;
  border-top: 6px solid #666666;
  pointer-events: none;
}

.contact_form .form_btn_group {
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
}

.contact_note li {
  margin-left: 1em;
  text-indent: -1em;
}

.contact_note li:before {
  display: inline;
  content: '＊';
}

/* --------------------------------------------------------------
// Reset
// @font-face
// framework && common
//// site_title site_tel
//// common
// col f_size
// back_to_top
// breadcrumb
// Pager
// single_pager
// post_style
// contact_form
// Base Styles
-------------------------------------------------------------- */
/* -- Reset --
--------------------------------------------------------------　*/
html,
body,
div,
span,
applet,
object,
iframe,
h1,
h2,
h3,
h4,
h5,
h6,
p,
blockquote,
pre,
a,
abbr,
acronym,
address,
cite,
code,
del,
dfn,
ins,
kbd,
q,
s,
samp,
strike,
sub,
sup,
tt,
var,
dl,
dt,
dd,
ol,
ul,
li,
fieldset,
form,
label,
legend,
table,
caption,
tbody,
tfoot,
thead,
tr,
th,
td,
figure {
  border: 0;
  font-style: inherit;
  font-weight: inherit;
  margin: 0;
  outline: 0;
  padding: 0;
  vertical-align: baseline;
}

* {
  box-sizing: border-box;
}

*:before, *:after {
  box-sizing: inherit;
}

article,
aside,
details,
figcaption,
figure,
footer,
header,
main,
nav,
section {
  display: block;
}

ol,
ul,
li {
  list-style-type: none;
}

table {
  width: 100%;
  border-collapse: collapse;
  border-spacing: 0;
}

table caption,
table th,
table td {
  font-weight: normal;
  text-align: left;
}

/* -- @font-face --
--------------------------------------------------------------　*/
@font-face {
  font-family: 'riipopkkr';
  src: url("fonts/RiiPopkkR.eot?tzkoro");
  src: url("fonts/RiiPopkkR.eot?tzkoro#iefix") format("embedded-opentype"), url("fonts/RiiPopkkR.woff") format("woff"), url("fonts/RiiPopkkR.otf") format("otf");
  font-weight: normal;
  font-style: normal;
}

h3, h3.bg_green, #header, #footer, .home {
  font-family: 'riipopkkr';
}

@font-face {
  font-family: 'icomoon';
  src: url("fonts/icomoon.eot?tzkoro");
  src: url("fonts/icomoon.eot?tzkoro#iefix") format("embedded-opentype"), url("fonts/icomoon.ttf?tzkoro") format("truetype"), url("fonts/icomoon.woff?tzkoro") format("woff"), url("fonts/icomoon.svg?tzkoro#icomoon") format("svg");
  font-weight: normal;
  font-style: normal;
}

[class^="icon-"],
[class*=" icon-"] {
  /* use !important to prevent issues with browser extensions that change fonts */
  font-family: 'icomoon' !important;
  speak: none;
  font-style: normal;
  font-weight: normal;
  font-variant: normal;
  text-transform: none;
  line-height: 1;
  /* Better Font Rendering =========== */
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}

.icon-facebook:before {
  content: "\e849";
}

.icon-twitter:before {
  content: "\e84d";
}

.icon-phone:before {
  content: "\e81b";
}

.icon-mail2:before {
  content: "\e844";
}

/* -- framework && common --
--------------------------------------------------------------　*/
/* framework ---------------------------------*/
body {
  background: #fff;
  font-family: "メイリオ", "Meiryo", "Lucida Sans Unicode", "Lucida Grande", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "ＭＳ Ｐゴシック", "MS PGothic", Sans-Serif;
  color: #323232;
  line-height: 1em;
}

html,
body {
  height: 100%;
}

html {
  font-size: 62.5%;
}

.login #login h1 a {
  background: url(images/common/logo.png) center/contain no-repeat !important;
  width: 445px;
  max-width: 100%;
  height: 70px;
  display: block;
}

h2,
h3,
h4,
h5,
h6 {
  line-height: 1.3;
}

#main {
  line-height: 1.7;
  letter-spacing: 1px;
}

header,
#site_navigation,
#mainvisualarea,
#breadcrumb,
#pagetitlearea,
#content,
footer {
  width: 100%;
}

.ofi {
  object-fit: cover;
  font-family: "object-fit:cover;";
}

.bg_white {
  background: #fff;
}

a {
  color: #323232;
  text-decoration: none;
}

a:hover, a:active {
  outline: 0;
  opacity: 0.7;
  transition: opacity .2s ease-out;
}

a img {
  border: 0;
}

a img:hover, a img:active {
  outline: 0;
  opacity: 0.7;
  transition: opacity .2s ease-out;
}

img {
  border: 0;
  max-width: 100%;
  height: auto;
  vertical-align: bottom;
}

.mainwrap {
  margin: 0 auto;
}

@media screen and (max-width: 980px) {
  .mainwrap {
    max-width: 98%;
  }
}

@media screen and (min-width: 981px) {
  .mainwrap {
    max-width: 970px;
  }
}

@media screen and (max-width: 767px) {
  .mainwrap.mw_max {
    max-width: 100%;
    margin: 0 0;
  }
}

.img_zoom {
  display: block;
  overflow: hidden;
}

.img_zoom .img {
  overflow: hidden;
  margin-bottom: 1em;
}

.img_zoom img {
  -webkit-transform: scale(1);
      -ms-transform: scale(1);
          transform: scale(1);
  transition: all 0.5s linear;
}

.img_zoom:active img {
  transition: all 0.5s linear;
  -webkit-transform: scale(1.15);
      -ms-transform: scale(1.15);
          transform: scale(1.15);
}

@media screen and (min-width: 768px) {
  .img_zoom:hover img {
    transition: all 0.5s linear;
    -webkit-transform: scale(1.15);
        -ms-transform: scale(1.15);
            transform: scale(1.15);
  }
}

.btn {
  overflow: hidden;
  position: relative;
  font-size: 13px;
  font-size: 1.3rem;
  color: #fc4a1a;
  background: #fff;
  border: 1px solid #fc4a1a;
  display: block;
  line-height: 1;
  padding: 0.75em;
  max-width: 20em;
  margin: auto;
  text-align: center;
  border-radius: 10px;
}

.btn span {
  position: relative;
  z-index: 1;
  transition: color 1s linear;
}

.btn:after {
  background: #fc4a1a;
  position: absolute;
  top: 0;
  left: -100%;
  width: 100%;
  height: 100%;
  content: "";
  transition: all .5s linear;
}

.btn:active span {
  color: #fff;
}

.btn:active:after {
  transition: all .5s linear;
  -webkit-transform: rotate(180deg);
      -ms-transform: rotate(180deg);
          transform: rotate(180deg);
  -webkit-transform-origin: center right;
      -ms-transform-origin: center right;
          transform-origin: center right;
}

@media screen and (min-width: 768px) {
  .btn:hover span {
    color: #fff;
  }
  .btn:hover:after {
    transition: all .5s linear;
    -webkit-transform: rotate(180deg);
        -ms-transform: rotate(180deg);
            transform: rotate(180deg);
    -webkit-transform-origin: center right;
        -ms-transform-origin: center right;
            transform-origin: center right;
  }
}

.btn.btn_contact, .btn.btn_recruit {
  font-size: 18px;
  font-size: 1.8rem;
  width: 9.5em;
  line-height: 1;
  padding: 0.5em 0;
  text-align: center;
  color: #fff;
}

.btn.btn_contact {
  background: #43c0f6;
  border: 1px solid #43c0f6;
}

.btn.btn_contact:after {
  background: #fff;
}

.btn.btn_contact:active span {
  color: #43c0f6;
}

@media screen and (min-width: 768px) {
  .btn.btn_contact:hover span {
    color: #43c0f6;
  }
}

.btn.btn_recruit {
  background: #8fc33a;
  border: 1px solid #8fc33a;
}

.btn.btn_recruit:after {
  background: #fff;
}

.btn.btn_recruit.active span {
  color: #8fc33a;
}

@media screen and (min-width: 768px) {
  .btn.btn_recruit:hover span {
    color: #8fc33a;
  }
}

ul li {
  margin-bottom: 2em;
}

@media screen and (min-width: 768px) {
  ul li {
    margin-bottom: 0;
  }
}

h3 {
  text-align: center;
  margin-bottom: 2em;
}

h3.bg_green {
  font-size: 20px;
  font-size: 2rem;
  color: #fff;
  text-align: center;
  background: #8fc33a;
  line-height: 1;
  padding: 0.75em 0;
}

h3.bg_blue span {
  background: #33a7e0;
}

@media screen and (min-width: 768px) {
  h3 {
    margin-bottom: 3em;
  }
}

h3 span {
  display: inline-block;
  font-size: 20px;
  font-size: 2rem;
  padding: 0.25em 1.25em;
  display: inline-block;
  background: #ffcade;
  border-radius: 10px;
}

@media screen and (min-width: 768px) {
  h3 span {
    font-size: 24px;
    font-size: 2.4rem;
  }
}

@media screen and (min-width: 768px) {
  h3 span {
    padding: 0.25em 2.5em;
  }
}

/* common ---------------------------------*/
.clear:after {
  display: block;
  content: "";
  clear: both;
  overflow: hidden;
}

.tar {
  text-align: right;
}

.break_word {
  word-wrap: break-word;
}

.mb5 {
  margin-bottom: 5px !important;
}

.mb7 {
  margin-bottom: 7px !important;
}

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

.mb15 {
  margin-bottom: 15px !important;
}

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

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

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

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

.mb120 {
  margin-bottom: 120px !important;
}

.lh14 {
  line-height: 1.4em !important;
}

.lh17 {
  line-height: 1.7em !important;
}

.lh2 {
  line-height: 2em !important;
}

.text_left {
  text-align: left !important;
}

.text_right {
  text-align: right !important;
}

.text_center {
  text-align: center !important;
}

.text_red {
  color: #f00 !important;
}

/* switch */
.switch {
  visibility: hidden;
}

@media screen and (max-width: 767px) {
  .spview,
  .sp_taview,
  .sp_pcview {
    display: block !important;
  }
  .taview,
  .ta_pcview,
  .pcview {
    display: none !important;
  }
}

@media screen and (min-width: 768px) and (max-width: 980px) {
  .sp_taview,
  .taview,
  .ta_pcview {
    display: block !important;
  }
  .spview,
  .sp_pcview,
  .pcview {
    display: none !important;
  }
}

@media screen and (min-width: 981px) {
  .sp_pcview,
  .ta_pcview,
  .pcview {
    display: block !important;
  }
  .spview,
  .sp_taview,
  .taview {
    display: none !important;
  }
}

@media screen and (min-width: 768px) {
  .leftdir {
    float: left;
  }
  .rightdir {
    float: right;
  }
}

/* -- original common --
--------------------------------------------------------------　*/
strong,
b,
.bold {
  font-weight: bold;
}

small,
.small {
  font-size: 14px;
}

.img img {
  width: 100%;
}

.bg_w {
  background: #fff;
}

.bg_g {
  background: #F2F2F2;
}

.ta_c {
  text-align: center;
}

/* -- col f_size --
--------------------------------------------------------------　*/
@media screen and (max-width: 767px) {
  .col2_wrap .col2_item,
  .col3_wrap .col3_item,
  .col4_wrap .col4_item {
    margin-bottom: 15px;
  }
  .col2_wrap .col2_item a,
  .col3_wrap .col3_item a,
  .col4_wrap .col4_item a {
    display: block;
  }
  .col2_wrap .col2_item:nth-child(2n), .col2_wrap .col2_item:last-child {
    margin-right: 0;
  }
  .col3_wrap .col3_item:nth-child(3n), .col3_wrap .col3_item:last-child {
    margin-right: 0;
  }
  .col4_wrap .col4_item:nth-child(4n),
  .col5_wrap.col5_item:nth-child(5n) {
    margin-right: 0;
  }
  .f_size55 .leftdir,
  .f_size55 .rightdir,
  .f_size64 .leftdir,
  .f_size64 .rightdir,
  .f_size46 .leftdir,
  .f_size46 .rightdir,
  .f_size73 .leftdir,
  .f_size73 .rightdir,
  .f_size37 .leftdir,
  .f_size37 .rightdir,
  .f_size82 .leftdir,
  .f_size82 .rightdir,
  .f_size28 .leftdir,
  .f_size28 .rightdir,
  .f_size91 .leftdir,
  .f_size91 .rightdir,
  .f_size19 .leftdir,
  .f_size19 .rightdir {
    float: none;
    width: auto;
    margin-bottom: 30px;
  }
}

@media screen and (min-width: 768px) {
  /* col2_wrap */
  .col2_wrap:after {
    display: block;
    content: "";
    clear: both;
    overflow: hidden;
  }
  .col2_wrap .col2_item {
    width: 49%;
    float: left;
    margin-right: 2%;
  }
  .col2_wrap .col2_item:nth-child(2n) {
    float: right;
    margin-right: 0;
  }
  /* col3_wrap */
  .col3_wrap:after {
    display: block;
    content: "";
    clear: both;
    overflow: hidden;
  }
  .col3_item {
    float: left;
    width: 32%;
    margin-right: 2%;
  }
  .col3_item:nth-child(3n) {
    margin-right: 0;
  }
  .col3_item:nth-child(3n+1) {
    clear: left;
  }
  /* col4_item */
  .col4_wrap:after {
    display: block;
    content: "";
    clear: both;
    overflow: hidden;
  }
  .col4_wrap .col4_item {
    width: 23.5%;
    float: left;
    margin-right: 2%;
  }
  .col4_wrap .col4_item:nth-child(4n) {
    margin-right: 0;
  }
  .col4_wrap .col4_item:nth-child(4n+1) {
    clear: left;
  }
  /* col5_item */
  .col5_wrap:after {
    display: block;
    content: "";
    clear: both;
    overflow: hidden;
  }
  .col5_wrap .col5_item {
    width: 19.2%;
    float: left;
    margin-right: 1%;
  }
  .col5_wrap .col5_item:nth-child(5n) {
    margin-right: 0;
  }
  .col5_wrap .col5_item:nth-child(5n+1) {
    clear: left;
  }
  .f_size55:after,
  .f_size64:after,
  .f_size46:after,
  .f_size73:after,
  .f_size37:after,
  .f_size82:after,
  .f_size28:after,
  .f_size91:after,
  .f_size19:after {
    display: block;
    content: "";
    clear: both;
    overflow: hidden;
  }
  .f_size55 > .leftdir {
    width: 49%;
  }
  .f_size55 > .rightdir {
    width: 49%;
  }
  .f_size64 > .leftdir {
    width: 59%;
  }
  .f_size64 > .rightdir {
    width: 39%;
  }
  .f_size46 > .leftdir {
    width: 39%;
  }
  .f_size46 > .rightdir {
    width: 59%;
  }
  .f_size73 > .leftdir {
    width: 69%;
  }
  .f_size73 > .rightdir {
    width: 29%;
  }
  .f_size37 > .leftdir {
    width: 29%;
  }
  .f_size37 > .rightdir {
    width: 69%;
  }
  .f_size82 > .leftdir {
    width: 79%;
  }
  .f_size82 > .rightdir {
    width: 19%;
  }
  .f_size28 > .leftdir {
    width: 19%;
  }
  .f_size28 > .rightdir {
    width: 79%;
  }
  .f_size91 > .leftdir {
    width: 89%;
  }
  .f_size91 > .rightdir {
    width: 9%;
  }
  .f_size19 > .leftdir {
    width: 9%;
  }
  .f_size19 > .rightdir {
    width: 89%;
  }
}

/* -- back_to_top --
--------------------------------------------------------------　*/
#back_to_top {
  position: fixed;
  z-index: 9999;
  right: 5px;
  bottom: 5px;
  width: 45px;
}

@media screen and (min-width: 768px) and (max-width: 980px) {
  #back_to_top {
    right: 20px;
    bottom: 20px;
  }
}

@media screen and (min-width: 981px) {
  #back_to_top {
    right: 45px;
    bottom: 45px;
  }
}

/* -- breadcrumb --
--------------------------------------------------------------　*/
#breadcrumb {
  background: #fff;
}

#breadcrumb ul {
  overflow: hidden;
  max-width: 970px;
  margin: 0 auto;
}

#breadcrumb li {
  float: left;
  padding: 5px 5px 5px 0;
  font-size: 11px;
  color: #b3b3b3;
}

#breadcrumb a {
  display: block;
  color: #b3b3b3;
}

@media screen and (max-width: 767px) {
  #breadcrumb li {
    font-size: 10px;
  }
  #breadcrumb li a {
    font-size: 10px;
  }
}

/* Pager --
--------------------------------------------------------------　*/
.pagination {
  display: inline-block;
  overflow: hidden;
  clear: both;
  position: relative;
  padding: 20px 0;
}

.pagination span {
  display: block;
  float: left;
  margin: 2px 5px 2px 0;
  padding: 6px;
  text-decoration: none;
  width: auto;
  color: #fff;
  background: #ffcce5;
}

.pagination a {
  display: block;
  float: left;
  margin: 2px 5px 2px 0;
  padding: 6px;
  text-decoration: none;
  width: 38px;
  background: #ffcce5;
  color: #fff;
  text-align: center;
  border-radius: 50%;
}

.pagination a:hover {
  color: #fff;
  background-color: #32a7e0;
  opacity: 1;
  border-radius: 50%;
}

.pagination .current {
  background: #32a7e0;
  color: #fff;
  padding: 6px;
  text-align: center;
  width: 38px;
  border-radius: 50%;
}

/* single_pager --
--------------------------------------------------------------　*/
.single_pager {
  clear: both;
  overflow: hidden;
  margin-bottom: 30px;
}

.single_pager a {
  display: inline-block;
  padding: 5px 15px;
  border: 1px solid #ffcce5;
  background: #ffcce5;
  color: #fff;
  transition: all .3s;
}

.single_pager a:hover {
  border: 1px solid #ffcce5;
  background: #fff;
  color: #ffcce5;
  opacity: 1;
}

.single_pager .left,
.single_pager .right {
  display: inline-block;
}

.single_pager .left {
  float: left;
}

.single_pager .right {
  float: right;
  text-align: right;
}

/* ------------------------------------------------------------------------- *
*  Base Styles
/* ------------------------------------------------------------------------- */
.single .entry_content {
  /*  base : img
    /* ------------------------------------ */
  /*  base : clear
    /* ------------------------------------ */
}

.single .entry_content p {
  display: block;
  margin: 1em 0;
}

.single .entry_content h1,
.single .entry_content h2,
.single .entry_content h3,
.single .entry_content h4,
.single .entry_content h5,
.single .entry_content h6,
.single .entry_content ul,
.single .entry_content li,
.single .entry_content img,
.single .entry_content table,
.single .entry_content tr,
.single .entry_content th,
.single .entry_content td,
.single .entry_content dl,
.single .entry_content dt,
.single .entry_content dd {
  font-weight: normal;
  margin: 0px;
  padding: 0px;
  border: none;
  list-style-type: none;
}

.single .entry_content strong {
  font-weight: bold;
}

.single .entry_content em {
  font-style: italic;
}

.single .entry_content blockquote {
  display: block;
  -webkit-margin-before: 1em;
  -webkit-margin-after: 1em;
  -webkit-margin-start: 40px;
  -webkit-margin-end: 40px;
}

.single .entry_content .aligncenter {
  display: block;
  margin: 0 auto;
}

.single .entry_content .alignright {
  float: right;
}

.single .entry_content .alignleft {
  float: left;
}

.single .entry_content img[class*="wp-image-"],
.single .entry_content img[class*="attachment-"] {
  max-width: 100%;
  height: auto;
}

.single .entry_content .clearfix {
  overflow: hidden;
  zoom: 1;
}

.single .entry_content .clearfix:after {
  content: ".";
  display: block;
  clear: both;
  height: 0;
  visibility: hidden;
}

/*  title : wrap
/* ------------------------------------ */
@media screen and (min-width: 768px) {
  .title.nowrap {
    overflow: hidden;
    white-space: nowrap;
    text-overflow: ellipsis;
    -webkit-text-overflow: ellipsis;
    -o-text-overflow: ellipsis;
  }
}

@media screen and (min-width: 768px) {
  .pc_br {
    display: block;
  }
}

.sp_br {
  display: block;
}

@media screen and (min-width: 768px) {
  .sp_br {
    display: none;
  }
}

.md_br {
  display: block;
}

@media screen and (min-width: 481px) {
  .md_br {
    display: none;
  }
}

/* original common --
--------------------------------------------------------------ã€€*/
.section_heading {
  font-family: "vdl-megamaru";
  font-size: 24px;
  text-align: center;
}

@media screen and (max-width: 767px) {
  .section_heading {
    font-size: 18px;
  }
}

.section_heading .border-pink, .section_heading .border-white {
  display: inline-block;
  padding: 0 30px 15px 30px;
}

.section_heading .border-white {
  border-bottom: 3px solid #fff;
}

.section_heading .border-pink {
  border-bottom: 3px solid #ffcce5;
}

/* --------------------------------------------------------------
// original common
// page underlalayer
// category underlalayer
// single page
-------------------------------------------------------------- */
/* -- post_normal.php --
--------------------------------------------------------------　*/
.posts_list_item {
  padding: 15px;
  margin-bottom: 2em;
  background: #fff;
}

.posts_list_inner {
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-justify-content: space-between;
      -ms-flex-pack: justify;
          justify-content: space-between;
  -webkit-align-items: stretch;
      -ms-flex-align: stretch;
          align-items: stretch;
  width: 100%;
  padding: 1.5em;
}

@media screen and (max-width: 767px) {
  .posts_list_inner {
    -webkit-flex-wrap: wrap;
        -ms-flex-wrap: wrap;
            flex-wrap: wrap;
  }
}

.posts_list_img {
  width: 40%;
  margin-right: 1.5em;
}

@media screen and (max-width: 767px) {
  .posts_list_img {
    width: 100%;
    margin-right: 0;
    margin-bottom: 1em;
  }
}

.posts_list_txt {
  width: 60%;
}

@media screen and (max-width: 767px) {
  .posts_list_txt {
    width: 100%;
  }
}

.posts .date {
  width: 100%;
  color: #666666;
}

.posts_ttl {
  font-size: 16px;
  font-size: 1.6rem;
}

.posts_content {
  font-size: 14px;
  font-size: 1.4rem;
  line-height: 1.75;
}

.posts .nopost {
  text-align: center;
  margin-bottom: 12em;
}

/* single page --
--------------------------------------------------------------　*/
#single #pn_post .title {
  background-color: #ffcce5;
  color: #fff;
  padding: 5px 10px;
  font-size: 16px;
  font-size: 1.6rem;
}

#single #pn_post .posttxt {
  background-color: #fff;
  padding: 5px 30px 30px 30px;
}

#single #pn_post .posttxt .day {
  color: #b3b3b3;
  text-align: right;
  font-size: 12px;
  font-size: 1.2rem;
  margin-bottom: 1.5em;
}

#single #pn_post .posttxt .des p {
  font-size: 14px;
  font-size: 1.4rem;
  margin-bottom: 1em;
}

/* -- header --
--------------------------------------------------------------　*/
#header #site_description_area {
  /*position: relative;
                padding-top: 260px;
        .header_visual{
            position: absolute;
            top: 0;
            z-index: 0;
            img{
                width: 100%;
                height: 260px;
            }
        }*/
}

#header #site_description_area h1 {
  display: none;
}

@media screen and (min-width: 768px) {
  #header #site_description_area h1 {
    display: block;
    padding: 3px 0;
    background: #ffcce5;
    font-size: 10px;
    color: #fff;
    text-align: center;
  }
}

#header #site_description_area .ta_pcview {
  position: relative;
  height: 260px;
}

#header #site_description_area .ta_pcview .header_visual {
  width: 100%;
  position: absolute;
  top: 0;
  z-index: 0;
}

#header #site_description_area .ta_pcview .header_visual img.ofi {
  width: 100%;
  height: 260px;
  object-position: bottom;
  font-family: "object-fit: cover;object-position: bottom;";
}

#header #site_description_area .ta_pcview .header_logo_pc {
  position: absolute;
  top: -15px;
}

@media screen and (min-width: 1600px) {
  #header #site_description_area .ta_pcview .header_logo_pc {
    top: -45px;
  }
}

/* -- fixed_button
--------------------------------------------------------------　*/
/* -- mainvisualarea ---- pagetitlearea --
--------------------------------------------------------------　*/
@media screen and (max-width: 767px) {
  .mainvisualarea,
  #pagetitlearea {
    margin-top: 20px;
  }
}

/* -- mainvisualarea --
--------------------------------------------------------------　*/
.mainvisual {
  position: relative;
  padding-bottom: 10px;
  background: url(images/mv_bg.jpg) 50% 50% no-repeat;
  background-size: cover;
  overflow: hidden;
}

@media screen and (max-width: 767px) {
  .mainvisual {
    margin-top: 55px;
  }
}

.mainvisual .bx-wrapper {
  max-width: 970px !important;
  margin: auto;
  padding: 10px;
  background: #fff;
  box-shadow: none;
  overflow: hidden;
}

@media screen and (max-width: 767px) {
  .mainvisual .bx-wrapper {
    width: 97% !important;
  }
}

.mainvisual .bx-wrapper .bx-viewport {
  overflow: visible !important;
}

.mainvisual .bx-wrapper .mainvisual_list {
  width: 90%;
}

.mainvisual #slider {
  margin: auto;
  width: 100%;
}

.mainvisual #slider img {
  width: 100%;
}

/* -- pagetitlearea --
--------------------------------------------------------------　*/
#pagetitlearea {
  position: relative;
  z-index: 1;
  width: 100%;
  height: 170px;
  background-color: #d6edf9;
  text-align: left;
}

@media screen and (max-width: 767px) {
  #pagetitlearea {
    height: 120px;
  }
}

#pagetitlearea .mainwrap {
  position: relative;
  z-index: 2;
  max-width: 970px;
  width: 100%;
  height: inherit;
}

#pagetitlearea .pagetitle_bg_wrap {
  position: absolute;
  top: 50%;
  -webkit-transform: translateY(-50%);
      -ms-transform: translateY(-50%);
          transform: translateY(-50%);
  z-index: 3;
  width: 100%;
}

#pagetitlearea .pagetitle_bg_inner {
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-justify-content: space-between;
      -ms-flex-pack: justify;
          justify-content: space-between;
}

@media screen and (max-width: 767px) {
  #pagetitlearea .pagetitle_bg_item {
    width: 20%;
  }
}

#pagetitlearea .pagetitle_heading {
  font-size: 20px;
  font-size: 2rem;
  padding-left: 0.2em;
  line-height: 170px;
}

@media screen and (min-width: 768px) {
  #pagetitlearea .pagetitle_heading {
    font-size: 30px;
    font-size: 3rem;
  }
}

#pagetitlearea .pagetitle_heading_wrap {
  position: relative;
  z-index: 4;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  height: inherit;
  background: url(images/common/pageindex.png) center/cover no-repeat;
  background-size: auto;
}

/* -- breadcrumb --
--------------------------------------------------------------　*/
/* -- page_description_area --
--------------------------------------------------------------　*/
/* -- globalnaviarea_wrap --
--------------------------------------------------------------¡¡*/
.header_linklist {
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-justify-content: flex-end;
      -ms-flex-pack: end;
          justify-content: flex-end;
  max-width: 850px;
  margin: auto;
}

.header_linklist_item {
  background: #ccffe6;
  margin-right: 10px;
  border-radius: 0 0 10px 10px;
}

.header_linklist_link {
  display: block;
  padding: 5px 15px;
  font-size: 12px;
}

@media screen and (max-width: 767px) {
  #globalnaviarea_wrap {
    /* fix menu (SP)---------------------------------*/
    /* toggle (SP)---------------------------------*/
    /* menu (SP)-----------------------------------*/
  }
  #globalnaviarea_wrap #site_navigation {
    position: fixed;
    top: 0;
    width: 100%;
    z-index: 10000;
  }
  #globalnaviarea_wrap #site_navigation .leftdir {
    display: none;
  }
  #globalnaviarea_wrap .header_mail {
    display: none;
  }
  #globalnaviarea_wrap .spmenu {
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-flex-wrap: nowrap;
        -ms-flex-wrap: nowrap;
            flex-wrap: nowrap;
    -webkit-align-items: center;
        -ms-flex-align: center;
            align-items: center;
    width: 100%;
    height: 55px;
    background-color: #fff;
    text-align: center;
    box-shadow: 0 5px 10px rgba(0, 0, 0, 0.4);
  }
  #globalnaviarea_wrap .spmenu i {
    font-size: 20px;
    color: #a2a2a2;
  }
  #globalnaviarea_wrap .spmenu .sp_logo {
    margin-left: 5px;
  }
  #globalnaviarea_wrap .spmenu .sp_logo img {
    max-height: 50px;
  }
  #globalnaviarea_wrap .spmenu .sp_title {
    margin-left: 12px;
    font-size: 18px;
    font-weight: bold;
    color: #ffcce5;
  }
  #globalnaviarea_wrap .spmenu .sp_tel {
    margin-left: auto;
    margin-right: 15px;
  }
  #globalnaviarea_wrap .spmenu .sp_map {
    margin-right: 5px;
  }
  #globalnaviarea_wrap #toggle {
    width: 40px;
    height: 40px;
    padding: 8px 5px;
    z-index: 100;
    border-radius: 5px;
    margin-right: 5px;
  }
  #globalnaviarea_wrap #toggle .menu-trigger,
  #globalnaviarea_wrap #toggle .menu-trigger span {
    display: inline-block;
    transition: all 0.4s;
    box-sizing: border-box;
  }
  #globalnaviarea_wrap #toggle .menu-trigger {
    position: relative;
    width: 20px;
    height: 20px;
  }
  #globalnaviarea_wrap #toggle .menu-trigger span {
    position: absolute;
    left: 0;
    width: 100%;
    height: 1px;
    background-color: #ffcce5;
    border-radius: 4px;
  }
  #globalnaviarea_wrap #toggle .menu-trigger span:nth-of-type(1) {
    top: 0;
  }
  #globalnaviarea_wrap #toggle .menu-trigger span:nth-of-type(2) {
    top: 10px;
  }
  #globalnaviarea_wrap #toggle .menu-trigger span:nth-of-type(3) {
    bottom: 0;
  }
  #globalnaviarea_wrap #toggle .menu-trigger.triggeractive span:nth-of-type(1) {
    -webkit-transform: translateY(20px) rotate(-45deg);
    -ms-transform: translateY(8px) rotate(-45deg);
        transform: translateY(8px) rotate(-45deg);
    background-color: #fff;
    height: 2px;
  }
  #globalnaviarea_wrap #toggle .menu-trigger.triggeractive span:nth-of-type(2) {
    opacity: 0;
  }
  #globalnaviarea_wrap #toggle .menu-trigger.triggeractive span:nth-of-type(3) {
    -webkit-transform: translateY(-20px) rotate(45deg);
    -ms-transform: translateY(-10px) rotate(45deg);
        transform: translateY(-10px) rotate(45deg);
    background-color: #fff;
    height: 2px;
  }
  #globalnaviarea_wrap #menu {
    display: none;
  }
  #globalnaviarea_wrap #menu.menu_open {
    display: block;
    -webkit-animation: fadein 0.5s ease-in-out forwards;
            animation: fadein 0.5s ease-in-out forwards;
  }
  @-webkit-keyframes fadein {
    0% {
      opacity: 0;
    }
    100% {
      opacity: 1;
    }
  }
  @keyframes fadein {
    0% {
      opacity: 0;
    }
    100% {
      opacity: 1;
    }
  }
  #globalnaviarea_wrap #menu.menu_open .menu_wrap {
    opacity: 1;
  }
  #globalnaviarea_wrap #menu .menu_wrap {
    position: fixed;
    top: 0;
    left: 0;
    transition: all 0.5s;
    opacity: 0;
    margin: 0 auto;
    padding: 15vh 0;
    clear: both;
    z-index: 99;
    width: 100%;
    height: 100%;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-justify-content: space-around;
        -ms-flex-pack: distribute;
            justify-content: space-around;
    -webkit-flex-direction: column;
        -ms-flex-direction: column;
            flex-direction: column;
    background-color: rgba(255, 204, 229, 0.9);
  }
  #globalnaviarea_wrap #menu .menu_wrap.mainwrap, #globalnaviarea_wrap #menu .menu_wrap.widewrap {
    max-width: 100%;
  }
  #globalnaviarea_wrap #menu .menu_wrap li {
    text-align: center;
  }
  #globalnaviarea_wrap #menu .menu_wrap li.spsns {
    display: block;
    text-align: center;
  }
  #globalnaviarea_wrap #menu .menu_wrap li.spsns.sns {
    margin-top: 30px;
  }
  #globalnaviarea_wrap #menu .menu_wrap li.spsns ul {
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-justify-content: center;
        -ms-flex-pack: center;
            justify-content: center;
    text-align: center;
  }
  #globalnaviarea_wrap #menu .menu_wrap li.spsns ul li {
    width: 33%;
  }
  #globalnaviarea_wrap #menu .menu_wrap li.spsns ul li a {
    display: inline-block;
  }
  #globalnaviarea_wrap #menu .menu_wrap li a {
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-justify-content: space-between;
        -ms-flex-pack: justify;
            justify-content: space-between;
    text-decoration: none;
    font-size: 14px;
    color: #fff;
    line-height: 1;
    padding: 10px 30px;
  }
  #globalnaviarea_wrap #menu .menu_wrap li.selected a {
    color: #ffcce5;
    background-color: rgba(255, 255, 255, 0.8);
  }
  #globalnaviarea_wrap #menu .menu_wrap .child_category {
    text-indent: 2em;
  }
}

@media screen and (min-width: 768px) {
  #globalnaviarea_wrap {
    position: relative;
    padding: 0;
    position: relative;
    /* toggle (PC,Tablet)---------------------------------*/
    /* menu (PC,Tablet)-----------------------------------*/
  }
  #globalnaviarea_wrap #site_navigation {
    margin-bottom: 2px;
  }
  #globalnaviarea_wrap #site_navigation:after {
    display: block;
    content: "";
    clear: both;
    overflow: hidden;
  }
  #globalnaviarea_wrap #site_navigation > .leftdir {
    width: 25%;
  }
  #globalnaviarea_wrap #site_navigation > .rightdir {
    width: 75%;
    position: relative;
    height: 130px;
  }
  #globalnaviarea_wrap #site_navigation > .rightdir nav {
    position: absolute;
    bottom: 0;
    right: 0;
    width: 100%;
  }
  #globalnaviarea_wrap .spmenu {
    display: none;
  }
  #globalnaviarea_wrap #toggle,
  #globalnaviarea_wrap #menu li.spsns {
    display: none;
  }
  #globalnaviarea_wrap #menu.mainwrap {
    padding: 1.5em 0;
  }
  #globalnaviarea_wrap .menu_wrap {
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-flex-wrap: nowrap;
        -ms-flex-wrap: nowrap;
            flex-wrap: nowrap;
    -webkit-justify-content: space-between;
        -ms-flex-pack: justify;
            justify-content: space-between;
    -webkit-align-items: center;
        -ms-flex-align: center;
            align-items: center;
    text-align: center;
    box-sizing: border-box;
  }
  #globalnaviarea_wrap .menulist_item {
    position: relative;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-align-items: center;
        -ms-flex-align: center;
            align-items: center;
    -webkit-flex-grow: 1;
        -ms-flex-positive: 1;
            flex-grow: 1;
    text-align: center;
    font-size: 15px;
    border-right: 1px dotted #323232;
  }
  #globalnaviarea_wrap .menulist_item:first-of-type {
    border-left: 1px dotted #323232;
  }
  #globalnaviarea_wrap .menulist_item.selected a, #globalnaviarea_wrap .menulist_item:hover {
    z-index: 2;
    opacity: 1;
  }
  #globalnaviarea_wrap .menulist_item.selected a:before, #globalnaviarea_wrap .menulist_item:hover:before {
    content: "";
    position: absolute;
    top: 50%;
    left: 50%;
    z-index: -1;
    -webkit-transform: translate(-50%, -50%);
        -ms-transform: translate(-50%, -50%);
            transform: translate(-50%, -50%);
    width: 50%;
    padding-top: 30%;
    background: url("images/common/gn_bg.png") center/contain no-repeat;
  }
  #globalnaviarea_wrap .menulist_link {
    display: block;
    width: 100%;
    margin: 0 auto;
    font-size: 14px;
    font-size: 1.4rem;
    color: #4d4d4d;
    padding: 10px;
    border-top: solid 3px transparent;
  }
}

/* -- footer --
--------------------------------------------------------------*/
#footer {
  /* copyright ------------------------------*/
}

#footer .footer_inner {
  padding: 30px 0;
}

#footer .footer_inner .tel_wrap {
  margin-bottom: 1.5em;
  text-align: center;
}

@media screen and (min-width: 768px) {
  #footer .footer_inner .tel_wrap {
    text-align: left;
  }
}

#footer .footer_inner .tel_wrap .tel {
  font-size: 24px;
  font-size: 2.4rem;
}

#footer .footer_inner .tel_wrap .tel .fa {
  margin-right: 0.2em;
}

#footer .f_wrap {
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-flex-direction: column;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
}

#footer .f_wrap ul li {
  font-size: 14px;
  font-size: 1.4rem;
  line-height: 1.4;
  margin-bottom: 0.5em;
}

#footer .f_wrap .footer_logo {
  margin-bottom: 2em;
}

@media screen and (min-width: 768px) {
  #footer .f_wrap {
    -webkit-flex-direction: row;
        -ms-flex-direction: row;
            flex-direction: row;
    -webkit-justify-content: space-between;
        -ms-flex-pack: justify;
            justify-content: space-between;
    -webkit-align-items: center;
        -ms-flex-align: center;
            align-items: center;
  }
}

@media screen and (max-width: 767px) {
  #footer .f_wrap {
    -webkit-flex-wrap: wrap;
        -ms-flex-wrap: wrap;
            flex-wrap: wrap;
  }
}

#footer .f_item {
  padding: 15px;
  border-radius: 30px;
}

#footer .f_item.right .fukidashi {
  padding: 2em 1em;
  margin-bottom: 1.5em;
  width: 100%;
  position: relative;
  background: #f5ce28;
  text-align: center;
  border-radius: 20px;
}

#footer .f_item.right .fukidashi:after {
  display: block;
  content: "";
  top: 50%;
  right: 50%;
  position: absolute;
  -webkit-transform: translate(50%, -50%);
      -ms-transform: translate(50%, -50%);
          transform: translate(50%, -50%);
  width: calc(100% - 10px);
  height: calc(100% - 10px);
  border: 2px solid #323232;
  border-radius: 10px;
}

#footer .f_item.right .fukidashi p {
  font-size: 4vw;
  line-height: 1.5;
}

@media screen and (min-width: 768px) {
  #footer .f_item.right .fukidashi p {
    font-size: 17px;
    font-size: 1.7rem;
  }
}

#footer .f_item.right .fukidashi p strong {
  font-size: 1.3em;
}

#footer .f_item.right .fukidashi span {
  letter-spacing: -0.3em;
}

@media screen and (min-width: 768px) {
  #footer .f_item {
    width: 48%;
  }
  #footer .f_item.right {
    width: 52%;
    max-width: 400px;
  }
}

#footer .f_item ul.contact_recruit {
  margin-bottom: 2em;
}

@media screen and (min-width: 768px) {
  #footer .f_item ul.contact_recruit {
    margin-bottom: 1em;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-justify-content: space-between;
        -ms-flex-pack: justify;
            justify-content: space-between;
  }
}

#footer .f_item .footer_menu li:before {
  display: inline-block;
  content: "・";
}

@media screen and (min-width: 768px) {
  #footer .f_item .footer_menu:after {
    display: block;
    content: "";
    clear: both;
  }
  #footer .f_item .footer_menu li {
    width: 32%;
    float: left;
  }
}

#footer #copyright {
  padding: 5px 0;
  background: #feffcc;
  font-size: 10px;
  font-size: 1rem;
  line-height: 1;
  text-align: center;
}

#footer #copyright a {
  text-decoration: none;
}

@media screen and (min-width: 768px) {
  .tel {
    pointer-events: none;
  }
}

/* -- JavaScript CSS --
--------------------------------------------------------------　*/
/* -- framework && common --
--------------------------------------------------------------　*/
/* -- main site-main --------------------------------------　*/
/* -- heading common --
--------------------------------------------------------------　*/
/* -- index.php --
--------------------------------------------------------------　*/
#content {
  background: #fff4f8;
  padding: 5em 0 0;
}

.date {
  font-size: 12px;
  font-size: 1.2rem;
  line-height: 1;
  margin-bottom: 0.1em;
  width: calc(100% - 40px);
  margin: auto;
}

.ttl_and_link {
  font-size: 14px;
  font-size: 1.4rem;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
  width: calc(100% - 40px);
  margin: auto;
  padding-bottom: 0.2em;
}

body {
  background: #fff4f8;
}

.centering {
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
}

.centering.first {
  width: 95%;
  margin: 0 auto 4em;
}

.centering.first p {
  font-size: 16px;
  font-size: 1.6rem;
}

@media screen and (min-width: 768px) {
  .centering.first {
    margin-bottom: 6.5em;
  }
}

#top_greeting {
  position: relative;
  z-index: 1;
}

@media screen and (min-width: 768px) {
  #top_greeting {
    text-align: center;
  }
}

#top_greeting .grt_img_wrap {
  max-width: 840px;
  position: absolute;
  z-index: -1;
  width: 100%;
  left: 50%;
  -webkit-transform: translate(-50%, 0);
      -ms-transform: translate(-50%, 0);
          transform: translate(-50%, 0);
}

#top_greeting .grt_img_wrap img {
  display: block;
}

#top_greeting .grt_img_wrap img:first-of-type {
  margin-bottom: 1em;
}

@media screen and (min-width: 768px) {
  #top_greeting .grt_img_wrap {
    width: 100%;
  }
}

#top_greeting .grt_img_inner {
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-justify-content: space-between;
      -ms-flex-pack: justify;
          justify-content: space-between;
}

#top_greeting .grt_title {
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  font-size: 20px;
  font-size: 2rem;
  margin-bottom: 1em;
  text-align: center;
  line-height: 1.3;
  text-shadow: 0 0 2px #fff, 0 0 2px #fff, 0 0 2px #fff, 0 0 2px #fff;
}

@media screen and (min-width: 768px) {
  #top_greeting .grt_title {
    font-size: 24px;
    font-size: 2.4rem;
  }
}

#top_greeting .grt_title:before, #top_greeting .grt_title:after {
  content: "―";
}

#top_greeting .grt_title:before {
  margin-left: 0.2em;
}

#top_greeting .grt_title:after {
  margin-left: 0.2em;
}

#top_greeting .grt_comment {
  font-size: 14px;
  font-size: 1.4rem;
  line-height: 2.1875;
  background: rgba(255, 255, 255, 0.8);
  padding: 1em 1.5em;
  border-radius: 20px;
}

@media screen and (min-width: 768px) {
  #top_greeting .grt_comment {
    border-radius: 50% / 50%;
    margin: 0 0 60px 15px;
    padding: 2em 3em;
  }
}

#top_menu {
  background: #fff;
  padding: 2em 0;
}

@media screen and (min-width: 768px) {
  #top_menu {
    padding: 4em 0;
  }
}

#top_menu .link3_wrap {
  position: relative;
}

#top_menu ul.link3 {
  width: 90%;
  margin: auto;
}

@media screen and (min-width: 768px) {
  #top_menu ul.link3 {
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-justify-content: center;
        -ms-flex-pack: center;
            justify-content: center;
  }
}

#top_menu ul.link3 li {
  margin: auto;
  text-align: center;
  position: relative;
  z-index: 1;
}

#top_menu ul.link3 li a {
  display: inline-block;
  position: relative;
}

#top_menu ul.link3 li a img {
  transition: all 0.25s linear;
}

#top_menu ul.link3 li a:hover, #top_menu ul.link3 li a:active {
  opacity: 1;
}

#top_menu ul.link3 li a:active img {
  opacity: 0;
}

@media screen and (min-width: 768px) {
  #top_menu ul.link3 li a:hover img {
    opacity: 0;
  }
}

#top_menu ul.link3 li a:after {
  display: block;
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: url(images/top/divide3-1_o.png) center/cover no-repeat;
  opacity: 1;
  transition: all 0.25s linear;
  z-index: -1;
}

#top_menu ul.link3 li:nth-of-type(2) a:after {
  background: url(images/top/divide3-2_o.png) center/cover no-repeat;
}

#top_menu ul.link3 li:nth-of-type(3) a:after {
  background: url(images/top/divide3-3_o.png) center/cover no-repeat;
}

#top_blog {
  margin-bottom: 3em;
  padding-bottom: 3em;
  overflow: hidden;
  /*@include pc{
        background-image: url(images/top/illust-3.png), url(images/top/illust-4.png);
        background-repeat: no-repeat;
        background-position: left bottom ,right bottom;
    }*/
}

#top_blog h2 {
  font-size: 24px;
  font-size: 2.4rem;
  color: #fff;
  background: #fc4a1a;
  text-align: center;
  line-height: 1.3;
  margin-bottom: 0.7em;
  padding: 0.2em 0;
}

@media screen and (min-width: 768px) {
  #top_blog h2 {
    font-size: 30px;
    font-size: 3rem;
  }
}

#top_blog ul {
  margin-bottom: 2em;
  position: relative;
}

@media screen and (min-width: 768px) {
  #top_blog ul {
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    margin-bottom: 3em;
  }
  #top_blog ul:before, #top_blog ul:after {
    display: block;
    content: "";
    position: absolute;
    pointer-events: none;
    z-index: 0;
  }
  #top_blog ul:before {
    width: 142px;
    height: 114px;
    background: url(images/top/illust-3.png);
    left: -150px;
    bottom: -85px;
  }
  #top_blog ul:after {
    width: 323px;
    height: 124px;
    background: url(images/top/illust-4.png);
    right: -170px;
    bottom: -85px;
  }
}

#top_blog ul li {
  width: 80%;
  margin: 0 auto 2em;
  border-radius: 20px;
  border: 1px solid #fc4a1a;
  background: #fc4a1a;
  overflow: hidden;
  position: relative;
  z-index: 1;
}

#top_blog ul li img {
  border-radius: 20px 20px 0 0;
}

@media screen and (min-width: 768px) {
  #top_blog ul li img.ofi {
    height: 150px;
  }
}

@media screen and (min-width: 768px) {
  #top_blog ul li {
    width: 23.5%;
    margin: 0;
  }
  #top_blog ul li:not(:last-of-type) {
    margin-right: 2%;
  }
}

#top_blog ul li p {
  color: #fff;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}

.link_bnr {
  text-align: center;
  background: #fff;
  padding: 4em 0 7em;
}

#top_div2 {
  position: relative;
  z-index: 1;
  background: url(images/bg_p.jpg) 0 0 repeat;
}

#top_div2 .div2_bgimg_a, #top_div2 .div2_bgimg_b {
  position: absolute;
  z-index: 2;
}

#top_div2 .div2_bgimg_a {
  top: 0;
  right: 5%;
}

#top_div2 .div2_bgimg_b {
  bottom: 0;
  left: 5%;
}

#top_div2 .div2_list {
  position: relative;
  z-index: 3;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-justify-content: space-between;
      -ms-flex-pack: justify;
          justify-content: space-between;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-flex-wrap: wrap;
      -ms-flex-wrap: wrap;
          flex-wrap: wrap;
  max-width: 850px;
  margin: auto;
  padding: 30px 15px;
}

@media screen and (max-width: 850px) {
  #top_div2 .div2_list {
    width: 97%;
    padding: 15px;
  }
}

#top_div2 .div2_item {
  width: 46%;
  text-align: center;
}

#top_div2 .div2_img {
  width: 100%;
}

a:hover,
a:active,
a img:hover,
a img:active {
  opacity: 1;
}

a img {
  transition: opacity .5s linear;
  -webkit-backface-visibility: hidden;
          backface-visibility: hidden;
}

a img:active {
  opacity: 0.8;
}

@media screen and (min-width: 768px) {
  a img:hover {
    opacity: 0.8;
  }
}

/* page_company --
--------------------------------------------------------------　*/
@media screen and (min-width: 768px) {
  #page_about {
    padding-top: 7.5em;
  }
}

#page_about section {
  margin-bottom: 3.5em;
}

@media screen and (min-width: 768px) {
  #page_about section {
    margin-bottom: 9em;
  }
}

#page_about section.gmap {
  margin-bottom: 0;
  padding-bottom: 3.5em;
  overflow: hidden;
}

@media screen and (min-width: 768px) {
  #page_about section.gmap {
    margin-bottom: 0;
    padding-bottom: 9em;
  }
  #page_about section.gmap .mainwrap {
    position: relative;
  }
  #page_about section.gmap .mainwrap iframe {
    position: relative;
    z-index: 1;
  }
  #page_about section.gmap .mainwrap:before, #page_about section.gmap .mainwrap:after {
    position: absolute;
    display: block;
    content: "";
  }
  #page_about section.gmap .mainwrap:before {
    background: url(images/about/about_illust-2.png);
    width: 228px;
    height: 152px;
    left: -235px;
    bottom: -30px;
    z-index: 0;
  }
  #page_about section.gmap .mainwrap:after {
    background: url(images/about/about_illust-3.png);
    width: 118px;
    height: 144px;
    right: -135px;
    bottom: -30px;
    z-index: 0;
  }
}

#page_about .greet .mainwrap .img {
  position: relative;
  margin-bottom: 2em;
}

#page_about .greet .mainwrap .img img {
  width: auto;
  max-width: 100%;
}

#page_about .greet .mainwrap .img img.bdrs50 {
  border-radius: 50%;
}

#page_about .greet .mainwrap .img img.icon {
  position: absolute;
  top: 0;
  left: 0;
  width: 29%;
}

@media screen and (min-width: 768px) {
  #page_about .greet .mainwrap .img {
    width: 45%;
    margin-bottom: 0;
  }
}

@media screen and (min-width: 768px) {
  #page_about .greet .mainwrap {
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-justify-content: space-between;
        -ms-flex-pack: justify;
            justify-content: space-between;
    -webkit-align-items: center;
        -ms-flex-align: center;
            align-items: center;
  }
}

#page_about .greet .mainwrap .des p {
  width: 95%;
  margin: auto;
  font-size: 14px;
  font-size: 1.4rem;
  line-height: 2;
}

#page_about .greet .mainwrap .des p.tar {
  font-size: 16px;
  font-size: 1.6rem;
}

@media screen and (min-width: 768px) {
  #page_about .greet .mainwrap .des {
    width: 48%;
  }
}

#page_about .scene h3 span {
  background: #f9be02;
}

@media screen and (min-width: 768px) {
  #page_about .scene ul {
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-justify-content: space-between;
        -ms-flex-pack: justify;
            justify-content: space-between;
  }
}

#page_about .scene ul li {
  width: 90%;
  margin: 0 auto 2em;
}

#page_about .scene ul li img {
  border-radius: 10px;
}

@media screen and (min-width: 768px) {
  #page_about .scene ul li {
    width: 30%;
    margin: 0;
  }
}

#page_about .data h3 span {
  background: #8fc33a;
}

#page_about .data dl div {
  margin-bottom: 1px;
}

@media screen and (min-width: 768px) {
  #page_about .data dl div {
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
  }
}

#page_about .data dl div dt, #page_about .data dl div dd {
  font-size: 16px;
  font-size: 1.6rem;
  line-height: 1.5;
  padding: 0.5em;
}

@media screen and (min-width: 768px) {
  #page_about .data dl div dt, #page_about .data dl div dd {
    padding: 1em;
  }
}

#page_about .data dl div dt {
  background: #8fc33a;
}

@media screen and (min-width: 768px) {
  #page_about .data dl div dt {
    text-align: center;
    width: 33%;
  }
}

#page_about .data dl div dd {
  background: #fff;
}

@media screen and (min-width: 768px) {
  #page_about .data dl div dd {
    -webkit-flex-grow: 1;
        -ms-flex-positive: 1;
            flex-grow: 1;
  }
}

/* page_contact --
--------------------------------------------------------------　*/
.formlist_wrap:not(:last-of-type) {
  border-bottom: 1px dotted #999;
}

.formlist_wrap.last {
  margin-bottom: 3em;
  border-bottom: none;
}

.page_contact .centering {
  width: 95%;
  margin: auto;
}

.page_contact .contact_form {
  width: 95%;
  margin: auto;
}

.page_contact .wpcf7-list-item {
  font-size: 14px;
  font-size: 1.4rem;
}

.page_contact .contact_wrap {
  margin-bottom: 10em;
}

.page_contact .contact_wrap p {
  font-size: 16px;
  font-size: 1.6rem;
  margin-bottom: 1em;
  text-align: left;
}

@media screen and (min-width: 768px) {
  .page_contact .contact_wrap p {
    margin-bottom: 2em;
  }
}

.page_contact .contact_wrap p.contact_tel {
  font-size: 20px;
  font-size: 2rem;
  color: #8fc33a;
  margin-bottom: 0;
}

@media screen and (min-width: 768px) {
  .page_contact .contact_wrap p.contact_tel {
    font-size: 35px;
    font-size: 3.5rem;
  }
}

.page_contact .contact_wrap p.contact_tel a {
  color: #8fc33a;
}

.page_contact .contact_wrap h3 {
  margin-bottom: 1.5em;
}

@media screen and (min-width: 768px) {
  .page_contact .contact_wrap h3 {
    margin-bottom: 2em;
    text-align: center;
  }
}

.page_contact .contact_wrap .must {
  color: #f00;
}

.page_contact .contact_intro {
  padding-bottom: 3.5em;
  background: #fff;
  text-align: center;
}

@media screen and (min-width: 768px) {
  .page_contact .contact_intro {
    padding-bottom: 4.5em;
    background: url(images/contact/contact_illust-1.png) #fff 95% center no-repeat;
  }
}

.page_contact .contact_intro_info {
  font-size: 20px;
  font-size: 2rem;
}

@media screen and (min-width: 768px) {
  .page_contact .contact_intro_info {
    font-size: 30px;
    font-size: 3rem;
  }
}

.page_contact .contact_intro_info_mark {
  margin-right: 15px;
  padding: 5px 10px;
  font-size: 16px;
}

.page_contact .form_wrap {
  background: rgba(255, 255, 255, 0.7);
}

.page_contact .form th,
.page_contact .form td {
  vertical-align: middle;
}

.page_contact .form_heading {
  font-size: 24px;
}

.page_contact .form_notice {
  font-size: 12px;
}

.page_contact .formlist_wrap {
  /*@media screen and (min-width: 768px) {
          display: flex;
          justify-content: space-between;
          align-items: stretch;
        }*/
}

.page_contact .formlist th {
  font-size: 16px;
  font-size: 1.6rem;
  padding: 0.2em 1em 0;
  /*@media screen and (min-width: 768px) {
          display: flex;
          align-items: center;
          width: 40%;
                  padding: 1em;
        }*/
}

.page_contact .formlist td {
  line-height: 1.5;
  font-size: 100%;
  padding: 0 1em 0.5em;
}

@media screen and (min-width: 768px) {
  .page_contact .formlist td {
    width: 59%;
    padding: 1em;
  }
}

.page_contact .form .contact_form form input[type=tel],
.page_contact .form .contact_form form input[type=number],
.page_contact .form .contact_form form input[type=number],
.page_contact .form .contact_form form input[type=text],
.page_contact .form .contact_form form input[type=email],
.page_contact .form .contact_form form textarea {
  width: 100%;
  border: solid 1px #999;
}

.page_contact .form .submit {
  text-align: center;
}

.page_contact .form .submit input[type="submit"][disabled] {
  margin: auto;
  color: #ffa000;
  border: 1px solid #ffa000 !important;
}

.page_contact .form .submit input[type="submit"]:not([disabled]) {
  margin: auto;
  color: #ffa000;
  border: 1px solid #ffa000 !important;
  transition: all .5s linear;
}

.page_contact .form .submit input[type="submit"]:not([disabled]):hover {
  background: #ffa000;
  color: #fff;
}

.page_contact .contact_form form input[type=submit] {
  font-size: 14px;
  font-size: 1.4rem;
  color: #ffa000;
  font-weight: 700;
}

.page_contact .privacy {
  padding: 30px 60px;
  background: rgba(255, 255, 255, 0.7);
  font-size: 12px;
}

.page_contact .privacy h4 {
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  font-size: 16px;
  font-size: 1.6rem;
  margin-bottom: 1em;
  font-weight: 700;
}

.page_contact .privacy h4:after {
  display: block;
  content: "";
  -webkit-flex-grow: 1;
      -ms-flex-positive: 1;
          flex-grow: 1;
  height: 1px;
  margin-left: 1em;
  background: #323232;
}

.page_contact .privacy h5 {
  font-size: 14px;
  font-size: 1.4rem;
  font-weight: 700;
}

.page_contact .privacy p {
  font-size: 13px;
  font-size: 1.3rem;
  margin-bottom: 1em;
}

.page_contact .privacy p:not(:first-of-type) {
  padding: 0 1em;
  margin: 0 auto 1.5em;
}

.page_contact .privacy ul {
  font-size: 13px;
  font-size: 1.3rem;
  margin: 0 1em 1.5em;
}

@media screen and (max-width: 767px) {
  .page_contact .privacy {
    padding: 15px;
  }
}

.page_contact .privacy_heading {
  font-size: 16px;
}

.page_contact .privacy_text {
  margin-left: 1em;
}

/* page_recruit --
--------------------------------------------------------------　*/
#page_recruit {
  overflow: hidden;
  position: relative;
  padding-bottom: 30px;
  /*.txt_center {
        text-align: center;
    }
    .intro {
        padding: 30px 0;
        background: #e5f5fc;
        .content_wrap {
            background: #fff;
        }
        .content_inner {
            border: 1px solid #ccc;
        }
    }
    .intro_ttl {
        font-size: 18px;
        .f_wrap {
            display: flex;
            justify-content: space-between;
            align-items: center;
            width: 100%;
            padding-left: 1em;
        }
        .bg_border {
            display: inline-block;
            width: 30%;
            height: 1px;
            background: #ccc;
        }
    }
    .intro_txt {
        padding-left: 1em;
    }
    .guideline {
        th, td {
            padding: 15px;
            border-bottom: 1px dashed #c6c6c6;
            &._none_border {
                border: none;
            }
        }
        th {
            width: 30%;
            font-weight: bold;
        }
        span {
            color: #808080;
        }
    }

    .link_btn {
        width: 100%;
        max-width: 400px;
        margin: 0 auto 30px;
        padding: 10px;
        &:nth-child(1) {
            background: #e5f5fc;
        }
        &:nth-child(2) {
            background: #fcf1e9;
        }
        a {
            display: block;
            padding: 5px 0;
            border: 1px solid #ccc;
            text-align: center;
            span {
                font-size: 12px;
            }
        }
    }*/
}

#page_recruit .mainwrap {
  position: relative;
}

#page_recruit .mainwrap:before {
  display: block;
  content: "";
  width: 136px;
  height: 147px;
  background: url(images/common/flower-1.png);
  position: absolute;
  right: -145px;
  top: 0;
}

#page_recruit .mainwrap:after {
  display: block;
  content: "";
  width: 118px;
  height: 145px;
  background: url(images/common/flower-2.png);
  position: absolute;
  bottom: -20px;
  left: -130px;
}

#page_recruit dl div:not(:last-of-type) {
  border-bottom: 1px dotted #8fc33a;
}

@media screen and (min-width: 768px) {
  #page_recruit dl div {
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
  }
}

#page_recruit dl div dt, #page_recruit dl div dd {
  font-size: 16px;
  font-size: 1.6rem;
  padding: 0.5em;
  line-height: 1.75;
}

@media screen and (min-width: 768px) {
  #page_recruit dl div dt, #page_recruit dl div dd {
    padding: 0.8em;
  }
}

#page_recruit dl div dt {
  background: #e9f3d8;
}

@media screen and (min-width: 768px) {
  #page_recruit dl div dt {
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    width: 40%;
    -webkit-flex-direction: column;
        -ms-flex-direction: column;
            flex-direction: column;
    text-align: center;
    -webkit-justify-content: center;
        -ms-flex-pack: center;
            justify-content: center;
  }
}

#page_recruit dl div dd {
  background: #fff;
}

@media screen and (min-width: 768px) {
  #page_recruit dl div dd {
    width: 60%;
    padding-left: 2em;
  }
}

#page_recruit dl div dd ul.ml1em {
  margin-left: 1em;
}

#page_recruit dl div dd ul li:before {
  display: inline-block;
  content: "●";
}

/* page_curriculum --
--------------------------------------------------------------　*/
@media screen and (min-width: 768px) {
  .curriculum_list_item {
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-justify-content: space-between;
        -ms-flex-pack: justify;
            justify-content: space-between;
    -webkit-align-items: stretch;
        -ms-flex-align: stretch;
            align-items: stretch;
  }
}

.curriculum_ttl {
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  background: #cdccff;
  font-size: 24px;
}

@media screen and (min-width: 768px) {
  .curriculum_ttl {
    width: 30%;
  }
}

.curriculum_content {
  position: relative;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-justify-content: space-between;
      -ms-flex-pack: justify;
          justify-content: space-between;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  background: #f5f5ff;
}

@media screen and (min-width: 768px) {
  .curriculum_content {
    width: 70%;
  }
}

.curriculum_content_txt {
  padding: 15px;
}

@media screen and (min-width: 768px) {
  .curriculum_content_txt {
    width: 85%;
  }
}

.curriculum_content_img {
  width: 15%;
}

@media screen and (max-width: 767px) {
  .curriculum_content_img {
    position: absolute;
    top: -30px;
    left: 5%;
  }
}

/* page_recruit --
--------------------------------------------------------------　*/
#page_price {
  background-image: url(images/price/price_illust-4.png), url(images/price/price_illust-5.png);
  background-repeat: no-repeat;
  background-position: 15% 15%,17% 66%;
}

#page_price .tar {
  text-align: right;
  margin-bottom: 1em;
}

#page_price h3 {
  text-align: left;
  margin-bottom: 0;
}

#page_price h3 span {
  border-radius: 10px 10px 0 0;
  background: #f53240;
  color: #fff;
}

#page_price .bg_white {
  background: #fff;
  width: 100%;
  padding: 2em 2.5%;
  margin-bottom: 2em;
}

@media screen and (min-width: 768px) {
  #page_price .bg_white {
    padding: calc(2.5% + 1em) 2.5%;
    margin-bottom: 4em;
  }
  #page_price .bg_white.price1 {
    background-image: url(images/price/price_illust-1.png), url(images/price/price_illust-2.png);
    background-repeat: no-repeat;
    background-position: 98% 2%,98% 98%;
  }
}

@media screen and (min-width: 768px) and (min-width: 768px) and (max-width: 980px) {
  #page_price .bg_white.price1 {
    background-position: 98% 4%,98% 93%;
  }
}

@media screen and (min-width: 768px) {
  #page_price .bg_white.price3 {
    background-image: url(images/price/price_illust-3.png), url(images/price/price_illust-6.png);
    background-repeat: no-repeat;
    background-position: 98% 98%,98% 35%;
  }
}

@media screen and (min-width: 768px) and (min-width: 768px) and (max-width: 980px) {
  #page_price .bg_white.price3 {
    background-position: 98% 98%,98% 40%;
  }
}

#page_price .bg_white > ul {
  padding: 0.5em;
}

@media screen and (min-width: 768px) {
  #page_price .bg_white > ul {
    padding: 0.5em 2em;
  }
}

#page_price .bg_white > ul li {
  font-size: 15px;
  font-size: 1.5rem;
  line-height: 1.5;
  padding-left: 1em;
  text-indent: -1em;
  margin-bottom: 0.5em;
  list-style-type: disc;
  list-style-position: inside;
}

#page_price .bg_white dl.type1, #page_price .bg_white dl.type2, #page_price .bg_white dl.type3 {
  margin: 0 auto 4em;
}

#page_price .bg_white dl.type1 div, #page_price .bg_white dl.type2 div, #page_price .bg_white dl.type3 div {
  margin-bottom: 1.5em;
}

#page_price .bg_white dl.type1 div dt, #page_price .bg_white dl.type2 div dt, #page_price .bg_white dl.type3 div dt {
  line-height: 1.5;
  border-radius: 10px;
  text-align: center;
  padding: 0.5em 0;
}

@media screen and (min-width: 768px) {
  #page_price .bg_white dl.type1.mb2em {
    margin-bottom: 2em;
  }
}

@media screen and (min-width: 768px) {
  #page_price .bg_white dl.type1 div {
    margin-bottom: 3em;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
  }
}

#page_price .bg_white dl.type1 div.mb1em {
  margin-bottom: 1em;
}

#page_price .bg_white dl.type1 div dt {
  -webkit-align-self: baseline;
      -ms-flex-item-align: baseline;
          align-self: baseline;
}

#page_price .bg_white dl.type1 div > dt, #page_price .bg_white dl.type2 div > dt, #page_price .bg_white dl.type3 div > dt {
  background: #f53240;
  color: #fff;
  width: 15em;
  border-radius: 10px;
}

#page_price .bg_white dl dt {
  font-size: 16px;
  font-size: 1.6rem;
}

#page_price .bg_white dl dd {
  font-size: 15px;
  font-size: 1.5rem;
  padding: 0.5em;
}

@media screen and (min-width: 768px) {
  #page_price .bg_white dl dd {
    padding: 0.5em 2em;
    -webkit-flex-grow: 1;
        -ms-flex-positive: 1;
            flex-grow: 1;
  }
}

#page_price .bg_white dl dd ul li {
  margin-bottom: 0.5em;
}

#page_price .bg_white dl.type2 div {
  margin-bottom: 2.5em;
}

#page_price .bg_white dl.type2 dt {
  margin-bottom: 1em;
}

#page_price .bg_white dl.type2 .table_wrap {
  overflow-x: scroll;
}

@media screen and (min-width: 768px) {
  #page_price .bg_white dl.type2 .table_wrap {
    overflow: auto;
  }
}

#page_price .bg_white dl.type2 .table_wrap table {
  white-space: nowrap;
}

#page_price .bg_white dl.type2 .table_wrap table th, #page_price .bg_white dl.type2 .table_wrap table td {
  padding: 0.5em;
}

#page_price .bg_white dl.type2 dd li {
  list-style-position: inside;
  text-indent: -1em;
  padding-left: 1em;
  list-style-type: disc;
  /*&:before{
                        display: inline-block;
                        content:"・";
                    }*/
}

#page_price .bg_white dl.type2 dd li ul.nodisc {
  margin-top: 0.5em;
}

#page_price .bg_white dl.type2 dd li ul.nodisc li {
  list-style-type: none;
  margin-bottom: 0.25em;
  text-indent: 0;
  padding-left: 9px;
}

#page_price .bg_white dl.type3 dd .dl_wrap dl {
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
}

@media screen and (min-width: 768px) {
  #page_price .bg_white dl.type3 dd .dl_wrap dl {
    display: block;
  }
}

#page_price .bg_white dl.type3 dd .dl_wrap dt {
  text-align: left;
}

@media screen and (min-width: 768px) {
  #page_price .bg_white dl.type3 dd .dl_wrap dt {
    text-align: center;
  }
}

@media screen and (min-width: 768px) {
  #page_price .bg_white dl.type3 dd .dl_wrap {
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-justify-content: center;
        -ms-flex-pack: center;
            justify-content: center;
  }
  #page_price .bg_white dl.type3 dd .dl_wrap dl {
    margin: 0 3em;
  }
}

/* page_flow --
--------------------------------------------------------------　*/
#page_goal .intro {
  text-align: center;
  line-height: 1.7;
}

#page_goal .goal .f_wrap {
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-justify-content: space-between;
      -ms-flex-pack: justify;
          justify-content: space-between;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
}

@media screen and (max-width: 767px) {
  #page_goal .goal .f_wrap {
    -webkit-flex-wrap: wrap;
        -ms-flex-wrap: wrap;
            flex-wrap: wrap;
  }
}

#page_goal .goal .f_item {
  width: 48%;
  text-align: center;
}

@media screen and (max-width: 767px) {
  #page_goal .goal .f_item {
    width: 100%;
  }
}

@media screen and (min-width: 768px) {
  #page_goal .goal .f_order-1 {
    -webkit-order: 1;
        -ms-flex-order: 1;
            order: 1;
  }
  #page_goal .goal .f_order-2 {
    -webkit-order: 2;
        -ms-flex-order: 2;
            order: 2;
  }
}

#page_goal .goal_img {
  box-shadow: 15px 15px 0 0 #ccffe6;
}

@media screen and (max-width: 767px) {
  #page_goal .goal_img {
    width: 90%;
  }
}

/* page_company --
--------------------------------------------------------------　*/
#page_greeting .link_wrap {
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
}

@media screen and (max-width: 767px) {
  #page_greeting .link_wrap {
    margin-bottom: 30px;
  }
}

@media screen and (min-width: 768px) {
  #page_greeting .link_wrap {
    margin-bottom: 60px;
  }
}

#page_greeting .link_item {
  width: 100%;
  max-width: 300px;
  margin: auto;
  padding: 3px;
}

#page_greeting .link_item:nth-child(1) {
  background: #ffcce5;
}

#page_greeting .link_item:nth-child(2) {
  background: #07889b;
}

#page_greeting .link_item a {
  display: block;
  padding: 5px 0;
  border: 1px solid #fff;
  font-size: 14px;
  color: #fff;
  text-align: center;
}

#page_greeting .link_item a img {
  vertical-align: baseline;
}

#page_greeting .content {
  padding: 10px;
  background: #f2f2f2;
}

#page_greeting .content_inner {
  border: 1px solid #fff;
}

@media screen and (min-width: 768px) {
  #page_greeting .content_inner {
    padding: 30px;
  }
}

#page_greeting .content_img {
  text-align: center;
}

#page_greeting .content_txt {
  max-width: 600px;
  margin: auto;
  font-size: 14px;
  line-height: 2;
}

/* page_schedule --
--------------------------------------------------------------　*/
#page_schedule {
  overflow: hidden;
}

.schedule_list {
  margin-bottom: 1em;
}

@media screen and (min-width: 768px) {
  .schedule_list {
    margin-bottom: 2em;
  }
}

.schedule_list_item {
  position: relative;
  margin-bottom: 1em;
}

@media screen and (min-width: 768px) {
  .schedule_list_item {
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-justify-content: space-between;
        -ms-flex-pack: justify;
            justify-content: space-between;
    -webkit-align-items: stretch;
        -ms-flex-align: stretch;
            align-items: stretch;
    margin-bottom: 2em;
  }
}

.schedule_list_item.sun:after {
  background-image: url(images/schedule/oneday_illust-1.png);
}

.schedule_list_item.child1:after {
  background-image: url(images/schedule/oneday_illust-2.png);
}

.schedule_list_item.child2:after {
  background-image: url(images/schedule/oneday_illust-3.png);
}

.schedule_list_item.child3:after {
  background-image: url(images/schedule/oneday_illust-4.png);
}

.schedule_list_item.moon:after {
  background-image: url(images/schedule/oneday_illust-5.png);
}

.schedule_list_item.sun:after, .schedule_list_item.child1:after, .schedule_list_item.child2:after, .schedule_list_item.child3:after, .schedule_list_item.moon:after {
  display: block;
  content: "";
  width: 123px;
  height: 123px;
  position: absolute;
  z-index: 1;
  right: -150px;
  top: 0;
  background-repeat: no-repeat;
  background-position: right top;
}

.schedule_list_item.child3:after {
  top: 50px;
}

.schedule_ttl {
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  background: #ffcade;
  font-size: 20px;
  font-size: 2rem;
  text-align: center;
  border-radius: 10px 10px 0 0;
}

@media screen and (min-width: 768px) {
  .schedule_ttl {
    border-radius: 10px 0 0 10px;
  }
}

@media screen and (min-width: 768px) {
  .schedule_ttl {
    width: 30%;
  }
}

.schedule_content {
  position: relative;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-justify-content: space-between;
      -ms-flex-pack: justify;
          justify-content: space-between;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  background: #fff;
  z-index: 2;
  border-radius: 0 0 10px 10px;
}

@media screen and (min-width: 768px) {
  .schedule_content {
    width: 70%;
    border-radius: 0 10px 10px 0;
  }
}

.schedule_content_txt {
  font-size: 20px;
  font-size: 2rem;
  padding: 0.5em;
}

@media screen and (min-width: 768px) {
  .schedule_content_txt {
    width: 70%;
    padding: 1em;
  }
}

/* page_event --
--------------------------------------------------------------　*/
@media screen and (min-width: 768px) {
  #page_event ul.event_list {
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-justify-content: space-between;
        -ms-flex-pack: justify;
            justify-content: space-between;
    -webkit-flex-wrap: wrap;
        -ms-flex-wrap: wrap;
            flex-wrap: wrap;
  }
}

#page_event ul.event_list li {
  text-align: center;
  width: 90%;
  margin: 0 auto 2em;
}

#page_event ul.event_list li figure img {
  margin-bottom: 0.5em;
}

#page_event ul.event_list li figure figcaption {
  font-size: 16px;
  font-size: 1.6rem;
}

@media screen and (min-width: 768px) {
  #page_event ul.event_list li {
    width: 47%;
    margin: 0 0 4em;
  }
}

#page_event ul.event_list li.spl {
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-flex-direction: row;
      -ms-flex-direction: row;
          flex-direction: row;
}

#page_event ul.event_list li.spl ul {
  margin-top: 3em;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-flex-direction: column;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-flex-grow: 1;
      -ms-flex-positive: 1;
          flex-grow: 1;
}

#page_event ul.event_list li.spl ul li {
  width: 95%;
  margin: 0 auto 1em;
  color: #f00;
  text-align: left;
  font-size: 16px;
  font-size: 1.6rem;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
}

#page_event ul.event_list li.spl ul li:before {
  display: inline-block;
  content: '・';
}

/* page_application --
--------------------------------------------------------------　*/
#page_application .greeting {
  text-align: center;
}

@media screen and (max-width: 767px) {
  #page_application .greeting {
    margin-bottom: 30px;
  }
}

@media screen and (min-width: 768px) {
  #page_application .greeting {
    margin-bottom: 60px;
  }
}

#page_application .greeting_ttl {
  font-size: 25px;
  font-weight: bold;
}

#page_application .privacy_link {
  color: #ffcce5;
  text-decoration: underline;
}

#page_application .form_wrap {
  background: #f2f2f2;
}

@media screen and (max-width: 767px) {
  #page_application .form_wrap {
    padding: 15px 30px;
  }
}

@media screen and (min-width: 768px) {
  #page_application .form_wrap {
    padding: 30px 60px;
  }
}

#page_application .formlist [name=age] {
  width: 30%;
}

#page_application .edit {
  margin-right: 10px;
}

#page_application .wpcf7c-btn-back {
  display: block;
  width: 200px;
  padding: 10px;
  margin: 0 auto;
  font-size: 14px;
  cursor: pointer;
  border: 1px solid #000;
  background: #fff;
  letter-spacing: 5px;
}

#page_application .wpcf7c-conf:not(select) {
  background-color: #f5f5f5 !important;
  color: black !important;
  border: 1px solid #aeaeae !important;
}

/*# sourceMappingURL=style.css.map */