@charset "UTF-8";
/*//////////////////////////////////////////////////////////

Copyright (C) apricot-design All Rights Reserved.
------------------------------------------------------------
CSS information
 file name  :  reset.css
 style info :  リセットファイル
 admin info :  apricot-design

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

audio[controls], canvas, video {
  display: inline-block;
  *display: inline;
  zoom: 1;
}

html {
  overflow-y: scroll;
  -webkit-tap-highlight-color: rgba(0, 0, 0, 0);
  -webkit-text-size-adjust: 100%;
  -ms-text-size-adjust: 100%;
}

body, div, dl, dt, dd, h1, h2, h3, h4, h5, h6, pre, form, fieldset, input, textarea, p, blockquote, th, td, ul {
  margin: 0;
  padding: 0;
}

body, button, input, select, textarea {
  font-size: 100%;
}

abbr[title] {
  border-bottom: 1px dotted;
}

b, strong {
  font-weight: bold;
}

blockquote {
  margin: 1em 40px;
}

dfn {
  font-style: italic;
}

mark {
  background: #ff0;
  color: #000;
}

pre, code, kbd, samp {
  font-family: monospace, monospace;
  _font-family: "courier new", monospace;
  font-size: 1em;
}

pre {
  white-space: pre;
  white-space: pre-wrap;
  word-wrap: break-word;
}

q {
  quotes: none;
}
q:before, q:after {
  content: "";
  content: none;
}

small {
  font-size: 75%;
}

sub {
  font-size: 75%;
  line-height: 0;
  position: relative;
  vertical-align: baseline;
}

sup {
  font-size: 75%;
  line-height: 0;
  position: relative;
  vertical-align: baseline;
  top: -0.5em;
}

sub {
  bottom: -0.25em;
}

ul, ol {
  margin: 0;
  padding: 0;
}

dd {
  margin: 0px;
}

nav ul, nav ol {
  list-style: none;
}

img {
  border: 0;
  -ms-interpolation-mode: bicubic;
}

svg:not(:root) {
  overflow: hidden;
}

figure, form {
  margin: 0;
}

fieldset {
  margin: 0 2px;
  padding: 0.35em 0.625em 0.75em;
}

legend {
  border: 0;
  *margin-left: -7px;
}

button, input, select, textarea {
  font-size: 100%;
  margin: 0;
  vertical-align: baseline;
  *vertical-align: middle;
}

button, input {
  line-height: normal;
  *overflow: visible;
}

button {
  cursor: pointer;
  -webkit-appearance: button;
}

input[type=button], input[type=reset], input[type=submit] {
  cursor: pointer;
  -webkit-appearance: button;
}
input[type=checkbox], input[type=radio] {
  box-sizing: border-box;
}
input[type=search] {
  -webkit-appearance: textfield;
  box-sizing: content-box;
}
input[type=search]::-webkit-search-decoration {
  -webkit-appearance: none;
}

button::-moz-focus-inner, input::-moz-focus-inner {
  border: 0;
  padding: 0;
}

textarea {
  overflow: auto;
  vertical-align: top;
}

table {
  border-collapse: collapse;
  border-spacing: 0;
}

address, caption, cite, code, dfn, em, strong, th, var {
  font-style: normal;
}

h1, h2, h3, h4, h5, h6 {
  font-weight: normal;
  font-size: 100%;
}

img, abbr, acronym, fieldset {
  border: 0;
}

li {
  list-style: none;
}

/*画像を縦に並べた時に余白が出ないように*/
img {
  vertical-align: top;
  font-size: 0;
  line-height: 0;
}

/*box-sizingを全ブラウザに対応*/
* {
  -ms-box-sizing: border-box;
  -o-box-sizing: border-box;
  box-sizing: border-box;
}
*:before, *:after {
  -ms-box-sizing: border-box;
  -o-box-sizing: border-box;
  box-sizing: border-box;
}

.ie6_error, .no_script {
  background: #F66;
  padding: 100px;
  text-align: center;
  font-size: 150%;
  color: #333;
}

.flt {
  float: left;
}

.flr {
  float: right;
}

.txt_l, td.txt_l, .txt_l td {
  text-align: left;
}

.txt_r, td.txt_r, .txt_r td {
  text-align: right;
}

.txt_c, td.txt_c, .txt_c td {
  text-align: center;
}

.valign_t, td.valign_t, .valign_t td {
  vertical-align: top;
}

.valign_m, td.valign_m, .valign_m td {
  vertical-align: middle;
}

.valign_b, td.valign_b, .valign_b td {
  vertical-align: bottom;
}

.clear {
  clear: both;
}

.clearfix {
  zoom: 1;
}
.clearfix:before {
  content: "";
  display: block;
}
.clearfix:after {
  content: "";
  display: block;
  clear: both;
}

.img_bd {
  border: solid 1px #E8E8E8;
}

.c_red {
  color: #FF3425;
}

/*
0:セット
------------------------------------------------------------
*/
html {
  width: 100%;
}

body {
  font-family: "M PLUS 1p", sans-serif, "Noto Sans JP", "メイリオ", Meiryo, Helvetica, "Hiragino Kaku Gothic Pro", "ヒラギノ角ゴ Pro W3", "ＭＳ Ｐゴシック", Arial, Verdana, sans-serif;
  color: #1c0000;
  font-size: 16px;
  font-weight: 400;
  line-height: 1.8;
  text-align: left;
  letter-spacing: 1px;
}
@media screen and (max-width: 767px) {
  body {
    font-size: 15px;
  }
}

.win body {
  font-family: "M PLUS 1p", sans-serif, "Noto Sans JP", "メイリオ", Meiryo, Helvetica, "Hiragino Kaku Gothic Pro", "ヒラギノ角ゴ Pro W3", "ＭＳ Ｐゴシック", Arial, Verdana, sans-serif;
}

a {
  text-decoration: none;
  color: #1c0000;
  transition: 0.3s;
}
a:link, a:active, a:visited {
  text-decoration: none;
}

.opacity {
  transition: 0.3s;
}
.opacity:hover {
  opacity: 0.5;
}

img {
  max-width: 100%;
  height: auto;
}
img[src$=".svg"] {
  max-width: 100%;
  width: 100%;
  height: auto;
}

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

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

/*
//ベース
------------------------------------------------------------
*/
#container_wrap {
  overflow: hidden;
  min-width: 1000px;
}
@media screen and (max-width: 767px) {
  #container_wrap {
    min-width: 1px;
  }
}

.inner {
  max-width: 750px;
  width: 100%;
  margin: 0 auto;
  padding: 0 15px;
}
.inner::after {
  content: "";
  display: block;
  clear: both;
}

.section_wrap {
  line-height: 1.53;
  padding: 0;
}
@media screen and (max-width: 767px) {
  .section_wrap {
    font-size: 1rem;
  }
}

.section_01 {
  overflow: hidden;
  padding: 3rem 0 3rem;
}

.section_02,
.section_11 {
  overflow: hidden;
  padding: 2.5rem 0 0;
}

.section_03 {
  overflow: hidden;
  padding: 2.5rem 0;
}

.section_04,
.section_10 {
  overflow: hidden;
  padding: 0 0 2.5rem;
}

.section_05 {
  overflow: hidden;
  padding: 3.5rem 0 2.5rem;
}
@media screen and (max-width: 767px) {
  .section_05 {
    padding: 2.7rem 0 1rem;
  }
}

.section_06 {
  overflow: hidden;
  padding: 3.5rem 0 4rem;
}
@media screen and (max-width: 767px) {
  .section_06 {
    padding: 2.7rem 0 6rem;
  }
}
.section_06 .inner {
  position: relative;
}
.section_06 .inner::after {
  content: "";
  position: absolute;
  width: 305px;
  height: 175px;
  background: url(../images/family.png) center center/contain no-repeat;
  bottom: -7rem;
  right: 0;
}
@media screen and (max-width: 767px) {
  .section_06 .inner::after {
    bottom: -6rem;
    width: 203.3333333333px;
    height: 116.6666666667px;
    opacity: 1;
    right: 0;
    left: 0;
    margin: 0 auto;
  }
}

.section_07,
.section_08 {
  overflow: hidden;
  padding: 3rem 0;
}

.section_09 {
  padding: 5rem 0;
}
@media screen and (max-width: 767px) {
  .section_09 {
    padding: 5rem 0 3rem;
  }
}

.section_contact {
  height: 500px;
}
@media screen and (max-width: 767px) {
  .section_contact {
    height: auto;
    padding: 1rem 0 2rem;
  }
}

.section_contact2 {
  padding: 2.5rem 0 5rem;
}

/*
//ヘッダー
------------------------------------------------------------
*/
header {
  margin: 1rem auto 15px;
}
@media screen and (max-width: 767px) {
  header {
    margin: 1rem auto;
  }
}

.header_box {
  width: 100%;
  max-width: 750px;
  padding: 0 1.5rem;
  margin: 0 auto;
  overflow: hidden;
}

@media screen and (max-width: 767px) {
  .header_ttl {
    text-align: center;
  }
}
.header_ttl > span {
  max-width: 200px;
  width: 100%;
  margin-right: 12rem;
  display: inline-block;
}
@media screen and (max-width: 767px) {
  .header_ttl > span {
    max-width: 150px;
    display: block;
    margin: 0 auto 0.5rem;
  }
}
.header_ttl img.logo {
  width: 264px;
}
@media screen and (max-width: 767px) {
  .header_ttl img.logo {
    width: 230px;
  }
}

#gnavi ul {
  display: flex;
  text-align: center;
}
#gnavi ul li {
  margin-right: 2em;
}

.header_navi {
  float: right;
  display: flex;
}
.header_navi li {
  margin-right: 20px;
}
.header_navi li:last-child {
  margin-right: 0;
}

