@charset "UTF-8";
:root {
  --text-color: #505050;
  --main-color: #ff5a23;
  --mainopa-color: rgba(250, 99, 51, 0.2);
  --marker-color: rgba(163, 163, 163, 0.3);
  --hover-color: #ff5a23;
  --bg-color: #f5f5f5;
  --sub-color: #f8f8f8;
  --pc-header: 12rem;
  --sp-header: 6rem;
}

/*--------------------------------------------------------------
Foundation
--------------------------------------------------------------*/
html, body, div, span, applet, object, iframe,
h1, h2, h3, h4, h5, h6, p, blockquote, pre,
a, abbr, acronym, address, big, cite, code,
del, dfn, em, i, font, ins, kbd, q, s, samp,
small, strike, strong, sub, sup, tt, var,
dl, dt, dd, ol, ul, li,
fieldset, form, label, legend,
table, caption, tbody, tfoot, thead, tr, th, td, figure, figcaption,
button, input, textarea, select, i {
  border: 0;
  font-style: inherit;
  font-weight: inherit;
  font-size: inherit;
  line-height: inherit;
  font-family: inherit;
  color: inherit;
  margin: 0;
  outline: 0;
  padding: 0;
  vertical-align: baseline;
  letter-spacing: .1em;
}

html {
  font-size: 62.5%;
  -webkit-text-size-adjust: 100%;
  -ms-text-size-adjust: 100%;
}

*,
*:before,
*:after {
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
}

a:hover {
  color: var(--hover-color);
}

body {
  font-size: 2rem;
  background: #fff;
  color: var(--text-color);
  letter-spacing: inherit;
  overflow-x: hidden;
  overflow-y: scroll;
  line-height: 1;
}

ul, li {
  list-style: none;
}

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

a:hover,
a:active,
a:focus {
  outline: 0;
}

a {
  backface-visibility: hidden;
  transition: .2s ease-in;
  transition-property: opacity, color, background, transform, box-shadow;
  line-height: inherit;
}

img {
  vertical-align: middle;
}

img,
input[type="image"] {
  border: 0;
  height: auto;
  max-width: 100%;
}

input[type="submit"], input[type="button"], button {
  cursor: pointer;
  -webkit-appearance: none;
  border-radius: 0;
  font-size: inherit;
  letter-spacing: inherit;
  background: none;
}

strong {
  font-weight: bold;
}

a {
  text-decoration: none;
}

a:hover,
input[type="image"]:hover {
  opacity: 0.7;
}

main {
  overflow: hidden;
}

.c_anchor {
  position: absolute;
  width: 100%;
  left: 0;
  margin-top: -var(--pc-header);
}

@media screen and (max-width: 767px) {
  .c_anchor {
    margin-top: -var(--sp-header);
  }
}

.c_btn2 {
  text-align: center;
}

.c_btn2 > * {
  text-align: center;
  display: inline-block;
  font-size: 1.6rem;
  letter-spacing: .18em;
  position: relative;
  color: var(--main-color);
  width: 30em;
  max-width: 100%;
  line-height: 7rem;
  background: #fff;
  border: solid 1px var(--main-color);
}

.c_btn2 > *:before {
  content: '';
  position: absolute;
  width: 0.72rem;
  height: 0.72rem;
  border-top: 1px solid var(--main-color);
  border-right: 1px solid var(--main-color);
  right: 1.5em;
  top: 50%;
  -webkit-transform: rotate(45deg) translateY(-50%);
  transform: rotate(45deg) translateY(-50%);
  transition: border .2s ease-in;
}

.c_btn2 > *.b:before {
  border: none;
  border-bottom: 1px solid var(--main-color);
  border-left: 1px solid var(--main-color);
  right: auto;
  left: 1.5em;
}

.c_btn2 > *:hover {
  background: var(--main-color);
  color: #fff;
  opacity: 1;
}

.c_btn2 > *:hover:before {
  border-color: #fff;
}

@media screen and (max-width: 767px) {
  .c_btn2 > * {
    line-height: 5.7rem;
  }
}

.c_btn2 input {
  line-height: inherit;
  width: 100%;
}

.c_tbl {
  border: solid 1px #dcdcdc;
  background: #fff;
  margin-top: 6rem;
}

@media screen and (max-width: 767px) {
  .c_tbl {
    margin-top: 4rem;
  }
}

.c_tbl a {
  color: var(--main-color);
  text-decoration: underline;
}

.c_tbl th {
  width: 17%;
  text-align: left;
  background: var(--sub-color);
}

.c_tbl tr > * {
  font-size: 1.5rem;
  line-height: 2.1;
  padding: 2em 1.5em;
  vertical-align: top;
}

