@charset "utf-8";
@import url('https://fonts.googleapis.com/css2?family=Josefin+Sans:wght@400;500;700&family=Noto+Sans+JP:wght@400;500;700;900&display=swap');

@import url('https://fonts.googleapis.com/css2?family=Zen+Maru+Gothic:wght@300;400;500;700&display=swap');

body#new-top-page {
  font-family: 'Zen Maru Gothic', sans-serif;
}

/*
Theme Name: 
Theme URI:
Description:
Author:atGunGun
Author URI:https://at-gungun.com/
Version:7.7
*/

/*-----------------------------------------------------------
全体スタイル
-----------------------------------------------------------*/

html {
  scroll-padding-top: 150px;
  scroll-behavior: smooth;
}

body {
  width: 100% !important;
  color: #46341E;
  background: #F5F4EF;
  line-height: 1.7;
  overflow: hidden;
  font-size: 1.6rem;
  font-family: 'Noto Sans JP', 'ヒラギノ角ゴ ProN W3',
    'Hiragino Kaku Gothic ProN', '游ゴシック', YuGothic, 'メイリオ', Meiryo,
    'Helvetica Neue', Helvetica, Arial, sans-serif;
  letter-spacing: 1.6px;
  font-weight: 500;
}

body.open {
  height: 100vh;
}

.josef {
  font-family: 'Josefin Sans', sans-serif !important;
}

.yumi {
  font-family: YuMincho, 'Yu Mincho', serif !important;
  font-weight: 500;
}

/* 新トップページ */

.view-width-ctr {
  /* max-width: 1072px; */
  margin: 0 auto !important;
}

.view-width-ctr-contents {
  max-width: 765px;
  margin: 0 auto;
}

.contentx00 {
  margin: 10px auto;
  text-align: center;
  width: 85%;
}

.contentx00 .description {
  color: #46341E;
  font-size: min(4.1vw, 20px);
  line-height: 4.8vw; /* Adjust this value as needed */
  font-weight: bold;
}

.contentx00 .description-mini {
  color: #46341E;
  font-size: 3.59vw;
  line-height: 4.8vw; /* Adjust this value as needed */
}

.contentx01 {
  margin: 78px auto 100px;
  text-align: center;
  width: 85%;
  max-width: 910px;
}

.contentx01 h2.subtitle {
  padding-bottom: 12px;
  color: #46341E;
  font-size: min(6.15vw, 32px);
  font-weight: bold;
  margin: 0; /* これでブラウザのデフォルトマージンを無効にします */
}

.contentx01 .en {
  display: block;
  color: #B71717;
  font-weight: 700;
  font-size: min(3.45vw, 20px);
  letter-spacing: 0.3em;
}

.contentx01 .description {
  padding: 30px 0 40px;
  color: #46341E;
  font-size: min(3.45vw, 20px);
  line-height: min(4.8vw, 36px);
  font-weight: 500;
}

.contentx01 .description strong {
  font-weight: bold;
  color: #B71717;
}

.contentx01 .description-mini .txt-box {
  padding: 20px 0 0;
  color: #46341E;
  font-size: min(3.45vw, 14px);
  line-height: min(4.2vw, 28px);
  font-weight: 400;
  letter-spacing: 0.01em;
  text-align: left;
}

.contentx01 .area-parent {
  background: #fff;
  border: 4px solid #B71717;
  border-radius: 14px;
  padding: 40px 78px;
  width: 100%; /* optional, to ensure the parent takes the full width */
}

.contentx01 .area-parent .area-header {
  border-bottom: 1px dashed #46341E;
  padding-bottom: 40px;
  margin-bottom: 20px;
}

.contentx01 .area-parent .area-header .ttl {
  font-size: min(3.6vw, 16px);
  font-weight: bold;
  margin-right: 25px;
}

.contentx01 .area-parent .area-header .select_wrapper {
  position: relative;
  display: inline-flex;
}

.contentx01 .area-parent .area-header .select_wrapper::before {
  content: '';
  position: absolute;
  pointer-events: none;
  display: inline-block;
  right: 0;
  width: 2.8em;
  height: 100%;
  border-radius: 0 6px 6px 0;
  background-color: #B71717;
}

.contentx01 .area-parent .area-header .select_wrapper::after {
  content: '';
  position: absolute;
  pointer-events: none;
  top: 0;
  bottom: 0;
  margin: auto;
  right: 16px;
  display: inline-block;
  vertical-align: middle;
  color: #fff;
  line-height: 1;
  width: 0;
  height: 0;
  border-style: solid;
  border-color: transparent;
  border-width: 0.64952em 0.375em;
  border-top-color: currentColor;
  border-bottom: 0;
}

.contentx01 .area-parent .area-header .select_wrapper .none {
  display: none;
}

.contentx01 .area-parent .area-header .select_wrapper select {
  appearance: none;
  min-width: 230px;
  height: 2.8em;
  padding: 0.4em 3.6em 0.4em 0.8em;
  border: none;
  border-radius: 6px;
  background-color: #f6f3ea;
  color: #333;
  font-size: 1em;
  cursor: pointer;
}

.contentx01 .area-parent .area-header .select_wrapper select:focus {
  outline: 2px solid #B71717;
}

.contentx01 .area-parent .heading {
  position: relative;
  display: block;
  font-size: min(3.59vw, 18px);
  font-weight: bold;
  padding-left: 12px;
  text-align: left;
  margin: 0 17px 12px;
}

.contentx01 .area-parent .heading::before {
  content: '';
  background: #46341E;
  width: 6px;
  height: 100%;
  display: block;
  position: absolute;
  left: 0;
}

.contentx01 .area-parent .heading #area-name {
  text-decoration: underline;
}

.contentx01 .area-container {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  width: 100%;
  gap: 8px;
  padding: 0 17px;
}

.contentx01 .area-container p {
  white-space: nowrap;
}

.contentx01 .gtm_click_top_area:hover {
  opacity: 1;
}

.contentx01 h3.area.button {
  display: inline-flex;
  justify-content: center;
  align-items: center;
  width: 100%;
  height: 50px;
  background-color: #f6f3ea;
  border: 2px solid #46341E;
  color: #46341E;
  text-decoration: none;
  font-size: min(3.45vw, 14px);
  transition: all 0.3s ease;
  font-weight: 500;
  position: relative;
  line-height: 1.2;
}

.contentx01 h3.area.button::after {
  content: '';
  display: inline-block;
  vertical-align: middle;
  color: #46341E;
  line-height: 1;
  width: 0;
  height: 0;
  border-style: solid;
  border-color: transparent;
  border-width: 0.375em 0.64952em;
  border-left-color: currentColor;
  border-right: 0;
  position: absolute;
  right: 12px;
  top: 0;
  bottom: 0;
  margin: auto;
}

.contentx01 .gtm_click_top_area:hover h3.area.button::after {
  border-color: transparent transparent transparent #fff;
}

.contentx01 h3.area.button:hover {
  background-color: #B71717;
  color: #fff;
  border: none;
}

.contentx01 .active h3.area.button::after {
  content: '';
  display: inline-block;
  vertical-align: middle;
  color: #fff;
  line-height: 1;
  width: 0;
  height: 0;
  border-style: solid;
  border-color: transparent;
  border-width: 0.375em 0.64952em;
  border-left-color: currentColor;
  border-right: 0;
  position: absolute;
  right: 12px;
  top: 0;
  bottom: 0;
  margin: auto;
}

.contentx01 h3.area.button:hover {
  box-shadow: 0 2px 2px rgba(0, 0, 0, 0.25);
}

.contentx01 h3.area.button:active {
  box-shadow: none;
}

.contentx01.common {
  background: #F7E5E5;
  width: 100%;
  max-width: 100%;
  margin: auto;
  font-family: 'Zen Maru Gothic', sans-serif;
}

.contentx01.common .top {
  background: #fddd6e;
  text-align: center;
  padding: 10px 0;
}

.contentx01.common .top p {
  font-size: min(3.45vw, 14px);
  font-weight: bold;
  letter-spacing: 0.2em;
}

.contentx01.common .top p span {
  color: #B71717;
}

.contentx01.common .inner {
  margin: 0 auto;
  text-align: center;
  width: 85%;
  max-width: 910px;
  padding: 44px 0 38px;
}

.contentx01.common .title {
  font-size: min(6.15vw, 32px);
  text-align: center;
  line-height: 1.1;
  position: relative;
  z-index: 1;
  padding-bottom: 12px;
  color: #46341E;
}

.contentx01.common .en {
  color: #B71717;
  padding-bottom: 27px;
}

.contentx01.page {
  margin: 67px auto 100px;
  font-family: 'Zen Maru Gothic', sans-serif;
}

.contentx01.page .title {
  font-size: min(6.15vw, 32px);
  text-align: center;
  line-height: 1.1;
  position: relative;
  z-index: 1;
  padding-bottom: 12px;
  color: #46341E;
}

.contentx02 {
  background-color: #fff;
  padding: 100px 0;
}

.contentx02 .inner {
  margin: 0 auto;
  text-align: center;
  width: 85%;
  max-width: 910px;
}

.contentx02 .subtitle {
  padding-bottom: 12px;
  color: #46341E;
  font-size: min(5.13vw, 28px);
  font-weight: bold;
}

.contentx02 .en {
  display: block;
  color: #B71717;
  font-weight: 700;
  font-size: min(3.45vw, 20px);
  letter-spacing: 0.3em;
  padding-bottom: 30px;
}

.contentx02 .description {
  color: #46341E;
  font-size: min(3.59vw, 20px);
  line-height: min(4.8vw, 30px);
  font-weight: bold;
}

.contentx02 .description .heading {
  margin-bottom: 40px;
  font-size: min(3.59vw, 20px);
  line-height: 1.6;
}

.contentx02 .description .about-content {
  width: 42%;
}

.contentx02 .description .no-bold {
  color: #46341E;
  font-size: min(3.6vw, 16px);
  line-height: 2;
  font-weight: bold;
  text-align: left;
}

.contentx02 .description .no-bold .notes {
  font-weight: 400;
  font-size: min(3.45vw, 14px);
  line-height: 1.5;
  display: block;
  margin-top: 20px;
}

.contentx02 .description .about-content .title {
  color: #B71717;
  font-size: min(3.59vw, 18px);
  margin-bottom: 12px;
  text-align: left;
  line-height: 1.7;
}

.contentx02 .description-mini {
  padding: 16px 0;
  color: #46341E;
  font-size: 3.59vw;
  line-height: 4.8vw;
}

.contentx02 .highlight {
  color: #B71717;
}

.contentx02 .img-sp-container {
  width: 100%;
  position: relative;
  display: flex;
  align-items: center;
  justify-content: space-between;
  margin-bottom: 60px;
}

.contentx02 .img-sp-ratio {
  padding-bottom: 33%;
  position: relative;
  width: 49%;
}

.contentx02 .img-sp {
  border: 5px solid #ffffff;
  border-radius: 14px;
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.contentx02 .img-container {
  display: flex;
  justify-content: center;
  align-items: center;
  margin: 15px auto;
}

.contentx02 .worries-container {
  margin: 40px auto;
}

.contentx02 .left-text {
  text-align: left;
  font-weight: 500;
}

.contentx02 .fukidashi-container {
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: flex-start;
}

.contentx02 .img-with-text {
  position: relative;
  display: flex;
  justify-content: center;
  align-items: center;
}

.contentx02 .img-with-text img {
  width: 100%;
  height: auto;
}

.contentx02 .centered-text {
  position: absolute;
  z-index: 1;
  text-align: center;
  width: 85%;
  top: 13%;
  font-size: min(3.59vw, 16px);
  line-height: min(4.8vw, 16px);
}

.contentx02 .centered-text2 {
  position: absolute;
  z-index: 1;
  text-align: center;
  width: 85%;
  top: 25%;
  font-size: min(3.59vw, 16px);
  line-height: min(4.8vw, 16px);
}

.contentx02 .thinking-image {
  margin-left: 20px; /* adjust as needed */
}

.contentx03 {
  margin: 20px auto 65px;
  text-align: center;
  width: 85%;
  max-width: 910px;
}

.contentx03 .title {
  font-size: min(6.15vw, 32px);
  text-align: center;
  line-height: 1.1;
  position: relative;
  z-index: 1;
  padding-bottom: 12px;
  color: #46341E;
}

.contentx03 .en {
  display: block;
  color: #B71717;
  font-weight: 700;
  font-size: min(3.45vw, 20px);
  letter-spacing: 0.3em;
  padding-bottom: 30px;
  text-align: center;
}

.contentx03 .description {
  padding: 16px 0;
  color: #46341E;
  font-size: min(3.59vw, 20px);
  line-height: min(4.8vw, 36px); /* Adjust this value as needed */
  text-align: left; /* 追加 */
  font-weight: bold;
}

.contentx03 .description .margin-up {
  margin-top: 10px;
  font-weight: bold;
}

.contentx03 .description-mini {
  padding: 16px 0;
  color: #46341E;
  font-size: 3.59vw;
  line-height: 4.8vw;
}

.contentx03 .description-mini h3 {
  padding: 16px 0;
  color: #46341E;
  font-size: min(4.45vw, 14px);
  line-height: min(6.2vw, 28px);
  font-weight: bold;
}

.contentx03 .description-mini h3 + .cmn-btn_01 {
  margin: 0 auto 7.692vw;
}

.contentx03 .green-div,
.contentx11 .yellow-div {
  width: 60%;
  margin: 0 auto;
  height: 28px;
  display: flex;
  justify-content: center;
  align-items: center;
  color: #fff;
  border-radius: 50px;
  box-shadow: 4px 4px 4px rgba(0, 0, 0, 0.25);
}

.contentx03 .green-div {
  background-color: #B71717;
  margin-top: 10px;
  margin-bottom: 28px;
}

.green-div-link {
  display: block; /* ブロック要素として表示 */
  text-align: center; /* 内部テキストを中央揃え */
}

.contentx03 .green-div p {
  font-size: min(3.59vw, 14px);
  font-weight: bold;
  margin: 0; /* デフォルトの余白を取り除く */
  text-align: center; /* テキストを中央に配置 */
}

.contentx03 .feature-container {
  margin-top: 15px;
  margin-bottom: 34px;
  padding: 0px;
  border-radius: 5px;
}

.contentx03 .feature-title {
  background-color: #B71717;
  border-top-left-radius: 5px;
  border-top-right-radius: 5px;
  padding: 20px;
  text-align: center;
  color: #ffffff;
  font-size: min(4.1vw, 24px);
  font-weight: bold;
}

.contentx03 .feature-content {
  border: 2px solid #46341E;
  background-color: #ffffff;
  padding: 20px;
  margin-top: 0;
}

.contentx03 .feature-item {
  margin-bottom: 20px;
}

.contentx03 .item-title {
  background-color: #fddd6e;
  border-radius: 50px;
  padding: 10px 20px;
  display: inline-block;
  text-align: left;
}

.contentx03 .item-title2 {
  background-color: #ddd6be;
  border-radius: 50px;
  padding: 10px 20px;
  display: inline-block;
  text-align: left;
  margin-top: 10px;
}

.contentx03 .item-description {
  text-align: left;
  margin: 10px auto;
}

.contentx03 hr {
  border-top: 1px dashed #46341E;
  margin: 10px 0;
}

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

.contentx03 td,
th {
  padding: 3px;
  width: 30px;
  height: 25px;
  border: 1px solid #595959;
  text-align: center;
  vertical-align: middle;
}

.contentx03 td:nth-child(1),
.contentx03 th:nth-child(1) {
  width: 26.18%;
}

.contentx03 td:nth-child(2),
.contentx03 th:nth-child(2),
.contentx03 td:nth-child(3),
.contentx03 th:nth-child(3) {
  width: 29.41%;
}

.contentx03 .cell1,
.cell2,
.cell3 {
  font-size: 2.9vw;
}

.contentx03 .cell1 {
  border: none;
}

.contentx03 .cell2 {
  border: none;
  background-color: #fddd6e;
  border-top-left-radius: 5px;
}

.contentx03 .cell3 {
  border: none;
  background-color: #ddd6be;
  border-top-right-radius: 5px;
}

.contentx03 .cell4 {
  border-right: none;
  background-color: #ddd6be;
}

.contentx03 .cell5,
.cell6,
.cell8,
.cell9,
.cell11,
.cell12,
.cell14,
.cell15 {
  font-size: min(3.4vw, 16px);
  font-weight: 500;
}

.contentx03 .cell5 img,
.contentx03 .cell6 img,
.contentx03 .cell8 img,
.contentx03 .cell9 img,
.contentx03 .cell11 img,
.contentx03 .cell12 img,
.contentx03 .cell14 img,
.contentx03 .cell15 img {
  margin-bottom: 10px; /* 必要な余白の大きさに調整してください */
}

.contentx03 .cell5 {
  border-right-style: dotted;
}

.contentx03 .cell8 {
  border-right-style: dotted;
}

.contentx03 .cell11 {
  border-right-style: dotted;
}

.contentx03 .cell14 {
  border-right-style: dotted;
}

.contentx03 .cell6 {
  border-left: none;
}

.contentx03 .cell9 {
  border-left: none;
}

.contentx03 .cell12 {
  border-left: none;
}

.contentx03 .cell15 {
  border-left: none;
}

.contentx03 .cell7 {
  border-right: none;
  background-color: #ddd6be;
}

.contentx03 .cell10 {
  border-right: none;
  background-color: #ddd6be;
}

.contentx03 .cell13 {
  border-right: none;
  background-color: #ddd6be;
}

.contentx03 th {
  background: #f0e6cc;
}

.contentx03 tbody tr:nth-child(n + 2) td {
  background-color: #ffffff;
  height: 94px;
}

@media (max-width: 768px) {
  .contentx03 tbody tr:nth-child(n + 2) td {
    font-size: 1.1rem;
  }
}

.contentx03 tbody tr:nth-child(1) td {
  height: 48px;
}

.contentx03 td img {
  display: block;
  margin: 2.5vw auto;
}

.contentx04 {
  background: #fff;
  padding: 88px 0 100px;
}

.page-dogsitter .contentx04,
.catsitter .contentx04,
.littlecritter .contentx04 {
  padding:0 0 100px;
}

.contentx04 .title {
  font-size: min(6.15vw, 32px);
  text-align: center;
  line-height: 1.1;
  position: relative;
  z-index: 1;
  padding-bottom: 12px;
  color: #46341E;
}

.contentx04 .en {
  display: block;
  color: #B71717;
  font-weight: 700;
  font-size: min(3.45vw, 20px);
  letter-spacing: 0.3em;
  padding-bottom: 30px;
  text-align: center;
}

.contentx04 .subtitle {
  border-top: 3px solid #B71717;
  border-bottom: 3px solid #B71717;
  padding: 28px 0;
  color: #B71717;
  font-size: min(5.13vw, 28px);
  font-weight: bold;
}

.contentx04 .inner {
  margin: 0 auto;
  text-align: center;
  width: 85%;
  max-width: 1121px;
}

.contentx04 .price_head {
  background: #FFF5F5;
  border: 5px solid #B71717;
  border-radius: 22px;
  padding: 40px 0;
}

.contentx04 .price-title {
  font-size: min(4.1vw, 24px);
  color: #B71717;
  font-weight: bold;
  line-height: 1.4;
  margin-bottom: 20px;
}

.contentx04 .price-title strong {
  position: relative;
  z-index: 1;
  background: linear-gradient(transparent 60%, #fddd6e 60%);
}

.contentx04 .price-text {
  font-size: min(3.6vw, 16px);
  line-height: 1.8;
  font-weight: bold;
}

.contentx04 .price-text .highlight {
  color: #B71717;
}

.contentx04 .price_column {
  display: flex;
  flex-direction: column;
  gap: 8px;
  max-width: 583px;
  margin: 18px auto 20px;
}

.contentx04 .price_catch.white {
  background: #fff;
  padding: 10px 0;
  color: #46341E !important;
  font-size: min(3.59vw, 18px);
  font-weight: bold;
  display: flex;
  align-items: center;
  justify-content: center;
}

.contentx04 .price_catch.white .num {
  color: #B71717;
  font-size: min(4.8vw, 30px);
  margin-left: 54px;
  margin-right: 3px;
}

.contentx04 .price_catch.white .yen {
  font-size: min(2.8vw, 12px);
}

.contentx04 .price_catch.brown {
  background: #46341E;
  border-radius: 6px;
  color: #fff;
  padding: 16px 0;
  font-size: min(3.59vw, 18px);
  font-weight: bold;
}

.contentx04 .price_catch.brown strong {
  color: #fddd6e;
}

.contentx04 .price_note {
  font-size: min(2.8vw, 12px);
  font-weight: 400;
  font-family: 'Noto Sans JP', sans-serif;
  letter-spacing: 0.01em;
  padding: 0 8%;
  text-align: left;
}

.contentx04 .price_foot {
  background: #F5F4EF;
  border-radius: 22px;
  padding: 60px 0;
  margin-top: 20px;
}

.contentx04 .price_heading {
  font-size: min(3.59vw, 20px);
  font-weight: bold;
  letter-spacing: 0.01em;
  margin-bottom: 16px;
}

.contentx04 .price_description {
  font-size: min(3.45vw, 14px);
  font-weight: 400;
  font-family: 'Noto Sans JP', sans-serif;
  margin-bottom: 23px;
  letter-spacing: 0.01em;
}

.contentx04 .price_list {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 35px;
  padding: 0 8%;
}

.contentx04 .price_item {
  background: #fff;
  padding: 24px 0 32px;
  position: relative;
}

.contentx04 .price_item:nth-child(1) {
  border: 4px solid #B71717;
}

.contentx04 .price_item:nth-child(2) {
  border: 4px solid #46341E;
}

.contentx04 .price_item:nth-child(3) {
  border: 4px solid #eaa116;
}

.contentx04 .price_item:nth-child(1)::before {
  content: '1';
  font-size: min(4.1vw, 24px);
  font-weight: bold;
  color: #B71717;
  position: absolute;
  top: 2px;
  left: 16px;
}

.contentx04 .price_item:nth-child(2)::before {
  content: '2';
  font-size: min(4.1vw, 24px);
  font-weight: bold;
  color: #46341E;
  position: absolute;
  top: 2px;
  left: 16px;
}

.contentx04 .price_item:nth-child(3)::before {
  content: '3';
  font-size: min(4.1vw, 24px);
  font-weight: bold;
  color: #eaa116;
  position: absolute;
  top: 2px;
  left: 16px;
}

.contentx04 .price_item:nth-child(1)::after {
  content: '＋';
  color: #704220;
  position: absolute;
  right: -33px;
  top: 0;
  bottom: 0;
  margin: auto;
  display: flex;
  align-items: center;
  font-size: min(3.45vw, 20px);
}

.contentx04 .price_item:nth-child(2)::after {
  content: '＋';
  color: #704220;
  position: absolute;
  right: -33px;
  top: 0;
  bottom: 0;
  margin: auto;
  display: flex;
  align-items: center;
  font-size: min(3.45vw, 20px);
}

.contentx04 .price_summary {
  font-size: min(4.1vw, 24px);
  font-weight: bold;
  line-height: 1;
  margin-bottom: 10px;
}

.contentx04 .price_item:nth-child(1) .price_summary {
  color: #B71717;
}

.contentx04 .price_item:nth-child(2) .price_summary {
  color: #46341E;
}

.contentx04 .price_item:nth-child(3) .price_summary {
  color: #eaa116;
}

.contentx04 .price_flex {
  display: flex;
  align-items: center;
  justify-content: center;
}

.contentx04 .price_lead {
  margin-right: 6px;
  border: 1px solid #46341E;
  background: #fff;
  padding: 0 3px;
  font-size: min(2.8vw, 12px);
  font-weight: bold;
}

.contentx04 .price_flex .num {
  font-size: min(3.45vw, 14px);
  font-weight: bold;
  line-height: 1;
  margin-bottom: 12px;
}

.contentx04 .price_flex .num strong {
  font-size: min(5.13vw, 28px);
  font-weight: bold;
  position: relative;
  z-index: 1;
  background: linear-gradient(transparent 60%, #fddd6e 60%);
}

.contentx04 .price_flex .num .yen {
  font-size: min(3.45vw, 14px);
  font-weight: bold;
}

.contentx04 .price_emphasis {
  font-size: min(3.59vw, 18px);
  font-weight: bold;
  line-height: 1.5;
  letter-spacing: 0.01em;
  margin-bottom: 12px;
  display: block;
}

.contentx04 .price_top {
  background: #eff5ec;
  border-radius: 3px;
  font-size: min(3.45vw, 14px);
  font-weight: bold;
  padding: 0 6px;
  margin-bottom: 5px;
  display: inline-block;
}

.contentx04 .price_table {
  margin-top: 40px;
  padding: 0 8%;
}

.contentx04 .price_container {
  border-bottom: 1px dashed #46341E;
  text-align: left;
  margin-bottom: 20px;
  padding-bottom: 20px;
}

.contentx04 .price_container:last-child {
  border-bottom: none;
  padding-bottom: 0;
  margin-bottom: 30px;
}

.contentx04 .price_subtitle {
  font-size: min(3.77vw, 22px);
  padding-left: 19px;
  border-left: 6px solid #46341E;
  line-height: 1;
  margin-bottom: 10px;
}

.contentx04 .price_subtitle span {
  font-size: min(3.45vw, 14px);
  letter-spacing: 0.01em;
}

.contentx04 .price_unit {
  font-size: min(3.59vw, 18px);
  font-weight: bold;
  letter-spacing: 0.01em;
}

.contentx04 .price_container .price_note {
  padding: 0;
  margin-top: 6px;
}

.contentx04 .price_action {
  background: #D2CDC5;
  margin: 0 8%;
  border-radius: 16px;
  padding: 19px 0;
  text-align: center;
}

.contentx04 .price_action p {
  font-size: min(3.59vw, 18px);
  font-weight: bold;
  letter-spacing: 0.01em;
}

.contentx04 .price_action p span {
  display: block;
  font-size: min(3.45vw, 14px);
  margin-top: 5px;
}

.contentx04 .request_wrap {
  margin-top: 33px;
  padding: 0 8%;
}

.contentx04 .request_summary {
  background-color: #FFF5F5;
  border-top: 4px solid #B71717;
  border-bottom: 4px solid #B71717;
  padding: 17px 0;
  position: relative;
  cursor: pointer;
}

.contentx04 .request_summary::after {
  position: absolute;
  content: '';
  width: 0;
  height: 0;
  border-style: solid;
  border-width: 16px 11px 0 11px;
  border-color: #B71717 transparent transparent transparent;
  right: 27px;
  top: 0;
  margin: auto;
  bottom: 0;
  transition: transform .4s;
}

.contentx04 .request_summary.is-open::after {
  transform: scale(1, -1);
  transition: opacity 0.3s ease, transform 0.3s ease;
}

.contentx04 .request_summary span {
  font-size: min(3.45vw, 14px);
  font-weight: bold;
  display: block;
  margin-bottom: 7px;
}

.contentx04 .request_summary h3 {
  font-size: min(3.77vw, 22px);
  font-weight: bold;
  color: #B71717;
}

.contentx04 .request_main {
  background-color: #F5F4EF;
  line-height: 0;
  opacity: 0;
  height: 0;
  transition: line-height 0.4s, padding 0.4s, opacity 0.4s;
}

.contentx04 .request_main.is-open {
  padding: 37px 0 43px;
  opacity: 1;
  height: auto;
  line-height: 1.7;
}

.contentx04 .request_heading {
  margin: 0 9% 25px;
}

.contentx04 .request_heading .title {
  font-size: min(5.13vw, 28px);
  color: #B71717;
  font-weight: bold;
  line-height: 1.5;
  padding-bottom: 25px;
}

.contentx04 .request_heading .title .yellow {
  color: #B71717;
}

.contentx04 .request_heading .text {
  font-size: min(3.6vw, 16px);
  font-weight: bold;
  color: #46341E;
  font-family: 'Noto Sans JP', sans-serif;
}

.contentx04 .request_heading .text .yellow {
  color: #B71717;
}

.contentx04 .request_heading .text .red {
  color: #B71717;
}

.contentx04 .request_container {
  background-color: #fff;
  border-radius: 17px;
  padding: 64px 29px 34px;
  margin: 0 6%;
  display: flex;
  flex-direction: column;
  gap: 30px;
  position: relative;
}

.contentx04 .request_top {
  background-color: #46341E;
  position: absolute;
  top: 0;
  left: 0;
  padding: 8px 16px;
  color: #fff;
  font-size: min(3.45vw, 14px);
  letter-spacing: 0.01em;
  font-weight: bold;
}

.contentx04 .request_title {
  font-size: min(3.59vw, 18px);
  padding-left: 6px;
  border-left: 6px solid #46341E;
  line-height: 1.7;
  margin-bottom: 12px;
  display: flex;
}

.contentx04 .request_list {
  display: flex;
  justify-content: space-between;
  gap: 6px;
}

.contentx04 .request_item {
  background-color: #f6f3ea;
  border-radius: 10px;
  width: 100%;
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 10px;
  padding: 14px 0;
}

.contentx04 .request_item:nth-child(1) img {
  width: 15%;
}

.contentx04 .request_item:nth-child(2) img {
  width: 39%;
}

.contentx04 .request_item:nth-child(3) img {
  width: 24%;
}

.contentx04 .request_item:nth-child(4) img {
  width: 24%;
}

.contentx04 .request_item span {
  font-size: min(3.45vw, 14px);
  font-weight: bold;
  line-height: 1.5;
  display: block;
  text-align: left;
}

.contentx04 .request_flex {
  display: flex;
  gap: 2%;
}

.contentx04 .request_left {
  width: 50%;
  margin-top: 11px;
}

.request_subtitle.green {
  font-size: min(3.45vw, 14px);
  color: #B71717;
  font-weight: bold;
  letter-spacing: 0.01em;
  position: relative;
  display: flex;
  margin-bottom: 6px;
  padding-left: 22px;
}

.request_subtitle.green::before {
  content: '';
  width: 20px;
  height: 4px;
  display: inline-block;
  background: #B71717;
  border-radius: 2px;
  position: absolute;
  top: 0;
  left: 0;
  bottom: 0;
  margin: auto;
  transform: rotate(45deg);
}

.request_subtitle.green::after {
  content: '';
  width: 20px;
  height: 4px;
  display: inline-block;
  background: #B71717;
  border-radius: 2px;
  position: absolute;
  top: 0;
  left: 0;
  bottom: 0;
  margin: auto;
  transform: rotate(-45deg);
}

.request_subtitle.red {
  font-size: min(3.45vw, 14px);
  color: #bc2222;
  font-weight: bold;
  letter-spacing: 0.01em;
  position: relative;
  display: flex;
  margin-bottom: 6px;
  padding-left: 30px;
}

.request_subtitle.red::before {
  content: '';
  width: 20px;
  height: 20px;
  background-color: #fff;
  border: 3px solid #bc2221;
  border-radius: 50%;
  position: absolute;
  left: 0;
  top: 0;
  bottom: 0;
  margin: auto;
}

.request_subtitle.red::after {
  content: '';
  width: 12px;
  height: 12px;
  background-color: #bc2221;
  border-radius: 50%;
  position: absolute;
  left: 7px;
  top: 0;
  bottom: 0;
  margin: auto;
}

.contentx04 .request_left table {
  border-collapse: collapse;
  font-size: min(2.8vw, 12px);
  font-weight: bold;
  width: 100%;
}

.contentx04 .request_left th,
td {
  border: 1px solid #6da65c;
  text-align: left;
  vertical-align: top;
  letter-spacing: 0.01em;
  padding: 0;
}

.contentx04 .request_left th {
  background: #eff5ed;
  font-weight: bold;
  text-align: center;
  letter-spacing: 0.01em;
  padding: 6px 2px;
  line-height: 1;
  vertical-align: middle;
  text-align: left;
}

.contentx04 .request_left th:nth-child(1) {
  width: 23%;
}

.contentx04 .request_left th:nth-child(2) {
  width: 15%;
}

.contentx04 .request_left th:nth-child(4) {
  width: 16%;
}

.contentx04 .request_left th span {
  font-size: min(1.54vw, 9px);
}

.contentx04 .request_left td {
  background: #fff;
  line-height: 1;
  padding: 7px 2px;
  vertical-align: middle;
}

.contentx04 .request_left td span {
  font-size: min(1.54vw, 9px);
}

.contentx04 .request_left td span.sp-only {
  font-size: min(2.8vw, 12px);
}

.contentx04 .request_left .nowrap {
  white-space: nowrap;
}

.contentx04 .request_left .highlight {
  background: #fddd6e;
  font-weight: bold;
}

.contentx04 .request_left .right {
  text-align: right;
}

.contentx04 .request_left .no-border-top {
  border-top: none;
}

.contentx04 .request_left .no-border-bottom {
  border-bottom: none;
}

.contentx04 .request_right {
  border: 2px solid #bc2221;
  width: 50%;
  padding: 11px 8px;
}

.contentx04 .request_right table {
  border-collapse: collapse;
  font-size: min(2.8vw, 12px);
  font-weight: bold;
  width: 100%;
}

.contentx04 .request_right th,
td {
  border: 1px solid #6da65c;
  text-align: left;
  vertical-align: top;
  letter-spacing: 0.01em;
  padding: 0;
}

.contentx04 .request_right th {
  background: #eff5ed;
  font-weight: bold;
  text-align: center;
  letter-spacing: 0.01em;
  padding: 6px 2px;
  line-height: 1;
  vertical-align: middle;
  text-align: left;
}

.contentx04 .request_right th:nth-child(1) {
  width: 23%;
}

.contentx04 .request_right th:nth-child(2) {
  width: 15%;
}

.contentx04 .request_right th:nth-child(4) {
  width: 16%;
}

.contentx04 .request_right th span {
  font-size: min(1.54vw, 9px);
}

.contentx04 .request_right td {
  background: #fff;
  line-height: 1;
  padding: 7px 2px;
  vertical-align: middle;
}

.contentx04 .request_right td span {
  font-size: min(1.54vw, 9px);
}

.contentx04 .request_right td span.sp-only {
  font-size: min(2.8vw, 12px);
}

.contentx04 .request_right .highlight {
  background: #fddd6e;
  font-weight: bold;
}

.contentx04 .request_right .right {
  text-align: right;
}

.contentx04 .request_right .pickup td {
  background: #f6e2e2;
  color: #bc2222;
}

.contentx04 .request_right .note {
  font-size: min(1.2vw, 7px);
  color: #bc2222;
}

.contentx04 .request_text {
  font-size: min(1.72vw, 10px);
  margin-top: 4px;
  line-height: 1.6;
  font-weight: bold;
  text-align: left;
  letter-spacing: 0.01em;
}

.contentx04 .request_text span {
  color: #bc2222;
}

.contentx04 .heading {
  font-size: min(3.6vw, 16px);
  font-weight: bold;
  line-height: 2;
  letter-spacing: 0.01em;
  margin-top: 60px;
}

.contentx04 .heading span {
  display: block;
  font-size: min(3.59vw, 20px);
}

.contentx04 .heading span strong {
  color: #B71717;
}

.contentx04 .cmn-btn_01 {
  margin: 20px auto 0;
}

.contentx04 .description {
  padding: 16px 0;
  color: #46341E;
  font-size: 3.59vw;
  line-height: 4.8vw; /* Adjust this value as needed */
}

.contentx04 .inner2 {
  width: 100%;
  margin-top: 28px;
  margin-bottom: 19px;
  max-width: 765px;
}

.contentx04 .inner3 {
  width: 100%;
  margin-bottom: 19px;
  max-width: 765px;
}

.contentx04 .co61l {
  max-width: 765px;
  width: 100%;
}

.contentx04 .co6d:last-child {
  border-bottom: 2px solid;
}

.contentx04 .co6d.open:last-child {
  border-bottom: 2px solid;
}

.contentx04 .co6main {
  padding: 30px 15px;
  margin: 0px auto 20px;
}

.contentx04 .co6tit {
  height: 61px;
  display: flex;
  justify-content: flex-start;
  align-items: center;
  padding: 0 15px;
  border-top: 2px solid;
}

.contentx04 .co6tit h3 {
  font-size: 2rem;
  margin-left: 10px;
}

.contentx04 .lbar {
  position: relative;
  padding-left: 20px;
  text-align: left;
}

.contentx04 .lbar:before {
  position: absolute;
  content: '';
  width: 4px;
  height: 35px;
  background: #669f4f;
  left: 0;
  top: 0;
  bottom: 0;
  margin: auto;
}

.contentx04 .plan-tag {
  display: flex;
  justify-content: space-between;
  align-items: center;
}

.contentx04 .tag {
  width: fit-content;
  padding: 0px 12px;
  height: 25px;
  display: flex;
  justify-content: center;
  align-items: center;
  border: 1px solid;
  margin: 10px 0 10px;
  font-size: 1.2rem;
  border-radius: 50px;
  margin-right: 35px;
}

.contentx04 .sub-text {
  font-size: 3.59;
  text-align: left;
}

.contentx04 .priced {
  margin-top: 0px;
  clear: both;
}

.contentx04 .price {
  display: flex;
  align-items: center;
}

.contentx04 .prip1 {
  padding: 0px 13.5px;
  font-size: min(3.59vw, 18px);
  background-color: #46341E;
}

.contentx04 .bggr {
  background-color: #B71717;
}

.contentx04 .brawn {
  color: #46341E;
}

.contentx04 .mini-text {
  font-size: min(3.59vw, 14px);
  text-align: left;
  font-weight: 100;
}

.contentx04 .img-position {
  position: relative;
  float: right;
  margin-top: -10px;
  margin-bottom: -20px;
}

.contentx04 .img-position2 {
  position: relative;
  float: right;
  margin-top: 10px;
  margin-bottom: -10px;
}

.contentx04 .img-position3 {
  position: relative;
  float: right;
  margin-top: 10px;
  margin-bottom: -10px;
}

.contentx04 .co62 {
  border-top: 2px dotted #46341E;
  padding: 20px 0;
  margin-bottom: 0px;
}

.contentx04 .co63 {
  border-top: 2px dotted #46341E;
  padding-top: 20px;
  padding-bottom: 0px;
  margin-bottom: 0px;
}

.contentx05 {
  margin: 20px auto;
  text-align: center;
  width: 85%;
  max-width: 910px;
}

.contentx05 .subtitle {
  border-top: 3px solid #B71717;
  border-bottom: 3px solid #B71717;
  padding: 28px 0;
  color: #B71717;
  font-size: min(5.13vw, 28px);
  line-height: 0.8;
  margin-bottom: 28px;
  font-weight: bold;
}

.contentx05 .subtitle-disc {
  font-size: min(2.63vw, 20px);
}

.contentx05 .description {
  padding: 16px 0;
  color: #46341E;
  font-size: 3.59vw;
  line-height: 4.8vw; /* Adjust this value as needed */
}

.contentx05 table {
  border-collapse: separate;
  border-spacing: 0;
  margin-left: auto;
  margin-right: auto;
  width: 98%;
}

.contentx05 td,
th {
  padding: 3px;
  width: 30px;
  height: 25px;
  border: 1px solid #595959;
  text-align: center;
  vertical-align: middle;
}

.contentx05 td:nth-child(1),
.contentx05 th:nth-child(1) {
  width: 41.18%;
}

.contentx05 td:nth-child(2),
.contentx05 th:nth-child(2),
.contentx05 td:nth-child(3),
.contentx05 th:nth-child(3) {
  width: 29.41%;
}

.contentx05 .cell1,
.cell2,
.cell3 {
  font-size: min(2.9vw, 16px);
  font-weight: bold;
}

.contentx05 .cell1 {
  border: none;
}

.contentx05 .cell2 {
  border: none;
  border-top-left-radius: 5px;
}

.contentx05 .cell3 {
  border: none;
  background-color: #B71717;
  border-top-right-radius: 5px;
  color: #ffffff;
}

.contentx05 .cell4 {
  border-right: none;
  background-color: #ddd6be;
}

.contentx05 .cell5,
.cell6,
.cell8,
.cell9,
.cell11,
.cell12,
.cell14,
.cell15 {
  font-size: min(3.4vw, 16px);
}

.contentx05 .cell4,
.cell7,
.cell10,
.cell13 {
  font-size: min(3.7vw, 16px);
  font-weight: bold;
}

.contentx05 .cell5 {
  border-right-style: dotted;
}

.contentx05 .cell8 {
  border-right-style: dotted;
}

.contentx05 .cell11 {
  border-right-style: dotted;
}

.contentx05 .cell14 {
  border-right-style: dotted;
}

.contentx05 .cell6 {
  border-left: none;
}

.contentx05 .cell9 {
  border-left: none;
}

.contentx05 .cell12 {
  border-left: none;
}

.contentx05 .cell15 {
  border-left: none;
}

.contentx05 .cell7 {
  border-right: none;
  background-color: #ddd6be;
}

.contentx05 .cell10 {
  border-right: none;
  background-color: #ddd6be;
}

.contentx05 .cell13 {
  border-right: none;
  background-color: #ddd6be;
}

.contentx05 th {
  background: #f0e6cc;
}

.contentx05 tbody tr:nth-child(n + 2) td {
  background-color: #ffffff;
  height: 94px;
}

.contentx05 tbody tr:nth-child(1) td {
  height: 48px;
}

.contentx05 .price-wrapper {
  text-align: right;
  display: inline-block;
  width: 100%;
}

.contentx05 .price-wrapper {
  display: flex;
  flex-direction: column;
  align-items: flex-end;
}

.contentx05 .price-font,
.contentx05 .tax-font {
  text-align: right;
  padding-right: 8px;
}

.contentx05 .tax-font {
  font-size: min(3.4vw, 16px);
  font-weight: bold;
}

.contentx05 .price-font {
  font-size: min(6.15vw, 32px);
  font-weight: bold;
}

.contentx05 .supplement-text {
  text-align: left;
  font-size: min(3.59vw, 16px);
}

.contentx06 {
  margin: 20px auto;
  text-align: center;
  width: 85%;
  max-width: 910px;
}

.contentx06 .subtitle {
  border-top: 3px solid #B71717;
  border-bottom: 3px solid #B71717;
  padding: 28px 0;
  color: #B71717;
  font-size: min(5.13vw, 28px);
  line-height: 0.8;
  margin-bottom: 28px;
  font-weight: bold;
}

.contentx06 .subtitle-disc {
  font-size: 3.59vw;
}

.contentx06 .description {
  padding: 16px 0;
  color: #46341E;
  font-size: 3.59vw;
  line-height: 4.8vw; /* Adjust this value as needed */
}

.contentx06 .information {
  width: 98%;
  height: min(30.7vw, 220px);
  background-color: #ddd6be;
  border-radius: 5px;
  display: flex;
  margin: 0 auto;
  align-items: center;
}

.contentx06 .information-text {
  margin: 10px auto; /* Horizontal padding */
  padding: 20px 0; /* Vertical padding */
  text-align: left;
  font-size: min(3.3vw, 20px);
  font-weight: bold;
}

.contentx07 {
  margin: 0 auto;
  text-align: center;
  width: 85%;
  max-width: 910px;
  padding: 101px 0 107px;
}

.contentx07 .title {
  font-size: min(6.15vw, 32px);
  text-align: center;
  line-height: 1.1;
  position: relative;
  z-index: 1;
  padding-bottom: 12px;
  color: #46341E;
}

.contentx07 .en {
  display: block;
  color: #B71717;
  font-weight: 700;
  font-size: min(3.45vw, 20px);
  letter-spacing: 0.3em;
  padding-bottom: 30px;
  text-align: center;
}

.contentx07 .subtitle {
  border-top: 3px solid #B71717;
  border-bottom: 3px solid #B71717;
  padding: 28px 0;
  color: #B71717;
  font-size: min(5.13vw, 28px);
  line-height: 0.8;
  margin-bottom: 28px;
  font-weight: bold;
}

.contentx07 .subtitle-disc {
  font-size: 3.59vw;
}

.contentx07 .description {
  padding: 16px 0;
  color: #46341E;
  font-size: 3.59vw;
  line-height: 4.8vw;
}

.contentx07 .accordion-001 {
  max-width: 800px;
  margin: 0 auto;
}

.contentx07 .mini-text {
  font-size: 3.59vw;
}

.contentx07 .accordion-001:not([open]) {
  margin-bottom: 12px;
}

.contentx07 .accordion-001[open] {
  margin-bottom: 12px;
}

.contentx07 .accordion-001 summary {
  display: flex;
  justify-content: start;
  align-items: center;
  position: relative;

  background-color: #ffffff;
  color: #46341E;
  font-weight: 600;
  cursor: pointer;
  border: 2px solid #46341E;
  border-radius: 10px;
  font-size: min(3.6vw, 16px);
  text-align: left;
  flex-shrink: 0; /* 追加 */
  font-weight: 500;
}

.contentx07 .accordion-001 summary .text-container {
  display: flex;
  align-items: center;
  padding: 1em 1.5em 1em 1em; /* text-containerにパディングを適用 */
  position: relative; /* この行を追加 */
  width: 95%;
  font-weight: 700;
}

.contentx07 .accordion-001 summary .text-container h3 {
  font-weight: 700;
}

.contentx07 .accordion-001 summary .icon-container {
  flex-shrink: 0;
  margin-right: 10px;
  width: min(10%, 24px);
}

.contentx07 .accordion-001 p .icon-container img {
  width: 24px; /* 画像サイズを適宜調整 */
  height: 24px;
}

.contentx07 .accordion-001[open] summary {
  border-radius: 10px 10px 0 0;
}

.contentx07 .accordion-001 summary::-webkit-details-marker {
  display: none;
}

.contentx07 .accordion-001 summary::after {
  /* アイコンを右パディング内に配置 */
  /* 元の transform: translateY(-25%) rotate(45deg); を修正 */
  transform: translate(-50%, -25%) rotate(45deg);
  right: 10px; /* 新規に追加: アイコンを右パディングの10px手前に配置 */
  position: absolute; /* 新規に追加: アイコンの位置を絶対位置に設定 */
  width: 9px;
  height: 9px;
  margin-left: 10px;
  border-bottom: 2px solid #46341E;
  border-right: 2px solid #46341E;
  content: '';
  transition: transform 0.3s;
}

.contentx07 .accordion-001[open] summary::after {
  transform: translate(-50%, 25%) rotate(225deg); /* Y軸のtranslateの値を調整 */
  transform-origin: 50% 50%; /* 追加 */
}

.contentx07 .accordion-001 p {
  display: flex;
  align-items: start; /* 文字列と画像の位置を揃えます */
  transform: translateY(-10px);
  opacity: 0;
  margin: 0;
  padding: 1em 1em;
  background-color: #FFF5F5;
  color: #46341E;
  transition: transform 0.5s, opacity 0.5s;
  border: 2px solid #46341E;
  border-top: none;
  border-radius: 0 0 10px 10px;
}

.contentx07 .accordion-001 p .icon-container {
  flex-shrink: 0;
  margin-right: 10px; /* 画像とテキストの間隔を調整 */
}

.contentx07 .accordion-001 p .mini-text {
  font-size: 3.59vw;
}

.contentx07 .accordion-001[open] p {
  transform: none;
  opacity: 1;
  font-size: min(3.6vw, 16px);
  text-align: left;
}

.contentx07 .accordion-001 .qa-q {
  font-size: 32px;
  color: #B71717;
}

.contentx07 .heading {
  font-size: min(3.6vw, 16px);
  font-weight: bold;
  line-height: 2;
  letter-spacing: 0.01em;
  margin-top: 60px;
}

.contentx07 .heading span {
  display: block;
  font-size: min(3.59vw, 20px);
}

.contentx07 .heading span strong {
  color: #B71717;
}

.contentx07 .cmn-btn_01 {
  margin: 20px auto 0;
}

.price-qa .contentx07 {
  padding: 28px 0 20px;
  font-family: 'Zen Maru Gothic', sans-serif;
}

.price-qa .contentx07 .title {
  color: #B71717;
  font-size: min(6.15vw, 32px);
  line-height: 1.1;
  padding-bottom: 12px;
}

.contentx-fix {
  padding: 20px 0 0 !important;
}

.contentx08 {
  margin: 0 auto;
  padding:min(12vh, 200px) 0 6vh;
  text-align: center;
  width: 85%;
  max-width: 910px;
}

.contentx08_wrap{
  width: 100%;
  background-color:#ffffff;
}

.contentx08 .title {
  font-size: min(6.15vw, 32px);
  text-align: center;
  line-height: 1.1;
  position: relative;
  z-index: 1;
  padding-bottom: 12px;
  color: #46341E;
}

.contentx08 .en {
  display: block;
  color: #B71717;
  font-weight: 700;
  font-size: min(3.45vw, 20px);
  letter-spacing: 0.3em;
  padding-bottom: 43px;
  text-align: center;
}

.contentx08 .subtitle {
  display: flex;
  align-items: center;
  justify-content: center;
  border-top: 3px solid #B71717;
  border-bottom: 3px solid #B71717;
  padding: 28px 0;
  color: #B71717;
  font-size: min(4.6154vw, 28px);
  font-weight: bold;
}

.contentx-support {
  font-size: min(5.13vw, 28px) !important;
}

.contentx08 .subtitle img {
  margin-right: 10px;
}

.contentx08 .description {
  padding-bottom: 40px;
  color: #46341E;
  font-size: min(3.59vw, 16px);
  line-height: 2;
  font-weight: 500;
  margin-bottom: min(6vh, 20px);
  text-align: center;
}

.contentx08 .description .margin-up {
  margin-top: 10px;
}

.contentx08 .description-mini {
  padding: 16px 0;
  color: #46341E;
  font-size: 3.59vw;
  line-height: 4.8vw;
}

.contentx08 .accordion-001 {
  max-width: 800px;
  margin: 0 auto;
}

.contentx08 .mini-text {
  font-size: 3.59vw;
}

.contentx08 .accordion-001:not([open]) {
  margin-bottom: 12px;
}

.contentx08 .accordion-001[open] {
  margin-bottom: 12px;
}

.contentx08 .accordion-001 summary {
  display: flex;
  justify-content: start;
  align-items: center;
  position: relative;

  background-color: #ffffff;
  color: #46341E;
  font-weight: 600;
  cursor: pointer;
  border: 2px solid #46341E;
  border-radius: 10px;
  font-size: min(3.6vw, 16px);
  text-align: left;
  flex-shrink: 0; /* 追加 */
  font-weight: bold;
}

.contentx08 .accordion-001 summary .text-container {
  display: flex;
  align-items: center;
  padding: 1em 1.5em 1em 1em; /* text-containerにパディングを適用 */
  position: relative; /* この行を追加 */
}

.contentx08 .accordion-001 summary .icon-container {
  flex-shrink: 0;
  margin-right: 10px;
}

.contentx08 .accordion-001 summary span {
  flex-grow: 1; /* 追加 */
}

.contentx08 .accordion-001 p .icon-container img {
  width: 24px; /* 画像サイズを適宜調整 */
  height: 24px;
}

.contentx08 .accordion-001[open] summary {
  border-radius: 10px 10px 0 0;
}

.contentx08 .accordion-001 summary::-webkit-details-marker {
  display: none;
}

.contentx08 .accordion-001 summary::after {
  /* アイコンを右パディング内に配置 */
  /* 元の transform: translateY(-25%) rotate(45deg); を修正 */
  transform: translate(-50%, -25%) rotate(45deg);
  right: 15px; /* 新規に追加: アイコンを右パディングの10px手前に配置 */
  position: absolute; /* 新規に追加: アイコンの位置を絶対位置に設定 */
  width: 9px;
  height: 9px;
  margin-left: 10px;
  border-bottom: 2px solid #46341E;
  border-right: 2px solid #46341E;
  content: '';
  transition: transform 0.3s;
}

.contentx08 .accordion-001[open] summary::after {
  transform: translate(-50%, 25%) rotate(225deg); /* Y軸のtranslateの値を調整 */
  transform-origin: 50% 50%; /* 追加 */
}

.contentx08 .accordion-001 p {
  display: flex;
  align-items: start; /* 文字列と画像の位置を揃えます */
  transform: translateY(-10px);
  opacity: 0;
  margin: 0;
  padding: 1em 2em 1em 2em;
  background-color: #fddd6e;
  color: #46341E;
  transition: transform 0.5s, opacity 0.5s;
  border: 2px solid #46341E;
  border-top: none;
  border-radius: 0 0 10px 10px;
}

.contentx08 .accordion-001 p .icon-container {
  flex-shrink: 0;
  margin-right: 10px; /* 画像とテキストの間隔を調整 */
}

.contentx08 .accordion-001 p .mini-text {
  font-size: 3.59vw;
}

.contentx08 .accordion-001[open] p {
  transform: none;
  opacity: 1;
  font-size: min(3.6vw, 16px);
  text-align: left;
}

.contentx08 .accordion-001 .qa-q {
  font-size: 32px;
  color: #B71717;
}

.contentx08 .line-marker {
  background: linear-gradient(transparent 60%, #fddd6e 0%);
}

.contentx10 {
  margin: 0 auto;
  text-align: center;
  width: 85%;
  max-width: 1072px;
  padding: 100px 0;
}

.contentx10 .title {
  font-size: min(6.15vw, 32px);
  text-align: center;
  line-height: 1.1;
  position: relative;
  z-index: 1;
  padding-bottom: 12px;
  color: #46341E;
}

.contentx10 .en {
  display: block;
  color: #B71717;
  font-weight: 700;
  font-size: min(3.45vw, 20px);
  letter-spacing: 0.3em;
  padding-bottom: 30px;
  text-align: center;
}

.contentx10 .subtitle {
  border-top: 3px solid #B71717;
  border-bottom: 3px solid #B71717;
  padding: 28px 0;
  color: #B71717;
  font-size: min(5.13vw, 28px);
  line-height: 1.4;
  margin-bottom: 28px;
  font-weight: bold;
}

.contentx10 .subtitle-disc {
  font-size: 3.59vw;
}

.contentx10 .description {
  padding: 16px 0;
  color: #46341E;
  font-size: 3.59vw;
  line-height: 4.8vw;
}

.contentx10 .accordion-001 {
  max-width: 800px;
  margin: 0 auto;
}

.contentx10 .mini-text {
  font-size: 3.59vw;
}

.contentx10 .accordion-001:not([open]) {
  margin-bottom: 12px;
}

.contentx10 .accordion-001[open] {
  margin-bottom: 12px;
}

.contentx10 .accordion-001 summary {
  display: flex;
  justify-content: start;
  align-items: center;
  position: relative;
  background-color: #ffffff;
  color: #46341E;
  font-weight: 600;
  cursor: pointer;
  border: 2px solid #46341E;
  border-radius: 10px;
  font-size: min(3.6vw, 16px);
  text-align: left;
  flex-shrink: 0; /* 追加 */
  font-weight: 500;
}

.contentx10 .accordion-001 summary .text-container {
  display: flex;
  align-items: center;
  padding: 1em 1.5em 1em 1em; /* text-containerにパディングを適用 */
  position: relative; /* この行を追加 */
  width: 95%;
  font-weight: 500;
}

.contentx10 .accordion-001 summary .icon-container {
  flex-shrink: 0;
  margin-right: 10px;
}

.contentx10 .accordion-001 p .icon-container img {
  width: 24px; /* 画像サイズを適宜調整 */
  height: 24px;
}

.contentx10 .accordion-001[open] summary {
  border-radius: 10px 10px 0 0;
}

.contentx10 .accordion-001 summary::-webkit-details-marker {
  display: none;
}

.contentx10 .accordion-001 summary::after {
  /* アイコンを右パディング内に配置 */
  /* 元の transform: translateY(-25%) rotate(45deg); を修正 */
  transform: translate(-50%, -25%) rotate(45deg);
  right: 10px; /* 新規に追加: アイコンを右パディングの10px手前に配置 */
  position: absolute; /* 新規に追加: アイコンの位置を絶対位置に設定 */
  width: 9px;
  height: 9px;
  margin-left: 10px;
  border-bottom: 2px solid #46341E;
  border-right: 2px solid #46341E;
  content: '';
  transition: transform 0.3s;
}

.contentx10 .accordion-001[open] summary::after {
  transform: translate(-50%, 25%) rotate(225deg); /* Y軸のtranslateの値を調整 */
  transform-origin: 50% 50%; /* 追加 */
}

.contentx10 .accordion-001 p {
  display: flex;
  align-items: start; /* 文字列と画像の位置を揃えます */
  transform: translateY(-10px);
  opacity: 0;
  margin: 0;
  padding: 1em 1em;
  background-color: #FFF5F5;
  color: #46341E;
  transition: transform 0.5s, opacity 0.5s;
  border: 2px solid #46341E;
  border-top: none;
  border-radius: 0 0 10px 10px;
}

.contentx10 .accordion-001 p .icon-container {
  flex-shrink: 0;
  margin-right: 10px; /* 画像とテキストの間隔を調整 */
}

.contentx10 .accordion-001 p .mini-text {
  font-size: 3.59vw;
}

.contentx10 .accordion-001[open] p {
  transform: none;
  opacity: 1;
  font-size: min(3.59vw, 16px);
  text-align: left;
}

.contentx10 .accordion-001 .qa-q {
  font-size: 32px;
  color: #B71717;
}

.contentx11 {
  margin: 20px auto;
  text-align: center;
  width: 85%;
}

.contentx11 .subtitle {
  border-top: 3px solid #B71717;
  border-bottom: 3px solid #B71717;
  padding: 28px 0;
  color: #B71717;
  font-size: min(5.13vw, 28px);
  line-height: min(6.5vw, 36px);
  margin-bottom: 28px;
  text-align: center;
  font-weight: bold;
}

.contentx11 .left-align,
.contentx11 .right-align {
  display: flex;
}

.contentx11 .left-align {
  margin: 0 auto;
  max-width: 600px;
}

.contentx11 .right-align {
  margin: 0 auto;
  max-width: 600px;
}

.contentx11 .left-img,
.contentx11 .right-img {
  width: 100%;
  margin: 0;
}

.contentx11 .green-div,
.contentx11 .yellow-div {
  width: 60%;
  margin: 0 auto;
  height: 28px;
  display: flex;
  justify-content: center;
  align-items: center;
  color: #fff;
  border-radius: 50px;
  box-shadow: 4px 4px 4px rgba(0, 0, 0, 0.25);
}

.contentx11 .green-div {
  background-color: #B71717;
  margin-top: 10px;
  margin-bottom: 28px;
}

.contentx11 .yellow-div {
  background-color: #fddd6e;
  color: #000;
  border-radius: 5px;
  margin-top: 8px;
  margin-bottom: 28px;
}

.contentx11 .green-div p {
  font-size: min(3.59vw, 14px);
  font-weight: bold;
}

.contentx11 .yellow-div p {
  font-size: min(3.59vw, 14px);
  font-weight: bold;
  color: #46341E;
}

.contentx12 {
  margin: 7vh auto;
  text-align: center;
  width: 85%;
  max-width: 1072px;
}

.contentx12 .description {
  padding: 16px 0;
  color: #46341E;
  font-size: min(2.8vw, 12px);
  line-height: min(3.2vw, 14px);
  font-weight: bold;
}

.contentx12 .subtitle {
  border-top: 3px solid #B71717;
  border-bottom: 3px solid #B71717;
  padding: 28px 0;
  color: #B71717;
  font-size: min(5.13vw, 28px);
  line-height: 1.4;
  margin-bottom: 5px;
  text-align: center;
  font-weight: bold;
}

.contentx12 .img-container {
  display: flex;
  justify-content: center;
  align-items: center;
  margin: 15px auto;
}

.contentx12 .worries-container {
  margin: 10px auto;
}

.contentx12 .left-text {
  text-align: left;
}

.contentx12 .fukidashi-container {
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: flex-start;
}

.contentx12 .img-with-text {
  position: relative;
  display: flex;
  justify-content: center;
  align-items: center;
}

.contentx12 .img-with-text img {
  width: 100%;
  height: auto;
}

.contentx12 .centered-text {
  position: absolute;
  z-index: 1;
  text-align: left;
  width: 85%;
  top: 20%;
}

.contentx12 .centered-text2 {
  position: absolute;
  z-index: 1;
  text-align: left;
  width: 85%;
  top: 20%;
}

.contentx12 .thinking-image {
  margin-left: 20px; /* adjust as needed */
}

.contentx12 .alert-text {
  color: #B71717;
  font-size: min(3.96vw, 20px);
  line-height: min(3.96vw, 32px);
}

.contentx12 .alert-sub-text {
  color: #46341E;
  font-size: min(3.59vw, 16px);
  line-height: min(3.8vw, 28px);
  text-align: left;
  padding: 16px 0;
}

.contentx12 .green-div {
  background-color: #B71717;
  margin-top: 10px;
  margin-bottom: 28px;
}

.contentx12 .green-div,
.contentx12 .yellow-div {
  width: 60%;
  margin: 0 auto;
  height: 28px;
  display: flex;
  justify-content: center;
  align-items: center;
  color: #fff;
  border-radius: 50px;
  box-shadow: 4px 4px 4px rgba(0, 0, 0, 0.25);
  font-weight: bold;
}

.contentx13 {
  background-color: #fff;
}

.contentx13 .child {
  margin: 7vh auto;
  text-align: center;
  width: 85%;
  padding: 2vh;
}

.contentx13 .container {
  margin: 1vh auto;

  width: 85%;
}

.contentx13 .text {
  font-size: min(3.6vw, 16px);
  text-align: left;
}

/* 吹き出し */

.fukidashi {
  text-align: center;
}

.fukidashi span {
  position: relative;
  font-size: 2.4rem;
  font-weight: 700;
}
.fukidashi span::before,
.fukidashi span::after {
  content: '';
  display: inline-block;
  background: #46341E;
  width: 4px;
  position: absolute;
}
.fukidashi span::before {
  left: 0;
}
.fukidashi span::after {
  right: 0;
}
@media screen and (min-width: 768px) {
  .fukidashi span {
    padding: 0 23px;
  }
  .fukidashi span::before,
  .fukidashi span::after {
    height: 26px;
    bottom: 0px;
  }
  .fukidashi span::before {
    transform: rotate(-30deg);
  }
  .fukidashi span::after {
    transform: rotate(30deg);
  }
}
@media screen and (max-width: 767px) {
  .fukidashi span {
    display: inline-block;
    padding: 0 20px;
    font-size: 1.8rem;
  }
  .fukidashi span::before,
  .fukidashi span::after {
    height: 26px;
    bottom: -3px;
  }
  .rec1 .fukidashi span::before,
  .rec1 .fukidashi span::after {
    height: 42px;
    bottom: 0px;
  }
  .fukidashi span::before {
    transform: rotate(-30deg);
  }
  .fukidashi span::after {
    transform: rotate(30deg);
  }

  .ad2 .fukidashi span::before,
  .ad2 .fukidashi span::after {
    background: #669f4f;
  }

  .cv1 .fukidashi span::before,
  .cv1 .fukidashi span::after {
    background: #46341E;
  }
}

.progressbar {
  display: flex;
  flex-wrap: wrap;
  width: 100%;
  max-width: 1200px;
  margin: 30px auto;
}

.progressbar .item {
  position: relative;
  text-align: center;
  display: flex;
  align-items: center;
  justify-content: center;
  height: 122px;
  line-height: 1.5;
  background: #669f4f;
  color: #fff;
  font-size: 2.8rem;
}

.progressbar .itemd {
  display: flex;
  flex-direction: column;
  width: 20%;
}

.progressbar .itemd p {
  text-align: center;
  font-size: 1.8rem;
  margin: 10px auto;
  font-weight: 700;
  line-height: 1.4;
  z-index: 3;
}

.progressbar .item::after {
  position: absolute;
  z-index: 2;
  top: 0;
  bottom: 0;
  content: '';
  margin: auto;
  width: 0;
  height: 0;
  border-style: solid;
  border-width: 61px 0 61px 52px;
  border-color: transparent transparent transparent #669f4f;
  right: -4px;
}
.progressbar .item::before {
  position: absolute;
  z-index: 2;
  top: 0;
  bottom: 0;
  content: '';
  margin: auto;
  right: -23px;
  width: 0;
  height: 0;
  border-style: solid;
  border-width: 80px 0 80px 70px;
  border-color: transparent transparent transparent #f7f3ea;
}
.progressbar .itemd:last-child .item:before,
.progressbar .itemd:last-child .item:after {
  display: none;
}

/*リンク表示方法*/

a {
  text-decoration: none;
}

a:link {
  color: #46341E;
}

a:visited {
  color: #46341E;
}

a:active {
  color: #333;
}

a:hover {
  opacity: 0.7;
}

a:hover img {
  opacity: 0.7;
  filter: alpha(opacity=70);
}
.hLogo a:hover img {
  opacity: 1;
}

.hLogo a:hover {
  opacity: 1;
}

.btnarea {
  display: flex;
  justify-content: space-between;
  align-items: center;
  max-width: 810px;
  width: 95%;
  margin: auto;
}

.btnarea2 {
  display: flex;
  justify-content: center;
  align-items: center;
  max-width: 810px;
  width: 95%;
  margin: auto;
}

a.btn {
  display: flex;
  max-width: 385px;
  width: 95%;
  height: 74px;
  align-items: center;
  justify-content: center;
  background: #fff;
  border: 4px solid #46341E;
  border-radius: 37px;
  font-weight: 700;
  margin: auto;
  font-size: 1.8rem;
}

a.btn2 {
  display: flex;
  max-width: 238px;
  width: 63%;
  height: 62px;
  align-items: center;
  justify-content: center;
  background: #fbb03b;
  border: 4px solid #fff;
  border-radius: 37px;
  font-weight: 700;
  margin: 1px;
  font-size: 1.8rem;
  box-shadow: 0px 5px 8px rgba(0, 0, 0, 0.4);
  color: white;
  font-size: min(6.15vw, 24px);
  font-weight: bold;
}

.btnarea .btn {
  margin: 0;
}

.btn img {
  margin-right: 15px;
}

.btn.linebtn {
  color: #fff;
  background: #2fc42d;
  border: none;
}

.card1l .btn.mailbtn {
  border: none;
}

.btn.grebtn {
  border: 4px solid #669f4f;
  color: #669f4f;
}

.btn.brobtn {
  border: 4px solid #46341E;
  background: #46341E;
  color: #fff;
}

/* color */
.white {
  color: #fff !important;
}
.green {
  color: #B71717 !important;
}
.orange {
  color: #f29436;
}
.yellow {
  color: #fddd6e;
}
.blue {
  color: #3b6068;
}
.gold {
  color: #988650;
}

.bggol {
  background: #988650 !important;
}
.bgbl {
  background: #3b6068 !important;
}
.bgwh {
  background: #fff !important;
}
.bggre1 {
  background: #e8ede3 !important;
}
.bggre2 {
  background: #B71717 !important;
}
.bgye {
  background: #fddd6e !important;
}
.bgcr {
  background: #F5F4EF;
}
.bgor {
  background: #f29436 !important;
}
.bgbr {
  background: #46341E !important;
}
.bggra {
  background: #cccccc !important;
}

.yebar {
  position: relative;
}
.yebar:before {
  position: absolute;
  content: '';
  background: #fddd6e;
  width: 100%;
  height: 6px;
  bottom: 8px;
  left: 0;
  z-index: -1;
}

.lbar {
  position: relative;
  padding-left: 20px;
}

.lbar:before {
  position: absolute;
  content: '';
  width: 4px;
  height: 35px;
  background: #669f4f;
  left: 0;
  top: 0;
  bottom: 0;
  margin: auto;
}

.unbar {
  position: relative;
}

.unbar:before {
  position: absolute;
  content: '';
  width: 100%;
  height: 1px;
  background: #fff;
  bottom: 0;
  left: 0;
}

.bar2 {
  position: relative;
}

.bar2:before,
.bar2:after {
  position: absolute;
  content: '';
  width: 24px;
  height: 4px;
  background: #46341E;
  top: 0;
  bottom: 0;
  margin: auto;
}

.bar2:before {
  left: 0;
}

.bar2:after {
  right: 0;
}

/*-----------------------------------------------------------
PCサイズ
-----------------------------------------------------------*/

.pc,
.pc2 {
  display: block;
}

.sp,
.sp2 {
  display: none;
}

.pcTel {
  display: inline;
}

/*-----------------------------------------------------------
header
-----------------------------------------------------------*/

.fixed {
  position: fixed;
  width: 100%;
  z-index: 9999;
}

header {
  padding: 0 0 0 40px;
  width: 100%;
  margin: auto;
  display: flex;
  justify-content: space-between;
  align-items: center;
  background: #F5F4EF;
}

.hLogo {
  max-width: 255px;
}

.headerUl {
  margin: 0 0 0;
  display: flex;
  width: 80%;
  justify-content: flex-end;
  align-items: center;
}

.headerUl:after {
  content: '';
  display: block;
  clear: both;
}

.headerInc {
  font-size: 9px;
  font-weight: 400;
  margin-bottom: 5px;
}

.logo {
  width: 234px;
}

.logo a:hover img {
  opacity: 1;
}

.headerTel {
  margin-right: 25px;
}

.htlu {
  display: flex;
  font-size: 3.2rem;
  align-items: baseline;
  line-height: 1.3;
  font-weight: 700;
  letter-spacing: 2px;
}

.hteld {
  font-size: 1.2rem;
  font-weight: 500;
}

.hline {
  height: 80px;
  display: flex;
  justify-content: center;
  align-items: center;
  max-width: 250px;
  width: 30%;
  background: #2fc42d url(./img/hline.png) no-repeat right;
}

.hline.sp {
  display: none;
}

.hline p {
  font-weight: 700;
}

.hline p span {
  font-size: 1.8rem;
  letter-spacing: 1.6px;
}

.hline.green {
  background: #B71717;
  max-width: 158px;
}

.hline.orange {
  background: #eaa116;
  max-width: 158px;
}

.hline .menu-link {
  width: 100%;
  height: 100%;
  padding: 14px 0;
}

.hline .menu-link p {
  color: #fff;
  font-size: min(1.72vw, 10px);
  letter-spacing: 0.01em;
  text-align: center;
  font-weight: bold;
}

.hline .menu-link .box {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 5px;
}

.hline .menu-link .icon {
  width: 18px;
}

.hline .menu-link .box span {
  color: #fff;
  line-height: 1.2;
  font-size: min(3.6vw, 16px);
}

.hcon {
  height: 80px;
  display: flex;
  justify-content: center;
  align-items: center;
  max-width: 250px;
  width: 30%;
  background: #fddd6e url(./img/hmail.png) no-repeat right;
}

.hcon p {
  font-weight: 700;
}

.hcon p span {
  font-size: 1.8rem;
  letter-spacing: 2px;
}

/*-----------------------------------------------------------
テーブル共通
-----------------------------------------------------------*/

.Kiji table {
  border-collapse: separate;
  border-top: 3px solid #669f4f;
  border-bottom: 3px solid #669f4f;
  margin: 0 0 60px 0;
  width: 100%;
}

th {
}

td {
}

/*-----------------------------------------------------------
 nav
-----------------------------------------------------------*/
.header2 {
  height: 68px;
  width: 100%;
  display: flex;
  justify-content: center;
  align-items: center;
  background: #fff;
}

.h2d {
  width: 100%;
}

.h2d ul {
  display: flex;
  justify-content: center;
  align-items: center;
}

.h2d li {
  margin: auto 1%;
}

.h2d li a {
  color: #46341E;
  font-weight: 700;
  font-size: 1.4rem;
  letter-spacing: 2px;
}

/*-----------------------------------------------------------
#slide
-----------------------------------------------------------*/

#modal {
  display: none;
}

/*-----------------------------------------------------------
#cover
-----------------------------------------------------------*/

#cover {
  width: 100%;
  margin: 180px auto 0;
  display: flex;
  justify-content: center;
}

#cover img {
  margin: auto;
  padding: 0 20px;
}

.slider.pc {
  display: block;
}

.slider.sp {
  display: none;
}

/*-- 中ページカバー --*/

.cover {
  height: 200px;
  width: 100%;
  margin: 150px auto 0;
  display: flex;
  align-items: center;
  justify-content: center;
  position: relative;
  z-index: 1;
}

.cover:before {
  position: absolute;
  content: '';
  background: #F5F4EF;
  width: 100%;
  height: 100%;
  z-index: -1;
}

.responsive-img {
  width: 100%;
  height: auto;
  max-width: 1200px;
}

.interview .cover {
  margin: 80px auto 0;
  background: url(./img/interview/mv.jpg) no-repeat center;
  background-size: cover;
}

.contact .cover {
  background: url(./img/contact/mv.jpg) no-repeat center;
  background-size: cover;
}

.faq .cover {
  background: url(./img/faq/mv.jpg) no-repeat center;
  background-size: cover;
}

.reserve .cover {
  background: url(./img/reserve/mv.jpg) no-repeat center;
  background-size: cover;
}
.sitemap .cover {
  background: url(./img/sitemap/mv.jpg) no-repeat center;
  background-size: cover;
}

.dogsitter .cover {
  background: url(./img/dogsitter/mv.jpg) no-repeat center;
  background-size: cover;
}

.catsitter .cover {
  background: url(./img/catsitter/mv.jpg) no-repeat center;
  background-size: cover;
}

.littlecritter .cover {
  background: url(./img/littlecritter/mv.jpg) no-repeat center;
  background-size: cover;
}

.bprice .cover {
  background: url(./img/price/mv.jpg) no-repeat center;
  background-size: cover;
}

.about .cover {
  background: url(./img/about/mv.jpg) no-repeat center;
  background-size: cover;
}

.flow .cover {
  background: url(./img/flow/mv.jpg) no-repeat center;
  background-size: cover;
}
.staff .cover {
  background: url(./img/staff/mv.jpg) no-repeat center;
  background-size: cover;
}
.voice .cover {
  background: url(./img/voice/mv.jpg) no-repeat center;
  background-size: cover;
}
.column .cover {
  padding: 0 20px;
  background: url(./img/column/mv.jpg) no-repeat center;
  background-size: cover;
}
.blog .cover {
  background: url(./img/blog/mv.jpg) no-repeat center;
  background-size: cover;
}
.newsa .cover {
  background: url(./img/news/mv.jpg) no-repeat center;
  background-size: cover;
}

.area .cover {
  background: url(./img/area/mv.jpg) no-repeat center;
  background-size: cover;
}

.customer .cover {
  background: url(./img/customer/mv.jpg) no-repeat center;
  background-size: cover;
}

.cover h2,
.cover h1,
.cover_title {
  font-size: 4rem;
}

/*-----------------------------------------------------------
 #main
-----------------------------------------------------------*/

#main {
  width: 100%;
  margin: 110px auto 0;
}

.article #main {
  margin: 80px auto 0;
}
.article #main.area {
  margin: 16px auto 0;
}

.recruit #main {
  overflow: hidden;
}

#main.price-main {
  margin: 16px auto 0;
}

#main.flow-main {
  margin: 0 auto;
}

.inner {
  width: 95%;
  max-width: 1200px;
  margin: 0 auto;
}

.inner2 {
  width: 95%;
  max-width: 1040px;
  margin: 0 auto;
}

.inner3 {
  width: 95%;
  max-width: 880px;
  margin: 0 auto;
}

.inner--860 {
  width: 95%;
  max-width: 860px;
  margin: 0 auto;
}

.mainTit {
  font-size: 4rem;
  text-align: center;
  line-height: 1.1;
  position: relative;
  z-index: 1;
}

.mainTit .mid {
  font-size: 3.2rem;
}

.content01 {
  margin: 0 auto 160px;
  text-align: center;
  width: 95%;
}

.content01 .video {
  margin: 20px auto;
}

.video iframe {
  width: 100%;
  max-width: 960px;
  max-height: 540px;
}

.content02 {
  padding: 0px 0 180px;
  position: relative;
  z-index: 1;
}

.content02:before,
.content02:after {
  position: absolute;
  content: '';
  width: 130px;
  height: 95px;
  background: url(./img/co23.png) no-repeat;
  z-index: 0;
}

.content02:before {
  right: 13%;
  top: 0;
}

.content02:after {
  left: 10%;
  bottom: 120px;
  z-index: -1;
}

.abs1 {
  position: absolute;
  display: block;
  width: 110%;
  max-width: 2090px;
  height: 400px;
  border-radius: 50%;
  left: -5%;
  right: auto;
  top: -120px;
  margin: auto;
  z-index: -1;
}

.abs1.up {
  top: -90px;
}

.abs1.down {
  top: auto;
  bottom: -120px;
}

.content02 .inner2 {
  display: flex;
  justify-content: space-between;
  align-items: center;
}

.co1l {
  max-width: 480px;
  width: 48%;
}

.co1r {
  max-width: 430px;
  width: 48%;
}

.co1p {
  margin-top: 50px;
  font-weight: 500;
}

.abimg {
  position: absolute;
  content: '';
  bottom: 70px;
  right: 0;
  z-index: -1;
}

.abs2 {
  position: absolute;
  display: flex;
  width: 100%;
  bottom: -1px;
  justify-content: space-between;
}

.abs2l,
.abs2r {
  width: 49.9%;
  height: 70px;
  background: #f7f3ea;
  margin: auto;
  z-index: 1;
}

.abs2l {
  border-radius: 0 85px 0 0;
}

.abs2r {
  border-radius: 85px 0 0 0;
}

.content03 {
  padding: 40px 0 25px;
  position: relative;
  z-index: 1;
}

.content03:before,
.content03:after {
  position: absolute;
  content: '';
  width: 43%;
  height: 100%;
  z-index: -1;
}

.content03:before {
  background: url(./img/co32.png) no-repeat top right;
  left: 0;
  top: 8px;
}

.content03:after {
  background: url(./img/co33.png) no-repeat top left;
  right: 0;
  top: 10px;
  width: 44%;
}

.content03.reason {
  background: #fff;
  padding: 104px 0 47px;
}

.content03 .title {
  font-size: min(6.15vw, 32px);
  text-align: center;
  line-height: 1.1;
  position: relative;
  z-index: 1;
  padding-bottom: 12px;
  color: #46341E;
}

.content03 .en {
  display: block;
  color: #B71717;
  font-weight: 700;
  font-size: min(3.45vw, 20px);
  letter-spacing: 0.3em;
  padding-bottom: 30px;
  text-align: center;
}

.content03 .mainTit {
  display: flex;
  justify-content: center;
  align-items: center;
  flex-direction: column;
}

.content03 .mainTit img {
  max-width: 194px;
}

.content03 .mainTit .big {
  font-size: 5.6rem;
}

.content03 ul {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  align-items: baseline;
  margin: 0 auto 60px;
}

.content03 li {
  max-width: 580px;
  width: 49%;
  margin-top: 25px;
}

.content03 li .nom {
  font-size: 3.2rem;
  text-align: center;
  line-height: 0.8;
  position: relative;
}

.content03 li .nom:before {
  position: absolute;
  content: '';
  width: 83px;
  height: 83px;
  background: #B71717;
  border-radius: 50%;
  z-index: -1;
  left: 0;
  right: 0;
  margin: auto;
  top: -10px;
}

.co3d {
  background: #fff;
  border: 4px solid #46341E;
  padding: 15px 20px;
  min-height: 268px;
  position: relative;
}

.co3tit {
  display: flex;
  align-items: center;
  margin-bottom: 20px;
  padding-bottom: 20px;
  background-image: linear-gradient(to right, #46341E 3px, transparent 1px);
  background-size: 13px 3px;
  background-repeat: repeat-x;
  background-position: left bottom;
}

.co3tit h3 {
  margin-left: 10px;
  font-size: 1.8rem;
  color:#B71717;
}

.co3d:before,
.co3d:after {
  position: absolute;
  content: '';
  width: 0;
  height: 0;
  border-style: solid;
}

.co3d:before {
  border-width: 21px 21px 0 0;
  border-color: #46341E transparent transparent transparent;
  left: 0;
  top: 0;
}

.co3d:after {
  border-width: 0 0 21px 21px;
  border-color: transparent transparent #46341E transparent;
  right: 0;
  bottom: 0;
}

.content04 {
  padding: 80px 0 150px;
  position: relative;
  z-index: 1;
  background-color:#F5F4EF;
}

.content04 .title {
  font-size: min(6.15vw, 32px);
  text-align: center;
  line-height: 1.1;
  position: relative;
  z-index: 1;
  padding-top: 30px;
  padding-bottom: 12px;
  color: #46341E;
}

.content04 .en {
  display: block;
  color: #B71717;
  font-weight: 700;
  font-size: min(3.45vw, 20px);
  letter-spacing: 0.3em;
  padding-bottom: 30px;
  text-align: center;
}

.abs3 {
  position: absolute;
  top: 0;
  left: 0;
  background-color: #fff;
  width: 100%;
  height: 167px;
  clip-path: polygon(0 0, 100% 0%, 50% 100%);
  z-index: -1;
}

.ribon {
  background: #f29436;
  font-size: 2.4rem;
  font-weight: 700;
  width: fit-content;
  margin: 0px auto 20px;
  padding: 12px 20.5px;
  position: relative;
}

.ribon:before,
.ribon:after {
  position: absolute;
  content: '';
  width: 61px;
  height: 65px;
  bottom: -17px;
}

.ribon:before {
  background: url(./img/co4l.png) no-repeat;
  left: -40px;
}

.ribon:after {
  background: url(./img/co4r.png) no-repeat;
  right: -40px;
}

.bgte {
  position: relative;
  padding: 50px;
}

.bgte:before {
  position: absolute;
  content: '';
  background: url(./img/te.png) no-repeat;
  top: 0;
  bottom: 0;
  left: 0;
  right: 0;
  margin: auto;
  width: 116px;
  height: 94px;
}

.co4p {
  text-align: center;
  font-weight: 500;
  margin: 0 auto 0px;
}

.content04 ul {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  margin: 50px auto;
}

.content04 li {
  max-width: 270px;
  width: 24%;
  margin-bottom: 50px;
  position: relative;
  margin: 0 0.5% 50px;
  display: flex;
  flex-direction: column;
}

.content04 li a {
  flex-grow: 1;
  display: flex;
  flex-direction: column;
}

.content04 li h3 {
  font-size: 1.6rem;
  padding: 10px 0;
  border-bottom: 4px dotted;
}

.content04 li p {
  font-size: 1.4rem;
  padding: 10px 0;
}

.content04:before {
  position: absolute;
  content: '';
  background: url(./img/co42.png) no-repeat center bottom;
  background-size: contain;
  max-width: 1200px;
  width: 95%;
  height: 300px;
  left: 0;
  right: 0;
  margin: auto;
  bottom: -82px;
  z-index: -1;
}

.content04 li .img {
  margin-bottom: 12px !important;
}

.content04 li dl dt {
  font-size: min(3.6vw, 16px);
  margin-bottom: 0;
}

.content04 li dl dt h3 {
  border-bottom: none;
  padding: 0 0 10px;
}

.content04 li dl dt span {
  font-size: min(3.45vw, 20px);
}

.content04 li .p-staffArchive__area {
  flex-grow: 1;
}

.content04 li .p-staffArchive__area span {
  font-size: min(3.45vw, 14px);
  border-bottom: none;
  font-weight: 700;
}

.content04 li .p-staffArchive__area p {
  padding: 0;
  font-family: 'Noto Sans JP', sans-serif;
  font-weight: 400;
  font-size: min(3.45vw, 14px);
}

.content04 li .p-staffArchive__link {
  background: #46341E;
  max-width: 201px;
  padding: 12px 60px;
  flex-grow: 0;
}

.content05 {
  padding: 30px 0 85px;
  position: relative;
  z-index: 1;
}

.content05.areatop {
  padding: 100px 0 60px;
  background-color: #fff !important;
}

.content05.areatop .title {
  font-size: min(6.15vw, 32px);
  text-align: center;
  line-height: 1.1;
  position: relative;
  z-index: 1;
  padding-bottom: 12px;
  color: #46341E;
}

.content05.areatop .en {
  display: block;
  color: #B71717;
  font-weight: 700;
  font-size: min(3.45vw, 20px);
  letter-spacing: 0.3em;
  text-align: center;
  padding-bottom: 50px;
}

.p-area__wrap {
  background-color: #FFF5F5;
  padding: 43px 0;
  margin-bottom: 100px;
  font-family: 'Zen Maru Gothic', sans-serif;
}

.p-area__wrap .p-areaRegion {
  max-width: 838px;
  width: 85%;
  margin: 0 auto 0 !important;
}

.p-area__wrap .p-areaRegion__item a {
  font-size: clamp(12px, 3.077vw, 16px);
  font-weight: bold;
}

.p-area__wrap .p-areaRegion__item a:before {
  width: 15px;
  height: 14px;
  right: 18px;
}

.p-areaList.active {
  max-width: 1121px;
  width: 85%;
  margin: 0 auto 80px !important;
  font-family: 'Zen Maru Gothic', sans-serif;
}

.p-areaList.active .p-areaList__region {
  font-size: min(6.15vw, 32px);
  padding-left: 17px;
  padding-bottom: 0;
  border-left: 7px solid #46341E;
  border-bottom: none;
  line-height: 1.2;
}

.p-areaList.active .p-areaList__content.active {
  background-color: #f6f3ea;
  border-radius: 0;
  padding: 0;
}

.p-areaList.active .p-areaList__head {
  padding-bottom: 21px;
  cursor: pointer;
  padding-top: 21px;
  margin-bottom: 0;
  position: relative;
  z-index: 99;
}

.p-areaList.active .p-areaList__head::after {
  content: '';
  display: inline-block;
  vertical-align: middle;
  color: #46341E;
  line-height: 1;
  width: 0;
  height: 0;
  border-style: solid;
  border-color: transparent;
  border-width: 0.575em 0.34952em;
  border-top-color: currentColor;
  border-bottom: 0;
  position: absolute;
  right: 27px;
  top: 0;
  bottom: 0;
  margin: auto;
}
.p-areaList.active .p-areaList__head.is-open::after {
  transform: rotate(180deg);
  transform: scale(1, -1);
  transition: opacity 0.3s ease, transform 0.3s ease;
}

.p-areaList.active .p-areaList__pref {
  padding-left: 26px;
  font-size: min(3.77vw, 22px);
  letter-spacing: 0.01em;
}

.p-areaList.active .p-areaList__pref::before {
  content: none;
}

.p-areaList.active .p-areaList__pref a {
  text-decoration: underline;
}

.p-areaList.active .p-areaList__cities {
  grid-template-columns: repeat(4, 1fr);
  gap: 12px;
  border-top: 2px dashed #46341E;
  line-height: 0;
  opacity: 0;
  height: 0;
  transition: line-height 0.4s, padding 0.4s, opacity 0.4s;
  display: grid;
  position: relative;
}

.p-areaList.active .p-areaList__cities.is-open {
  padding: 21px 26px 29px;
  opacity: 1;
  height: auto;
  line-height: 1.7;
}

.p-areaList.active .p-areaList__city a {
  background: #B71717;
  color: #fff !important;
  text-decoration: none;
  display: flex;
  align-items: center;
  justify-content: center;
  position: relative;
  height: 50px;
  line-height: 1.2;
  font-size: min(3.45vw, 14px);
}

.p-areaList.active .p-areaList__city a::before {
  content: '';
  display: inline-block;
  vertical-align: middle;
  color: #fff;
  line-height: 1;
  width: 0;
  height: 0;
  border-style: solid;
  border-color: transparent;
  border-width: 0.375em 0.64952em;
  border-left-color: currentColor;
  border-right: 0;
  position: absolute;
  right: 12px;
  top: 0;
  bottom: 0;
  margin: auto;
}

.p-areaList.active .p-areaList__city a:hover {
  background: #fff;
  color: #B71717 !important;
  opacity: 1;
}

.p-areaList.active .p-areaList__city:hover a::before {
  color: #B71717;
}

.undots {
  position: relative;
  padding-bottom: 25px;
  margin-bottom: 20px;
}

.undots:before {
  position: absolute;
  content: '';
  width: 26px;
  height: 4px;
  background-image: linear-gradient(to right, #fff 3px, transparent 1px);
  background-size: 11px 3px;
  background-repeat: repeat-x;
  background-position: left bottom;
  bottom: 0;
  left: 0;
  right: 0;
  margin: auto;
}

.content05 .inner2 > p {
  text-align: center;
  font-weight: 500;
  color: #46341E;
  margin-bottom: 35px;
}

/* .content05 ul{
	display:flex;
	flex-wrap: wrap;
	justify-content: space-between;
} */

/* .content05 li{
	width: 49%;
	max-width: 500px;
	background: #fff;
	margin-bottom: 40px;
	border-radius: 10px;
	padding-left: 30px;
	display: flex;
	height: 80px;
	align-items: center;
}

.content05 li.sp{
	display:none;
}

.content05 li h3{
	padding-right:20px;
	margin-right: 20px;
	height: 88%;
	display: flex;
	align-items: center;
	border-right: 4px dotted;
	font-size: 1.8rem;
} */

.co5d {
  display: flex;
}

.co5d a {
  margin-left: 15px;
}

.abs4 {
  position: absolute;
  width: 100%;
  height: 102px;
  bottom: -42px;
  background: url(./img/nami.png);
}

.content06 {
  padding: 160px 0 60px;
  position: relative;
  z-index: 0;
}

.content06 .mainTit {
  margin: 0 auto 30px;
}

.co6d {
  margin: 0px auto 0px;
}

.co6tit {
  height: 78px;
  display: flex;
  justify-content: center;
  align-items: center;
}

.co6tit h3 {
  font-size: 3.2rem;
  margin-left: 10px;
}

.co6main {
  padding: 80px;
  margin: 0px auto 80px;
}

.noco6.co6main {
  padding: 0px !important;
  margin: 0px !important;
}

.co61 {
  display: flex;
  justify-content: space-between;
  align-items: flex-start;
  padding-bottom: 10px;
}

.co61l {
  width: 35%;
  max-width: 320px;
}

.co61r {
  max-width: 522px;
  width: 64%;
}

.co61l p {
  font-weight: 500;
}

.co61l h4 {
  font-size: 2.4rem;
}

.tag {
  width: fit-content;
  padding: 0 9px;
  height: 28px;
  display: flex;
  justify-content: center;
  align-items: center;
  border: 1px solid;
  margin: 5px 0 15px;
}

.ungre {
  position: relative;
}

.ungre:before {
  position: absolute;
  content: '';
  width: 100%;
  height: 1px;
  background: #669f4f;
  bottom: 0;
  left: 0;
}

.priced {
  margin-top: 30px;
}

.price {
  display: flex;
  align-items: center;
}

.prip1 {
  padding: 0px 13.5px;
  background: #46341E;
  border-radius: 14px;
  font-size: 1.4rem;
  display: flex;
  align-items: center;
  justify-content: center;
}

.prip1.bgor {
  background: #f29436;
}

.co61l .prip2 {
  font-size: 4rem;
  font-weight: 700;
  margin-left: 10px;
}

.co61l .prip2 span {
  font-size: 1.6rem;
}

.co61r ul {
  display: flex;
  flex-wrap: wrap;
  justify-content: flex-start;
}

.co61r li {
  display: flex;
  justify-content: center;
  align-items: center;
  flex-direction: column;
  width: 24%;
  max-width: 120px;
  min-height: 120px;
  padding: 20px 0;
  margin-bottom: 20px;
  background: #fff;
  border: 1px solid #cccccc;
  border-radius: 10px;
  text-align: center;
  font-size: 1.4rem;
  line-height: 1.3;
  font-weight: 700;
  margin: 0 2.5% 20px 0;
}

.co61r li:nth-child(4n + 4) {
  margin: 0 0 20px 0;
}

.co61r li img {
  margin-bottom: 10px;
}

.co62 {
  margin-bottom: 10px;
}

.co62 li {
  border-top: 4px dotted #46341E;
  padding: 40px 0;
  display: flex;
  justify-content: space-between;
  align-items: center;
}

.co62l {
  display: flex;
  align-items: center;
}

.co62l .tag {
  margin: 0 0 0 10px;
}

.content07 {
  position: relative;
  z-index: 0;
  padding: 0 0 180px;
}

.co71 {
  background: url(./img/bg7.png) no-repeat center;
  position: relative;
  z-index: 1;
  height: 360px;
  display: flex;
  align-items: center;
  justify-content: flex-start;
  flex-direction: column;
}

.co71:before {
  position: absolute;
  content: '';
  background: #669f4fcc;
  width: 100%;
  height: 100%;
  z-index: -1;
}

.co7ab {
  text-align: center;
  margin-bottom: 25px;
}

.content07 .mainTit {
  line-height: 1.4;
}

.updots span {
  position: relative;
}

.updots span:before {
  position: absolute;
  content: '';
  width: 8px;
  height: 8px;
  background: #fddd6e;
  border-radius: 50%;
  left: 0;
  right: 0;
  top: 0;
  margin: auto;
}

.co72 {
}

.co72 ul {
  display: flex;
  justify-content: space-between;
  align-items: flex-start;
  margin-bottom: 10px;
  flex-wrap: wrap;
}

.co72 .inner2 > ul > li {
  background: #fff;
  max-width: 500px;
  width: 49%;
  text-align: center;
  padding: 20px;
  border: 2px solid #669f4f;
  margin-bottom: 20px;
}

.co72 li h3 {
  font-size: 2.4rem;
  display: flex;
  justify-content: center;
  align-items: center;
  width: 100%;
  margin-bottom: 20px;
  padding-bottom: 15px;
  border-bottom: 1px dotted;
}

.co72 li h3 img {
  margin-right: 10px;
}

.co72 .co72img {
  margin: auto;
  height: 38px;
}

.co72 li p span {
  font-size: 3.2rem;
  font-weight: 700;
}

.co72p {
  font-size: 1.4rem;
}

.content08 {
  padding: 134px 0 97px;
}

.content08 .title {
  padding: 30px 150px 12px;
  color: #46341E;
  font-size: min(6.15vw, 32px);
  font-weight: bold;
}

.content08 .title::before {
  content: none;
}

.content08 .en {
  display: block;
  color: #B71717;
  font-weight: 700;
  font-size: min(3.45vw, 20px);
  letter-spacing: 0.3em;
  text-align: center;
  display: block;
  padding-bottom: 33px;
}

.content08 .mainTit {
  position: relative;
  width: fit-content;
  margin: auto;
}

.content08 .mainTit:after {
  position: absolute;
  content: '';
  width: 146px;
  height: 112px;
  background: url(./img/co81.png) no-repeat;
  background-size: contain;
  right: 0;
  top: -50px;
}

.co8d {
  max-width: 373px;
  position: relative;
  margin: 0 auto;
}

.co8d:hover {
  opacity: 0.7;
}

.lista {
  position: absolute;
  content: '';
  width: 100%;
  height: 100%;
  left: 0;
  top: 0;
}

.co8d img {
  display: block;
  margin: auto;
  border: 4px solid;
  max-width: 373px;
  max-height: 259px;
  width: 100%;
  height: 93vh;
  object-fit: cover;
}

.co8d h5 {
  text-align: center;
  font-size: 1.4rem;
  padding: 15px 0;
  margin-bottom: 15px;
  border-bottom: 4px dotted;
}

.content08 .c-areaVoiceItem {
  margin: 0 8.5px;
}

ul.noslide {
  max-width: 1200px;
  margin: 10px auto 30px;
  flex-wrap: wrap;
  width: 95%;
  justify-content: center;
}

ul.noslide li {
  width: 32%;
  margin: 0 0.5%;
}

.content09 {
  position: relative;
  z-index: 1;
}

.midashi1 {
  padding: 14px 48px;
  width: fit-content;
  margin: 0 auto 30px;
  border-radius: 28px;
  position: relative;
}

.midashi1:before {
  position: absolute;
  content: '';
  width: 40px;
  height: 34px;
  background: url(./img/kadomaru.png) no-repeat;
  bottom: -20px;
  left: 0;
  right: 0;
  margin: auto;
  z-index: -1;
}

.co9d {
  display: flex;
  justify-content: space-between;
  margin-top: 35px;
}

.co9d > div {
  max-width: 580px;
  width: 49%;
}

.co9l {
  border-radius: 10px 10px 0 0;
  border: 4px solid #fddd6e;
}

.co9l h3 {
  background: #fddd6e;
  font-size: 2.4rem;
  text-align: center;
  padding: 11px 0;
}

.co9d1 {
  padding: 10px;
}

.co9d1 p {
  margin-top: 20px;
  margin-bottom: 35px;
  text-align: center;
}

.co9d1 ul {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
}

.co9d1 li {
  margin-bottom: 20px;
  width: 31%;
}

.co9r {
  border-radius: 10px 10px 0 0;
  border: 4px solid #f29436;
}

.co9r h3 {
  background: #f29436;
  font-size: 2.4rem;
  text-align: center;
  padding: 11px 0;
}

.content10 {
  padding: 130px 0 120px;
  position: relative;
  z-index: 0;
  padding: 0 0 120px;
}

.contab {
  display: flex;
  align-items: flex-end;
}

.ctab {
  width: 23%;
  text-align: center;
  padding: 6.5px 0;
  border-radius: 10px 10px 0 0;
  cursor: pointer;
}

.ctab.active {
  width: 31%;
  padding: 10.5px 0;
}

.co10li {
  display: none;
}

.co10li.active {
  display: block;
  background: #fff;
  padding: 55px 80px;
}

.co10li:nth-child(1) {
  border: 2px solid #669f4f;
}

.co10li:nth-child(2) {
  border: 2px solid #f29436;
}

.co10li:nth-child(3) {
  border: 2px solid #fddd6e;
}

.co10li:nth-child(4) {
  border: 2px solid #46341E;
}

.co10ul2 li {
  padding: 35px 0;
  border-bottom: 4px dotted;
  position: relative;
  display: flex;
}

.co10ul2 li:hover {
  opacity: 0.7;
}

.date {
  font-size: 1.4rem;
  margin-right: 20px;
}

.content11 {
  padding: 0px 0 140px;
  position: relative;
  z-index: 0;
}

.content11 ul {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  margin-top: 10px;
}

.content11 li {
  max-width: 270px;
  width: 24%;
  margin-bottom: 40px;
}

.contact-area h2 {
  width: 95%;
  font-size: 3.2rem;
  max-width: 880px;
  margin: auto;
  text-align: center;
  border-radius: 10px 10px 0 0;
  z-index: 1;
  position: relative;
  padding-top: 20px;
}

.card {
  padding: 30px 0 60px;
  position: relative;
  z-index: 1;
}

.cardp {
  font-size: 1.8rem;
  display: flex;
  align-items: center;
  justify-content: center;
  border-top: 4px dotted;
  border-bottom: 4px dotted;
  padding: 15px 0;
  margin-bottom: 30px;
}

.cardp .big {
  font-size: 3.2rem;
  margin-left: 20px;
}

.card1 {
  display: flex;
  justify-content: space-between;
  width: 100%;
}

.card1l {
  max-width: 420px;
  width: 49%;
  display: flex;
  flex-direction: column;
  justify-content: space-between;
}

.card1l .btn {
  max-width: 420px;
}

.card1r {
  /* max-width:420px; */
  width: 100%;
}

.card1rp {
  font-size: 1.4rem;
  display: flex;
  align-items: center;
  justify-content: center;
  flex-direction: column;
}

.card1r .card1l {
  margin: 20px auto 0;
}

.card1rp .big {
  font-size: 3.2rem;
  line-height: 1.2;
  margin-top: 10px;
  font-weight: 700;
}

.card1rp .small {
  font-size: 1.2rem;
}

.card1rp2 {
  border: 1px solid;
  text-align: center;
  padding: 8.21px 0;
  font-size: 1.4rem;
  margin-top: 15px;
}

/*▼20240703 KVのABテスト用*/
.kv_bottom {
  margin: -30px auto 0;
  padding: 35px 10px 20px 26px;
  width: 95.8%;
  height: auto;
  max-width: 1120px;
  background-color: #B71717;
  display: flex;
  flex-wrap: nowrap;
  justify-content: center;
}
.kv_bottom_btn img {
  max-width: 324px;
  width: 96%;
}
.kv_bottom div:nth-child(-n + 2) {
  margin-right: 10px;
}
.kv_bottom div a {
  height: 10.339vw;
  width: 25.99vw;
  max-width: 324px;
  max-height: 127px;
  display: block;
}

.kv_bottom div a img {
  width: auto;
  max-width: 100%;
  height: 100%;
}
@media screen and (max-width: 960px) {
  .kv_bottom {
    width: 95%;
  }
}
@media screen and (max-width: 820px) {
  .kv_bottom {
    width: 94.9%;
  }
}
@media screen and (max-width: 768px) {
  .kv_bottom {
    width: 100%;
  }
  .kv_bottom div a {
    height: 23.339vw;
    width: 25.99vw;
    max-width: unset;
    max-height: unset;
  }
}
@media screen and (max-width: 640px) {
  .kv_bottom {
    padding: 35px 3% 20px 5%;
  }
  .kv_bottom div:nth-child(-n + 2) {
    margin-right: 5px;
  }
  .kv_bottom div a {
    height: 26.6vw;
    width: 30.25vw;
    display: block;
  }
}
/*▲20240703 KVのABテスト用*/

/*-----------------------------------------------------------
 footer
-----------------------------------------------------------*/

.course footer,
.recruit footer {
  background: #46341E;
}

.course .ftd2,
.recruit .ftd2 {
  color: #fff !important;
}

.course .ftd2 a,
.recruit .ftd2 a {
  color: #fff !important;
}

.course .ftdr a,
.recruit .ftdr a {
  color: #fff !important;
}

.course .ftsns .btn,
.recruit .ftsns .btn {
  border: none;
}

footer {
  margin: 0 auto 0;
  padding: 80px 0 0;
  background:#46341E;
}

footer .logo {
  width: 255px;
}

footer .inner {
  padding: 0 0 50px;
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
}

.ftdl {
  max-width: 531px;
  width: 48%;
}

.ftd1 {
  display: flex;
  max-width: 370px;
  justify-content: space-between;
  align-items: baseline;
  margin-bottom: 30px;
}

.ftsns {
  display: flex;
  justify-content: space-between;
  align-items: center;
  margin-bottom: 30px;
}

.ftsns .btn {
  max-width: 260px;
  font-size: 1.4rem;
  height: 56px;
}

.ftsns .btn img {
  width: 20px;
  margin-right: 5px;
}

.ftd2 p {
  font-size: 1.4rem;
}

.ftd2 p .big {
  font-size: 3.2rem;
  line-height: 1.2;
  margin-top: 10px;
}

.ftd2 p .small {
  font-size: 1.2rem;
}

.ftdr {
  max-width: 490px;
  width: 48%;
}

.ftdrli {
  display: flex;
  width: 100%;
  justify-content: space-between;
  font-size: 1.4rem;
}

.ftdrli a{
  color: #ffffff;
}

.ftdr > ul {
  display: flex;
  font-size: 1.2rem;
  margin-top: 80px;
  justify-content: flex-start;
  flex-wrap: wrap;
}

.ftdr > ul li {
  padding-right: 2.3%;
  border-right: 1px solid;
  margin-right: 2.3%;
  margin-top: 2.3%;
  color:#ffffff;
}

.ftdr > ul li a{
  color: #ffffff;
}

.ftdr > ul li:last-child {
  border: none;
}

.ftdr1 {
  width: 100%;
  max-width: 100%;
}

.ftdr1 > ul {
  margin-top: 0;
  justify-content: center;
}

@media screen and (max-width: 1000px) {
  .ftdr1 {
    width: 100% !important;
    max-width: 100% !important;
  }
}

@media screen and (max-width: 768px) {
  .ftdr > ul {
    max-width: 100%;
    flex-direction: column;
    align-items: center;
  }
  .ftdr > ul li {
    width: 100%;
  }
}

.copyright {
  background: #46341E;
  text-align: center;
  padding: 21px 0;
  font-size: 1.2rem;
  color:#ffffff;
}

.side_btn {
  position: fixed;
  right: 0;
  bottom: 200px;
  z-index: 999;
}

.sided {
  display: flex;
  flex-direction: column;
}

/* 全ページ共通クラス
----------------------------------------------------------- */

/*--- パンくず ---*/
.pankuzu_wrap{
  width: 100%;
  background-color: #ffffff;
}
.pankuzu {
  width: 95%;
  margin: 0 auto;
  font-size: 12px;
  padding: 16px 0 16px;
  max-width: 1200px;
  background-color: #ffffff;
}

.pankuzu li {
  margin: 0 0 0 10px;
  display: inline;
}

.pankuzu li:first-child {
  margin: 0;
}

.pankuzu li a {
  margin: 0 10px 0 0;
}

.pankuzu li a:hover {
  color: #0071bc;
}

/*--- ページトップ ---*/
#pageTop {
  position: fixed;
  bottom: 60px;
  right: 5px;
  z-index: 9999;
  background: #f7f3ea;
  border: 1px solid;
  border-radius: 50%;
  width: 60px;
  height: 60px;
  display: flex !important;
  align-items: center;
  justify-content: center;
}

.open #pageTop {
  display: none !important;
}

/* -- お問い合わせ -- */

input {
  vertical-align: middle;
}

.btnBox1 {
  text-align: center;
}

.contact_cf .clearForm,
.contact_cf .clearForm2 {
  padding: 10px 5px;
}

.choose_list1 > li {
  width: 200px;
  margin: 0 0 0 10px;
  float: left;
}

.choose_list1 > li:first-child {
  margin: 0;
}

.choose_list1 {
  width: 410px;
  margin: 20px auto;
}

.contact_tb td span {
  margin: 9px 10px 0 0;
  display: block;
}

.mw_wp_form .horizontal-item + .horizontal-item {
  margin: 9px 10px 0 0px;
}

.check .horizontal-item + .horizontal-item {
  margin: 9px 0 0;
}

.contact_tb .mwform-radio-field-text {
  display: initial;
  margin: 0;
}

.clearForm,
.clearForm2,
.toHome {
  max-width: 385px;
  width: 95%;
  height: 74px;
  cursor: pointer;
  outline: 0;
  background: #46341E;
  color: #fff !important;
  border: none;
  transition: 0.2s;
  -moz-transition: 0.2s;
  -webkit-transition: 0.2s;
  border-radius: 37px;
  display: flex;
  align-items: center;
  justify-content: center;
  margin: 10px auto 0;
  font-size: 1.8rem;
  font-weight: 700;
}

.clearForm:hover,
.clearForm2:hover,
.toHome:hover {
  color: #fff;
  opacity: 0.7;
}

.toHome {
  margin: 50px auto 100px !important;
  text-decoration: none;
  display: flex;
  text-align: center;
}

#name,
#post,
#mail,
#mail_confirm,
textarea,
#url,
#kana,
#tel,
#msg,
#msg1,
#msg2,
#ques {
  width: 100%;
}

#msg,
#msg1,
#msg2,
#ques {
  height: 170px;
}

#zip1,
#zip2 {
  width: 150px;
}

#city,
#pref,
#add {
  width: 580px;
  margin: 2px 0 0 10px;
}

#add {
  margin: 2px 0 0 40px;
}

textarea {
  width: 90%;
  padding: 10px 5px;
}

input,
textarea,
button,
select,
option {
  outline: none;
}

input#privacy {
  border: 1px solid #46341E;
  background: #f7f3ea;
}

input[type='text'] {
  height: 40px;
  padding: 5px;
  width: 100%;
}

input[type='text'],
textarea,
select,
option {
  border: 1px solid #ccc;
  height: 40px;
}

.smalltext {
  width: 100px !important;
}

input[name='kind']::placeholder {
  font-size: 1.2rem;
}

#many {
  height: 80px;
  width: 100%;
}

input[type='text'].hasDatepicker {
  width: 47%;
}

.confl > input[type='text'].hasDatepicker {
  width: 57%;
}

input[type='date'] {
  height: 40px;
  border: 1px solid #ccc;
  font-weight: 500;
  max-width: 185px;
  width: 60%;
}

select {
  max-width: 140px;
  width: 100%;
}

#sdate {
  max-width: 270px;
  width: 40%;
}

.select1 {
  margin-left: 1%;
  width: 25%;
}

#station {
  max-width: 190px;
}

#station2 {
  max-width: 120px;
  /* margin-left: 85px; */
}

.checkd {
  display: flex;
}

.check {
  margin-right: 10px;
}

.contact_tb .mwform-checkbox-field-text {
  display: initial;
  margin: 0;
}

.checkd2 {
  display: flex;
  flex-wrap: wrap;
  max-width: 440px;
  width: 100%;
  justify-content: space-between;
}

.check3 {
  width: 48%;
  max-width: 200px;
  text-align: right;
  margin-bottom: 20px;
}

::placeholder {
  color: #cccccc;
  font-size: 1.5rem;
}

input[type='checkbox'] {
  width: 20px;
  height: 20px;
}

.check.plan .mwform-checkbox-field.horizontal-item:nth-child(6) {
  position: relative;
  padding-bottom: 20px;
}

.check.plan .mwform-checkbox-field.horizontal-item:nth-child(6):before {
  position: absolute;
  content: '※エリアによって利用できない場合があります。';
  bottom: 0;
  left: 30px;
  font-size: 1.4rem;
}

button {
  border: none;
  outline: none;
  background: none;
}

.form_notice1 {
  font-size: 85.714%;
  display: block;
  margin: 5px 0 0;
}

.form_notice2 {
  font-size: 87.5%;
}

.modification_wrap {
  overflow: hidden;
}

.modification {
  width: 221px;
  float: left;
  margin: 0 0 0 246px;
}

.send_bt {
  width: 221px;
  float: right;
  margin: 0 245px 0 0;
}

.error_style {
  color: #ff0000;
  display: block;
  margin: 8px 0 0;
}

.contact_tb {
  width: 100%;
  margin: 55px auto;
  border-bottom: 4px solid #669f4f;
  border-top: 4px solid #669f4f;
}

.contact_tb th {
  width: 330px;
  text-align: left;
  position: relative;
  line-height: 1.4;
}

.contact_tb th,
.contact_tb td {
  padding: 40px 10px 40px 0px;
  font-size: 1.6rem;
  border-bottom: 1px dotted #669f4f;
  position: relative;
}

.hopediv {
  margin-bottom: 30px;
}

.equal {
  display: flex;
  align-items: center;
}

.equal .male {
  margin-left: 10px;
}

.equal .mari {
  margin-right: 10px;
}

.contact_tb .equal span {
  margin-top: 0 !important;
}

.contact_tb tr:last-child th,
.contact_tb tr:last-child td {
  border: none;
}

.contact_tb th em {
  background: #f29436;
  color: #ffffff;
  padding: 2px 5px;
  margin-left: 5px;
  right: 10px;
  font-size: 85.714%;
}

.contact_tb .small {
  font-size: 1.4rem;
  margin-top: 15px;
}

.conteBox {
  margin-bottom: 120px;
}

.conteBox > p {
  font-size: 2.4rem;
  font-weight: 700;
  position: relative;
  width: fit-content;
  margin: auto;
  padding: 0 35px;
}

.check2 {
  display: flex;
  align-items: center;
  justify-content: center;
}

.check2 a {
  color: #f29436;
  text-decoration: underline;
}

.vtop {
  vertical-align: top;
}

.confl {
  display: flex;
  align-items: center;
  flex-wrap: wrap;
}

.confl .meetp {
  width: 100%;
}

.datediv {
  width: 49%;
  display: flex;
  align-items: center;
}

.datediv.datediv2 {
  width: 100%;
}

.datedivp {
  width: 2%;
  text-align: center;
}

.matop {
  margin-top: 15px;
}

.maright {
  margin-right: 20px;
}

.radiod2 {
  display: flex;
}

/*-- エラーチェック --*/

.formError {
  top: 20px !important;
  left: 40px !important;
}

.zip2formError {
  left: 220px !important;
}

.prefformError,
.cityformError,
.addformError {
  top: 0 !important;
  left: 80px !important;
}

.zip1 label {
  position: relative;
}

/*-- 送信前ダイアログ --*/

.ui-dialog {
  margin: auto;
  position: absolute;
  left: 0 !important;
  right: 0 !important;
}

.ui-corner-all.ui-button-text-only:focus {
  color: #737373;
  background: #fff;
  outline: none;
  border-color: #ccc;
}

.ui-corner-all.ui-button-text-only:hover {
  color: #fff;
  background: #555;
  outline: none;
  border-color: #ccc;
  transition: 0.3s;
}

.ui-widget-header {
  background: #609b47 !important;
  border-color: #609b47 !important;
}

.ui-dialog .ui-dialog-content,
.ui-button-text-only .ui-button-text {
  font-family: 'メイリオ', Meiryo, 'ヒラギノ角ゴ ProN W3',
    'Hiragino Kaku Gothic ProN', sans-serif !important;
  /* background: #DDD; */
}

/* TOP
----------------------------------------------------------- */

/*-- メインヴィジュアル スライダー --*/

.bx-wrapper {
  margin: 0 0 20px !important;
  position: relative;
}

.bx-controls-direction {
  width: 100%;
  position: absolute;
  top: 50%;
}

.bx-controls-direction a {
  width: 32px;
  height: 32px;
  margin: -16px 0 0;
  position: absolute;
  top: 50%;
  z-index: 9999;
  outline: 0;
  text-indent: -9999px;
}

.bx-prev {
  left: 1% !important;
  background: url(././img/prev.png) no-repeat 0 0;
  background-size: contain;
}

.bx-next {
  right: 1% !important;
  background: url(././img/next.png) no-repeat 100% 0;
  background-size: contain;
}

/*-- スクロールバーデザイン --*/

.scroll-pane {
  width: 100% !important;
  height: 300px; /*箱の高さ*/
  margin: 40px auto 0;
  overflow-y: auto;
}

.scroll-pane:focus {
  outline: none;
}

.jspContainer {
  width: 100% !important;
  overflow: hidden;
  position: relative;
}

.jspPane {
  width: 100% !important;
  position: absolute;
}

.jspVerticalBar {
  width: 20px;
  position: absolute;
  top: 0;
  right: -5px;
}

.jspArrowUp,
.jspArrowDown {
  margin: 0;
  padding: 0;
  display: block;
  cursor: pointer;
  /* background: url(./img/scroll_top.png) no-repeat center; */
}

.jspArrowDown {
  background: url(./img/scroll_bottom.png) no-repeat center;
}

.jspTrack {
  /* background: url(././img/scroll_bg1.png) repeat-y; */
  position: relative;
  background-position: center;
}

.jspDrag {
  width: 4px;
  margin: 0 auto;
  background: #6b6b6b;
  position: relative;
  cursor: pointer;
  border-radius: 8px;
  -moz-border-radius: 8px;
  -webkit-border-radius: 8px;
}

.jspArrow.jspDisabled {
  cursor: default;
}

.jspVerticalBar .jspArrow {
  height: 20px;
}

.jspVerticalBar .jspArrow:focus {
  outline: none;
}

/* 新着情報
----------------------------------------------------------- */

.news li {
  /* width: 660px; */
  margin: 0;
}

.news dl {
  width: 98%;
  padding: 30px 5px 30px;
  border-top: 1px solid #555;
  display: flex;
}

.news dt {
  min-width: 100px;
  margin: 0 20px 0 0;
}

.news li:first-child dl {
  border-top: none;
}

/*-----------------------------------------------------------
 中ページ
-----------------------------------------------------------*/

.leadTxt {
  margin: 30px auto 0;
  padding: 20px;
  background: #ccc;
}

/* よくある質問
----------------------------------------------------------- */
.faq01 {
  margin: 0 0 150px 0;
}

.faq01 dl span {
  margin: 0 1.4% 0 0px;
  font-size: 2.4rem;
  font-weight: 500;
}

.faq01 ul .white {
  border-radius: 21px;
  width: 38px;
  text-align: center;
}

.b-b {
  border-radius: 21px;
  /* width: 38px; */
  text-align: center;
  margin: 0 5px 0 0 !important;
  display: flex;
  align-items: center;
  justify-content: center;
  line-height: 1.3;
}

.faq01 dt,
.faq01 dd {
  display: flex;
  align-items: center;
  border-radius: 10px;
}

.faq01 li:first-child {
  border-top: 5px solid #669f4f;
}

.faq01 li {
  border-bottom: 5px solid #669f4f;
}

.faq01 dt {
  font-size: 1.6rem;
  color: #669f4f;
  width: 100%;
  padding: 20px 0 23px 4%;
  position: relative;
  font-weight: 700;
  transition: 0.2s;
  background-size: 13px 3px;
  background-repeat: repeat-x;
  background-position: left bottom;
}

.faq01 .open dt {
  border-radius: 10px 10px 0 0;
  background-image: linear-gradient(to right, #669f4f 3px, transparent 0px);
}

.faq01 dt p {
  width: 82%;
  font-size: 1.6rem;
}

.faq01 dt .pulu {
  position: absolute;
  right: 5px;
}

.faq01 dt .pulu span {
  width: 24px;
  background: #669f4f;
  height: 4px;
  display: block;
  position: absolute;
  right: 30px;
  transition: 0.2s;
}

.faq01 .open dt .pulu span {
  transform: rotate(180deg);
}

.faq01 .open .pulu span + span {
  transform: rotate(0deg);
}

.faq01 .pulu span + span {
  transform: rotate(90deg);
}

.faq01 dd {
  align-items: flex-start;
  padding: 25px 4% 25px 4%;
  border-radius: 0 0 10px 10px;
}

.faq01 dd p {
  width: 92%;
  font-size: 16px;
  margin: 0px 0 0 16px;
}

/* ご予約・お問い合わせ
----------------------------------------------------------- */
.customer01 .inner {
  max-width: 880px;
  margin: 0 auto 71px;
}

.customer01 h2 {
  display: flex;
  flex-direction: column;
  align-items: center;
  font-size: 4rem;
  margin: 0 0 15px 0;
}

.customer01 .inner > .txt {
  background: #fff;
  padding: 3%;
  line-height: 2;
}

.customer01 .bor {
  text-decoration: underline;
}

.customer01 .ore {
  color: #f29436;
}

.customer01 ul {
  margin: 50px 0 0 0;
}

.customer01 li {
  border-bottom: 2px dotted;
  padding: 0 0 30px 0;
  margin: 0 0 30px 0;
}

.customer01 dl {
  display: flex;
  justify-content: space-between;
}

.customer01 dt {
  width: 42%;
  font-size: 2.4rem;
  background: url(./img/customer/customer01_deco.png) 0% 3%;
  background-repeat: no-repeat;
  padding: 0 0 0 50px;
}

.customer01 dd {
  width: 55%;
  max-width: 400px;
}

.customer01 dd a {
  margin: 0 0 7px auto;
  display: block;
  max-width: 400px;
}

.customer01 dd .telBox {
  border: 1px solid;
  font-size: 1.3rem;
  text-align: center;
  padding: 1.5%;
}

.customer01 dd .tel span {
  margin: 6px 0 12px;
  display: block;
  font-size: 1.4rem;
}

/* スタッフ紹介
----------------------------------------------------------- */
.modalArea p {
  text-align: center;
  margin: 0 0 25px 0;
}

.wrap {
  width: 90%;
  padding: 0;
  border: 1px solid #ccc;
  max-width: 385px;
  margin: 0 auto;
  background: #fff;
  position: relative;
}
h3.open_h3 {
  cursor: pointer;
  margin: 0;
  padding: 10px 5%;
  position: relative;
}
.open_h3:after,
.open_h3.active:after {
  font-size: 22px;
  margin-left: 20px;
}
.open_h3.active::after {
  content: '▲';
  position: absolute;
  right: 2%;
  top: 0;
}
.open_h3::after {
  content: '▼';
  position: absolute;
  right: 2%;
  top: 0;
}
.info {
  font-size: 13px;
}
.tiho {
  border-top: 1px solid #ccc;
}

.city {
  color: #669f4f;
  border-top: 1px solid #ccc;
}

.town li {
  border-top: 1px solid #ccc;
  padding: 10px 5%;
}

.staff01 {
  margin: 80px auto;
}

.staff01 ul {
  margin-bottom: 110px;
  display: flex;
  flex-wrap: wrap;
  /* justify-content: space-between; */
  gap: 56px 1.8893333333%;
}

.staff01 li {
  /* width: 44%; */
  width: 32.2393822394%;
  /* margin: 0 3% 80px; */
  font-size: 1.4rem;
}

.staff01 li .box {
  /* display: flex; */
  position: relative;
}

.staff01 li .box h2 {
  font-size: 2rem;
  font-weight: 700;
  line-height: 1.35;
}

.staff01 li .box .img {
  /* width: 47%; */
  /* margin: 0 3% 0 0; */
  margin-bottom: 15px;
  aspect-ratio: 283 / 250;
  overflow: hidden;
}

.staff01 li .box .img img {
  width: 100%;
  height: auto;
  object-fit: cover;
}

/* .staff01 li .box dl{
	width: 50%;
} */

/* .staff01 li .box dt{
	color:#669F4F;
	font-size: 1.6rem;
	margin: 0 0 10px 0;
} */

/* .staff01 li .box h4{
	font-size: 1.2rem;
	border-left: 3px solid;
	padding: 0 0 0 10px;
	line-height: 1.2;
	margin: 0 0 6px 0;
} */

.staff01 li .txt {
  /* margin: 20px 0 0 0; */
  margin: 3px 0 0 0;
  font-weight: 400;
  line-height: 1.35;
}

/* .staff01 li dd div{
	margin: 15px 0 0 0;
} */

.staff01 li .user {
  width: calc(100% - 40px);
  margin-top: 13px;
  font-size: 1.3rem;
  line-height: 1.38;
  color: #5a944d;
}

.staff01 li .pet {
  border: 1px solid #5a944d;
  border-radius: 4px;
  max-width: calc(100% - 40px);
  width: fit-content;
  padding: 4px 11px;
  margin-top: 4px;
  font-size: 1.3rem;
  line-height: 1.2;
  color: #5a944d;
  background-color: #fff;
}

.staff01 li .arrow {
  width: 29px;
  height: 29px;
  bottom: 0;
  right: 0;
  border-radius: 50%;
  background: #5a944d;
  display: flex;
  justify-content: center;
  align-items: center;
  position: absolute;
}

/* ペットシッターのご紹介個別
.p-staffProfile {
	display: flex;
	justify-content: space-between;
}

.p-staffProfile__image {
	width: 43.3720930233%;
}

.p-staffProfile__content {
	width: 52.6744186047%;
}
.p-staffProfile__name {
	margin-bottom: 15px;
	font-size: 3.2rem;
	font-weight: 700;
	line-height: 1.375;
	color: #5A944D;
}
.p-staffProfile__type {
	margin-bottom: 15px;
	display: flex;
	align-items: center;
	gap: 12px;
}
.p-staffProfile__label {
	border: 1px solid #46341E;
	padding: 4px 8px;
	font-size: 1.4rem;
}
.p-staffProfile__area {
	margin-bottom: 20px;
	line-height: 1.4875;
}
.p-staffProfile__area>p {
	font-weight: 700;
}
.p-staffProfile__city {
	display: flex;
	flex-wrap: wrap;
	font-size: 1.4rem;
}

.p-staffProfile__city>li:not(:first-child)::before {
	content: ",";
	display: inline-block;
}

.p-staffProfile__comment {
	border-radius: 10px;
	padding: 17px 25px;
	font-weight: 700;
	background-color: #fff;
}

.p-staffProfile__list {
	margin-top: 35px;
	display: flex;
	flex-wrap: wrap;
	gap: 14px 16px;
}

.p-staffProfileItem {
	width: calc(50% - 8px);
	padding: 10px 15px;
	border: 1px solid #46341E;
}

.p-staffProfileItem__title {
	margin-bottom: 4px;
	font-weight: 700;
	line-height: 1.4875;
	color: #5A944D;
	display: flex;
	align-items: center;
	gap: 8px;
}
.p-staffProfileItem__title::before {
	content: "";
	width: 3px;
	height: 14px;
	background-color: #5A944D;
	display: block;
}

.p-staffProfileItem__list {
	font-weight: 700;
	line-height: 1.4875;
} */

/* pager  */
.pager {
  display: flex;
  justify-content: center;
}

.pager .pagination {
  text-align: center;
  flex-direction: row;
}

.pager .pagination .pre {
  margin: 0 35px 0 0;
}

.pager .pagination .next {
  margin: 0 0 0 35px;
}

.pager .pagination li {
  display: inline;
  margin: 0 2px;
  padding: 0;
  display: inline-block;
  background: #fff;
  width: 50px;
  height: 50px;
  text-align: center;
  position: relative;
  border-radius: 7px;
  border: 1px solid #669f4f;
}

.pager .pagination li a {
  vertical-align: middle;
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  text-align: center;
  display: table;
  color: #669f4f;
  text-decoration: none;
}

.pager .pagination li a span {
  display: table-cell;
  vertical-align: middle;
}

.pager .pagination li a:hover,
.pager .pagination li a.active {
  color: #fff;
  background: #669f4f;
  border-radius: 5px;
}

.pager .pagination-list {
  display: flex;
  width: 100%;
  justify-content: center;
}

.pager .pagination-list .prev {
  margin: 0 3% 0 0 !important;
}

.pager .pagination-list .next {
  margin: 0 0 0 3% !important;
}

.pager .pagination-list .page-numbers {
  margin: 0 0.5%;
  padding: 0;
  background: #fff;
  width: 50px;
  height: 50px;
  border-radius: 7px;
  border: 1px solid #B71717;
  text-align: center;
  color: #B71717;
  text-decoration: none;
  display: flex;
  align-items: center;
  justify-content: center;
}

.pager .pagination-list .page-numbers:hover,
.pager .pagination-list .page-numbers.current {
  color: #fff;
  background: #B71717;
  border-radius: 5px;
}

.pager .pagination-list .page-numbers.dots {
  display: none;
}

/* お客様の声
----------------------------------------------------------- */
.voice01 ul {
  gap: 85px 1.6409266409%;
  margin-bottom: 125px;
}

.voice01 dt span {
  display: block;
  color: #669f4f;
}

.staff01.voice01 .box dt {
  color: #46341E;
}

.voice01 li {
  position: relative;
  transition: 0.5s;
}

.voice01 li:hover {
  opacity: 0.5;
}

.voice01 li a {
  position: absolute;
  width: 100%;
  height: 100%;
  left: 0;
  top: 0;
}
.voiceDet01 {
  margin: 0 0 80px 0;
}

.voice01 .inner {
  max-width: 1040px;
}

.voice01 ul {
  gap: 85px 1.8269230769%;
}
.voice01 li {
  width: 32.1153846154%;
}

.voice01 li .box .img {
  aspect-ratio: 334 / 206;
}

.voice01 li .box .img img {
  width: 100%;
  height: auto;
  object-fit: cover;
}

.voice01 li .box .txt {
  display: -webkit-box;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 2;
  overflow: hidden;
  text-overflow: ellipsis;
}

.voiceDet01 .tit {
  border-bottom: 4px dotted #669f4f;
  padding: 0 0 20px 0;
}

.voiceDet01 .tit span {
  color: #669f4f;
}

.voiceDet01 .tit h3,
.colum_title {
  font-size: 2.5rem;
}

.voiceDet01 .cate {
  margin: 45px 0 30px 0;
  display: flex;
  justify-content: space-between;
  /* gap: 4.186%; */
}

.cateContent {
  /* width: 49.8837209302%; */
  width: 54.07%;
}

.cateTitle {
  margin-bottom: 8px;
  font-size: 3.2rem;
  font-weight: 700;
  line-height: 1.375;
  letter-spacing: 0;
  color: #B71717;
}

.voiceDet01 .cate .cateImg {
  width: 41.744%;
  aspect-ratio: 359 / 247;
  overflow: hidden;
}

.voiceDet01 .cate .cateImg img {
  width: 100%;
  height: auto;
}

/* .voiceDet01 .cate ul{
	display: flex;
} */

.voiceDet01 .cate li {
  display: flex;
  /* margin: 0 40px 0 0; */
  align-items: center;
}

.voiceDet01 li .cateTit {
  border: 1px solid;
  padding: 2px 0;
  min-width: 97px;
  font-size: 1.4rem;
  line-height: 1.2;
  text-align: center;
  /* border-radius: 5px; */
  margin: 0 5px 0 0;
}

/* .voiceDet01 li:nth-of-type(2) .cateTit{
	background:#669F4F;
	color: #fff;
	border: 1px solid #669F4F;
} */

/* .voiceDet01 li:nth-of-type(3) .cateTit{
	background:#fff;
	color: #669F4F;
	border: 1px solid #669F4F;
} */
.voiceDet01 .Kiji .txt {
  margin: 40px 0 60px;
}

.voiceDet01 .Kiji .table {
  width: 100%;
}

.voiceDet01 .Kiji th,
.voiceDet01 .Kiji td {
  border-bottom: 1px solid #669f4f;
}

.voiceDet01 .Kiji th {
  color: #669f4f;
  text-align: left;
  font-weight: 500;
  width: 35%;
}

.voiceDet01 .Kiji td {
  color: #46341E;
  text-align: right;
  width: 65%;
  padding: 27px 0;
}

.voiceDet01 .dlArea dd {
  margin: 0 0 35px 0;
}

.voiceDet01 .dlArea dt {
  color: #669f4f;
  font-size: 1.8rem;
  border-left: 8px solid;
  padding: 0 0 0 18px;
  line-height: 2;
  margin: 0 0 12px 0;
}

/* コラム
----------------------------------------------------------- */
.col01 .inner {
  display: flex;
  justify-content: space-between;
  margin-bottom: 100px;
}

.col01 .left {
  width: 70%;
}

.col01 .colList > ul {
  display: flex;
  flex-wrap: wrap;
}

.col01 .colList > ul li {
  width: 30%;
  margin: 0 1.6% 40px;
  position: relative;
}

.col01 .colList > ul li:hover {
  opacity: 0.7;
}

.col01 .colList .cate {
  background: #fff;
  color: #669f4f;
  border: 1px solid;
  display: inline-block;
  padding: 2px 8px;
  margin: 13px 0 10px 0;
  font-size: 1.4rem;
}

.col01 .colList > ul li span {
  display: block;
  color: #669f4f;
}

.col01 .right {
  width: 25%;
}

.col01 .right p {
  background: url(./img/column/cate_aicon.png) 4% 50% no-repeat #46341E;
  color: #fff;
  font-weight: 500;
  padding: 8px 5% 8px 13%;
  border-radius: 5px;
  margin: 0 0 10px 0;
}

.col01 .right .kijiCate p {
  background: url(./img/column/kiji_aicon.png) 5% 50% no-repeat #46341E;
}

.col01 .right .cate {
  margin: 0 0 40px 0;
}

.col01 .right .cate a {
  display: block;
}

.col01 .kijiCate li {
  display: flex;
  justify-content: space-between;
  margin: 0 0 22px 0;
  position: relative;
}
.col01 .kijiCate li:hover {
  opacity: 0.5;
}

.col01 .kijiCate li a {
  position: absolute;
  width: 100%;
  height: 100%;
  left: 0;
  top: 0;
}

.col01 .kijiCate span {
  background: #fff;
  color: #669f4f;
  border: 1px solid;
  display: inline-block;
  padding: 2px 8px;
  font-size: 1rem;
  position: absolute;
  right: 0;
}

.col01 .kijiCate .imgArea {
  position: relative;
  width: 50%;
}

.col01 .kijiCate .imgArea .img {
  height: 120px;
  overflow: hidden;
  display: flex;
  align-items: flex-start;
}

.col01 .kijiCate .txt {
  width: 47%;
  font-size: 1.4rem;
  display: -webkit-box;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 4;
  overflow: hidden;
  height: 100px;
}

.colDet01 .colArea {
  display: flex;
  justify-content: space-between;
}

.colDet01 .colArea .left {
  width: 69%;
}

.voiceDet01 .voiceThoughts {
  border-radius: 10px;
  padding: 30px 4.2857142857% 20px;
  margin-bottom: 35px;
  color: #46341E;
  background-color: #fff;
  font-size: 1.6rem;
  font-weight: 700;
  line-height: 1.4875;
  letter-spacing: 0;
}

.colDet01 .colArea .mainKiji {
  margin: 30px 0 0 0;
}

.colDet01 .colArea .col01 {
  width: 25%;
}

.colDet01 .colArea .col01 .right {
  width: 100%;
}

.deat p {
  background: #fff;
  color: #669f4f;
  border: 1px solid;
  display: inline-block;
  padding: 2px 8px;
  font-size: 1.4rem;
  margin: 0 15px 15px 0;
}

#ez-toc-container {
  margin: 20px 0;
}

.mainKiji h1 {
  font-size: 2.5rem;
}

.mainKiji h2 {
  font-size: 2.2rem;
  line-height: 160%;
  margin: 20px auto 20px;
}

.mainKiji h3 {
  font-size: 2rem;
  line-height: 160%;
}

.mainKiji h4,
.mainKiji h5,
.mainKiji h6 {
  font-size: 1.8rem;
  line-height: 160%;
}

.mainKiji img {
  margin: 20px 0;
}

.mainKiji p {
  line-height: 2;
  margin: 0 0 2em 0;
}

/* サイトマップ
----------------------------------------------------------- */
.sitemap01 .inner {
  display: flex;
  justify-content: space-between;
}

.sitemap01 .inner {
  background: url(./img/co42.png) bottom center no-repeat;
  background-size: contain;
  padding: 0 0 250px 0;
  background-position-y: 129%;
}

.sitemap01 .left {
  display: flex;
  justify-content: space-between;
  width: 38%;
  font-size: 1.6rem;
}

.sitemap01 .right {
  display: flex;
  justify-content: space-between;
  width: 62%;
  font-size: 1.6rem;
}

.sitemap01 .left ul {
  width: 50%;
}

.sitemap01 .right ul {
  width: fit-content;
}

.sitemap01 li {
  margin: 0 0 15px 0;
}
.sitemap02 {
  background: #669f4f;
  padding: 30px 0 80px;
}

.sitemap02 h2 {
  text-align: center;
  font-size: 4rem;
  color: #fff;
  margin: 0 0 30px 0;
}

.sitemap02 .inner {
  background: #fff;
  padding: 2% 5%;
  border-radius: 10px;
}

.sitemap02 dl {
  display: flex;
  align-items: baseline;
}

.sitemap02 dt {
  color: #669f4f;
  border-left: 3px solid;
  line-height: 2.5;
  padding: 0 16px 0 13px;
  width: 11%;
}

.sitemap02 dd {
  width: 88%;
}

.sitemap02 dd a {
  line-height: 2.5;
  margin: 0 25px 0 0;
  display: inline-block;
}

.sitemap02 dd span {
  line-height: 2.5;
  margin: 0 25px 0 0;
  display: inline-block;
}

.sitemap02 dd a:first-child {
}

.sitemap02 li {
  border-top: 1px dotted #669f4f;
  padding: 25px 0;
}

.sitemap02 li:first-child {
  border: none;
}

.sitemap .contact-area {
  background: #669f4f;
}

/* プライバシーポリシー
----------------------------------------------------------- */

.privacy01 h2 {
  font-size: 3rem;
  color: #669f4f;
}

.privacy01 .leadBox {
  background: #fff;
  padding: 2%;
}

.privacy01 dl {
  margin: 30px 0 0;
}

.privacy01 dt {
  margin: 20px 0 0;
  padding: 0 5px;
  display: inline-block;
  font-weight: bold;
  border-bottom: 1px solid #669f4f;
  font-size: 2.4rem;
  color: #669f4f;
  display: block;
  border-left: 5px solid;
}

.privacy01 dt:first-child {
  margin: 0;
}

.privacy01 dd {
  font-size: 1.6rem;
  margin: 10px 0 51px;
}

.privacy01 .info {
  margin: 20px 0 100px 0;
}

.adprp {
  text-align: right;
  font-size: 1.4rem;
}

/* 会社概要
----------------------------------------------------------- */

.company table {
  width: 1000px;
  margin: 30px auto 0;
}

.company th {
  width: 170px;
  padding: 10px 10px 10px 20px;
  border-bottom: 1px solid #fff;
}

.company td {
  width: 470px;
  padding: 10px 10px 10px 20px;
  border-bottom: 1px solid #fff;
}

.company iframe {
  width: 1000px;
  height: 280px;
  margin: 30px auto 0;
}

/* dogsitter */

.dogsitter #main {
  margin: 0 auto 0;
}

.sitter1 {
  position: relative;
  padding-bottom: 140px;
  background-color:#F5F4EF;
  padding-top:50px;
}

.sidebar {
  position: relative;
  padding: 0 35px;
  width: fit-content;
  margin: auto;
  font-size: 2.4rem;
  font-weight: 700;
}

.sidebar:before,
.sidebar:after {
  position: absolute;
  content: '';
  width: 24px;
  height: 4px;
  background: #46341E;
  top: 0;
  bottom: 0;
  margin: auto;
}

.sidebar:before {
  left: 0;
}

.sidebar:after {
  right: 0;
}

.sitter1 h2 {
  font-size: 3.2rem;
  text-align: center;
}

.updots.green span:before {
  background: #B71717;
  top: -3px;
}

.content03.sitter2 ul {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  align-items: baseline;
  margin: 0 auto 45px;
}

.content03.sitter2 li {
  max-width: 270px;
  width: 23%;
  margin-top: 25px;
}

.sitter2 .co3d {
  padding: 22px 25px;
  min-height: 134px;
  text-align: center;
  font-size: 1.8rem;
}

.dogsitter .content03:before,
.dogsitter2 .content03:after {
  position: absolute;
  content: '';
  width: 40%;
  height: 100%;
  z-index: -1;
}

.dogsitter .content03:before {
  background: url(./img/dogsitter/co22.svg) no-repeat top right;
  left: 0;
  top: -45px;
}

.dogsitter .content03:after {
  background: url(./img/dogsitter/co21.svg) no-repeat top left;
  right: 0;
  top: -30px;
  width: 41%;
}

.catsitter .content03:before,
.catsitter .content03:after {
  position: absolute;
  content: '';
  width: 41%;
  height: 100%;
  z-index: -1;
}

.catsitter .content03:before {
  background: url(./img/catsitter/co22.svg) no-repeat top right;
  left: 0;
  top: 10px;
}

.catsitter .content03:after {
  background: url(./img/catsitter/co21.svg) no-repeat top left;
  right: 0;
  top: -65px;
  width: 42%;
}

.littlecritter .content03:before,
.littlecritter .content03:after {
  position: absolute;
  content: '';
  width: 41%;
  height: 100%;
  z-index: -1;
}

.littlecritter .content03:before {
  background: url(./img/littlecritter/co22.svg) no-repeat top right;
  left: 0;
  top: 40px;
}

.littlecritter .content03:after {
  background: url(./img/littlecritter/co21.svg) no-repeat top left;
  right: 0;
  top: 30px;
  width: 42%;
}

.abs4.abs4wh {
  background: url(./img/nami2.png);
  z-index: -1;
}

.sitter2 .btnarea {
  margin: 10px auto 0;
  max-width: 1200px;
  width: 100%;
  max-width: 810px;
}

.sitter2 .btnarea .brobtn {
  width: 48%;
  max-width: 373px;
}

.sitter2.content03 {
  padding: 40px 0 80px;
}

.sitter3 {
  padding: 135px 0 0;
}

.sitter3 .titarea {
  position: relative;
  width: fit-content;
  margin: auto;
  padding: 0 100px;
}

.sitter3 .titarea:after {
  position: absolute;
  content: '';
  width: 146px;
  height: 112px;
  background: url(./img/co81.png) no-repeat;
  background-size: contain;
  right: 0;
  top: -70px;
}

.sitter3 ul {
  margin: 55px auto 0;
}

.sitter3 li {
  display: flex;
  margin-bottom: 100px;
  align-items: center;
  justify-content: space-between;
}

.sitter3 li:nth-child(2) {
  flex-direction: row-reverse;
}

.sitter3 li .si3l {
  margin-right: 10px;
}

.sitter3 li:nth-child(2) .si3l {
  margin-right: 0px;
  margin-left: 10px;
}

.si3l p {
  max-width: 400px;
}

.si3l h3 {
  font-size: 3.2rem;
  margin-bottom: 20px;
  max-width: 420px;
}

.sitter3 li .img {
  max-width: 560px;
  width: 48%;
}

.content06.sitter4 {
  padding: 240px 0 125px;
}

.sitter4 .titarea p {
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 3.2rem;
  font-weight: 700;
  margin-bottom: 10px;
}

.sitter4 .titarea p img {
  margin-right: 10px;
}

.si4p2 {
  font-size: 1.6rem;
  text-align: center;
  padding: 25px 0;
  border-top: 4px dotted;
  border-bottom: 4px dotted;
  margin-bottom: 45px;
}

.sitter4 .co6main {
  border-radius: 10px;
}

.si4p1 {
  font-size: 1.2rem;
  font-weight: 700 !important;
  text-align: center;
  padding: 2px 0;
  margin: 15px auto 0;
}

.big .price {
  flex-direction: column;
  align-items: flex-start;
}

.big .prip1 {
  padding: 0 28px;
}

.co61l .big .prip2 {
  line-height: 1.4;
}

.sitter5 {
  padding: 120px 0;
}

.sitter5 table {
  margin: 25px auto 0;
  max-width: 1200px;
  width: 100%;
}

.sitter5 th {
  border-bottom: 1px solid;
  border-top: 1px solid;
  border-left: 1px solid;
  background-color:#FFF5F5;
}

.sitter5 tr:first-child th{
  background-color:#ffffff;
}

.sitter5 td {
  background: #fff;
  text-align: center;
  width: 19.4% !important;
  vertical-align: middle; 
}

.sitd1 {
  height: 94px;
  border: 1px solid;
  vertical-align: middle; 
}

.sitd1 img{
  width: 24.5px;
}

.sitd2 {
  height: 76px;
  border:none;
}

.sitter5 .notb {
  border: none;
}

.rad1 {
  border-radius: 10px 0 0 0;
}

.rad2 {
  border-radius: 0 10px 0 0;
}

.rad3 {
  border-radius: 0 0 0 10px;
}

.rad4 {
  border-radius: 0 0 10px 0px;
}

.sitter6 .brobtn {
  margin: 30px auto 0;
}

.sitter6 .fukidashi {
  margin: 0px 0 -40px;
}

.sitter6 .content08 .mainTit:after {
  display: none;
}

.sitter .contact-area {
  background: #669f4f;
}

.content07.sitter6 {
  padding: 0 0 360px;
}

.sitter6:before {
  position: absolute;
  content: '';
  background: url(./img/co42.png) no-repeat center bottom;
  background-size: contain;
  max-width: 1200px;
  width: 95%;
  height: 300px;
  left: 0;
  right: 0;
  margin: auto;
  bottom: -82px;
  z-index: -1;
}

.sitter4 .co61r li.sp {
  display: none;
}

.catsitter .co71 {
  background: url(./img/catsitter/bg7.jpg) no-repeat center;
}

.si4ul {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
}

.si4ul li {
  max-width: 500px;
  width: 49%;
  margin-bottom: 35px;
}

.si4ul h3 {
  border-radius: 10px 10px 0 0;
  display: flex;
  justify-content: center;
  align-items: center;
  height: 48px;
  font-size: 1.4rem;
}

.si4ul li .txt {
  border: 1px solid #669f4f;
  border-radius: 0 0 10px 10px;
  min-height: 141px;
  font-size: 1.6rem;
  padding: 20px;
}

.si4ulp {
  font-size: 1.4rem;
}

.littlecritter .co71 {
  background: url(./img/littlecritter/bg7.jpg) no-repeat center;
}

/* price */

.pri1 {
  position: relative;
  padding: 0 0 170px;
}

.pri1 .updots span:before {
  background: #669f4f;
}

.pri1 h2 {
  font-size: 3.2rem;
  text-align: center;
  line-height: 1.4;
  padding-bottom: 25px;
  position: relative;
  max-width: 880px;
  margin: 0 auto 30px;
}

.pri1 h2:before,
.pri1 h2:after {
  position: absolute;
  content: '';
  width: 130px;
  height: 95px;
  background: url(./img/co23.png) no-repeat;
  z-index: 0;
}

.pri1 h2:before {
  left: 0;
  bottom: 0;
}

.pri1 h2:after {
  bottom: 20px;
  right: 0;
}

.pri1ul1 li {
  background: #fff;
  margin-bottom: 20px;
  display: flex;
  font-size: 2.4rem;
  font-weight: 700;
  align-items: center;
  padding: 0 0 0 80px;
  height: 83px;
  border: 1px solid #cccccc;
}

.pri1ul1 li .pri1d {
  display: flex;
  align-items: center;
}

.pri1ul1 li p {
  margin-left: 10px;
}

.pri1p {
  font-size: 1.4rem;
  font-weight: 700;
  line-height: 1;
}

.pri1ul2 {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
}

.pri1ul2 li {
  margin-top: 35px;
  max-width: 373px;
  width: 31%;
}

.pri1ul2 li .btn {
  max-width: initial;
  width: 100%;
  border: none;
}

.pri2 .abs4 {
  position: absolute;
  width: 100%;
  height: 102px;
  bottom: auto;
  top: -40px;
}

.content06.sitter4.pri2 {
  padding: 140px 0 125px;
}

.pri2 .co6tit {
  height: 80px;
  margin-bottom: 40px;
  border-radius: 10px;
}

.prisi5.sitter5 {
  padding: 80px 0;
  border-radius: 0;
  margin: 0;
}

.co6main.prid {
  border-radius: 0;
  padding: 0;
  margin: 0;
}

.prid1 {
  margin-bottom: 40px;
  padding: 75px 7.7%;
  border-radius: 10px;
}

.prid2 {
  display: flex;
  align-items: center;
  margin-bottom: 25px;
  font-size: 1.6rem;
}

.prid2p1 {
  width: 88px;
  display: flex;
  align-items: center;
  justify-content: center;
  height: 32px;
  border-radius: 26px;
  margin-right: 15px;
  font-weight: 700;
}

.prid2p2 {
  font-weight: 500;
}

.pridul {
  display: flex;
  justify-content: space-between;
}

.pridul li {
  width: 19%;
  position: relative;
}

.pridul li:nth-child(1):before {
  position: absolute;
  content: '';
  background: url(./img/price/plus.svg) no-repeat;
  width: 16px;
  height: 16px;
  right: -16%;
  bottom: 0;
  top: 0;
  margin: auto;
}

.pridul li:nth-child(3):before {
  position: absolute;
  content: '';
  background: url(./img/price/arrow.svg) no-repeat;
  width: 16px;
  height: 8px;
  left: -14%;
  bottom: 0;
  top: 0;
  margin: auto;
}

.pridul li:nth-child(4):before {
  position: absolute;
  content: '';
  width: 0;
  height: 0;
  border-style: solid;
  border-width: 12px 21px 12px 0;
  border-color: transparent #fddd6e transparent transparent;
  left: -15px;
  bottom: 0;
  top: 0;
  margin: auto;
  z-index: -1;
}

.pridul li:nth-child(3) {
  width: 21%;
}

.pridul li:nth-child(4) {
  width: 28%;
  border-radius: 10px;
  display: flex;
  align-items: center;
  justify-content: center;
  z-index: 1;
}

.pridup1 {
  text-align: center;
  font-size: 1.4rem;
  font-weight: 700;
  padding: 8.5px 0;
}

.pridup2 {
  background: #fff;
  border: 1px solid;
  text-align: center;
  font-size: 1.8rem;
  font-weight: 700;
  padding: 4px 0;
}

.pridup2 span {
  font-size: 1.4rem;
  font-weight: 500;
}

.pridup3 {
  font-size: 1.8rem;
  font-weight: 700;
}

.pridup3 span {
  font-size: 3.2rem;
}

.pri2d {
  margin-bottom: 120px;
}

.pri2d2 {
}

.pri2d2d {
  padding: 35px 35px 10px;
  margin-bottom: 55px;
}

.pri2d2d h3 {
  padding-left: 15px;
  font-size: 1.8rem;
  font-weight: 700;
}

.pri2d2d h3.lbar:before {
  background: #46341E;
  height: 26px;
}

.pri2d2d p {
  font-size: 1.6rem;
  font-weight: 500;
  margin-bottom: 25px;
}

.pri3 {
  position: relative;
  padding: 12% 0 0px;
  background: url(./img/bg8.png) no-repeat top center #fff;
  background-size: contain;
}

.pri3 > div {
  padding: 0 0 150px;
}

.pri3 ul {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
}

.pri3 li {
  max-width: 500px;
  width: 49%;
  margin-top: 25px;
  background: #fff;
  padding: 20px;
  border: 2px solid #669f4f;
}

.pri3tit {
  display: flex;
  align-items: center;
  margin-bottom: 20px;
  padding-bottom: 20px;
  background-image: linear-gradient(to right, #669f4f 3px, transparent 1px);
  background-size: 13px 3px;
  background-repeat: repeat-x;
  background-position: left bottom;
}

.pri3tit h3 {
  margin-left: 10px;
  font-size: 2.4rem;
}

.pri3tit h3 img {
  height: 38px;
}

.pri3txt {
  min-height: 135px;
  display: flex;
  flex-direction: column;
  justify-content: space-between;
}

.pri3p1 {
  font-size: 1.6rem;
}

.pri3p2 {
  font-weight: 700;
  font-size: 3.2rem;
}

.pri3p2 span {
  font-size: 1.6rem;
}

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

.pri4dl {
  max-width: 560px;
  padding-top: 65px;
  width: 50%;
}

.pri4dl h2 {
  padding: 40px 0;
  width: fit-content;
}

.pri4dl h2.bgte:before {
  background: url(./img/price/co42.svg) no-repeat;
  background-size: contain;
}

.pri4 .img {
  max-width: 560px;
  width: 53%;
  margin-left: 10px;
}

.pri5 {
  position: relative;
  z-index: 1;
  background: url(./img/price/bg5.png) no-repeat left top;
  background-size: cover;
  padding: 230px 0 140px;
  margin-bottom: -50px;
}

.pri5 .abs3 {
  top: -1px;
}

.pri5p1 {
  margin: 40px 0 0;
  font-size: 2.4rem;
  font-weight: 700;
  text-align: center;
  line-height: 1.6;
}

.pri5p1 span {
  text-decoration: underline;
}

.pri5p2 {
  font-size: 1.6rem;
  width: fit-content;
  margin: 20px auto 30px;
}

.pri5p3 {
  text-align: center;
  padding: 16px 0;
  margin-bottom: 30px;
  border-top: 4px dotted;
  border-bottom: 4px dotted;
}

.pri5 ul {
  display: flex;
  justify-content: center;
  margin-bottom: 40px;
}

.pri5 li {
  text-align: center;
  width: 33.333%;
}

.pri5p4 {
  padding: 12px 0;
  border-right: 1px solid #fff;
  font-size: 1.6rem;
  font-weight: 500;
}

.pri5p5 {
  border: 1px solid #669f4f;
  background: #fff;
  font-size: 1.8rem;
  font-weight: 700;
  padding: 9.5px 0;
}

.pri5 li:last-child .pri5p4 {
  border: none;
}

.pri5d {
}

.pri5d h3 {
  max-width: 416px;
  text-align: center;
  margin: auto;
  border-radius: 10px 10px 0 0;
  font-size: 1.8rem;
  padding: 5px 0px;
}

.pri5txt {
  border: 2px solid #fddd6e;
  padding: 35px 40px;
  background: url(./img/price/co51.svg) no-repeat right #fff;
  font-size: 1.6rem;
  border-radius: 10px;
}

.sitter4 .co61r li:nth-child(8) {
  margin: 0 2.5% 20px 0;
}
.sitter4 .co61r li:nth-child(9) {
  margin: 0 0 20px 0;
}

/* flow */
.flow1 {
}

.flow1 h2 {
  font-size: 4rem;
  text-align: center;
}

.flow2 {
  padding: 0 0 120px;
}

.flow2 ul {
}

.flow2 li {
  margin: 80px auto 0;
  padding-bottom: 80px;
  position: relative;
}

.flow2 li:before {
  position: absolute;
  content: '';
  width: 0;
  height: 0;
  border-style: solid;
  border-width: 21px 12px 0 12px;
  border-color: #46341E transparent transparent transparent;
  left: 0;
  right: 0;
  margin: auto;
  bottom: 0;
}

.flowtit {
  margin-bottom: 40px;
  position: relative;
}

.flowtit:before {
  right: 0;
  position: absolute;
  content: '';
  width: 77%;
  height: 0;
  border-bottom: 4px dotted;
  top: 0;
  bottom: 0;
  margin: auto;
}

.flow2 li:nth-child(2) .flowtit:before {
  width: 70%;
}

.flow2 li:nth-child(3) .flowtit:before {
  width: 90%;
}

.flow2 li:nth-child(4) .flowtit:before {
  width: 84%;
}

.flow2 li:nth-child(5) .flowtit:before {
  width: 86%;
}

.flow2 li:nth-child(5):before {
  display: none;
}

.flowtit h2 {
  font-size: 2.4rem;
  line-height: 1.4;
}

.flowtit h2 span {
  font-size: 1.6rem;
  font-weight: 500;
}

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

.flow2d .img {
  width: 48%;
  max-width: 560px;
}

.flow2d .txt {
  max-width: 560px;
  margin-left: 10px;
  width: 48%;
}

.flow2d .txt p {
  margin-bottom: 30px;
}

.flsp1 {
  text-decoration: underline;
}

.flow2d .txt .noma {
  margin: 0;
}

/* about */
.abo1 {
  padding: 0 0 90px;
}

.abo1 h2 {
  font-size: 4rem;
  text-align: center;
  line-height: 1.4;
}

.abo1 ul {
  margin-top: 50px;
}

.abo1 li {
  display: flex;
  justify-content: space-between;
  align-items: center;
  margin-bottom: 80px;
}

.abo1 li:last-child {
  flex-direction: row-reverse;
}

.abo1 li .img {
  max-width: 560px;
  width: 48%;
}

.abo1d {
  max-width: 560px;
  width: 50%;
}

.abo2 {
  position: relative;
  padding-bottom: 80px;
  z-index: 1;
}

.abtit .sidebar {
  margin: 0 auto 20px;
  font-size: 1.8rem;
  /* font-weight:500; */
}

.sidebar:before,
.sidebar:after {
  height: 2px;
  background: #B71717;
}

.abtb {
  width: 100%;
  margin: 50px auto;
  border-collapse: collapse;
}

.abo3 {
  padding: 140px 0 170px;
  background: url(./img/about/bg3.png) no-repeat right top;
  background-size: cover;
  position: relative;
}

.abo3 ul {
  display: flex;
  justify-content: space-between;
  margin: 40px auto;
}

.abo3 li {
  width: 15%;
}

.abo3d {
  padding: 40px;
  background: #fff;
}

.abo3d p {
  margin-bottom: 30px;
  font-weight: 700;
}

.abo3d .noma {
  margin: 0;
}

.abs5 {
  position: absolute;
  display: flex;
  width: 100%;
  bottom: -1px;
  justify-content: space-between;
}

.abs5l,
.abs5r {
  margin: auto;
  z-index: 1;
  width: 0;
  height: 0;
  border-style: solid;
}

.abs5l {
  border-width: 160px 0 0 50vw;
  border-color: transparent transparent transparent #fff;
}

.abs5r {
  border-width: 0 0 160px 50vw;
  border-color: transparent transparent #fff transparent;
}

.abo4 {
  position: relative;
  z-index: 1;
  padding: 60px 0 0;
}

.abo4 .abo4ab {
  position: absolute;
  left: 0;
  right: 0;
  margin: auto;
  top: -30px;
}

.abo4 .ribon {
  margin: 0px auto 20px;
  padding: 12px 79px;
}

.abo4 h2 > span {
  position: relative;
}

.abo4 h2 > span > span {
  position: absolute;
  font-size: 1.4rem;
  width: 100%;
  left: 0;
  top: -10px;
}

.abo4 ul {
  display: flex;
  justify-content: space-between;
  flex-wrap: wrap;
  align-items: stretch;
}

.abo4 li {
  width: 49%;
  max-width: 580px;
  margin-bottom: 40px;
}

.abo4p1 {
  border-radius: 10px 10px 0 0;
  height: 56px;
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 2.4rem;
}

.abo4 h3 {
  font-size: 1.8rem;
  min-height: 53px;
  margin-bottom: 15px;
}

.abo4 .txt {
  border-radius: 0 0 10px 10px;
  border: 4px solid #669f4f;
  border-top: none;
  min-height: 325px;
  padding: 40px;
}

.abo5 {
  position: relative;
  z-index: 0;
  padding: 180px 0 140px;
  background: url(./img/about/bg5.jpg) no-repeat center top;
  background-size: cover;
}

.abo5:before {
  position: absolute;
  content: '';
  background: #669f4fcc;
  width: 100%;
  height: 100%;
  z-index: -1;
  top: 0;
  left: 0;
}

.abo5 .up {
  top: -280px;
}

.abo5p1 {
  margin: 0 auto 15px;
  font-size: 1.8rem;
  max-width: 340px;
  width: 100%;
  height: 55px;
  display: flex;
  justify-content: center;
  align-items: center;
  border-radius: 28px;
  position: relative;
}

.abo5p1:before {
  position: absolute;
  content: '';
  background: url(./img/about/sankaku.svg) no-repeat;
  width: 40px;
  height: 34px;
  z-index: -1;
  bottom: -15px;
}

.abo5 h2 {
  text-align: center;
  font-size: 2.4rem;
}

.abotit2 {
  position: relative;
  padding-bottom: 40px;
  margin-bottom: 40px;
}

.abotit2:before {
  position: absolute;
  content: '';
  width: 28px;
  height: 0;
  border-bottom: 5px dotted #fff;
  bottom: 0;
  left: 0;
  right: 0;
  margin: auto;
}

.abo5 .txt p {
  color: #fff;
  margin-bottom: 25px;
}

.about .contact-area {
  margin: -55px auto 0;
}

.area .contact-area {
  margin: -55px auto 0;
}

/* area */

.area1 {
  padding-bottom: 170px;
  position: relative;
}

.area1:before {
  position: absolute;
  content: '';
  background: url(./img/co42.png) no-repeat center bottom;
  background-size: contain;
  max-width: 1200px;
  width: 95%;
  height: 300px;
  left: 0;
  right: 0;
  margin: auto;
  bottom: -82px;
  z-index: -1;
}

.area1 h2 {
  padding-bottom: 25px;
  margin-bottom: 25px;
}

.area1 p {
  text-align: center;
}

.area1 h2:before {
  position: absolute;
  content: '';
  width: 28px;
  height: 0;
  border-bottom: 5px dotted #46341E;
  bottom: 0;
  left: 0;
  right: 0;
  margin: auto;
}

/* .area2 h2{
	padding-bottom: 25px;
	margin-bottom: 25px;
}


.area2 h2:before {
	position: absolute;
    content: "";
    width: 28px;
    height: 0;
    border-bottom: 5px dotted #46341E;
    bottom: 0;
    left: 0;
    right: 0;
    margin: auto;
} */

.area2p1 {
  font-size: 1.8rem;
  text-align: center;
}

.area2p2 {
  padding: 25px 40px;
  border-top: 4px dotted;
  border-bottom: 4px dotted;
  max-width: 1040px;
  width: 100%;
  margin: 20px auto 80px;
}

.map1 {
  text-align: center;
}

.mapd {
  background: #fff;
  padding: 45px;
  margin-top: 55px;
}

.mapd h3 {
  padding-bottom: 20px;
  font-size: 3.2rem;
}

.mapd h3:before {
  position: absolute;
  content: '';
  width: 4px;
  height: 46px;
  background: #669f4f;
  left: 0;
  top: 8px;
  bottom: auto;
  margin: auto;
}

.mapd h3:after {
  position: absolute;
  content: '';
  width: 100%;
  height: 0;
  border-bottom: 1px dotted;
  left: 0;
  bottom: 0;
}

.mapd ul {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  margin-top: 30px;
}

.mapd li {
  margin-right: 20px;
}

/* .area3{
	background: #fff;
	position: relative;
	z-index: 1;
	padding: 250px 0 0;
}

.area3:before{
	display:none;
} */

.area3 li {
  position: relative;
}

.area3p {
  max-width: 580px;
  margin: auto;
}

.area4 {
}

.area4 .co72 {
  background: #fff !important;
}

.area4 .content08 {
  margin-top: 0;
  padding: 180px 0 0;
}

.area4 .content08 .mainTit:after {
  display: none;
}

.area4p1 {
  text-align: center;
  font-size: 2.4rem;
  font-weight: 700;
  position: absolute;
  left: 0;
  right: 0;
  margin: auto;
  top: 15px;
}

.area5 {
  background: url(./img/area/bg4.png) no-repeat center;
  background-size: cover;
  background-position: center -80px;
  padding: 125px 0 180px;
  position: relative;
  /* margin-top: 50px; */
}

.area5 h2 {
}

.area5 h2:before {
  z-index: -1;
  background: url(./img/price/co42.svg) no-repeat;
  background-size: contain;
}

.area5 ul {
  display: flex;
  justify-content: space-between;
}

.area5 li {
  max-width: 373px;
  width: 32%;
}

.area5 .btn {
  border: none;
}

.area5d {
  background: #fff;
  display: flex;
  margin-top: 80px;
  justify-content: space-between;
  border-radius: 10px;
}

.area5dl {
  padding: 40px;
  margin: auto;
}

.area5dl h3 {
  text-align: center;
  font-size: 4rem;
  padding: 15px;
}

.area5dl p {
  margin: 20px 0;
  font-size: 1.8rem;
  max-width: 480px;
}

.area5d .img {
}

.area5d img {
  object-fit: cover;
  height: 100%;
  width: 100%;
  border-radius: 0 10px 10px 0;
}

.area2ifr {
  width: 100%;
  margin: 40px auto;
}

.area2ifr iframe {
  width: 100%;
}

.area2d {
  display: flex;
  justify-content: space-between;
  margin: 0 auto 80px;
  flex-wrap: wrap;
}

.areatab {
  margin: 0 auto 60px;
}

.area2ul2 {
  max-width: 580px;
  width: 48%;
}

.area2ul2 li {
  display: flex;
  justify-content: space-between;
  height: 70px;
  align-items: center;
  background: #fff;
  padding: 0 20px;
}

.area2ul2 li:nth-child(2n) {
  background: none;
}

.area2ul2 li p {
  font-weight: 700;
}

.area2ul2 li p + p {
  font-weight: 500;
}

.area2 .ctab {
  width: 50%;
  text-align: center;
  padding: 15px 0;
  border-radius: 10px 10px 0 0;
  cursor: pointer;
  font-size: 2.4rem;
}

.artab2 {
  background: #fff;
  border: 4px solid #669f4f;
  display: none;
  padding: 45px;
}

.artab3 {
  border: 4px solid #fddd6e;
}

.artab2.active {
  display: block;
}

.artul2 > li {
  display: flex;
  margin: 0 0 25px;
  align-items: center;
}

.artul2 > li:last-child {
  margin: 0;
}

.artul3 {
  display: flex;
  flex-wrap: wrap;
}

.artag {
  font-size: 1.4rem;
  font-weight: 700;
  border: 1px solid;
  width: 70px;
  text-align: center;
}

.artul3 li {
  margin-left: 20px;
  font-size: 1.4rem;
}

/* course1 */
.lphd {
  display: flex;
  justify-content: center;
  align-items: center;
  font-size: 1.8rem;
  width: 256px;
  height: 80px;
  position: relative;
}

.lphd .img {
  margin-right: 10px;
}

.lphd p {
  line-height: 1.5;
}

.cover2 {
  background: url(./img/course/mv.jpg) no-repeat center;
  background-size: cover;
  margin: 80px auto 0;
  max-height: 880px;
  height: 100vh;
  width: 100%;
  display: flex;
  align-items: center;
}

.cover2-231118 {
  width: 100%;
  margin: 80px auto 0;
}

.cover2-231118 img {
  width: 40%; /* 画像の幅をコンテナの幅に合わせる */
  height: auto; /* 画像の高さを縦横比に基づいて自動調整 */
  display: block; /* 画像をブロック要素として表示 */
  margin: 0 auto;
}

.cta-area {
  display: flex;
  justify-content: center;
  align-items: center;
  max-width: 1920px;
  width: 95%;
  margin: 30px auto;
}

.cta-btn {
  display: flex;
  max-width: 600px;
  width: 90%;
  height: 62px;
  align-items: center;
  justify-content: center;
  background: #eaa850;
  border: 1px solid #fff;
  border-radius: 37px;
  margin: 1px;
  box-shadow: 0px 3px 6px rgba(0, 0, 0, 0.4);
  color: #fff !important;
  font-size: min(6.15vw, 20px);
  font-weight: bold;
}

/* 警告エリアに対するスタイル */
.caution-area {
  display: flex;
  justify-content: center; /* 子要素を中央に配置 */
  width: 100%; /* 親要素の幅に合わせる */
  margin-top: 20px;
  margin-bottom: 45px;
}

/* 画像に対するスタイル */
.caution-area img {
  max-width: 95%; /* 画像の最大幅を親要素の幅に合わせる */
  height: auto; /* 高さを自動調整して縦横比を維持 */
}

.cocov {
  margin-left: 14.8%;
}

.cocop1 {
  font-size: 2.4rem;
  padding: 12.5px 39px;
  border-radius: 33px;
  font-weight: 500;
  width: fit-content;
}

.cocop1 .updots span:before {
  background: #fff;
  height: 5px;
  width: 5px;
}

.coh2 {
  font-size: 6.4rem;
  line-height: 1.48;
  text-shadow: 0 0 24px #333333;
  margin: 30px 0 45px;
  letter-spacing: 11.4px;
}

.cover2 ul {
  display: flex;
  max-width: 600px;
  justify-content: space-between;
}

.cover2 li {
  background: #fff;
  border-radius: 10px;
  max-width: 175px;
  width: 32%;
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  min-height: 175px;
  text-align: center;
  font-weight: 700;
}

.cover2 li p {
  margin-top: 10px;
}

.course section {
  position: relative;
  z-index: 1;
}

.cou1 {
  margin: 60px auto 80px;
}

.cou1d {
  background: url(./img/course/co11.jpg) no-repeat center;
  padding: 8px;
  background-size: cover;
}

.cou1d2 {
  border: 2px solid white;
  padding: 45px 0;
}

.cou1d2 h2 {
  text-align: center;
  font-size: 2.4rem;
  font-weight: 700;
  padding-bottom: 35px;
  margin-bottom: 35px;
  position: relative;
}

.cou1d2 h2:before {
  position: absolute;
  content: '';
  width: 32px;
  height: 4px;
  background: #fff;
  bottom: 0;
  left: 0;
  right: 0;
  margin: auto;
}

.cou1d2 ul {
  max-width: 625px;
  margin: auto;
}

.cou1d2 li {
  display: flex;
  align-items: center;
  margin-bottom: 20px;
  font-weight: 700;
}

.cou1d2 li:last-child {
  margin: 0;
}

.cou1d2 li .img {
  display: flex;
  align-items: center;
  justify-content: center;
  margin-right: 5px;
  width: 18px;
}

.cou2 {
  background: url(./img/course/bg2.png) no-repeat center;
  background-size: cover;
  height: 230px;
  display: flex;
  justify-content: center;
  align-items: center;
  margin-bottom: 80px;
}

.cou3 {
  margin-bottom: 120px;
}

.cou3 ul {
  display: flex;
  justify-content: space-between;
}

.cou3 li {
  background: #fff;
  border-radius: 10px;
  z-index: 1;
  max-width: 500px;
  width: 49%;
}

.cou3 li .txt {
  padding: 30px 0 45px;
  position: relative;
}

.cou3 li h2 {
  font-size: 2.4rem;
  text-align: center;
  margin: 0px auto 30px;
}

.cou3p1 {
  width: fit-content;
  margin: auto;
  text-align: center;
}

.cou3p2 {
  position: absolute;
  font-size: 14rem;
  font-weight: 500;
  color: #e8ede3;
  bottom: 0;
  right: 0px;
  height: 140px;
  z-index: -1;
  display: flex;
  justify-content: center;
  align-items: center;
  letter-spacing: 7px;
}

.cou4 {
  background: url(./img/course/bg4.png) no-repeat top center;
  background-size: cover;
  padding: 100px 0 170px;
}

.cou4 h2 {
  margin-top: 10px;
  line-height: 1.4;
}

.cou5 {
  margin: -120px auto 0;
}

.cou5ex .cou5d {
  padding-bottom: 65px;
}

.cou5 h2 {
  max-width: 880px;
  margin: 0 auto -1px;
  text-align: center;
  border-radius: 10px 10px 0 0;
  padding: 6px 0;
  width: 90%;
}

.lptit1 {
  font-size: 3.2rem;
}

.cou5sp1 {
  font-size: 1.8rem;
}

.cou5dl {
  text-align: center;
  margin: 0 4%;
  width: 44%;
}

.cou5d {
  padding: 45px 0 0;
}

.cou5d2 {
  display: flex;
  max-width: 880px;
  justify-content: space-between;
  margin: auto;
}

.cou5dp1 {
  font-size: 1.8rem;
  margin-bottom: 10px;
}

.cou5dp2 {
  font-size: 4.8rem;
  font-weight: 700;
  line-height: 1;
}

.cou5dp3 {
  font-size: 1.4rem;
}

.cou5dr {
  text-align: center;
  width: 48%;
  max-width: 420px;
}

.cou5dr .btn {
  width: 100%;
  max-width: initial;
  border: none;
}

.cou6 {
  padding: 135px 0;
}

.cou6:before,
.cou6:after {
  position: absolute;
  content: '';
  width: 35%;
  height: 100%;
  z-index: -1;
}

.cou6:before {
  background: url(./img/course/co611.svg) no-repeat top right;
  left: 0;
  top: 140px;
}

.cou6:after {
  background: url(./img/course/co612.svg) no-repeat top left;
  right: 0;
  top: 195px;
  width: 38%;
}

.coutit {
  text-align: center;
}

.coutit .img {
  max-width: 240px;
  margin: auto;
}

.cou6 h2 {
  font-size: 5.6rem;
  line-height: 1.45;
  margin-top: -35px;
}

.cou6 .big {
  font-size: 9.6rem;
}

.cou6 ul {
  display: flex;
  justify-content: center;
  align-items: stretch;
  flex-wrap: wrap;
  column-gap: 3.3%;
  margin: 100px auto 0;
}

.cou6 li {
  background: #fff url(./img/course/co621.svg) no-repeat center;
  border: 5px solid #669f4f;
  width: 31%;
  margin-bottom: 100px;
  min-height: 300px;
  position: relative;
  display: flex;
  justify-content: center;
  align-items: center;
  padding: 0 1.7%;
}

.cou6 li:nth-child(2) {
  background: #fff url(./img/course/co622.svg) no-repeat center;
}

.cou6 li:nth-child(3) {
  background: #fff url(./img/course/co623.svg) no-repeat center;
}

.cou6 li:nth-child(4) {
  background: #fff url(./img/course/co624.svg) no-repeat center;
}

.cou6 li:nth-child(5) {
  background: #fff url(./img/course/co625.svg) no-repeat center;
}

.cou6p1 {
  position: absolute;
  font-size: 3.2rem;
  width: 83px;
  height: 83px;
  border-radius: 50%;
  display: flex;
  justify-content: center;
  align-items: flex-start;
  top: -45px;
  left: 0;
  right: 0;
  margin: auto;
  z-index: -1;
}

.cou6 li h3 {
  font-size: 2.4rem;
  text-align: center;
}

.cou6p2 {
  margin-top: 20px;
}

.cou6p3 {
  font-size: 1.2rem;
  font-weight: 700;
  margin-top: 10px;
}

.cou7 {
  padding: 170px 0 0;
}

.cou7:before,
.cou7:after {
  position: absolute;
  content: '';
}

.cou7:before {
  background: url(./img/course/co71.svg) no-repeat center;
  width: 440px;
  height: 300px;
  right: 40px;
  top: 70px;
}

.cou7:after {
  background: url(./img/course/co72.svg) no-repeat center;
  width: 280px;
  height: 300px;
  left: 0;
  bottom: 70px;
  z-index: -1;
}

.cou7 .abs4 {
  position: absolute;
  width: 100%;
  height: 102px;
  bottom: auto;
  top: -40px;
}

.cou7 .img {
  max-width: 192px;
  margin: 0 auto 10px;
}

.cou7p {
  font-weight: 700;
  text-align: center;
  margin: 30px auto 55px;
}

.coutb1 {
  margin: 25px auto;
  max-width: 1200px;
  width: 100%;
  border-collapse: inherit;
}

.coutb1 th {
  border-bottom: 1px solid;
  border-top: 1px solid;
  border-left: 2px solid#46341E;
}

.coutb1 tr:last-child th {
  border-bottom: 2px solid#46341E;
}

.coutb1 td {
  background: #fff;
  text-align: center;
}

.coutb1 td img {
  margin: auto;
}
.couth {
  width: 18.7%;
  font-size: 1.8rem;
}

.coutd1 {
  height: 87px;
  border-radius: 10px 10px 0 0;
  border-bottom: 0;
  font-size: 2.4rem;
  font-weight: 700;
}

.coutd2 {
  height: 170px;
  border: 2px solid;
  width: 27%;
}

.coutb1 .noth {
  border: none;
}

.cou7p2 {
  font-size: 1.4rem;
}

.cou8 {
  padding: 195px 0 0px;
  background: url(./img/bg8.png) no-repeat top center #fff;
  background-size: contain;
  z-index: 1;
}

.cou8 .bgcr:before {
  position: absolute;
  content: '';
  width: 381px;
  height: 520px;
  background: url(./img/course/co81.png) no-repeat top center;
  right: 25%;
  top: -31%;
  z-index: -1;
}

.cou8 .bgcr {
  padding: 150px 0 200px;
  z-index: -1;
  position: relative;
}

.abcoutxt {
  position: absolute;
  font-size: 12rem;
  color: #46341E;
  opacity: 0.1;
  font-weight: 500;
}

.cou8 .abcoutxt {
  top: -5%;
}

.cou8d {
  background: #fff;
  border: 4px solid #669f4f;
  padding: 50px 4.9%;
}

.cou8d1 {
  display: flex;
  justify-content: space-between;
  align-items: center;
  border-bottom: 1px dotted #669f4f;
  padding-bottom: 20px;
  margin-bottom: 20px;
}

.cou8p1 {
  font-size: 3.2rem;
  font-weight: 700;
}

.cou8p1 span {
  font-size: 1.8rem;
}

.cou9 {
  padding: 220px 0 120px;
  background: #fff;
}

.cou9:before {
  position: absolute;
  content: '';
  background: url(./img/course/co91.png) no-repeat;
  width: 392px;
  height: 368px;
  top: 13%;
  right: 14%;
}

.cou9d {
  text-align: left;
}

.cou9d p {
  margin: 0 0 5px;
}

.cou9d h2 {
  text-align: left;
}

.cou9l1 {
  margin: 80px 0 0;
}

.cou9l1 h3 {
  font-size: 2.4rem;
}

.cou9l1 h3:before {
  background: #46341E;
}

.cou9u2 {
  margin-top: 45px;
  display: flex;
  column-gap: 3.3%;
  align-items: stretch;
}

.cou9l2 {
  width: 22.5%;
  border: 4px solid #669f4f;
  border-radius: 10px;
  position: relative;
  display: flex;
  justify-content: center;
  align-items: center;
  min-height: 190px;
  background: #fff;
  font-weight: 700;
  padding: 25px 1.2%;
}

.cou9l2:last-child:before {
  display: none;
}

.cou9l2:before {
  position: absolute;
  content: '';
  width: 0;
  height: 0;
  border-style: solid;
  border-width: 6px 0 6px 14px;
  border-color: transparent transparent transparent #46341E;
  right: -12.5%;
}

.cou9p1 {
  position: absolute;
  width: 48px;
  height: 48px;
  border-radius: 50%;
  display: flex;
  justify-content: center;
  align-items: center;
  font-size: 2.4rem;
  top: -25px;
  font-weight: 500;
}

.cou9p3 {
  font-size: 1.2rem;
}

.cou9p4 {
  font-size: 1.2rem;
  margin-top: 20px;
}

.cou10 {
  background: url(./img/course/bg10.png) no-repeat center top #fff;
  background-size: cover;
  padding: 160px 0;
}

.cou10 .abcoutxt {
  top: 50px;
  left: 0;
  right: 0;
  margin: auto;
  width: fit-content;
  color: #ffffff;
}

.cou10p1 {
  font-weight: 700;
  text-align: center;
  margin-top: 40px;
}

.cou10u1 {
  display: flex;
  justify-content: space-between;
  flex-wrap: wrap;
  align-items: stretch;
}

.cou10l1 {
  width: 48%;
  background: #fff;
  margin-top: 35px;
  max-width: 580px;
  padding: 30px 2.5%;
  border-radius: 10px;
  min-height: 474px;
}

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

.cou10d .img {
  width: 35%;
}

.cou10u2 {
  max-width: 330px;
  width: 63%;
}

.cou10l2 {
  display: flex;
  justify-content: space-between;
  align-items: center;
  margin-bottom: 8px;
  margin-left: 3%;
}

.cou10p2 {
  width: 28%;
  text-align: center;
  height: 33px;
  border-radius: 4px;
  font-size: 1.2rem;
  display: flex;
  align-items: center;
  justify-content: center;
}

.bobr {
  border: 1px solid;
}

.bogr {
  border: 1px solid;
}

.cou10p3 {
  width: 67%;
  font-size: 1.4rem;
}

.cou10p4 {
  margin-top: 25px;
}

.cou10 .abs4 {
  position: absolute;
  width: 100%;
  height: 48px;
  bottom: 0px;
  background: url(./img/course/nami.png);
}

.cou11 {
  padding: 170px 0 240px;
}

.cou11 .abcoutxt {
  top: 40px;
  left: 0;
  right: 0;
  margin: auto;
  width: fit-content;
}

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

.cou11 ul {
  display: flex;
  justify-content: space-between;
  align-items: center;
}

.cou11 li {
  max-width: 545px;
  width: 49%;
  background: url(./img/course/co113.svg) no-repeat right bottom #fff;
  border: 1px solid #669f4f;
  display: flex;
  align-items: center;
  position: relative;
  transition: 0.5s;
  margin: 0 1%;
}

.cou11 li .txt {
  max-width: 250px;
  margin-left: 25px;
}

.cou11 li a {
  position: absolute;
  width: 100%;
  height: 100%;
  top: 0;
  left: 0;
  transition: 0.5s;
}

.cou11 li:hover {
  opacity: 0.5;
}

.cou11p2 {
  font-size: 1.8rem;
  font-weight: 700;
}

.cou11p3 {
  font-size: 1.4rem;
  margin-top: 5px;
}

.cou11 li .img {
  width: 48%;
}

.cou12 {
  padding: 150px 0;
}

.cou12 .abs2 {
  bottom: auto;
  top: 0;
  background: #669f4f;
}

.cou12 .coutit .img {
  max-width: 272px;
  margin-bottom: 10px;
}

.cou12 ul {
  display: flex;
  justify-content: space-between;
  margin: 70px auto 0;
}

.cou12 li {
  position: relative;
  width: 17.3%;
}

.cou12d {
  border: 4px solid #669f4f;
  border-radius: 10px;
  position: relative;
  display: flex;
  justify-content: center;
  align-items: center;
  background: #fff;
  font-weight: 700;
  padding: 20px 1.2% 0;
  flex-direction: column;
  min-height: 224px;
}

.cou12 li:last-child:before {
  display: none;
}

.cou12 li:before {
  position: absolute;
  content: '';
  width: 0;
  height: 0;
  border-style: solid;
  border-width: 6px 0 6px 14px;
  border-color: transparent transparent transparent #46341E;
  right: -12.5%;
  margin: auto;
  top: 35%;
}

.cou12p1 {
  position: absolute;
  width: 80px;
  height: 80px;
  border-radius: 50%;
  display: flex;
  justify-content: center;
  align-items: center;
  font-size: 3.2rem;
  top: -40px;
  font-weight: 500;
  background: #669f4f;
  color: #fff;
}

.cou12p2 {
  font-size: 1.8rem;
  font-weight: 700;
  margin-top: 10px;
}

.cou12p3 {
  font-size: 1.4rem;
  margin-top: 15px;
}

.cou13 {
  padding: 0 0 120px;
}

.cou13d {
  padding: 90px 6.7%;
}

/* インタビュー
----------------------------------------------------------- */
.inte01 .inner,
.inte02 .inner {
  max-width: 1040px;
}

.inte01 .box {
  display: flex;
  justify-content: space-between;
}

.inte01 .box .img {
  width: 46%;
}

.inte01 .box .txt {
  width: 48%;
  display: flex;
  flex-direction: column;
  justify-content: space-between;
}

.inte01 .box h3 {
  color: #669f4f;
  font-size: 3.2rem;
}

.inte01 .box .name {
  border-bottom: 2px dotted;
  padding: 0 0 13px 0;
  margin: 0 0 16px 0;
}

.inte01 .box .name p {
  font-size: 1.8rem;
}

.inte01 .box .name span {
  font-size: 1.4rem;
}

.inte01 .txtBox {
  border-top: 4px solid #46341E;
  border-bottom: 4px solid #46341E;
  padding: 2%;
  margin: 40px 0 70px 0;
}

.inte02 h4 {
  color: #669f4f;
  font-size: 2.4rem;
  margin: 80px 0 20px 0;
}

.inte02 dt {
  color: #669f4f;
  background: #fff;
  border: 1px solid #ccc;
  padding: 1.5%;
}

.inte02 dd {
  margin: 15px 0 43px 0;
}

.inte02 dd .img {
  margin: 25px 0 0 0;
}

.inte02 dd p {
  margin: 0 0 40px 0;
}

.inte02 .btnArea {
  display: flex;
  justify-content: center;
  margin: 80px 0 0 0;
}

.inte02 .btnArea a {
  margin: 0 2%;
}

.inte02 .cou11 {
  padding: 80px 0 140px;
}

.cou11 ul {
  display: flex;
  justify-content: center;
  align-items: center;
}

/* recruit */

.recruit .cover2 {
  background: url(./img/recruit/mv.jpg) no-repeat center;
  background-size: cover;
}

.recruit section {
  position: relative;
}

.recruit .cocop1 .updots span:before {
  background: #46341E;
  height: 5px;
  width: 5px;
}

.coreh2 {
  max-width: 912px;
}

.recruit .cover2 li {
  border: 4px solid #669f4f;
  background: #ffffffcc;
}

.rec1 {
  padding: 0 0 120px;
}

.rec1d {
  background: #fff url(./img/recruit/co11.svg) no-repeat right;
  border: 4px solid #669f4f;
  padding: 35px 30px;
  margin-bottom: 110px;
}

.rectit .fukidashi span {
  font-size: 1.8rem;
}

.rectit {
  position: relative;
  margin-bottom: 40px;
}

.rectit:before,
.rectit:after {
  position: absolute;
  content: '';
  background: url(./img/recruit/co12.svg) no-repeat;
  width: 130px;
  height: 95px;
}

.rectit:before {
  left: 0;
  top: 0;
}

.rectit:after {
  right: 0;
  top: 0;
}

.rectit h2 {
  margin-top: 10px;
}

.rec1d3 {
  display: flex;
  justify-content: space-between;
}

.rec1d3 .txt {
  max-width: 480px;
  width: 65%;
  margin-right: 10px;
}

.rec1d3 .txt p {
  margin-bottom: 15px;
  line-height: 1.5;
}

.rec1d3 .txt .noma {
  margin: 0;
}

.rec1d3 .img {
}

.rec2 {
  padding: 90px 0;
}

.rec2 .abcoutxt {
  top: 0;
  line-height: 1;
  width: fit-content;
  left: 0;
  right: 0;
  margin: auto;
}

.rec2p1 {
  text-align: center;
  margin: 30px auto 80px;
}

.rec2 ul {
  display: flex;
  justify-content: space-between;
}

.rec2 li {
  background: #fff;
  border-radius: 10px;
  max-width: 580px;
  width: 49%;
  text-align: center;
}

.rec2 h3 {
  border-radius: 10px 10px 0 0;
  font-size: 2.4rem;
  padding: 12px 0;
}

.rec2 li .txt {
  min-height: 390px;
  display: flex;
  justify-content: center;
  align-items: center;
  border-bottom: 1px dotted #669f4f;
}

.rec2 li .img {
  width: 90%;
}

.rec2 li:last-child .img {
  width: 70%;
}

.rec2p2 {
  font-size: 1.8rem;
  font-weight: 700;
  padding: 12.5px 0;
}

.rec3 {
  z-index: 1;
  padding: 250px 0 290px;
}

.rec3:before,
.rec3:after {
  position: absolute;
  content: '';
  width: 35%;
  height: 100%;
  z-index: -1;
}

.rec3:before {
  background: url(./img/recruit/co311.svg) no-repeat top right;
  left: 0;
  top: 170px;
}

.rec3:after {
  background: url(./img/recruit/co312.svg) no-repeat top left;
  right: 0;
  top: 170px;
  width: 33%;
}

.rec3 ul {
  margin-top: 140px;
}

.rec3 li {
  display: flex;
  justify-content: space-between;
  align-items: flex-start;
  margin-bottom: 180px;
}

.rec3 li:last-child {
  margin: 0;
  flex-direction: row-reverse;
}

.rec3l {
  max-width: 560px;
  width: 75%;
  margin-right: 10px;
}

.rec3 li:last-child .rec3l {
  margin-right: 0px;
  margin-left: 10px;
}

.rec3l h3 {
  font-size: 3.2rem;
  margin-bottom: 20px;
}

.rec3 li .img {
  position: relative;
}

.rec3ab {
  position: absolute;
  font-size: 12rem;
  -webkit-text-stroke: 1px #669f4f;
  color: transparent;
  right: 0;
  top: -70px;
  line-height: 1;
}

.rec3 li:last-child .rec3ab {
  right: auto;
  left: 0;
}

.rec4 {
  padding: 20px 0 75px;
  z-index: 1;
}

.rec4:before {
  position: absolute;
  content: '';
  width: 791px;
  height: 755px;
  background: url(./img/recruit/co45.svg) no-repeat left center;
  top: 0;
  bottom: 0;
  margin: auto;
  right: -115px;
  z-index: -1;
}

.rec4tit .sidebar:before,
.rec4tit .sidebar:after {
  background: #46341E;
}

.rec4tit h2 {
  font-size: 5.6rem;
  text-align: center;
  line-height: 1.1;
}

.rec4tit h2 .big {
  font-size: 9.6rem;
}

.rec4 ul {
  display: flex;
  justify-content: space-between;
  margin: 80px auto 40px;
  max-width: 1080px;
  width: 100%;
}

.rec4 li {
  position: relative;
  width: 22%;
  max-width: 230px;
}

.rec4d {
  border: 4px solid #669f4f;
  border-radius: 10px;
  position: relative;
  display: flex;
  justify-content: center;
  align-items: center;
  background: #fff;
  font-weight: 700;
  padding: 20px 1.2% 0;
  flex-direction: column;
  min-height: 230px;
}

.rec4 li:last-child:before {
  display: none;
}

.rec4 li:before {
  position: absolute;
  content: '';
  width: 0;
  height: 0;
  border-style: solid;
  border-width: 6px 0 6px 14px;
  border-color: transparent transparent transparent #46341E;
  right: -14.5%;
  margin: auto;
  top: 50%;
}

.rec4p1 {
  position: absolute;
  width: 80px;
  height: 80px;
  border-radius: 50%;
  display: flex;
  justify-content: center;
  align-items: center;
  font-size: 3.2rem;
  top: -40px;
  font-weight: 500;
  background: #669f4f;
  color: #fff;
}

.rec4p2 {
  font-weight: 700;
  margin-top: 10px;
  text-align: center;
}

.rec4 .txt {
  background: #fff;
  padding: 40px 35px;
  max-width: 1080px;
  margin: auto;
}

.rec4p3 {
  font-size: 1.4rem;
  margin-bottom: 20px;
}

.rec4p4 {
  font-size: 1.2rem;
}

.rec5 {
  padding: 170px 0 0px;
  background: url(./img/bg8.png) no-repeat top center #e8ede3;
  background-size: contain;
  z-index: 1;
}

.rec5:before,
.rec5:after {
  position: absolute;
  content: '';
  background: url(./img/recruit/co53.svg);
  width: 440px;
  height: 298px;
}

.rec5:before {
  bottom: 35px;
  left: -120px;
}

.rec5:after {
  bottom: -50px;
  right: -45px;
}

.rec5 .bgcr {
  padding: 160px 0 0px;
  z-index: -1;
  position: relative;
}

.rec5 .bnr {
  display: block;
  margin: 100px auto 0;
  max-width: 1040px;
  transition: 0.5s;
}

.rec5 .bnr:hover {
  opacity: 0.5;
}

.rec6 {
  background: url(./img/recruit/bg6.jpg) no-repeat center;
  background-size: cover;
  z-index: 0;
  padding: 220px 0 60px;
}

.rec6:before {
  position: absolute;
  content: '';
  background: #669f4fcc;
  width: 100%;
  height: 100%;
  z-index: -1;
  top: 0;
  left: 0;
}

.rec6 h2 {
  line-height: 1.4;
  padding-bottom: 35px;
  margin-bottom: 35px;
}

.rec6 h2:before {
  position: absolute;
  content: '';
  width: 28px;
  height: 0;
  border-bottom: 5px dotted #fff;
  bottom: 0;
  left: 0;
  right: 0;
  margin: auto;
}

.rec6p1 {
  margin-bottom: 30px;
}

.rec6 ul {
  display: flex;
  justify-content: space-between;
  align-items: center;
}

.rec6 li {
  min-height: 90px;
  background: #ffffffcc;
  width: 48%;
  display: flex;
  align-items: center;
  padding: 0 15px;
  margin-bottom: 30px;
}

.rec6 .up {
  top: -37%;
}

.abs4cr {
  background: url(./img/nami3.png);
  bottom: -60px;
}

.rec7 {
  padding: 180px 0 115px;
}

.rec7 .abcoutxt {
  left: 0;
  right: 0;
  margin: auto;
  width: fit-content;
  line-height: 1;
  top: 90px;
}

.rectb {
  margin-top: 35px;
  border-bottom: 4px solid #669f4f;
  border-top: 4px solid #669f4f;
}

.rectb tr {
  border-bottom: 1px dotted #669f4f;
}

.rectb th {
  width: 10%;
  font-weight: 700;
  text-align: left;
  padding: 35px 0;
  vertical-align: top;
}

.rectb td {
  width: 37%;
  padding: 35px 0;
}

.rectb li {
  background: #fff;
  border: 1px solid #cccccc;
  padding: 15px;
  margin-bottom: 45px;
  position: relative;
}

.rectb li:before {
  position: absolute;
  content: '';
  width: 0;
  height: 0;
  border-style: solid;
  border-width: 12px 7px 0 7px;
  border-color: #46341E transparent transparent transparent;
  right: 0;
  left: 0;
  margin: auto;
  bottom: -30px;
  top: auto;
}

.rectb li:last-child:before {
  display: none;
}

.rec7d {
  display: flex;
}

.rec7p1 {
  width: 24px;
  height: 24px;
  font-size: 1.4rem;
  display: flex;
  align-items: center;
  justify-content: center;
  border-radius: 50%;
  margin-right: 10px;
}

.rec7p2 {
  font-size: 1.6rem;
}

.rec7p3 {
  font-size: 1.4rem;
}

.mailsendp {
  max-width: 1200px;
  margin: auto;
}

/* wedding */
body.wedding {
  width: 100% !important;
  color: #121212;
  background: #fff;
}

.wehd {
  width: 291px;
  font-size: 1.6rem;
  background: url(./img/wedding/header.svg) no-repeat #988650 right;
}

.cover3 {
  height: 880px;
  width: 100%;
  background: url(./img/wedding/mv1.jpg) no-repeat;
  margin: 80px auto 0;
  display: flex;
  align-items: center;
  justify-content: center;
  position: relative;
}

.cover3:before {
  position: absolute;
  content: '';
  background: url(./img/wedding/scroll.svg) no-repeat;
  width: 93px;
  height: 122px;
  bottom: 0;
  left: 30.5%;
}

.wecov {
  display: flex;
  justify-content: space-between;
  align-items: center;
}

.wecov .img {
  text-align: center;
}

.wecov .img img {
  margin: auto;
}

.wecop1 {
  margin: 50px auto 40px;
  text-align: center;
  padding: 35px 0;
  border-top: 1px dotted #fff;
  border-bottom: 1px dotted #fff;
  font-size: 2.4rem;
  text-shadow: 0 0 16px #000000;
}

.wecoh2 {
  font-size: 4.8rem;
  text-align: center;
  text-shadow: 0 0 16px #000000;
}

.wecovl {
  max-width: 560px;
  width: 48%;
}

.wed1 {
  margin-top: 60px;
}

.wed1d {
  display: flex;
  position: relative;
  padding: 0 0 120px;
}

.wed1d:before {
  position: absolute;
  content: '';
  bottom: 0px;
  right: 0;
  width: 440px;
  height: 300px;
  background: url(./img/wedding/co12.svg) no-repeat;
  z-index: -1;
}

.wed1d .img {
  max-width: 1000px;
  width: 52%;
}

.wedr {
  padding: 4.2% 0 0 4.2%;
  width: 48%;
}

.wed1tit {
  position: relative;
  margin-bottom: 60px;
}

.wed1tit:before,
.wed1tit:after {
  position: absolute;
  content: '';
  width: 160%;
  height: 1px;
  background: #cccccc;
  right: 0;
  z-index: -1;
}

.wed1tit:before {
  top: 0;
}

.wed1tit:after {
  bottom: 0;
}

.wed1 h2 {
  position: relative;
  text-align: left;
  padding: 35px 0;
}

.wed1 h2:before {
  position: absolute;
  content: '';
  background: #988650;
  width: 65px;
  height: 2px;
  bottom: 0;
  left: 0;
}

.wed1 h2 span {
  font-size: 2.4rem;
  font-weight: 500;
}

.wedr .txt {
  max-width: 480px;
}

.wed1p1 {
  font-size: 2.4rem;
  margin-bottom: 30px;
}

.wed1p2 {
  margin-bottom: 25px;
}

.wed1d2 {
  background: linear-gradient(
    to bottom,
    #fff 0%,
    #fff 25%,
    #f7f3ea 0%,
    #f7f3ea 100%
  );
  padding: 0 0 50px;
}

.wed1d2 .wed1p2 {
  text-align: center;
}

.wed1d2 ul {
  display: flex;
  max-width: 1200px;
  margin: 0 auto 50px;
  justify-content: space-between;
  width: 95%;
}

.wed1d2 li {
  background: #fff;
  border: 1px solid #988650;
  display: flex;
  justify-content: center;
  flex-direction: column;
  align-items: center;
  text-align: center;
  max-width: 208px;
  width: 19%;
  min-height: 208px;
}

.wed1d2 li p {
  font-size: 1.4rem;
  line-height: 1.5;
  margin-top: 15px;
}

.wedding section {
  position: relative;
}

.wed2 {
  padding: 115px 0 180px;
}

.wedding .abcoutxt {
  font-size: 26rem;
  color: #d8d8d8;
  letter-spacing: 21px;
  line-height: 1.4;
}

.wed2 .abcoutxt {
  top: 0;
  right: 40px;
}

.wedbar {
  padding-bottom: 40px;
  margin-bottom: 40px;
}

.wedbar:before {
  position: absolute;
  content: '';
  width: 16px;
  height: 4px;
  background: #3b6068;
  bottom: 0;
  left: 0;
  right: 0;
  margin: auto;
}

.wed2 h2 {
  max-width: 340px;
  margin-left: auto;
  margin-right: auto;
}

.wed2 h2:after {
  position: absolute;
  content: '';
  width: 73px;
  height: 101px;
  background: url(./img/wedding/co21.svg) no-repeat;
  left: 0;
  bottom: 0;
}

.wedp {
  text-align: center;
}

.wed2d {
  margin: 30px auto 0;
}

.wed2d dl {
  display: flex;
  justify-content: space-between;
  padding-bottom: 25px;
  border-bottom: 1px dotted #cccccc;
  margin-bottom: 20px;
}

.wed2d dd {
  font-weifht: 700;
}

.wed2d dd span {
  font-weight: 500;
  font-size: 1.2rem;
}

.wed2d p {
  font-size: 1.2rem;
}

.wed2d2 {
  background: #f7f7f7;
  margin: 35px auto 0;
  padding: 40px 4%;
  display: flex;
  justify-content: space-between;
  align-items: flex-start;
}

.wed2l,
.wed2r {
  max-width: 470px;
  width: 49%;
}

.wed2d2 h3 {
  font-size: 1.6rem;
  font-weight: 700;
  padding-left: 15px;
  border-left: 4px solid #988650;
  margin-bottom: 10px;
}

.wed2d2 p {
  font-size: 1.4rem;
  letter-spacing: 2px;
}

.wed3 {
  margin: -60px auto 0;
}

.wed3 h2 {
  max-width: 880px;
  margin: 0 auto -1px;
  text-align: center;
  border-radius: 10px 10px 0 0;
  padding: 6px 0;
  width: 90%;
}

.wed3sp1 {
  font-size: 1.8rem;
}

.wed3dr {
  text-align: center;
  margin: 0 4%;
  width: 44%;
}

.wed3d {
  padding: 80px 0;
}

.wed3d2 {
  display: flex;
  max-width: 880px;
  justify-content: space-between;
  margin: auto;
  width: 95%;
}

.wed3dl {
  text-align: center;
  width: 48%;
  max-width: 420px;
}

.wed3dl .btn {
  width: 100%;
  max-width: initial;
  border: none;
  color: #212121;
  margin-top: 20px;
}

.wed3p1 {
  font-size: 1.4rem;
}

.wed3p2 {
  font-size: 3.2rem;
  font-weight: 700;
  line-height: 1;
  margin-top: 5px;
}

.wed3p3 {
  font-size: 1.2rem;
}

.wed3p4 {
  font-size: 1.8rem;
  font-weight: 700;
}

.wed3p5 {
  padding: 10px 0;
  border: 1px solid;
  margin-top: 10px;
}

.wed4 {
  padding: 120px 0;
}

.wed4 .abcoutxt {
  top: 0;
  left: 40px;
}

.wed4 h2 {
  max-width: 560px;
  margin-left: auto;
  margin-right: auto;
}

.wed4 h2:after {
  position: absolute;
  content: '';
  width: 136px;
  height: 77px;
  background: url(./img/wedding/co41.svg) no-repeat;
  right: 0px;
  top: -30px;
}

.wed4 ul {
  display: flex;
  justify-content: space-between;
  margin: 70px auto 40px;
}

.wed4 li {
  max-width: 580px;
  width: 49%;
}

.wed4p2 {
  font-size: 1.4rem;
  margin-top: 25px;
}

.wed4d {
  background: #f7f7f7;
  font-size: 1.4rem;
  padding: 22.5px 15px;
  text-align: center;
}

.wed5 {
  background: url(./img/wedding/bg5.jpg);
  padding: 20px 0 80px;
}

.wed5p1 {
  position: absolute;
  left: 0;
  right: 0;
  margin: auto;
  width: fit-content;
  top: -26px;
  font-size: 2.4rem;
}

.wed5u1 {
  display: flex;
  justify-content: space-between;
  margin-top: 30px;
}

.wed5u1 li {
  display: flex;
  border: 1px solid #988650;
  background: #fff;
  justify-content: center;
  align-items: center;
  width: 24%;
  min-height: 112px;
  max-width: 270px;
}

.wed5p2 {
  font-weight: 700;
  margin-left: 10px;
  line-height: 1.5;
}

.wed5d {
  margin: 75px auto 0;
  padding: 40px 0 0;
  border-top: 1px dotted;
}

.wed5p3 {
  text-align: center;
  font-size: 1.8rem;
  font-weight: 700;
}

.wed5u2 {
  display: flex;
  flex-wrap: wrap;
  align-items: flex-start;
}

.wed5u2 li {
  margin-top: 30px;
  width: 20%;
}

.wed5u2 p {
  font-size: 1.4rem;
  text-align: center;
  margin-top: 10px;
}

.wed5d2 {
  background: #fff;
  border: 1px solid #cccccc;
  margin-top: 30px;
  padding: 20px 2%;
  text-align: center;
}

.wed6 {
  padding: 115px 0 180px;
}

.wed6 .abcoutxt {
  top: 0;
  right: 40px;
}

.wed6 ul {
  margin: 60px auto 0;
}

.wed6 li {
  display: flex;
  padding: 35px 0;
  border-bottom: 1px dotted #988650;
}

.wed6ci {
  border-radius: 50%;
  width: 96px;
  height: 96px;
  flex-direction: column;
  justify-content: center;
  align-items: center;
}

.wed6ci.pc {
  display: flex;
}

.wed6ci span {
  font-size: 2.4rem;
  line-height: 1;
}

.wed6d {
  margin-left: 35px;
  width: 90%;
}

.wed6d h3 {
  font-size: 2.4rem;
  margin-bottom: 10px;
}

.wed6d .btn {
  margin: 15px 0 0;
  border: 4px solid #988650;
  color: #988650;
}

.wed6 li:last-child {
  border: none;
}

.wed7 {
  padding: 110px 0 110px;
  background: url(./img/wedding/bg7.png) no-repeat center;
  background-size: cover;
}

.wed7 ul {
  display: flex;
  justify-content: space-between;
  margin-top: 65px;
}

.wed7 li {
  background: #fff;
  max-width: 373px;
  width: 32%;
  border: 4px solid #3b6068;
  text-align: center;
  min-height: 442px;
  padding: 25px 2%;
}

.wed7 li h3 {
  font-size: 1.4rem;
}

.wed7 li h3 span {
  font-size: 2.4rem;
}

.wed7 li p {
  margin-top: 20px;
  text-align: left;
}

.wed8 {
  margin: 0;
  padding: 75px 0;
}

.wed8 h2 span {
  font-size: 2.4rem;
}

.wed8 li:first-child {
  border-top: 5px solid #3b6068;
}

.wed8 li {
  border-bottom: 5px solid #3b6068;
}

.wed8 dt {
  color: #3b6068;
}

.wed8 .open dt {
  background-image: linear-gradient(to right, #3b6068 3px, transparent 0px);
}

.wed8 .b-b {
  color: #3b6068;
}

.wed8 dt .pulu span {
  background-color: #3b6068;
}

.wed8 dd p > span {
  margin: 0;
  font-size: 1.6rem;
}

.wed9 {
  padding: 110px 0 180px;
}

.wed9d {
  display: flex;
  position: relative;
  padding: 0 0 70px;
  flex-direction: row-reverse;
  justify-content: flex-end;
}

.wed9d .img {
  max-width: 1000px;
  width: 52%;
}

.wed9 .wedr {
  padding: 0px 0px 0 0px;
  width: 52%;
}

.wed9tit {
  position: relative;
  margin-bottom: 60px;
  padding-left: 36%;
}

.wed9tit:before,
.wed9tit:after {
  position: absolute;
  content: '';
  width: 125%;
  height: 1px;
  background: #cccccc;
  left: -10%;
  z-index: -1;
}

.wed9tit:before {
  top: 0;
}

.wed9tit:after {
  bottom: 0;
}

.wed9 h2 {
  position: relative;
  text-align: left;
  padding: 35px 0;
}

.wed9 h2:before {
  position: absolute;
  content: '';
  background: #988650;
  width: 65px;
  height: 2px;
  bottom: 0;
  left: 0;
}

.wed9 h2 span {
  font-size: 2.4rem;
  font-weight: 500;
}

.wed9 .wedr .txt {
  max-width: 480px;
  margin-left: 36%;
}

.wed9p1 {
  font-size: 2.4rem;
  margin-bottom: 30px;
}

.wed9p2 {
  margin-bottom: 25px;
}
.btn.bggol {
  border: none;
  text-align: center;
}

.wed10 {
  padding: 100px 0 110px;
}

.wed10 h2 span {
  font-size: 2.4rem;
}

.wed10 .contact_tb {
  border-bottom: 4px solid #988650;
  border-top: 4px solid #988650;
  margin: 50px auto;
}

.wed10.contact_tb th,
.wed10 .contact_tb td {
  border-bottom: 1px dotted #988650;
}

.wed10 .contact_tb th em {
  background: #3b6068;
}

.wed10 th label {
  display: flex;
  align-items: flex-start;
}

.wed11 {
  background: url(./img/wedding/bg11.jpg) no-repeat center;
  background-size: cover;
  padding: 60px 0 70px;
}

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

.wed11dl {
  max-width: 480px;
  width: 52%;
  margin-right: 10px;
}

.wed11dl h2 {
  font-size: 3.2rem;
  line-height: 1.4;
  margin-bottom: 30px;
}

.wed11dl h2 span {
  font-size: 1.8rem;
}

.wed11p1 {
  margin-bottom: 15px;
}

.wed11ld {
  margin-top: 50px;
}

.wed11p2 {
  font-size: 1.8rem;
  border-left: 8px solid;
  padding-left: 10px;
  margin-bottom: 20px;
}

.wed11d .img {
  margin-top: 20px;
  width: 48%;
}

.wedding header {
  background: #fff;
  padding: 0 0 0 20px;
}

/* thx */

.thxdiv {
  padding: 300px 0;
  text-align: center;
}

/*-- 固定ここまで --*/

/* ★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★ */
/* ★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★ */

@media screen and (max-width: 1700px) {
  /* ★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★ */
  /* ★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★ */

  .wed9tit {
    position: relative;
    margin-bottom: 60px;
    padding-left: 15%;
  }

  .wed9 .wedr .txt {
    max-width: 480px;
    margin-left: 15%;
  }

  /* ☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆ */
} /* max-width: 1700px ここまで */

/* ☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆ */

/* ★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★ */
/* ★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★ */

@media screen and (max-width: 1400px) {
  /* ★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★ */
  /* ★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★ */

  .wed9tit {
    position: relative;
    padding-left: 0;
    margin: 0 auto 60px;
  }

  .wed9 .wedr .txt {
    max-width: 480px;
    margin: auto;
  }

  .wed9 h2 {
    position: relative;
    text-align: left;
    padding: 35px 0;
    width: fit-content;
    margin: auto;
  }
  /* ☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆ */
} /* max-width: 1400px ここまで */

/* ☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆ */

/* ★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★ */
/* ★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★ */

@media screen and (max-width: 1200px) {
  /* ★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★ */
  /* ★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★ */

  .hline {
    height: 80px;
    display: flex;
    justify-content: center;
    align-items: center;
    max-width: 200px;
    width: 30%;
    background: #2fc42d url(./img/hline.png) no-repeat right;
  }

  .hline p {
    font-weight: 700;
    font-size: 1.4rem;
  }

  .hline p span {
    font-size: 1.4rem;
    letter-spacing: 1.6px;
  }

  .hcon {
    height: 80px;
    display: flex;
    justify-content: center;
    align-items: center;
    max-width: 200px;
    width: 30%;
    background: #fddd6e url(./img/hmail.png) no-repeat right;
  }

  .hcon p {
    font-weight: 700;
    font-size: 1.4rem;
  }

  .hcon p span {
    font-size: 1.4rem;
    letter-spacing: 2px;
  }

  .htlu {
    display: flex;
    font-size: 2.6rem;
    align-items: baseline;
    line-height: 1.3;
    font-weight: 700;
    letter-spacing: 2px;
  }

  .htlu img {
    width: 25px;
  }

  .hteld {
    font-size: 1rem;
    font-weight: 500;
  }

  .co61r {
    max-width: 522px;
    width: 55%;
  }

  .co61r li {
    width: 23%;
  }

  .co61l {
    width: 44%;
    max-width: 320px;
  }

  .ftsns .btn {
    max-width: 260px;
    font-size: 1.2rem;
    height: 56px;
  }

  .ftdr > ul li {
    padding-right: 1%;
    border-right: 1px solid;
    margin-right: 1%;
  }

  .sitter2 .co3d {
    padding: 22px 15px;
    min-height: 134px;
    text-align: center;
    font-size: 1.6rem;
  }

  .pri4dl {
    max-width: 560px;
    padding-top: 0px;
    width: 50%;
  }

  .pri4d {
    align-items: center;
  }

  .progressbar .item {
    font-size: 2rem;
  }

  .flowtit:before {
    width: 72%;
  }

  .flow2 li:nth-child(2) .flowtit:before {
    width: 65%;
  }

  .abo4 .txt {
    padding: 5%;
  }

  .area4 .content08 {
    padding: 120px 0 0;
  }

  .cou2 {
    background: url(./img/course/bg2.png) no-repeat center;
    background-size: cover;
    background-position-x: 65%;
  }

  .cou8 {
    padding: 120px 0 0px;
  }

  .cou8 .bgcr:before {
    position: absolute;
    content: '';
    width: 381px;
    height: 520px;
    background: url(./img/course/co81.png) no-repeat top center;
    right: 0%;
    top: -17%;
    z-index: -1;
  }

  .cou9p2 {
    font-size: 1.4rem;
  }

  .cou11p2 {
    font-size: 1.6rem;
  }

  .cou11 li .txt {
    max-width: 250px;
    margin-left: 10px;
    width: 60%;
  }

  .rec2 .abcoutxt {
    font-size: 80px;
  }

  .rec3l h3 {
    font-size: 2.4rem;
    margin-bottom: 20px;
  }

  .rec5 {
    padding: 160px 0 0px;
  }

  .sitemap02 dt {
    width: 15%;
  }
  .sitemap02 dd {
    width: 80%;
  }

  .wecoh2 {
    font-size: 3.6rem;
  }

  .wecovl {
    max-width: 560px;
    width: 48%;
    margin-right: 10px;
  }

  .wed1 h2 span {
    font-size: 2rem;
    font-weight: 500;
  }

  .wed1p1 {
    font-size: 1.8rem;
    margin-bottom: 15px;
  }

  .wed1 h2 {
    font-size: 3rem;
  }

  .wedr {
    padding: 0% 0 0 2%;
    width: 48%;
  }

  .wed1tit {
    margin-bottom: 25px;
  }

  .wed1d:before {
    width: 260px;
    height: 176px;
    background: url(./img/wedding/co12.svg) no-repeat;
    background-size: contain;
  }

  .wed1p2 {
    margin-bottom: 15px;
  }

  .wed9 h2 span {
    font-size: 2rem;
    font-weight: 500;
  }

  .wed9p1 {
    font-size: 1.8rem;
    margin-bottom: 15px;
  }

  .wed9 h2 {
    font-size: 3rem;
    width: initial;
  }

  .wed9 .wedl {
    padding: 0% 0 0 2%;
    width: 48%;
  }

  .wed9tit {
    margin-bottom: 25px;
  }

  .wed9d:before {
    width: 260px;
    height: 176px;
    background: url(./img/wedding/co12.svg) no-repeat;
    background-size: contain;
  }

  .wed9p2 {
    margin-bottom: 15px;
  }

  .wed9 .wedr .txt {
    max-width: 480px;
    margin: 0;
  }

  .wed9 .wedr {
    padding: 0px 0px 0 2%;
    width: 52%;
  }
  /* ☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆ */
} /* max-width: 1200px ここまで */

/* ☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆ */

/* ★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★ */
/* ★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★ */

@media screen and (max-width: 1000px) {
  /* ★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★ */
  /* ★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★ */

  /*-----------------------------------------------------------
全体スタイル
-----------------------------------------------------------*/

  img {
    width: auto;
    max-width: 100%;
    height: auto;
  }

  /*-----------------------------------------------------------
header
-----------------------------------------------------------*/

  header {
    padding: 0 0 0 20px;
  }

  header h1 {
    /* font-size: 80%; */
  }

  .logo {
    width: 28%;
  }

  .headerAdd {
    width: 45%;
    margin: 0 0 0 1%;
    font-size: 90%;
  }

  .headerTel {
    height: auto;
    margin: 0 0 0 0%;
  }

  .headerInc {
    display: none;
  }

  /*-----------------------------------------------------------
cover
-----------------------------------------------------------*/

  /*-----------------------------------------------------------
nav
-----------------------------------------------------------*/

  /*-----------------------------------------------------------
footer
-----------------------------------------------------------*/

  .copyright small {
    width: 96%;
  }

  /* 全ページ共通クラス
----------------------------------------------------------- */

  .pankuzu {
    width: 98%;
  }

  /* トップページ
----------------------------------------------------------- */

  .conte02 .txtBox {
    width: 96%;
    padding: 2%;
  }

  .news li {
    width: 94%;
    margin: 0 1%;
  }

  .news dl {
    width: 98%;
    font-size: 90%;
  }

  .scroll-pane {
    width: 100% !important;
  }

  /* 中ページ
----------------------------------------------------------- */

  .leadTxt {
    padding: 20px 2%;
    font-size: 100%;
  }

  .privacy dt {
    padding: 0 1%;
  }

  .privacy dd {
    margin: 10px 2%;
  }

  .company table {
    width: 100%;
  }

  .company th {
    width: 30%;
    padding: 10px 2%;
    border-bottom: 1px solid #fff;
  }

  .company td {
    padding: 10px 2%;
    border-bottom: 1px solid #fff;
  }

  .company iframe {
    width: 100%;
  }

  .listUl {
    width: 100%;
    margin: 30px auto 0;
  }

  .listUl li {
    width: 31.3%;
    margin: 0 1%;
  }

  /*-- お問い合わせ --*/

  .contact_tb th {
    width: 280px;
    font-size: 1.4rem;
  }

  .contact_tb td {
    font-size: 1.4rem;
  }

  .contact_cf .clearForm,
  .contact_cf .clearForm2 {
    padding: 10px 5px;
  }

  .choose_list1 > li {
    width: 48%;
    margin: 0 0 0 2%;
  }

  .choose_list1 > li:first-child {
    margin: 0;
  }

  .choose_list1 {
    width: 60%;
    margin: 20px auto;
  }

  #zip1,
  #zip2 {
    width: 40%;
  }

  #city,
  #pref {
    width: 86%;
    margin: 2px 0 0 2%;
  }

  #add {
    width: 86%;
    margin: 2px 0 0 6.3%;
  }

  /*-- エラーチェック --*/

  .formError {
    top: 20px !important;
    left: 10% !important;
  }

  .zip2formError {
    left: 54% !important;
  }

  .prefformError,
  .cityformError,
  .addformError {
    top: 30px !important;
    left: 10% !important;
  }

  .ui-dialog {
    width: 80% !important;
  }

  .hLogo {
    max-width: 180px;
    width: 100%;
  }

  .hline {
    height: 80px;
    display: flex;
    justify-content: center;
    align-items: center;
    max-width: 160px;
    width: 30%;
  }

  .hcon {
    height: 80px;
    display: flex;
    justify-content: center;
    align-items: center;
    max-width: 160px;
    width: 30%;
    background: #fddd6e url(./img/hmail.png) no-repeat right;
  }

  .h2d li a {
    color: #669f4f;
    font-weight: 700;
    font-size: 1.2rem;
    letter-spacing: 2px;
  }

  .mainTit {
    font-size: 3rem;
    text-align: center;
    line-height: 1.1;
    position: relative;
    z-index: 1;
  }

  .mainTit .mid {
    font-size: 2.4rem;
  }

  .co3tit h3 {
    margin-left: 10px;
    font-size: 1.4rem;
  }

  .co3p {
    font-size: 1.4rem;
  }

  .content04:before {
    bottom: -50px;
  }

  .co6main {
    padding: 80px 20px;
  }

  .co61r li {
    width: 24%;
    margin: 0 1% 20px 0;
    font-size: 1.2rem;
  }

  .co62r {
    font-size: 1.4rem;
  }

  .co9d1 p {
    font-size: 1.4rem;
  }

  .ftd1 {
    flex-direction: column;
  }

  footer .logo {
    width: 255px;
    margin-bottom: 10px;
  }

  .ftsns {
    display: flex;
    justify-content: space-between;
    align-items: flex-start;
    margin-bottom: 30px;
    flex-direction: column;
  }

  .ftsns .btn {
    margin: 0 0 10px;
  }

  .ftdl {
    max-width: 531px;
    width: 40%;
  }

  .ftdr {
    max-width: 490px;
    width: 60%;
  }

  /* .content05 li.pc{
	display:none;
}

.content05 li.sp{
	display:flex;
} */

  .content03.sitter2 li {
    max-width: 270px;
    width: 24%;
    margin-top: 25px;
  }

  .sitter2 .co3d {
    padding: 22px 0px;
    min-height: 134px;
    text-align: center;
    font-size: 1.4rem;
  }

  .si3l h3 {
    font-size: 2.4rem;
    margin-bottom: 20px;
    max-width: 420px;
  }

  .sitter6:before {
    bottom: -50px;
  }

  .catsitter .content03:before,
  .catsitter .content03:after {
    position: absolute;
    content: '';
    width: 39%;
    height: 100%;
    z-index: -1;
  }

  .catsitter .content03:before {
    background: url(./img/catsitter/co22.svg) no-repeat top right;
    left: 0;
    top: 10px;
  }

  .catsitter .content03:after {
    background: url(./img/catsitter/co21.svg) no-repeat top left;
    right: 0;
    top: -65px;
    width: 40%;
  }

  .littlecritter .content03:before,
  .littlecritter .content03:after {
    position: absolute;
    content: '';
    width: 39%;
    height: 100%;
    z-index: -1;
  }

  .littlecritter .content03:after {
    background: url(./img/littlecritter/co21.svg) no-repeat top left;
    right: 0;
    top: 30px;
    width: 40%;
  }

  .si4ul h3 {
    border-radius: 10px 10px 0 0;
    display: flex;
    justify-content: center;
    align-items: center;
    height: 48px;
    font-size: 1.2rem;
    text-align: center;
  }

  .si4ul li .txt {
    min-height: 141px;
    font-size: 1.4rem;
    padding: 20px 10px;
  }

  .sitter4 .co61r li:nth-child(8) {
    margin: 0 1% 20px 0;
  }

  .pridul li:nth-child(4) {
    width: 30%;
  }

  .pridup3 {
    font-size: 1.6rem;
    font-weight: 700;
  }

  .pridup3 span {
    font-size: 2.4rem;
  }

  .pridup1 {
    text-align: center;
    font-size: 1.2rem;
    font-weight: 700;
  }

  .prid1 {
    margin-bottom: 40px;
    padding: 75px 2%;
  }

  .pri3tit h3 {
    margin-left: 10px;
    font-size: 2rem;
  }

  .progressbar .item {
    font-size: 1.8rem;
    padding-right: 20px;
  }

  .progressbar .item::after {
    position: absolute;
    z-index: 2;
    top: 0;
    bottom: 0;
    content: '';
    margin: auto;
    width: 0;
    height: 0;
    border-style: solid;
    border-width: 61px 0 61px 52px;
    border-color: transparent transparent transparent #669f4f;
    right: -4px;
  }
  .progressbar .item::before {
    position: absolute;
    z-index: 2;
    top: 0;
    bottom: 0;
    content: '';
    margin: auto;
    right: -23px;
    width: 0;
    height: 0;
    border-style: solid;
    border-width: 80px 0 80px 70px;
    border-color: transparent transparent transparent #f7f3ea;
  }

  .progressbar .itemd p {
    font-size: 1.4rem;
  }

  .flow1 h2 {
    font-size: 3rem;
    text-align: center;
  }

  .flowtit:before {
    width: 65%;
  }

  .flow2 li:nth-child(2) .flowtit:before {
    width: 55%;
  }

  .flow2 li:nth-child(3) .flowtit:before {
    width: 85%;
  }

  .flow2 li:nth-child(4) .flowtit:before {
    width: 80%;
  }

  .flow2 li:nth-child(5) .flowtit:before {
    width: 82%;
  }

  .abo1 h2 {
    font-size: 3rem;
  }

  .abo4 h2 > span > span {
    font-size: 1.2rem;
    width: 105%;
  }

  .abo4 .txt {
    border-radius: 0 0 10px 10px;
    border: 4px solid #669f4f;
    border-top: none;
    min-height: 325px;
    padding: 2%;
  }

  .area1:before {
    bottom: -50px;
  }

  .cocov {
    margin: 0 auto 30px;
    width: 95%;
  }

  .lptit1 {
    font-size: 2.4rem;
  }

  .couth {
    width: 25%;
    font-size: 1.6rem;
  }

  .coutd1 {
    height: 87px;
    border-radius: 10px 10px 0 0;
    border-bottom: 0;
    font-size: 2.4rem;
    font-weight: 700;
  }

  .coutd2 {
    height: 170px;
    border: 2px solid;
    width: 25%;
  }

  .cou9:before {
    position: absolute;
    content: '';
    background: url(./img/course/co91.png) no-repeat;
    width: 392px;
    height: 368px;
    top: 13%;
    right: 0%;
  }

  .cou10 .abcoutxt {
    top: 50px;
    font-size: 8rem;
  }

  .cou11p2 {
    font-size: 1.4rem;
    font-weight: 700;
  }

  .cou12p2 {
    font-size: 1.4rem;
    font-weight: 700;
    margin-top: 10px;
  }

  .rec3l h3 {
    font-size: 2rem;
    margin-bottom: 20px;
  }

  .rec5 {
    padding: 120px 0 0px;
  }

  .sitemap01 .left,
  .sitemap01 .right {
    font-size: 1.4rem;
  }

  .sitemap01 .inner {
    padding: 0 0 200px 0;
    background-position-y: 129%;
  }

  .sitemap02 dt {
    width: 18%;
  }
  .sitemap02 dd {
    width: 80%;
  }

  .wecop1 {
    margin: 50px auto 40px;
    padding: 35px 0;
    font-size: 2rem;
  }

  .wecoh2 {
    font-size: 3rem;
  }

  .wecovr {
    width: 48%;
  }

  .wed1 h2 {
    font-size: 2.6rem;
    padding: 15px 0;
    width: 100%;
    margin: auto;
  }

  .wed5p2 {
    font-size: 1.2rem;
  }

  .wed5u2 p {
    font-size: 1.2rem;
    text-align: center;
    margin-top: 10px;
  }

  .wed7 li h3 {
    font-size: 1.2rem;
  }

  .wed7 li h3 span {
    font-size: 1.8rem;
  }

  .wed9 h2 {
    font-size: 2.4rem;
    width: initial;
  }
  /* ☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆ */
} /* max-width: 1000px ここまで */

/* ☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆ */

/* ★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★ */
/* ★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★ */

@media screen and (max-width: 768px) {
  /* ★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★ */
  /* ★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★ */

  .pc {
    display: none;
  }

  .sp {
    display: block;
  }

  nav li a {
    font-size: 1.2rem;
    display: block;
  }

  .hamd a {
    margin: 5px 0;
    padding-left: 20px;
  }

  .hamd a .green {
    margin-right: 8px;
    font-size: 0.8rem;
  }

  .contact_tb th {
    font-size: 1.6rem;
    border: none;
    padding: 20px 0 10px;
  }

  #main {
    margin: 0 auto;
  }

  /* ヘッダー
----------------------------------------------------------- */

  .telBtn {
    width: 35%;
    line-height: 1;
    margin: 3px 11% 0 0;
    font-size: 4rem;
  }

  .headerUl {
    display: flex;
    justify-content: flex-end;
    width: 100%;
  }

  .menuBtn {
    width: 40px;
    position: relative;
    height: 45px;
    display: flex;
    justify-content: center;
  }

  #cover .pc {
    display: none !important;
  }

  #cover .sp {
    display: block !important;
  }

  /*--- modal ---*/

  .menu-trigger,
  .menu-trigger span {
    display: inline-block;
    transition: all 0.4s;
    box-sizing: border-box;
  }
  .menu-trigger {
    position: relative;
    width: 25px;
    height: 24px;
    z-index: 9999;
  }
  .menu-trigger span {
    position: absolute;
    left: 0;
    width: 100%;
    height: 3px;
    background-color: #669f4f;
    border-radius: 4px;
  }

  .menuBtn > p {
    position: absolute;
    left: 0;
    bottom: 0;
    font-size: 1.2rem;
    right: 0;
    margin: auto;
    width: 100%;
    color: #669f4f;
  }
  .menu-trigger span:nth-of-type(1) {
    top: 0;
  }
  .menu-trigger span:nth-of-type(2) {
    top: 10px;
  }
  .menu-trigger span:nth-of-type(3) {
    bottom: 0;
  }

  .menu-trigger.active span:nth-of-type(1) {
    -webkit-transform: translateY(20px) rotate(-45deg);
    transform: translateY(10.5px) rotate(-45deg);
  }
  .menu-trigger.active span:nth-of-type(2) {
    opacity: 0;
  }
  .menu-trigger.active span:nth-of-type(3) {
    -webkit-transform: translateY(-20px) rotate(45deg);
    transform: translateY(-10.5px) rotate(45deg);
  }

  .header-top {
    height: 36px;
    display: flex;
    align-items: center;
  }

  body.open .header-top {
    display: none;
  }

  /*gnav*/
  .gnav {
    background: #fffffff6;
    height: 100%;
    position: fixed;
    width: 305px;
    z-index: 999;
    transition: 0.6s;
    right: 0;
    top: 64px;
    transform: translate(100%, 0px);
  }

  .gnav.active {
    display: block;
    transform: translate(0%, 0px);
    width: 100%;
  }

  .gnav__menu {
    display: block;
    width: 100%;
  }

  .gnav__wrap {
    align-items: flex-start;
    display: flex;
    height: 100%;
    justify-content: center;
    position: fixed;
    width: 100%;
    top: 0px;
    overflow: scroll;
  }

  nav .gnav__menu__item {
    margin: 0 20px;
    padding: 20px 0px;
    border-bottom: 0.5px dotted #7d8082;
  }

  .hambtn {
    font-size: 1.4rem;
    font-weight: 500;
  }

  .plus {
    position: relative;
  }

  .plus:before,
  .plus:after {
    position: absolute;
    content: '';
    background: #000000;
    width: 15px;
    height: 1.5px;
  }

  .hambtn.plus:before {
    right: 0;
    top: 0;
    bottom: 0;
    margin: auto;
  }

  .hambtn.plus:after {
    right: 0px;
    top: 0;
    bottom: 0;
    transform: rotate(90deg);
    margin: auto;
  }

  .plus.open:after {
    display: none;
  }

  .hamd {
    display: none;
  }

  /* .hamd{
	display:none;
}

.open+.hamd{
	display:block;
} */

  .gnav__menu__item > a {
    font-size: 1.4rem;
    padding: 0;
    text-decoration: none;
    transition: 0.5s;
    background: none;
    width: 100%;
    font-weight: 500;
  }

  .gnav__menu__item > .hamcon {
    border: 1px solid #fff;
    height: 60px;
    display: flex;
    justify-content: center;
    align-items: center;
    color: #fff;
    border-radius: 5px;
  }

  nav .gnav__menu__item a.btn03 {
    padding: 0 5%;
    font-size: 2rem;
  }

  .gnav__menu__item a:hover {
    color: #e62219;
  }

  .hline.sp {
    height: 30px;
    display: flex;
    justify-content: center;
    align-items: center;
    max-width: 100px;
    width: 100%;
    background: #2fc42d;
    border-radius: 4px;
    box-shadow: 0 3px 0 #000000b3;
    margin-right: 15px;
  }

  .hline.sp a {
    display: flex;
    align-items: center;
  }

  .hline.sp a img {
    width: 20px;
    margin-right: 5px;
  }

  .hline p {
    font-weight: 700;
    font-size: 1.2rem;
  }

  header {
    height: 64px;
    background: #fff;
    padding: 0 20px;
  }

  body.open header {
    border-bottom: 2px solid #B71717;
  }

  body.open .gnav {
    top: 64px;
  }

  #cover {
    width: 100%;
    margin: 100px auto 0;
  }

  .content02 .inner2 {
    display: flex;
    justify-content: space-between;
    align-items: center;
    flex-direction: column-reverse;
  }

  .co1l {
    max-width: initial;
    width: 95%;
  }

  .co1r {
    max-width: initial;
    width: 95%;
  }

  .co1p {
    margin: 20px auto;
    font-weight: 500;
    font-size: 1.4rem;
  }

  .abimg {
    position: absolute;
    content: '';
    bottom: 0px;
    right: 0;
    z-index: -1;
  }

  .content02 {
    padding: 0px 0 80px;
    position: relative;
    z-index: 1;
  }

  .abs2l,
  .abs2r {
    height: 50px;
  }

  .content02:after {
    left: -37px;
    top: 30px;
    z-index: -1;
  }

  .content02:before {
    right: 20px;
    top: 15px;
  }

  .content02:before,
  .content02:after {
    position: absolute;
    content: '';
    width: 87px;
    height: 63px;
    background: url(./img/co23.png) no-repeat;
    background-size: contain;
    z-index: 0;
  }

  .abs1 {
    position: absolute;
    display: block;
    width: 110%;
    max-width: 2090px;
    height: 100px;
    border-radius: 50%;
    left: -5%;
    right: auto;
    top: -60px;
    margin: auto;
    z-index: -1;
  }

  .ad1 {
    background: url(./img/ad1.jpg) no-repeat center;
    background-size: cover;
    position: relative;
    z-index: 1;
    padding: 23px 0;
  }

  .ad1:before {
    position: absolute;
    content: '';
    background: #669f4fcc;
    width: 100%;
    height: 100%;
    z-index: -1;
    top: 0;
    left: 0;
  }

  .ad1 ul {
    display: flex;
    justify-content: space-between;
    width: 90%;
    margin: auto;
  }

  .ad1 li {
    height: 70px;
    background: #fff;
    padding: 5px;
    border-radius: 10px;
    position: relative;
    min-width: 102px;
    width: 30%;
  }

  .ad1d {
    border: 1px dotted #669f4f;
    border-radius: 10px;
    height: 100%;
    display: flex;
    align-items: center;
    justify-content: center;
  }

  .abnom {
    position: absolute;
    color: #669f4f1a;
    font-size: 3.7rem;
    left: 0;
    right: 0;
    top: 0;
    bottom: 0;
    margin: auto;
    width: fit-content;
    height: fit-content;
  }

  .ad1p {
    font-size: 1.4rem;
    font-weight: 700;
    text-align: center;
  }

  #cover img {
    margin: auto;
    padding: 0 0px;
  }

  .content01 {
    margin: 30px auto;
    text-align: center;
    width: 95%;
  }

  .bgte:before {
    position: absolute;
    content: '';
    background: url(./img/te.png) no-repeat;
    background-size: contain;
    top: 0;
    bottom: 0;
    left: 0;
    right: 0;
    margin: auto;
    width: 90px;
    height: 90px;
  }

  .ad2 {
    position: relative;
    background: url(./img/ad26.png) no-repeat bottom right;
    padding: 0px 0 20px;
    margin-bottom: 60px;
  }

  /* .ad2:before{
	position:absolute;
	content:"";
	width:100%;
	height:1px;
	border-bottom:1px dotted;
	left: 0;
	bottom: 13px;
} */

  .ad2 ul {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    max-width: 500px;
    margin: auto;
  }

  .ad2 li {
    width: 30%;
    margin: 0 1%;
  }

  .bgte {
    position: relative;
    padding: 18px 0;
  }

  .ad2tit {
    width: fit-content;
    margin: auto;
  }

  .ad2tit:after {
    position: absolute;
    content: '';
    width: 100%;
    height: 1px;
    border-bottom: 1px dotted;
    left: 0;
    bottom: 13px;
  }

  .ab2d {
    position: relative;
    padding-bottom: 10px;
    margin-bottom: 30px;
  }

  .ab2d:before {
    position: absolute;
    content: '';
    width: 50px;
    height: 10px;
    background: url(./img/sankaku.png) no-repeat;
    background-size: contain;
    left: 0;
    right: 0;
    bottom: 0;
    margin: auto;
  }

  .ab2ani {
    position: relative;
    width: 100%;
    max-width: 385px;
    margin: auto;
  }

  .ab2ani:before,
  .ab2ani:after {
    position: absolute;
    content: '';
    height: 100%;
  }

  .ab2ani:before {
    background: url(./img/ad27.png) no-repeat;
    background-size: contain;
    width: 95px;
    left: 0;
    bottom: -30px;
  }

  .ab2ani:after {
    background: url(./img/ad28.png) no-repeat;
    background-size: contain;
    width: 52px;
    right: 30px;
    bottom: -20px;
  }

  .yebar:before {
    position: absolute;
    content: '';
    background: #fddd6e;
    width: 100%;
    height: 4px;
    bottom: 5px;
    left: 0;
    z-index: -1;
  }

  .content03 li {
    max-width: 580px;
    width: 100%;
    margin: 30px auto 0;
  }

  .co3tit h3 {
    margin-left: 10px;
    font-size: 1.6rem;
  }

  .co3d {
    background: #fff;
    border: 4px solid #669f4f;
    padding: 20px 15px;
    min-height: initial;
    position: relative;
  }

  .btnarea {
    display: flex;
    justify-content: space-between;
    align-items: center;
    max-width: 810px;
    width: 100%;
    margin: auto;
    flex-direction: column;
  }

  .btnarea .btn {
    margin: 10px auto 0;
  }

  .content03 ul {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    align-items: baseline;
    margin: 0 auto 20px;
  }

  .content03 .mainTit .big {
    font-size: 4rem;
  }

  .co3tit {
    background-image: linear-gradient(to right, #669f4f 1px, transparent 1px);
    background-size: 3px 1px;
  }

  a.btn {
    display: flex;
    max-width: 385px;
    width: 95%;
    height: 56px;
    font-size: 1.4rem;
  }

  .btn img {
    margin-right: 8px;
    width: 20px;
  }

  .abs3 {
    position: absolute;
    top: 0;
    left: 0;
    background-color: #fff;
    width: 100%;
    height: 65px;
    clip-path: polygon(0 0, 100% 0%, 50% 100%);
    z-index: -1;
  }

  .overul {
    width: 95%;
    overflow-x: scroll;
    margin: 0 auto;
    max-width: 700px;
    padding: 0 0 20px;
  }

  .content04 ul {
    flex-wrap: nowrap;
    width: 768px;
    height: 100%;
    max-width: initial;
    margin: 0px auto 0;
    width: 1500px;
    justify-content: flex-start;
  }

  .content04 ul#staff-list .staff-item {
    text-align: left;
  }

  .content04 li {
    margin: 0 20px;
    width: 100%;
  }

  .content04:before {
    bottom: -40px;
  }

  .content04 {
    padding: 50px 0 100px;
    position: relative;
    z-index: 1;
  }

  .ribon {
    font-size: 1.6rem;
    padding: 10px 20.5px;
  }

  .ribon:before,
  .ribon:after {
    position: absolute;
    content: '';
    width: 44px;
    height: 47px;
    bottom: -13px;
  }

  .ribon:before {
    background: url(./img/co4l.png) no-repeat;
    background-size: contain;
    left: -25px;
  }

  .ribon:after {
    background: url(./img/co4r.png) no-repeat;
    background-size: contain;
    right: -27px;
  }

  /* .content05 li{
	width: 100%;
	padding-left: 30px;
	height: 80px;
	align-items: center;
	margin: 0 auto 25px;
} */

  .content05 .inner2 > p {
    text-align: center;
    font-weight: 500;
    /* color:#fff; */
    margin-bottom: 20px;
    font-size: 1.4rem;
  }

  .abs4 {
    position: absolute;
    width: 120%;
    height: 72px;
    bottom: -30px;
    background: url(./img/nami.png);
    background-size: contain;
    left: -45px;
  }

  .slider.sp {
    display: block;
  }

  .slider.pc {
    display: none;
  }

  .plus {
    position: relative;
  }

  .plus:before,
  .plus:after {
    position: absolute;
    content: '';
    background: #46341E;
    width: 16px;
    height: 2px;
  }

  .plus:before {
    right: 38px;
    top: 0;
    bottom: 0;
    margin: auto;
  }

  .plus:after {
    right: 38px;
    top: 0;
    bottom: 0;
    transform: rotate(90deg);
    margin: auto;
  }

  .open > .plus:after {
    display: none;
  }

  .co6tit {
    height: 61px;
    display: flex;
    justify-content: flex-start;
    align-items: center;
    padding: 0 15px;
    border-top: 2px solid;
  }

  .co6tit img {
    width: 48px;
    object-fit: none;
  }

  .co6d:last-child {
    border-bottom: 2px solid;
  }

  .co6d.open:last-child {
    border: none;
  }

  .co6tit h3 {
    font-size: 2rem;
    margin-left: 10px;
  }

  .co61 {
    display: flex;
    justify-content: space-between;
    align-items: flex-start;
    padding-bottom: 10px;
    flex-direction: column;
  }

  .co61l {
    width: 100%;
    margin-bottom: 10px;
    max-width: initial;
  }

  .co61r {
    max-width: initial;
    width: 100%;
  }

  .co61r li {
    width: fit-content;
    margin: 0 1% 10px 0;
    font-size: 1.2rem;
    min-height: initial;
    padding: 4px 8px;
    max-width: initial;
    border: none;
    border-radius: 0;
  }

  .co61r li:nth-child(4n + 4) {
    margin: 0 1% 10px 0;
  }

  .co61l .prip1 {
    padding: 0px 13.5px;
    font-size: 1.6rem;
  }

  .prip1.bgor {
    background: #f29436;
  }

  .co61l .prip2 {
    font-size: 3.2rem;
    font-weight: 700;
    margin-left: 10px;
  }

  .co61l .prip2 span {
    font-size: 1.4rem;
  }

  .priced {
    margin-top: 20px;
  }

  .co6main {
    padding: 30px 15px;
  }

  .co6d:last-child .co6main {
    margin-bottom: 0;
  }

  .co62 li {
    border-top: 2px dotted #46341E;
    padding: 20px 0;
    display: flex;
    justify-content: space-between;
    align-items: flex-start;
    flex-direction: column;
  }

  .co62l {
    display: flex;
    align-items: flex-start;
    flex-direction: column;
  }

  .co62l .tag {
    margin: 10px 0;
    font-size: 1.2rem;
  }

  .lbar {
    position: relative;
    padding-left: 10px;
  }

  .content06 {
    padding: 90px 0 50px;
    position: relative;
    z-index: 0;
  }

  .co71 {
    background: url(./img/bg7sp.jpg) no-repeat center;
    background-size: cover;
    z-index: 1;
  }

  .littlecritter .co71 {
    background: url(./img/littlecritter/bg7.jpg) no-repeat center;
    background-size: cover;
    z-index: 1;
  }

  .catsitter .co71 {
    background: url(./img/catsitter/bg7sp.jpg) no-repeat center;
    background-size: cover;
    z-index: 1;
  }

  .updots span:before {
    position: absolute;
    content: '';
    width: 4px;
    height: 4px;
    background: #fddd6e;
    border-radius: 50%;
    left: 0;
    right: 0;
    top: 2px;
    margin: auto;
  }

  .co72 .inner2 > ul {
    margin-bottom: 10px;
    flex-direction: column;
  }

  .co72 .inner2 > ul > li {
    width: 100%;
    margin: 25px auto 0;
    padding: 15px;
  }

  .co72p {
    font-size: 1.2rem;
    max-width: 500px;
    margin: auto;
  }

  .co72 li p {
    font-size: 1.4rem;
  }

  .co72 li p span {
    font-size: 2.4rem;
  }

  .co72 li h3 {
    font-size: 2.4rem;
    margin-bottom: 10px;
    padding-bottom: 10px;
  }

  .content08 {
    padding: 80px 0 0;
  }

  .content08 .mainTit:after {
    position: absolute;
    content: '';
    width: 79px;
    height: 61px;
    background: url(./img/co81.png) no-repeat;
    background-size: contain;
    right: 0;
    top: -10px;
  }

  .content08 .mainTit {
    padding: 50px 70px;
  }

  .abs1.up {
    top: -60px;
  }

  .abs1.down {
    top: auto;
    bottom: -35px;
  }

  .co9d {
    display: flex;
    justify-content: space-between;
    margin-top: 35px;
    flex-direction: column;
  }

  .co9d > div {
    max-width: 580px;
    width: 100%;
    margin: 0 auto 25px;
  }

  .co9r h3 {
    background: #f29436;
    font-size: 1.8rem;
    text-align: center;
    padding: 11px 0;
  }

  .co9d1 p {
    margin-top: 10px;
    margin-bottom: 20px;
    text-align: center;
    font-size: 1.4rem;
  }

  .midashi1:before {
    bottom: -10px;
  }

  .co10ul2 li {
    padding: 20px 0;
    border-bottom: 2px dotted;
    flex-direction: column;
    font-size: 1.4rem;
  }

  .co10ul2 li:last-child {
    border: none;
  }

  .co10li.active {
    display: block;
    background: #fff;
    padding: 15px;
  }

  .ctab {
    font-size: 1.4rem;
    padding: 3px 0;
  }

  .contab {
    margin: 15px auto 0;
  }

  .content11 li {
    max-width: 270px;
    width: 32%;
    margin-bottom: 15px;
  }

  .content11 li:nth-child(7),
  .content11 li:nth-child(8) {
    display: none;
  }

  .contact-area h2 {
    width: 80%;
    font-size: 2.4rem;
    max-width: 880px;
    margin: auto;
    text-align: center;
    border-radius: 10px 10px 0 0;
  }

  .card {
    padding: 25px 0;
  }

  .cardp {
    font-size: 1.4rem;
    padding: 10px 0;
    flex-direction: column;
    width: 83%;
    margin: 0 auto 20px;
  }

  .cardp .big {
    font-size: 2.4rem;
    margin-left: 0px;
  }

  .card1 {
    display: flex;
    justify-content: space-between;
    width: 100%;
    flex-direction: column;
    align-items: center;
  }

  .card1l {
    max-width: 420px;
    width: 100%;
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    align-items: center;
    margin-bottom: 20px;
  }

  .card1l .btn {
    max-width: 385px;
    margin-bottom: 10px;
  }

  .card1r {
    max-width: 420px;
    width: 100%;
  }

  .card1rp .big {
    font-size: 3.2rem;
    line-height: 1.4;
    margin-top: 0px;
  }

  .card1rp .small {
    text-align: center;
  }

  .card1rp2 {
    font-size: 1.2rem;
    max-width: 355px;
    margin: 15px auto 0;
    width: 90%;
  }

  footer .inner {
    padding: 0 0 25px;
    display: flex;
    align-items: center;
    justify-content: space-between;
    flex-direction: column;
  }

  .ftd1 {
    margin: 0 auto 30px;
    align-items: center;
  }

  footer .logo {
    width: 195px;
    margin-bottom: 10px;
  }

  .ftsns {
    display: flex;
    justify-content: space-between;
    align-items: center;
    margin-bottom: 20px;
    flex-direction: column;
  }

  .ftsns .btn {
    margin: 0 0 10px;
    max-width: 385px;
  }

  .ftdl {
    max-width: 531px;
    width: 100%;
    margin: auto;
  }

  .ftdr {
    max-width: 490px;
    width: 100%;
    margin: auto;
  }

  .ftd2 {
    text-align: center;
    margin-bottom: 25px;
  }

  .ftdr > ul {
    flex-wrap: wrap;
    margin: 25px auto 0;
    justify-content: center;
    max-width: 270px;
  }

  .ftdr > ul li {
    width: 60%;
  }

  .ftdr > ul li:nth-child(1),
  .ftdr > ul li:nth-child(3) {
    width: 35%;
  }

  .ftdr > ul li {
    padding-right: 0%;
    border-right: none;
    margin-right: 0%;
    margin-bottom: 5px;
  }

  .ftdrli {
    border-top: 1px dotted;
    border-bottom: 1px dotted;
    padding: 25px 0;
    justify-content: space-around;
  }

  .ftdrli ul {
    width: 40%;
  }

  footer {
    margin: 0px auto 70px;
    padding: 30px 0 0;
  }

  .content11 {
    padding: 0px 0 40px;
  }

  .content10 {
    padding: 100px 0 50px;
    position: relative;
    z-index: 0;
  }

  .content07 {
    padding: 0 0 100px;
  }

  .side_btn {
    position: fixed;
    right: 0;
    bottom: 0;
    z-index: 999;
    width: 100%;
    background: #ffffffd6;
  }

  .bottomd {
    display: flex;
    justify-content: center;
    align-items: center;
    height: 70px;
  }

  .bottomd a {
    display: flex;
    align-items: center;
    justify-content: center;
    height: 48px;
    max-width: 380px;
    width: 85%;
    border-radius: 10px;
    box-shadow: 0 3px 0 #000000b3;
    margin: 0 1%;
  }

  .bottomd a p {
    font-size: 1.4rem;
    margin-left: 5px;
  }

  html {
    scroll-padding-top: 70px;
  }

  .content03 .mainTit img {
    max-width: 158px;
  }

  .contact_tb th,
  .contact_tb td {
    width: 100% !important;
    display: block;
  }

  .clearForm,
  .clearForm2 {
    height: 56px;
  }

  .conteBox {
    margin-bottom: 40px;
  }

  .contact_tb {
    margin: 25px auto 30px;
  }

  .article #main {
    margin: 25px auto 0;
  }

  .cover {
    height: 120px;
    margin: 100px auto 0;
  }

  .contact .cover {
    background: url(./img/contact/mvsp.jpg) no-repeat;
    background-size: cover;
  }

  .reserve .cover {
    background: url(./img/reserve/mvsp.jpg) no-repeat;
    background-size: cover;
  }

  .dogsitter .cover {
    background: url(./img/dogsitter/mvsp.jpg) no-repeat center;
    background-size: cover;
  }

  .catsitter .cover {
    background: url(./img/catsitter/mvsp.jpg) no-repeat center;
    background-size: cover;
  }

  .littlecritter .cover {
    background: url(./img/littlecritter/mvsp.jpg) no-repeat center;
    background-size: cover;
  }

  .bprice .cover {
    background: url(./img/price/mvsp.jpg) no-repeat center;
    background-size: cover;
  }

  .about .cover {
    background: url(./img/about/mvsp.jpg) no-repeat center;
    background-size: cover;
  }

  .flow .cover {
    background: url(./img/flow/mvsp.jpg) no-repeat center;
    background-size: cover;
  }

  .area .cover {
    background: url(./img/area/mvsp.jpg) no-repeat center;
    background-size: cover;
  }

  .sitemap .cover {
    background: url(./img/sitemap/mvsp.jpg) no-repeat center;
    background-size: cover;
  }

  #station {
    max-width: initial;
    width: 40%;
  }

  #station2 {
    max-width: initial;
    margin-left: 0px;
    width: 40%;
  }

  .ekip {
    width: 19%;
    text-align: center;
  }

  .confl {
    display: flex;
    align-items: center;
    flex-wrap: wrap;
  }

  .meetp {
    width: 100%;
  }

  input[type='date'] {
    max-width: 150px;
    width: 45%;
    -webkit-appearance: none;
    background: #fff;
    color: #000;
    padding-left: 10px;
  }

  select {
    max-width: 140px;
    width: 68%;
    -webkit-appearance: none;
    background: #fff;
    color: #000;
    padding-left: 10px;
  }

  #sdate {
    max-width: 270px;
    width: 40%;
  }

  .select1 {
    margin-left: 5px;
    width: 26%;
    max-width: 110px;
  }

  .contact_tb .small {
    font-size: 1.2rem;
    margin-top: 15px;
  }

  .cover h2,
  .cover h1,
  .cover_title {
    font-size: 2.4rem;
  }

  .conteBox > p {
    font-size: 1.4rem;
    font-weight: 700;
    position: relative;
    width: fit-content;
    margin: auto;
    padding: 0 35px;
  }

  .sitter1 {
    position: relative;
    padding-top: 25px;
    padding-bottom: 120px;
  }

  .content03.sitter2 ul {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    align-items: baseline;
    margin: 20px auto 45px;
    z-index: 1;
    position: relative;
  }

  .content03.sitter2 li {
    max-width: 270px;
    width: 48%;
    margin: 25px auto;
  }

  .sitter2 .co3d {
    padding: 8px 0px;
    min-height: 96px;
    text-align: center;
    font-size: 1.4rem;
  }

  .content03.sitter2 li .nom {
    font-size: 1.8rem;
    text-align: center;
    line-height: 0.8;
    position: relative;
  }

  .dogsitter .content03:before,
  .dogsitter .content03:after {
    position: absolute;
    content: '';
    width: 40%;
    height: 100%;
    z-index: -1;
  }

  .dogsitter .content03:before {
    background: url(./img/dogsitter/co22.svg) no-repeat top right;
    background-size: contain;
    left: -60px;
    top: 60px;
    max-height: 118px;
  }

  .dogsitter .content03:after {
    background: url(./img/dogsitter/co21.svg) no-repeat top left;
    background-size: contain;
    right: 0;
    top: 75px;
    width: 30%;
    max-height: 108px;
    z-index: 0;
  }

  .sitter2 .content03 {
    padding: 10px 0 80px;
  }

  .catsitter .content03:before,
  .catsitter .content03:after {
    position: absolute;
    content: '';
    width: 40%;
    height: 100%;
    z-index: -1;
  }

  .catsitter .content03:before {
    background: url(./img/catsitter/co22.svg) no-repeat top right;
    background-size: contain;
    left: -80px;
    top: 85px;
    max-height: 104px;
  }

  .catsitter .content03:after {
    background: url(./img/catsitter/co21.svg) no-repeat top left;
    background-size: contain;
    right: -85px;
    top: 0px;
    width: 52%;
    max-height: 196px;
    z-index: 0;
  }

  .littlecritter .content03:before,
  .littlecritter .content03:after {
    position: absolute;
    content: '';
    width: 40%;
    height: 100%;
    z-index: -1;
  }

  .littlecritter .content03:before {
    background: url(./img/littlecritter/co22.svg) no-repeat top right;
    background-size: contain;
    left: -60px;
    top: 85px;
    max-height: 88px;
  }

  .littlecritter .content03:after {
    background: url(./img/littlecritter/co21.svg) no-repeat top left;
    background-size: contain;
    right: -90px;
    top: 70px;
    width: 47%;
    max-height: 138px;
    z-index: 0;
  }

  .abs4.abs4wh {
    background: url(./img/nami2.png);
    z-index: -1;
    background-size: contain;
  }

  .sitter3 li {
    flex-direction: column-reverse !important;
    width: 98%;
    margin: 0 auto 50px;
  }

  .sitter3 li .si3l {
    margin: 25px auto 0 !important;
  }

  .sitter3 li:nth-child(2) .si3l {
    margin-right: 0px;
    margin-left: 10px;
  }

  .sitter3 li .img {
    max-width: 560px;
    width: 100%;
  }

  .si3l p {
    max-width: 560px;
  }

  .si3l h3 {
    margin-bottom: 0px;
    max-width: 560px;
  }

  .sitter4 .abs3 {
    position: absolute;
    top: 0;
    left: 0;
    background-color: #f7f3ea;
    width: 100%;
    height: 83px;
    clip-path: polygon(0 0, 100% 0%, 50% 100%);
    z-index: -1;
  }

  .sitter3 {
    padding: 80px 0 50px;
  }

  .sitter3 .titarea:after {
    position: absolute;
    content: '';
    width: 118px;
    height: 90px;
    background: url(./img/co81.png) no-repeat;
    background-size: contain;
    right: 0;
    top: -80px;
    z-index: 1;
  }

  .sitter3 .titarea {
    position: relative;
    max-width: 428px;
    margin: auto;
    padding: 0;
    width: 100%;
  }

  .sitter4 .co6main {
    margin: 0 auto 25px !important;
  }

  .sibl .co6main {
    display: block !important;
  }

  .content06.sitter4 {
    padding: 110px 0 60px;
  }

  .sitter4 .titarea p {
    display: flex;
    align-items: flex-end;
    justify-content: center;
    font-size: 1.6rem;
    font-weight: 700;
    margin-bottom: 10px;
  }

  .si4p2 {
    font-size: 1.4rem;
    text-align: left;
    padding: 20px 20px;
    border-top: 4px dotted;
    border-bottom: 4px dotted;
    margin-bottom: 45px;
  }

  .tag {
    width: fit-content;
    padding: 0px 12px;
    height: 25px;
    display: flex;
    justify-content: center;
    align-items: center;
    border: 1px solid;
    margin: 5px 0 15px;
    font-size: 1.2rem;
  }

  .co61l h4 {
    font-size: 1.8rem;
  }

  .co61l p {
    font-weight: 500;
    font-size: 1.4rem;
  }

  .sitter4 .co61r li {
    width: fit-content;
    margin: 0 1% 10px 0;
    font-size: 1.2rem;
    min-height: initial;
    padding: 4px 5px;
    max-width: initial;
    border-radius: 0;
    border: 1px solid #cccccc;
    max-height: 25px;
  }

  .sitter4 .co61r li.pc {
    display: none;
  }

  .big .price {
    flex-direction: initial;
    align-items: center;
  }

  .big .prip1 {
    padding: 0 28px;
  }

  .co61l .big .prip2 {
    line-height: 1.4;
  }

  .sitter5 {
    padding: 60px 0 40px;
  }

  .sitd1 {
    height: 33px;
    border: 1px solid;
  }

  .sitd1 p {
    display: flex;
    align-items: center;
    justify-content: center;
  }

  .sitd1 img {
    width: 12px;
    height: 12px;
  }

  .sitter5 th {
    border-bottom: 1px solid;
    border-top: 1px solid;
    border-left: 1px solid;
    width: 133px;
    font-size: 10px;
  }

  .sitter5 td {
    background: #fff;
    text-align: center;
    width: 19.4% !important;
  }

  .sitd2 {
    height: 88px;
    font-size: 1.2rem;
  }

  .sitd2 span {
    -ms-writing-mode: tb-rl;
    writing-mode: vertical-rl;
    white-space: pre;
  }

  .sitter6 .brobtn {
    margin: 15px auto 40px;
  }

  .sitter .content05 {
    padding: 50px 0 30px;
  }

  .sitter6:before {
    bottom: -40px;
  }

  .content07.sitter6 {
    padding: 0 0 200px;
  }

  .sitter2 .btnarea .brobtn {
    width: 95%;
    max-width: 373px;
  }

  .sitter4 .co61r li.sp {
    display: flex;
  }

  .si4ul li {
    max-width: initial;
    width: 100%;
    margin: 0 auto 35px;
  }

  .si4ul h3 {
    height: 71px;
    font-size: 1.4rem;
  }

  .si4ul li .txt {
    min-height: initial;
    font-size: 1.4rem;
    padding: 15px;
  }

  .si4ulp {
    font-size: 1.2rem;
  }

  .updots.green span:before {
    background: #669f4f;
    top: -5px;
    width: 8px;
    height: 8px;
  }

  .pri1ul1 li {
    margin-bottom: 10px;
    font-size: 1.6rem;
    padding: 0px 30px;
  }

  .pri1ul1 li .pri1d {
    display: flex;
    align-items: flex-start;
  }

  .pri1ul1 li .pri1d img {
    padding: 5px 0 0;
  }

  .pri1p {
    font-size: 1.2rem;
    font-weight: 700;
    line-height: 1;
  }

  .pri1 h2 {
    font-size: 2.4rem;
    padding-bottom: 25px;
    margin: 0 auto 30px;
  }

  .pri1 h2:before,
  .pri1 h2:after {
    position: absolute;
    content: '';
    width: 66px;
    height: 49px;
    background: url(./img/co23.png) no-repeat;
    background-size: contain;
    z-index: -1;
  }

  .pri1 h2:before {
    left: 0;
    bottom: -35px;
  }

  .pri1 h2:after {
    bottom: auto;
    right: -10px;
    top: -25px;
  }

  .pri1 .updots span:before {
    width: 8px;
    height: 8px;
    top: -5px;
  }

  .pri1 {
    position: relative;
    padding: 0 0 100px;
  }

  .pri2 .abs4 {
    position: absolute;
    width: 120%;
    height: 72px;
    bottom: auto;
    top: -40px;
  }

  .content06.sitter4.pri2 {
    padding: 40px 0 50px;
  }

  .pri2 .co6tit {
    height: 62px;
    margin-bottom: 0px;
    border-radius: 0px;
    border: none;
  }

  .pri2 .open .co6tit {
    margin-bottom: 15px;
  }

  .pri2 .co6tit h3 {
    font-size: 1.4rem;
    margin-left: 10px;
  }

  .pri2d {
    margin-bottom: 0px;
  }

  .pri2d2 {
    margin-top: 80px;
  }

  .pridul {
    display: flex;
    justify-content: space-between;
    flex-wrap: wrap;
  }

  .pridul li {
    width: 45%;
    position: relative;
    margin-bottom: 30px;
  }

  .pridul li:nth-child(3) {
    width: 100%;
  }

  .pridul li:nth-child(4) {
    width: 60%;
    margin: auto;
    height: 77px;
  }

  .pridup3 {
    font-size: 1.8rem;
    font-weight: 700;
  }

  .pridup3 span {
    font-size: 3.2rem;
  }

  .pridup1 {
    text-align: center;
    font-size: 1.2rem;
    font-weight: 700;
  }

  .pridul li:nth-child(4):before {
    position: absolute;
    content: '';
    width: 0;
    height: 0;
    border-style: solid;
    border-width: 0 10.5px 24px 10.5px;
    border-color: transparent transparent #fddd6e transparent;
    left: 0;
    bottom: auto;
    top: -15px;
    margin: auto;
    z-index: -1;
    right: 0;
  }

  .pridul li:nth-child(1):before {
    position: absolute;
    content: '';
    background: url(./img/price/plus.svg) no-repeat;
    width: 16px;
    height: 16px;
    right: -13%;
    bottom: 0;
    top: 0;
    margin: auto;
  }

  .pridul li:nth-child(3):before {
    position: absolute;
    content: '';
    background: url(./img/price/arrow.svg) no-repeat;
    width: 16px;
    height: 8px;
    left: 0;
    bottom: auto;
    top: -20px;
    margin: auto;
    right: 0;
    transform: rotate(90deg);
  }

  .prid2 {
    align-items: flex-start;
    margin-bottom: 25px;
    font-size: 1.4rem;
    flex-direction: column;
  }

  .prid2p1 {
    width: 59px;
    border-radius: 16px;
    font-size: 1.2rem;
    margin-bottom: 10px;
  }

  .prid1 {
    margin-bottom: 40px;
    padding: 25px 5%;
  }

  .pri2d2d {
    padding: 15px 15px 1px;
    margin-bottom: 25px;
  }

  .pri2d2d h3 {
    padding-left: 15px;
    font-size: 1.6rem;
    font-weight: 700;
  }

  .pri2d2d h3.lbar:before {
    background: #46341E;
    height: 26px;
  }

  .pri2d2d p {
    font-size: 1.4rem;
    font-weight: 500;
    margin-bottom: 25px;
  }

  .pri3 li {
    max-width: 500px;
    width: 95%;
    padding: 15px;
    margin: 25px auto 0;
  }

  .pri3txt {
    min-height: initial;
  }

  .pri3p1 {
    font-size: 1.4rem;
  }

  .pri3p2 {
    font-weight: 700;
    font-size: 2.4rem;
    margin-top: 15px;
  }

  .pri3p2 span {
    font-size: 1.4rem;
  }

  .pri3tit h3 {
    margin-left: 10px;
    font-size: 1.8rem;
  }

  .pri3 > div {
    padding: 0 0 140px;
  }

  .abs2 {
    bottom: -1px;
  }

  .pri4d {
    display: flex;
    justify-content: space-between;
    align-items: center;
    flex-direction: column;
  }

  .pri4dl {
    max-width: 560px;
    padding-top: 0px;
    width: 95%;
    margin: 0 auto 30px;
    font-size: 1.4rem;
  }

  .pri4dl h2 {
    padding: 40px 0;
    width: fit-content;
    margin: auto;
  }

  .pri4 .img {
    max-width: 560px;
    width: 95%;
    margin: auto;
  }

  .pri4 {
    padding: 20px 0 40px;
  }

  .pri5 {
    position: relative;
    z-index: 1;
    background: url(./img/price/bg5sp.png) no-repeat left top;
    background-size: contain;
    padding: 90px 0 90px;
    margin-bottom: -50px;
  }

  .pri5p1 {
    margin: 10px 0 0;
    font-size: 1.8rem;
    font-weight: 700;
    text-align: center;
    line-height: 1.6;
  }

  .pri5p1 span {
    text-decoration: underline;
  }

  .pri5p2 {
    font-size: 1.4rem;
    width: fit-content;
    margin: 15px auto;
    text-align: center;
    line-height: 2;
  }

  .pri5p3 {
    text-align: left;
    padding: 10px 0;
    margin-bottom: 40px;
    border-top: 4px dotted;
    border-bottom: 4px dotted;
    font-size: 1.2rem;
  }

  .pri5 ul {
    display: flex;
    justify-content: center;
    margin-bottom: 40px;
    flex-direction: column;
  }

  .pri5 li {
    text-align: center;
    width: 100%;
    display: flex;
  }

  .pri5p4 {
    padding: 13.5px 0;
    border-right: none;
    font-size: 1.4rem;
    font-weight: 500;
    width: 50%;
    border-bottom: 1px solid #fff;
  }

  .pri5p5 {
    border: 1px solid #669f4f;
    background: #fff;
    font-size: 1.4rem;
    font-weight: 700;
    padding: 12.5px 0;
    width: 50%;
  }

  .pri5 li:last-child .pri5p4 {
    border: none;
  }

  .pri5d {
  }

  .pri5d h3 {
    max-width: initial;
    text-align: center;
    margin: auto;
    border-radius: 10px 10px 0 0;
    font-size: 1.6rem;
    padding: 5px 0px;
  }

  .pri5txt {
    border: 4px solid #fddd6e;
    padding: 10px 15px;
    background: url(./img/price/co51sp.svg) no-repeat right bottom #fff;
    font-size: 1.4rem;
  }

  .pri5 .abs3 {
    top: -1px;
    height: 51px;
  }

  .progressbar .item {
    font-size: 1rem;
    padding-right: 0px;
    height: 40px;
  }

  .progressbar .item::after {
    position: absolute;
    z-index: 2;
    top: 0;
    bottom: 0;
    content: '';
    margin: auto;
    width: 0;
    height: 0;
    border-style: solid;
    border-width: 20px 0 20px 16px;
    border-color: transparent transparent transparent #669f4f;
    right: -4px;
  }
  .progressbar .item::before {
    position: absolute;
    z-index: 2;
    top: 0;
    bottom: 0;
    content: '';
    margin: auto;
    right: -8px;
    width: 0;
    height: 0;
    border-style: solid;
    border-width: 25px 0 25px 20px;
    border-color: transparent transparent transparent #f7f3ea;
  }

  .progressbar .itemd p {
    font-size: 1rem;
  }

  .flow1 h2 {
    font-size: 2.4rem;
    text-align: center;
  }

  .flowtit:before {
    display: none;
  }

  .flow2d {
    align-items: center;
    flex-direction: column;
  }

  .flow2d .img {
    width: 95%;
    max-width: 560px;
  }

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

  .flow2d .txt {
    max-width: 560px;
    margin: 10px auto 0;
    width: 95%;
  }

  .flow2d .txt p {
    margin-bottom: 30px;
    font-size: 1.4rem;
  }

  .flsp1 {
    text-decoration: underline;
    font-weight: 700;
  }

  .flow2 li {
    margin: 30px auto 0;
    padding-bottom: 35px;
    position: relative;
  }

  .flow2 li:first-child {
    margin: 60px auto 0;
  }

  .flowtit {
    margin-bottom: 15px;
    position: relative;
  }

  .abo1 h2 {
    font-size: 2.4rem;
  }

  .abo1 li {
    display: flex;
    justify-content: space-between;
    align-items: center;
    margin-bottom: 55px;
    flex-direction: column;
  }

  .abo1 li:last-child {
    flex-direction: column;
  }

  .abo1 li .img {
    max-width: initial;
    width: 95%;
    margin: 0 auto 15px;
  }

  .abo1 li .img img {
    width: 100%;
  }

  .abo1d {
    max-width: initial;
    width: 95%;
    margin: auto;
  }

  .abo1 {
    padding: 0 0 40px;
  }

  .abtit .sidebar {
    font-size: 1.4rem;
  }

  .abo3 ul {
    display: flex;
    justify-content: space-between;
    margin: 40px auto;
    flex-wrap: wrap;
    width: 87%;
  }

  .abo3 li {
    width: 31%;
    margin-bottom: 20px;
    text-align: center;
  }

  .abo3 {
    padding: 85px 0 110px;
    background: url(./img/about/bg3sp.png) no-repeat right top;
    background-size: contain;
    position: relative;
  }

  .abo3d p {
    margin-bottom: 15px;
    font-weight: 700;
    font-size: 1.4rem;
  }

  .abo3d {
    padding: 30px 15px;
    background: #fff;
    width: 97%;
    margin: auto;
  }

  .abs5l {
    border-width: 75px 0 0 50vw;
    border-color: transparent transparent transparent #fff;
  }

  .abs5r {
    border-width: 0 0 75px 50vw;
    border-color: transparent transparent #fff transparent;
  }

  .abo4 .abo4ab {
    top: -65px;
  }

  .abo4 .ribon {
    margin: 0px auto 20px;
    padding: 8.5px 52px;
  }

  .abo4 li {
    width: 98%;
    max-width: 580px;
    margin: 0 auto 25px;
  }

  .abo4 ul {
    margin-top: 35px;
  }

  .abo4 .txt {
    min-height: initial;
    padding: 20px 15px;
  }

  .abo4 h3 {
    font-size: 1.6rem;
    min-height: initial;
  }

  .abo4 .txt p {
    font-size: 1.4rem;
  }

  .abo4p1 {
    height: 56px;
    font-size: 1.8rem;
  }

  .abo5 {
    position: relative;
    z-index: 0;
    padding: 70px 0 75px;
    background: url(./img/about/bg5sp.jpg) no-repeat center bottom;
    background-size: cover;
  }

  .abo5 .txt p {
    color: #fff;
    font-size: 1.4rem;
    width: 96%;
    margin: 0 auto 30px;
  }

  .abotit2 {
    position: relative;
    padding-bottom: 25px;
    margin-bottom: 25px;
  }

  .col01 .inner {
    display: flex;
    flex-direction: column;
  }

  .col01 .right {
    width: 100%;
  }

  .col01 .left {
    width: 100%;
  }

  .col01 .pager {
    margin-bottom: 80px;
  }

  .colDet01 .colArea {
    flex-direction: column;
  }

  .colDet01 .colArea .left {
    width: 100%;
    margin: 0 0 80px 0;
  }

  .colDet01 .colArea .col01 {
    width: 100%;
  }

  .col01 .kijiCate .imgArea {
    position: relative;
    width: 45%;
    max-width: 252px;
  }
  .col01 .kijiCate li {
    display: flex;
    justify-content: flex-start;
    margin: 0 0 22px 0;
    position: relative;
  }

  .col01 .kijiCate .imgArea {
    margin: 0 30px 0 0;
  }

  .staff01 ul {
    margin-bottom: 80px;
    display: flex;
    flex-wrap: wrap;
    flex-direction: column;
    gap: 46px 0;
  }

  .staff01 li {
    width: 100%;
    /* margin: 0 auto 80px; */
    font-size: 1.4rem;
    max-width: 600px;
  }

  .voiceDet01 .cate ul {
    flex-direction: column;
  }

  .voiceDet01 .cate li {
    margin: 4px 0 0 0;
  }

  .voiceDet01 .Kiji th {
    text-align: left;
    width: 100%;
    display: block;
    border: none;
    margin: 25px 0 0 0;
  }

  .voiceDet01 .Kiji td {
    text-align: left;
    width: 100%;
    padding: 5px 0 25px;
    display: block;
  }

  .voiceDet01 .cate {
    margin: 5px 0 0 0;
    gap: 16px;
    flex-direction: column-reverse;
  }

  .voiceDet01 .cate .cateImg {
    width: 100%;
    margin-bottom: 18px;
    aspect-ratio: 335 / 230;
  }

  .cateContent {
    width: 100%;
  }

  .cateTitle {
    margin-bottom: 10px;
    font-size: 2rem;
  }

  .voiceDet01 .voiceThoughts {
    padding: 18px 22px;
    margin-bottom: 22px;
    font-size: 1.4rem;
    letter-spacing: 1.7;
  }

  .area1:before {
    bottom: -40px;
  }

  .area1 {
    padding-bottom: 90px;
    position: relative;
  }

  .area2 {
    padding: 0 0 40px;
  }

  .mapd h3 {
    padding-bottom: 20px;
    font-size: 2.4rem;
  }

  .mapd {
    background: #fff;
    padding: 25px 15px;
    margin-top: 40px;
  }

  .mapd h3:before {
    position: absolute;
    content: '';
    width: 4px;
    height: 35px;
    left: 0;
    top: 0px;
    bottom: auto;
    margin: auto;
  }

  .mapd ul {
    margin-top: 25px;
  }

  .area3 .abs3 {
    height: 40px;
  }

  .area3 {
    padding: 75px 0 40px;
  }

  .area3p {
    max-width: 580px;
    margin: 5px auto;
    font-size: 1.4rem;
  }

  .area4 .mainTit {
    padding: 50px 100px;
  }

  .area4 .content08 {
    padding: 80px 0 0;
  }

  .area4 .mainTit {
    /* 	padding: 50px 100px; */
    width: 100% !important;
    display: block !important;
    position: relative !important;
    padding: 50px 10px 18px;
  }

  .area4p1 {
    position: unset;
    font-size: 2rem;
  }

  .area5 ul {
    display: flex;
    justify-content: space-between;
    flex-direction: column;
    margin-top: 15px;
  }

  .area5 li {
    max-width: initial;
    width: 100%;
    margin: 0 auto 15px;
  }

  .area5d {
    background: #fff;
    display: flex;
    margin-top: 30px;
    justify-content: space-between;
    border-radius: 10px;
    flex-direction: column;
  }

  .area5dl {
    padding: 40px 15px;
    margin: auto;
  }

  .area5dl h3 {
    text-align: center;
    font-size: 2.4rem;
    padding: 15px;
  }

  .area5dl p {
    margin: 0 0 15px;
    font-size: 1.4rem;
  }

  .area5d img {
    object-fit: cover;
    height: 100%;
    width: 100%;
    border-radius: 0 0px 10px 10px;
  }

  .area5 .btn {
    max-width: 400px;
    font-size: 1.8rem;
  }

  .area5 {
    background: url(./img/area/bg4sp.png) no-repeat center top;
    background-size: cover;
    padding: 85px 0 80px;
  }

  .areatab {
    margin: 0 auto 60px;
  }

  .area2ul2 {
    max-width: initial;
    width: 100%;
    margin: auto;
  }

  .area2d {
    display: flex;
    justify-content: space-between;
    margin: 0 auto 80px;
    flex-direction: column;
  }

  .area2 .ctab {
    width: 50%;
    padding: 14px 0;
    font-size: 1.8rem;
  }

  .artab2 {
    padding: 25px 15px;
  }

  .artul2 > li {
    display: flex;
    margin: 0 0 20px;
    align-items: flex-start;
    flex-direction: column;
  }

  .artag {
    font-size: 1.2rem;
    margin-bottom: 10px;
  }

  .adareap {
    margin-left: 0px;
    font-size: 1.2rem;
    width: 100%;
  }

  .artul3 li {
    margin-left: 0px;
    font-size: 1.2rem;
    margin-right: 20px;
  }

  .area2ifr {
    width: 100%;
    margin: 25px auto;
  }

  .area2ifr iframe {
    width: 100%;
    max-height: 250px;
  }

  .lphd {
    font-size: 1.2rem;
    width: 193px;
    height: 32px;
    border-radius: 4px;
    box-shadow: 0 3px 0 #000000b3;
  }

  .lphd .img {
    margin-right: 0px;
    width: 16px;
  }

  .recruit .lphd .img {
    margin-right: 5px;
    width: 9px;
    display: flex;
    align-items: center;
  }

  .cover2 {
    background: url(./img/course/mvsp.jpg) no-repeat center;
    background-size: cover;
    margin: 100px auto 0;
    min-height: 428px;
    height: 80vh;
    width: 100%;
    display: flex;
    align-items: flex-end;
  }

  .cover2-231118 {
    width: 100%;
    margin: 100px auto 0;
  }

  .cover2-231118 img {
    width: 100%; /* 画像の幅をコンテナの幅に合わせる */
    height: auto; /* 画像の高さを縦横比に基づいて自動調整 */
    display: block; /* 画像をブロック要素として表示 */
  }

  .cta-area {
    display: flex;
    justify-content: center;
    align-items: center;
    max-width: 1240px;
    width: 95%;
    margin: 10px auto;
  }

  .cta-btn {
    display: flex;
    max-width: 476px;
    width: 90%;
    height: 62px;
    align-items: center;
    justify-content: center;
    background: #eaa850;
    border: 1px solid #fff;
    border-radius: 37px;
    margin: 1px;
    box-shadow: 0px 3px 6px rgba(0, 0, 0, 0.4);
    color: #fff !important;
    font-size: min(6.15vw, 20px);
    font-weight: bold;
  }

  /* 警告エリアに対するスタイル */
  .caution-area {
    display: flex;
    justify-content: center; /* 子要素を中央に配置 */
    width: 100%; /* 親要素の幅に合わせる */
    margin-top: 20px;
    margin-bottom: 45px;
  }

  /* 画像に対するスタイル */
  .caution-area img {
    max-width: 95%; /* 画像の最大幅を親要素の幅に合わせる */
    height: auto; /* 高さを自動調整して縦横比を維持 */
  }

  .cocop1 {
    font-size: 1.6rem;
    padding: 14px 30px;
    border-radius: 33px;
    font-weight: 500;
    width: fit-content;
  }

  .cocop1 .updots span:before {
    background: #fff;
    height: 5px;
    width: 5px;
    top: -2px;
  }

  .coh2 {
    font-size: 3.2rem;
    line-height: 1.32;
    text-shadow: 0 0 8px #333333;
    margin: 10px 0 20px;
    letter-spacing: 11.4px;
  }

  .cover2 ul {
    display: flex;
    max-width: 600px;
    justify-content: space-between;
  }

  .recruit .cover2 ul {
    margin: auto;
  }

  .cover2 li p {
    margin-top: 10px;
    font-size: 1.4rem;
  }

  .cover2 li {
    min-height: 120px;
  }

  .cover2 li .img {
    width: 31%;
  }

  .cover2 li .img img {
    max-height: 35px;
  }

  .cou1d2 li p {
    width: 90%;
    font-size: 1.4rem;
  }

  .cou1d2 li {
    align-items: flex-start;
  }

  .cou1d2 li .img {
    width: 18px;
    padding: 5px 0 0;
  }

  .cou1d2 {
    border: 2px solid white;
    padding: 20px;
  }

  .cou1d2 h2 {
    font-size: 1.8rem;
    padding-bottom: 25px;
    margin-bottom: 25px;
  }

  .cou1d {
    background: url(./img/course/co11sp.jpg) no-repeat center;
    padding: 8px;
    background-size: cover;
  }

  .cou2 .mainTit {
    line-height: 1.4;
  }

  .cou2 {
    background: url(./img/course/bg2.png) no-repeat center;
    background-size: cover;
    background-position-x: 70%;
    margin-bottom: 45px;
  }

  .cou3 ul {
    flex-direction: column;
  }

  .cou3 li {
    width: 100%;
    margin: 0 auto 40px;
  }

  .cou3 li .txt {
    padding: 20px 0;
    position: relative;
  }

  .cou3 li h2 {
    font-size: 1.8rem;
    text-align: center;
    margin: 0px auto 10px;
  }

  .cou3p1 {
    font-size: 1.4rem;
  }

  .cou3p2 {
    position: absolute;
    font-size: 14rem;
    font-weight: 500;
    color: #e8ede3;
    bottom: 0;
    right: 0px;
    height: 140px;
    z-index: -1;
    display: flex;
    justify-content: center;
    align-items: center;
    letter-spacing: 0px;
  }

  .cou1 {
    margin: 0px auto 45px;
  }

  .cou3 {
    margin-bottom: 0px;
  }

  .cou4 {
    background: url(./img/course/bg4sp.png) no-repeat top center;
    background-size: cover;
    padding: 80px 0 120px;
  }

  .lptit1 {
    font-size: 1.8rem;
  }

  .cou5sp1 {
    font-size: 1.4rem;
  }

  .cou5 {
    margin: -73px auto 0;
  }

  .cou4 .inner {
    width: 98%;
  }

  .cou5dl {
    text-align: center;
    margin: 0 auto 30px;
    width: 100%;
  }

  .cou5d {
    padding: 35px 0 30px;
  }

  .cou5d2 {
    display: flex;
    max-width: 880px;
    justify-content: space-between;
    margin: auto;
    flex-direction: column;
  }

  .cou5dp1 {
    font-size: 1.6rem;
    margin-bottom: 10px;
  }

  .cou5dp2 {
    font-size: 3.2rem;
    font-weight: 700;
    line-height: 1;
  }

  .cou5dp3 {
    font-size: 1.2rem;
  }

  .cou5dr {
    text-align: center;
    width: 100%;
    max-width: 420px;
    margin: auto;
  }

  .cou5dr .btn {
    width: 95%;
    max-width: initial;
    border: none;
  }

  .cou6 .abs3 {
    height: 83px;
    top: -1px;
  }

  .cou6 {
    padding: 60px 0 20px;
  }

  .coutit .img {
    max-width: 196px;
    margin: auto;
  }

  .cou6 h2 {
    font-size: 4rem;
    line-height: 1.45;
    margin-top: -20px;
  }

  .cou6 .big {
    font-size: 6.4rem;
  }

  .cou6 ul {
    display: flex;
    justify-content: center;
    align-items: stretch;
    flex-wrap: wrap;
    column-gap: 0;
    margin: 100px auto 0;
  }

  .cou6 li {
    background: #fff url(./img/course/co621.svg) no-repeat center;
    background-size: 40%;
    width: 100%;
    min-height: initial;
    padding: 30px 25px;
    max-width: 500px;
  }

  .cou6 li:nth-child(2) {
    background: #fff url(./img/course/co622.svg) no-repeat center;
    background-size: 20%;
  }

  .cou6 li:nth-child(3) {
    background: #fff url(./img/course/co623.svg) no-repeat center;
    background-size: 30%;
  }

  .cou6 li:nth-child(4) {
    background: #fff url(./img/course/co624.svg) no-repeat center;
    background-size: 23%;
  }

  .cou6 li:nth-child(5) {
    background: #fff url(./img/course/co625.svg) no-repeat center;
    background-size: 40%;
  }

  .cou6p1 {
    position: absolute;
    font-size: 2.4rem;
    width: 83px;
    height: 83px;
    border-radius: 50%;
    display: flex;
    justify-content: center;
    align-items: flex-start;
    top: -40px;
    left: 0;
    right: 0;
    margin: auto;
    z-index: -1;
  }

  .cou6 li h3 {
    font-size: 1.8rem;
    text-align: center;
  }

  .cou6p2 {
    font-size: 1.4rem;
  }

  .cou6:before,
  .cou6:after {
    position: absolute;
    content: '';
    width: 35%;
    height: 100%;
    z-index: -1;
  }

  .cou6:before {
    background: url(./img/course/co611.svg) no-repeat top right;
    background-size: contain;
    left: 10px;
    top: 180px;
  }

  .cou6:after {
    background: url(./img/course/co612.svg) no-repeat top left;
    background-size: contain;
    right: -10px;
    top: 195px;
    width: 45%;
  }

  .cou7 .abs4 {
    position: absolute;
    width: 120%;
    bottom: auto;
    top: -40px;
  }

  .cou7p {
    font-weight: 700;
    text-align: left;
    margin: 20px auto 0px;
    font-size: 1.4rem;
  }

  .couth {
    width: 29.8%;
    font-size: 1.2rem;
  }

  .coutd1 {
    height: 28px;
    border-radius: 10px 10px 0 0;
    border-bottom: 0;
    font-size: 1.4rem;
    font-weight: 700;
  }

  .coutd2 {
    height: 70px;
    border: 2px solid;
    width: 23%;
    font-size: 1rem;
    line-height: 1.5;
    font-weight: 700;
  }

  .coutb1 th {
    border-bottom: 1px solid;
    border-top: 1px solid;
    border-left: 1px solid#46341E;
  }

  .coutb1 tr:last-child th {
    border-bottom: 1px solid#46341E;
  }

  .coutb1 {
    margin: 15px auto;
    max-width: 1200px;
    width: 100%;
    border-collapse: inherit;
  }

  .cou7 {
    padding: 35px 0 20px;
  }

  .cou7:before {
    background: url(./img/course/co71.svg) no-repeat center;
    background-size: contain;
    width: 203px;
    height: 137px;
    right: -40px;
    top: -25px;
  }

  .cou8 {
    padding: 80px 0 0px;
  }

  .cou8 .bgcr:before {
    position: absolute;
    content: '';
    width: 146px;
    height: 199px;
    background: url(./img/course/co81.png) no-repeat top center;
    background-size: contain;
    right: 3%;
    top: 3%;
    z-index: -1;
  }

  .abcoutxt {
    font-size: 8rem;
  }

  .cou8 .abcoutxt {
    top: 3%;
  }

  .cou8 .lptit1 {
    font-size: 2.4rem;
  }

  .cou8p1 {
    font-size: 2.4rem;
    font-weight: 700;
  }

  .cou8p1 span {
    font-size: 1.6rem;
  }

  .cou7:after {
    display: none;
  }

  .cou8 .bgcr {
    padding: 150px 0 120px;
    z-index: -1;
    position: relative;
  }

  .cou9 {
    padding: 110px 0 120px;
    background: #f7f3ea;
  }

  .cou9:before {
    display: none;
  }

  .cou9d {
    text-align: left;
  }

  .cou9d p {
    margin: 0 auto 5px;
  }

  .cou9d h2 {
    text-align: center;
  }

  .cou9l1 {
    margin: 0px 0 0;
  }

  .cou9l1 h3 {
    font-size: 1.8rem;
  }

  .cou9u2 {
    margin-top: 45px;
    display: flex;
    column-gap: 3.3%;
    align-items: stretch;
    flex-direction: column;
  }

  .cou9l2 {
    width: 100%;
    align-items: center;
    min-height: 110px;
    padding: 25px 20px;
    margin-bottom: 80px;
  }

  .cou9l2:before {
    position: absolute;
    content: '';
    width: 0;
    height: 0;
    border-style: solid;
    border-width: 12px 7px 0 7px;
    border-color: #46341E transparent transparent transparent;
    right: 0;
    left: 0;
    margin: auto;
    bottom: -35%;
  }

  .cou9l1:last-child .cou9l2:last-child {
    margin-bottom: 25px;
  }

  .cou9p1 {
    font-size: 1.8rem;
  }

  .cou9p3 {
    font-size: 1.2rem;
  }

  .cou9p4 {
    font-size: 1.2rem;
    margin-top: 20px;
  }

  .course .abs3 {
    height: 83px;
    top: -1px;
  }

  .cou9u1 {
    margin: 30px auto 0;
  }

  .cou10 {
    background: url(./img/course/bg10sp.png) no-repeat center top #f7f3ea;
    background-size: cover;
    padding: 110px 0;
  }

  .cou10l1 {
    width: 100%;
    background: #fff;
    max-width: 580px;
    padding: 15px 15px;
    border-radius: 10px;
    min-height: 474px;
    margin: 35px auto 0;
  }

  .cou10d {
    display: flex;
    justify-content: space-between;
    align-items: center;
    flex-direction: column;
  }

  .cou10d .img {
    width: 100%;
    margin-bottom: 15px;
  }

  .cou10d .img img {
    margin: auto;
  }

  .cou10u2 {
    max-width: initial;
    width: 100%;
  }

  .cou10l2 {
    display: flex;
    justify-content: space-between;
    align-items: center;
    margin-bottom: 8px;
    margin-left: 0;
  }

  .cou10p2 {
    width: 28%;
    text-align: center;
    height: 33px;
    border-radius: 4px;
    font-size: 1.2rem;
    display: flex;
    align-items: center;
    justify-content: center;
  }

  .bobr {
    border: 1px solid;
  }

  .bogr {
    border: 1px solid;
  }

  .cou10p3 {
    width: 67%;
    font-size: 1.4rem;
  }

  .cou10p4 {
    margin-top: 10px;
  }

  .cou10 .abs4 {
    position: absolute;
    width: 120%;
    height: 48px;
    bottom: 0px;
    background: url(./img/course/nami.png);
  }

  .cou10p1 {
    font-weight: 700;
    text-align: center;
    margin-top: 25px;
  }

  .cou11 ul {
    flex-direction: column;
  }

  .cou11 li {
    max-width: 545px;
    width: 100%;
    display: flex;
    align-items: center;
    flex-direction: column;
    margin-bottom: 25px;
    border: 2px solid #669f4f;
  }

  .cou11 li .txt {
    max-width: initial;
    width: 90%;
    margin: auto;
    min-height: 120px;
    display: flex;
    flex-direction: column;
    justify-content: center;
  }

  .cou11p2 {
    font-size: 1.6rem;
    font-weight: 700;
  }

  .cou11p3 {
    font-size: 1.4rem;
    margin-top: 5px;
  }

  .cou11 li .img {
    width: 100%;
  }

  .cou11p1 {
    margin: 30px 0;
    text-align: left;
    font-weight: 700;
    font-size: 1.4rem;
  }

  .cou11 {
    padding: 60px 0 95px;
  }

  .cou11 .abcoutxt {
    top: 20px;
    font-size: 8rem;
    text-align: center;
    line-height: 1.2;
    letter-spacing: 10px;
  }

  .cou12 {
    padding: 120px 0 0;
  }

  .cou12 .coutit .img {
    max-width: 202px;
    margin-bottom: 10px;
  }

  .cou12 ul {
    margin: 35px auto 0;
    flex-direction: column;
  }

  .cou12 li {
    width: 95%;
    margin: 0 auto 30px;
    padding-bottom: 25px;
  }

  .cou12d {
    padding: 0;
    flex-direction: initial;
    min-height: 64px;
    align-items: center;
  }

  .cou12p1 {
    top: 0px;
    left: -20px;
    bottom: 0;
    margin: auto;
  }

  .cou12d img {
    height: 25px;
  }

  .cou12p2 {
    font-size: 1.8rem;
    margin-top: 0px;
    margin-left: 5px;
  }

  .cou12p3 {
    font-size: 1.4rem;
    margin-top: 20px;
  }

  .cou13d {
    padding: 0px 0;
    background: none !important;
  }

  .check2 {
    font-size: 1.4rem;
  }

  .cou13 {
    padding: 0 0 90px;
  }

  .course .ftdrli {
    border-top: 1px dotted #fff;
    border-bottom: 1px dotted #fff;
    padding: 25px 0;
    justify-content: space-around;
  }

  .customer01 dl {
    flex-direction: column;
  }

  .customer01 dt {
    width: 100%;
    font-size: 1.8rem;
    background: url(./img/customer/customer01_deco.png) 15vw 52%;
    background-repeat: no-repeat;
    padding: 0 0 0 5vw;
    text-align: center;
    margin: 0 0 18px 0;
    background-size: contain !important;
  }

  .customer01 dt br {
    display: none;
  }

  .customer01 dd {
    width: 100%;
    max-width: 100%;
    text-align: center;
  }

  .customer01 dd a {
    margin: 0 auto 20px;
    display: block;
    max-width: 400px;
  }

  .customer01 li:nth-of-type(1) dt {
    background: url(./img/customer/customer01_deco.png) 13vw 52%;
    background-repeat: no-repeat;
  }

  .customer01 li:nth-of-type(2) dt {
    background: url(./img/customer/customer01_deco.png) 12vw 52%;
    background-repeat: no-repeat;
  }

  .customer01 li:nth-of-type(3) dt {
    background: url(./img/customer/customer01_deco.png) 18vw 52%;
    background-repeat: no-repeat;
  }

  .inte01 .box {
    display: flex;
    justify-content: space-between;
    flex-direction: column;
  }

  .inte01 .box .img {
    width: 100%;
    max-width: 480px;
    margin: 0 auto;
  }

  .inte01 .box .txt {
    width: 100%;
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    max-width: 480px;
    margin: 0 auto;
  }

  .inte01 .box h3 {
    margin: 20px 0 14px;
    font-size: 2.4rem;
  }

  .inte02 .btnArea {
    display: flex;
    justify-content: center;
    margin: 80px 0 0 0;
    flex-direction: column;
  }

  .inte02 .btnArea a {
    margin: 0 auto 18px;
  }

  .coreh2 {
    font-size: 4rem !important;
    letter-spacing: initial !important;
    text-align: center;
    font-weight: 700;
    text-shadow: 0 0 24px #000 !important;
  }

  .corep1 {
    margin: auto;
    padding: 8.5px 30px !important;
  }

  .recruit .cover2 {
    background: url(./img/recruit/mvsp.jpg) no-repeat center;
    background-size: cover;
  }

  .corep2 {
    border-top: 2px dotted;
    border-bottom: 2px dotted;
    font-size: 1.4rem;
    text-align: center;
    padding: 15px 0;
    width: 95%;
    margin: 0 auto 15px;
    font-weight: 700;
  }

  .rec1d .lptit1 {
    font-size: 2.4rem;
  }

  .rec1d p {
    width: 98%;
    margin: 15px auto 0;
    font-size: 1.4rem;
  }

  .rec1d3 {
    flex-direction: column-reverse;
  }

  .rec1d3 .txt {
    max-width: initial;
    margin-top: 15px;
    width: 100%;
  }

  .rec1d3 .txt p {
    margin-bottom: 15px;
    line-height: 1.5;
  }

  .rec1d3 .txt .noma {
    margin: 0;
  }

  .rec1d3 .img {
    width: 100%;
  }

  .rectit:before,
  .rectit:after {
    position: absolute;
    content: '';
    background: url(./img/recruit/co12.svg) no-repeat;
    background-size: contain;
    width: 78px;
    height: 57px;
  }

  .rectit:before {
    left: 0;
    top: auto;
    bottom: -20px;
  }

  .rectit:after {
    right: 0;
    top: auto;
    bottom: -20px;
  }

  .rectit .fukidashi span {
    font-size: 1.4rem;
  }

  .rectit h2 {
    margin-top: 10px;
    font-size: 3.2rem !important;
  }

  .rec1 {
    padding: 0px 0 90px;
  }

  .rec2p1 {
    text-align: left;
    margin: 30px auto 50px;
    font-size: 1.4rem;
  }

  .rec2 .abcoutxt {
    font-size: 40px;
    text-align: center;
  }

  .rec2 {
    padding: 25px 0;
  }

  .rec2 ul {
    flex-direction: column;
  }

  .rec2 li {
    max-width: initial;
    width: 100%;
    margin: 0 auto 40px;
  }

  .rec2 h3 {
    border-radius: 10px 10px 0 0;
    font-size: 1.8rem;
    padding: 7.5px 0;
  }

  .rec2 li .txt {
    min-height: 230px;
    display: flex;
    justify-content: center;
    align-items: center;
    border-bottom: 1px dotted #669f4f;
    padding: 10px 0;
  }

  .rec2 li .img {
    width: 80%;
  }

  .rec2 li:last-child .img {
    width: 54%;
  }

  .rec2p2 {
    font-size: 1.2rem;
    font-weight: 700;
    padding: 6px 0;
  }

  .rec3 ul {
    margin-top: 55px;
  }

  .rec3 li {
    display: flex;
    justify-content: space-between;
    align-items: flex-start;
    margin-bottom: 80px;
    flex-direction: column-reverse !important;
  }

  .rec3 li:last-child {
    margin: 0;
    flex-direction: row-reverse;
  }

  .rec3l {
    max-width: initial;
    width: 100%;
    margin: 15px auto 0;
  }

  .rec3ab {
    font-size: 7rem;
    right: 0 !important;
    top: -35px;
    line-height: 1;
    left: 0 !important;
    margin: auto;
    width: fit-content;
  }

  .rec3l h3 {
    font-size: 1.8rem;
    margin-bottom: 20px;
  }

  .rec3l p {
    font-size: 1.4rem;
  }

  .rec3 {
    z-index: 1;
    padding: 130px 0 120px;
  }

  .rec3:before,
  .rec3:after {
    position: absolute;
    content: '';
    width: 28%;
    height: 100%;
    z-index: -1;
  }

  .rec3:before {
    background: url(./img/recruit/co311.svg) no-repeat top right;
    background-size: contain;
    left: 0;
    top: 100px;
    max-height: 109px;
  }

  .rec3:after {
    background: url(./img/recruit/co312.svg) no-repeat top left;
    background-size: contain;
    right: 0;
    top: 90px;
    width: 29%;
    max-height: 121px;
  }

  .rec4 ul {
    margin: 35px auto 0;
    flex-direction: column;
  }

  .rec4 li {
    width: 95%;
    margin: 0 auto 30px;
    padding-bottom: 25px;
    max-width: initial;
  }

  .rec4d {
    padding: 0;
    flex-direction: initial;
    min-height: 64px;
    align-items: flex-start;
    padding: 15px 0;
    width: 95%;
    margin-left: auto;
  }

  .rec4p1 {
    top: 0px;
    left: -10%;
    bottom: 0;
    margin: auto;
  }

  .rec4d img {
    height: 25px;
  }

  .rec4p2 {
    font-size: 1.6rem;
    margin-top: 0px;
    margin-left: 5px;
    text-align: left;
  }

  .rec4 li:before {
    position: absolute;
    content: '';
    width: 0;
    height: 0;
    border-style: solid;
    border-width: 12px 7px 0 7px;
    border-color: #46341E transparent transparent transparent;
    right: 0;
    left: 0;
    margin: auto;
    bottom: 0%;
    top: auto;
  }

  .cou12 li:before {
    position: absolute;
    content: '';
    width: 0;
    height: 0;
    border-style: solid;
    border-width: 12px 7px 0 7px;
    border-color: #46341E transparent transparent transparent;
    right: 0;
    left: 0;
    margin: auto;
    bottom: 0%;
    top: auto;
  }

  .rec4 .txt {
    background: #fff;
    padding: 20px 15px;
    max-width: 1080px;
    margin: auto;
  }

  .rec4:before {
    display: none;
  }

  .rec4 {
    padding: 20px 0 25px;
    z-index: 1;
  }

  .rec5 .bgcr {
    padding: 80px 0 70px;
    z-index: -1;
    position: relative;
  }

  .rec5:before,
  .rec5:after {
    display: none;
  }

  .rec5 {
    padding: 60px 0 0;
  }

  .rec6 {
    background: url(./img/recruit/bg6sp.jpg) no-repeat center;
    background-size: cover;
    z-index: 0;
    padding: 120px 0 90px;
  }

  .rec6 .inner2 {
    width: 90%;
  }

  .rec6 ul {
    display: flex;
    justify-content: space-between;
    align-items: center;
    flex-direction: column;
  }

  .rec6 li {
    min-height: 54px;
    width: 100%;
    margin-bottom: 20px;
    padding: 20px 15px;
    font-size: 1.4rem;
  }

  .abs4cr {
    background: url(./img/nami3.png);
    background-size: contain;
    bottom: -40px;
  }

  .rec7 {
    padding: 55px 0 80px;
  }

  .rec7 .abcoutxt {
    top: 10px;
  }

  .rectb th {
    width: 100%;
    font-weight: 700;
    text-align: left;
    padding: 15px 0 5px;
    vertical-align: top;
    display: block;
    font-size: 1.4rem;
  }

  .rectb td {
    width: 100%;
    padding: 0 0 15px;
    display: block;
    font-size: 1.4rem;
  }

  .rectb li {
    background: #fff;
    border: 1px solid #cccccc;
    padding: 15px;
    margin-bottom: 45px;
    position: relative;
  }

  .rectb li:last-child {
    margin-bottom: 0;
  }

  .rec7p2 {
    font-size: 1.4rem;
  }

  .rec7p3 {
    font-size: 1.2rem;
  }

  .rec4tit h2 {
    font-size: 2.4rem;
    text-align: center;
    line-height: 1.1;
  }

  .rec4tit h2 .big {
    font-size: 4rem;
  }

  .adprp {
    text-align: right;
    font-size: 1.2rem;
  }

  .sitemap01 .left,
  .sitemap01 .right {
    display: flex;
    justify-content: flex-start;
    width: 49%;
    font-size: 1.4rem;
    flex-direction: column;
  }
  .sitemap01 .right {
    display: flex;
    justify-content: space-between;
    flex-direction: column;
  }

  .sitemap01 .left ul,
  .sitemap01 .right ul {
    width: 100%;
  }

  .sitemap01 .inner {
    padding: 0 0 120px 0;
    background-position-y: 111%;
    width: 88%;
  }

  .sitemap02 h2 {
    text-align: center;
    font-size: 2.4rem;
    color: #fff;
    margin: 0 0 30px 0;
  }

  .sitemap02 dl {
    display: flex;
    align-items: baseline;
    flex-direction: column;
    font-size: 1.4rem;
  }

  .sitemap02 dt {
    width: 100%;
    font-size: 1.6rem;
    font-weight: 700;
    line-height: 1.6;
    margin-bottom: 10px;
  }
  .sitemap02 dd {
    width: 100%;
  }

  .sitemap02 dd a {
    line-height: 2;
    margin: 0 15px 0 0;
  }

  .sitemap02 dd span {
    line-height: 2;
    margin: 0 15px 0 0;
  }

  .sitemap02 li {
    border: none;
    padding: 25px 0 0;
  }

  .sitemap02 .inner {
    padding: 0 5% 25px;
  }

  .video iframe {
    width: 100%;
    max-width: 960px;
    max-height: 215px;
  }

  .wedding .lphd {
    font-size: 1.2rem;
    width: 214px;
    height: 64px;
    border-radius: 0;
    box-shadow: none;
  }

  .cover3 {
    min-height: 600px;
    width: 100%;
    background: url(./img/wedding/mv1sp.jpg) no-repeat;
    margin: 64px auto 0;
    display: flex;
    align-items: center;
    justify-content: center;
    position: relative;
    height: auto;
    padding: 50px 0;
  }

  .wecop1 {
    margin: 15px auto;
    padding: 10px 0;
    font-size: 1.4rem;
  }

  .wecoh2 {
    font-size: 2.4rem;
  }

  .wecovl {
    max-width: 560px;
    width: 95%;
    margin: 0 auto 10px;
  }

  .wecovr {
    width: 80%;
  }

  .wecov {
    justify-content: center;
    flex-direction: column;
  }

  .cover3:before {
    display: none;
  }

  .wecov .img img {
    margin: auto;
    width: 53%;
    max-width: 321px;
  }

  .wed1d {
    padding: 0 0 185px;
    flex-direction: column;
  }

  .wed1d .img {
    max-width: 1000px;
    width: 95%;
    margin-bottom: 30px;
  }

  .wedr {
    padding: 0;
    width: 95%;
  }

  .wed1 h2 span {
    font-size: 1.2rem;
    font-weight: 500;
  }

  .wed1p1 {
    font-size: 1.6rem;
    margin-bottom: 15px;
    width: 97%;
  }

  .wed1 h2 {
    font-size: 2.4rem;
    padding: 25px 0 25px 10px;
    width: fit-content;
    margin: 0 auto;
  }

  .wedr .txt {
    max-width: initial;
    width: 96%;
    margin: 0 0 0 auto;
  }

  .wed1p2 {
    margin-bottom: 15px;
    font-size: 1.4rem;
  }

  .wed1d:before {
    width: 242px;
    height: 164px;
    background: url(./img/wedding/co12.svg) no-repeat;
    background-size: contain;
    bottom: 35px;
  }

  .wed1d2 {
    background: #f7f3ea;
    padding: 30px 0 50px;
  }

  .wed1d2 .wed1p2 {
    text-align: left;
    width: 95%;
    margin: auto;
    font-size: 1rem;
  }

  .wed1d2 ul {
    margin: 0 auto 10px;
    width: 95%;
    flex-wrap: wrap;
  }

  .wed1d2 li {
    max-width: initial;
    width: 48%;
    min-height: 182px;
    margin-bottom: 20px;
  }

  .wed1d2 li .img {
    max-width: 64px;
    max-height: 64px;
  }

  .wed1d2 li p {
    font-size: 1.2rem;
    line-height: 1.5;
    margin-top: 15px;
  }

  .wedding .abcoutxt {
    font-size: 12rem;
    letter-spacing: 9.6px;
  }

  .wed2 .abcoutxt {
    top: 0;
    right: 20px;
  }

  .wed2 {
    padding: 85px 0 180px;
  }

  .wedbar {
    padding-bottom: 25px;
    margin-bottom: 25px;
  }

  .wed2 h2:after {
    width: 50px;
    height: 69px;
    background: url(./img/wedding/co21.svg) no-repeat;
    background-size: contain;
  }

  .wed2 h2 {
    max-width: 200px;
    margin-left: auto;
    margin-right: auto;
  }

  .wedp {
    text-align: left;
    font-size: 1.4rem;
  }

  .wed2d dl {
    padding-bottom: 25px;
    margin-bottom: 20px;
    flex-direction: column;
  }

  .wed2d dd {
    font-weifht: 700;
  }

  .wed2d dd span {
    font-weight: 500;
    font-size: 1.2rem;
  }

  .wed2d p {
    font-size: 1.2rem;
  }

  .wed2d2 {
    margin: 20px auto 0;
    padding: 20px 15px;
    justify-content: space-between;
    align-items: flex-start;
    flex-direction: column;
  }

  .wed2l,
  .wed2r {
    max-width: initial;
    width: 100%;
  }

  .wed2l {
    margin-bottom: 20px;
  }

  .wed2d2 h3 {
    font-size: 1.4rem;
  }

  .wed3 {
    margin: -60px auto 0;
  }

  .wed3 h2 {
    max-width: 880px;
    margin: 0 auto -1px;
    text-align: center;
    border-radius: 10px 10px 0 0;
    padding: 6px 0;
    width: 90%;
  }

  .wed3sp1 {
    font-size: 1.8rem;
  }

  .wed3dr {
    text-align: center;
    margin: 0 auto;
    width: 100%;
  }

  .wed3d {
    padding: 30px 0;
  }

  .wed3d2 {
    max-width: 880px;
    margin: auto;
    width: 95%;
    flex-direction: column;
  }

  .wed3dl {
    text-align: center;
    width: 100%;
    max-width: 420px;
    margin: 0 auto 20px;
  }

  .wed3dl .btn {
    width: 100%;
    max-width: initial;
    border: none;
    color: #212121;
    margin-top: 20px;
  }

  .wed3p1 {
    font-size: 1.4rem;
  }

  .wed3dl .wed3p2 {
    font-size: 2.4rem;
  }

  .wed3p2 {
    font-size: 3.2rem;
    font-weight: 700;
    line-height: 1;
    margin-top: 5px;
  }

  .wed3p4 {
    font-size: 1.6rem;
    font-weight: 700;
  }

  .wed3p5 {
    padding: 10px 0;
    text-align: left;
    display: flex;
    justify-content: center;
  }

  .wed4 .abcoutxt {
    top: 0;
    left: 20px;
  }

  .wed4 ul {
    margin: 35px auto 10px;
    flex-direction: column;
  }

  .wed4 li {
    max-width: 580px;
    width: 100%;
    margin: 0 auto 30px;
  }

  .wed4d {
    font-size: 1.2rem;
    padding: 22.5px 15px;
    text-align: left;
  }

  .wed4 {
    padding: 75px 0;
  }

  .wed4 h2:after {
    width: 98px;
    height: 56px;
    background: url(./img/wedding/co41.svg) no-repeat;
    background-size: cover;
    right: 25px;
    top: 0;
  }

  .wed5u1 {
    margin-top: 30px;
    flex-direction: column;
  }

  .wed5u1 li {
    width: 100%;
    min-height: 80px;
    max-width: initial;
    justify-content: flex-start;
    padding-left: 30%;
    margin: 0 auto 25px;
  }

  .wed5p2 {
    font-size: 1.6rem;
  }

  .wed5p1 {
    font-size: 1.2rem;
    top: -13px;
  }

  .wed5 {
    background: url(./img/wedding/bg5.jpg);
    padding: 13px 0 80px;
  }

  .wed5d {
    margin: 30px auto 0;
    padding: 30px 0 0;
    border-top: 1px dotted;
  }

  .wed5p3 {
    text-align: center;
    font-size: 1.4rem;
    font-weight: 700;
  }

  .wed5u2 {
    display: flex;
    flex-wrap: wrap;
    align-items: flex-start;
  }

  .wed5u2 li {
    margin-top: 20px;
    width: 33.33333%;
  }

  .wed5d2 {
    margin-top: 30px;
    padding: 20px 2%;
    text-align: left;
    font-size: 1.2rem;
  }

  .wed6ci.pc {
    display: none;
  }

  .wed6ci.sp {
    display: flex;
    margin-right: 15px;
    width: 67px;
    height: 67px;
    font-size: 1.2rem;
  }

  .wed6dtit {
    display: flex;
    align-items: center;
    margin-bottom: 20px;
  }

  .wed6ci span {
    font-size: 1.8rem;
    line-height: 1;
  }

  .wed6d {
    margin-left: 0px;
    width: 100%;
  }

  .wed6d > p {
    font-size: 1.4rem;
  }

  .wed6d .btn {
    height: 67px;
    width: 83%;
    font-size: 1.5rem;
  }

  .wed6d h3 {
    font-size: 1.8rem;
    margin-bottom: 10px;
  }

  .wed6 {
    padding: 55px 0 90px;
  }

  .wed6 ul {
    margin: 0px auto 0;
  }

  .wed6 li {
    padding: 20px 0;
  }

  .wed6 .abcoutxt {
    top: 0;
    right: 20px;
  }

  .wed7 ul {
    display: flex;
    justify-content: space-between;
    margin-top: 65px;
    flex-direction: column;
  }

  .wed7 li {
    background: #fff;
    max-width: 580px;
    width: 95%;
    border: 4px solid #3b6068;
    text-align: center;
    min-height: initial;
    padding: 30px 30px;
    margin: 0 auto 20px;
  }

  .wed7 li p {
    margin-top: 20px;
    text-align: left;
    font-size: 1.4rem;
  }

  .wed7 {
    padding: 40px 0 60px;
    background: url(./img/wedding/bg7sp.jpg) no-repeat center bottom;
    background-size: contain;
  }

  .faq01 dt p {
    width: 79%;
    font-size: 1.4rem;
  }

  .wed8 li:first-child {
    border-top: 2px solid #3b6068;
  }

  .wed8 li {
    border-bottom: 2px solid #3b6068;
  }

  .wed8 dt {
    padding: 15px 0 15px;
    align-items: flex-start;
  }

  .wed8 dl span {
    margin: 0 4% 0 0px;
    font-size: 1.6rem;
    font-weight: 500;
  }

  .wed8 dt .pulu {
    right: -5%;
    top: 35%;
  }

  .wed8 dd {
    align-items: flex-start;
    padding: 25px 0% 25px;
    border-radius: 0 0 10px 10px;
  }

  .wed8 dd p {
    width: 92%;
    font-size: 16px;
    margin: 0px 0 0 16px;
  }

  .wed8 .b-b {
    line-height: 2;
  }

  .wed8 {
    margin: 0;
    padding: 30px 0 80px;
  }

  .wed8 h2 span {
    font-size: 1.2rem;
  }

  .wed9d {
    display: flex;
    position: relative;
    padding: 0 0 10px;
    flex-direction: column;
    justify-content: flex-end;
  }

  .wed9d .img {
    max-width: 1000px;
    width: 80%;
    margin: 0 0 40px auto;
  }

  .wed9 .wedr {
    padding: 0px 0px 0 0px;
    width: 100%;
  }

  .wed9 h2 {
    width: fit-content;
    margin: auto;
    padding: 25px 0;
  }

  .wed9 .wedr .txt {
    max-width: initial;
    margin: 0 auto;
    width: 95%;
  }

  .wed9p1 {
    font-size: 1.6rem;
    margin-bottom: 15px;
  }

  .wed9p2 {
    font-size: 1.4rem;
    margin-bottom: 15px;
  }

  .wed9 h2 span {
    font-size: 1.2rem;
    font-weight: 500;
  }

  .wed9 {
    padding: 65px 0 100px;
  }

  .contact_tb td {
    font-size: 1.4rem;
    padding: 0 0 20px;
  }

  .wed10 {
    padding: 55px 0 50px;
  }

  .wed10 h2 span {
    font-size: 1.2rem;
  }

  .wed10 .contact_tb {
    margin: 25px auto 30px;
  }

  .wed11d {
    display: flex;
    justify-content: center;
    align-items: center;
    flex-direction: column-reverse;
  }

  .wed11dl {
    max-width: initial;
    width: 100%;
    margin-right: 0px;
  }

  .wed11d .img {
    margin-top: 20px;
    width: 100%;
  }

  .wed11p1 {
    margin-bottom: 25px;
    font-size: 1.4rem;
  }

  .wed11ld {
    margin-top: 0px;
  }

  .wed11p2 {
    font-size: 1.6rem;
    border-left: 8px solid;
    padding-left: 10px;
    margin-bottom: 20px;
  }

  .wed11p3 {
    font-size: 1.4rem;
    line-height: 2;
  }

  .wed11 {
    background: url(./img/wedding/bg11.jpg) no-repeat center;
    background-size: cover;
    padding: 30px 0;
  }

  ul.noslide li {
    width: 100%;
    margin-bottom: 20px;
  }

  .check.plan .mwform-checkbox-field.horizontal-item:nth-child(6):before {
    position: absolute;
    content: '※エリアによって利用できない場合があります。';
    bottom: 0;
    left: 30px;
    font-size: 1.2rem;
  }
  /* ☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆ */
} /* max-width: 768px ここまで */

/* ☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆ */

/* ★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★ */
/* ★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★ */

@media screen and (max-width: 591px) {
  /* ★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★ */
  /* ★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★ */

  .pc2 {
    display: none;
  }

  .sp2 {
    display: block;
  }

  /*-- テーブル --*/

  table {
    width: 100%;
  }

  /*-- ページトップ --*/

  /* フッター
----------------------------------------------------------- */

  .sp nav {
    margin: 0 auto;
  }

  /* トップページ
----------------------------------------------------------- */

  #main {
  }

  /* 中ページ
----------------------------------------------------------- */
  .company iframe {
    width: 100%;
    margin: 30px auto 0;
    display: block;
  }

  .listUl li {
    width: 48%;
  }

  .contact_tb th {
    font-size: 100%;
  }

  .choose_list1 {
    width: 80%;
  }

  #zip1,
  #zip2 {
    width: 40%;
  }

  #city,
  #pref,
  #add {
    width: 96%;
    margin: 2px 0 0;
  }

  /*-- エラーチェック --*/

  .zip1formError {
    left: 10% !important;
  }

  .zip2formError {
    left: 54% !important;
  }

  .prefformError,
  .cityformError,
  .addformError {
    top: 30px !important;
    left: 50% !important;
  }

  .detailBox > div {
    width: 100%;
    float: none;
  }

  .detailBox > .detailTxt {
    width: 98%;
    margin: 20px auto 0;
  }

  .formError {
    top: 20px !important;
    left: 10% !important;
  }

  .zip2formError {
    width: 42% !important;
    left: 50% !important;
  }

  .hLogo {
    max-width: 140px;
  }

  .mainTit {
    font-size: 2.4rem;
    text-align: center;
    line-height: 1.4;
    position: relative;
    z-index: 1;
  }

  .mainTit .mid {
    font-size: 1.8rem;
  }

  .fukidashi span {
    display: inline-block;
    padding: 0 20px;
    font-size: 1.4rem;
  }

  .content03:before,
  .content03:after {
    position: absolute;
    content: '';
    width: 100%;
    height: 100%;
    z-index: -1;
    max-height: 250px;
  }

  .content03:before {
    background: url(./img/co32.png) no-repeat top left;
    background-size: contain;
    left: -65px;
    top: 10px;
  }

  .content03:after {
    background: url(./img/co33.png) no-repeat top right;
    background-size: contain;
    right: -200px;
    top: 35px;
  }

  .content04 ul {
    flex-wrap: nowrap;
    width: 768px;
    height: 100%;
    max-width: initial;
    margin: 15px auto 0;
    width: 1000px;
  }

  .content04 li {
    margin: 0px;
    width: 100%;
    max-width: 116px;
    margin-bottom: 0px;
    text-align: center;
  }

  .content04 li h3 {
    font-size: 1.4rem;
    padding: 10px 0;
    border-bottom: 2px dotted;
  }

  .content04 li p {
    font-size: 1.2rem;
    padding: 10px 0;
  }

  .content04:before {
    bottom: -23px;
    width: 80%;
  }

  .content05 li h3 {
    font-size: 1.4rem;
    border-right: 2px dotted;
  }

  .co5d {
    font-size: 1.4rem;
  }

  .co7ab {
    text-align: center;
    margin-bottom: 5px;
    width: 155px;
  }

  .co71 {
    height: 200px;
  }

  .co72p {
    font-size: 1rem;
  }

  .content08 {
    padding: 30px 0 0;
  }

  .co8d {
    max-width: 260px;
    position: relative;
    margin: auto;
  }

  .contact-area h2 {
    width: 80%;
    font-size: 1.8rem;
    border-radius: 10px 10px 0 0;
    padding: 10px 0 0;
  }

  .ad2 {
    position: relative;
    background: url(./img/ad26.png) no-repeat bottom;
    padding: 0px 0 20px;
    margin-bottom: 60px;
    background-position-x: 180px;
  }

  .faq01 dt .pulu {
    right: -5%;
  }

  .sidebar {
    font-size: 1.4rem;
  }

  .sitter1 h2 {
    font-size: 2.4rem;
    text-align: center;
  }

  .content03.sitter2 li {
    max-width: 270px;
    width: 48%;
    margin: 0 0 35px;
  }

  .si3l p {
    font-size: 1.4rem;
  }

  .si3l h3 {
    font-size: 1.8rem;
  }

  .sitter5 td {
    background: #fff;
    text-align: center;
    width: 15.67% !important;
  }

  .sitd2 {
    height: 88px;
    font-size: 1rem;
  }

  .sitter6 .content08 {
    padding: 50px 0 0;
  }

  .sitter6:before {
    bottom: -25px;
    width: 80%;
  }

  .content07.sitter6 {
    padding: 0 0 90px;
  }

  .pridul li:nth-child(1):before {
    right: -16%;
    bottom: 0;
    top: 0;
    margin: auto;
  }

  .pridul li:nth-child(4) {
    width: 95%;
    max-width: 248px;
  }

  .flow1 h2 {
    font-size: 1.8rem;
    text-align: center;
  }

  .flowtit h2 {
    font-size: 1.8rem;
    line-height: 1.4;
  }

  .flowtit h2 span {
    font-size: 1.4rem;
    font-weight: 500;
  }

  .abo1 h2 {
    font-size: 1.8rem;
  }

  .abo1d {
    font-size: 1.4rem;
  }

  .abtit .sidebar {
    font-size: 1.2rem;
    padding: 0 30px;
    letter-spacing: 1px;
  }

  .abo4 h2 > span > span {
    font-size: 1rem;
    width: 120%;
    left: -5px;
  }

  .col01 .colList > ul li {
    width: 46%;
    margin: 0 1.6% 40px;
  }

  .modalArea p {
    font-weight: 700;
    line-height: 1.6875;
  }

  .area1:before {
    bottom: -25px;
    width: 80%;
  }

  .area2p1 {
    font-size: 1.4rem;
  }

  .area2p2 {
    font-size: 1.2rem;
    padding: 25px 15px;
    border-top: 4px dotted;
    border-bottom: 4px dotted;
    max-width: 1040px;
    width: 100%;
    margin: 20px auto 40px;
  }

  .mapd h3 {
    padding-bottom: 20px;
    font-size: 1.8rem;
  }

  .mapd li {
    margin-right: 15px;
    font-size: 1.4rem;
  }

  .area4 .content08 {
    padding: 40px 0 0;
  }

  .area2ul2 li {
    height: 52px;
    padding: 0 15px;
    font-size: 1.4rem;
  }

  .cover2 li p {
    margin-top: 10px;
    font-size: 1.2rem;
  }

  .cou2 {
    background: url(./img/course/bg2.png) no-repeat center;
    background-size: cover;
    background-position-x: 73%;
  }

  .coutd1 {
    height: 28px;
    border-radius: 10px 10px 0 0;
    border-bottom: 0;
    font-size: 1rem;
    font-weight: 700;
  }

  .coutd2 {
    width: 20%;
  }

  .couth {
    width: 29.8%;
    font-size: 1rem;
  }

  .cou7p2 {
    font-size: 1.2rem;
  }
  .cou7 .img {
    max-width: 124px;
    margin: 0 auto 10px;
  }

  .cou8 {
    padding: 30px 0 0px;
  }

  .cou10 .abcoutxt {
    top: 50px;
    font-size: 8rem;
    text-align: center;
    line-height: 1.2;
    letter-spacing: 10px;
  }

  .customer01 h2 {
    font-size: 2.4rem;
  }

  .customer01 h2 span {
    width: 30%;
  }

  .customer01 li:nth-of-type(1) dt {
    background: url(./img/customer/customer01_deco.png) 3vw 52%;
    background-repeat: no-repeat;
  }

  .customer01 li:nth-of-type(2) dt {
    background: url(./img/customer/customer01_deco.png) 3vw 52%;
    background-repeat: no-repeat;
  }

  .customer01 li:nth-of-type(3) dt {
    background: url(./img/customer/customer01_deco.png) 9vw 52%;
    background-repeat: no-repeat;
  }

  .corep1 {
    font-size: 1.4rem;
  }

  .rec2 h3 {
    border-radius: 10px 10px 0 0;
    font-size: 1.4rem;
    padding: 7.5px 0;
  }

  .rec3ab {
    font-size: 4rem;
    top: -20px;
  }

  .sitemap01 .inner {
    padding: 0 0 120px 0;
    background-position-y: 105%;
  }

  .wecovr {
    width: 100%;
  }

  .wed5u1 li {
    width: 100%;
    min-height: 80px;
    max-width: initial;
    justify-content: flex-start;
    padding-left: 5%;
    margin: 0 auto 25px;
  }

  .wed5u2 p {
    font-size: 1rem;
    text-align: center;
    margin-top: 10px;
  }

  .wed9d .img {
    max-width: 1000px;
    width: 95%;
    margin: 0 0 40px auto;
  }

  .wed11dl h2 {
    font-size: 2.4rem;
    line-height: 1.4;
    margin-bottom: 20px;
  }

  .wed11dl h2 span {
    font-size: 1.4rem;
  }

  .confl > input[type='text'].hasDatepicker {
    width: 44%;
  }
  /* ☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆ */
} /* max-width: 591px ここまで */

/* ☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆ */

/* ★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★ */
/* ★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★ */

@media screen and (max-width: 414px) {
  /* ★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★ */
  /* ★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★ */

  .ui-dialog.ui-widget.ui-widget-content.ui-corner-all.ui-front.ui-dialog-buttons {
    width: 94% !important;
    margin: 0 auto;
    position: absolute;
    left: 0;
    right: 0;
  }

  .choose_list1 {
    width: 96%;
    font-size: 90%;
  }

  .choose_list1 > li {
    width: 49%;
  }

  .sitter1 h2 {
    font-size: 2.2rem;
    text-align: center;
  }

  .pri3tit h3 {
    margin-left: 10px;
    font-size: 1.6rem;
  }

  .flow1 h2 {
    font-size: 1.6rem;
    text-align: center;
  }

  .abtit .sidebar {
    font-size: 1rem;
    padding: 0 30px;
    letter-spacing: 1px;
  }

  .abo1 h2 {
    font-size: 1.6rem;
  }

  .mainTit {
    font-size: 2rem;
  }

  .cocop1 {
    font-size: 1.4rem;
    padding: 14px 30px;
    border-radius: 33px;
    font-weight: 500;
    width: fit-content;
  }

  .coh2 {
    font-size: 2.6rem;
    line-height: 1.32;
    text-shadow: 0 0 8px #333333;
    margin: 10px 0 20px;
    letter-spacing: 11.4px;
  }

  .lptit1 {
    font-size: 1.6rem;
  }

  .coutd2 {
    width: 20%;
  }

  .rec4p2 {
    font-size: 1.4rem;
    margin-top: 0px;
    margin-left: 5px;
    text-align: left;
  }

  .rec4p1 {
    top: 0px;
    left: -10%;
    bottom: 0;
    margin: auto;
    width: 70px;
    height: 70px;
  }

  .coreh2 {
    font-size: 3.6rem !important;
  }

  .wed1 h2 {
    font-size: 2rem;
    padding: 25px 0 25px 10px;
  }

  .wed6d h3 {
    font-size: 1.6rem;
    margin-bottom: 10px;
  }

  /* ☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆ */
} /* max-width: 414px ここまで */

/* ☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆ */

/* ★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★ */
/* ★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★ */

@media screen and (max-width: 320px) {
  /* ★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★ */
  /* ★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★ */

  .telBtn a,
  .menuBtn a {
    font-size: 200%;
  }

  /* ☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆ */
} /* max-width: 320px ここまで */

/* ☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆ */

/* abouttable */

.abtb tr {
  background-color: #ffffff;
}
.abtb th,
.abtb td {
}
.abtb td {
  border: 2px solid #46341E;
}

.abtb .abtd1 {
  width: 43%;
  height: 190px;
  padding: 20px 20px 0;
  font-size: 1.6rem;
  vertical-align: top;
}

.abtb .abtbth {
  font-size: 2.4rem;
  border-radius: 10px 10px 0 0;
  height: 87px;
}

.abtb th {
  font-size: 2.4rem;
}

.abtb tbody th {
  background: #669f4f;
  color: #fff;
  width: 13.3%;
  font-size: 2.4rem;
  text-align: left;
  padding-left: 10px;
  border-bottom: 2px solid #fff;
}

.abtb .txt {
  text-align: left;
}

.abtb .txt2 {
  font-weight: bold;
}

.non {
  background: #fff;
  border: none !important;
}

@media screen and (max-width: 1000px) {
  .abtb .abtd1 {
    padding: 20px 10px 0;
    font-size: 1.4rem;
  }

  .abtb .abtbth {
    font-size: 2.4rem;
    height: 87px;
  }

  .abtb tbody th {
    font-size: 1.5rem;
    padding-left: 5px;
  }
}
@media screen and (max-width: 768px) {
  .abtb {
    border: 0;
    width: 100%;
  }
  .abtb th {
    background-color: #167f92;
    display: block;
    border-right: none;
  }
  .abtb thead {
    border: none;
    clip: rect(0 0 0 0);
    height: 1px;
    margin: -1px;
    overflow: hidden;
    padding: 0;
    position: absolute;
    width: 1px;
  }
  .abtb tr {
    display: block;
    margin-bottom: 25px;
  }
  .abtb td {
    display: block;
    font-size: 0.8em;
    text-align: right;
    position: relative;
    padding: 0.625em 0.625em 0.625em 4em;
  }

  .abtb td::before {
    content: attr(data-label);
    font-weight: bold;
    position: absolute;
    left: 10px;
    top: 10px;
    background: #fddd6e;
    border-radius: 16px;
    padding: 0 12px;
    font-size: 1.6rem;
  }

  .abtb td.txt2::before {
    background: #f29436;
    color: #fff;
  }
  .abtb td:last-child {
  }
  .abtb tbody th {
    color: #fff;
  }
  .abtb tbody th {
    background: #669f4f;
    color: #fff;
    width: 100%;
    font-size: 1.8rem;
    border-bottom: none;
    border-radius: 10px 10px 0 0;
    text-align: center;
    padding: 9px 0;
  }

  .abtb .abtd1 {
    width: 100%;
    height: initial;
    padding: 45px 10px 20px;
    font-size: 1.4rem;
    vertical-align: top;
    font-weight: 500;
  }

  .abtb .abtd1.txt {
    border-bottom: 0;
    height: initial;
  }

  .abtb .abtd1.txt:after {
    position: absolute;
    content: '';
    border-bottom: 4px dotted;
    width: 99%;
    height: 0;
    bottom: 0;
    left: 0;
    right: 0;
    margin: auto;
  }

  .abtb .abtd1.txt2 {
    border-top: none;
    text-align: left;
    border-radius: 0 0 10px 10px;
  }

  /* ☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆ */
} /* max-width: 768px ここまで */

/* ☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆ */

/* ★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★ */
/* ★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★ */

@media screen and (max-width: 591px) {
  /* ★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★ */
  /* ★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★ */

  /* .pc, .pcTel {
	display: none;
}

.sp {
	display: block;
}

.spTel  {
	display: inline;
} */

  /*-- テーブル --*/

  table {
    width: 100%;
  }

  /*-- ページトップ --*/

  /* フッター
----------------------------------------------------------- */

  .sp nav {
    margin: 0 auto;
  }

  /* トップページ
----------------------------------------------------------- */

  #main {
  }

  /* 中ページ
----------------------------------------------------------- */
  .company iframe {
    width: 100%;
    margin: 30px auto 0;
    display: block;
  }

  .listUl li {
    width: 48%;
  }

  .contact_tb th {
    font-size: 100%;
    margin-bottom: 20px;
  }

  .choose_list1 {
    width: 80%;
  }

  #zip1,
  #zip2 {
    width: 40%;
  }

  #city,
  #pref,
  #add {
    width: 96%;
    margin: 2px 0 0;
  }

  /*-- エラーチェック --*/

  .zip1formError {
    left: 10% !important;
  }

  .zip2formError {
    left: 54% !important;
  }

  .prefformError,
  .cityformError,
  .addformError {
    top: 30px !important;
    left: 50% !important;
  }

  .detailBox > div {
    width: 100%;
    float: none;
  }

  .detailBox > .detailTxt {
    width: 98%;
    margin: 20px auto 0;
  }

  .formError {
    top: 20px !important;
    left: 10% !important;
  }

  .zip2formError {
    width: 42% !important;
    left: 50% !important;
  }

  .hLogo {
    max-width: 140px;
  }

  .mainTit {
    font-size: 2.4rem;
    text-align: center;
    line-height: 1.4;
    position: relative;
    z-index: 1;
  }

  .mainTit .mid {
    font-size: 1.8rem;
  }

  .fukidashi span {
    display: inline-block;
    padding: 0 20px;
    font-size: 1.4rem;
  }

  .content03:before,
  .content03:after {
    position: absolute;
    content: '';
    width: 100%;
    height: 100%;
    z-index: -1;
    max-height: 250px;
  }

  .content03:before {
    background: url(./img/co32.png) no-repeat top left;
    background-size: contain;
    left: -65px;
    top: 10px;
  }

  .content03:after {
    background: url(./img/co33.png) no-repeat top right;
    background-size: contain;
    right: -200px;
    top: 35px;
  }

  .content04 ul {
    flex-wrap: nowrap;
    width: 768px;
    height: 100%;
    max-width: initial;
    margin: 15px auto 0;
    width: 1000px;
  }

  .content04 li {
    margin: 0px;
    width: 100%;
    max-width: 116px;
    margin-bottom: 0px;
    text-align: center;
  }

  .content04 li h3 {
    font-size: 1.4rem;
    padding: 10px 0;
    border-bottom: 2px dotted;
  }

  .content04 li p {
    font-size: 1.2rem;
    padding: 10px 0;
  }

  .content04:before {
    bottom: -23px;
    width: 80%;
  }

  .content05 li h3 {
    font-size: 1.4rem;
    border-right: 2px dotted;
  }

  .co5d {
    font-size: 1.4rem;
  }

  .co7ab {
    text-align: center;
    margin-bottom: 5px;
    width: 155px;
  }

  .co71 {
    height: 200px;
  }

  .co72p {
    font-size: 1rem;
  }

  .content08 {
    padding: 30px 0 0;
  }

  .co8d {
    max-width: 260px;
    position: relative;
    margin: auto;
  }

  .contact-area h2 {
    width: 80%;
    font-size: 1.8rem;
    border-radius: 10px 10px 0 0;
    padding: 10px 0 0;
  }

  .ad2 {
    position: relative;
    background: url(./img/ad26.png) no-repeat bottom;
    padding: 0px 0 20px;
    margin-bottom: 60px;
    background-position-x: 180px;
  }

  .faq01 dt .pulu {
    right: -5%;
  }

  .sidebar {
    font-size: 1.4rem;
  }

  .sitter1 h2 {
    font-size: 2.4rem;
    text-align: center;
  }

  .content03.sitter2 li {
    max-width: 270px;
    width: 48%;
    margin: 0 0 35px;
  }

  .si3l p {
    font-size: 1.4rem;
  }

  .si3l h3 {
    font-size: 1.8rem;
  }

  .sitter5 td {
    background: #fff;
    text-align: center;
    width: 15.67% !important;
  }

  .sitd2 {
    height: 88px;
    font-size: 1rem;
  }

  .sitter6 .content08 {
    padding: 50px 0 0;
  }

  .sitter6:before {
    bottom: -25px;
    width: 80%;
  }

  .content07.sitter6 {
    padding: 0 0 90px;
  }

  .pridul li:nth-child(1):before {
    right: -16%;
    bottom: 0;
    top: 0;
    margin: auto;
  }

  .pridul li:nth-child(4) {
    width: 95%;
    max-width: 248px;
  }

  .flow1 h2 {
    font-size: 1.8rem;
    text-align: center;
  }

  .flowtit h2 {
    font-size: 1.8rem;
    line-height: 1.4;
  }

  .flowtit h2 span {
    font-size: 1.4rem;
    font-weight: 500;
  }

  .abo1 h2 {
    font-size: 1.8rem;
  }

  .abo1d {
    font-size: 1.4rem;
  }

  .abtit .sidebar {
    font-size: 1.2rem;
    padding: 0 30px;
    letter-spacing: 1px;
  }

  .abo4 h2 > span > span {
    font-size: 1rem;
    width: 120%;
    left: -5px;
  }

  .col01 .colList > ul li {
    width: 46%;
    margin: 0 1.6% 40px;
  }

  /* .modalArea p{
	text-align: left;
} */

  .area1:before {
    bottom: -25px;
    width: 80%;
  }

  .area2p1 {
    font-size: 1.4rem;
  }

  .area2p2 {
    font-size: 1.2rem;
    padding: 25px 15px;
    border-top: 4px dotted;
    border-bottom: 4px dotted;
    max-width: 1040px;
    width: 100%;
    margin: 20px auto 40px;
  }

  .mapd h3 {
    padding-bottom: 20px;
    font-size: 1.8rem;
  }

  .mapd li {
    margin-right: 15px;
    font-size: 1.4rem;
  }

  .area4 .content08 {
    padding: 40px 0 0;
  }

  .area2ul2 li {
    height: 52px;
    padding: 0 15px;
    font-size: 1.4rem;
  }

  .cover2 li p {
    margin-top: 10px;
    font-size: 1.2rem;
  }

  .cou2 {
    background: url(./img/course/bg2.png) no-repeat center;
    background-size: cover;
    background-position-x: 73%;
  }

  .coutd1 {
    height: 28px;
    border-radius: 10px 10px 0 0;
    border-bottom: 0;
    font-size: 1rem;
    font-weight: 700;
  }

  .coutd2 {
    width: 20%;
  }

  .couth {
    width: 29.8%;
    font-size: 1rem;
  }

  .cou7p2 {
    font-size: 1.2rem;
  }
  .cou7 .img {
    max-width: 124px;
    margin: 0 auto 10px;
  }

  .cou8 {
    padding: 30px 0 0px;
  }

  .cou10 .abcoutxt {
    top: 50px;
    font-size: 8rem;
    text-align: center;
    line-height: 1.2;
    letter-spacing: 10px;
  }

  .customer01 h2 {
    font-size: 2.4rem;
  }

  .customer01 h2 span {
    width: 30%;
  }

  .customer01 li:nth-of-type(1) dt {
    background: url(./img/customer/customer01_deco.png) 3vw 52%;
    background-repeat: no-repeat;
  }

  .customer01 li:nth-of-type(2) dt {
    background: url(./img/customer/customer01_deco.png) 3vw 52%;
    background-repeat: no-repeat;
  }

  .customer01 li:nth-of-type(3) dt {
    background: url(./img/customer/customer01_deco.png) 9vw 52%;
    background-repeat: no-repeat;
  }

  .corep1 {
    font-size: 1.4rem;
  }

  .rec2 h3 {
    border-radius: 10px 10px 0 0;
    font-size: 1.4rem;
    padding: 7.5px 0;
  }

  .rec3ab {
    font-size: 4rem;
    top: -20px;
  }

  .sitemap01 .inner {
    padding: 0 0 120px 0;
    background-position-y: 105%;
  }

  .wecovr {
    width: 100%;
  }

  .wed5u1 li {
    width: 100%;
    min-height: 80px;
    max-width: initial;
    justify-content: flex-start;
    padding-left: 5%;
    margin: 0 auto 25px;
  }

  .wed5u2 p {
    font-size: 1rem;
    text-align: center;
    margin-top: 10px;
  }

  .wed9d .img {
    max-width: 1000px;
    width: 95%;
    margin: 0 0 40px auto;
  }

  .wed11dl h2 {
    font-size: 2.4rem;
    line-height: 1.4;
    margin-bottom: 20px;
  }

  .wed11dl h2 span {
    font-size: 1.4rem;
  }
  /* ☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆ */
} /* max-width: 591px ここまで */

/* ☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆ */

/* ★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★ */
/* ★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★ */

@media screen and (max-width: 414px) {
  /* ★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★ */
  /* ★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★ */

  .ui-dialog.ui-widget.ui-widget-content.ui-corner-all.ui-front.ui-dialog-buttons {
    width: 94% !important;
    margin: 0 auto;
    position: absolute;
    left: 0;
    right: 0;
  }

  .choose_list1 {
    width: 96%;
    font-size: 90%;
  }

  .choose_list1 > li {
    width: 49%;
  }

  .sitter1 h2 {
    font-size: 2.2rem;
    text-align: center;
  }

  .pri3tit h3 {
    margin-left: 10px;
    font-size: 1.6rem;
  }

  .flow1 h2 {
    font-size: 1.6rem;
    text-align: center;
  }

  .abtit .sidebar {
    font-size: 1rem;
    padding: 0 30px;
    letter-spacing: 1px;
  }

  .abo1 h2 {
    font-size: 1.6rem;
  }

  .mainTit {
    font-size: 2rem;
  }

  .cocop1 {
    font-size: 1.4rem;
    padding: 14px 30px;
    border-radius: 33px;
    font-weight: 500;
    width: fit-content;
  }

  .coh2 {
    font-size: 2.6rem;
    line-height: 1.32;
    text-shadow: 0 0 8px #333333;
    margin: 10px 0 20px;
    letter-spacing: 11.4px;
  }

  .lptit1 {
    font-size: 1.6rem;
  }

  .coutd2 {
    width: 20%;
  }

  .rec4p2 {
    font-size: 1.4rem;
    margin-top: 0px;
    margin-left: 5px;
    text-align: left;
  }

  .rec4p1 {
    top: 0px;
    left: -10%;
    bottom: 0;
    margin: auto;
    width: 70px;
    height: 70px;
  }

  .coreh2 {
    font-size: 3.6rem !important;
  }

  .wed1 h2 {
    font-size: 2rem;
    padding: 25px 0 25px 10px;
  }

  .wed6d h3 {
    font-size: 1.6rem;
    margin-bottom: 10px;
  }

  /* ☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆ */
} /* max-width: 414px ここまで */

/* ☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆ */

/* ★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★ */
/* ★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★ */

@media screen and (max-width: 320px) {
  /* ★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★ */
  /* ★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★ */

  .telBtn a,
  .menuBtn a {
    font-size: 200%;
  }

  /* ☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆ */
} /* max-width: 320px ここまで */

/* ☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆ */

/* abouttable */

.abtb tr {
  background-color: #ffffff;
}
.abtb th,
.abtb td {
}
.abtb td {
  border: 2px solid #46341E;
}

.abtb .abtd1 {
  width: 43%;
  height: 190px;
  padding: 20px 20px 0;
  font-size: 1.6rem;
  vertical-align: top;
}

.abtb .abtbth {
  font-size: 2.4rem;
  border-radius: 10px 10px 0 0;
  height: 87px;
}

.abtb th {
  font-size: 2.4rem;
}

.abtb tbody th {
  background: #669f4f;
  color: #fff;
  width: 13.3%;
  font-size: 2.4rem;
  text-align: left;
  padding-left: 10px;
  border-bottom: 2px solid #fff;
}

.abtb .txt {
  text-align: left;
}

.abtb .txt2 {
  font-weight: bold;
}

.non {
  background: #fff;
  border: none !important;
}

@media screen and (max-width: 1000px) {
  .abtb .abtd1 {
    padding: 20px 10px 0;
    font-size: 1.4rem;
  }

  .abtb .abtbth {
    font-size: 2.4rem;
    height: 87px;
  }

  .abtb tbody th {
    font-size: 1.5rem;
    padding-left: 5px;
  }
}
@media screen and (max-width: 768px) {
  .abtb {
    border: 0;
    width: 100%;
  }
  .abtb th {
    background-color: #167f92;
    display: block;
    border-right: none;
  }
  .abtb thead {
    border: none;
    clip: rect(0 0 0 0);
    height: 1px;
    margin: -1px;
    overflow: hidden;
    padding: 0;
    position: absolute;
    width: 1px;
  }
  .abtb tr {
    display: block;
    margin-bottom: 25px;
  }
  .abtb td {
    display: block;
    font-size: 0.8em;
    text-align: right;
    position: relative;
    padding: 0.625em 0.625em 0.625em 4em;
  }

  .abtb td::before {
    content: attr(data-label);
    font-weight: bold;
    position: absolute;
    left: 10px;
    top: 10px;
    background: #fddd6e;
    border-radius: 16px;
    padding: 0 12px;
    font-size: 1.6rem;
  }

  .abtb td.txt2::before {
    background: #f29436;
    color: #fff;
  }
  .abtb td:last-child {
  }
  .abtb tbody th {
    color: #fff;
  }
  .abtb tbody th {
    background: #669f4f;
    color: #fff;
    width: 100%;
    font-size: 1.8rem;
    border-bottom: none;
    border-radius: 10px 10px 0 0;
    text-align: center;
    padding: 9px 0;
  }

  .abtb .abtd1 {
    width: 100%;
    height: initial;
    padding: 45px 10px 20px;
    font-size: 1.4rem;
    vertical-align: top;
    font-weight: 500;
  }

  .abtb .abtd1.txt {
    border-bottom: 0;
    height: initial;
  }

  .abtb .abtd1.txt:after {
    position: absolute;
    content: '';
    border-bottom: 4px dotted;
    width: 99%;
    height: 0;
    bottom: 0;
    left: 0;
    right: 0;
    margin: auto;
  }

  .abtb .abtd1.txt2 {
    border-top: none;
    text-align: left;
    border-radius: 0 0 10px 10px;
  }
}

/*-----------------------------------------------------------
2024/12/25トップページ修正分
-----------------------------------------------------------*/
.about-container .title {
  padding: 16px 0;
  color: #46341E;
  font-size: min(4.1vw, 24px);
  line-height: min(4.8vw, 30px);
  font-weight: bold;
}
.about-container .txt-box {
  padding: 16px 0;
  color: #46341E;
  font-size: min(3.59vw, 16px);
  line-height: min(4.8vw, 30px);
  font-weight: 500;
}
.about-container .cmn-btn_01 {
  max-width: 100%;
  display: flex;
  justify-content: center;
}
.about-container .cmn-btn_01 a {
  max-width: 320px;
  padding: 0 15px;
}
.about-container .cmn-btn_01 a:not(:first-child) {
  margin-left: 16px;
}

/*-基本サービス--*/
.base-service {
  padding: 140px 0 170px;
  background: url(./img/about/bg3.png) no-repeat right top;
  background-size: cover;
  position: relative;
}
.base-service .inner2 {
  max-width: 910px;
}
.base-service .subtitle {
  font-size: min(6.15vw, 32px);
  text-align: center;
  line-height: 1.1;
  position: relative;
  z-index: 1;
  color: #46341E;
  padding-bottom: 12px;
}
.base-service .en {
  display: block;
  color: #B71717;
  font-weight: 700;
  font-size: min(3.45vw, 20px);
  letter-spacing: 0.3em;
  padding-bottom: 30px;
  text-align: center;
}
.base-service ul {
  display: flex;
  justify-content: space-between;
  margin: 40px auto;
}
.base-service ul li {
  width: 15%;
}
.base-service ul li img {
  border: none;
  vertical-align: bottom;
  line-height: 1;
  -ms-interpolation-mode: bicubic;
  width: auto;
  max-width: 100%;
  height: auto;
}
.base-service .abo3d {
  padding: 40px;
  background: #fff;
}

.base-service .heading {
  padding: 50px 0 30px;
  text-align: center;
  font-size: min(3.59vw, 20px);
  line-height: 1.6;
  font-weight: 700;
}

.base-service .heading .highlight {
  color: #B71717;
}

.base-service .cmn-btn_01 {
  text-align: center;
}

.base-service .abo3d p {
  margin-bottom: 30px;
  font-weight: 700;
}
.base-service .abo3d p span {
  color: #B71717 !important;
}
.base-service .abo3d .noma {
  margin: 0;
}

.choose .title {
  font-size: min(6.15vw, 32px);
  text-align: center;
  line-height: 1.1;
  position: relative;
  z-index: 1;
  padding: 97px 0 12px;
  color: #46341E;
}

.choose .en {
  display: block;
  color: #B71717;
  font-weight: 700;
  font-size: min(3.45vw, 20px);
  letter-spacing: 0.3em;
  padding-bottom: 30px;
  text-align: center;
}

.choose ul {
  display: flex;
  justify-content: space-between;
  flex-wrap: wrap;
  align-items: stretch;
  max-width: 910px;
  margin: 0 auto;
}

.choose ul li {
  width: 49%;
  max-width: 580px;
  margin-bottom: 40px;
  border-radius: 10px;
  border: 4px solid #B71717;
}

.choose ul li .abo4p1 {
  height: 56px;
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 2.4rem;
  border-radius: 0;
}

.choose ul li .txt {
  padding: 5%;
  border-top: none;
  min-height: 325px;
  padding: 40px;
}

.choose ul li .txt h3 {
  font-size: 1.8rem;
  min-height: 53px;
  margin-bottom: 15px;
  color: #B71717 !important;
}

.choose .worries-container {
  margin: 40px auto;
}

.choose .left-text {
  text-align: center;
  font-weight: 500;
  font-size: min(3.59vw, 20px);
  line-height: min(4.8vw, 30px);
}

.choose .img-container {
  display: flex;
  justify-content: center;
  align-items: center;
  margin: 15px auto;
}

.choose .fukidashi-container {
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: flex-start;
}

.choose .img-with-text {
  position: relative;
  display: flex;
  justify-content: center;
  align-items: center;
}

.choose .centered-text {
  position: absolute;
  z-index: 1;
  text-align: center;
  width: 85%;
  top: 13%;
  font-size: min(3.59vw, 16px);
  line-height: min(4.8vw, 16px);
  color: #46341E;
  font-weight: bold;
}

.choose .centered-text2 {
  position: absolute;
  z-index: 1;
  text-align: center;
  width: 85%;
  top: 25%;
  font-size: min(3.59vw, 16px);
  line-height: min(4.8vw, 16px);
  color: #46341E;
  font-weight: bold;
}

@media screen and (max-width: 768px) {
  .contentx01 {
    margin: 60px auto;
    width: 100%;
    padding: 0 20px;
  }
  .contentx01 h2.subtitle {
    font-size: 2rem;
  }
  .contentx01 .en {
    font-size: 1.6rem;
  }
  .contentx01 .description {
    text-align: left;
    line-height: 2.1;
    font-weight: 700;
    padding: 20px 0 30px;
    font-size: 1.4rem;
  }
  .contentx01 .description p br {
    display: none;
  }
  .contentx01 .area-parent {
    padding: 24px 20px;
  }
  .contentx01 .area-parent .area-header {
    padding-bottom: 16px;
    margin-bottom: 20px;
  }
  .contentx01 .area-parent .area-header .ttl {
    margin-right: 0;
    margin-bottom: 16px;
    display: block;
    font-size: 1.6rem;
  }
  .contentx01 .area-parent .area-header .select_wrapper select {
    max-width: 204px;
    font-size: 1.4rem;
  }
  .contentx01 .area-parent .heading {
    margin: 0 auto 10px;
    font-size: 1.6rem;
  }
  .contentx01 .area-container {
    grid-template-columns: repeat(2, 1fr);
    padding: 0;
    gap: 8px 10px;
  }
  .contentx01 h3.area.button {
    font-size: 1.4rem;
  }
  .contentx01 .description-mini .txt-box {
    font-size: 0.9rem;
    line-height: 1.6;
  }
  .contentx01.page {
    margin: 40px auto 60px;
  }
  .contentx01.page .inner {
    width: 100%;
  }
  .contentx01.page .title {
    font-size: 2rem;
    line-height: 1.4;
  }
  .contentx02 {
    padding: 60px 0;
  }
  .contentx02 .inner {
    width: 100%;
    padding: 0 20px;
  }
  .contentx02 .subtitle {
    font-size: 2rem;
  }
  .contentx02 .en {
    padding-bottom: 20px;
    font-size: 1.6rem;
  }
  .contentx02 .description .heading {
    font-size: 1.4rem;
    margin-bottom: 30px;
    text-align: left;
    line-height: 2.1;
  }
  .contentx02 .img-sp-container {
    flex-direction: column;
    gap: 20px;
    margin-bottom: 30px;
  }
  .contentx02 .img-sp-container + .img-sp-container {
    flex-direction: column-reverse;
    margin-bottom: 40px;
  }
  .contentx02 .img-sp-ratio {
    width: 100%;
    padding-top: 34%;
  }
  .contentx02 .description .about-content {
    width: 100%;
  }
  .contentx02 .description .no-bold {
    font-size: 1.4rem;
    line-height: 1.6;
  }
  .contentx02 .description .about-content .title {
    font-size: 1.6rem;
    line-height: 1.6;
    margin-bottom: 10px;
  }
  .contentx02 .description .no-bold .notes {
    font-size: 0.9rem;
    margin-top: 10px;
  }
  .contentx02 .about-container .cmn-btn_01 a {
    font-size: 1.4rem;
    height: 57px;
  }
  .about-container .title {
    line-height: min(8.8vw, 30px);
    padding: 16px 0 0;
  }
  .about-container .txt-box {
    line-height: min(6.8vw, 30px);
  }
  .about-container .cmn-btn_01 {
    display: block;
  }
  .about-container .cmn-btn_01 a:not(:first-child) {
    margin-left: 0;
    margin-top: 16px;
  }

  .about-container .base-service {
    padding: 85px 0 110px;
    background: url(./img/about/bg3sp.png) no-repeat right top;
    background-size: contain;
    position: relative;
  }
  .base-service {
    padding: 60px 0 60px;
  }
  .base-service .en {
    font-size: 1.6rem;
  }
  .base-service .heading {
    font-size: 1.6rem;
    padding: 21px 0;
  }
  .base-service .cmn-btn_01 {
    margin: 0 auto;
  }
  .base-service .cmn-btn_01 a {
    font-size: 1.4rem;
    height: 57px;
  }

  .choose ul li .txt p {
    font-size: 1.4rem;
  }

  .base-service .subtitle {
    font-size: 2rem;
  }
  .base-service ul {
    display: flex;
    justify-content: space-between;
    margin: 0 auto;
    flex-wrap: wrap;
    width: 87%;
  }
  .base-service ul li {
    width: 31%;
    margin-bottom: 20px;
    text-align: center;
  }
  .base-service .abo3d {
    padding: 30px 15px;
    background: #fff;
    width: 97%;
    margin: auto;
  }
  .base-service .abo3d p {
    margin-bottom: 15px;
    font-weight: 700;
    font-size: 1.4rem;
  }
  .base-service .abo3d .noma {
    font-weight: 700;
    font-size: 1.4rem;
  }
  .choose .title {
    font-size: 2rem;
    margin: 0;
    padding: 57px 0 12px;
  }
  .choose .en {
    font-size: 1.6rem;
    padding-bottom: 21px;
  }
  .choose ul li .abo4p1 {
    height: 56px;
    font-size: 1.8rem;
  }
  .choose ul {
    flex-direction: column;
    width: 95%;
  }
  .choose ul li {
    width: 98%;
    max-width: 580px;
    margin: 0 auto 25px;
  }
  .choose ul li .txt {
    min-height: initial;
    padding: 20px 15px;
  }
  .choose ul li .txt h3 {
    font-size: 1.6rem;
    min-height: initial;
  }
  .contentx03 {
    width: 100%;
  }
  .contentx03 .title {
    font-size: 2rem;
    line-height: 1.4;
  }
  .contentx03 .en {
    font-size: 1.6rem;
    padding-bottom: 0;
  }
  .contentx03 .description {
    padding: 16px 20px;
  }
  .contentx04 {
    padding: 60px 0;
  }
  .contentx04 .title {
    font-size: 2rem;
    line-height: 1.4;
  }
  .contentx04 .en {
    font-size: 1.6rem;
    padding-bottom: 20px;
  }
  .contentx04 .price_area {
    padding: 0 20px;
  }
  .contentx04 .price_head {
    padding: 24px 14px;
    width: 100%;
    margin: 0 auto;
  }
  .contentx04 .price-title {
    font-size: 1.6rem;
    line-height: 2;
  }
  .contentx04 .price-title span {
    font-size: 2rem;
  }
  .contentx04 .price-text {
    font-size: 1.4rem;
    text-align: left;
    line-height: 1.6;
  }
  .contentx04 .price_column {
    margin: 10px auto 14px;
  }
  .contentx04 .price_catch.white {
    padding: 13px 0;
    font-size: 1.8rem;
    line-height: 1;
  }
  .contentx04 .price_catch.brown {
    font-size: 1.6rem;
    line-height: 1.3;
    padding: 6px 0;
  }
  .contentx04 .price_catch.white .num {
    margin-left: 38px;
    font-size: 3rem;
  }
  .contentx04 .price_catch.white .yen {
    font-size: 1.2rem;
  }
  .contentx04 .price_note {
    font-size: 0.9rem;
    padding: 0;
  }
  .contentx04 .price_foot {
    margin-top: 25px;
    padding: 39px 0 60px;
  }
  .contentx04 .price_heading {
    width: 100%;
    margin: 0 auto 7px;
    text-align: left;
    font-size: 1.4rem;
    line-height: 1.7;
  }
  .contentx04 .price_description {
    font-size: 0.9rem;
    width: 100%;
    margin: 0 auto 25px;
    text-align: left;
  }
  .contentx04 .price_list {
    grid-template-columns: repeat(1, 1fr);
    padding: 0;
    width: 100%;
    margin: 0 auto;
    gap: 32px;
  }
  .contentx04 .price_item {
    padding: 18px 15px;
  }
  .contentx04 .price_item:nth-child(1)::before,
  .contentx04 .price_item:nth-child(2)::before,
  .contentx04 .price_item:nth-child(3)::before {
    font-size: 2.4rem;
  }
  .contentx04 .price_item:nth-child(1)::after,
  .contentx04 .price_item:nth-child(2)::after {
    top: auto;
    right: 0;
    left: 0;
    bottom: -37px;
    justify-content: center;
    font-size: 2.2rem;
  }
  .contentx04 .price_top {
    font-size: 1.4rem;
    margin-bottom: 10px;
  }
  .contentx04 .price_summary {
    font-size: 2.2rem;
  }
  .contentx04 .price_flex .num {
    font-size: 1.4rem;
  }
  .contentx04 .price_flex .num strong {
    font-size: 2.8rem;
  }
  .contentx04 .price_lead {
    font-size: 1.2rem;
  }
  .contentx04 .price_emphasis {
    font-size: 1.4rem;
    margin-bottom: 7px;
  }
  .contentx04 .price_table {
    margin: 30px auto 0;
    padding: 0 !important;
    width: 100%;
  }
  .contentx04 .price_container {
    margin-bottom: 16px;
    padding-bottom: 16px;
  }
  .contentx04 .price_container:last-child {
    margin-bottom: 20px;
  }
  .contentx04 .price_subtitle {
    font-size: 2rem;
    padding-left: 15px;
    margin-bottom: 6px;
  }
  .contentx04 .price_subtitle span {
    font-size: 1.2rem;
  }
  .contentx04 .price_unit {
    font-size: 1.6rem;
  }
  .contentx04 .price_container .price_note {
    font-size: 0.9rem;
  }
  .contentx04 .price_action {
    width: 100%;
    padding: 15px;
    margin: 0;
  }
  .contentx04 .price_action p {
    font-size: 1.2rem;
    text-align: left;
  }
  .contentx04 .price_action p span {
    font-size: 1.2rem;
    margin-top: 0;
    display: inline;
  }
  .contentx04 .request_wrap {
    padding: 0;
  }
  .contentx04 .request_summary {
    padding: 12px 0;
  }
  .contentx04 .request_summary::after {
    right: 15px;
    border-width: 13px 8px 0 8px;
  }
  .contentx04 .request_summary span {
    font-size: 1.2rem;
  }
  .contentx04 .request_summary h3 {
    font-size: 1.8rem;
    line-height: 1.3;
  }
  .contentx04 .request_main.active {
    padding: 37px 20px 43px;
  }
  .contentx04 .request_heading {
    width: 100%;
    margin: 0 auto 30px;
  }
  .contentx04 .request_heading .title {
    font-size: 2rem;
    line-height: 1.6;
    padding-bottom: 20px;
  }
  .contentx04 .request_heading .text {
    font-size: 1.4rem;
    line-height: 1.6;
    text-align: left;
  }
  .contentx04 .request_container {
    width: 100%;
    margin: 0 auto;
    padding: 60px 15px 28px;
  }
  .contentx04 .request_top {
    font-size: 1.4rem;
  }
  .contentx04 .request_title {
    font-size: 1.8rem;
    line-height: 1.7;
    margin-bottom: 20px;
  }
  .contentx04 .request_list {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 6px 5px;
  }
  .contentx04 .request_item {
    padding: 12px 0;
    gap: 7px;
  }
  .contentx04 .request_item span {
    font-size: 1.2rem;
  }
  .contentx04 .request_flex {
    flex-direction: column;
    gap: 20px;
  }
  .contentx04 .request_left {
    width: 100%;
  }
  .request_subtitle.green {
    font-size: 1.3rem;
    padding-left: 13px;
  }
  .request_subtitle.green::before {
    width: 14px;
  }
  .request_subtitle.green::after {
    width: 14px;
  }
  .request_subtitle.red {
    font-size: 1.3rem;
    padding-left: 25px;
  }
  .request_subtitle.red::before {
    width: 14px;
    height: 14px;
  }
  .request_subtitle.red::after {
    width: 8px;
    height: 8px;
    left: 6px;
  }
  .contentx04 .request_left table {
    font-size: 1.2rem;
  }
  .contentx04 .request_left td span {
    font-size: 0.8rem;
  }
  .contentx04 .request_left td span.sp-only {
    font-size: 0.8rem;
  }
  .contentx04 .request_right {
    width: 100%;
  }
  .contentx04 .request_right table {
    font-size: 1.2rem;
  }
  .contentx04 .request_right td span {
    font-size: 0.8rem;
  }
  .contentx04 .request_right td span.sp-only {
    font-size: 0.8rem;
  }
  .contentx04 .request_right .note {
    font-size: 0.6rem;
  }
  .contentx04 .request_text {
    font-size: 1.1rem;
  }
  .contentx04 .heading {
    margin: 50px auto 0;
    width: 85%;
    font-size: 1.4rem;
    line-height: 1.6;
    letter-spacing: 0.1em;
  }
  .contentx04 .heading span {
    font-size: 1.8rem;
    line-height: 1.5;
    margin-top: 12px;
  }
  .contentx07 {
    padding: 60px 20px;
    width: 100%;
  }
  .price-qa.qa-content {
    padding: 60px 20px !important;
  }
  .price-qa.qa-content .contentx07 {
    padding: 0;
  }
  .contentx07 .title {
    font-size: 2rem;
    line-height: 1.4;
  }
  .contentx07 .en {
    font-size: 1.6rem;
    padding-bottom: 11px;
  }
  .contentx07 .heading {
    font-size: 1.4rem;
    margin-top: 40px;
  }
  .contentx07 .heading span {
    font-size: 1.8rem;
  }
  .price-qa .contentx07 .title {
    font-size: 2rem;
  }
  .price-qa .contentx07 .en {
    padding-bottom: 26px;
  }
  .content03.reason {
    padding: 63px 0;
  }
  .content03 .title {
    font-size: 2rem;
    line-height: 1.4;
  }
  .content03 .en {
    font-size: 1.6rem;
    padding-bottom: 11px;
  }
  .content04 .inner {
    width: 100%;
    padding: 0;
  }
  .content04 .overul {
    width: 100%;
  }
  .content04 .title {
    font-size: 2rem;
    line-height: 1.4;
  }
  .content04 .en {
    font-size: 1.6rem;
    padding-bottom: 20px;
  }
  .content04 .co4p {
    margin: 0 auto 40px;
    font-size: 1.4rem;
  }
  .content04 ul {
    gap: 20px;
  }
  .content04 li {
    max-width: 100%;
    margin: 0;
    justify-content: space-between;
  }
  .content04 li:first-child {
    padding-left: 20px;
  }
  .content04 li:last-child {
    padding-right: 20px;
  }
  .content04 li .img {
    width: 201px;
  }
  .content04 li .p-staffArchive__area {
    margin: 0;
  }
  .content04 li .p-staffArchive__area span {
    font-size: 1.4rem;
  }
  .content04 li .p-staffArchive__area p {
    font-size: 1.4rem;
  }
  .content04 li .p-staffArchive__link {
    padding: 10px 0;
    max-width: 100%;
    margin: 0;
  }
  .content04 li dl dt {
    font-size: 1.6rem;
  }
  .content04 li dl dt span {
    font-size: 2rem;
  }
  .content04.bggre1.sitters .co4p {
	  padding: 0 20px;
  }
  .contentx08 {
    width: 100%;
    padding: 0 20px !important;
  }
  .contentx08 .title {
    font-size: 2rem;
    line-height: 1.4;
  }
  .contentx08 .en {
    font-size: 1.6rem;
    padding-bottom: 23px;
  }
  .contentx08 .description {
    text-align: left;
    font-size: 1.4rem;
  }
  .content08 {
    margin-top: 0;
    padding-top: 0;
    padding-bottom: 70px;
  }
  .content08 .title {
    font-size: 2rem;
    line-height: 1.4;
    padding: 78px 0 12px;
  }
  .content08 .mainTit:after {
    top: 30px;
    right: -60px;
  }
  .content08 .en {
    font-size: 1.6rem;
    padding-bottom: 23px;
  }
  .contentx10 {
    padding: 64px 20px;
    width: 100%;
  }
  .contentx10 .title {
    font-size: 2rem;
    line-height: 1.4;
  }
  .contentx10 .en {
    font-size: 1.6rem;
    padding-bottom: 23px;
  }
  .contentx01.common {
    padding: 0;
  }
  .contentx01.common .top {
    padding: 7px 0;
  }
  .contentx01.common .top p {
    font-size: 1.2rem;
  }
  .contentx01.common .inner {
    padding: 25px 15px 31px;
    width: 100%;
  }
  .contentx01.common .title {
    font-size: 2rem;
  }
  .contentx01.common .en {
    padding-bottom: 10px;
  }
  section .cmn-btn_01__green a {
    font-size: 1.4rem;
    height: 57px;
  }
}

/* 2025/01/15追加 */
footer .btn.linebtn {
  margin: auto 0 0 0 !important;
}

@media screen and (max-width: 768px) {
  footer .btn.linebtn {
    margin: 0 auto !important;
  }
}

/* 2025/01/23追加 */
.area .article #main {
  margin: 14px auto 0;
}

.p-staffArchive__link.sp-only {
  display: none;
}

@media screen and (max-width: 768px) {
  .staff01 .inner {
    width: 100%;
    padding: 0 20px;
  }

  .area .article #main {
    margin: 14px auto 0;
  }

  .staff01 li {
    position: relative;
  }

  .staff01 li .box {
    display: flex;
    gap: 14px;
  }

  .staff01 li .box .img {
    width: 150px;
    aspect-ratio: 1;
  }

  .staff01 li .box .img img {
    width: 100%;
    height: auto;
  }

  .staff01 li .box dl {
    width: calc(100% - 164px);
  }

  .p-staffArchive__link.sp-only {
    display: block;
  }

  .p-staffArchive__link.pc-only {
    display: none;
  }

  .voiceDet01 .inner {
    width: 100%;
    padding: 0 20px;
  }

  .voice01 .inner {
    width: 100%;
    padding: 0;
  }

  .voice01 .article #main {
    margin: 14px auto 0;
  }

  .voice01 ul {
    gap: 80px;
  }

  .voice01 li {
    position: relative;
  }

  .voice01 li .box {
    display: block;
    /* gap: 14px; */
  }

  .voice01 li .box .img {
    width: 100%;
    aspect-ratio: 375 / 230;
  }

  .voice01 li .box h2,
  .voice01 li .box .txt,
  .voice01 li .user,
  .voice01 li .pet {
    margin-inline: 20px;
  }

  .voice01 li .box dl {
    width: 100%;
  }

  .voice01 li .user {
    margin-top: 20px;
    font-weight: 400;
  }

  .voice01 li .pet {
    font-weight: 400;
  }

  .voice01 li .arrow {
    right: 20px;
  }
}

/*-----------------------------------------------------------
コラムスタイル
-----------------------------------------------------------*/
.colum {
  padding: 50px 0 100px;
}
.colum_inner {
  width: 84.5%;
  max-width: 1200px;
  margin: 0 auto;
}
.colum-listitem strong {
  font-weight: bold;
}
.colum-listitem h2 {
  font-size: 28px;
  margin-top: 72px;
  font-feature-settings: 'palt';
  font-weight: 700;
  letter-spacing: 0.04em;
  line-height: 1.3;
  margin-bottom: 20px;
  text-align: left;
}
.colum-listitem p {
  margin-bottom: 22px;
  font-feature-settings: normal;
  color: #46341E;
  font-size: 16px;
  font-weight: 400;
  letter-spacing: 0;
  line-height: 2;
}
.colum-listitem_table {
  border-collapse: collapse;
  width: 50%;
  margin: 20px 0;
  font-family: Arial, sans-serif;
  text-align: center;
}
.colum-listitem_table tbody thead th {
  background-color: #B71717;
  color: #B71717;
  padding: 10px;
}
.colum-listitem_table tbody td,
.colum-listitem_table tbody th {
  border: 2px solid #B71717;
  padding: 8px;
}
.colum-listitem_table tbody td:first-child {
  background-color: #f4f4f4;
  color: #B71717;
  font-weight: bold;
}
.colum-listitem_list {
  border: 1px solid #B71717;
  padding: 15px;
  margin-bottom: 22px;
}
.colum-listitem_list h3,
.colum-listitem_list h4,
.colum-listitem_list h5,
.colum-listitem_list h6,
.colum-listitem_list p {
  font-weight: bold;
  margin-bottom: 0;
  color: #B71717;
}
.colum-listitem_list ul li:before {
  content: '';
  width: 10px;
  height: 10px;
  display: inline-block;
  background-color: #B71717;
  border-radius: 50%;
  margin-right: 10px;
}
.colum-listitem_l-listitem h3 {
  font-size: 22px;
  font-feature-settings: 'palt';
  font-weight: 700;
  letter-spacing: 0.04em;
  line-height: 1.3;
  margin-bottom: 20px;
  border-left: solid 4px #B71717;
  font-weight: 600;
  margin: 2.8em 0 1em 0;
  padding-left: 10px;
  line-height: 1.6;
}
.colum-listitem_l-listitem_ll-listitem h4 {
  font-size: 20px;
  margin-top: 15px;
  font-weight: bold;
  color: #B71717;
  border-bottom: #B71717 2px solid;
  padding-bottom: 5px;
  margin-bottom: 10px;
}
.colum-listitem .link-txt a {
  color: #B71717;
  text-decoration: underline;
}

/* 5/28一時追記 */
.content05 {
  padding: 50px 0 60px;
  position: relative;
  z-index: 1;
}

.undots {
  position: relative;
  padding-bottom: 25px;
  margin-bottom: 20px;
}

.undots:before {
  position: absolute;
  content: '';
  width: 26px;
  height: 4px;
  background-image: linear-gradient(to right, #fff 3px, transparent 1px);
  background-size: 11px 3px;
  background-repeat: repeat-x;
  background-position: left bottom;
  bottom: 0;
  left: 0;
  right: 0;
  margin: auto;
}

.content05 .inner2 > p {
  text-align: center;
  font-weight: 500;
  color: #fff;
  margin-bottom: 35px;
}

.content05 ul {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
}

.content05 li {
  width: 49%;
  max-width: 500px;
  background: #fff;
  margin-bottom: 40px;
  border-radius: 10px;
  padding-left: 30px;
  display: flex;
  height: 80px;
  align-items: center;
}

.content05 li.sp {
  display: none;
}

.content05 li h3 {
  padding-right: 20px;
  margin-right: 20px;
  height: 88%;
  display: flex;
  align-items: center;
  border-right: 4px dotted;
  font-size: 1.8rem;
}

.co5d {
  display: flex;
}

.co5d a {
  margin-left: 15px;
}

@media screen and (max-width: 1200px) {
  .content05 li.pc {
    display: none;
  }

  .content05 li.sp {
    display: flex;
  }
}

@media screen and (max-width: 768px) {
  .content05 li {
    width: 100%;
    padding-left: 30px;
    height: 80px;
    align-items: center;
    margin: 0 auto 25px;
  }

  .content05 .inner2 > p {
    text-align: center;
    font-weight: 500;
    color: #fff;
    margin-bottom: 20px;
    font-size: 1.4rem;
  }
}

@media screen and (max-width: 591px) {
  .content05 li h3 {
    font-size: 1.4rem;
    border-right: 2px dotted;
  }
}

.sitter7 {
  position: relative;
  padding-bottom: 60px;
  font-family: 'Zen Maru Gothic', sans-serif;
}

.sitter7 .inner {
  margin: 0 auto;
  width: 85%;
  max-width: 1121px;
}

.sitter7 .description {
  color: #46341E;
  font-size: min(3.59vw, 18px);
  line-height: 1.6;
  font-weight: 700;
  text-align: center;
}

.sitter7 .cmn-btn_01 {
  max-width: 650px;
  margin: 40px auto 0;
}

.sitter7 .cmn-btn_01 img {
  display: block;
  width: 29px;
}

.sitter8 {
  position: relative;
  padding-bottom: 120px;
  font-family: 'Zen Maru Gothic', sans-serif;
}

.sitter8 .inner {
  margin: 0 auto;
  width: 85%;
  max-width: 1121px;
}

.sitter8 .container {
  background-color: #fff;
  border-radius: 22px;
  padding: 70px 0;
  display: flex;
  flex-direction: column;
  gap: 60px;
}

.sitter8 .box {
  width: 85%;
  margin: auto;
}

.sitter8 .title {
  font-size: min(4.46vw, 26px);
  padding-left: 10px;
  border-left: 6px solid #46341E;
  line-height: 1;
  margin-bottom: 21px;
  font-weight: bold;
}

.sitter8 .text {
  font-size: min(3.59vw, 18px);
  font-weight: bold;
  line-height: 1.5;
  letter-spacing: 0.01em;
}

.sitter8 .note {
  font-size: min(3.6vw, 16px);
  line-height: 1.6;
  font-weight: 400;
  font-family: 'Noto Sans JP', sans-serif;
  margin-top: 5px;
}

.sitter8 .flex {
  display: flex;
  justify-content: space-between;
  gap: 26px;
  margin-top: 30px;
}

.sitter8 .group {
  background-color: #eff5ed;
  width: 100%;
  padding: 24px 25px 28px;
}

.sitter8 .subtitle {
  border-bottom: 1px dashed #B71717;
  padding-bottom: 7px;
  margin-bottom: 18px;
  font-size: min(3.59vw, 18px);
  font-weight: bold;
  color: #B71717;
}

.sitter8 .num {
  font-size: min(6.86vw, 40px);
  font-weight: bold;
  letter-spacing: 0.01em;
  line-height: 1;
}

.sitter8 .tel-text {
  font-size: min(3.6vw, 16px);
  font-weight: bold;
  letter-spacing: 0.01em;
  margin: 5px 0 17px;
}

.sitter8 .cmn-btn_01 {
  max-width: 100%;
  margin: 0;
}

.sitter8 .cmn-btn_01 a {
  font-size: min(2.57vw, 15px);
  font-family: 'Noto Sans JP', sans-serif;
  letter-spacing: 0.01em;
  font-weight: bold;
}

.sitter8 .cmn-btn_01 img {
  display: block;
  width: 19px;
}

.sitter8 .cmn-btn_01.tel img {
  width: 15px;
}

@media screen and (max-width: 768px) {
  .sitter7 .inner {
    width: 100%;
    padding: 0 28px;
  }

  .sitter7 .description {
    font-size: 1.4rem;
    line-height: 2.1;
    text-align: left;
  }

  .sitter7 .cmn-btn_01 {
    margin: 30px auto 0;
  }

  .sitter8 {
    padding-bottom: 60px;
  }

  .sitter8 .inner {
    width: 100%;
  }

  .sitter8 .container {
    padding: 60px 0;
    gap: 50px;
  }

  .sitter8 .box {
    width: 100%;
    padding: 0 20px;
  }

  .sitter8 .title {
    font-size: 2rem;
    line-height: 1.4;
  }

  .sitter8 .text {
    font-size: 1.6rem;
    line-height: 1.6;
  }

  .sitter8 .note {
    font-size: 0.9rem;
    margin-top: 10px;
  }

  .sitter8 .flex {
    flex-direction: column;
    margin-top: 20px;
  }

  .sitter8 .group {
    padding: 17px 15px 21px;
  }

  .sitter8 .subtitle {
    font-size: 1.6rem;
    margin-bottom: 14px;
  }

  .sitter8 .num {
    font-size: 3.3rem;
  }

  .sitter8 .tel-text {
    font-size: 1.3rem;
    margin: 5px 0 20px;
  }

  .sitter8 .cmn-btn_01 a {
    font-size: 1.4rem;
  }
}

.sitter9 {
  position: relative;
  font-family: 'Zen Maru Gothic', sans-serif;
}

@media screen and (max-width: 768px) {
  .sitter9 {
    padding: 55px 0 0;
  }
}

.price-pay.price-opt {
  font-family: 'Zen Maru Gothic', sans-serif;
}

.price-pay.price-opt .titile-box {
  padding-bottom: 27px;
}

.price-pay.price-opt .title {
  font-size: min(6.15vw, 32px);
  text-align: center;
  line-height: 1.1;
  position: relative;
  z-index: 1;
  padding-bottom: 12px;
  color: #fff;
}

.price-pay.price-opt .en {
  display: block;
  color: #fff;
  font-weight: 700;
  font-size: min(3.45vw, 20px);
  letter-spacing: 0.3em;
  text-align: center;
}

@media screen and (max-width: 768px) {
  .price-pay.price-opt .title {
    font-size: 2rem;
  }

  .price-pay.price-opt .en {
    font-size: 1.6rem;
  }
}

.pri5.bgcr .title {
  font-size: min(6.15vw, 32px);
  text-align: center;
  line-height: 1.1;
  position: relative;
  z-index: 1;
  padding-bottom: 12px;
  color: #B71717;
}

.pri5.bgcr .en {
  display: block;
  font-weight: 700;
  font-size: min(3.45vw, 20px);
  letter-spacing: 0.3em;
  text-align: center;
  padding-bottom: 15px;
}

@media screen and (max-width: 768px) {
  .pri5.bgcr .title {
    font-size: 2rem;
  }

  .pri5.bgcr .en {
    font-size: 1.6rem;
  }
}

@media screen and (max-width: 768px) {
  .hline.green {
    max-width: 100%;
    width: 126px;
    height: 36px;
    margin-right: 10px;
  }

  .hline .menu-link {
    padding: 0;
  }

  .hline .menu-link p {
    display: none;
  }

  .hline .menu-link .icon {
    width: 12px;
    display: flex;
  }

  .hline .menu-link .box {
    height: 100%;
    align-items: center;
  }

  .hline .menu-link .box span {
    font-size: 1.2rem;
  }
}

@media screen and (max-width: 768px) {
  .content05.areatop {
    padding: 60px 0 50px;
  }

  .content05.areatop .title {
    font-size: 2rem;
    line-height: 1.4;
  }

  .content05.areatop .en {
    font-size: 1.6rem;
  }

  .content05.areatop img {
    width: 85%;
    margin: 0 auto;
  }

  .p-area__wrap {
    padding: 33px 0 30px;
    margin-bottom: 60px;
  }

  .p-area__wrap .p-areaRegion {
    width: 100%;
    padding: 0 20px;
  }

  .p-area__wrap .p-areaRegion__item a {
    font-size: 1.4rem;
  }

  .p-area__wrap .p-areaRegion__item a:before {
    width: 10px;
    height: 9px;
  }

  .p-areaList.active {
    width: 100%;
    margin-bottom: 50px !important;
  }

  .p-areaList.active .p-areaList__region {
    font-size: 2.4rem;
    padding-left: 9px;
    margin-bottom: 16px;
    margin-left: 20px;
  }

  .p-areaList.active .p-areaList__content.active {
    margin-bottom: 6px;
  }

  .p-areaList.active .p-areaList__head {
    padding: 15px 0 18px;
  }

  .p-areaList.active .p-areaList__pref {
    font-size: 1.8rem;
    padding-left: 20px;
  }

  .p-areaList.active .p-areaList__cities {
    grid-template-columns: repeat(2, 1fr);
    gap: 7px;
  }

  .p-areaList.active .p-areaList__cities.is-open {
    padding: 19px 20px 21px;
  }

  .p-areaList.active .p-areaList__city a {
    font-size: 1.4rem;
  }
}

.p-areaIntro {
  font-family: 'Zen Maru Gothic', sans-serif;
}

.area-search {
  padding: 100px 0 0;
  background-color: #fff;
  font-family: 'Zen Maru Gothic', sans-serif;
}

.area-search .inner {
  width: 85%;
  max-width: 910px;
  margin: 0 auto;
}

.area-search .heading {
  text-align: center;
  padding-bottom: 42px;
}

.area-search .title {
  padding-bottom: 12px;
  color: #46341E;
  font-size: min(6.15vw, 32px);
  font-weight: bold;
}

.area-search .en {
  display: block;
  color: #B71717;
  font-weight: 700;
  font-size: min(3.45vw, 20px);
  letter-spacing: 0.3em;
}

.area-search .description {
  padding-top: 30px;
}

.area-search .description p {
  color: #46341E;
  font-size: min(3.45vw, 20px);
  line-height: 1.5;
  font-weight: bold;
}

.area-search .area-search__wrap {
  background-color: #F6F3EA;
  padding: 60px 0 0;
}

.area-search .subtitle {
  font-size: min(4.46vw, 26px);
  text-align: center;
  font-weight: bold;
  letter-spacing: 0.01em;
  display: block;
}

.area-search .subtitle span {
  color: #B71717;
}

.area-search .area-search__parent {
  background-color: #fff;
  border-radius: 14px;
  border: 4px solid #B71717;
  padding: 61px 95px 57px;
  transform: translateY(67px);
  width: 85%;
  max-width: 910px;
  margin: 0 auto;
  z-index: 4;
  position: relative;
}

.area-search .area-search__top {
  background-color: #B71717;
  padding: 12px 33px;
  display: inline-flex;
  align-items: center;
  gap: 8px;
  position: absolute;
  left: 0;
  right: 0;
  top: -42px;
  margin: auto;
  width: 456px;
}

.area-search .area-search__top img {
  width: 43px;
  display: block;
}

.area-search .area-search__top h3 {
  color: #fff;
  font-weight: bold;
  font-size: min(3.6vw, 21px);
  line-height: 1.4;
}

.area-search .area-search__top h3 span {
  color: #FDDD6E;
}

.area-search .area-search__header {
  margin-bottom: 27px;
}

.area-search .area-search__header p {
  font-size: min(3.6vw, 16px);
  line-height: 2;
  text-align: center;
  font-weight: bold;
}

.area-search .area-search__column {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  width: 100%;
  gap: 8px;
  padding: 0 17px;
}

.area-search .area-search__box a {
  display: inline-flex;
  justify-content: center;
  align-items: center;
  width: 100%;
  height: 50px;
  background-color: #f6f3ea;
  border: 2px solid #46341E;
  color: #46341E;
  text-decoration: none;
  font-size: min(3.45vw, 14px);
  transition: all 0.3s ease;
  font-weight: 700;
  position: relative;
}

.area-search .area-search__box a::after {
  content: '';
  display: inline-block;
  vertical-align: middle;
  color: #46341E;
  line-height: 1;
  width: 0;
  height: 0;
  border-style: solid;
  border-color: transparent;
  border-width: 0.575em 0.34952em;
  border-top-color: currentColor;
  border-bottom: 0;
  position: absolute;
  right: 12px;
  top: 0;
  bottom: 0;
  margin: auto;
}

.area-search .area-search__box a:hover {
  opacity: 1;
  background-color: #B71717;
  border: none;
  color: #fff;
}

.area-search .area-search__box:hover a::after {
  color: #fff;
}

.area-search .area-search__shop {
  padding: 151px 0 100px;
  background-color: #fff;
}

.area-search .area-search__shop .inner {
  max-width: 1120px;
}

.area-search .area-search__list {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 20px;
}

.area-search .area-search__item {
  background-color: #F6F3EA;
  padding: 18px 20px;
  display: flex;
  flex-direction: column;
}

.area-search .area-search__head {
  background-color: #46341E;
  padding: 8px 12px;
  display: flex;
  align-items: center;
  gap: 8px;
  margin-bottom: 18px;
}

.area-search .area-search__head img {
  display: block;
  width: 36px;
}

.area-search .area-search__head h3 {
  color: #fff;
  font-size: min(3.77vw, 22px);
  font-weight: bold;
  letter-spacing: 0.01em;
}

.area-search .area-search__table {
  width: 100%;
  flex-grow: 1;
}

.area-search .area-search__table tbody {
  width: 100%;
  display: block;
}

.area-search .area-search__table tr {
  border-bottom: 1px dashed #A58E71;
  padding: 19px 0;
  display: flex;
  align-items: center;
}

.area-search .area-search__table tr:nth-child(1) {
  padding-top: 0;
}

.area-search .area-search__table tr:last-child {
  align-items: flex-start;
  border-bottom: none;
}

.area-search .area-search__table th,
.area-search .area-search__table td {
  border: none;
  padding: 0;
  font-size: min(3.45vw, 14px);
  font-weight: bold;
  letter-spacing: 0.01em;
}

.area-search .area-search__table th {
  width: 35%;
  text-align: left;
}

.area-search .area-search__table td {
  width: 65%;
}

.area-search .area-search__flex {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 16px;
}

.area-search .area-search__img {
  position: relative;
  padding-top: 100%;
}

.area-search .area-search__img img {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.area-search .area-search__name {
  font-size: min(3.45vw, 14px);
  font-weight: bold;
  font-family: 'Noto Sans JP', sans-serif;
  margin-top: 9px;
  display: block;
}

.area-search .area-search__staff a {
  display: flex;
  align-items: center;
  justify-content: center;
  margin-top: 5px;
  border: 2px solid #46341E;
  border-radius: 4px;
  font-size: min(2.8vw, 12px);
  position: relative;
}

.area-search .area-search__staff a::after {
  content: '';
  display: inline-block;
  vertical-align: middle;
  color: #46341E;
  line-height: 1;
  width: 0;
  height: 0;
  border-style: solid;
  border-color: transparent;
  border-width: 0.375em 0.64952em;
  border-left-color: currentColor;
  border-right: 0;
  position: absolute;
  right: 6px;
  top: 0;
  bottom: 0;
  margin: auto;
}

.area-search .area-search__btn {
  margin-top: 28px;
  background-color: #B71717;
  border-radius: 28px;
  color: #fff;
  font-size: min(3.45vw, 14px);
  font-weight: bold;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  line-height: 1.2;
  padding: 11px 0;
  font-family: 'Noto Sans JP', sans-serif;
  position: relative;
}

.area-search .area-search__btn span {
  font-size: min(3.6vw, 16px);
  color: #FDDD6E;
}

.area-search .area-search__btn .arrow {
  content: '';
  display: inline-block;
  vertical-align: middle;
  color: #fff;
  line-height: 1;
  width: 0;
  height: 0;
  border-style: solid;
  border-color: transparent;
  border-width: 0.375em 0.64952em;
  border-left-color: currentColor;
  border-right: 0;
  position: absolute;
  right: 21px;
  top: 0;
  bottom: 0;
  margin: auto;
}

.p-areaVoice.area4 {
  padding: 73px 0 60px;
  background-color: #F6F3EA;
  font-family: 'Zen Maru Gothic', sans-serif;
}

.p-areaVoice.area4 .title {
  padding-bottom: 12px;
  color: #46341E;
  font-size: min(6.15vw, 32px);
  font-weight: bold;
  line-height: 1.4;
  text-align: center;
}

.p-areaVoice.area4 .en {
  display: block;
  color: #B71717;
  font-weight: 700;
  font-size: min(3.45vw, 20px);
  letter-spacing: 0.3em;
  text-align: center;
  padding-bottom: 30px;
}

.p-areaInterview {
  font-family: 'Zen Maru Gothic', sans-serif;
}

.p-areaInterview .p-areaInterview__headline {
  margin-bottom: 0;
  padding-bottom: 12px;
}

.p-areaInterview .en {
  display: block;
  color: #fff;
  font-weight: 700;
  font-size: min(3.45vw, 20px);
  letter-spacing: 0.3em;
  text-align: center;
  padding-bottom: 30px;
}

.p-areaRelated {
  font-family: 'Zen Maru Gothic', sans-serif;
}

.p-areaRelated .p-areaRelated__headline {
  padding-bottom: 12px;
  color: #46341E;
  font-size: min(6.15vw, 32px);
  font-weight: bold;
  line-height: 1.4;
  text-align: center;
  margin-bottom: 0;
}

.p-areaRelated .en {
  display: block;
  font-weight: 700;
  font-size: min(3.45vw, 20px);
  letter-spacing: 0.3em;
  text-align: center;
  padding-bottom: 40px;
  color:#B71717;
}

@media screen and (max-width: 768px) {
  .area-search {
    padding: 93px 0 0;
  }

  .area-search .inner {
    width: 100%;
    padding: 0 20px;
  }

  .area-search .heading {
    padding-bottom: 33px;
  }

  .area-search .title {
    font-size: 2rem;
  }

  .area-search .en {
    font-size: 1.6rem;
  }

  .area-search .description {
    padding-top: 14px;
  }

  .area-search .description p {
    font-size: 1.4rem;
    text-align: left;
  }

  .area-search .area-search__wrap {
    padding: 35px 0 0;
  }

  .area-search .subtitle {
    font-size: 2rem;
  }

  .area-search .area-search__parent {
    width: 100%;
    padding: 51px 20px 24px;
    transform: translateY(0);
    margin-top: 49px;
  }

  .area-search .area-search__top {
    width: 90%;
    padding: 7px 10px;
    justify-content: center;
    top: -33px;
  }

  .area-search .area-search__top img {
    width: 34px;
  }

  .area-search .area-search__top h3 {
    font-size: 1.6rem;
  }

  .area-search .area-search__header {
    margin-bottom: 20px;
  }

  .area-search .area-search__header p {
    text-align: left;
  }

  .area-search .area-search__column {
    padding: 0;
    grid-template-columns: repeat(2, 1fr);
  }

  .area-search .area-search__box a {
    font-size: 1.4rem;
  }

  .area-search .area-search__shop {
    padding: 48px 0 60px;
  }

  .area-search .area-search__shop .inner {
    width: 100%;
    padding: 0 20px;
  }

  .area-search .area-search__list {
    grid-template-columns: repeat(1, 1fr);
  }

  .area-search .area-search__item {
    padding: 0 0 36px;
  }

  .area-search .area-search__head {
    margin-bottom: 30px;
  }

  .area-search .area-search__head h3 {
    font-size: 1.8rem;
  }

  .area-search .area-search__table {
    display: block;
    padding: 0 15px;
  }

  .area-search .area-search__table tr {
    flex-direction: column;
    gap: 9px;
    width: 100%;
  }

  .area-search .area-search__table th {
    border-left: 5px solid #46341E;
    padding-left: 10px;
  }

  .area-search .area-search__table th,
  .area-search .area-search__table td {
    width: 100%;
    font-size: 1.4rem;
  }

  .area-search .area-search__flex {
    gap: 11px;
    padding-top: 11px;
  }

  .area-search .area-search__name {
    font-size: 1.2rem;
  }

  .area-search .area-search__staff a {
    font-size: 1.1rem;
    padding: 6px 0;
  }

  .area-search .area-search__btn {
    margin: 35px 3% 0;
    font-size: 1.4rem;
    padding: 13px 3%;
  }

  .area-search .area-search__btn span {
    font-size: 1.5rem;
  }

  .area-search .area-search__btn .arrow {
    right: 10px;
  }

  .p-areaVoice.area4 {
    padding: 60px 0 53px;
  }

  .p-areaVoice.area4 .title {
    font-size: 2rem;
  }

  .p-areaVoice.area4 .en {
    font-size: 1.6rem;
  }

  .p-areaInterview {
    padding: 56px 0 30px;
  }

  .p-areaRelated {
    padding: 60px 0;
  }

  .p-areaRelated .p-areaRelated__headline {
    font-size: 2rem;
  }

  .p-areaRelated .en {
    font-size: 1.6rem;
  }
}

.area-recommend {
  background-color: #fff;
  padding: 100px 0 65px;
  margin-top: 20px;
  font-family: 'Zen Maru Gothic', sans-serif;
  position: relative;
}

.area-recommend .inner {
  max-width: 800px;
  width: 85%;
  margin: 0 auto;
}

.area-recommend .heading p {
  text-align: center;
  font-size: min(3.77vw, 22px);
  font-weight: bold;
}

.area-recommend .title {
  padding-bottom: 12px;
  color: #B71717;
  font-size: min(6.15vw, 32px);
  font-weight: bold;
  line-height: 1.4;
  text-align: center;
}

.area-recommend .en {
  display: block;
  font-weight: 700;
  font-size: min(3.45vw, 20px);
  letter-spacing: 0.3em;
  text-align: center;
  padding-bottom: 30px;
}

.area-recommend .area-recommend__list {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 16px 21px;
}

.area-recommend .area-recommend__item {
  background-color: #46341E;
  border-radius: 8px;
  display: flex;
  align-items: center;
  gap: 16px;
  padding: 12px 15px;
}

.area-recommend .area-recommend__item img {
  display: block;
  width: 23px;
}

.area-recommend .area-recommend__txt {
  color: #fff;
  font-size: min(3.6vw, 16px);
  line-height: 1.3;
  font-weight: bold;
}

.area-recommend .area-recommend__txt span {
  color: #FDDD6E;
}

.area-recommend .abs5 {
  bottom: -160px;
  background-color: #fff;
}

.area-recommend .abs5l {
  border-color: transparent transparent transparent #F6F3EA;
}

.area-recommend .abs5r {
  border-color: transparent transparent #F6F3EA transparent;
}

.area .p-areaIntro.area-about {
  padding: 200px 0 80px;
}

.p-areaIntro .p-areaIntro__headline {
  padding-bottom: 30px;
  font-size: min(6.15vw, 32px);
  font-weight: bold;
  line-height: 1.4;
  text-align: center;
}

.p-areaIntro .p-areaIntro__headline span {
  display: block;
  color: #B71717;
  font-size: min(4.46vw, 26px);
  padding-bottom: 8px;
}

.area-flow {
  background-color: #fff;
  padding: 100px 0 0;
  font-family: 'Zen Maru Gothic', sans-serif;
}

.area-flow .area-flow__header .inner {
  max-width: 539px;
  width: 85%;
  margin: 0 auto;
}

.area-flow .heading .title {
  padding-bottom: 12px;
  color: #B71717;
  font-size: min(6.15vw, 32px);
  font-weight: bold;
  line-height: 1.4;
  text-align: center;
  letter-spacing: 0.01em;
}

.area-flow .heading .en {
  display: block;
  font-weight: 700;
  font-size: min(3.45vw, 20px);
  letter-spacing: 0.3em;
  text-align: center;
  padding-bottom: 35px;
}

.area-flow .area-flow__nav {
  display: flex;
  align-items: center;
  gap: 15px;
}

.area-flow .area-flow__btn {
  width: 100%;
  padding: 7px 0;
  font-size: min(3.6vw, 21px);
  color: #fff;
  background-color: #939393;
  font-weight: bold;
  letter-spacing: 0.01em;
  text-align: center;
  position: relative;
  cursor: pointer;
}

.area-flow .area-flow__btn::after {
  content: "";
  display: inline-block;
  vertical-align: middle;
  color: #939393;
  line-height: 1;
  width: 0;
  height: 0;
  border-style: solid;
  border-color: transparent;
  border-width: 0.64952em 0.375em;
  border-top-color: currentColor;
  border-bottom: 0;
  position: absolute;
  left: 0;
  right: 0;
  bottom: -27%;
  margin: auto;
}

.area-flow .area-flow__btn.is-active {
  background-color: #B71717;
}

.area-flow .area-flow__btn.is-active::after {
  color: #B71717;
}

.area-flow .area-flow__btn:hover {
  opacity: 0.7;
}

.area-flow .area-flow__wrap {
  background-color: #F6F3EA;
  padding: 32px 0 72px;
  margin-top: 28px;
}

.area-flow .area-flow__wrap .inner {
  max-width: 910px;
  width: 85%;
  margin: 0 auto;
}

.area-flow .area-flow__list {
  display: flex;
  align-items: center;
  gap: 24px;
  border-bottom: 1px dashed #B71717;
  opacity: 0;
  visibility: hidden;
  height: 0;
  overflow: hidden;
  transition: opacity 0.3s;
}

.area-flow__list.is-show {
  opacity: 1;
  visibility: visible;
  height: auto;
  overflow: visible;
}

.area-flow__list.slick-dotted.slick-slider {
  margin-bottom: 0;
}

.area-flow .area-flow__list .slick-track {
  display: flex;
  padding-bottom: 71px;
}

.area-flow .area-flow__list .slick-slide {
  height: auto !important;
}

.area-flow .slick-prev.slick-arrow {
  background: url("./img/arrow-left.png") no-repeat;
  background-size: cover;
  width: 23px;
  height: 24px;
}

.area-flow .slick-prev.slick-arrow::before {
  content: none;
}

.area-flow .slick-next.slick-arrow {
  background: url("./img/arrow-right.png") no-repeat;
  background-size: cover;
  width: 23px;
  height: 24px;
}

.area-flow .slick-next.slick-arrow::before {
  content: none;
}

.area-flow .slick-dots {
  bottom: 32px;
}

.area-flow .slick-dots li {
  margin: 0;
}

.area-flow .slick-dots li button:before {
  color: #939393;
  font-size: 55px;
  opacity: 1;
}

.area-flow .slick-dots li.slick-active button:before {
  color: #B71717;
}

.area-flow .area-flow__item {
  margin: 0 12px;
  position: relative;
}

.slick-current + .area-flow__item.slick-active::before {
  content: "";
  width: 11px;
  height: 12px;
  top: 0;
  bottom: 0;
  left: -6%;
  margin: auto;
  background-color: #46341E;
  -webkit-clip-path: polygon(100% 50%, 0% 100%, 0% 0%);
  clip-path: polygon(100% 50%, 0% 100%, 0% 0%);
  position: absolute;
  transform: translateY(-50%);
}

.slick-current + .area-flow__item.slick-active::after {
  content: "";
  width: 11px;
  height: 12px;
  top: 0;
  bottom: 0;
  right: -6%;
  margin: auto;
  background-color: #46341E;
  -webkit-clip-path: polygon(100% 50%, 0% 100%, 0% 0%);
  clip-path: polygon(100% 50%, 0% 100%, 0% 0%);
  position: absolute;
  transform: translateY(-50%);
}

.area-flow .area-flow__box {
  position: relative;
  background-color: #fff;
  border-radius: 16px;
  padding: 22px 22px 0;
  height: 344px;
}

.area-flow .area-flow__top {
  color: #B71717;
  font-weight: bold;
  font-size: min(3.6vw, 16px);
}

.area-flow .area-flow__head {
  display: flex;
  gap: 10px;
}

.area-flow .area-flow__head img {
  display: block;
  width: 47px;
}

.area-flow .area-flow__subtitle {
  color: #B71717;
  font-weight: bold;
  font-size: min(3.6vw, 16px);
  letter-spacing: 0.01em;
  width: 100%;
  line-height: 1.2;
  position: relative;
  display: flex;
  align-items: center;
}

.area-flow .area-flow__subtitle::before {
  content: "";
  position: absolute;
  bottom: 0;
  width: 100%;
  border-bottom: 1px dashed #B71717;
}

.area-flow .area-flow__content {
  margin-top: 15px;
}

.area-flow .area-flow__feature {
  font-size: min(3.6vw, 16px);
  font-weight: bold;
  line-height: 1.3;
  letter-spacing: 0.01em;
  font-family: 'Noto Sans JP', sans-serif;
}

.area-flow .area-flow__feature a {
  color: #B71717;
  text-decoration: underline;
}

.area-flow .area-flow__subtext {
  font-size: min(2.8vw, 12px);
  font-weight: 400;
  letter-spacing: 0.01em;
  margin-top: 5px;
  font-family: 'Noto Sans JP', sans-serif;
}

.area-flow .area-flow__subtext a {
  color: #B71717;
  text-decoration: underline;
}

.area-flow .area-flow__content ul li {
  font-size: min(3.45vw, 14px);
  font-weight: bold;
  letter-spacing: 0.01em;
  line-height: 1.5;
  font-family: 'Noto Sans JP', sans-serif;
}

.area-flow .area-flow__method {
  margin-top: 54px;
}

.area-flow .area-flow__catch {
  color: #B71717;
  font-size: min(3.6vw, 21px);
  font-weight: bold;
}

.area-flow .area-flow__group {
  display: flex;
  flex-direction: column;
  gap: 6px;
  margin-top: 16px;
}

.area-flow .area-flow__container {
  background-color: #fff;
  border-radius: 7px;
  padding: 12px 20px;
  display: flex;
  align-items: center;
  gap: 21px;
}

.area-flow .area-flow__left {
  display: flex;
  align-items: center;
  gap: 14px;
  width: 27%;
}

.area-flow .area-flow__num {
  background-color: #B71717;
  border-radius: 7px;
  color: #fff;
  font-weight: bold;
  font-size: min(3.6vw, 21px);
  padding: 8px;
  line-height: 1;
}

.area-flow .area-flow__text {
  font-size: min(3.6vw, 16px);
  font-weight: bold;
  line-height: 1.3;
  color: #B71717;
}

.area-flow .area-flow__right {
  width: 70%;
}

.area-flow .area-flow__right .area-flow__introduction {
  font-size: min(3.45vw, 14px);
  font-weight: bold;
  letter-spacing: 0.01em;
  font-family: 'Noto Sans JP', sans-serif;
}

.area-flow .area-flow__right .area-flow__introduction span {
  color: #B71717;
}

.area-flow__note {
  font-size: min(3.45vw, 14px);
  font-weight: 400;
  font-family: 'Noto Sans JP', sans-serif;
}

.area-plan {
  position: relative;
  padding: 100px 0 50px;
  font-family: 'Zen Maru Gothic', sans-serif;
}

.area-plan::before {
  content: "";
  background-color: #fff;
  position: absolute;
  width: 100%;
  height: 559px;
  display: block;
  z-index: -1;
  top: 0;
}

.area-plan .inner {
  max-width: 910px;
  width: 85%;
  margin: 0 auto;
}

.area-plan .title {
  padding-bottom: 12px;
  color: #B71717;
  font-size: min(6.15vw, 32px);
  font-weight: bold;
  line-height: 1.4;
  text-align: center;
  letter-spacing: 0.01em;
}

.area-plan .en {
  display: block;
  font-weight: 700;
  font-size: min(3.45vw, 20px);
  letter-spacing: 0.3em;
  text-align: center;
  padding-bottom: 58px;
}

.area-plan .subtitle {
  color: #B71717;
  margin-bottom: 23px;
  padding-left: 24px;
  font-size: min(4.46vw, 26px);
  position: relative;
}

.area-plan .subtitle::before {
  content: "";
  position: absolute;
  top: 0;
  bottom: 0;
  left: 0;
  margin: auto;
  width: 14px;
  height: 14px;
  background: #B71717;
  transform: rotate(45deg);
}

.area-plan__flex {
  display: flex;
  justify-content: space-between;
  align-items: center;
}

.area-plan__img {
  width: 50%;
  position: relative;
  padding-top: 37%;
}

.area-plan__img img {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.area-plan__content {
  width: 45%;
}

.area-plan__content p {
  font-size: min(3.6vw, 16px);
  font-weight: bold;
  line-height: 2;
}

.area-plan__list {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 12px 20px;
  margin-top: 60px;
}

.area-plan__item {
  background-color: #fff;
  padding: 10px 20px;
  display: flex;
  align-items: center;
  gap: 6px;
}

.area-plan__icon {
  background-color: #EFF5ED;
  border-radius: 6px;
  width: 37px;
  padding: 9px 7px;
}

.area-plan__icon img {
  width: 90%;
  display: block;
  margin: 0 auto;
}

.area-plan__text {
  font-size: min(3.59vw, 18px);
  font-weight: bold;
  line-height: 1.6;
  letter-spacing: 0.01em;
}

.area-plan__text span {
  font-size: min(3.6vw, 16px);
}

.contentx04.area_price {
  background-color: #F6F3EA;
  padding: 0;
}

.contentx04.area_price .heading {
  max-width: 910px;
  width: 85%;
  margin: 0 auto 30px;
}

.contentx04.area_price .title {
  color: #B71717;
  padding-left: 24px;
  font-size: min(4.46vw, 26px);
  position: relative;
  display: inline-block;
  padding-bottom: 0;
}

.contentx04.area_price .title::before {
  content: "";
  position: absolute;
  top: 0;
  bottom: 0;
  left: 0;
  margin: auto;
  width: 14px;
  height: 14px;
  background: #B71717;
  transform: rotate(45deg);
}

.contentx04.area_price .price_foot {
  max-width: 910px;
  width: 85%;
  margin: 0 auto;
}

.contentx04.area_price .price_foot .request_heading .title {
  font-size: min(5.13vw, 28px);
  color: #fff;
  font-weight: bold;
  line-height: 1.5;
  padding-bottom: 25px;
  padding-left: 0;
}

.contentx04.area_price .price_list {
  padding: 0;
}

.contentx04.area_price .price_table {
  padding: 0;
}

.contentx04.area_price .price_action {
  margin: 0;
}

.contentx04.area_price .request_wrap {
  padding: 0;
}

.p-areaStaff.area3 {
  background-color: #fff;
  padding: 100px 0 0;
  font-family: 'Zen Maru Gothic', sans-serif;
}

.p-areaStaff.area3 .c-areaStaff>h3 {
  padding-bottom: 12px;
  color: #B71717;
  font-size: min(6.15vw, 32px);
  font-weight: bold;
  line-height: 1.4;
  text-align: center;
  margin-bottom: 0 !important;
}

.p-areaStaff.area3 .c-areaStaff>h3::after {
  content: none;
}

.p-areaStaff.area3 .en {
  display: block;
  font-weight: 700;
  font-size: min(3.45vw, 20px);
  letter-spacing: 0.03em;
  text-align: center;
  padding-bottom: 30px;
}

.p-areaStaff.area3 .c-areaStaff__wrap {
  background-color: #F6F3EA;
  max-width: 100%;
  padding: 62px 0 100px;
}

.p-areaStaff.area3 .c-areaStaff__detail {
  max-width: 1043px;
  width: 85%;
  margin: 0 auto;
}

.p-areaStaff.area3 .c-areaStaff__list {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 60px 40px;
  margin-bottom: 100px;
}

.p-areaStaff.area3 .c-areaStaff__item {
  width: 100%;
}

.p-areaStaff.area3 .c-areaStaff__flex {
  display: flex;
  justify-content: space-between;
}

.p-areaStaff.area3 .c-areaStaff__image {
  width: 40%;
  position: relative;
  padding-top: 40%;
}

.p-areaStaff.area3 .c-areaStaff__image img {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.p-areaStaff.area3 .c-areaStaff__content {
  width: 55%;
}

.p-areaStaff.area3 .c-areaStaff__text {
  font-size: min(3.45vw, 20px);
  font-weight: bold;
  line-height: 1.6;
  overflow: hidden;
  display: -webkit-box;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 3;
}

.p-areaStaff.area3 .c-areaStaff__name {
  font-size: min(3.59vw, 18px);
  margin-bottom: 0;
  display: inline-block;
}

.p-areaStaff.area3 .c-areaStaff__name.en {
  margin-left: 8px;
  font-size: min(3.45vw, 14px);
}

.p-areaStaff.area3 .c-areaStaff__box {
  display: flex;
  align-items: center;
  gap: 6px;
}

.p-areaStaff.area3 .c-areaStaff__read {
  background-color: #46341E;
  border-radius: 26px;
  color: #fff;
  padding: 13px 0;
  font-size: min(3.45vw, 14px);
  letter-spacing: 0.01em;
  font-weight: bold;
  position: relative;
  width: 100%;
  display: flex;
  align-items: center;
  justify-content: center;
}

.p-areaStaff.area3 .c-areaStaff__read .arrow {
  content: "";
  width: 7.5px;
  height: 8.66px;
  top: 50%;
  right: 15px;
  background-color: #fff;
  -webkit-clip-path: polygon(100% 50%, 0% 100%, 0% 0%);
  clip-path: polygon(100% 50%, 0% 100%, 0% 0%);
  position: absolute;
  transform: translateY(-50%);
}

.p-areaStaff.area3 .c-areaStaff__contact {
  background-color: #EAA116;
  border-radius: 26px;
  color: #fff;
  padding: 13px 0;
  font-size: min(3.45vw, 14px);
  letter-spacing: 0.01em;
  font-weight: bold;
  position: relative;
  width: 100%;
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 6px;
}

.p-areaStaff.area3 .c-areaStaff__contact img {
  display: block;
  width: 19px;
}

.p-areaStaff.area3 .c-areaStaff__contact .arrow {
  content: "";
  width: 7.5px;
  height: 8.66px;
  top: 50%;
  right: 15px;
  background-color: #fff;
  -webkit-clip-path: polygon(100% 50%, 0% 100%, 0% 0%);
  clip-path: polygon(100% 50%, 0% 100%, 0% 0%);
  position: absolute;
  transform: translateY(-50%);
}

.p-areaInfo.area2 {
  background-color: #FFF5F5;
  padding: 100px 0;
  font-family: 'Zen Maru Gothic', sans-serif;
}

.p-areaInfo.area2 .title {
  padding-bottom: 12px;
  color: #B71717;
  font-size: min(6.15vw, 32px);
  font-weight: bold;
  line-height: 1.4;
  text-align: center;
  margin-bottom: 0;
}

.p-areaInfo.area2 .title::after {
  content: none;
}

.p-areaInfo.area2 .en {
  display: block;
  font-weight: 700;
  font-size: min(3.45vw, 20px);
  letter-spacing: 0.3em;
  text-align: center;
  padding-bottom: 30px;
}

.p-areaInfo.area2 .c-areaInfo__item {
  background-color: #fff;
}

.c-otherArea .en {
  display: block;
  font-weight: 700;
  font-size: min(3.45vw, 20px);
  letter-spacing: 0.3em;
  text-align: center;
  padding-bottom: 40px;
}

.pet-price-table {
  margin-top: 41px;
}

.pet-price-wrap {
  margin-top: 10px;
}

.pet-price-table table {
  width: 100%;
  table-layout: fixed;
}

.pet-price-table table td {
  font-size: min(3.45vw, 14px);
  font-weight: bold;
  letter-spacing: 0.01em;
  text-align: center;
  vertical-align: middle;
  padding: 12px 0;
}

.pet-price-table table td.null {
  color: #B9B9B9;
}

.pet-price-table table td.last {
  width: 12%;
}

.pet-price-table table td.middle {
  width: 13.5%;
}

.pet-price-table .table01 {
  background-color: #EFF5ED;
  position: relative;
  z-index: 2;
}

.pet-price-table .table02 {
  margin-top: 8px;
  background-color: #F6F3EA;
  position: relative;
  z-index: 2;
}

.pet-price-table .table03 {
  margin-top: 8px;
  background-color: #F8EFD1;
  position: relative;
  z-index: 2;
}

.pet-price-table .table04 {
  margin-top: 8px;
  background-color: #F6F3EA;
  position: relative;
  z-index: 2;
}

.pet-price-table .table05 {
  margin-top: 8px;
  background-color: #EFEFEF;
  position: relative;
  z-index: 2;
}

.pet-price-title {
  text-align: center;
  vertical-align: middle; 
  color: #fff;
  font-size: min(3.45vw, 14px);
  font-weight: bold;
  width: 12%;
  letter-spacing: 0.01em;
}

.pet-price-table .table01 .pet-price-title {
  background-color: #B71717;
}

.pet-price-table .table02 .pet-price-title {
  background-color: #46341E;
}

.pet-price-table .table03 .pet-price-title {
  background-color: #EAA116;
}

.pet-price-table .table04 .pet-price-title {
  background-color: #9B8655;
}

.pet-price-table .table05 .pet-price-title {
  background-color: #484848;
}

.pet-price-table .pet-price-subtitle {
  border-right: 3px solid #B71717;
  width: 20%;
}

.pet-price-table .pet-price-subtitle .flex {
  display: flex;
  justify-content: center;
  align-items: center;
  gap: 6px;
}

.pet-price-table .pet-price-subtitle .icon01 {
  width: 25px;
  display: block;
}

.pet-price-table .pet-price-subtitle .icon02 {
  width: 19px;
  display: block;
}

.pet-price-table .pet-price-subtitle .icon03 {
  width: 42px;
  display: block;
}

.pet-price-table .blank {
  background-color: transparent;
  border: none;
  width: 11px;
}

.pet-price-table .table01 .blank {
  background-color: #F6F3EA;
}

.pet-price-table .table03 .blank {
  background-color: #F6F3EA;
}

.pet-price-table .table05 .blank {
  background-color: #F6F3EA;
}

.pet-price-table .red-line {
  border: 2px solid #BC2221;
  width: 12%;
}

.pet-price-table .price-alltotal {
  position: relative;
  width: 12%;
  border: none;
  padding: 0;
  background-color: #F6F3EA;
}

.pet-price-table .price-alltotal .box {
  background-color: #FDDD6E;
  line-height: 1.2;
  border: 2px solid #BC2221;
  border-radius: 4px;
  display: grid;
  height: 100%;
  width: 100%;
  padding: 12px 0;
  margin-top: 6px;
  position: relative;
  z-index: 2;
}

.pet-price-table .price-alltotal .box span {
  font-size: min(4.1vw, 20px);
  color: #BC2222;
  display: block;
  margin-top: 5px;
}

.pet-price-table .price-alltotal::after {
  content: "";
  height: 50px;
  width: 24px;
  z-index: 1;
  position: absolute;
  left: 0;
  right: 0;
  top: 0;
  margin: auto;
  background-color: #C1C0BA;
}

.pet-price-nav {
  display: flex;
  position: relative;
  margin-left: auto;
  margin-bottom: 18px;
  max-width: 68%;
}

.pet-price-nav .pet-price-item {
  font-size: clamp(12px, 0.91vw, 14px);
  line-height: 1.2;
  font-weight: bold;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  position: relative;
  margin-left: auto;
}

.pet-price-nav .pet-price-item::before {
  content: "";
  height: 800px;
  width: 24px;
  z-index: 1;
  position: absolute;
  left: 0;
  right: 0;
  top: 0;
  margin: auto;
}

.pet-price-nav .pet-price-item::after {
  content: "";
  display: inline-block;
  vertical-align: middle;
  color: #939393;
  line-height: 1;
  width: 0;
  height: 0;
  border-style: solid;
  border-color: transparent;
  border-width: 0.94952em 0.675em;
  border-top-color: currentColor;
  border-bottom: 0;
  position: absolute;
  left: 0;
  right: 0;
  bottom: -10%;
  margin: auto;
  z-index: 2;
}

.pet-price-nav .pet-price-item .lead {
  font-size: clamp(10px, 0.71vw, 12px);
}

.pet-price-nav .pet-price-item .note {
  font-size: clamp(9px, 0.61vw, 10px);
  display: block;
}

.pet-price-nav .pet-price-item .top {
  background-color: #FDDD6E;
  position: absolute;
  left: 0;
  right: 0;
  top: -7px;
  margin: auto;
  font-size: clamp(10px, 0.71vw, 12px);
  color: #46341E;
  font-weight: bold;
  width: 50%;
  padding: 3px 0;
}

.pet-price-nav .pet-price-inner {
  position: relative;
  height: 100%;
  background-color: #fff;
  padding: clamp(12px, 0.91vw, 14px) clamp(3px, 0.91vw, 6px);
  z-index: 2;
  font-size: clamp(10px, 0.91vw, 12px);
  display: flex;
  flex-direction: column;
  justify-content: center;
  z-index: 3;
}

.pet-price-nav .pet-price-item:nth-child(5) {
  margin-left: auto;
}

.pet-price-nav .pet-price-item:nth-child(1) .pet-price-inner {
  border: 3px solid #6DA65C;
}

.pet-price-nav .pet-price-item:nth-child(2) .pet-price-inner {
  border: 3px solid #46341E;
}

.pet-price-nav .pet-price-item:nth-child(3) .pet-price-inner {
  border: 3px solid #EAA116;
}

.pet-price-nav .pet-price-item:nth-child(4) .pet-price-inner {
  border: 3px solid #9B8655;
}

.pet-price-nav .pet-price-item:nth-child(5) .pet-price-inner {
  background-color: #484848;
  color: #fff;
  position: relative;
}

.pet-price-nav .pet-price-item:nth-child(1)::before {
  background-color: #C9DABB;
}

.pet-price-nav .pet-price-item:nth-child(2)::before {
  background-color: #D4C8B6;
}

.pet-price-nav .pet-price-item:nth-child(3)::before {
  background-color: #F3DBAB;
}

.pet-price-nav .pet-price-item:nth-child(4)::before {
  background-color: #DCD3BE;
}

.pet-price-nav .pet-price-item:nth-child(5)::before {
  background-color: #C1C0BA;
}

.pet-price-nav .pet-price-item:nth-child(1)::after {
  color: #F5F4EF;
}

.pet-price-nav .pet-price-item:nth-child(2)::after {
  color: #46341E;
}

.pet-price-nav .pet-price-item:nth-child(3)::after {
  color: #EAA116;
}

.pet-price-nav .pet-price-item:nth-child(4)::after {
  color: #9B8655;
}

.pet-price-nav .pet-price-item:nth-child(5)::after {
  color: #484848;
  bottom: -13%;
}

.pet-price-note {
  text-align: left;
  font-size: min(1.54vw, 9px);
  font-weight: 400;
  line-height: 1.6;
  font-family: 'Noto Sans JP', sans-serif;
  margin-top: 20px;
  letter-spacing: 0.01em;
}

.area-check {
  background-color: #fff;
  padding: 117px 0 0;
  font-family: 'Zen Maru Gothic', sans-serif;
}

.area-check .heading {
  padding-bottom: 22px;
}

.area-check .heading span {
  padding-bottom: 12px;
  color: #B71717;
  font-size: min(6.15vw, 32px);
  font-weight: bold;
  line-height: 1.4;
  text-align: center;
  letter-spacing: 0.01em;
  display: block;
}

.area-check .heading p {
  font-size: min(5.13vw, 28px);
  font-weight: bold;
  text-align: center;
  display: block;
}

.area-check .area-check__wrap {
  background-color: #FFF5F5;
  padding: 45px 0;
}

.area-check .area-check__list {
  display: flex;
  align-items: center;
  justify-content: center;
  flex-wrap: wrap;
  gap: 12px;
}

.area-check .area-check__link {
  position: relative;
  border: 2px solid #B71717;
  color: #B71717;
  font-size: min(3.6vw, 16px);
  letter-spacing: 0.01em;
  font-weight: bold;
  border-radius: 37px;
  background-color: #fff;
  width: 271px;
  height: 65px;
  display: flex;
  align-items: center;
  justify-content: center;
}

.area-check .area-check__link::after {
  content: '';
  display: inline-block;
  vertical-align: middle;
  color: #B71717;
  line-height: 1;
  width: 0;
  height: 0;
  border-style: solid;
  border-color: transparent;
  border-width: 0.575em 0.34952em;
  border-top-color: currentColor;
  border-bottom: 0;
  position: absolute;
  right: 18px;
  top: 0;
  bottom: 0;
  margin: auto;
}

.p-areaVoice.area4 {
  background-color: #fff;
}

.c-otherArea {
  font-family: 'Zen Maru Gothic', sans-serif;
}

.c-otherArea .c-otherArea__headline {
  padding-bottom: 12px;
  color: #B71717;
  font-size: min(6.15vw, 32px);
  font-weight: bold;
  line-height: 1.4;
  text-align: center;
  margin-bottom: 0;
}

@media screen and (max-width: 768px) {
  .area-recommend {
    padding: 59px 0 45px;
  }

  .area-recommend .inner {
    width: 100%;
    padding: 0 20px;
  }

  .area-recommend .heading p {
    font-size: 1.8rem;
  }

  .area-recommend .title {
    font-size: 2rem;
  }

  .area-recommend .en {
    font-size: 1.6rem;
    padding-bottom: 19px;
  }

  .area-recommend .area-recommend__list {
    grid-template-columns: repeat(1, 1fr);
    gap: 10px;
  }

  .area-recommend .area-recommend__item {
    padding: 11px;
    gap: 13px;
  }

  .area-recommend .area-recommend__item img {
    width: 20px;
  }

  .area-recommend .area-recommend__txt {
    font-size: 1.4rem;
  }

  .area-recommend .abs5 {
    bottom: -11%;
  }

  .area .p-areaIntro.area-about {
    padding: 101px 0 60px;
  }

  .p-areaIntro .p-areaIntro__headline {
    font-size: 2.2rem;
    width: 85%;
    margin: 0 auto;
  }

  .p-areaIntro .p-areaIntro__headline span {
    display: inline-block;
    font-size: 2.2rem;
  }

  .area-flow {
    padding: 80px 0 0;
  }

  .area-flow__header {
    width: 100%;
    margin: 0 auto;
    padding: 0 20px;
  }

  .area-flow .heading .title {
    font-size: 2rem;
  }

  .area-flow .heading .en {
    font-size: 1.6rem;
    padding-bottom: 30px;
  }

  .area-flow .area-flow__header .inner {
    width: 100%;
  }

  .area-flow .area-flow__nav {
    gap: 4px;
  }

  .area-flow .area-flow__btn {
    font-size: 1.4rem;
    padding: 11px 0;
  }

  .area-flow .area-flow__btn::after {
    bottom: -19%;
  }

  .area-flow .area-flow__wrap {
    margin-top: 31px;
    padding: 32px 0 61px;
  }

  .area-flow .area-flow__wrap .inner {
    width: 100%;
  }

  .area-flow .area-flow__list .slick-track {
    padding-bottom: 91px;
  }

  .area-flow .area-flow__item {
    margin: 0 26px;
    display: flex !important;
    flex-direction: column;
  }

  .area-flow .area-flow__top {
    font-size: 1.6rem;
  }

  .area-flow .area-flow__box {
    flex-grow: 1;
    padding: 22px;
    height: auto;
  }

  .area-flow .area-flow__subtitle {
    font-size: 1.6rem;
  }

  .area-flow .area-flow__feature {
    font-size: 1.4rem;
    line-height: 1.5;
  }

  .area-flow .area-flow__subtext {
    font-size: 1.4rem;
    line-height: 1.5;
  }

  .area-flow .area-flow__content ul li {
    font-size: 1.4rem;
    line-height: 1.5;
  }

  .area-flow .slick-dots {
    bottom: 52px;
  }

  .area-flow .slick-prev.slick-arrow {
    left: 37px;
    z-index: 100;
  }

  .area-flow .slick-next.slick-arrow {
    right: 37px;
    z-index: 100;
  }

  .area-flow .area-flow__method {
    margin: 34px auto 0;
    width: 100%;
    padding: 0 20px;
  }

  .area-flow .area-flow__catch {
    font-size: 2.1rem;
  }

  .area-flow .area-flow__container {
    flex-direction: column;
    align-items: flex-start;
    gap: 11px;
    padding: 16px 15px;
  }

  .area-flow .area-flow__left {
    width: 100%;
  }

  .area-flow .area-flow__num {
    font-size: 2.1rem;
  }

  .area-flow .area-flow__text {
    font-size: 1.6rem;
  }

  .area-flow .area-flow__right {
    width: 100%;
  }

  .area-flow .area-flow__right .area-flow__introduction {
    font-size: 1.4rem;
  }

  .area-flow__note {
    font-size: 1.4rem;
  }

  .area-plan {
    padding: 60px 0 50px;
  }

  .area-plan .inner {
    margin: 0;
    width: 100%;
  }

  .contentx04.area_price .price_foot {
    margin: 0;
    width: 100%;
  }

  .area-plan::before {
    height: 316px;
  }

  .area-plan .heading {
    margin: 0 auto;
    padding: 0 20px;
    width: 100%;
  }

  .area-plan__wrap {
    margin: 0 auto;
    padding: 0 20px;
    width: 100%;
  }

  .area-plan .title {
    font-size: 2rem;
  }

  .area-plan .en {
    font-size: 1.6rem;
    padding-bottom: 30px;
  }

  .area-plan .subtitle {
    font-size: 2.2rem;
    margin-bottom: 31px;
    line-height: 1.2;
  }

  .area-plan .subtitle::before {
    top: 8px;
    bottom: auto;
  }

  .area-plan__flex {
    flex-direction: column;
    gap: 19px;
  }

  .area-plan__img {
    width: 100%;
    padding-top: 74%;
  }

  .area-plan__content {
    width: 100%;
  }

  .area-plan__content p {
    font-size: 1.4rem;
  }

  .area-plan__list {
    grid-template-columns: repeat(1, 1fr);
    margin-top: 37px;
  }

  .area-plan__text {
    font-size: 1.6rem;
  }

  .contentx04.area_price .heading {
    margin: 0 auto 20px;
    width: 100%;
    padding: 0 20px;
  }

  .contentx04.area_price .title {
    font-size: 2rem;
    letter-spacing: 0.01em;
    margin-bottom: 20px;
  }

  .contentx04.area_price .price_foot .request_heading .title {
    padding-bottom: 0;
    font-size: 2rem;
  }

  .contentx04.area_price .request_heading .title {
    color: #fff;
    padding-left: 0;
  }

  .contentx04.area_price .price_heading {
    margin: 0 auto 10px;
    width: 100%;
  }

  .contentx04.area_price .price_list {
    margin: 0 auto;
    padding: 0;
    width: 100%;
  }

  /* .pet-price-table {
    overflow: scroll;
    -ms-overflow-style: none;
    scrollbar-width: none;
  } */

  .pet-price-table::-webkit-scrollbar{
    display: none;
  }

  .pet-price-wrap {
    min-width: 900px;
    padding: 0 20px;
  }

  .pet-price-nav .pet-price-inner {
    font-size: 1.2rem;
  }

  .pet-price-table table td {
    font-size: 1.4rem;
  }

  .pet-price-note {
    padding: 0;
    margin-top: 20px;
    font-size: 0.9rem;
  }

  .contentx04.area_price .price_action {
    margin: 0 auto;
  }

  .p-areaStaff.area3 {
    padding: 60px 0 0;
  }

  .p-areaStaff.area3 .c-areaStaff>h3 {
    font-size: 2rem;
  }

  .p-areaStaff.area3 .en {
    font-size: 1.6rem;
  }

  .p-areaStaff.area3 .c-areaStaff>p {
    width: 100%;
    margin: 0 auto 29px;
    padding: 0 20px;
    text-align: left;
  }

  .p-areaStaff.area3 .c-areaStaff__wrap {
    width: 100%;
    padding: 41px 20px 63px;
  }

  .p-areaStaff.area3 .c-areaStaff__detail {
    width: 100%;
  }

  .p-areaStaff.area3 .c-areaStaff__list {
    grid-template-columns: repeat(1, 1fr);
  }

  .p-areaStaff.area3 .c-areaStaff__image {
    width: 50%;
    padding-top: 48%;
  }

  .p-areaStaff.area3 .c-areaStaff__content {
    width: 48%;
  }

  .p-areaStaff.area3 .c-areaStaff__text {
    font-size: 1.6rem;
  }

  .p-areaStaff.area3 .c-areaStaff__name {
    font-size: 1.4rem;
  }

  .p-areaStaff.area3 .c-areaStaff__name.en {
    font-size: 1rem;
    padding-bottom: 0;
  }

  .p-areaStaff.area3 .c-areaStaff__read {
    font-size: 1.3rem;
    padding: 0;
    height: 40px;
    line-height: 1.1;
    text-align: center;
  }

  .p-areaStaff.area3 .c-areaStaff__contact {
    font-size: 1.3rem;
    padding: 0;
    height: 40px;
    line-height: 1.1;
    text-align: center;
  }

  .p-areaStaff.area3 .c-areaStaff__contact img {
    width: 12px;
  }

  .p-areaInfo.area2 {
    padding: 49px 0 60px;
  }

  .p-areaInfo.area2 .inner {
    width: 100%;
    padding: 0 20px;
  }

  .p-areaInfo.area2 .c-areaInfo {
    padding: 0;
  }

  .p-areaInfo.area2 .title {
    font-size: 2rem;
  }

  .p-areaInfo.area2 .en {
    font-size: 1.6rem;
  }

  .p-areaRelated {
    padding: 60px 0;
  }

  .area-check {
    padding: 80px 0 0;
  }

  .area-check .heading p {
    font-size: 2rem;
  }

  .area-check .heading span {
    font-size: 2rem;
  }

  .area-check .heading {
    padding-bottom: 13px;
  }

  .area-check .area-check__wrap {
    padding: 31px 0;
  }

  .area-check .area-check__list {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 7px;
    padding: 0 20px;
    width: 100%;
    margin: 0 auto;
  }

  .area-check .area-check__link {
    width: 100%;
    height: 50px;
    font-size: 1.4rem;
  }

  .area-check .area-check__link::after {
    right: 10px;
  }

  .c-otherArea .c-otherArea__headline {
    font-size: 2rem;
  }

  .c-otherArea .en {
    font-size: 1.6rem;
  }
}

.flow1 {
  padding: 9.4rem 0 0;
  background-color: #fff;
}

.flow1 .title {
  font-size: min(6.15vw, 32px);
  text-align: center;
  line-height: 1.4;
  position: relative;
  z-index: 1;
  padding-bottom: 3.3rem;
  color: #B71717;
  font-family: 'Zen Maru Gothic', sans-serif;
}

.flow1 .title strong {
  position: relative;
  z-index: 1;
}

.flow1 .title strong::before {
  content: '';
  background: #fddd6e;
  position: absolute;
  bottom: -0.5rem;
  left: 0;
  right: 0;
  margin: auto;
  height: 2.3rem;
  z-index: -1;
}

.flow1 .flow-wrap {
  text-align: center;
}

.flow1 .subtitle {
  font-size: min(5.13vw, 28px);
  font-weight: bold;
  font-family: 'Zen Maru Gothic', sans-serif;
  letter-spacing: 0.3em;
  position: relative;
  margin-bottom: 2.4rem;
  display: inline-block;
}

.flow1 .subtitle::before {
  content: '';
  height: 2.1rem;
  width: 0.2rem;
  position: absolute;
  left: -2.5rem;
  top: 0;
  bottom: 0;
  -webkit-transform: skew(25deg, 25deg);
      -ms-transform: skew(25deg, 25deg);
          transform: skew(25deg, 25deg);
  background: #46341E;
  margin: auto;
}

.flow1 .subtitle::after {
  content: '';
  height: 2.1rem;
  width: 0.2rem;
  position: absolute;
  right: -1.5rem;
  top: 0;
  bottom: 0;
  -webkit-transform: skew(-25deg, -25deg);
      -ms-transform: skew(-25deg, -25deg);
          transform: skew(-25deg, -25deg);
  background: #46341E;
  margin: auto;
}

.flow1 .flex {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  gap: 1.5rem;
}

.flow1 .summary.green {
  background-color: #B71717;
  padding: 1.3rem 1.5rem;
  color: #fff !important;
  letter-spacing: 0.01em;
  font-size: min(3.6vw, 21px);
  position: relative;
}

.flow1 .summary.green::before {
  content: '';
  background: url('./img/flow01.png') no-repeat;
  background-size: cover;
  background-position: top;
  width: 3.7rem;
  height: 12rem;
  display: block;
  position: absolute;
  left: 0;
  right: 0;
  bottom: -11.2rem;
  margin: auto;
  z-index: 4;
}

.flow1 .summary.brown {
  background-color: #46341E;
  padding: 1.3rem 1.5rem;
  color: #fddd6e;
  letter-spacing: 0.01em;
  font-size: min(3.6vw, 21px);
  position: relative;
}

.flow1 .summary.brown::before {
  content: '';
  background: url('./img/flow02.png') no-repeat;
  background-size: cover;
  background-position: top;
  width: 3.7rem;
  height: 12rem;
  display: block;
  position: absolute;
  left: 0;
  right: 0;
  bottom: -11.2rem;
  margin: auto;
  z-index: 4;
}

.flow1 .flow-title {
  font-size: min(3.59vw, 18px);
  font-weight: bold;
  position: absolute;
  top: -1.7rem;
  left: 0;
  border-radius: 1.9rem;
  letter-spacing: 0.01em;
  width: 27.7rem;
}

.flow1 .flow-box {
  background-color: #fff;
  border-radius: 1.6rem;
  padding: 2.2rem;
  display: block;
  position: relative;
  width: 70.7rem;
  z-index: 4;
  margin: 0 auto;
}

.flow1 .flow-head {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 1rem;
}

.flow1 .flow-head img {
  display: block;
  width: 4.7rem;
}

.flow1 .flow-subtitle {
  font-size: min(3.59vw, 18px);
  font-weight: bold;
  letter-spacing: 0.01em;
  color: #B71717;
  padding-bottom: 1.5rem;
  border-bottom: 0.1rem dashed #B71717;
  width: 100%;
  text-align: left;
  position: relative;
}

.flow1 .flow-foot {
  margin-top: 1.6rem;
}

.flow1 .flow-text {
  font-size: min(3.6vw, 16px);
  line-height: 1.6;
  font-weight: bold;
  letter-spacing: 0.01em;
  text-align: left;
}

.flow1 .flow-text a {
  color: #B71717;
  text-decoration: underline;
}

.flow1 .flow-note {
  font-size: min(3.45vw, 14px);
  line-height: 1.8;
  font-weight: 400;
  letter-spacing: 0.01em;
  text-align: left;
}

.flow1 .flow-note a {
  color: #B71717;
  text-decoration: underline;
}

.flow1 .flow-list {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
}

.flow1 .flow-list li {
  font-size: min(3.45vw, 14px);
  font-weight: bold;
  line-height: 1.8;
  letter-spacing: 0.01em;
  text-align: left;
}

.flow1 .inner {
  max-width: 90.5rem;
}

.flow1 .flow-top {
  background-color: #FFF5F5;
  text-align: center;
  margin-top: 4.4rem;
  border-top: 0.1rem solid #B71717;
}

.flow1 .flow-top .inner {
  position: relative;
  padding: 6.8rem 0 11.3rem;
}

.flow1 .flow-top .flow-title {
  border: 0.1rem solid #B71717;
  background-color: #FFF5F5;
  color: #B71717;
}

.flow1 .flow-center {
  background-color: #FFF5F5;
  position: relative;
  text-align: center;
}

.flow1 .flow-center .inner {
  position: relative;
  padding: 4.1rem 0 13.8rem;
}

.flow1 .flow-center .flow-title {
  border: 0.1rem solid #eaa116;
  background-color: #fff9e2;
  color: #eaa116;
  z-index: 3;
}

.flow1 .flow-center::before {
  content: '';
  background-color: #fff9e2;
  width: 60%;
  height: 100%;
  display: block;
  position: absolute;
  top: 0;
  left: 0;
  border-top: 0.1rem solid #eaa116;
  z-index: 1;
}

.flow1 .flow-bottom {
  background-color: #f6f3ea;
  margin-top: 3.2rem;
  border-top: 0.1rem solid #707070;
}

.flow1 .flow-bottom .inner {
  position: relative;
  padding: 8.5rem 0 12.3rem;
}

.flow1 .flow-bottom .flow-title {
  border: 0.1rem solid #46341E;
  background-color: #f9f8f3;
  color: #46341E;
}

.flow-faq {
  border: 1px solid #46341E;
  background-color: #fff;
  font-size: min(3.45vw, 14px);
  letter-spacing: 0.01em;
  line-height: 1.5;
  font-weight: bold;
  display: inline-block;
  padding: 1.3rem 1.8rem;
  margin-top: 2.8rem;
  z-index: 4;
  position: relative;
  text-align: center;
}

.flow-faq.center {
  margin-left: auto;
  z-index: 2;
  position: relative;
  padding: 1.3rem 3.9rem;
  margin-right: 15%;
}

.flow-box.flow02 {
  margin-left: 0;
  margin-right: auto;
}

.flow-box.flow03 {
  margin-left: 0;
  margin-right: auto;
  margin-top: 7.2rem;
}

.flow-box.flow04 {
  margin-top: 7.6rem;
}

.flow-box.flow05 {
  margin-left: 0;
  margin-right: auto;
  margin-top: 7.7rem;
}

.flow-box.flow07 {
  margin-top: 19.9rem;
}

.flow-box.flow09,
.flow-box.flow10,
.flow-box.flow11 {
  margin-top: 8rem;
}

.line01,
.line02,
.line03 {
  position: relative;
}

.flow-content01 {
  position: relative;
  display: inline-block;
  text-align: right;
}

.flow-content01::before {
  content: '';
  background: url('./img/flow03.png') no-repeat;
  background-size: cover;
  background-position: top;
  width: 10rem;
  height: 33rem;
  display: block;
  position: absolute;
  left: 32%;
  bottom: -80%;
  margin: auto;
  z-index: 3;
}

.flow-content01::after {
  content: '';
  background: url('./img/flow14.png') no-repeat;
  background-size: cover;
  background-position: top;
  width: 2.5rem;
  height: 13rem;
  display: block;
  position: absolute;
  left: auto;
  right: 28%;
  top: 30%;
  margin: auto;
  z-index: 3;
}

.flow-content02 {
  position: relative;
  display: inline-block;
  margin-right: 14%;
}

.flow-content02::before {
  content: '';
  background: url('./img/flow05.png') no-repeat;
  background-size: cover;
  background-position: top;
  width: 25.6rem;
  height: 73.2rem;
  display: block;
  position: absolute;
  top: 74%;
  left: 0;
  right: -109%;
  margin: auto;
  z-index: 3;
}

.flow-content02::after {
  content: '';
  background: url('./img/flow04.png') no-repeat;
  background-size: cover;
  background-position: top;
  width: 10rem;
  height: 19.5rem;
  display: block;
  position: absolute;
  right: 49%;
  bottom: -18.5rem;
  margin: auto;
  z-index: 3;
}

.flow-content03 {
  position: relative;
  display: inline-block;
  width: 100%;
  text-align: left;
}

.flow-content03::before {
  content: '';
  background: url('./img/flow01.png') no-repeat;
  background-size: cover;
  background-position: top;
  width: 3.7rem;
  height: 12rem;
  display: block;
  position: absolute;
  left: 44%;
  bottom: -8rem;
  margin: auto;
  z-index: 4;
}

.flow-content03::after {
  content: '';
  background: url('./img/flow06.png') no-repeat;
  background-size: cover;
  background-position: top;
  width: 3.7rem;
  height: 12rem;
  display: block;
  position: absolute;
  right: 41%;
  bottom: -8rem;
  margin: auto;
  z-index: 3;
}

.flow-content04 {
  position: relative;
  display: inline-block;
  width: 100%;
}

.flow-content04::before {
  content: '';
  background: url('./img/flow01.png') no-repeat;
  background-size: cover;
  background-position: top;
  width: 3.7rem;
  height: 12rem;
  display: block;
  position: absolute;
  left: 44%;
  bottom: -8rem;
  margin: auto;
  z-index: 4;
}

.flow-content04::after {
  content: '';
  background: url('./img/flow06.png') no-repeat;
  background-size: cover;
  background-position: top;
  width: 3.7rem;
  height: 12rem;
  display: block;
  position: absolute;
  right: 41%;
  bottom: -8rem;
  margin: auto;
  z-index: 3;
}

.flow-content05 {
  position: relative;
  display: inline-block;
  width: 100%;
}

.flow-content05::before {
  content: '';
  background: url('./img/flow01.png') no-repeat;
  background-size: cover;
  background-position: top;
  width: 3.7rem;
  height: 12rem;
  display: block;
  position: absolute;
  left: 44%;
  bottom: -8rem;
  margin: auto;
  z-index: 4;
}

.flow-content05::after {
  content: '';
  background: url('./img/flow06.png') no-repeat;
  background-size: cover;
  background-position: top;
  width: 3.7rem;
  height: 12rem;
  display: block;
  position: absolute;
  right: 41%;
  bottom: -8rem;
  margin: auto;
  z-index: 3;
}

.flow-content05-inner {
  position: relative;
  display: inline-block;
  width: 100%;
}

.flow-content05-inner::before {
  content: '';
  background: url('./img/flow12.png') no-repeat;
  background-size: cover;
  background-position: center;
  width: 19.6rem;
  height: 63.2rem;
  display: block;
  position: absolute;
  bottom: -230%;
  right: 6%;
  margin: auto;
  z-index: 3;
}

.flow-content06 {
  position: relative;
  display: inline-block;
  width: 100%;
}

.flow-content06::before {
  content: '';
  background: url('./img/flow08.png') no-repeat;
  background-size: cover;
  background-position: top;
  width: 4.3rem;
  height: 32rem;
  display: block;
  position: absolute;
  left: 44%;
  bottom: -21rem;
  margin: auto;
  z-index: 1;
}

.flow-content06::after {
  content: '';
  background: url('./img/flow07.png') no-repeat;
  background-size: cover;
  background-position: top;
  width: 3.7rem;
  height: 32rem;
  display: block;
  position: absolute;
  right: 41%;
  bottom: -21rem;
  margin: auto;
  z-index: 1;
}

.flow-content06-inner {
  position: relative;
  display: inline-block;
  width: 100%;
}

.flow-content06-inner::before {
  content: '';
  background: url('./img/flow13.png') no-repeat;
  background-size: cover;
  background-position: center;
  width: 21.2rem;
  height: 18.4rem;
  display: block;
  position: absolute;
  left: -38%;
  right: 0;
  bottom: -168%;
  margin: auto;
  z-index: 1;
}

.flow-content07 {
  position: relative;
  display: inline-block;
  width: 100%;
}

.flow-content07::before {
  content: '';
  background: url('./img/flow11.png') no-repeat;
  background-size: cover;
  background-position: center;
  width: 4.3rem;
  height: 42rem;
  display: block;
  position: absolute;
  left: 44%;
  bottom: -30rem;
  margin: auto;
  z-index: 1;
}

.flow-content07::after {
  content: '';
  background: url('./img/flow10.png') no-repeat;
  background-size: cover;
  background-position: center;
  width: 4.3rem;
  height: 42rem;
  display: block;
  position: absolute;
  right: 41%;
  bottom: -30rem;
  margin: auto;
  z-index: 1;
}

.flow-content07-inner {
  position: relative;
  display: inline-block;
  width: 100%;
}

.flow-content07-inner::before {
  content: '';
  background: url('./img/flow09.png') no-repeat;
  background-size: cover;
  background-position: center;
  width: 4.3rem;
  height: 42rem;
  display: block;
  position: absolute;
  right: 23%;
  bottom: -30rem;
  margin: auto;
  z-index: 1;
}

.flow-content08 {
  position: relative;
  display: inline-block;
  width: 100%;
}

.flow-content08::before {
  content: '';
  background: url('./img/flow01.png') no-repeat;
  background-size: cover;
  background-position: top;
  width: 4.3rem;
  height: 12rem;
  display: block;
  position: absolute;
  left: 44%;
  bottom: -8rem;
  margin: auto;
  z-index: 4;
}

.flow-content08::after {
  content: '';
  background: url('./img/flow06.png') no-repeat;
  background-size: cover;
  background-position: top;
  width: 4.3rem;
  height: 12rem;
  display: block;
  position: absolute;
  right: 41%;
  bottom: -8rem;
  margin: auto;
  z-index: 3;
}

.flow-content08-inner {
  position: relative;
  display: inline-block;
  width: 100%;
}

.flow-content08-inner::before {
  content: '';
  background: url('./img/flow02.png') no-repeat;
  background-size: cover;
  background-position: top;
  width: 4.3rem;
  height: 12rem;
  display: block;
  position: absolute;
  right: 23%;
  bottom: -8rem;
  margin: auto;
  z-index: 4;
}

.flow-content09 {
  position: relative;
  display: inline-block;
  width: 100%;
}

.flow-content09::before {
  content: '';
  background: url('./img/flow01.png') no-repeat;
  background-size: cover;
  background-position: top;
  width: 4.3rem;
  height: 12rem;
  display: block;
  position: absolute;
  left: 44%;
  bottom: -8rem;
  margin: auto;
  z-index: 4;
}

.flow-content09::after {
  content: '';
  background: url('./img/flow06.png') no-repeat;
  background-size: cover;
  background-position: top;
  width: 4.3rem;
  height: 12rem;
  display: block;
  position: absolute;
  right: 41%;
  bottom: -8rem;
  margin: auto;
  z-index: 3;
}

.flow-content09-inner {
  position: relative;
  display: inline-block;
  width: 100%;
}

.flow-content09-inner::before {
  content: '';
  background: url('./img/flow02.png') no-repeat;
  background-size: cover;
  background-position: top;
  width: 4.3rem;
  height: 12rem;
  display: block;
  position: absolute;
  right: 23%;
  bottom: -8rem;
  margin: auto;
  z-index: 4;
}

.flow-content10 {
  position: relative;
  display: inline-block;
  width: 100%;
}

.flow-content10::before {
  content: '';
  background: url('./img/flow01.png') no-repeat;
  background-size: cover;
  background-position: top;
  width: 4.3rem;
  height: 12rem;
  display: block;
  position: absolute;
  left: 44%;
  bottom: -8rem;
  margin: auto;
  z-index: 4;
}

.flow-content10::after {
  content: '';
  background: url('./img/flow06.png') no-repeat;
  background-size: cover;
  background-position: top;
  width: 4.3rem;
  height: 12rem;
  display: block;
  position: absolute;
  right: 41%;
  bottom: -8rem;
  margin: auto;
  z-index: 3;
}

.flow-content10-inner {
  position: relative;
  display: inline-block;
  width: 100%;
}

.flow-content10-inner::before {
  content: '';
  background: url('./img/flow02.png') no-repeat;
  background-size: cover;
  background-position: top;
  width: 4.3rem;
  height: 12rem;
  display: block;
  position: absolute;
  right: 23%;
  bottom: -8rem;
  margin: auto;
  z-index: 4;
}

@media screen and (max-width: 768px) {
  .flow1 {
    padding: calc(21.25vw) 0 0;
  }

  .flow1 .title {
    padding-bottom: calc(7.29vw);
    font-size: calc(4.58vw);
  }

  .flow1 .title strong::before {
    bottom: calc(-0.21vw);
    height: calc(3.13vw);
  }

  .flow1 .flex {
    gap: calc(0.83vw);
    margin: auto;
    padding: 0 calc(4.17vw);
  }

  .flow1 .summary.green,
  .flow1 .summary.brown {
    padding: calc(2.29vw) 0;
    font-size: calc(3.52vw);
    width: 100%;
    text-align: center;
  }
  
  .flow1 .summary.green::before,
  .flow1 .summary.brown::before {
    height: calc(27.08vw);
    width: calc(8.13vw);
    bottom: -230%;
  }

  .flow1 .flow-top {
    margin-top: calc(7.5vw);
    text-align: right;
  }

  .flow1 .flow-top .inner {
    padding: calc(15.1vw) calc(4.17vw) calc(33.08vw);
    width: 100%;
  }

  .flow1 .flow-title {
    font-size: calc(3vw);
    width: auto;
    padding: 0 calc(5.21vw);
    text-align: center;
    z-index: 4;
    top: calc(-2.71vw);
    left: 2rem;
  }

  .flow-content01::before,
  .flow-content01::after {
    content: none;
  }

  .flow1 .flow-box {
    width: 100%;
    padding: calc(4.17vw) calc(3.13vw);
  }

  .flow1 .flow-head {
    gap: calc(0.63vw);
  }

  .flow1 .flow-subtitle {
    font-size: calc(3.33vw);
  }

  .flow1 .flow-text {
    font-size: calc(2.92vw);
  }

  .flow1 .flow-note {
    font-size: calc(2.5vw);
  }

  .flow-faq {
    margin-left: 0;
    position: absolute;
    right: 0;
    min-width: 35%;
    margin-top: calc(6.67vw);
    font-size: calc(2.5vw);
    display: block;
  }

  .flow-faq.center {
    margin-top: calc(13.85vw);
    min-width: 20%;
    display: inline-block;
    margin-right: 0;
    margin-left: -57%;
    right: auto;
    padding: calc(2.29vw) calc(1.88vw);
  }

  .flow-box.flow02 {
    margin-left: 0;
    width: 90%;
  }

  .flow-box.flow03 {
    margin-left: 0;
    width: 90%;
    margin-top: calc(13.54vw);
  }

  .flow-box.flow04 {
    margin-top: calc(12.5vw);
  }

  .flow-box.flow05 {
    margin-left: 0;
    width: 90%;
    margin-top: calc(12.5vw);
  }

  .flow1 .flow-top .inner::before {
    content: "";
    background: url('./img/flow03_sp.png') no-repeat;
    background-size: cover;
    background-position: top;
    position: absolute;
    left: 23%;
    right: auto;
    top: 50%;
    bottom: auto;
    width: calc(8.83vw);
    height: calc(59.9vw);
    z-index: 3;
  }

  .flow1 .flow-top .inner::after {
    content: "";
    background: url('./img/flow14.png') no-repeat;
    background-size: cover;
    background-position: top;
    display: block;
    position: absolute;
    left: 71%;
    right: auto;
    top: 49%;
    margin: auto;
    z-index: 3;
    height: calc(20.08vw);
    width: calc(5.13vw);
  }

  .flow1 .flow-center::before {
    width: 80%;
  }

  .flow-content01::before {
    content: none;
  }
  
  .flow-content01::after {
    content: none;
  }

  .flow-content02 {
    display: block;
    height: calc(11.8vw);
  }

  .flow-content02::before {
    background: url("./img/flow05_sp.png") no-repeat;
    background-size: calc(21.25vw);
    background-position: top;
    right: -15%;
    left: auto;
    top: auto;
    bottom: -1390%;
    height: calc(162vw);
    width: calc(21.25vw);
  }

  .flow-content02::after {
    right: 10%;
    top: 132%;
    bottom: auto;
    width: calc(20.83vw);
    height: calc(40.63vw);
  }

  .flow-content03,
  .flow-content04,
  .flow-content05,
  .flow-content06,
  .flow-content07,
  .flow-content08,
  .flow-content09,
  .flow-content10,
  .flow-content05-inner,
  .flow-content08-inner,
  .flow-content09-inner,
  .flow-content10-inner {
    display: inline-block;
  }

  .flow-content03::before {
    left: 20%;
    bottom: -40%;
    right: auto;
  }

  .flow-content03::after {
    left: auto;
    right: 40%;
    bottom: -40%;
  }

  .flow-content04::before {
    left: 20%;
    bottom: -23%;
    right: auto;
  }

  .flow-content04::after {
    left: auto;
    right: 40%;
    bottom: -23%;
  }

  .flow-content05::before {
    left: 20%;
    bottom: -28%;
    right: auto;
  }

  .flow-content05::after {
    left: auto;
    right: 40%;
    bottom: -28%;
  }

  .flow-content03::before,
  .flow-content03::after,
  .flow-content04::before,
  .flow-content04::after,
  .flow-content05::before,
  .flow-content05::after,
  .flow-content08::before,
  .flow-content08::after,
  .flow-content08-inner::before,
  .flow-content09::before,
  .flow-content09::after,
  .flow-content09-inner::before,
  .flow-content10::before,
  .flow-content10::after,
  .flow-content10-inner::before {
    height: calc(27.08vw);
    width: calc(8.13vw);
    background-size: calc(8.08vw);
  }

  .flow-content05-inner::before {
    content: "";
    background: url('./img/flow12_sp.png') no-repeat;
    background-size: calc(7.2vw);
    background-position: top;
    height: calc(240vw);
    width: calc(8.33vw);
    right: 1%;
    left: auto;
    top: auto;
    bottom: calc(-236vw);
  }

  .flow-content06::before {
    background: url('./img/flow01.png') no-repeat;
    background-size: cover;
    background-position: center;
    left: 20%;
    right: auto;
    top: 84%;
    bottom: auto;
    height: calc(20.83vw);
    width: calc(7.65vw);
  }

  .flow-content06::after {
    background: url('./img/flow07_sp.png') no-repeat;
    background-size: cover;
    background-position: top;
    left: auto;
    right: 40%;
    top: 76%;
    bottom: auto;
    height: calc(83.33vw);
    width: calc(8.5vw);
  }

  .flow-content06-inner {
    display: block;
    height: calc(11.8vw);
  }

  .flow-content06-inner::before {
    content: "";
    background: url('./img/flow13_sp.png') no-repeat;
    background-size: cover;
    background-position: top;
    bottom: -412%;
    left: 6%;
    right: auto;
    width: calc(17.9vw);
    height: calc(41.8vw);
  }

  .flow-content06-inner::after {
    content: "";
    background: url('./img/flow08_sp.png') no-repeat;
    background-size: cover;
    background-position: top;
    display: block;
    position: absolute;
    top: 190%;
    left: 23%;
    width: calc(10.13vw);
    height: calc(54.17vw);
    z-index: 1;
  }

  .flow-box.flow07 {
    margin-top: calc(55.2vw);
    width: 90%;
    margin-right: auto;
    margin-left: 0;
  }

  .flow-content07::before,
  .flow-content07::after {
    width: calc(7.92vw);
    height: calc(66.7vw);
  }

  .flow-content07::before {
    background-position: bottom;
    left: auto;
    left: 29%;
    top: 87%;
    bottom: auto;
    display: block;
    position: absolute;
    margin: auto;
    z-index: 1;
  }

  .flow-content07::after {
    background-position: bottom;
    right: 40%;
    top: 87%;
    bottom: auto;
    display: block;
    position: absolute;
    margin: auto;
    z-index: 1;
  }

  .flow-content07-inner::before {
    content: none;
  }

  .flow-content08::before {
    bottom: calc(-15vw);
    left: 29%;
    right: auto;
    top: auto;
  }

  .flow-content08::after {
    bottom: calc(-15vw);
    left: auto;
    right: 40%;
    top: auto;
  }

  .flow-content08-inner::before {
    bottom: calc(-15vw);
    top: auto;
    left: auto;
    right: 1%;
  }

  .flow-content09::before {
    bottom: calc(-15vw);
    left: 29%;
    right: auto;
    top: auto;
  }

  .flow-content09::after {
    bottom: calc(-15vw);
    left: auto;
    right: 40%;
    top: auto;
  }

  .flow-content09-inner::before {
    bottom: calc(-15vw);
    top: auto;
    left: auto;
    right: 1%;
  }

  .flow-content10::before {
    bottom: calc(-15vw);
    left: 29%;
    right: auto;
    top: auto;
  }

  .flow-content10::after {
    bottom: calc(-15vw);
    left: auto;
    right: 40%;
    top: auto;
  }

  .flow-content10-inner::before {
    bottom: calc(-15vw);
    top: auto;
    left: auto;
    right: 1%;
  }

  .flow1 .flow-center .inner {
    padding: calc(8.5vw) calc(4.17vw) calc(18vw);
  }

  .flow1 .flow-bottom {
    margin-top: calc(6.46vw);
  }

  .flow1 .flow-bottom .inner {
    padding: calc(9.54vw) calc(4vw) calc(17.2vw);
  }
}

@media screen and (max-width: 450px) {
  .flow-content02::before {
    background-size: calc(22.25vw);
    bottom: calc(-164vw);
    height: calc(162vw);
    width: calc(21.25vw);
  }
}

@media screen and (max-width: 390px) {
  .flow-content02::before {
    background-size: calc(23vw);
    bottom: calc(-166vw);
    height: calc(164vw);
  }
}

@media screen and (max-width: 485px) {
  .flow-content05-inner::before {
    background-size: calc(7.5vw);
    bottom: calc(-247vw);
    height: calc(250vw);
    width: calc(8.33vw);
  }
}

@media screen and (max-width: 458px) {
  .flow-content05-inner::before {
    background-size: calc(7.8vw);
    bottom: calc(-248vw);
    height: calc(252vw);
  }
}

@media screen and (max-width: 536px) {
  .flow-content08-inner::before,
  .flow-content08::after,
  .flow-content08::before {
    bottom: -55%;
    background-size: calc(7.5vw);
    height: calc(29vw);
  }
}

@media screen and (max-width: 536px) {
  .flow-content09-inner::before,
  .flow-content09::after,
  .flow-content09::before {
    bottom: -39%;
    background-size: calc(7.5vw);
    height: calc(29vw);
  }
}

@media screen and (max-width: 530px) {
  .flow-content10-inner::before,
  .flow-content10::after,
  .flow-content10::before {
    bottom: calc(-23vw);
    background-size: calc(7.5vw);
    height: calc(29vw);
  }
}

@media screen and (max-width: 768px) {
  .scroll-hint-icon-wrap {
    z-index: 100;
  }

  .pet-price-table .scroll-hint-icon {
    background: unset;
    width: 100%;
    height: 100%;
    top: 0;
    bottom: 0;
    left: 0;
    right: 0;
    margin: auto;
  }

  .pet-price-table .scroll-hint-icon:before {
    background-position: center center;
    background-repeat: no-repeat;
    background-image: url("./img/scroll-icon.png");
    width: 81px;
    height: 81px;
    position: absolute;
    top: 0;
    bottom: 0;
    left: 0;
    right: 0;
    margin: auto;
  }

  .scroll-hint-icon:after {
    background: rgba(0, 0, 0, 0.1);
    width: 100% !important;
    height: 100% !important;
    left: 20px !important;
    top: 0 !important;
    margin-left: 0 !important;
    background-image: none !important;
    transition-delay: unset !important;
  }

  .pet-price-table .scroll-hint-icon-wrap.is-active .scroll-hint-icon:before {
    animation: none;
    animation-iteration-count: unset;
  }

  .pet-price-table .scroll-hint-icon-wrap.is-active .scroll-hint-icon:after {
    animation: none;
    animation-iteration-count: unset;
  }

  .scroll-hint-text {
    display: none;
  }

  .pet-price-table .scroll-hint-icon-wrap.is-active .scroll-hint-icon {
    opacity: 1;
  }

  .contentx04.area_price .scroll-hint-shadow-wrap:has(.scroll-hint.is-right-scrollable)::after,
  .contentx04.area_price .scroll-hint-shadow-wrap.is-right-scrollable::after {
    content: none !important;
  }
}

.visually-hidden {
  position: absolute !important;
  width: 1px;
  height: 1px;
  margin: -1px;
  padding: 0;
  border: 0;
  clip: rect(0 0 0 0);
  overflow: hidden;
}



/* 25.10.15追記分 */
.page-dogsitter .cmn_price_request_btn,
.page-catsitter .cmn_price_request_btn,
.page-littlecritter .cmn_price_request_btn{
  padding:100px 0;
}

.cmn_price_request_btn .heading{
  margin-top: 0;
  font-size: min(3.59vw, 20px);
}

.cmn_price_request_btn .heading .highlight{
  display: inline-block;
  color:#B71717;
}

.c-areaInfo .subtitle{
  font-size: min(6.15vw, 32px);
  text-align: center;
  line-height: 1.1;
  position: relative;
  z-index: 1;
  color: #46341E;
  padding-bottom: 12px;
}

.c-areaInfo .en{
    display: block;
    color: #B71717;
    font-weight: 700;
    font-size: min(3.45vw, 20px);
    letter-spacing: 0.3em;
    padding-bottom: 30px;
    text-align: center;
}

.content03 li img{
  width:30px;
}

.contentx10_wrap{
  width: 100%;
  background-color:#ffffff;
}

.dogsitter .bgcr .cmn-btn_01,
.catsitter .bgcr .cmn-btn_01,
.littlecritter .bgcr .cmn-btn_01{
  margin:100px auto 0;
}

.catsitter .bgcr .bgte,
.littlecritter .bgcr .bgte{
    padding: 50px!important;
}

.voice .cmn_price_request_btn{
  padding:0 0 100px;
}

.page-staff-archive .p-areaStaff:after{
  display:none;
}

.page-staff-archive #main{
  margin:0;
}

.page-staff-archive .p-areaStaff.area3 .c-areaStaff__wrap{
    background-color: #ffffff;
}

.page-staff-archive .p-areaStaff.area3 .c-areaStaff__box{
    width: 48%;
    margin:0 0 0 auto;
}

.page-staff-archive .p-areaStaff.area3 .c-areaStaff__detail{
  max-width: 1200px;
}

.page-staff-archive .p-areaStaff.area3 .en{
  padding-bottom:10px;
  padding-top:20px;
}

.staffSingle .p-staffProfile__greeting{
  font-size: min(3.45vw, 20px);
    font-weight: bold;
    line-height: 1.6;
    margin-bottom:50px;
}

.staffSingle  .c-areaStaff__name_wrap{
    display:flex;
    align-items: flex-end;
}

.staffSingle  .c-areaStaff__name_wrap .c-areaStaff__name{
    font-size: min(3.45vw, 24px);
    font-weight: bold;
    line-height: 1.6;
    color:#B71717;
}

.staffSingle  .c-areaStaff__name_wrap .c-areaStaff__name.en{
    font-size: min(3.45vw, 17px);
    font-weight: bold;
    line-height: 1.6;
    color:#B71717;
    margin-left:15px;
}

.staffSingle .p-staffProfile__city{
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 10px;
  margin-top:12px;
}

.staffSingle .p-staffProfile__city li a{
        position: relative;
        display: flex;
        align-items: center;
        justify-content: center;
        width: 100%;
        height: 42px;
        padding: 0 15px;
        font-size: 16px;
        font-weight: bold;
        text-decoration: none;
        border-radius: 4px;
        transition: all 0.3s ease;
        color: #ffffff !important;
        background-color: #B71717;
}

.staffSingle .p-staffProfile__city li a:after{
        content: "";
        position: absolute;
        right: 15px;
        top: 50%;
        transform: translateY(-50%);
        width: 0;
        height: 0;
        border-style: solid;
        border-width: 6px 0 6px 8px;
        transition: right 0.3s ease;
        border-color: transparent transparent transparent #fff;
}

.staffSingle .p-staffProfile__comment{
  margin-top:40px;
}

.staffSingle_cta{
  background-color:#FFF5F5;
  width:100%;
  padding:60px 0 60px;
  text-align: center;
}

.staffSingle_cta .heading{
    font-size: min(3.6vw, 18px);
    font-weight: bold;
    letter-spacing: 0.01em;
    font-family: 'Zen Maru Gothic', sans-serif;
    color:#B71717;
}

.staffSingle_cta .heading strong{
    display: block;
    font-size: min(3.59vw, 26px);
    color: #46341E;
}

.staffSingle_cta .c-areaStaff__box{
    display: flex;
    align-items: center;
    gap: 6px;
    max-width:660px;
    margin: 20px auto 0;
}

.staffSingle_cta .c-areaStaff__box .c-areaStaff__read,
.staffSingle_cta .c-areaStaff__box .c-areaStaff__contact{
    width:320px;
    position: relative;
    display: flex;
    align-items: center;
    justify-content: center;
    height: 60px;
    padding: 0 40px;
    font-size: 16px;
    font-weight: bold;
    text-decoration: none;
    border-radius: 100vmax;
    transition: all 0.3s ease;
    color: #ffffff !important;
    background-color: #B71717;
}

.staffSingle_cta .c-areaStaff__box .c-areaStaff__contact{
  background-color:#EAA116;
}

.staffSingle_cta .c-areaStaff__box .c-areaStaff__read:after,
.staffSingle_cta .c-areaStaff__box .c-areaStaff__contact:after{
        border-color: transparent transparent transparent #fff;
        content: "";
        position: absolute;
        right: 15px;
        top: 50%;
        transform: translateY(-50%);
        width: 0;
        height: 0;
        border-style: solid;
        border-width: 6px 0 6px 8px;
        transition: right 0.3s ease;
}

.staffSingle_cta .c-areaStaff__box .c-areaStaff__contact img{
    display: block;
    width: 19px;
    margin-right:6px;
}

.staffSingleWrap .content08{
  background-color:#ffffff;
}

.staffSingleWrap .content08 .mainTit:after{
  display:none;
}

.staffSingleWrap .c-areaVoice__list.slick-initialized .slick-track {
	display: flex !important;
	justify-content: center;
}

.staffSingleWrap .p-areaStaff.area3{
  background-color:#F5F4EF;
}

.staffSingleWrap .p-areaStaff.area3 .c-areaStaff>h3{
  color: #46341E;
}

.staffSingleWrap .p-areaStaff.area3 .c-areaStaff__wrap{
  background-color:#F5F4EF;
  padding:62px 0 0px;
}

.staffSingleWrap .content08 .c-areaStaff__btn{
  margin-top:60px;
}

.staffSingleWrap .c-areaStaff__btn{
  background-color:#B71717;
}