.header_wrap1 {
  display: flex;
  justify-content: space-between;
  width: 100%;
}
@media screen and (max-width: 767px) {
  .header_wrap1 {
    display: none;
  }
}
.header_wrap1 > div.h_tel {
  width: 54%;
}
.header_wrap1 > div.h_tel .h_tel {
  position: relative;
  font-weight: 700;
  font-size: 3rem;
  z-index: 1;
  font-family: "Noto Sans JP", serif;
  color: #f08300;
  display: inline-block;
  padding-left: 50px;
  line-height: 1;
  letter-spacing: 0;
}
@media screen and (max-width: 767px) {
  .header_wrap1 > div.h_tel .h_tel {
    font-size: 1rem;
  }
}
.header_wrap1 > div.h_tel .h_tel::before {
  position: absolute;
  top: 50%;
  left: 0;
  transform: translateY(-50%);
  content: "";
  display: inline-block;
  width: 43px;
  height: 43px;
  background: url(../images/tel_ora.svg) repeat-x left top/contain;
}
.header_wrap1 > div.h_tel .h_tel_info {
  position: relative;
  font-size: 1rem;
  z-index: 1;
  margin-top: 0.4rem;
  line-height: 1;
  font-weight: 700;
  font-family: "Noto Sans JP", serif;
  display: flex;
  flex-direction: column;
}
.header_wrap1 > div.h_tel .h_tel_info span {
  flex-shrink: 0;
  background-color: #f08300;
  color: #fff;
  padding: 0.25em 1rem;
  border-radius: 5px;
  width: -moz-fit-content;
  width: fit-content;
  display: block;
  margin-bottom: 0.5em;
}
.header_wrap1 > div.contact {
  width: 44%;
  margin-top: 0.5rem;
}

.h_data_sp {
  display: none;
}
@media screen and (max-width: 767px) {
  .h_data_sp {
    width: 100%;
    display: flex;
    position: fixed;
    z-index: 999;
    bottom: 0;
  }
}
.h_data_sp div.mail {
  width: 33.3333333333%;
  text-align: center;
  position: relative;
}
.h_data_sp div.mail a {
  display: block;
  width: 100%;
  height: 80px;
  color: #fff;
  font-weight: 700;
  font-size: 3vw;
  background: #e83d4d;
  line-height: 1.5;
  position: absolute;
  top: 50%;
  padding: 3rem 0 0 0;
  left: 50%;
  transform: translate(-50%, -50%);
}
.h_data_sp div.mail a::before {
  content: "";
  display: block;
  position: absolute;
  top: 18%;
  transform: translateX(-50%);
  left: 50%;
  width: 29.0909090909px;
  height: 20px;
  background: url(../images/icon_mail.svg) no-repeat center/cover;
}
.h_data_sp div.line {
  width: 33.3333333333%;
  text-align: center;
  position: relative;
}
.h_data_sp div.line a {
  display: block;
  width: 100%;
  height: 80px;
  color: #fff;
  background: #2DA936;
  font-weight: 700;
  font-size: 3vw;
  line-height: 1.5;
  position: absolute;
  top: 50%;
  left: 50%;
  padding-top: 3rem;
  transform: translate(-50%, -50%);
}
.h_data_sp div.line a::before {
  content: "";
  display: block;
  position: absolute;
  top: 14%;
  transform: translateX(-50%);
  left: 50%;
  width: 27.2px;
  height: 26px;
  background: url(../images/icon_line.svg) no-repeat center/cover;
}
.h_data_sp div.contact2 {
  width: 33.3333333333%;
  text-align: center;
  position: relative;
}
.h_data_sp div.contact2 a {
  display: block;
  width: 100%;
  height: 80px;
  color: #fff;
  background: #2DA936;
  font-weight: 700;
  font-size: 3vw;
  line-height: 1.5;
  position: absolute;
  top: 50%;
  left: 50%;
  padding-top: 3rem;
  transform: translate(-50%, -50%);
}
.h_data_sp div.contact2 a::before {
  content: "";
  display: block;
  position: absolute;
  top: 18%;
  transform: translateX(-50%);
  left: 50%;
  width: 29.0909090909px;
  height: 20px;
  background: url(../images/icon_mail.svg) no-repeat center/cover;
}
.h_data_sp div.h_sp_tel {
  width: 33.3333333333%;
  line-height: 80px;
  position: relative;
  line-height: 1.3;
}
.h_data_sp div.h_sp_tel a {
  display: block;
  width: 100%;
  height: 100%;
  height: 80px;
  background: #f7931e;
}
.h_data_sp div.h_sp_tel a > span {
  font-size: 3vw;
  display: block;
  position: relative;
  text-align: center;
  width: 100%;
  color: #fff;
  line-height: 1.5;
  padding: 3rem 0 0 0;
}
.h_data_sp div.h_sp_tel a > span span.data_call {
  position: absolute;
  left: 50px;
  top: 50%;
  transform: translateY(-50%);
}
.h_data_sp div.h_sp_tel a > span::before {
  content: "";
  display: block;
  position: absolute;
  position: absolute;
  top: 17%;
  transform: translateX(-50%);
  left: 50%;
  width: 26.6666666667px;
  height: 26.6666666667px;
  background: url(../images/tel_w.svg) no-repeat center/contain;
}

/*
//フッター
------------------------------------------------------------
*/
#footer {
  width: 100%;
  overflow: hidden;
  padding: 2.5rem 0;
}

.footer_box {
  max-width: 750px;
  width: 100%;
  overflow: hidden;
  margin: 0 auto;
  padding: 0 15px;
}

.footer_wrap1 {
  display: flex;
  justify-content: space-between;
  width: 100%;
}
@media screen and (max-width: 767px) {
  .footer_wrap1 {
    align-items: center;
  }
}
@media screen and (max-width: 767px) {
  .footer_wrap1 .f_box {
    width: 40%;
  }
}
.footer_wrap1 > div.f_tel {
  width: calc(96% - 300px);
}
@media screen and (max-width: 767px) {
  .footer_wrap1 > div.f_tel {
    width: 57%;
  }
}
.footer_wrap1 > div.f_tel .f_tel {
  position: relative;
  color: #f08300;
  font-weight: 600;
  font-size: 2.8rem;
  z-index: 1;
  display: inline-block;
  padding-left: 50px;
  line-height: 1.15;
}
@media screen and (max-width: 767px) {
  .footer_wrap1 > div.f_tel .f_tel {
    padding-left: 30px;
    font-size: 5.5vw;
  }
}
.footer_wrap1 > div.f_tel .f_tel::before {
  position: absolute;
  top: 50%;
  left: 0;
  transform: translateY(-50%);
  content: "";
  display: inline-block;
  width: 43px;
  height: 43px;
  background: url(../images/tel_ora.svg) no-repeat left top/contain;
}
@media screen and (max-width: 767px) {
  .footer_wrap1 > div.f_tel .f_tel::before {
    width: 21.5px;
    height: 21.5px;
  }
}
.footer_wrap1 > div.f_tel .f_tel_info {
  position: relative;
  font-size: 1.2rem;
  z-index: 1;
  margin-top: 0.2em;
}
@media screen and (max-width: 767px) {
  .footer_wrap1 > div.f_tel .f_tel_info {
    font-size: 0.6rem;
  }
}
.footer_wrap1 > div.f_tel .f_tel_info span {
  line-height: 1;
  background-color: #f08300;
  color: #fff;
  padding: 0.1rem 1rem;
  border-radius: 5px;
}

.footer_wrap2 {
  display: flex;
  justify-content: space-between;
  width: 100%;
}
.footer_wrap2 > div.line {
  width: 54%;
}
.footer_wrap2 > div.contact {
  width: 45%;
}

.f_ttl {
  font-size: 1.14rem;
  font-weight: 700;
}
@media screen and (max-width: 767px) {
  .f_ttl {
    margin-bottom: 0.5rem;
    font-size: 0.6rem;
  }
}

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

.copy {
  background-color: #493333;
  padding: 1em 0;
  font-size: 1.17rem;
  text-align: center;
  color: #fff;
}
@media screen and (max-width: 767px) {
  .copy {
    font-size: 0.8rem;
  }
}

/*
5:div
------------------------------------------------------------
*/
.main_img {
  position: relative;
  max-width: 750px;
  margin: 0 auto;
  height: 800px;
  padding: 3rem 0 0;
}
@media screen and (max-width: 767px) {
  .main_img {
    padding: 3rem 15px 0 15px;
    height: 470px;
  }
}
.main_img .top_txt {
  font-size: 1.87rem;
  line-height: 1.14;
  font-weight: 700;
  text-align: center;
  color: #f15a24;
  display: inline-block;
  padding: 0 3rem;
  position: relative;
}
@media screen and (max-width: 767px) {
  .main_img .top_txt {
    line-height: 1.3;
    padding: 0 2rem;
    font-size: 1.3rem;
  }
}
.main_img .top_txt::before {
  position: absolute;
  bottom: 0;
  left: 0;
  content: "";
  display: inline-block;
  width: 60px;
  height: 66px;
  background: url(../images/icon_wai_l.svg) no-repeat left top/cover;
}
@media screen and (max-width: 767px) {
  .main_img .top_txt::before {
    width: 34px;
    height: 37.3333333333px;
  }
}
.main_img .top_txt::after {
  position: absolute;
  bottom: 0;
  right: 0;
  content: "";
  display: inline-block;
  width: 60px;
  height: 66px;
  background: url(../images/icon_wai_r.svg) no-repeat left top/cover;
}
@media screen and (max-width: 767px) {
  .main_img .top_txt::after {
    width: 34px;
    height: 37.3333333333px;
  }
}
.main_img .top_txt_02 {
  font-size: 2.18rem;
  font-weight: 700;
  line-height: 1.14;
  font-weight: 700;
  text-align: center;
  color: #754c24;
}
@media screen and (max-width: 767px) {
  .main_img .top_txt_02 {
    line-height: 1.3;
    font-size: 1.2rem;
  }
}
.main_img .top_txt_02 > span {
  padding-bottom: 0.5rem;
  color: #f15a24;
  display: inline-block;
  font-size: 3.81rem;
}
@media screen and (max-width: 767px) {
  .main_img .top_txt_02 > span {
    font-size: 1.5rem;
  }
}

.img_wrap {
  padding: 0 1.5rem;
}
@media screen and (max-width: 767px) {
  .img_wrap {
    padding: 0 1rem;
  }
}

.img_wrap2 {
  padding: 0 1.5rem;
  display: flex;
  justify-content: space-between;
}
.img_wrap2 > div {
  width: calc(50% - 0.25rem);
}