@media screen and (max-width: 767px) {
  .c_tbl tr > * {
    float: left;
    width: 100%;
  }
}

.c_tbl td {
  background: #fff;
}

@media screen and (max-width: 767px) {
  .c_tbl tr + tr > th {
    border-top: solid 1px #dcdcdc;
  }
  .c_tbl th {
    padding-top: .5em;
    padding-bottom: .5em;
  }
  .c_tbl td {
    padding-top: 1em;
  }
}

@media screen and (min-width: 768px) {
  .c_tbl tr + tr > * {
    border-top: solid 1px #dcdcdc;
  }
}

html {
  font-size: 10px;
}

@media screen and (max-width: 450px) {
  html {
    font-size: calc(100vw * 10 / 450);
  }
}

.u_clearfix:after,
.u_clearfix > li:after {
  height: 0;
  visibility: hidden;
  content: ".";
  display: block;
  clear: both;
}

* html .u_clearfix,
* html .u_clearfix > li {
  zoom: 1;
}

* + html .u_clearfix,
* + html .u_clearfix li {
  zoom: 1;
}

.u_relative {
  position: relative;
}

@media screen and (min-width: 768px) {
  .u_visible_sp {
    display: none;
  }
  .u_tel {
    pointer-events: none;
    cursor: default;
  }
  .u_tel:hover {
    opacity: 1;
  }
}

@media screen and (max-width: 767px) {
  .u_visible_pc {
    display: none;
  }
}

.low_inner {
  margin: 0 auto;
  max-width: calc(100% - 4rem);
}

@media screen and (min-width: 768px) {
  .low_inner {
    width: 108rem;
  }
}

.low_header {
  position: relative;
  background: #f2f2f2;
  height: 30rem;
  margin: var(--pc-header) 0 0;
}

@media screen and (max-width: 767px) {
  .low_header {
    margin: var(--sp-header) 0 0;
    height: auto;
    padding-bottom: 2.5rem;
  }
}

.low_header .low_inner {
  height: 100%;
}

.low_header .ttl {
  color: var(--main-color);
  font-weight: bold;
  font-size: 4.4rem;
  line-height: 1.5;
}

@media screen and (min-width: 768px) {
  .low_header .ttl {
    position: relative;
    top: 50%;
    transform: translateY(-50%);
  }
}

@media screen and (max-width: 767px) {
  .low_header .ttl {
    padding-top: 4rem;
    font-size: 3.2rem;
  }
}

.low_header .ttl i {
  display: block;
  font-size: 1.3rem;
  letter-spacing: .2em;
  margin-bottom: .2em;
  line-height: inherit;
}

.low_path {
  margin: 0 0 12rem;
  padding: 1rem 0 1rem;
  border-bottom: solid 1px #dcdcdc;
}

@media screen and (max-width: 767px) {
  .low_path {
    margin-bottom: 5rem;
  }
}

.low_path li {
  display: inline-block;
  font-size: 1.2rem;
  position: relative;
  line-height: 1.5;
}

.low_path li a {
  color: var(--main-color);
  border-bottom: solid 1px var(--main-color);
  line-height: 1.5;
}

.low_path li + li:before {
  content: '＞';
  margin: 0 .3em 0 .2em;
}

.low_ttl {
  font-size: 3rem;
  position: relative;
  padding-left: 1em;
  margin-bottom: 1em;
  color: var(--main-color);
  font-weight: bold;
  line-height: 1.5;
}

.low_ttl i {
  display: block;
  font-size: .5em;
  letter-spacing: .2em;
}

@media screen and (max-width: 767px) {
  .low_ttl {
    font-size: 2.6rem;
  }
}

.low_ttl:before {
  content: '';
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  width: .2em;
  background: var(--main-color);
  height: calc(100% - .3em);
  left: 0;
}

.low_ttl2 {
  color: var(--main-color);
  font-size: 2.4rem;
  font-weight: bold;
  line-height: 1.5;
  margin: 0 0 .5em;
}

.low_nav {
  display: flex;
  justify-content: space-between;
  gap: 0 1.5rem;
  margin-bottom: 10rem;
}

@media screen and (max-width: 767px) {
  .low_nav {
    flex-wrap: wrap;
    margin-bottom: 6rem;
  }
  .low_nav li {
    margin-bottom: 1rem;
  }
}

.low_nav a {
  display: block;
  background: var(--main-color);
  color: #fff;
  border-radius: 2em;
  padding: .6em 0;
  font-size: 1.8rem;
  position: relative;
}