.tel_info {
  position: relative;
  font-size: 1.56rem;
  margin-bottom: 1.5rem;
  z-index: 1;
  padding: 0 0 0 6rem;
  display: flex;
  text-align: left;
}
@media screen and (max-width: 767px) {
  .tel_info {
    padding: 0;
    font-size: 3.5vw;
  }
}
.tel_info span {
  color: #f7931e;
  padding: 0 1rem;
  border-radius: 5px;
}
@media screen and (max-width: 767px) {
  .tel_info span {
    padding: 0 0.7rem;
  }
}

.txt_wrap_lb {
  font-size: 1.56rem;
  color: #fff;
  padding: 0 2rem;
  margin: 0 1.5rem;
}
@media screen and (max-width: 767px) {
  .txt_wrap_lb {
    padding: 0rem 15px;
    margin: 0;
    font-size: 1rem;
  }
}
.txt_wrap_lb > div {
  padding-top: 3rem;
  text-align: right;
  font-weight: 700;
}
@media screen and (max-width: 767px) {
  .txt_wrap_lb > div {
    padding-top: 0rem;
    margin-top: 1.7rem;
  }
}

.gmap {
  height: 0;
  overflow: hidden;
  padding-bottom: 56.25%;
  position: relative;
}
.gmap iframe {
  position: absolute;
  left: 0;
  top: 0;
  height: 100%;
  width: 100%;
}

div.scrollbox {
  width: 100%;
  height: 200px;
  padding: 1rem;
  background-color: #fff;
  overflow-y: scroll;
  border: 2px solid #d85e67;
  border-radius: 5px;
  font-size: 1rem;
}
@media screen and (max-width: 767px) {
  div.scrollbox {
    height: 137px;
  }
}

.line_wrap img {
  transition: 0.3s;
}
.line_wrap img:hover {
  opacity: 0.8;
}

/*
6:ul リスト
------------------------------------------------------------
*/
.list_star {
  max-width: 530px;
  color: #fff;
  margin-left: 3rem;
  position: relative;
}
@media screen and (max-width: 767px) {
  .list_star {
    margin: 0 auto;
  }
}
.list_star::after {
  content: "";
  position: absolute;
  width: 236px;
  height: 371px;
  background: url(../images/men1.png) center center/contain no-repeat;
  bottom: -3rem;
  right: -180px;
}
@media screen and (max-width: 767px) {
  .list_star::after {
    opacity: 0.4;
    bottom: -3rem;
    right: -20px;
    width: 118px;
    height: 185.5px;
  }
}
@media screen and (max-width: 767px) {
  .list_star {
    max-width: 100%;
  }
}
.list_star li {
  font-size: 1.6rem;
  background: url(../images/icon_check.svg) left center no-repeat;
  background-size: 36px auto;
  padding-left: 40px;
  padding-top: 0.7rem;
  border-bottom: 4px dotted #fff;
  padding-bottom: 0.7rem;
}
@media screen and (max-width: 767px) {
  .list_star li {
    font-size: 1rem;
  }
}

.list_point {
  position: relative;
  z-index: 1;
  padding: 0 1.5rem;
}
@media screen and (max-width: 767px) {
  .list_point {
    padding: 0;
  }
}
.list_point li {
  border: solid 4px #f28888;
  margin-bottom: 3rem;
  background: #fff;
}
.list_point li.list_point_05 .txt_wrap {
  position: relative;
}
.list_point li.list_point_05 .point05_img {
  width: 90%;
}
.list_point li.list_point_05 .point05_opt {
  position: absolute;
  top: 40px;
  right: -10px;
  width: 135px;
}
@media screen and (max-width: 767px) {
  .list_point li.list_point_05 .point05_opt {
    width: 86px;
  }
}
@media screen and (max-width: 767px) {
  .list_point li {
    margin-bottom: 1rem;
  }
}
.list_point li .kage {
  padding: 0rem 1.5rem 1.5rem;
  width: 100%;
  background: #fff;
  height: 100%;
  position: relative;
}
@media screen and (max-width: 767px) {
  .list_point li .kage {
    padding: 0 15px 1.5rem;
  }
}
.list_point li .kage::after {
  content: "";
  position: absolute;
  width: 100%;
  height: 100%;
  background: #f28888;
  top: 10px;
  left: 10px;
  z-index: -2;
}
.list_point li:last-of-type {
  margin-bottom: 0;
}
.list_point li .list_point_ttl_wrap, .list_point li .list_point_ttl_wrap_05, .list_point li .list_point_ttl_wrap_04, .list_point li .list_point_ttl_wrap_03, .list_point li .list_point_ttl_wrap_02, .list_point li .list_point_ttl_wrap_01 {
  position: relative;
  display: block;
  width: 100%;
  height: 150px;
  display: flex;
  align-items: center;
}
@media screen and (max-width: 767px) {
  .list_point li .list_point_ttl_wrap, .list_point li .list_point_ttl_wrap_05, .list_point li .list_point_ttl_wrap_04, .list_point li .list_point_ttl_wrap_03, .list_point li .list_point_ttl_wrap_02, .list_point li .list_point_ttl_wrap_01 {
    height: 100px;
  }
}
.list_point li .list_point_ttl_wrap::before, .list_point li .list_point_ttl_wrap_05::before, .list_point li .list_point_ttl_wrap_04::before, .list_point li .list_point_ttl_wrap_03::before, .list_point li .list_point_ttl_wrap_02::before, .list_point li .list_point_ttl_wrap_01::before {
  position: absolute;
  top: -10px;
  left: 0;
  content: "";
  display: inline-block;
  width: 150px;
  height: 150px;
}
@media screen and (max-width: 767px) {
  .list_point li .list_point_ttl_wrap::before, .list_point li .list_point_ttl_wrap_05::before, .list_point li .list_point_ttl_wrap_04::before, .list_point li .list_point_ttl_wrap_03::before, .list_point li .list_point_ttl_wrap_02::before, .list_point li .list_point_ttl_wrap_01::before {
    top: 10px;
    width: 75px;
    height: 75px;
  }
}
.list_point li .list_point_ttl_wrap_01::before {
  background: url(../images/icon_point01.svg) no-repeat center/cover;
}
.list_point li .list_point_ttl_wrap_02::before {
  background: url(../images/icon_point02.svg) no-repeat center/cover;
}
.list_point li .list_point_ttl_wrap_03::before {
  background: url(../images/icon_point03.svg) no-repeat center/cover;
}
.list_point li .list_point_ttl_wrap_04::before {
  background: url(../images/icon_point04.svg) no-repeat center/cover;
}
.list_point li .list_point_ttl_wrap_05::before {
  background: url(../images/icon_point05.svg) no-repeat center/cover;
}
.list_point li .list_point_ttl {
  color: #eb6d8e;
  font-size: 1.68rem;
  font-weight: 700;
  line-height: 1.2;
  padding: 0 0 0 170px;
}
@media screen and (max-width: 767px) {
  .list_point li .list_point_ttl {
    font-size: 1rem;
    padding: 0 0 0 5.5rem;
  }
}
.list_point li .txt_wrap {
  font-size: 1.56rem;
  border-top: 2px #eb6d8e dashed;
  padding-top: 1.5rem;
  position: relative;
  color: #603813;
}
@media screen and (max-width: 767px) {
  .list_point li .txt_wrap {
    font-size: 0.9rem;
  }
}

.list_suport {
  display: flex;
  justify-content: space-between;
  align-items: center;
  flex-wrap: wrap;
  max-width: 600px;
  width: 100%;
  margin: 25px auto;
}
@media screen and (max-width: 767px) {
  .list_suport {
    margin: 15px auto;
  }
}
.list_suport li {
  width: 30%;
  border-radius: 50%;
  background: #ffff00;
  display: flex;
  justify-content: center;
  align-items: center;
  color: #d85e67;
  font-weight: 700;
  font-size: 2.5rem;
  position: relative;
}
.list_suport li::after {
  content: "";
  display: block;
  padding: 100% 0 0 0;
}
@media screen and (max-width: 767px) {
  .list_suport li {
    width: 31%;
    font-size: 1.3rem;
  }
}
.list_suport li span {
  width: 52%;
  position: absolute;
  top: 50%;
  right: 0;
  left: 0;
  text-align: center;
  margin: 0 auto;
  border-bottom: 5px #d85e67 solid;
  transform: translateY(-50%);
  display: inline-block;
}

.list_voice {
  position: relative;
  z-index: 1;
  padding: 0 1.5rem;
}
@media screen and (max-width: 767px) {
  .list_voice {
    padding: 0;
  }
}
.list_voice li {
  border: solid 4px #6ec9ce;
  background-color: #fff;
  margin-bottom: 4rem;
  position: relative;
  z-index: 2;
}
@media screen and (max-width: 767px) {
  .list_voice li {
    margin-bottom: 2rem;
  }
}
.list_voice li:last-of-type {
  margin-bottom: 0;
}
.list_voice li .kage {
  padding: 3rem 2rem;
  width: 100%;
  height: 100%;
  background: #fff;
  position: relative;
}
@media screen and (max-width: 767px) {
  .list_voice li .kage {
    padding: 2.5rem 15px 1rem;
  }
}
.list_voice li .kage::after {
  content: "";
  position: absolute;
  width: 100%;
  height: 100%;
  top: 10px;
  background: #6ec9ce;
  z-index: -2;
  right: -10px;
}
.list_voice li .list_voice_ttl, .list_voice li .list_voice_ttl_03, .list_voice li .list_voice_ttl_02, .list_voice li .list_voice_ttl_01 {
  color: #6ec9ce;
  font-size: 1.62rem;
  font-weight: 700;
  line-height: 1.34;
  text-align: left;
  padding: 0 0 0 170px;
  margin-bottom: 1.2rem;
  position: relative;
}
@media screen and (max-width: 767px) {
  .list_voice li .list_voice_ttl, .list_voice li .list_voice_ttl_03, .list_voice li .list_voice_ttl_02, .list_voice li .list_voice_ttl_01 {
    padding: 0 0 0 0rem;
    margin-bottom: 1rem;
    font-size: 1.2rem;
  }
}
.list_voice li .list_voice_ttl::before, .list_voice li .list_voice_ttl_03::before, .list_voice li .list_voice_ttl_02::before, .list_voice li .list_voice_ttl_01::before {
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  left: 0px;
  content: "";
  display: inline-block;
  width: 150px;
  height: 52px;
}
@media screen and (max-width: 767px) {
  .list_voice li .list_voice_ttl::before, .list_voice li .list_voice_ttl_03::before, .list_voice li .list_voice_ttl_02::before, .list_voice li .list_voice_ttl_01::before {
    top: -2rem;
    width: 100px;
    height: 34.6666666667px;
    left: 0;
  }
}
.list_voice li .list_voice_ttl_01::before {
  background: url(../images/voice_01.svg) no-repeat center/cover;
}
.list_voice li .list_voice_ttl_02::before {
  background: url(../images/voice_02.svg) no-repeat center/cover;
}
.list_voice li .list_voice_ttl_03::before {
  background: url(../images/voice_03.svg) no-repeat center/cover;
}
.list_voice li .txt_wrap {
  padding-top: 1.2rem;
  font-size: 1.56rem;
  position: relative;
  border-top: 2px #6ec9ce dashed;
}
@media screen and (max-width: 767px) {
  .list_voice li .txt_wrap {
    font-size: 0.9rem;
    padding-top: 1rem;
  }
}