.low_nav a:before {
  content: '';
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  right: 1.2em;
  border: .6rem solid transparent;
  border-top: .6rem solid #fff;
  margin-top: .2em;
}

.low_nav li {
  width: 100%;
  text-align: center;
}

.c_sec {
  margin: 10rem 0;
}

@media screen and (max-width: 767px) {
  .c_sec {
    margin: 6rem 0;
  }
}

.c_sec p {
  font-size: 1.6rem;
  line-height: 1.875;
}

.c_bg {
  margin: 0;
  padding: 10rem 0;
  background: var(--bg-color);
}

@media screen and (max-width: 767px) {
  .c_bg {
    padding: 6rem 0;
  }
}

.c_col2 {
  margin-top: 6rem;
}

@media screen and (max-width: 767px) {
  .c_col2 {
    margin-top: 4rem;
  }
  .c_col2 > * + * {
    margin-top: 2rem;
  }
}

@media screen and (min-width: 768px) {
  .c_col2 {
    display: flex;
    justify-content: space-between;
  }
  .c_col2 > * {
    width: 47.5%;
  }
  .c_col2:nth-child(2n + 0) {
    flex-flow: row-reverse;
  }
}

.c_col2 li img {
  display: block;
  width: 100%;
  margin: 0 auto 2rem;
}

.c_col3 {
  margin-top: 6rem;
}

@media screen and (min-width: 768px) {
  .c_col3 {
    display: flex;
    justify-content: space-between;
    gap: 0 5rem;
  }
  .c_col3 li {
    width: 100%;
  }
}

@media screen and (max-width: 767px) {
  .c_col3 {
    margin-top: 4rem;
  }
  .c_col3.b {
    margin: 4rem 2rem 0;
  }
}

@media screen and (max-width: 767px) {
  .c_col3 li {
    margin-top: 3rem;
  }
}

.c_col3 li img {
  display: block;
  width: 100%;
  margin: 0 auto 2rem;
}

.c_col4 {
  margin-top: 6rem;
}

@media screen and (max-width: 767px) {
  .c_col4 {
    margin-top: 4rem;
  }
}

@media screen and (min-width: 768px) {
  .c_col4 {
    display: flex;
    justify-content: space-between;
    gap: 0 3rem;
  }
  .c_col4 li {
    width: 100%;
  }
}

@media screen and (max-width: 767px) {
  .c_col4 li {
    margin-top: 3rem;
  }
}

.c_col4 li img {
  display: block;
  width: 100%;
  margin: 0 auto 2rem;
}

.c_map {
  position: relative;
  height: 0;
  padding-top: 48rem;
  overflow: hidden;
}

.c_map iframe {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}

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

.c_fig {
  margin-top: 6rem;
}

@media screen and (max-width: 767px) {
  .c_fig {
    margin-top: 4rem;
  }
}

.c_fig img {
  width: 100%;
}

.c_custom {
  margin-top: 6rem;
}

@media screen and (max-width: 767px) {
  .c_custom {
    margin-top: 4rem;
  }
}

.c_gallery li {
  width: 35rem;
}

@media screen and (max-width: 767px) {
  .c_gallery li {
    width: 20rem;
  }
}

.pp_body {
  margin-bottom: 18rem;
}

@media screen and (max-width: 767px) {
  .pp_body {
    margin-bottom: 10rem;
  }
}

.pp_body a {
  color: var(--main-color);
  text-decoration: underline;
  letter-spacing: inherit;
}

.pp_body p, .pp_body dd, .pp_body li {
  font-size: 1.5rem;
  line-height: 1.86;
  letter-spacing: .03em;
}

.pp_body dl {
  margin-top: 4.5rem;
}

.pp_body dt {
  margin-bottom: .6em;
  color: var(--main-color);
  font-size: 2.2rem;
}

@media screen and (max-width: 767px) {
  .pp_body dt {
    font-size: 2rem;
  }
}

.pp_body dd {
  margin-bottom: 3.5em;
}

.pp_body li {
  position: relative;
  padding-left: 1.4em;
}

.pp_body li li {
  padding-left: 2em;
  margin-left: 2em;
}

.pp_body li li li {
  font-size: 1.4rem;
}

.pp_body li li li + li {
  margin-top: 0;
}

.pp_body li ul {
  margin: 1em 0;
  margin-top: .5em;
}

.pp_body li + li {
  margin-top: .3em;
}

.pp_body li i {
  position: absolute;
  left: 0;
  line-height: inherit;
}

.recruit_info .c_tbl {
  border-color: #d2d2d2;
}

.recruit_info .c_tbl th {
  background: #e6e6e6;
}

.recruit_info .c_tbl tr > * {
  border-color: #d2d2d2;
}

.recruit_info .nav {
  margin-bottom: 4rem;
}

@media screen and (min-width: 768px) {
  .recruit_info .nav {
    display: flex;
    gap: 0 1rem;
  }
  .recruit_info .nav li {
    width: 100%;
  }
}

@media screen and (max-width: 767px) {
  .recruit_info .nav {
    display: flex;
    flex-wrap: wrap;
  }
  .recruit_info .nav > * {
    margin-left: 2%;
    width: 49%;
  }
  .recruit_info .nav > *:nth-child(2n + 1) {
    margin-left: 0;
  }
}

.recruit_info .nav a {
  font-size: 1.4rem;
  text-align: center;
  padding: 1.2em 0;
  display: block;
  background: #fff;
  border: solid 1px var(--main-color);
  position: relative;
  color: var(--main-color);
  z-index: 1;
  position: relative;
}

.recruit_info .nav a:before {
  content: '';
  position: absolute;
  left: 50%;
  transform: translateX(-50%);
  border: 0.8rem solid transparent;
  border-top: 1.2rem solid var(--main-color);
  bottom: -2rem;
  opacity: 0;
  transition: opacity .2s ease-in;
}

.recruit_info .nav a:hover, .recruit_info .nav a.active {
  background: var(--main-color);
  opacity: 1;
  color: #fff;
  border-color: var(--main-color);
}

.recruit_info .nav a:hover:before, .recruit_info .nav a.active:before {
  opacity: 1;
}

@media screen and (max-width: 767px) {
  .recruit_info .nav a:before {
    content: none;
  }
}

@media screen and (max-width: 767px) {
  .recruit_info li {
    margin-bottom: 2%;
  }
}

.recruit_info .box {
  display: none;
}

.recruit_info .box.active {
  display: block;
}

.recruit_info .msg {
  text-align: center;
  padding: 5rem 0 15rem;
  font-size: 1.6rem;
}

.faq_list {
  margin-top: 6rem;
}

@media screen and (max-width: 767px) {
  .faq_list {
    margin-top: 4rem;
  }
}

.faq_list dl {
  border-bottom: solid 1px #dcdcdc;
  margin: 7rem 0 9rem;
}

@media screen and (max-width: 767px) {
  .faq_list dl {
    margin: 5rem 0;
  }
}

.faq_list dt, .faq_list dd {
  position: relative;
  padding-left: 6.7rem;
}

@media screen and (max-width: 767px) {
  .faq_list dt, .faq_list dd {
    padding-left: 4.2rem;
  }
}

.faq_list dt:before, .faq_list dd:before {
  content: 'Q';
  background: var(--bg-color);
  font-size: 2.6rem;
  width: 1.92em;
  height: 1.92em;
  border-radius: 50%;
  position: absolute;
  text-align: center;
  line-height: 1.92;
  font-weight: bold;
  left: 0;
  margin-top: -.25em;
}

@media screen and (max-width: 767px) {
  .faq_list dt:before, .faq_list dd:before {
    font-size: 1.75rem;
  }
}

.faq_list dt {
  color: var(--main-color);
  font-size: 2.4rem;
  font-weight: 500;
  border-top: solid 1px #dcdcdc;
  padding-top: 3rem;
  padding-bottom: 3rem;
  padding-right: 5rem;
  cursor: pointer;
}

.faq_list dt i {
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  width: 2rem;
  height: 2rem;
  right: 1rem;
}

.faq_list dt i:after {
  content: '';
  position: absolute;
  width: 100%;
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  height: .2rem;
  background: var(--main-color);
}

.faq_list dt i:before {
  content: '';
  position: absolute;
  height: 100%;
  position: absolute;
  left: 50%;
  transform: translateX(-50%);
  width: .2rem;
  background: var(--main-color);
}

@media screen and (max-width: 767px) {
  .faq_list dt {
    padding-top: 2.5rem;
    padding-bottom: 2rem;
    font-size: 1.85rem;
    background-position: right 3.8rem;
  }
}

.faq_list dt.open i:before {
  content: none;
}

.faq_list dt.open + dd {
  display: block;
  padding-bottom: 4rem;
}

@media screen and (max-width: 767px) {
  .faq_list dt.open + dd {
    padding-bottom: 3rem;
  }
}

.faq_list dd {
  font-size: 1.6rem;
  line-height: 1.875;
  display: none;
}

.faq_list dd:before {
  content: 'A';
  background: var(--bg-color);
}