.list_qa {
  max-width: 560px;
  margin: 0 auto;
  position: relative;
  z-index: 1;
}
.list_qa li {
  margin-bottom: 3rem;
}
@media screen and (max-width: 767px) {
  .list_qa li {
    margin-bottom: 2.5rem;
  }
}
.list_qa li:last-of-type {
  margin-bottom: 0;
}
.list_qa li .q_box {
  width: 92%;
  background: #fff;
  border: #6ec9ce solid 4px;
  position: relative;
  border-radius: 20px;
  margin-bottom: 0.8rem;
}
@media screen and (max-width: 767px) {
  .list_qa li .q_box {
    width: 95%;
  }
}
.list_qa li .q_box::after {
  content: "";
  position: absolute;
  width: 100%;
  height: 100%;
  background: #6ec9ce;
  border-radius: 25px;
  top: 7px;
  left: 7px;
  z-index: -1;
}
.list_qa li .q_box::before {
  content: "";
  position: absolute;
  width: 73.5px;
  height: 73.5px;
  background: url(../images/jcon_Q.svg) center center/contain no-repeat;
  top: -20px;
  left: -20px;
}
@media screen and (max-width: 767px) {
  .list_qa li .q_box::before {
    left: -10px;
    width: 61.25px;
    height: 61.25px;
  }
}
.list_qa li .list_qa_ttl {
  text-align: left;
  font-size: 1.5rem;
  color: #603813;
  font-weight: 700;
  line-height: 1.43;
  padding: 2rem 1.5rem 2rem 3rem;
  position: relative;
}
@media screen and (max-width: 767px) {
  .list_qa li .list_qa_ttl {
    font-size: 1rem;
    padding: 2.5rem 15px 1.8rem 30px;
  }
}
.list_qa li .txt_wrap {
  font-size: 1.5rem;
  width: 92%;
  margin-left: 8%;
  background: #fff;
  position: relative;
  border-radius: 20px;
  border: 4px #eb6d8e solid;
  color: #eb6d8e;
  text-align: left;
  padding: 2rem 1.8rem 2rem 3rem;
}
@media screen and (max-width: 767px) {
  .list_qa li .txt_wrap {
    width: 95%;
    margin-left: 5%;
    font-size: 1rem;
    padding: 2.5rem 15px 1.8rem 30px;
  }
}
.list_qa li .txt_wrap::after {
  content: "";
  position: absolute;
  width: 100%;
  height: 100%;
  background: #eb6d8e;
  border-radius: 25px;
  top: 7px;
  left: 7px;
  z-index: -1;
}
.list_qa li .txt_wrap::before {
  content: "";
  position: absolute;
  width: 73.5px;
  height: 73.5px;
  background: url(../images/jcon_A.svg) center center/contain no-repeat;
  top: -20px;
  left: -20px;
}
@media screen and (max-width: 767px) {
  .list_qa li .txt_wrap::before {
    left: -10px;
    width: 61.25px;
    height: 61.25px;
  }
}
.list_course li {
  margin-bottom: 2em;
}

/*
7:dl
------------------------------------------------------------
*/
/*
8:table
------------------------------------------------------------
*/
.table_wrap {
  margin: 0 1.5rem;
}
@media screen and (max-width: 767px) {
  .table_wrap {
    margin: 0;
  }
}

.table_01 {
  width: 100%;
  margin-bottom: 2rem;
  table-layout: fixed;
}
.table_01 tr {
  border-bottom: 2px solid #1c0000;
}
.table_01 th {
  font-size: 1.62rem;
  width: 17%;
  padding: 0.5rem 0 0.5rem 0;
  text-align: center;
}
@media screen and (max-width: 767px) {
  .table_01 th {
    width: 28%;
    font-size: 1rem;
  }
}
.table_01 td {
  padding: 0.5rem 0 0.5rem 3rem;
  width: 83%;
  font-size: 1.43rem;
}
@media screen and (max-width: 767px) {
  .table_01 td {
    padding: 0.5rem 0 0.5rem 1rem;
    width: 72%;
    font-size: 0.9rem;
  }
}

.table_contactform, .table_contactform2 {
  width: 100%;
}
.table_contactform th, .table_contactform2 th,
.table_contactform td,
.table_contactform2 td {
  text-align: left;
  display: block;
}
.table_contactform th, .table_contactform2 th {
  font-size: 1.87rem;
  width: 100%;
  margin-bottom: 0.5rem;
}
@media screen and (max-width: 767px) {
  .table_contactform th, .table_contactform2 th {
    font-size: 1rem;
  }
}
.table_contactform th span, .table_contactform2 th span {
  background-color: #e95464;
  color: #fff;
  font-weight: 400;
  padding: 0.2rem 0.5rem;
  border-radius: 5px;
  font-size: 1.2rem;
  line-height: 1;
  margin-left: 0.5rem;
}
@media screen and (max-width: 767px) {
  .table_contactform th span, .table_contactform2 th span {
    font-size: 0.8rem;
  }
}
.table_contactform td, .table_contactform2 td {
  width: 100%;
  margin-bottom: 2.5rem;
}
@media screen and (max-width: 767px) {
  .table_contactform td, .table_contactform2 td {
    margin-bottom: 1.5rem;
  }
}

.table_contactform2 {
  max-width: 620px;
}
@media screen and (max-width: 767px) {
  .table_contactform2 {
    padding: 0 2rem;
    font-size: 1.18rem;
  }
}
.table_contactform2 th,
.table_contactform2 td {
  font-size: 1.87rem;
}
@media screen and (max-width: 767px) {
  .table_contactform2 th,
  .table_contactform2 td {
    font-size: 1rem;
  }
}
.table_contactform2 td {
  margin-bottom: 1.5rem;
}

/*
9:タイトル
------------------------------------------------------------
*/
.txt_pink {
  font-size: 2.5rem;
  font-weight: 700;
  text-align: center;
  color: #e83d4d;
  display: inline-block;
  padding: 0 3rem;
  position: relative;
}
@media screen and (max-width: 767px) {
  .txt_pink {
    padding: 0 2rem;
    font-size: 1.3rem;
    width: 67%;
  }
}
.txt_pink::before {
  position: absolute;
  top: 50%;
  left: 0;
  transform: translateY(-50%);
  content: "";
  display: inline-block;
  width: 38px;
  height: 48px;
  background: url(../images/icon_wai_pnk_l.svg) no-repeat left top/cover;
}
@media screen and (max-width: 767px) {
  .txt_pink::before {
    width: 25.3333333333px;
    height: 32px;
  }
}
.txt_pink::after {
  position: absolute;
  top: 50%;
  right: 0;
  transform: translateY(-50%);
  content: "";
  display: inline-block;
  width: 38px;
  height: 48px;
  background: url(../images/icon_wai_pnk_r.svg) no-repeat left top/cover;
}
@media screen and (max-width: 767px) {
  .txt_pink::after {
    width: 25.3333333333px;
    height: 32px;
  }
}

.txt_yellow {
  font-size: 2.66rem;
  font-weight: 700;
  text-align: left;
  padding: 0 0 0 6rem;
  color: #ffff00;
  display: inline-block;
}
@media screen and (max-width: 767px) {
  .txt_yellow {
    width: 100%;
    padding: 0;
    text-align: center;
    font-size: 2rem;
    position: relative;
    z-index: 1;
  }
}

.ttl_pink {
  font-size: 2.5rem;
  font-weight: 700;
  text-align: center;
  color: #e83d4d;
  line-height: 1.32;
  letter-spacing: 0.05em;
}
.ttl_pink span {
  font-size: 3.25rem;
}
@media screen and (max-width: 767px) {
  .ttl_pink span {
    font-size: 2.3rem;
  }
}
@media screen and (max-width: 767px) {
  .ttl_pink {
    font-size: 1.5rem;
  }
}

.ttl_02 {
  font-size: 1.93rem;
  line-height: 1.14;
  font-weight: 700;
  text-align: center;
  color: #e83d4d;
  display: inline-block;
  padding: 0 3rem;
  margin-bottom: 0.5rem;
  position: relative;
}
@media screen and (max-width: 767px) {
  .ttl_02 {
    padding: 0 2rem;
    font-size: 1.3rem;
  }
}
.ttl_02::before {
  position: absolute;
  bottom: 0;
  left: 0;
  content: "";
  display: inline-block;
  width: 33px;
  height: 44px;
  background: url(../images/icon_wai_pnk_l.svg) no-repeat left top/contain;
}
.ttl_02::after {
  position: absolute;
  bottom: 0;
  right: 0;
  content: "";
  display: inline-block;
  width: 33px;
  height: 44px;
  background: url(../images/icon_wai_pnk_r.svg) no-repeat left top/contain;
}

.ttl_point_wrap {
  padding: 0 0 0 20rem;
  position: relative;
  z-index: 0;
  margin-bottom: 2rem;
}
@media screen and (max-width: 767px) {
  .ttl_point_wrap {
    margin: 0 auto;
    padding: 0;
  }
}
.ttl_point_wrap::before {
  position: absolute;
  top: 2.5rem;
  left: 2rem;
  content: "";
  display: inline-block;
  width: 290px;
  height: 210px;
  background: url(../images/men_03.png) no-repeat center/contain;
}
@media screen and (max-width: 767px) {
  .ttl_point_wrap::before {
    top: auto;
    left: -15px;
    opacity: 0.8;
    bottom: 0rem;
    width: 116px;
    height: 84px;
  }
}