@media screen and (min-width: 768px) {
  .blog_main {
    float: left;
    width: calc(100% - 28rem);
    margin-bottom: 16rem;
  }
  .blog_side {
    float: right;
    width: 20rem;
    margin-bottom: 16rem;
  }
}

@media screen and (max-width: 767px) {
  .blog_main {
    margin-bottom: 10rem;
  }
}

.blog_main .c_btn {
  text-align: center;
}

@media screen and (max-width: 767px) {
  .blog_side {
    margin-bottom: 6rem;
  }
}

.blog_side dt {
  padding-bottom: 1em;
  font-size: 1.4rem;
  color: #fff;
  background: var(--main-color);
  line-height: 1.5;
  padding: 1em 1em;
}

.blog_side dd {
  margin-bottom: 1rem;
  background: var(--sub-color);
  border-top: none;
  padding: 1rem 0;
  margin-bottom: 4rem;
}

.blog_side li a {
  font-size: 1.3rem;
  line-height: 1.5;
  display: block;
  color: #333;
  padding: .7em 1.2em;
}

.blog_sub {
  margin-bottom: 1.6rem;
  position: relative;
  font-size: 1.2rem;
  line-height: 1.5;
}

@media screen and (min-width: 768px) {
  .blog_sub {
    border-top: solid 1px #dcdcdc;
    padding-top: 5.5rem;
  }
}

.blog_sub small {
  display: inline-block;
}

.blog_sub i {
  background: #f2f2f2;
  padding: .3em 1em;
  text-align: center;
  display: inline-block;
  margin-left: 1em;
}

.blog_ttl {
  font-size: 3.4rem;
  line-height: 1.5;
  margin-bottom: 4.5rem;
}

@media screen and (max-width: 767px) {
  .blog_ttl {
    font-size: 2.1rem;
    padding-bottom: .6em;
    margin-bottom: 1em;
  }
}

.blog_img {
  margin-bottom: 5rem;
}

.blog_img img {
  border: solid 1px #dcdcdc;
}

.blog_body, .mce-content-body {
  border-bottom: solid 1px #dcdcdc;
  margin-bottom: 6rem;
  padding-bottom: 8rem;
}

.blog_body .blog_img + h2, .mce-content-body .blog_img + h2 {
  margin-top: 0;
}

.blog_body h2, .mce-content-body h2 {
  font-size: 2.4rem;
  font-weight: bold;
  color: var(--main-color);
  letter-spacing: .06em;
  margin: 2.2em 0 1em;
  padding-bottom: .3em;
}

.blog_body h2 + h3, .mce-content-body h2 + h3 {
  margin-top: 0;
}

.blog_body h3, .mce-content-body h3 {
  position: relative;
  padding-left: 1em;
  margin: 1.8em 0 .7em;
  color: var(--main-color);
}

.blog_body h3:before, .mce-content-body h3:before {
  content: '';
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  width: .25em;
  height: calc(100% - .3em);
  left: 0;
  background: var(--main-color);
}

.blog_body h4, .mce-content-body h4 {
  font-size: 1.8rem;
  margin: .8em 0 .4em;
  letter-spacing: .04em;
  margin-left: 1em;
  text-indent: -1em;
}

.blog_body h4:before, .mce-content-body h4:before {
  content: '・';
}

.blog_body em, .mce-content-body em {
  background: linear-gradient(transparent 10%, var(--sub-color) 10%);
}

.blog_body p, .mce-content-body p {
  clear: both;
  font-size: 1.5rem;
  line-height: 2.3;
  letter-spacing: .05em;
}

@media screen and (max-width: 767px) {
  .blog_body p, .mce-content-body p {
    line-height: 2;
  }
}

.blog_body p img.aligncenter, .mce-content-body p img.aligncenter {
  display: block;
  margin: 0 auto;
}

.blog_body p + p, .mce-content-body p + p {
  margin-top: 1.5em;
}

.blog_body .question, .blog_body .answer, .mce-content-body .question, .mce-content-body .answer {
  position: relative;
}

.blog_body .question img, .blog_body .answer img, .mce-content-body .question img, .mce-content-body .answer img {
  position: absolute;
  width: 6rem;
  top: 0;
}

@media screen and (max-width: 767px) {
  .blog_body .question img, .blog_body .answer img, .mce-content-body .question img, .mce-content-body .answer img {
    width: 5.7rem;
  }
}

.blog_body .question b, .blog_body .answer b, .mce-content-body .question b, .mce-content-body .answer b {
  padding: 1.7rem 2rem;
  display: block;
  font-size: 1.5rem;
  letter-spacing: .05em;
  position: relative;
  border-radius: 1rem;
  line-height: 1.6;
  display: flex;
  align-items: center;
  min-height: 4.2em;
  font-weight: normal;
}

@media screen and (max-width: 767px) {
  .blog_body .question b, .blog_body .answer b, .mce-content-body .question b, .mce-content-body .answer b {
    min-height: 3.8em;
  }
}

.blog_body .question b:before, .blog_body .answer b:before, .mce-content-body .question b:before, .mce-content-body .answer b:before {
  content: '';
  position: absolute;
  border-style: solid;
}

@media screen and (max-width: 767px) {
  .blog_body .question b, .blog_body .answer b, .mce-content-body .question b, .mce-content-body .answer b {
    padding: 1rem 2rem;
  }
}

.blog_body .question, .mce-content-body .question {
  padding-left: 9.5rem;
}

.blog_body .question img, .mce-content-body .question img {
  left: 0;
}

@media screen and (min-width: 768px) {
  .blog_body .question, .mce-content-body .question {
    margin-right: 9.5rem;
  }
}

@media screen and (max-width: 767px) {
  .blog_body .question, .mce-content-body .question {
    padding-left: 8.5rem;
  }
}

.blog_body .question b, .mce-content-body .question b {
  background: var(--main-color);
  color: #fff;
}

.blog_body .question b:before, .mce-content-body .question b:before {
  border-width: 7px 14px 7px 0;
  border-color: transparent var(--main-color) transparent transparent;
  left: -13px;
  top: 25px;
}

.blog_body .answer, .mce-content-body .answer {
  padding-right: 9.5rem;
}

.blog_body .answer img, .mce-content-body .answer img {
  right: 0;
}

@media screen and (min-width: 768px) {
  .blog_body .answer, .mce-content-body .answer {
    margin-left: 9.5rem;
  }
}

@media screen and (max-width: 767px) {
  .blog_body .answer, .mce-content-body .answer {
    padding-right: 8.5rem;
  }
}

.blog_body .answer b, .mce-content-body .answer b {
  background: var(--mainopa-color);
}

.blog_body .answer b:before, .mce-content-body .answer b:before {
  border-width: 7px 0 7px 14px;
  border-color: transparent transparent transparent var(--mainopa-color);
  right: -13px;
  top: 25px;
}

.blog_body table, .mce-content-body table {
  border-top: solid 1px #dcdcdc;
  margin: 4.5rem 0 7rem;
  width: 100%;
}

.blog_body tr > *, .mce-content-body tr > * {
  font-size: 1.5rem;
  line-height: 2;
  padding: 2em 1.5em;
  background: #fff;
  vertical-align: middle;
  border-bottom: solid 1px #dcdcdc;
}

@media screen and (max-width: 767px) {
  .blog_body tr > *, .mce-content-body tr > * {
    padding: .6em;
  }
}

.blog_body td, .mce-content-body td {
  width: 18%;
  background: var(--sub-color);
}

.blog_body td + td, .mce-content-body td + td {
  width: auto;
  background: none;
}

@media screen and (min-width: 768px) {
  .blog_body td + td, .mce-content-body td + td {
    font-size: 1.6rem;
  }
}

.blog_btn {
  text-align: center;
}

.blog_btn a {
  display: inline-block;
  color: var(--main-color);
  border: solid 1px var(--main-color);
  font-size: 1.4rem;
  width: 22rem;
  padding: 1em 0;
  position: relative;
  line-height: 1.5;
}

.blog_btn a:before {
  content: '';
  position: absolute;
  width: .4em;
  height: .4em;
  left: 1.7em;
  top: 1.6em;
  border-bottom: 1px solid var(--main-color);
  border-left: 1px solid var(--main-color);
  -webkit-transform: rotate(45deg);
  transform: rotate(45deg);
}

.blog_btn a:hover {
  opacity: 1;
  background: var(--main-color);
  color: #fff;
}

.blog_btn a:hover:before {
  border-color: #fff;
}

.blog_cate {
  font-size: 3.2rem;
  color: var(--main-color);
  margin-bottom: 4rem;
  position: relative;
  padding-left: 1.5em;
}

@media screen and (max-width: 767px) {
  .blog_cate {
    font-size: 2.8rem;
    margin-bottom: 2rem;
  }
}

.blog_cate:before {
  content: '';
  position: absolute;
  width: 1em;
  left: 0;
  height: 1em;
  border-radius: 50%;
  border: solid 1px var(--main-color);
  top: .25em;
}

.cat-item-none {
  display: none;
}

.blog_list {
  border-top: solid 1px #dcdcdc;
}

.blog_list a {
  display: flex;
  justify-content: space-between;
  align-items: flex-start;
}

.blog_list a:hover {
  opacity: 1;
}