.ttl_point {
  font-size: 3rem;
  font-weight: 700;
  color: #534741;
  line-height: 1;
  text-align: center;
  position: relative;
  padding-top: 5.6rem;
  display: inline-block;
}
@media screen and (max-width: 767px) {
  .ttl_point {
    padding: 2rem 0 1rem 5rem;
    font-size: 1.8rem;
    margin: 0 auto;
    display: block;
  }
}
.ttl_point .min {
  font-size: 1.8rem;
  display: inline-block;
  line-height: 1;
  position: relative;
}
@media screen and (max-width: 767px) {
  .ttl_point .min {
    font-size: 1.2rem;
  }
}
.ttl_point .min::before {
  position: absolute;
  top: 50%;
  left: -40px;
  transform: translateY(-50%);
  content: "";
  display: inline-block;
  width: 27.5px;
  height: 45px;
  background: url(../images/icon_wai_brown_l.svg) no-repeat left top/contain;
}
@media screen and (max-width: 767px) {
  .ttl_point .min::before {
    width: 25.3333333333px;
    height: 32px;
  }
}
.ttl_point .min::after {
  position: absolute;
  top: 50%;
  right: -40px;
  transform: translateY(-50%);
  content: "";
  display: inline-block;
  width: 27.5px;
  height: 45px;
  background: url(../images/icon_wai_brown_R.svg) no-repeat left top/contain;
}
@media screen and (max-width: 767px) {
  .ttl_point .min::after {
    width: 25.3333333333px;
    height: 32px;
  }
}
.ttl_point .num {
  font-size: 5rem;
  line-height: 0.8;
}
@media screen and (max-width: 767px) {
  .ttl_point .num {
    font-size: 3rem;
  }
}

.ttl_voice_wrap {
  position: relative;
  z-index: 0;
}
@media screen and (max-width: 767px) {
  .ttl_voice_wrap {
    margin-bottom: -1rem;
  }
}
.ttl_voice_wrap::before {
  position: absolute;
  top: 2rem;
  left: 2rem;
  content: "";
  display: inline-block;
  width: 220px;
  height: 190px;
  background: url(../images/men_04.png) no-repeat center/contain;
}
@media screen and (max-width: 767px) {
  .ttl_voice_wrap::before {
    top: 1rem;
    left: 0;
    opacity: 1;
    width: 110px;
    height: 95px;
  }
}

.ttl_voice {
  font-size: 2.56rem;
  font-weight: 700;
  color: #534741;
  line-height: 1.1;
  text-align: center;
  position: relative;
  display: inline-block;
  margin-bottom: 2rem;
  margin-left: 18rem;
  padding: 5rem 0 0 0;
}
@media screen and (max-width: 767px) {
  .ttl_voice {
    padding-top: 3rem;
    padding-right: 0rem;
    display: inline-block;
    margin-left: 36vw;
    font-size: 1.3rem;
  }
}
.ttl_voice::before {
  position: absolute;
  bottom: 10px;
  left: -50px;
  content: "";
  display: inline-block;
  width: 35px;
  height: 57px;
  background: url(../images/icon_wai_brown_l.svg) no-repeat left top/contain;
}
@media screen and (max-width: 767px) {
  .ttl_voice::before {
    width: 25.3333333333px;
    left: -30px;
    height: 32px;
  }
}
.ttl_voice::after {
  position: absolute;
  bottom: 10px;
  right: -40px;
  content: "";
  display: inline-block;
  width: 35px;
  height: 57px;
  background: url(../images/icon_wai_brown_R.svg) no-repeat left top/contain;
}
@media screen and (max-width: 767px) {
  .ttl_voice::after {
    right: -30px;
    width: 25.3333333333px;
    height: 32px;
  }
}

.ttl_qa_wrap {
  position: relative;
  z-index: 0;
  height: 180px;
  max-width: 580px;
  width: 100%;
  margin: 0 auto;
}
@media screen and (max-width: 767px) {
  .ttl_qa_wrap {
    height: auto;
    margin: 0 auto 1rem;
  }
}
.ttl_qa_wrap::before {
  position: absolute;
  top: 0;
  right: 0rem;
  content: "";
  display: inline-block;
  width: 247px;
  height: 189px;
  background: url(../images/woman_07.png) no-repeat center/cover;
}
@media screen and (max-width: 767px) {
  .ttl_qa_wrap::before {
    opacity: 1;
    right: -15px;
    top: 0;
    width: 123.5px;
    height: 94.5px;
  }
}

.ttl_qa {
  font-size: 2.35rem;
  font-weight: 700;
  color: #603813;
  line-height: 1.2;
  position: relative;
  padding: 45px 50px 0;
  letter-spacing: 0.05em;
  text-align: center;
  display: inline-block;
}
@media screen and (max-width: 767px) {
  .ttl_qa {
    padding: 0 1.8rem;
    font-size: 1.4rem;
  }
}
.ttl_qa .big {
  font-size: 2.6rem;
}
.ttl_qa::before {
  position: absolute;
  bottom: 10px;
  left: 0;
  content: "";
  display: inline-block;
  width: 41px;
  height: 67px;
  background: url(../images/icon_wai_brown2_l.svg) no-repeat left top/contain;
}
@media screen and (max-width: 767px) {
  .ttl_qa::before {
    width: 27.3333333333px;
    height: 44.6666666667px;
  }
}
.ttl_qa::after {
  position: absolute;
  bottom: 10px;
  right: 0;
  content: "";
  display: inline-block;
  width: 41px;
  height: 67px;
  background: url(../images/icon_wai_brown2_R.svg) no-repeat left top/contain;
}
@media screen and (max-width: 767px) {
  .ttl_qa::after {
    width: 27.3333333333px;
    height: 44.6666666667px;
  }
}

.contact02_toujitu {
  width: 100%;
  max-width: 360px;
  margin-bottom: 1rem;
  margin-left: auto;
  margin-right: 2rem;
  line-height: 1.14;
  font-size: 1.5rem;
  font-weight: 700;
  color: #f05a24;
  text-align: center;
}
@media screen and (max-width: 767px) {
  .contact02_toujitu {
    font-size: 1.333rem;
  }
}

.ttl_contact2 {
  font-size: 2.37rem;
  line-height: 1.14;
  font-weight: 700;
  text-align: center;
  color: #f7931e;
  display: inline-block;
  padding: 0 2.5rem;
  position: relative;
  margin-bottom: 1rem;
}
@media screen and (max-width: 767px) {
  .ttl_contact2 {
    margin-bottom: 1.5rem;
    padding: 0 2rem;
    font-size: 1.17rem;
  }
}
.ttl_contact2::before {
  position: absolute;
  bottom: 0;
  left: 0;
  content: "";
  display: inline-block;
  width: 35px;
  height: 52px;
  background: url(../images/icon_wai_y2_l.svg) no-repeat left top/cover;
}
@media screen and (max-width: 767px) {
  .ttl_contact2::before {
    width: 23.3333333333px;
    height: 34.6666666667px;
  }
}
.ttl_contact2::after {
  position: absolute;
  bottom: 0;
  right: 0;
  content: "";
  display: inline-block;
  width: 35px;
  height: 52px;
  background: url(../images/icon_wai_y2_r.svg) no-repeat left top/cover;
}
@media screen and (max-width: 767px) {
  .ttl_contact2::after {
    width: 23.3333333333px;
    height: 34.6666666667px;
  }
}

.txt_ansin {
  text-align: center;
  font-weight: 700;
  line-height: 1.32;
  font-size: 2.56rem;
  color: #fff;
}
@media screen and (max-width: 767px) {
  .txt_ansin {
    font-size: 1.5rem;
  }
}
.txt_ansin .min {
  color: #fff;
  position: relative;
  padding: 0 2rem;
}
.txt_ansin .min::before {
  position: absolute;
  bottom: 0;
  left: 0;
  content: "";
  display: inline-block;
  width: 29.5px;
  height: 38.5px;
  background: url(../images/icon_wai_white_l.svg) no-repeat left top/cover;
}
@media screen and (max-width: 767px) {
  .txt_ansin .min::before {
    width: 19.6666666667px;
    height: 25.6666666667px;
  }
}
.txt_ansin .min::after {
  position: absolute;
  bottom: 0;
  right: 0;
  content: "";
  display: inline-block;
  width: 29.5px;
  height: 38.5px;
  background: url(../images/icon_wai_white_R.svg) no-repeat left top/cover;
}
@media screen and (max-width: 767px) {
  .txt_ansin .min::after {
    width: 19.6666666667px;
    height: 25.6666666667px;
  }
}
.txt_ansin .big {
  font-size: 3.5rem;
  color: #ffff00;
  padding: 0 3rem;
  position: relative;
}
@media screen and (max-width: 767px) {
  .txt_ansin .big {
    font-size: 2.4rem;
  }
}
.txt_ansin .big::before {
  position: absolute;
  bottom: 0;
  left: 0;
  content: "";
  display: inline-block;
  width: 49.5px;
  height: 49.6px;
  background: url(../images/icon_hosi_l.png) no-repeat left top/cover;
}
@media screen and (max-width: 767px) {
  .txt_ansin .big::before {
    width: 33px;
    height: 33.0666666667px;
  }
}
.txt_ansin .big::after {
  position: absolute;
  bottom: 0;
  right: 0;
  content: "";
  display: inline-block;
  width: 49.5px;
  height: 49.6px;
  background: url(../images/icon_hosi_R.png) no-repeat left top/cover;
}
@media screen and (max-width: 767px) {
  .txt_ansin .big::after {
    width: 33px;
    height: 33.0666666667px;
  }
}

.atsumittl {
  font-size: 2.37rem;
  text-align: center;
  color: #fff;
  font-weight: 700;
  line-height: 1.37;
  position: relative;
  padding-bottom: 2rem;
  margin-bottom: 2rem;
}
@media screen and (max-width: 767px) {
  .atsumittl {
    margin-bottom: 2rem;
    font-size: 5.5vw;
  }
}
.atsumittl::before {
  content: "";
  position: absolute;
  background: url(../images/icon_wai_orange.svg) center center/contain no-repeat;
  width: 83px;
  height: 70px;
  top: -34px;
  right: 76px;
}
@media screen and (max-width: 767px) {
  .atsumittl::before {
    top: -3rem;
    right: -1.5rem;
  }
}
.atsumittl::after {
  content: "";
  position: absolute;
  width: 480px;
  height: 8px;
  background-size: auto auto;
  background-color: transparent;
  bottom: 0;
  right: 0;
  left: 0;
  margin: 0 auto;
  background-image: repeating-linear-gradient(-45deg, transparent, transparent 4px, #fff 4px, #fff 8px);
}

/*
テキスト
------------------------------------------------------------
*/
.txt_contact_wrap {
  position: relative;
  z-index: 0;
  height: 345px;
}
@media screen and (max-width: 767px) {
  .txt_contact_wrap {
    height: auto;
  }
}

.txt_contact {
  position: relative;
  z-index: 1;
}
@media screen and (max-width: 767px) {
  .txt_contact {
    position: inherit;
  }
}
.txt_contact img {
  position: absolute;
  top: -1.5rem;
  width: 610px;
  left: 2rem;
}
@media screen and (max-width: 767px) {
  .txt_contact img {
    width: 100%;
    left: inherit;
    margin: 0 auto;
    top: inherit;
    position: inherit;
  }
}

.txt_contact_wrap2 {
  background-color: #fff;
  position: relative;
  padding: 3rem 2rem;
  z-index: 0;
}
@media screen and (max-width: 767px) {
  .txt_contact_wrap2 {
    text-align: center;
    padding: 2rem 15px;
    border-radius: 10px;
  }
}
.txt_contact_wrap2::after {
  position: absolute;
  content: "";
  width: 257px;
  height: 263px;
  bottom: -40px;
  left: 0;
  background: url(../images/woman_08.png) no-repeat center/cover;
}
@media screen and (max-width: 767px) {
  .txt_contact_wrap2::after {
    right: inherit;
    left: -20px;
    opacity: 1;
    z-index: -1;
    bottom: -5rem;
    width: 116.8181818182px;
    height: 119.5454545455px;
  }
}
.txt_contact_wrap2::before {
  position: absolute;
  content: "";
  width: 300px;
  height: 47px;
  bottom: -20px;
  right: 0;
  background: url(../images/kuruma.png) no-repeat center/cover;
}
@media screen and (max-width: 767px) {
  .txt_contact_wrap2::before {
    right: 1rem;
    bottom: -4rem;
    width: 250px;
    height: 39.1666666667px;
  }
}
.txt_contact_wrap2 .tel {
  text-align: center;
  margin: 0 auto;
  font-size: 4.5rem;
}
@media screen and (max-width: 767px) {
  .txt_contact_wrap2 .tel {
    font-size: 8.7vw;
  }
}

.txt_contact2 {
  font-weight: 700;
  line-height: 1.32;
  display: block;
  font-size: 1.75rem;
  color: #190101;
  text-align: center;
  position: relative;
  z-index: 1;
  margin-bottom: 1rem;
}
@media screen and (max-width: 767px) {
  .txt_contact2 {
    font-size: 4.6vw;
  }
}

.txt_kako {
  text-align: center;
  color: #fff;
  font-size: 2.3rem;
  line-height: 1.5;
  font-weight: 700;
  margin-bottom: 1rem;
}
@media screen and (max-width: 767px) {
  .txt_kako {
    font-size: 1.5rem;
  }
}

/*
10：装飾
------------------------------------------------------------
*/
.bg_gray {
  background: #ccc;
}
.bg_white {
  background: #fff;
}
.bg_black {
  background: #000;
}
.bg_orenge {
  background: #f7931e;
}
.bg_blue {
  background: #6ec9ce;
}
.bg_yellow_dot {
  background-size: 20px 20px;
  margin: 0 auto;
  background-color: #fff7d2;
  background-image: radial-gradient(#ffebbb 15%, rgba(255, 255, 255, 0) 20%), radial-gradient(#ffebbb 15%, rgba(255, 255, 255, 0) 20%);
  background-position: 0 0, 10px 10px;
}
.bg_orenge_dot {
  background-size: 20px 20px;
  margin: 0 auto;
  background-color: #fff;
  background-image: radial-gradient(#fff0d8 15%, rgba(255, 255, 255, 0) 20%), radial-gradient(#fff0d8 15%, rgba(255, 255, 255, 0) 20%);
  background-position: 0 0, 10px 10px;
}
.bg_pink_dot {
  background-size: 40px 40px;
  margin: 0 auto;
  background-color: #e95464;
  background-image: radial-gradient(#ec6d7b 15%, rgba(255, 255, 255, 0) 20%), radial-gradient(#ec6d7b 15%, rgba(255, 255, 255, 0) 20%);
  background-position: 0 0, 20px 20px;
}
.bg_pink_dot2 {
  background-size: 20px 20px;
  margin: 0 auto;
  background-color: #ffe4e5;
  background-image: radial-gradient(#fff 15%, rgba(255, 255, 255, 0) 20%), radial-gradient(#fff 15%, rgba(255, 255, 255, 0) 20%);
  background-position: 0 0, 10px 10px;
}
.bg_blue_dot {
  background-size: 40px 40px;
  margin: 0 auto;
  background-color: #fff;
  background-image: radial-gradient(#e0f4fc 15%, rgba(255, 255, 255, 0) 20%), radial-gradient(#e0f4fc 15%, rgba(255, 255, 255, 0) 20%);
  background-position: 0 0, 20px 20px;
}
.bg_blue_dot2 {
  background-size: 40px 40px;
  margin: 0 auto;
  background-color: #47cace;
  background-image: radial-gradient(#5dcfd3 15%, rgba(71, 202, 206, 0) 20%), radial-gradient(#5dcfd3 15%, rgba(71, 202, 206, 0) 20%);
  background-position: 0 0, 20px 20px;
}
.bg_stripe {
  background: repeating-linear-gradient(-45deg, rgba(232, 246, 234, 0.5) 0, rgba(232, 246, 234, 0.5) 20px, #fff 20px, #fff 40px);
}
.bg_stripe_y {
  background: repeating-linear-gradient(-60deg, #ffe355 0, #ffe355 10px, #fff36e 10px, #fff36e 20px);
}
.bg_stripe_y2 {
  background: repeating-linear-gradient(-60deg, #fff9e6 0, #fff9e6 10px, #ffedd2 10px, #ffedd2 20px);
}
.bg_stripe_p {
  background: repeating-linear-gradient(-60deg, #e85464 0, #e85464 10px, #ee6a78 10px, #ee6a78 20px);
}

.txt_clr_gray {
  color: #ccc;
}
.txt_clr_white {
  color: #fff;
}
.txt_clr_black {
  color: #000;
}
.txt_clr_yellow {
  color: #ffee00;
}
.txt_clr_orenge {
  color: #fbb03b;
}

.center {
  text-align: center;
}

.right {
  text-align: right;
}

.marker {
  background: linear-gradient(rgba(255, 255, 255, 0) 65%, #ffee00 65%);
}

.marker_p {
  background: linear-gradient(rgba(255, 255, 255, 0) 65%, #eb6d8e 65%);
}

.underline_o_wave {
  padding-bottom: 0.3rem;
  background: url(../images/underline_o_wave.svg) bottom repeat-x;
  background-size: contain;
}

.underline_o2_wave {
  padding-bottom: 0.3rem;
  background: url(../images/underline_o2_wave.svg) bottom repeat-x;
  background-size: contain;
}
@media screen and (max-width: 767px) {
  .underline_o2_wave {
    margin-bottom: 0;
  }
}

.underline_y_wave {
  position: relative;
  padding-bottom: 0.5rem;
}
@media screen and (max-width: 767px) {
  .underline_y_wave {
    padding-bottom: 0.1rem;
  }
}
.underline_y_wave::before {
  content: "";
  position: absolute;
  left: 0;
  bottom: 0;
  width: 100%;
  height: 11px;
  background: url(../images/underline_y_wave.svg) bottom repeat-x;
  background-size: cover;
}
@media screen and (max-width: 767px) {
  .underline_y_wave::before {
    height: 5px;
  }
}

.tel {
  position: relative;
  color: #f7931e;
  font-weight: 600;
  font-size: 4.18rem;
  z-index: 1;
  display: inline-block;
  padding-left: 60px;
  line-height: 1.15;
}
@media screen and (max-width: 767px) {
  .tel {
    padding-left: 42px;
    font-size: 1rem;
  }
}
.tel::before {
  position: absolute;
  top: 50%;
  left: 0;
  transform: translateY(-50%);
  content: "";
  display: inline-block;
  width: 52px;
  height: 52px;
  background: url(../images/tel_ora.svg) no-repeat left top/contain;
}
@media screen and (max-width: 767px) {
  .tel::before {
    width: 34.6666666667px;
    height: 34.6666666667px;
  }
}

.text_big {
  font-size: 1.87rem;
}
@media screen and (max-width: 767px) {
  .text_big {
    font-size: 1rem;
  }
}

/*
枠
------------------------------------------------------------
*/
.flame_normal, .flame_serif_lightblue, .flame_serif_lightblue2 {
  padding: 1.8rem 0;
  font-weight: 700;
  font-size: 2.5rem;
  line-height: 1.35;
  color: #fff;
  text-align: center;
  position: relative;
}
@media screen and (max-width: 767px) {
  .flame_normal, .flame_serif_lightblue, .flame_serif_lightblue2 {
    line-height: 1.5;
    font-size: 1.17rem;
  }
}

.flame_serif_lightblue2 {
  background: #fff;
  position: relative;
  color: #6ec9ce;
  margin: 0 1.5rem;
  border: 2px #6ec9ce solid;
}
@media screen and (max-width: 767px) {
  .flame_serif_lightblue2 {
    padding: 1rem 0.5rem;
  }
}
.flame_serif_lightblue2::before {
  position: absolute;
  content: "";
  top: 5px;
  left: 5px;
  width: 0;
  height: 0;
  border-style: solid;
  border-width: 20px 20px 0 0;
  border-color: #6ec9ce transparent transparent transparent;
}
.flame_serif_lightblue2::after {
  position: absolute;
  content: "";
  bottom: 5px;
  right: 5px;
  width: 0;
  height: 0;
  border-style: solid;
  border-width: 0 0 20px 20px;
  border-color: transparent transparent #6ec9ce transparent;
}

.flame_serif_lightblue {
  background-size: 40px 40px;
  margin: 0 auto;
  background: #66cccc;
  border-radius: 7px;
  margin: 0 1.5rem;
  font-size: 2rem;
}
@media screen and (max-width: 767px) {
  .flame_serif_lightblue {
    margin: 0;
    font-size: 1.2rem;
  }
}
.flame_serif_lightblue:after, .flame_serif_lightblue:before {
  border: solid transparent;
  content: "";
  height: 0;
  width: 0;
  pointer-events: none;
  position: absolute;
  top: 97%;
  left: 50%;
}
@media screen and (max-width: 767px) {
  .flame_serif_lightblue:after, .flame_serif_lightblue:before {
    transform: translateX(-50%);
  }
}
.flame_serif_lightblue:after {
  border-bottom-color: #f15a24;
  border-style: solid;
  border-width: 40px 25px 0 25px;
  border-color: #66cccc transparent transparent transparent;
}
@media screen and (max-width: 767px) {
  .flame_serif_lightblue:after {
    border-style: solid;
    border-width: 40px 25px 0 25px;
    border-color: #66cccc transparent transparent transparent;
  }
}
.flame_serif_lightblue span {
  position: relative;
  display: block;
}
.flame_serif_lightblue span::before {
  position: absolute;
  top: 5%;
  left: 5%;
  content: "";
  display: inline-block;
  width: 49.5px;
  height: 49.6px;
  background: url(../images/icon_hosi_l.png) no-repeat left top/cover;
}
@media screen and (max-width: 767px) {
  .flame_serif_lightblue span::before {
    width: 33px;
    height: 33.0666666667px;
  }
}
.flame_serif_lightblue span::after {
  position: absolute;
  top: 5%;
  right: 5%;
  content: "";
  display: inline-block;
  width: 49.5px;
  height: 49.6px;
  background: url(../images/icon_hosi_R.png) no-repeat left top/cover;
}
@media screen and (max-width: 767px) {
  .flame_serif_lightblue span::after {
    width: 33px;
    height: 33.0666666667px;
  }
}

.flame_serif, .flame_serif_pink, .flame_serif_orange2, .flame_serif_orange {
  padding: 2.2rem 0;
  font-weight: 700;
  font-size: 2.37rem;
  line-height: 1.35;
  color: #fff;
  text-align: center;
  position: relative;
}
@media screen and (max-width: 767px) {
  .flame_serif, .flame_serif_pink, .flame_serif_orange2, .flame_serif_orange {
    padding: 2rem 0;
    font-size: 1.5rem;
  }
}

.flame_serif_orange {
  background: #f15a24;
}
.flame_serif_orange:after, .flame_serif_orange:before {
  border: solid transparent;
  content: "";
  height: 0;
  width: 0;
  pointer-events: none;
  position: absolute;
  top: 97%;
  left: 50%;
}
@media screen and (max-width: 767px) {
  .flame_serif_orange:after, .flame_serif_orange:before {
    transform: translateX(-50%);
  }
}
.flame_serif_orange:after {
  border-bottom-color: #f15a24;
  border-style: solid;
  border-width: 40px 25px 0 25px;
  border-color: #f15b24 transparent transparent transparent;
}
@media screen and (max-width: 767px) {
  .flame_serif_orange:after {
    border-style: solid;
    border-width: 40px 25px 0 25px;
    border-color: #f15b24 transparent transparent transparent;
  }
}

.flame_serif_orange2 {
  background: #f15a24;
}
.flame_serif_orange2:after, .flame_serif_orange2:before {
  border: solid transparent;
  content: "";
  height: 0;
  width: 0;
  pointer-events: none;
  position: absolute;
  top: 97%;
  left: 50%;
}
@media screen and (max-width: 767px) {
  .flame_serif_orange2:after, .flame_serif_orange2:before {
    transform: translateX(-50%);
  }
}
.flame_serif_orange2:after {
  border-bottom-color: #f15a24;
  border-style: solid;
  border-width: 40px 25px 0 25px;
  border-color: #f15b24 transparent transparent transparent;
}
@media screen and (max-width: 767px) {
  .flame_serif_orange2:after {
    border-style: solid;
    border-width: 40px 25px 0 25px;
    border-color: #f15b24 transparent transparent transparent;
  }
}

.flame_serif_pink {
  background: #d85e67;
  margin-bottom: 3rem;
}
.flame_serif_pink:after, .flame_serif_pink:before {
  border: solid transparent;
  content: "";
  height: 0;
  width: 0;
  pointer-events: none;
  position: absolute;
  top: 97%;
  left: 50%;
}
@media screen and (max-width: 767px) {
  .flame_serif_pink:after, .flame_serif_pink:before {
    transform: translateX(-50%);
  }
}
.flame_serif_pink:after {
  border-bottom-color: #f15a24;
  border-style: solid;
  border-width: 40px 25px 0 25px;
  border-color: #d85e67 transparent transparent transparent;
}
@media screen and (max-width: 767px) {
  .flame_serif_pink:after {
    border-style: solid;
    border-width: 40px 25px 0 25px;
    border-color: #d85e67 transparent transparent transparent;
  }
}

.flame_serif_orangest {
  padding: 4rem 0;
  font-weight: 700;
  font-size: 2.37rem;
  line-height: 1.35;
  color: #fff;
  text-align: center;
  position: relative;
  background: repeating-linear-gradient(-60deg, #ff9d00 0, #ff9d00 10px, #ffdc74 10px, #ffdc74 20px);
}
@media screen and (max-width: 767px) {
  .flame_serif_orangest {
    padding: 2rem 0;
    font-size: 1.5rem;
  }
}

/*
11:ボタン系
------------------------------------------------------------
*/
#page_top {
  position: fixed;
  bottom: 15px;
  right: 15px;
  z-index: 2;
  width: 70px;
  height: 70px;
  border-radius: 50%;
  background: #603813;
  border: #fff solid 3px;
}
@media screen and (max-width: 767px) {
  #page_top {
    width: 50px;
    height: 50px;
    right: 5px;
    bottom: 90px;
  }
}
#page_top span {
  position: relative;
  display: block;
  color: #fff;
  font-weight: 700;
  text-align: center;
  line-height: 70px;
  letter-spacing: 2px;
  padding-top: 3px;
  font-size: 0.8rem;
}
@media screen and (max-width: 767px) {
  #page_top span {
    line-height: 50px;
    font-size: 0.6rem;
  }
}
#page_top span::before {
  content: "";
  position: absolute;
  content: "";
  width: 10px;
  height: 10px;
  display: block;
  border-top: solid 2px;
  border-right: solid 2px;
  transform: rotate(-45deg);
  position: absolute;
  top: 17px;
  left: 0;
  right: 0;
  margin: auto;
}
@media screen and (max-width: 767px) {
  #page_top span::before {
    top: 14px;
    width: 7px;
    height: 7px;
  }
}

a.button, a.btnline2, a.btnline, a.kotira2, a.kotira, a.contact_button, a.line_button {
  color: #fff;
  display: inline-block;
  text-align: center;
  max-width: 300px;
  width: 100%;
  line-height: 64px;
  height: 70px;
  font-size: 1.5rem;
  font-weight: 700;
  position: relative;
  background: #603813;
  border-radius: 7px;
  border: solid 3px #603813;
}
@media screen and (max-width: 767px) {
  a.button, a.btnline2, a.btnline, a.kotira2, a.kotira, a.contact_button, a.line_button {
    width: 100%;
    font-size: 1.2rem;
  }
}
a.button:hover, a.btnline2:hover, a.btnline:hover, a.kotira2:hover, a.kotira:hover, a.contact_button:hover, a.line_button:hover {
  color: #603813;
  background: #fff;
}
a.line_button {
  background: #0fa035;
  border: solid 3px #0fa035;
  font-size: 1.5rem;
  padding: 0;
  font-weight: 400;
  width: 100%;
  max-width: 347px;
  height: 105px;
  line-height: 99px;
}
@media screen and (max-width: 767px) {
  a.line_button {
    line-height: 1.3;
    padding-top: 1rem;
    font-size: 1rem;
    height: 80px;
  }
}
a.line_button:before {
  display: none;
}
a.line_button:hover {
  color: #0fa035;
  background: #fff;
}
a.contact_button {
  background: #d85e67;
  border: solid 3px #d85e67;
  font-size: 1.5rem;
  padding: 0;
  font-weight: 400;
  width: 100%;
  max-width: 347px;
  height: 105px;
  line-height: 99px;
}
@media screen and (max-width: 767px) {
  a.contact_button {
    line-height: 1.3;
    padding-top: 1rem;
    font-size: 1rem;
    height: 80px;
  }
}
a.contact_button:hover {
  color: #e83d4d;
  background: #fff;
}
a.kotira {
  letter-spacing: 0.12em;
  background: #f15a24;
  border: solid 3px #f15a24;
  width: 100%;
  max-width: 600px;
  height: 108px;
  line-height: 102px;
  letter-spacing: 0.05em;
  font-size: 2.18rem;
}
@media screen and (max-width: 767px) {
  a.kotira {
    max-width: 600px;
    height: 80px;
    line-height: 74px;
    font-size: 1.5rem;
  }
}
a.kotira:hover {
  color: #f15a24;
  background: #fff;
}
a.kotira2 {
  letter-spacing: 0.12em;
  background: #f15a24;
  border: solid 3px #f15a24;
  width: 100%;
  max-width: 360px;
  height: 108px;
  line-height: 102px;
  font-size: 2.18rem;
  letter-spacing: 0.05em;
  margin-right: 2rem;
}
@media screen and (max-width: 767px) {
  a.kotira2 {
    max-width: 600px;
    height: 80px;
    line-height: 74px;
    font-size: 1.5rem;
  }
}
a.kotira2:hover {
  color: #f15a24;
  background: #fff;
}
a.btnline {
  letter-spacing: 0.12em;
  background: #34A937;
  border: solid 3px #34A937;
  width: 100%;
  max-width: 600px;
  height: 108px;
  line-height: 102px;
  letter-spacing: 0.05em;
  font-size: 2.18rem;
}
@media screen and (max-width: 767px) {
  a.btnline {
    max-width: 600px;
    height: 80px;
    line-height: 74px;
    font-size: 1.5rem;
  }
}
a.btnline:hover {
  color: #34A937;
  background: #fff;
}
a.btnline2 {
  letter-spacing: 0.12em;
  background: #34A937;
  border: solid 3px #34A937;
  width: 100%;
  max-width: 360px;
  height: 108px;
  line-height: 102px;
  font-size: 1.6rem;
  letter-spacing: 0.05em;
  margin-right: 2rem;
}
@media screen and (max-width: 767px) {
  a.btnline2 {
    max-width: 600px;
    height: 80px;
    line-height: 74px;
    font-size: 1.4rem;
  }
}
a.btnline2:hover {
  color: #34A937;
  background: #fff;
}
a.btnline3 {
  font-size: 2rem;
}
@media screen and (max-width: 767px) {
  a.btnline3 {
    font-size: 1.5rem;
  }
}

/*
12:その他パーツ
------------------------------------------------------------
*/
#list_breadcrumb {
  font-size: 0.87em;
  padding: 1em 0;
  margin: 0;
  background: #f7f7f7;
}

.alignleft {
  float: left;
  padding: 0 15px 15px 0;
}

.alignright {
  float: right;
  padding: 0 0 15px 15px;
}

.aligncenter {
  display: block;
  margin: 0 auto 20px;
}

.photo_l {
  float: left;
  padding: 0 15px 15px 0;
}

.photoR {
  float: right;
  padding: 0 0 15px 15px;
}

/*
13:コンタクトフォーム
------------------------------------------------------------
*/
.contactform {
  margin-bottom: 2em;
  width: 100%;
}
@media screen and (max-width: 767px) {
  .contactform {
    margin-bottom: 1em;
  }
}
.contactform tr {
  border-bottom: 2px dotted #3D352F;
}
.contactform tr:last-child {
  border-bottom: none;
}
.contactform tr th {
  padding: 1.5em 1em 1em 0;
  color: #040000;
  text-align: left;
  vertical-align: top;
  width: 25%;
  font-size: 1.87rem;
}
@media screen and (max-width: 767px) {
  .contactform tr th {
    width: 100%;
    display: block;
    padding: 0 0 0.5em;
  }
}
.contactform tr td {
  width: 75%;
  padding: 1em;
  text-align: left;
}
@media screen and (max-width: 767px) {
  .contactform tr td {
    width: 100%;
    display: block;
    padding: 0 0 1em;
  }
}

.td_checkbox {
  font-size: 1.87rem;
}
@media screen and (max-width: 767px) {
  .td_checkbox {
    font-size: 1rem;
  }
}

input,
textarea,
select {
  width: 100%;
  padding: 0.7rem;
  border-radius: 5px;
  border: 2px solid #d85e67;
}

input[type=radio] {
  width: auto;
  margin-right: 0.5rem;
}

input[type=checkbox] {
  width: auto;
  margin-right: 0.5rem;
}

textarea {
  height: 250px;
}

span.mwform-tel-field input {
  width: 25% !important;
}

.submitBox {
  position: relative;
  display: inline-block;
}
@media screen and (max-width: 767px) {
  .submitBox {
    width: 100%;
  }
}

.submit,
.backBtn {
  color: #fff;
  display: inline-block;
  text-align: center;
  line-height: 102px;
  height: 108px;
  width: 600px;
  font-size: 2.18rem;
  font-weight: 700;
  background: #d85e67;
  border-radius: 7px;
  border: solid 3px #d85e67;
  transition: 0.3s;
  padding: 0;
}
@media screen and (max-width: 767px) {
  .submit,
  .backBtn {
    height: 80px;
    line-height: 74px;
    font-size: 1.5rem;
    width: 100%;
  }
}
.submit:hover,
.backBtn:hover {
  color: #d85e67;
  background: #fff;
}

.submit2 {
  padding: 0;
}

.backBtn {
  background: #fff;
  color: #d85e67;
}
.backBtn:hover {
  color: #fff;
  background: #d85e67;
}

.backBtn:hover {
  opacity: 0.8;
}

.required {
  font-size: 0.75em;
  display: inline-block;
  margin-left: 1em;
  line-height: 1;
}

/*------------------------
	コンタクトフォーム7用
--------------------------*/
/*
.wpcf7-textarea {
	width: 90%;
}
.wpcf7-text {
	width: 60%;
}
.zip1 {
	width: 60px;
}
.zip2 {
	width: 100px;
}
.formtel {
	width: 100px;
	height: 16px;
}
.wpcf7-form-control wpcf7-text zip {
	width: 30%;
}
.addr {
	width: 90%;
}
.contactformsubmit {
	text-align: center;
	height: 60px;
	margin-top: 30px;
}
.wpcf7-submit {
	background: #000;
	color: #FFF;
	text-align: center;
	font-weight: bold;
	border-radius: 5px;
	display: block;
	margin: 0 auto;
	padding: 15px 40px;
	border: none;
}
.wpcf7-submit:hover {
	text-decoration: none;
	opacity: .8;
} */
/*
14:ワードプレス
------------------------------------------------------------
*/
.wp-pagenavi {
  margin-top: 5%;
}
.wp-pagenavi a {
  display: inline-block;
  margin-right: 1em;
}
.wp-pagenavi a:hover {
  color: #9fa0a0;
}
.wp-pagenavi span {
  display: inline-block;
  margin-right: 1em;
}
.wp-pagenavi span.current {
  color: #9fa0a0;
}

/*
15:マージン・パディング
------------------------------------------------------------
*/
.m0 {
  margin-bottom: 0 !important;
}

.m05 {
  margin-bottom: 0.5rem !important;
}

.m1 {
  margin-bottom: 1rem !important;
}

.m2 {
  margin-bottom: 2rem !important;
}

.m3 {
  margin-bottom: 3rem !important;
}

.m4 {
  margin-bottom: 4rem !important;
}

.m5 {
  margin-bottom: 5rem !important;
}

.m6 {
  margin-bottom: 6rem !important;
}

.m7 {
  margin-bottom: 7rem !important;
}

@media screen and (max-width: 767px) {
  .mr0_sp {
    margin-bottom: 0 !important;
  }
}

@media screen and (max-width: 767px) {
  .mr05_sp {
    margin-bottom: 0.5rem !important;
  }
}

@media screen and (max-width: 767px) {
  .mr1_sp {
    margin-bottom: 1rem !important;
  }
}

@media screen and (max-width: 767px) {
  .mr2_sp {
    margin-bottom: 2rem !important;
  }
}

@media screen and (max-width: 767px) {
  .mr3_sp {
    margin-bottom: 3rem !important;
  }
}

@media screen and (max-width: 767px) {
  .mr4_sp {
    margin-bottom: 4rem !important;
  }
}

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

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

@media screen and (max-width: 767px) {
  .mr7_sp {
    margin-bottom: 7rem !important;
  }
}

@media screen and (max-width: 767px) {
  .mr8_sp {
    margin-bottom: 8rem !important;
  }
}

/*
16:Pagination
------------------------------------------------------------
*/
ul.list_pagination {
  width: 100%;
  margin: 5% auto;
  position: relative;
  display: flex;
  border-top: 1px solid #383838;
  border-bottom: 1px solid #383838;
  font-size: 0.875em;
  padding: 2em 0;
}
ul.list_pagination li {
  width: 49%;
}
ul.list_pagination li.prev {
  margin-right: 2%;
}
ul.list_pagination li.prev a {
  padding-left: 20px;
}
ul.list_pagination li.prev a:before {
  left: 0;
  background: url(../images/right_b.svg) no-repeat center;
  transform: rotate(180deg);
}
ul.list_pagination li.next {
  text-align: right;
}
ul.list_pagination li.next a {
  padding-right: 20px;
}
ul.list_pagination li.next a:before {
  right: 0;
  background: url(../images/right_b.svg) no-repeat center;
}
ul.list_pagination li a {
  position: relative;
  display: inline-block;
}
ul.list_pagination li a:before {
  position: absolute;
  content: "";
  width: 5px;
  height: 9px;
  top: 10px;
}

/*
アニメーション
------------------------------------------------------------
*/
#top_img {
  position: absolute;
  bottom: 0;
  z-index: 1;
}

#top_txt,
#top_txt2,
#top_txt3,
#top_img {
  opacity: 0;
}

.anm-top01 {
  animation-fill-mode: both;
  animation-delay: 0.1s;
  animation-duration: 1s;
  animation-name: fadeInDown;
}

.anm-top02 {
  animation-fill-mode: both;
  animation-delay: 0.8s;
  animation-duration: 1s;
  animation-name: fadeInDown;
}

.anm-top03 {
  animation-fill-mode: both;
  animation-delay: 1.6s;
  animation-duration: 0.6s;
  animation-name: anm-big;
}

.anm-top04 {
  animation-fill-mode: both;
  animation-delay: 1.6s;
  animation-duration: 1.2s;
  animation-name: fadeInDown;
}

.animation_fadeInDown,
.animation_fade,
.animation_big {
  opacity: 0;
}

.fadeInDown {
  animation-fill-mode: both;
  animation-duration: 1s;
  animation-name: fadeInDown;
}

.anm-big {
  animation-fill-mode: both;
  animation-duration: 0.8s;
  animation-name: anm-big;
}

.fadeIn {
  animation-fill-mode: both;
  animation-duration: 1s;
  animation-name: fadeIn;
}

@keyframes fadeIn {
  0% {
    opacity: 0;
  }
  100% {
    opacity: 1;
  }
}
@keyframes anm-big {
  0% {
    opacity: 0;
    transform: scale(0);
  }
  100% {
    opacity: 1;
    transform: scale(1);
  }
}
@keyframes fadeInDown {
  0% {
    opacity: 0;
    transform: translateY(50px);
  }
  100% {
    opacity: 1;
    transform: translateY(0);
  }
}
.notice_text {
  margin: 30px 0 50px;
  font-size: 1.87rem;
  font-weight: bold;
  color: #e95464;
  text-decoration: underline;
}
@media screen and (max-width: 767px) {
  .notice_text {
    margin: 20px 0 40px;
    font-size: 1.333rem;
  }
}