.blog_list a:hover p b {
  background: var(--main-color);
}

.blog_list a:hover p b:before {
  border-color: #fff;
}

.blog_list li {
  border-bottom: solid 1px #dcdcdc;
  position: relative;
  padding: 3rem 0;
}

@media screen and (max-width: 767px) {
  .blog_list li {
    padding: 2rem 0;
  }
}

.blog_list .img {
  width: 28%;
  border: solid 1px #dcdcdc;
}

.blog_list .img img {
  width: 100%;
}

@media screen and (max-width: 767px) {
  .blog_list .img {
    width: 15rem;
  }
}

.blog_list .desc {
  width: 67%;
}

@media screen and (max-width: 767px) {
  .blog_list .desc {
    width: calc(100% - 16.5rem);
  }
}

.blog_list p {
  font-size: 1.1rem;
  line-height: 1.5;
}

@media screen and (min-width: 768px) {
  .blog_list p {
    line-height: 1.58;
  }
}

.blog_list p + p {
  margin-top: 1.5rem;
  font-size: 2.4rem;
  position: relative;
}

@media screen and (max-width: 767px) {
  .blog_list p + p {
    margin-top: .5rem;
    font-size: 1.6rem;
  }
}

.blog_list p b {
  display: inline-block;
  position: relative;
  border: solid 1px var(--main-color);
  border-radius: 50%;
  margin-left: .3em;
  width: 1em;
  height: 1em;
  vertical-align: -.1em;
  transition: background .2s ease-in;
}

.blog_list p b:before {
  content: '';
  position: absolute;
  width: 0.55rem;
  height: 0.55rem;
  border-top: 1px solid var(--main-color);
  border-right: 1px solid var(--main-color);
  right: 0.5em;
  top: 50%;
  -webkit-transform: rotate(45deg) translateY(-50%);
  transform: rotate(45deg) translateY(-50%);
  transition: border .2s ease-in;
}

.blog_list p small {
  display: inline-block;
}

.blog_list p i {
  background: #f2f2f2;
  padding: .3em 1em;
  text-align: center;
  display: inline-block;
  margin-left: 1em;
}

.c_pager {
  text-align: center;
  margin-top: 6rem;
}

.c_pager a, .c_pager span {
  font-size: 1.4rem;
  width: 4em;
  height: 4em;
  margin: 0 .2em;
  line-height: 4;
  display: inline-block;
  border-radius: 50%;
  background: #f2f2f2;
  vertical-align: top;
}

.c_pager .current {
  background: var(--main-color);
  color: #fff;
  border-color: var(--main-color);
}

.c_pager .dots {
  width: auto;
  border: none;
  background: none;
}

.c_pager .screen-reader-text, .c_pager .icon {
  display: none;
}

.c_pager .next, .c_pager .prev {
  position: relative;
}

.c_pager .next:after, .c_pager .prev:after {
  content: '';
  position: absolute;
  width: 1rem;
  height: 1rem;
  top: 50%;
  -webkit-transform: translateY(-50%) rotate(45deg);
  transform: translateY(-50%) rotate(45deg);
}

@media screen and (max-width: 767px) {
  .c_pager .next, .c_pager .prev {
    display: none;
  }
}

.c_pager .prev:after {
  border-bottom: 1px solid var(--text-color);
  border-left: 1px solid var(--text-color);
  left: 2.5rem;
}

.c_pager .next:after {
  border-top: 1px solid var(--text-color);
  border-right: 1px solid var(--text-color);
  right: 2.5rem;
}

.form_body {
  padding-bottom: 16rem;
  border-bottom: solid 1px #dcdcdc;
}

.form_body div.wpcf7 .ajax-loader {
  position: absolute;
  left: 0;
  background-color: transparent;
}

.form_body div.wpcf7 .ajax-loader:before {
  content: none;
}

.form_body .wpcf7-spinner {
  display: none !important;
}

.form_body span.wpcf7-list-item {
  margin: 0;
  display: inline;
}

.form_body .wpcf7c-conf:-webkit-autofill {
  -webkit-box-shadow: 0 0 0px 1000px #fff inset;
}

.form_body input:-webkit-autofill {
  -webkit-box-shadow: 0 0 0px 1000px #fff inset;
}

.form_body input[readonly], .form_body textarea[readonly], .form_body select[readonly] {
  border: none !important;
  background: #fff;
}

@media screen and (max-width: 767px) {
  .form_body {
    padding-bottom: 8rem;
  }
}

.form_body .lead {
  font-size: 1.5rem;
  margin-bottom: 5rem;
  color: var(--main-color);
  line-height: 1.5;
}

.form_body th {
  position: relative;
}

@media screen and (min-width: 768px) {
  .form_body th {
    width: 35%;
    padding-top: 2.5em;
  }
}

.form_body th em {
  position: absolute;
  color: #fff;
  background: var(--main-color);
  padding: .4em 1em .3em;
  right: 2em;
  top: 2.5em;
  letter-spacing: .3em;
  line-height: 1.5;
}

@media screen and (max-width: 767px) {
  .form_body th em {
    right: 1em;
    left: auto;
    top: auto;
    bottom: .5em;
  }
}

.form_body td input[type="text"], .form_body td input[type="email"], .form_body td input[type="tel"], .form_body td textarea, .form_body td select {
  width: 100%;
  padding: 1em 1.2em;
  border: solid 1px #dcdcdc;
  border-radius: .5em;
}

.form_body td select {
  width: auto;
}

.form_body td textarea {
  width: 100%;
  height: 12em;
  display: block;
}

.form_body td label {
  margin-top: .5em;
}

.form_body td label input {
  margin-right: .7em;
}

.form_body td .wpcf7-list-item, .form_body td label {
  display: block;
}

.form_body .doui2 {
  text-align: center;
  font-size: 2.2rem;
  margin: 6rem 0;
  border: solid 1px #dcdcdc;
  padding: 4rem 2em;
  position: relative;
  font-size: 1.6rem;
}

.form_body .doui2:before {
  content: '';
  position: absolute;
  width: 100%;
  border: solid 1.2rem #f5f5f5;
  height: 100%;
  left: 0;
  top: 0;
  z-index: -1;
}

.form_body .doui2 input {
  margin-right: .5em;
}

.form_body .doui2 a {
  color: var(--main-color);
  text-decoration: underline;
}

@media screen and (max-width: 767px) {
  .form_body .doui2 {
    font-size: 1.6rem;
    margin: 4rem 0 6rem;
  }
}

.form_body .doui2 label {
  cursor: pointer;
}

.form_body .doui2 .wpcf7-list-item-label {
  display: inline-block;
  vertical-align: middle;
  width: 1em;
  height: 2em;
  overflow: hidden;
  color: transparent;
}

.form_body .doui2 .wpcf7-form-control-wrap {
  display: block;
  margin-bottom: .5em;
}

.form_body .msg p {
  font-size: 1.6rem;
  text-align: center;
  margin-bottom: 3em;
  line-height: 2;
}

.form_body .c_btn {
  text-align: center;
}

.form_body .c_btn span {
  cursor: pointer;
  -webkit-transition: all .2s ease-in;
  transition: all .2s ease-in;
  -webkit-transition-property: opacity, color, background;
  transition-property: opacity, color, background;
  width: 40rem;
}

/* Slider */
.slick-slider {
  position: relative;
  display: block;
  box-sizing: border-box;
  -webkit-touch-callout: none;
  -webkit-user-select: none;
  -khtml-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none;
  -ms-touch-action: pan-y;
  touch-action: pan-y;
  -webkit-tap-highlight-color: transparent;
}

.slick-list {
  position: relative;
  overflow: hidden;
  display: block;
  margin: 0;
  padding: 0;
}

.slick-list:focus {
  outline: none;
}

.slick-list.dragging {
  cursor: pointer;
  cursor: hand;
}

.slick-slider .slick-track,
.slick-slider .slick-list {
  -webkit-transform: translate3d(0, 0, 0);
  -moz-transform: translate3d(0, 0, 0);
  -ms-transform: translate3d(0, 0, 0);
  -o-transform: translate3d(0, 0, 0);
  transform: translate3d(0, 0, 0);
}

.slick-track {
  position: relative;
  left: 0;
  top: 0;
  display: block;
  margin-left: auto;
  margin-right: auto;
}

.slick-track:before, .slick-track:after {
  content: "";
  display: table;
}

.slick-track:after {
  clear: both;
}

.slick-loading .slick-track {
  visibility: hidden;
}

.slick-slide {
  float: left;
  height: 100%;
  min-height: 1px;
  display: none;
}

[dir="rtl"] .slick-slide {
  float: right;
}

.slick-slide img {
  display: block;
}

.slick-slide.slick-loading img {
  display: none;
}

.slick-slide.dragging img {
  pointer-events: none;
}

.slick-initialized .slick-slide {
  display: block;
}

.slick-loading .slick-slide {
  visibility: hidden;
}

.slick-vertical .slick-slide {
  display: block;
  height: auto;
  border: 1px solid transparent;
}

.slick-arrow.slick-hidden {
  display: none;
}

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