@charset "UTF-8";

/*! modern-normalize v1.1.0 | MIT License | https://github.com/sindresorhus/modern-normalize */

/*
Document
========
*/

/**
Use a better box model (opinionated).
*/

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

/**
1. Correct the line height in all browsers.
2. Prevent adjustments of font size after orientation changes in iOS.
3. Use a more readable tab size (opinionated).
*/

html {
  line-height: 1.15;
  /* 1 */
  -webkit-text-size-adjust: 100%;
  /* 2 */
  -moz-tab-size: 4;
  /* 3 */
  -o-tab-size: 4;
     tab-size: 4;
  /* 3 */
}

/*
Sections
========
*/

/**
1. Remove the margin in all browsers.
2. Improve consistency of default fonts in all browsers. (https://github.com/sindresorhus/modern-normalize/issues/3)
*/

body {
  margin: 0;
  /* 1 */
  font-feature-settings: "palt";
  font-family: "Roboto", "Noto Sans JP", sans-serif;
  /* 2 */
}

/*
Grouping content
================
*/

/**
1. Add the correct height in Firefox.
2. Correct the inheritance of border color in Firefox. (https://bugzilla.mozilla.org/show_bug.cgi?id=190655)
*/

hr {
  height: 0;
  /* 1 */
  color: inherit;
  /* 2 */
}

/*
Text-level semantics
====================
*/

/**
Add the correct text decoration in Chrome, Edge, and Safari.
*/

abbr[title] {
  -webkit-text-decoration: underline dotted;
          text-decoration: underline dotted;
}

/**
Add the correct font weight in Edge and Safari.
*/

b,
strong {
  font-weight: bolder;
}

/**
1. Improve consistency of default fonts in all browsers. (https://github.com/sindresorhus/modern-normalize/issues/3)
2. Correct the odd 'em' font sizing in all browsers.
*/

code,
kbd,
samp,
pre {
  font-family: "Roboto", "Noto Sans JP", sans-serif;
  /* 1 */
  font-size: 1em;
  /* 2 */
}

/**
Add the correct font size in all browsers.
*/

small {
  font-size: 80%;
}

/**
Prevent 'sub' and 'sup' elements from affecting the line height in all browsers.
*/

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

sub {
  bottom: -0.25em;
}

sup {
  top: -0.5em;
}

/*
Tabular data
============
*/

/**
1. Remove text indentation from table contents in Chrome and Safari. (https://bugs.chromium.org/p/chromium/issues/detail?id=999088, https://bugs.webkit.org/show_bug.cgi?id=201297)
2. Correct table border color inheritance in all Chrome and Safari. (https://bugs.chromium.org/p/chromium/issues/detail?id=935729, https://bugs.webkit.org/show_bug.cgi?id=195016)
*/

table {
  text-indent: 0;
  /* 1 */
  border-color: inherit;
  /* 2 */
}

/*
Forms
=====
*/

/**
1. Change the font styles in all browsers.
2. Remove the margin in Firefox and Safari.
*/

button,
input,
optgroup,
select,
textarea {
  font-family: "Roboto", "Noto Sans JP", sans-serif;
  /* 1 */
  font-size: 100%;
  /* 1 */
  line-height: 1.15;
  /* 1 */
  margin: 0;
  /* 2 */
}

/**
Remove the inheritance of text transform in Edge and Firefox.
*/

button,
select {
  text-transform: none;
}

/**
Correct the inability to style clickable types in iOS and Safari.
*/

button,
[type=button],
[type=reset],
[type=submit] {
  -moz-appearance: button;
       appearance: button;
  -webkit-appearance: button;
}

/**
Remove the inner border and padding in Firefox.
*/

::-moz-focus-inner {
  border-style: none;
  padding: 0;
}

/**
Restore the focus styles unset by the previous rule.
*/

:-moz-focusring {
  outline: 1px dotted ButtonText;
}

/**
Remove the additional ':invalid' styles in Firefox.
See: https://github.com/mozilla/gecko-dev/blob/2f9eacd9d3d995c937b4251a5557d95d494c9be1/layout/style/res/forms.css#L728-L737
*/

:-moz-ui-invalid {
  box-shadow: none;
}

/**
Remove the padding so developers are not caught out when they zero out 'fieldset' elements in all browsers.
*/

legend {
  padding: 0;
}

/**
Add the correct vertical alignment in Chrome and Firefox.
*/

progress {
  vertical-align: baseline;
}

/**
Correct the cursor style of increment and decrement buttons in Safari.
*/

::-webkit-inner-spin-button,
::-webkit-outer-spin-button {
  height: auto;
}

/**
1. Correct the odd appearance in Chrome and Safari.
2. Correct the outline style in Safari.
*/

[type=search] {
  -moz-appearance: textfield;
       appearance: textfield;
  -webkit-appearance: textfield;
  /* 1 */
  outline-offset: -2px;
  /* 2 */
}

/**
Remove the inner padding in Chrome and Safari on macOS.
*/

::-webkit-search-decoration {
  -webkit-appearance: none;
}

/**
1. Correct the inability to style clickable types in iOS and Safari.
2. Change font properties to 'inherit' in Safari.
*/

::-webkit-file-upload-button {
  -webkit-appearance: button;
  /* 1 */
  font: inherit;
  /* 2 */
}

/*
Interactive
===========
*/

/*
Add the correct display in Chrome and Safari.
*/

summary {
  display: list-item;
}

html {
  scroll-behavior: smooth;
}

body {
  font-feature-settings: "palt";
  color: #574726;
  font-size: 14px;
  font-family: "Roboto", "Noto Sans JP", sans-serif;
  line-height: 1;
}

.link_map a {
  color: #0044CC;
}

a {
  color: inherit;
  text-decoration: inherit;
}

em {
  font-style: normal;
  font-weight: bold;
}

dt,
dd {
  margin: 0;
  padding: 0;
}

h1 {
  font-weight: bold;
  font-size: 19px;
  line-height: 1.5;
  margin: 0;
}

section h2 {
  border-bottom: 1px solid #ee827c;
  font-size: 18px;
  font-weight: bold;
  line-height: 1.5;
  margin: 0 0 20px;
  padding-bottom: 4px;
}

section h3:not(.not-h3-sty), .h3-sty {
  border-left: 4px solid #ee827c;
  font-size: 16px;
  font-weight: bold;
  line-height: 1.5;
  margin: 0 0 10px;
  padding-left: 10px;
}

h4 {
  font-weight: bold;
}

ol,
ul {
  list-style-type: none;
  margin: 0;
  padding: 0;
}

p {
  line-height: 1.5;
  margin: 0;
  padding: 0;
}

table {
  border-collapse: collapse;
}

.mb_10 {
  margin-bottom: 10px;
}

.mb_12 {
  margin-bottom: 12px;
}

.mb_14 {
  margin-bottom: 14px;
}

.mb_16 {
  margin-bottom: 16px;
}

.mb_18 {
  margin-bottom: 18px;
}

.mb_20 {
  margin-bottom: 20px;
}

.pt_20 {
  padding-top: 20px;
}

.visible_xs {
  display: block;
}

.visible_md {
  display: none;
}

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

@media (min-width: 768px) {
  body {
    font-size: 16px;
  }

  h1 {
    font-size: 24px;
  }

  section h2 {
    font-size: 24px;
    font-weight: normal;
    padding-bottom: 6px;
  }

  section h3:not(.title), .h3-sty {
    font-size: 17px;
    margin: 0 0 10px;
    padding-left: 10px;
  }

  .visible_xs {
    display: none;
  }

  .visible_md {
    display: block;
  }
}

.review-rating {
  display: flex;
  flex-wrap: nowrap;
  align-items: center;
  margin-bottom: 8px;
}

.review-rating .icon-stars {
  display: flex;
  margin-right: 5px;
  letter-spacing: -0.15rem;
  line-height: 1.2;
}

@media (min-width: 768px) {
  .review-rating .icon-stars {
    margin-right: 8px;
  }
}

.review-rating .icon-stars span {
  color: #f3931c;
  display: inline-flex;
  font-family: "material icons";
  font-size: 1.125rem;
  font-style: normal;
}

@media (min-width: 768px) {
  .review-rating .icon-stars span {
    font-size: 1.375rem;
  }
}

.review-rating__total {
  display: inline-flex;
  align-items: baseline;
  font-size: 0.875rem;
  font-style: normal;
  font-weight: bold;
  margin: 0;
}

@media (min-width: 768px) {
  .review-rating__total {
    font-size: 1rem;
  }
}

.review-rating__total em {
  font-size: 1rem;
  font-weight: bold;
}

@media (min-width: 768px) {
  .review-rating__total em {
    font-size: 1.125rem;
  }
}

.review-rating__link a {
  color: #444;
  text-decoration: none;
  position: relative;
  z-index: 110;
}

@media (min-width: 768px) {
  .review-rating__link a {
    display: inline-block;
  }
}

.review-rating__link a:visited {
  color: #4C2472;
}

.review-rating__link a:hover, .review-rating__link a:active {
  color: #f3931c;
}

.splide__track .review-rating__link {
  font-size: 0.875rem;
}

.ttl_inquiry_bnr {
  max-width: 600px;
  margin: 10px auto 20px;
}

#openReviewModal {
  display: block;
  align-items: center;
  justify-content: center;
  margin: 0 auto;
  max-width: 1024px;
}

#openReviewModal img {
  max-width: 100%;
}

#reviewModal {
  display: flex;
  height: 100vh;
  width: 100vw;
  position: fixed;
  top: 0;
  left: 0;
  align-items: center;
  justify-content: center;
  background-color: rgba(0, 0, 0, 0.5);
  z-index: 9999;
}

#reviewModal .reviewModal__inner {
  max-width: 1024px;
  display: block;
  border-color: #444;
  box-shadow: 0 0 5px 0 #444;
  background-color: #fff;
  max-height: 75vh;
  overflow-y: hidden;
  margin: 10px;
}

#reviewModal .reviewModal__ttl {
  display: flex;
  justify-content: space-between;
  padding: 8px 20px;
  background: linear-gradient(to bottom, #fff 0, #fff 50%, #fafafa 85%, #f7f7f7 100%);
  border-bottom: 1px solid #dedede;
}

#reviewModal .reviewModal__ttl h1 {
  border-left: 5px solid #ed544c;
  line-height: 1.3;
  padding-left: 8px;
}

#reviewModal .reviewModal__ttl #closeModal {
  display: flex;
  align-items: center;
  gap: 0.2em;
  background-color: #777;
  padding: 2px 12px;
  border-radius: 10px;
  color: #fff;
  cursor: pointer;
}

#reviewModal .reviewModal__cont {
  padding: 20px;
  height: calc(75vh - 45px);
  overflow-y: scroll;
}

@media (min-width: 768px) {
  #reviewModal .reviewModal__cont {
    height: calc(75vh - 48px);
  }
}

#reviewModal .reviewModal__cont > picture img {
  max-width: 100%;
  margin-bottom: 20px;
}

#reviewModal .reviewModal__lead {
  background-color: #fae3e1;
  padding: 18px;
  font-size: 1.1em;
  margin-bottom: 0.5em;
  line-height: 1.6;
}

@media (min-width: 768px) {
  #reviewModal .reviewModal__lead {
    font-size: 1.2em;
  }
}

@media (max-width: 767px) {
  #reviewModal .reviewModal__lead .pc {
    display: none;
  }
}

#reviewModal .reviewModal__presentFlow {
  border-bottom: 1px solid #ccc;
  margin: 20px 0 30px 0;
}

#reviewModal .reviewModal__presentFlowTtl {
  margin-bottom: 1.25rem;
  padding: 0.75rem;
  font-size: 1.125rem;
  font-weight: bold;
  color: #fff;
  text-align: center;
  background-color: #ed544c;
}

@media (min-width: 768px) {
  #reviewModal .reviewModal__presentFlowList {
    display: flex;
    justify-content: center;
    margin-bottom: 20px;
  }
}

#reviewModal .reviewModal__presentFlowItem {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  width: 100%;
  padding: 1.25rem;
  border: 2px solid #ed544c;
  border-radius: 0.25rem;
  text-align: center;
}

@media (min-width: 768px) {
  #reviewModal .reviewModal__presentFlowItem {
    width: calc(100% / 3);
    margin: 1.25rem;
  }
}

#reviewModal .reviewModal__presentFlowItem:not(:last-of-type) {
  margin-bottom: 1.25rem;
}

#reviewModal .reviewModal__presentFlowItem a {
  text-decoration: underline;
}

#reviewModal .reviewModal__presentFlowItem h3 {
  font-size: 1rem;
  font-weight: bold;
  border: none;
  margin: 0;
  padding: 0;
}

#reviewModal .reviewModal__presentFlowItem img {
  width: 120px;
  height: auto;
  margin: auto;
}

#reviewModal .reviewModal__presentFlowItem p {
  text-align: left;
}

.present__fv {
  aspect-ratio: 75/64;
  background: url(/img/gift/fv-sp.png) no-repeat left top/cover;
  margin: 0 auto 1.125rem;
  max-width: 1024px;
  position: relative;
}

@media screen and (min-width: 768px) {
  .present__fv {
    aspect-ratio: 205/84;
    background: url(/img/gift/fv-pc.png) no-repeat left top/cover;
    margin: 0 auto 1.5rem auto;
  }
}

.visually-hidden {
  position: absolute;
  width: 1px;
  height: 1px;
  overflow: hidden;
  clip: rect(0 0 0 0);
  white-space: nowrap;
  -webkit-clip-path: inset(50%);
          clip-path: inset(50%);
  margin: -1px;
  padding: 0;
  border: 0;
}

@media (max-width: 767px) {
  .\--pc-only {
    display: none !important;
  }
}

@media (min-width: 768px) {
  .\--sp-only {
    display: none !important;
  }
}

header {
  border-bottom: 1px solid #E08780;
  width: 100%;
  z-index: 100;
}

header .top-header {
  background-color: white;
  height: 68px;
  display: flex;
}

@media screen and (max-width: 768px) {
  header .top-header {
    height: 62px;
  }
}

header .top-header .top-header-inner {
  width: 100%;
  max-width: 1100px;
  margin: auto;
  display: flex;
  justify-content: space-between;
  align-items: center;
  padding-right: 12px;
}

header .top-header .top-header-inner .logo {
  width: 100%;
}

@media screen and (max-width: 768px) {
  header .top-header .top-header-inner .logo {
    max-width: 120px;
  }
}

header .top-header .top-header-inner .logo h1, header .top-header .top-header-inner .logo a {
  line-height: inherit;
  margin: 0;
  display: inline-block;
  height: 36px;
}

@media screen and (max-width: 768px) {
  header .top-header .top-header-inner .logo h1 img, header .top-header .top-header-inner .logo a img {
    margin-left: 12px;
    max-width: 200px;
  }
}

header .top-header .top-header-inner .header_info {
  width: 100%;
  display: flex;
  justify-content: right;
  position: relative;
  right: 0;
}

header .top-header .top-header-inner .header_info .header_consider {
  width: 100%;
  align-items: center;
  background: #fcf3e6;
  border: 1px dashed #efe1cc;
  border-radius: 50%;
  color: #574726;
  display: flex;
  font-size: 0.75rem;
  height: 40px;
  justify-content: center;
  line-height: 40px;
  position: relative;
  text-decoration: none;
  width: 40px;
}

header .top-header .top-header-inner .header_info .header_consider .txt_add {
  display: none;
}

header .top-header .top-header-inner .header_info .header_consider .txt_count {
  background: #ee827c;
  border-radius: 50%;
  color: #ffffff;
  height: 20px;
  line-height: 20px;
  position: absolute;
  right: -8px;
  text-align: center;
  top: -8px;
  width: 20px;
}

@media screen and (min-width: 767px) {
  header .top-header .top-header-inner .header_info .header_consider {
    border-radius: 56px;
    font-size: 0.875rem;
    height: 46px;
    line-height: 36px;
    width: 120px;
  }

  header .top-header .top-header-inner .header_info .header_consider .txt_consider {
    padding-right: 20px;
  }

  header .top-header .top-header-inner .header_info .header_consider .txt_add {
    display: inline;
  }

  header .top-header .top-header-inner .header_info .header_consider .txt_count {
    font-size: 0.75rem;
    height: 20px;
    line-height: 20px;
    right: 8px;
    top: 11px;
    width: 20px;
  }
}

header .top-header .top-header-inner .contact-info {
  display: flex;
  justify-content: right;
  align-items: center;
  flex-shrink: 0;
}

@media screen and (max-width: 768px) {
  header .top-header .top-header-inner .contact-info {
    display: none;
  }
}

header .top-header .top-header-inner .contact-info > .left {
  width: 56px;
  height: 56px;
  background-color: #E08780;
  border-radius: 4px;
  display: flex;
  justify-content: center;
  align-items: center;
  font-size: 18px;
  font-weight: bold;
  line-height: 1.2em;
  display: none;
}

header .top-header .top-header-inner .contact-info > .left span {
  color: white;
}

header .top-header .top-header-inner .contact-info > .right {
  display: flex;
  justify-content: center;
  align-items: center;
}

header .top-header .top-header-inner .contact-info > .right > .left {
  color: #E08780;
  margin: 0 8px;
}

header .top-header .top-header-inner .contact-info > .right > .left i {
  font-size: 42px;
}

header .top-header .top-header-inner .contact-info > .right > .right {
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
}

header .top-header .top-header-inner .contact-info > .right > .right > .top {
  font-size: 32px;
  font-weight: bold;
  margin-bottom: 4px;
}

header .top-header .top-header-inner .contact-info > .right > .right .bottom {
  font-size: 13px;
  color: #E08780;
}

header .top-header .top-header-inner nav {
  display: none;
  align-items: center;
  padding: 0 20px;
  min-width: 84px;
  justify-content: flex-end;
}

@media screen and (max-width: 768px) {
  header .top-header .top-header-inner nav {
    display: flex;
  }
}

header .top-header .top-header-inner nav .hamburger-menu {
  display: none;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  cursor: pointer;
}

@media screen and (max-width: 768px) {
  header .top-header .top-header-inner nav .hamburger-menu {
    display: flex;
  }
}

header .top-header .top-header-inner nav .hamburger-menu .menu-text {
  color: #E08780;
  margin-top: 8px;
  font-size: 10px;
}

header .top-header .top-header-inner nav .hamburger-menu .hamburger {
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  height: 16px;
  width: 30px;
  position: relative;
}

header .top-header .top-header-inner nav .hamburger-menu .hamburger span {
  display: inline-block;
  width: 30px;
  height: 0px;
  border-bottom: 2px solid #E08780;
}

header .top-header .nav-list {
  position: fixed;
  left: 100%;
  top: 0;
  width: 90%;
  height: 100%;
  background-color: white;
  transition: 0.3s;
  z-index: 9999;
  overflow: scroll;
}

header .top-header .nav-list .nav-list_header {
  background-color: white;
  border-bottom: 1px solid #E08780;
  display: flex;
  height: 50px;
  color: #E08780;
  align-items: center;
  padding: 12px;
  justify-content: space-between;
}

header .top-header .nav-list .nav-list_header .close-btn {
  border: 1px solid #E08780;
  border-radius: 8px;
  display: flex;
  justify-content: center;
  align-items: center;
  padding: 5px 12px;
  cursor: pointer;
}

header .top-header .nav-list > ul {
  list-style: none;
  padding: 0 12px;
}

header .top-header .nav-list > ul > li {
  border-bottom: 1px solid #eee;
  display: flex;
  align-items: center;
}

header .top-header .nav-list > ul > li > a,
header .top-header .nav-list > ul > li > span.open-link {
  color: #333;
  text-decoration: none;
  padding: 16px 0;
  display: flex;
  align-items: center;
  width: 100%;
  cursor: pointer;
}

header .top-header .nav-list > ul > li.home a::before {
  font-family: "material icons";
  font-size: 24px;
  content: "\E88A";
  margin-right: 4px;
  color: #E08780;
}

header .top-header .nav-list > ul > li.copyrights {
  padding: 22px;
  display: flex;
  justify-content: center;
  align-items: center;
  font-size: 10px;
}

header .top-header .nav-list > ul > li.area, header .top-header .nav-list > ul > li.type, header .top-header .nav-list > ul > li.guide, header .top-header .nav-list > ul > li.concern {
  flex-direction: column;
  border: none;
}

header .top-header .nav-list > ul > li.area > a,
header .top-header .nav-list > ul > li.area > span, header .top-header .nav-list > ul > li.type > a,
header .top-header .nav-list > ul > li.type > span, header .top-header .nav-list > ul > li.guide > a,
header .top-header .nav-list > ul > li.guide > span, header .top-header .nav-list > ul > li.concern > a,
header .top-header .nav-list > ul > li.concern > span {
  display: flex;
  justify-content: space-between;
  align-items: center;
  border-bottom: 1px solid #eee;
}

header .top-header .nav-list > ul > li.area > a::after,
header .top-header .nav-list > ul > li.area > span::after, header .top-header .nav-list > ul > li.type > a::after,
header .top-header .nav-list > ul > li.type > span::after, header .top-header .nav-list > ul > li.guide > a::after,
header .top-header .nav-list > ul > li.guide > span::after, header .top-header .nav-list > ul > li.concern > a::after,
header .top-header .nav-list > ul > li.concern > span::after {
  font-family: "material icons";
  font-size: 16px;
  content: "chevron_right";
  margin-right: 4px;
  color: white;
  border-radius: 40px;
  background-color: #E08780;
  transform: rotate(90deg);
}

header .top-header .nav-list > ul > li.area > a.open::after,
header .top-header .nav-list > ul > li.area > span.open::after, header .top-header .nav-list > ul > li.type > a.open::after,
header .top-header .nav-list > ul > li.type > span.open::after, header .top-header .nav-list > ul > li.guide > a.open::after,
header .top-header .nav-list > ul > li.guide > span.open::after, header .top-header .nav-list > ul > li.concern > a.open::after,
header .top-header .nav-list > ul > li.concern > span.open::after {
  transform: rotate(-90deg);
}

header .top-header .nav-list > ul > li.area > dl, header .top-header .nav-list > ul > li.type > dl, header .top-header .nav-list > ul > li.guide > dl, header .top-header .nav-list > ul > li.concern > dl {
  width: 100%;
  margin: 0;
}

header .top-header .nav-list > ul > li.area > dl hr, header .top-header .nav-list > ul > li.type > dl hr, header .top-header .nav-list > ul > li.guide > dl hr, header .top-header .nav-list > ul > li.concern > dl hr {
  display: none;
}

header .top-header .nav-list > ul > li.area > dl > dt, header .top-header .nav-list > ul > li.type > dl > dt, header .top-header .nav-list > ul > li.guide > dl > dt, header .top-header .nav-list > ul > li.concern > dl > dt {
  border-bottom: 1px solid #eee;
}

header .top-header .nav-list > ul > li.area > dl > dt:last-child, header .top-header .nav-list > ul > li.type > dl > dt:last-child, header .top-header .nav-list > ul > li.guide > dl > dt:last-child, header .top-header .nav-list > ul > li.concern > dl > dt:last-child {
  border-bottom: none;
}

header .top-header .nav-list > ul > li.area > dl > dt.open, header .top-header .nav-list > ul > li.type > dl > dt.open, header .top-header .nav-list > ul > li.guide > dl > dt.open, header .top-header .nav-list > ul > li.concern > dl > dt.open {
  border-bottom: none;
}

header .top-header .nav-list > ul > li.area > dl > dt i, header .top-header .nav-list > ul > li.type > dl > dt i, header .top-header .nav-list > ul > li.guide > dl > dt i, header .top-header .nav-list > ul > li.concern > dl > dt i {
  display: none;
}

header .top-header .nav-list > ul > li.area > dl > dt a,
header .top-header .nav-list > ul > li.area > dl > dt span.open-link, header .top-header .nav-list > ul > li.type > dl > dt a,
header .top-header .nav-list > ul > li.type > dl > dt span.open-link, header .top-header .nav-list > ul > li.guide > dl > dt a,
header .top-header .nav-list > ul > li.guide > dl > dt span.open-link, header .top-header .nav-list > ul > li.concern > dl > dt a,
header .top-header .nav-list > ul > li.concern > dl > dt span.open-link {
  color: #333;
  text-decoration: none;
  display: flex;
  align-items: center;
  width: 100%;
  padding: 8px 0;
  cursor: pointer;
}

header .top-header .nav-list > ul > li.area > dl > dt a::before,
header .top-header .nav-list > ul > li.area > dl > dt span.open-link::before, header .top-header .nav-list > ul > li.type > dl > dt a::before,
header .top-header .nav-list > ul > li.type > dl > dt span.open-link::before, header .top-header .nav-list > ul > li.guide > dl > dt a::before,
header .top-header .nav-list > ul > li.guide > dl > dt span.open-link::before, header .top-header .nav-list > ul > li.concern > dl > dt a::before,
header .top-header .nav-list > ul > li.concern > dl > dt span.open-link::before {
  content: "arrow_right";
  font-family: "material icons";
  font-size: 24px;
  margin-right: 4px;
  color: #E08780;
}

header .top-header .nav-list > ul > li.area > dl > dt.open a::before,
header .top-header .nav-list > ul > li.area > dl > dt.open span.open-link::before, header .top-header .nav-list > ul > li.type > dl > dt.open a::before,
header .top-header .nav-list > ul > li.type > dl > dt.open span.open-link::before, header .top-header .nav-list > ul > li.guide > dl > dt.open a::before,
header .top-header .nav-list > ul > li.guide > dl > dt.open span.open-link::before, header .top-header .nav-list > ul > li.concern > dl > dt.open a::before,
header .top-header .nav-list > ul > li.concern > dl > dt.open span.open-link::before {
  transform: rotate(90deg);
}

header .top-header .nav-list > ul > li.area > dl > dd > ul > li, header .top-header .nav-list > ul > li.type > dl > dd > ul > li, header .top-header .nav-list > ul > li.guide > dl > dd > ul > li, header .top-header .nav-list > ul > li.concern > dl > dd > ul > li {
  display: flex;
  justify-content: space-between;
  align-items: center;
}

header .top-header .nav-list > ul > li.area > dl > dd > ul > li::before, header .top-header .nav-list > ul > li.type > dl > dd > ul > li::before, header .top-header .nav-list > ul > li.guide > dl > dd > ul > li::before, header .top-header .nav-list > ul > li.concern > dl > dd > ul > li::before {
  content: " ";
  width: 12px;
  height: 12px;
  border-left: 1px solid #ccc;
  border-bottom: 1px solid #ccc;
  margin: 0 12px;
}

header .top-header .nav-list > ul > li.area > dl > dd > ul > li span, header .top-header .nav-list > ul > li.type > dl > dd > ul > li span, header .top-header .nav-list > ul > li.guide > dl > dd > ul > li span, header .top-header .nav-list > ul > li.concern > dl > dd > ul > li span {
  display: none;
}

header .top-header .nav-list > ul > li.area > dl > dd > ul > li a,
header .top-header .nav-list > ul > li.area > dl > dd > ul > li span.open-link, header .top-header .nav-list > ul > li.type > dl > dd > ul > li a,
header .top-header .nav-list > ul > li.type > dl > dd > ul > li span.open-link, header .top-header .nav-list > ul > li.guide > dl > dd > ul > li a,
header .top-header .nav-list > ul > li.guide > dl > dd > ul > li span.open-link, header .top-header .nav-list > ul > li.concern > dl > dd > ul > li a,
header .top-header .nav-list > ul > li.concern > dl > dd > ul > li span.open-link {
  display: none;
  align-items: center;
  justify-content: space-between;
  width: 100%;
  padding: 12px 0;
}

header .top-header .nav-list > ul > li.area > dl > dd > ul > li a:first-child,
header .top-header .nav-list > ul > li.area > dl > dd > ul > li span.open-link:first-child, header .top-header .nav-list > ul > li.type > dl > dd > ul > li a:first-child,
header .top-header .nav-list > ul > li.type > dl > dd > ul > li span.open-link:first-child, header .top-header .nav-list > ul > li.guide > dl > dd > ul > li a:first-child,
header .top-header .nav-list > ul > li.guide > dl > dd > ul > li span.open-link:first-child, header .top-header .nav-list > ul > li.concern > dl > dd > ul > li a:first-child,
header .top-header .nav-list > ul > li.concern > dl > dd > ul > li span.open-link:first-child {
  display: flex;
}

header .top-header .nav-list > ul > li.area > dl > dd > ul > li a::after,
header .top-header .nav-list > ul > li.area > dl > dd > ul > li span.open-link::after, header .top-header .nav-list > ul > li.type > dl > dd > ul > li a::after,
header .top-header .nav-list > ul > li.type > dl > dd > ul > li span.open-link::after, header .top-header .nav-list > ul > li.guide > dl > dd > ul > li a::after,
header .top-header .nav-list > ul > li.guide > dl > dd > ul > li span.open-link::after, header .top-header .nav-list > ul > li.concern > dl > dd > ul > li a::after,
header .top-header .nav-list > ul > li.concern > dl > dd > ul > li span.open-link::after {
  font-family: "material icons";
  font-size: 16px;
  content: "chevron_right";
  margin-right: 4px;
  color: white;
  border-radius: 40px;
  background-color: #999;
}

header .top-header .nav-list > ul > li.area > dl > dd > ul > li.city, header .top-header .nav-list > ul > li.type > dl > dd > ul > li.city, header .top-header .nav-list > ul > li.guide > dl > dd > ul > li.city, header .top-header .nav-list > ul > li.concern > dl > dd > ul > li.city {
  margin-left: 33px;
}

header .top-header .nav-list > ul > li.area > dl > dd > ul > li.city::before, header .top-header .nav-list > ul > li.type > dl > dd > ul > li.city::before, header .top-header .nav-list > ul > li.guide > dl > dd > ul > li.city::before, header .top-header .nav-list > ul > li.concern > dl > dd > ul > li.city::before {
  width: auto;
  height: auto;
  border-left: none;
  border-bottom: none;
  margin: 0;
  font-family: "material icons";
  font-size: 16px;
  content: "\EAC9";
  margin-right: 4px;
  color: #ccc;
  border-radius: 0px;
  background-color: transparent;
}

header .top-header .nav-list > ul > li.area > dl > dd > ul > li.city a::after,
header .top-header .nav-list > ul > li.area > dl > dd > ul > li.city span.open-link::after, header .top-header .nav-list > ul > li.type > dl > dd > ul > li.city a::after,
header .top-header .nav-list > ul > li.type > dl > dd > ul > li.city span.open-link::after, header .top-header .nav-list > ul > li.guide > dl > dd > ul > li.city a::after,
header .top-header .nav-list > ul > li.guide > dl > dd > ul > li.city span.open-link::after, header .top-header .nav-list > ul > li.concern > dl > dd > ul > li.city a::after,
header .top-header .nav-list > ul > li.concern > dl > dd > ul > li.city span.open-link::after {
  font-family: "material icons";
  font-size: 16px;
  content: "chevron_right";
  margin-right: 4px;
  color: #999;
  border-radius: 40px;
  background-color: transparent;
}

header .top-header .nav-list > ul > li.area > dl > dd.open, header .top-header .nav-list > ul > li.type > dl > dd.open, header .top-header .nav-list > ul > li.guide > dl > dd.open, header .top-header .nav-list > ul > li.concern > dl > dd.open {
  border-bottom: 1px solid #eee;
  padding-bottom: 8px;
}

header .top-header .overlay {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-color: rgba(0, 0, 0, 0.5);
  opacity: 0;
  visibility: hidden;
  transition: 0.3s;
  z-index: 9998;
}

header .global-nav {
  border-top: 1px solid #FFDDDA;
  background-color: white;
  color: blue;
}

@media screen and (max-width: 768px) {
  header .global-nav {
    display: none;
  }
}

header .global-nav > ul {
  display: flex;
  justify-content: center;
  align-items: center;
  margin: auto;
  background-color: white;
  height: 40px;
}

@media screen and (min-width: 1025px) {
  header .global-nav > ul {
    width: 1100px;
  }
}

header .global-nav > ul > li {
  display: flex;
  justify-content: center;
  align-items: center;
  width: 100%;
  height: 100%;
  background-color: white;
}

header .global-nav > ul > li .li-inner {
  width: 100%;
  height: 22px;
  border-left: 1px solid #E08780;
  display: flex;
  justify-content: center;
  align-items: center;
}

header .global-nav > ul > li .li-inner a,
header .global-nav > ul > li .li-inner span.open-link {
  font-size: 15px;
}

header .global-nav > ul > li:last-child .li-inner {
  border-right: 1px solid #E08780;
}

header .global-nav > ul > li > a,
header .global-nav > ul > li > span.open-link {
  color: #E08780;
}

header .global-nav > ul > li.active a .material-icons,
header .global-nav > ul > li.active span.open-link .material-icons {
  transform: rotate(180deg);
}

header .global-nav > ul > li.home a,
header .global-nav > ul > li.home span.open-link, header .global-nav > ul > li.area a,
header .global-nav > ul > li.area span.open-link, header .global-nav > ul > li.type a,
header .global-nav > ul > li.type span.open-link, header .global-nav > ul > li.guide a,
header .global-nav > ul > li.guide span.open-link, header .global-nav > ul > li.concern a,
header .global-nav > ul > li.concern span.open-link {
  display: flex;
  justify-content: center;
  align-items: center;
  color: #333;
}

header .global-nav > ul > li.home a .material-icons,
header .global-nav > ul > li.home span.open-link .material-icons, header .global-nav > ul > li.area a .material-icons,
header .global-nav > ul > li.area span.open-link .material-icons, header .global-nav > ul > li.type a .material-icons,
header .global-nav > ul > li.type span.open-link .material-icons, header .global-nav > ul > li.guide a .material-icons,
header .global-nav > ul > li.guide span.open-link .material-icons, header .global-nav > ul > li.concern a .material-icons,
header .global-nav > ul > li.concern span.open-link .material-icons {
  font-size: 20px;
  margin-left: 5px;
  color: #E08780;
}

header .global-nav > ul > li.home .sub-menu, header .global-nav > ul > li.area .sub-menu, header .global-nav > ul > li.type .sub-menu, header .global-nav > ul > li.guide .sub-menu, header .global-nav > ul > li.concern .sub-menu {
  position: absolute;
  top: -9999px;
  left: 0;
  background-color: transparent;
  border-top: 1px solid #E08780;
  display: none;
  opacity: 0;
  transition: opacity 0.3s ease-out;
  width: 100%;
  z-index: 9999;
  font-size: 15px;
}

header .global-nav > ul > li.home .sub-menu.show, header .global-nav > ul > li.area .sub-menu.show, header .global-nav > ul > li.type .sub-menu.show, header .global-nav > ul > li.guide .sub-menu.show, header .global-nav > ul > li.concern .sub-menu.show {
  top: 109px;
  display: flex;
  opacity: 1;
}

header .global-nav > ul > li.home .sub-menu dl, header .global-nav > ul > li.area .sub-menu dl, header .global-nav > ul > li.type .sub-menu dl, header .global-nav > ul > li.guide .sub-menu dl, header .global-nav > ul > li.concern .sub-menu dl {
  width: 100%;
  display: grid;
  grid-template-columns: minmax(160px, auto) 1fr;
  -moz-column-gap: 16px;
       column-gap: 16px;
  row-gap: 8px;
  align-items: start;
  line-height: 1.5;
  padding: 16px 24px;
  max-width: 1100px;
  margin: auto;
  background: rgba(255, 255, 255, 0.95);
  box-shadow: 0 3px 10px rgba(0, 0, 0, 0.2);
}

header .global-nav > ul > li.home .sub-menu dl hr, header .global-nav > ul > li.area .sub-menu dl hr, header .global-nav > ul > li.type .sub-menu dl hr, header .global-nav > ul > li.guide .sub-menu dl hr, header .global-nav > ul > li.concern .sub-menu dl hr {
  grid-column: 1/-1;
  width: 100%;
  height: 1px;
  background-color: #eee;
  border: none;
}

header .global-nav > ul > li.home .sub-menu dl dt, header .global-nav > ul > li.area .sub-menu dl dt, header .global-nav > ul > li.type .sub-menu dl dt, header .global-nav > ul > li.guide .sub-menu dl dt, header .global-nav > ul > li.concern .sub-menu dl dt {
  grid-column: 1;
  align-items: center;
  color: #202532;
  display: flex;
  min-height: 28px;
  justify-content: flex-end;
  margin: 0;
  padding: 0 8px 0 0;
  min-width: 0;
  text-align: right;
}

header .global-nav > ul > li.home .sub-menu dl dt span.open-link, header .global-nav > ul > li.area .sub-menu dl dt span.open-link, header .global-nav > ul > li.type .sub-menu dl dt span.open-link, header .global-nav > ul > li.guide .sub-menu dl dt span.open-link, header .global-nav > ul > li.concern .sub-menu dl dt span.open-link {
  min-height: 28px;
  line-height: 1.5;
  display: inline-flex;
  align-items: center;
  justify-content: flex-start;
  width: 100%;
  margin: 0;
  padding: 0;
  cursor: pointer;
  box-sizing: border-box;
}

header .global-nav > ul > li.home .sub-menu dl dt span.heading, header .global-nav > ul > li.area .sub-menu dl dt span.heading, header .global-nav > ul > li.type .sub-menu dl dt span.heading, header .global-nav > ul > li.guide .sub-menu dl dt span.heading, header .global-nav > ul > li.concern .sub-menu dl dt span.heading {
  min-height: 28px;
  line-height: 1.5;
  display: inline-flex;
  align-items: center;
  border-left: 3px solid #E08780;
  padding-left: 8px;
  box-sizing: border-box;
}

header .global-nav > ul > li.home .sub-menu dl dd, header .global-nav > ul > li.area .sub-menu dl dd, header .global-nav > ul > li.type .sub-menu dl dd, header .global-nav > ul > li.guide .sub-menu dl dd, header .global-nav > ul > li.concern .sub-menu dl dd {
  grid-column: 2;
  display: flex;
  margin: 0;
  min-width: 0;
  color: #E08780;
}

header .global-nav > ul > li.home .sub-menu dl dd > ul, header .global-nav > ul > li.area .sub-menu dl dd > ul, header .global-nav > ul > li.type .sub-menu dl dd > ul, header .global-nav > ul > li.guide .sub-menu dl dd > ul, header .global-nav > ul > li.concern .sub-menu dl dd > ul {
  display: flex;
  flex-wrap: wrap;
  margin: 0;
  padding: 0;
  list-style: none;
}

header .global-nav > ul > li.home .sub-menu dl dd > ul > li, header .global-nav > ul > li.area .sub-menu dl dd > ul > li, header .global-nav > ul > li.type .sub-menu dl dd > ul > li, header .global-nav > ul > li.guide .sub-menu dl dd > ul > li, header .global-nav > ul > li.concern .sub-menu dl dd > ul > li {
  min-height: 28px;
  height: 28px;
  display: flex;
  justify-content: center;
  align-items: center;
}

header .global-nav > ul > li.home .sub-menu dl dd > ul > li.city, header .global-nav > ul > li.area .sub-menu dl dd > ul > li.city, header .global-nav > ul > li.type .sub-menu dl dd > ul > li.city, header .global-nav > ul > li.guide .sub-menu dl dd > ul > li.city, header .global-nav > ul > li.concern .sub-menu dl dd > ul > li.city {
  display: none;
}

header .global-nav > ul > li.home .sub-menu dl dd > ul > li > a,
header .global-nav > ul > li.home .sub-menu dl dd > ul > li > span.open-link, header .global-nav > ul > li.area .sub-menu dl dd > ul > li > a,
header .global-nav > ul > li.area .sub-menu dl dd > ul > li > span.open-link, header .global-nav > ul > li.type .sub-menu dl dd > ul > li > a,
header .global-nav > ul > li.type .sub-menu dl dd > ul > li > span.open-link, header .global-nav > ul > li.guide .sub-menu dl dd > ul > li > a,
header .global-nav > ul > li.guide .sub-menu dl dd > ul > li > span.open-link, header .global-nav > ul > li.concern .sub-menu dl dd > ul > li > a,
header .global-nav > ul > li.concern .sub-menu dl dd > ul > li > span.open-link {
  align-items: center;
  color: #333;
  display: flex;
  height: 20px;
  cursor: pointer;
}

header .global-nav > ul > li.home .sub-menu dl dd > ul > li > a:first-child,
header .global-nav > ul > li.home .sub-menu dl dd > ul > li > span.open-link:first-child, header .global-nav > ul > li.area .sub-menu dl dd > ul > li > a:first-child,
header .global-nav > ul > li.area .sub-menu dl dd > ul > li > span.open-link:first-child, header .global-nav > ul > li.type .sub-menu dl dd > ul > li > a:first-child,
header .global-nav > ul > li.type .sub-menu dl dd > ul > li > span.open-link:first-child, header .global-nav > ul > li.guide .sub-menu dl dd > ul > li > a:first-child,
header .global-nav > ul > li.guide .sub-menu dl dd > ul > li > span.open-link:first-child, header .global-nav > ul > li.concern .sub-menu dl dd > ul > li > a:first-child,
header .global-nav > ul > li.concern .sub-menu dl dd > ul > li > span.open-link:first-child {
  border-left: 1px solid #999;
  padding-left: 12px;
  margin-left: 12px;
}

header .global-nav > ul > li.home .sub-menu dl dd > ul > li:first-child > a,
header .global-nav > ul > li.home .sub-menu dl dd > ul > li:first-child > span.open-link, header .global-nav > ul > li.area .sub-menu dl dd > ul > li:first-child > a,
header .global-nav > ul > li.area .sub-menu dl dd > ul > li:first-child > span.open-link, header .global-nav > ul > li.type .sub-menu dl dd > ul > li:first-child > a,
header .global-nav > ul > li.type .sub-menu dl dd > ul > li:first-child > span.open-link, header .global-nav > ul > li.guide .sub-menu dl dd > ul > li:first-child > a,
header .global-nav > ul > li.guide .sub-menu dl dd > ul > li:first-child > span.open-link, header .global-nav > ul > li.concern .sub-menu dl dd > ul > li:first-child > a,
header .global-nav > ul > li.concern .sub-menu dl dd > ul > li:first-child > span.open-link {
  border-left: none;
  padding-left: 0;
  margin-left: 0;
  cursor: pointer;
}

header .global-nav > ul > li.area .sub-menu dl {
  grid-template-columns: -webkit-max-content 1fr;
  grid-template-columns: max-content 1fr;
  -moz-column-gap: 4px;
       column-gap: 4px;
}

header .global-nav > ul > li.area .sub-menu dl dt {
  font-weight: bold;
  justify-content: flex-start;
  text-align: left;
}

header .global-nav > ul > li.area .sub-menu dl dt span.open-link {
  width: auto;
}

header .global-nav > ul > li.type .sub-menu dl dt {
  font-weight: bold;
  justify-content: flex-start;
  color: #E08780;
}

header .global-nav > ul > li.guide .sub-menu dl {
  grid-template-columns: minmax(200px, auto) 1fr;
}

header .global-nav > ul > li.guide .sub-menu dl dt {
  font-weight: bold;
  justify-content: flex-start;
  color: #E08780;
  min-width: 0;
}

header .global-nav > ul > li.guide .sub-menu dl dt i {
  margin-right: 6px;
}

header .global-nav > ul > li.guide .sub-menu dl dt i.pen-icon {
  background-image: url(/img/pen.svg);
  width: 20px;
  height: 20px;
  display: inline-block;
  background-size: contain;
  background-repeat: no-repeat;
  margin-right: 11px;
}

header .global-nav > ul > li.concern .sub-menu dl {
  grid-template-columns: minmax(200px, auto) 1fr;
}

header .global-nav > ul > li.concern .sub-menu dl dt {
  font-weight: bold;
  justify-content: flex-start;
  color: #E08780;
  min-width: 0;
}

header .global-nav > ul > li.concern .sub-menu dl dt i {
  margin-right: 6px;
}

header .global-nav > ul > li.concern .sub-menu dl dt i.stethoscope-icon {
  background-image: url(/img/stethoscope.svg);
  width: 20px;
  height: 20px;
  display: inline-block;
  background-size: contain;
  background-repeat: no-repeat;
  margin-right: 11px;
}

header .blk_cv {
  margin: 12px auto 12px;
  width: calc(100% - 20px);
}

header .blk_cv_lead {
  align-items: center;
  color: #df6952;
  display: flex;
  font-weight: bold;
  justify-content: center;
  line-height: 1.5;
  margin: 0 auto 12px;
  max-width: 355px;
  position: relative;
  text-align: center;
  width: 100%;
}

header .blk_cv_lead::before {
  border-left: 1px solid #df6952;
  content: "";
  display: block;
  height: 100%;
  left: 28px;
  position: absolute;
  transform: rotate(-24deg);
}

header .blk_cv_lead::after {
  border-left: 1px solid #df6952;
  content: "";
  display: block;
  height: 100%;
  right: 28px;
  position: absolute;
  transform: rotate(24deg);
}

header .blk_cv .box_cv {
  border: 1px solid #ccc;
  display: flex;
  flex-wrap: wrap;
  height: auto;
  justify-content: center;
  margin: 0 auto 10px;
  max-width: 355px;
  width: 100%;
}

header .blk_cv .box_cv_ttl {
  background: #f5f5f5;
  display: block;
  font-size: 0.875rem;
  font-weight: bold;
  height: 32px;
  line-height: 32px;
  margin-bottom: 10px;
  text-align: center;
  width: 100%;
}

header .blk_cv .box_cv_head {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  position: relative;
  justify-content: end;
  padding: 0 10px 0 0;
}

header .blk_cv .box_cv_head a {
  color: #59bec5;
}

header .blk_cv .box_cv_thum {
  position: absolute;
  display: block;
  width: 80px;
  height: 80px;
  -o-object-fit: cover;
     object-fit: cover;
  border-radius: 50%;
  top: -15px;
  left: 10px;
}

@media screen and (max-width: 480px) {
  header .blk_cv .box_cv_thum {
    top: 0;
    width: 60px;
    height: 60px;
  }
}

header .blk_cv .box_cv_crnm {
  color: #574726;
  display: block;
  font-size: 0.875rem;
  line-height: 1.5;
  margin: 0 0 0 0;
  padding: 0px 20px 10px 0px;
}

@media screen and (max-width: 480px) {
  header .blk_cv .box_cv_crnm {
    font-size: 12px;
  }
}

header .blk_cv .box_cv_lead {
  align-items: center;
  background: #fcf3e6;
  border-radius: 32px;
  color: #574726;
  display: block;
  font-size: 0.875rem;
  height: 32px;
  justify-content: center;
  line-height: 32px;
  margin: 0 0 10px 0;
  padding: 0 10px;
  position: relative;
}

@media screen and (max-width: 480px) {
  header .blk_cv .box_cv_lead {
    font-size: 12px;
  }
}

header .blk_cv .box_cv .btn_tel {
  align-items: center;
  background: linear-gradient(180deg, #fe909c 0%, #ff7785 100%);
  border: 1px solid #f44f6d;
  border-radius: 5px;
  box-shadow: 0px 2px 4px rgba(0, 0, 0, 0.16);
  color: #fff;
  display: flex;
  flex-wrap: wrap;
  height: 60px;
  justify-content: center;
  margin: 0 10px 10px;
  position: relative;
  width: 100%;
}

header .blk_cv .box_cv .btn_tel::before {
  content: "\E0CD";
  display: inline-block;
  font-family: "material icons";
  font-size: 2rem;
  left: 10%;
  position: absolute;
  top: 12px;
}

header .blk_cv .box_cv .btn_tel_free {
  display: block;
  font-size: 1.25rem;
  font-weight: bold;
  line-height: 1;
  margin: 4px 0 0 24px;
  text-shadow: 1px 0px 4px rgba(201, 33, 51, 0.25);
  width: 100%;
}

header .blk_cv .box_cv .btn_tel_number {
  display: block;
  font-size: 0.875rem;
  font-weight: bold;
  line-height: 1;
  margin: 0 0 2px 24px;
  text-shadow: 1px 0px 4px rgba(201, 33, 51, 0.25);
  width: 100%;
}

header .blk_cv .box_cv .btn_tel a {
  height: 100%;
  position: absolute;
  width: 100%;
}

header .blk_cv .box_cv .txt_free {
  display: none;
}

header .blk_cv .box_cv .txt_tel {
  display: none;
}

header .blk_cv .box_cv .txt_time {
  font-size: 0.875rem;
  margin-bottom: 15px;
}

header .blk_cv .link_allowance {
  align-items: center;
  color: #59bec5;
  display: flex;
  font-size: 0.875rem;
  font-weight: bold;
  justify-content: center;
}

header .blk_cv .link_allowance::after {
  content: "\E5CF";
  font-family: "material icons";
  font-size: 1.5rem;
  font-weight: normal;
  text-decoration: none;
}

.header_inquiry {
  align-items: center;
  display: flex;
  height: 48px;
  flex-wrap: nowrap;
  justify-content: center;
  position: relative;
}

@media (min-width: 768px) {
  .header_inquiry {
    align-items: center;
    display: flex;
    height: 48px;
    justify-content: center;
    margin: 0 auto;
    max-width: 1024px;
    width: 100%;
  }

  .header_logo {
    display: flex;
    height: 32px;
    margin: 0;
    width: auto;
  }
}

.blk_cv_lead {
  align-items: center;
  color: #df6952;
  display: flex;
  font-weight: bold;
  justify-content: center;
  line-height: 1.5;
  margin: 0 auto 12px;
  max-width: 355px;
  position: relative;
  text-align: center;
  width: 100%;
}

.blk_cv_lead::before {
  border-left: 1px solid #df6952;
  content: "";
  display: block;
  height: 100%;
  left: 28px;
  position: absolute;
  transform: rotate(-24deg);
}

.blk_cv_lead::after {
  border-left: 1px solid #df6952;
  content: "";
  display: block;
  height: 100%;
  right: 28px;
  position: absolute;
  transform: rotate(24deg);
}

body.form-time header .top-header .top-header-inner .contact-info {
  display: none !important;
}

header.has-satisfaction-badge .top-header .top-header-inner {
  padding-right: 0;
}

header.has-satisfaction-badge .top-header .top-header-inner .logo {
  display: flex;
  align-items: center;
}

header.has-satisfaction-badge .top-header .top-header-inner .logo img[src*=logo] {
  width: 100px;
  height: 24px;
  -o-object-fit: cover;
     object-fit: cover;
  -o-object-position: left;
     object-position: left;
}

header.has-satisfaction-badge .top-header .top-header-inner .logo img.badge_satisfaction {
  height: 32px;
  width: auto;
}

header.has-satisfaction-badge .top-header .top-header-inner .logo h1, header.has-satisfaction-badge .top-header .top-header-inner .logo a {
  height: auto;
}

@media (min-width: 768px) {
  header.has-satisfaction-badge .top-header .top-header-inner .logo img[src*=logo] {
    width: 134px;
    height: 32px;
  }

  header.has-satisfaction-badge .top-header .top-header-inner .logo img.badge_satisfaction {
    height: 36px;
  }
}

header.has-satisfaction-badge .top-header .top-header-inner nav {
  padding: 0 10px;
  min-width: 64px;
}

.review-detail {
  background: #fff;
}

@media (min-width: 768px) {
  .review-detail {
    background: transparent;
    margin: 0 auto;
  }
}

.review-detail__txt {
  margin-bottom: 20px;
}

.review-detail .review-rating {
  margin-bottom: 0;
}

.review-detail .review-rating .icon-stars span {
  font-size: 1.375rem;
}

@media (min-width: 768px) {
  .review-detail .review-rating .icon-stars span {
    font-size: 1.5rem;
  }
}

.review-detail .review-rating__total em {
  font-size: 1.375rem;
  margin-left: 5px;
}

.review-detail .review-rating__link {
  display: none;
}

.review-detail__list {
  padding: 20px 0 2px;
}

.review-detail__list:first-child {
  padding-top: 0;
}

@media (min-width: 768px) {
  .review-detail__list {
    padding: 0;
  }
}

.review-detail__item {
  border: 1px solid #ccc;
  border-radius: 5px;
  margin: 0 0 28px;
  padding: 10px;
}

@media (min-width: 768px) {
  .review-detail__item {
    background: #fff;
    border: none;
    padding: 0;
  }
}

.review-detail__item h4 {
  font-size: 1rem;
  font-weight: bold;
  margin-bottom: 10px;
  color: #ee827c;
}

@media (min-width: 768px) {
  .review-detail__item h4 {
    margin: 0 10px 10px 0;
  }
}

.review-detail__total {
  align-items: center;
  display: flex;
  line-height: 1;
  align-items: center;
  margin: 0 auto 10px;
  justify-content: start;
}

@media (min-width: 768px) {
  .review-detail__total {
    margin: 0 0 10px;
  }
}

.review-detail__total--ttl {
  line-height: 1;
  margin: 0 10px 0 0;
}

.review-detail__score {
  border-top: 1px solid #ccc;
  border-left: 1px solid #ccc;
  box-sizing: border-box;
  display: flex;
  flex-wrap: wrap;
  justify-content: flex-start;
  margin-bottom: 20px;
  width: 100%;
}

.review-detail__score--item {
  border-bottom: 1px solid #ccc;
  border-right: 1px solid #ccc;
  box-sizing: border-box;
  display: inline-block;
  font-weight: 600;
  line-height: 1.8;
  margin: 0;
  text-align: center;
  min-width: 50px;
  flex: 1;
  max-width: 25%;
}

.review-detail__score--item .item {
  align-items: center;
  background: #f5f5f5;
  display: flex;
  font-size: 0.75rem;
  justify-content: center;
  line-height: 1.2;
  height: 2rem;
}

@media (min-width: 768px) {
  .review-detail__score--item .item {
    font-size: 1rem;
  }
}

.review-detail__score--item .points {
  background: #fff;
  border-top: 1px solid #ccc;
  display: block;
}

.review-detail__character {
  display: grid;
  grid-template-columns: auto 1fr;
  grid-template-rows: auto 1fr;
  align-items: center;
  gap: 5px;
  margin: 0 0 30px;
  margin-bottom: 5px;
  padding: 0;
  font-weight: 400;
  position: relative;
  border: none;
}

@media (min-width: 768px) {
  .review-detail__character {
    line-height: 32px;
    margin: 0 0 10px;
    padding-left: 42px;
    position: relative;
    border: none;
    grid-template-columns: 32px auto 1fr;
    grid-template-rows: 1fr;
    padding: 0;
    gap: 10px;
  }
}

.review-detail__character::before {
  grid-column: 1/2;
  grid-row: 1/3;
  margin: auto;
  width: 32px;
  height: 32px;
  line-height: 32px;
  background: #fff;
  border: 1px solid #ccc;
  border-radius: 50%;
  box-sizing: border-box;
  text-align: center;
  display: block;
  font-size: 24px;
  color: #ccc;
  font-family: "material icons";
  content: "person";
  font-feature-settings: "liga";
}

@media (min-width: 768px) {
  .review-detail__character::before {
    grid-column: 1/2;
    grid-row: 1/2;
  }
}

.review-detail__character.man::before {
  border: 1px solid #59bec5;
  color: #59bec5;
}

.review-detail__character.woman::before {
  border: 1px solid #ee827c;
  color: #ee827c;
}

.review-detail__category {
  grid-column: 2/3;
  grid-row: 1/2;
  margin: 0;
}

@media (min-width: 768px) {
  .review-detail__category {
    grid-column: 2/3;
    grid-row: 1/2;
  }
}

.review-detail__category--label {
  padding: 1px 5px;
  font-weight: bold;
  font-size: 0.75rem;
  border-radius: 4px;
}

@media (min-width: 768px) {
  .review-detail__category--label {
    padding: 3px 5px;
  }
}

.review-detail__category--label.move-in {
  background: #fcf3e6;
}

.review-detail__category--label.visit {
  background: #fae3e1;
}

.review-detail__contributor {
  grid-column: 2/3;
  grid-row: 2/3;
  align-self: flex-start;
  font-size: 0.8125rem;
  display: inline-block;
  margin-right: 5px;
  padding: 0;
  line-height: 1;
}

@media (min-width: 768px) {
  .review-detail__contributor {
    grid-column: 3/4;
    grid-row: 1/2;
    align-self: center;
  }
}

.review-detail__more {
  box-sizing: border-box;
  padding-bottom: 10px;
  position: relative;
}

@media (min-width: 768px) {
  .review-detail__more {
    border: 1px solid #ccc;
    border-radius: 5px;
    box-sizing: border-box;
    display: inline-block;
    padding: 20px 40px;
    position: relative;
    width: 100%;
  }

  .review-detail__more::before {
    border: 10px solid transparent;
    border-bottom: 10px solid #fff;
    content: "";
    left: 32px;
    margin-left: -16px;
    position: absolute;
    top: -20px;
    z-index: 2;
  }

  .review-detail__more::after {
    border: 11px solid transparent;
    border-bottom: 11px solid #ccc;
    content: "";
    left: 32px;
    margin-left: -17px;
    position: absolute;
    top: -22px;
    z-index: 1;
  }
}

.review-detail__more--content {
  height: 11rem;
  margin: 0;
  overflow: hidden;
}

.review-detail__more--content::before {
  bottom: 0;
  content: "";
  display: block;
  height: 40px;
  left: 0;
  position: absolute;
  width: 100%;
}

.review-detail__more--label {
  display: flex;
  align-items: flex-end;
  justify-content: center;
  width: 100%;
  height: 9rem;
  font-size: 0.875rem;
  color: #59bec5;
  background: linear-gradient(to bottom, rgba(255, 255, 255, 0.2), #fff);
  position: absolute;
  left: 0;
  bottom: 10px;
  z-index: 1;
  cursor: pointer;
}

@media (min-width: 768px) {
  .review-detail__more--label {
    padding-bottom: 10px;
  }
}

.review-detail__more--label::before {
  margin-right: 8px;
  content: "\E038";
  font-family: "material icons";
  font-size: 1.5rem;
  transform: rotate(0.25turn);
}

.review-detail__more--label::after {
  content: "\3082\3063\3068\898B\308B";
  margin-bottom: 4px;
}

.review-detail__more--check {
  display: none;
}

.review-detail__more--check:checked ~ .review-detail__more--content {
  height: auto;
}

.review-detail__more--check:checked ~ .review-detail__more--content::before {
  display: none;
}

.review-detail__more--check:checked ~ .review-detail__more--label {
  height: auto;
  padding-bottom: 0;
  background: none;
  position: static;
}

.review-detail__more--check:checked ~ .review-detail__more--label::before {
  transform: rotate(0.75turn);
}

.review-detail__more--check:checked ~ .review-detail__more--label::after {
  content: "\9589\3058\308B";
}

.review-detail__link--btn {
  padding: 0 0 40px;
}

@media (min-width: 768px) {
  .review-detail__link--btn {
    padding: 20px 0;
  }
}

.review-detail__link--btn a {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 84%;
  margin: 0 auto;
  padding: 7px;
  color: #59bec5;
  text-decoration: none;
  border: 1px solid #59bec5;
  border-radius: 5px;
}

@media (min-width: 768px) {
  .review-detail__link--btn a {
    width: 50%;
    font-size: 1.125rem;
  }
}

.review-detail .container > .blk_cv {
  margin-top: 30px;
  margin-bottom: 30px;
}

.section_review {
  margin: 0 auto 48px;
}

html {
  font-size: 100%;
}

body {
  font-feature-settings: "palt";
  font-family: "Roboto", "Noto Sans JP", sans-serif;
  overflow-x: clip;
  font-size: 0.875rem;
}

.main_detail {
  width: 100%;
}

.text-xs {
  font-size: 0.75rem;
}

.text_white-space_pre_line {
  white-space: pre-line;
}

.content_textarea,
.section_faq .link_map {
  line-height: 1.7;
  letter-spacing: 0.02em;
  font-size: 1rem;
  white-space: pre-line;
}

.section_summary .blk_facility .content_textarea {
  white-space: pre-line;
}

.section_summary .blk_facility .content_textarea a {
  white-space: normal !important;
}

.section_fv {
  display: grid;
  grid-auto-rows: auto;
  grid-template-columns: 1fr 82px;
  margin: 10px 10px 12px;
  position: relative;
}

.section_fv h1 {
  grid-column: 1/2;
  grid-row: 2/3;
  margin: 0 0 12px;
}

.section_fv h1:has(.ad__badge--fv) .facility__name {
  width: 80%;
}

.section_fv .facility__name {
  width: 100%;
}

.section_fv .txt_review {
  display: inline-block;
  font-size: 0.92em;
}

.section_fv .txt_kana {
  display: none;
}

.section_fv .review-rating {
  grid-column: 1/2;
  grid-row: 3/4;
  margin-bottom: 12px;
  font-size: 1rem;
}

.section_fv .review-rating__total em {
  font-size: 1rem;
}

.section_fv .blk_remaining {
  align-items: center;
  display: flex;
  flex-wrap: wrap;
  flex-direction: column;
  grid-column: 2/3;
  grid-row: 1/4;
  justify-content: center;
  position: absolute;
  right: 0;
  text-align: center;
  top: 0;
  line-height: 1.5;
  width: 72px;
}

.section_fv .blk_remaining_label {
  color: #574726;
  font-size: 0.75rem;
}

.section_fv .blk_remaining_count {
  font-size: 1.25rem;
  font-weight: bold;
  line-height: 1;
}

.section_fv .blk_remaining_date {
  bottom: -22px;
  color: #574726;
  font-size: 0.75rem;
  position: absolute;
  white-space: nowrap;
}

.section_fv .blk_remaining p {
  line-height: 1.5;
  font-size: 0.7rem;
  background: #fdf4f4;
  border: 1px solid #ffdeda;
  border-radius: 4px;
  color: #ee827c;
  font-size: 0.75rem;
  width: 100%;
  padding: 3px 0;
}

.section_fv .blk_remaining.\--no-empty {
  width: 76px;
}

.section_fv .blk_remaining.\--no-empty p {
  font-size: 0.8rem;
  font-weight: bold;
  padding: 4px 0;
}

.section_fv .blk_cost {
  align-items: center;
  display: flex;
  grid-column: 1/3;
  grid-row: 4/5;
  margin: 0 0 6px;
  font-size: 0.9em;
}

@media (min-width: 768px) {
  .section_fv .blk_cost {
    font-size: 1em;
  }
}

.section_fv .blk_cost dt {
  display: inline-flex;
  margin-right: 3px;
}

@media (min-width: 768px) {
  .section_fv .blk_cost dt {
    margin-right: 5px;
  }
}

.section_fv .blk_cost dd {
  align-items: center;
  color: #df6952;
  display: inline-flex;
  margin-right: 12px;
}

@media (min-width: 768px) {
  .section_fv .blk_cost dd {
    margin-right: 15px;
  }
}

.section_fv .blk_cost dd:last-child {
  margin-right: 0;
}

.section_fv .blk_cost dd em {
  font-size: 1.25rem;
  margin-bottom: 2px;
}

.section_fv .blk_cost dd em > span {
  font-size: 1rem;
  font-weight: normal;
}

.section_fv .blk_traffic {
  grid-column: 1/3;
  grid-row: 5/6;
  -ms-grid-column: 1;
  -ms-grid-column-span: 2;
  -ms-grid-row: 5;
  -ms-grid-row-span: 1;
  overflow-x: auto;
  overflow-y: hidden;
  white-space: nowrap;
}

.section_fv .blk_traffic::before {
  content: "\E570";
  display: inline-block;
  font-family: "material icons";
  font-size: 1.25rem;
  font-weight: normal;
  margin: 0 2px -3px 0;
  vertical-align: bottom;
}

.section_fv .blk_traffic a {
  color: #59bec5;
}

.section_fv .link_map {
  -ms-grid-column: 1;
  -ms-grid-column-span: 2;
  grid-column: 1/3;
  -ms-grid-row: 6;
  -ms-grid-row-span: 1;
  grid-row: 6/7;
  margin-left: 1rem;
}

.recent_consideration {
  background-color: #444;
  color: #fff;
  text-align: center;
  line-height: 1.5;
  letter-spacing: 0.01em;
}

.recent_consideration > strong {
  color: #ee817d;
  margin: 0 0.1em;
}

.container_fv {
  display: block;
}

.container_fv .blk_slider {
  margin-bottom: 12px;
  width: 100%;
}

.container_fv #main-slider {
  aspect-ratio: 375/247;
  overflow: hidden;
}

.container_fv .blk_cv_top {
  margin: 0 auto 24px;
  width: calc(100% - 20px);
}

.container_fv .box_cv {
  display: grid;
  max-width: 600px;
  margin: 0 auto 15px;
}

.container_fv .box_cv_ttl {
  display: none;
}

.container_fv .box_cv_thum {
  display: none;
}

.container_fv .box_cv_crnm {
  display: none;
}

.container_fv .box_cv_lead {
  align-items: center;
  color: #df6952;
  display: flex;
  font-weight: bold;
  justify-content: center;
  line-height: 1.5;
  margin-bottom: 5px;
  position: relative;
  text-align: center;
  width: 100%;
}

.container_fv .box_cv_lead::before {
  border-left: 1px solid #df6952;
  content: "";
  display: block;
  height: 100%;
  left: 28px;
  position: absolute;
  transform: rotate(-24deg);
}

.container_fv .box_cv_lead::after {
  border-left: 1px solid #df6952;
  content: "";
  display: block;
  height: 100%;
  right: 28px;
  position: absolute;
  transform: rotate(24deg);
}

.container_fv .box_cv .btn_tel {
  display: grid;
  grid-template-columns: repeat(2, auto);
  grid-template-rows: repeat(2, auto);
  align-items: center;
  justify-content: center;
  gap: 0 10px;
  width: 100%;
  max-width: 355px;
  margin-bottom: 10px;
  padding: 10px 8% 10px 5%;
  position: relative;
  cursor: pointer;
  border: 1px solid #f44f6d;
  border-radius: 50px;
  box-shadow: 1px 6px 4px 0 rgba(0, 0, 0, 0.2);
  background: linear-gradient(to bottom, #fe909c 0%, #ff7785 100%);
  color: #fff;
  background: transparent linear-gradient(180deg, #FFE7E6 0, #fe909c 2px, #ff7785 80%);
  border: 1px solid #f44f6d;
  padding: 17px 0 15px;
  gap: 0 5px;
  max-width: none;
}

.container_fv .box_cv .btn_tel a {
  width: 100%;
  height: 100%;
  position: absolute;
  top: 0;
  left: 0;
}

.container_fv .box_cv .btn_tel:hover {
  opacity: 0.6;
}

@media (min-width: 768px) {
  .container_fv .box_cv .btn_tel {
    gap: 0 20px;
  }
}

@media (max-width: 360px) {
  .container_fv .box_cv .btn_tel {
    gap: 0 5px;
    padding-left: 10px;
    padding-right: 10px;
  }
}

.container_fv .box_cv .btn_tel::before {
  content: "\E0CD";
  display: inline-block;
  font-family: "material icons";
  font-size: 2rem;
  font-weight: normal;
  text-decoration: none;
  width: 2rem;
  grid-column: 1/2;
  grid-row: 1/3;
  font-size: 40px;
  width: 40px;
  margin-left: -15px;
}

@media (max-width: 360px) {
  .container_fv .box_cv .btn_tel::before {
    width: 1.75rem;
    font-size: 1.75rem;
  }
}

.container_fv .box_cv .btn_tel_free {
  display: block;
  font-size: 1.16rem;
  font-weight: bold;
  line-height: 1;
  margin-bottom: 10px;
  text-shadow: 1px 0px 4px rgba(201, 33, 51, 0.25);
  width: 100%;
  grid-column: 2/3;
  grid-row: 1/2;
  font-size: 22px;
  margin-bottom: 0;
}

.container_fv .box_cv .btn_tel_number {
  display: block;
  font-size: 0.875rem;
  font-weight: bold;
  line-height: 1;
  text-shadow: 1px 0px 4px rgba(201, 33, 51, 0.25);
  width: 100%;
  grid-column: 2/3;
  grid-row: 2/3;
  margin-bottom: 10px;
}

@media (max-width: 360px) {
  .container_fv .box_cv .btn_tel_number {
    font-size: 0.8125rem;
  }
}

.container_fv .box_cv .btn_tel_number {
  grid-row: 1/2;
}

.container_fv .box_cv .btn_tel_free {
  grid-row: 2/3;
}

.container_fv .box_cv .txt_free {
  display: none;
}

.container_fv .box_cv .txt_note {
  display: block;
  font-weight: bold;
  text-align: center;
  font-size: 0.75rem;
  width: 100%;
  max-width: 600px;
}

.container_fv .box_cv .txt_tel {
  display: none;
}

.container_fv .box_cv .txt_time {
  text-align: center;
  margin-bottom: 10px;
}

.container_fv .box_cv .btn_request {
  display: grid;
  grid-template-columns: repeat(2, auto);
  grid-template-rows: repeat(2, auto);
  align-items: center;
  justify-content: center;
  gap: 0 10px;
  width: 100%;
  max-width: 355px;
  margin-bottom: 10px;
  padding: 10px 8% 10px 5%;
  position: relative;
  cursor: pointer;
  border: 1px solid #2ca2ab;
  border-radius: 50px;
  box-shadow: 1px 6px 4px 0 rgba(0, 0, 0, 0.2);
  background: linear-gradient(to bottom, #52d8e3 0%, #3bb4bd 100%);
  color: #fff;
  max-width: none;
}

.container_fv .box_cv .btn_request a {
  width: 100%;
  height: 100%;
  position: absolute;
  top: 0;
  left: 0;
}

.container_fv .box_cv .btn_request:hover {
  opacity: 0.6;
}

@media (min-width: 768px) {
  .container_fv .box_cv .btn_request {
    gap: 0 20px;
  }
}

@media (max-width: 360px) {
  .container_fv .box_cv .btn_request {
    gap: 0 5px;
    padding-left: 10px;
    padding-right: 10px;
  }
}

.container_fv .box_cv .btn_request::before {
  background: #fff;
  border-radius: 4px;
  content: "\7121\6599";
  color: #ee827c;
  display: inline-block;
  font-size: 1rem;
  font-weight: bold;
  line-height: 1;
  text-align: center;
  text-shadow: none;
  width: 50px;
  padding: 6px;
  grid-column: 1/2;
  grid-row: 1/3;
}

@media (max-width: 360px) {
  .container_fv .box_cv .btn_request::before {
    width: 40px;
    font-size: 0.875rem;
  }
}

.container_fv .box_cv .btn_request_easy {
  display: block;
  font-size: 0.875rem;
  font-weight: normal;
  line-height: 1;
  margin-bottom: 3px;
  text-align: center;
  text-shadow: 1px 0px 4px rgba(16, 137, 147, 0.25);
  width: 100%;
  grid-column: 2/3;
  grid-row: 1/2;
  font-size: 14px;
  margin-bottom: 10px;
}

@media (max-width: 360px) {
  .container_fv .box_cv .btn_request_easy {
    font-size: 0.8125rem;
  }
}

.container_fv .box_cv .btn_request_document {
  align-items: center;
  display: flex;
  font-size: 1.25rem;
  font-weight: bold;
  justify-content: center;
  line-height: 1;
  text-align: center;
  text-shadow: 1px 0px 4px rgba(16, 137, 147, 0.25);
  width: 100%;
  grid-column: 2/3;
  grid-row: 2/3;
}

.container_fv .box_cv .btn_request_document::after {
  content: "\E5E1";
  display: inline-block;
  font-family: "material icons";
  font-size: 1.25rem;
  font-weight: normal;
  text-decoration: none;
  margin: 0 0 0 5px;
}

.container_fv .box_cv .btn_add {
  display: none;
}

.container_fv .box_cv .btn_remove {
  display: none;
}

.container_fv .link_allowance {
  align-items: center;
  color: #59bec5;
  display: flex;
  font-size: 0.875rem;
  font-weight: bold;
  justify-content: center;
}

.container_fv .link_allowance::after {
  content: "\E5CF";
  font-family: "material icons";
  font-size: 1.5rem;
  font-weight: normal;
  text-decoration: none;
}

.care-finder-container {
  width: calc(100% - 20px);
  text-align: center;
  position: relative;
  border: 1px solid #e0e0e0;
  margin: 24px 10px 40px;
}

.problem-text {
  background-color: #fdf8ef;
  margin: 0;
  padding: 10px;
  font-size: 16px;
  font-weight: bold;
  color: #444;
  position: relative;
}

.problem-text::after {
  content: "";
  position: absolute;
  bottom: -16px;
  left: 50%;
  transform: translateX(-50%);
  width: 0;
  height: 0;
  border-style: solid;
  border-width: 24px 40px 0 40px;
  border-color: #fdf8ef transparent transparent transparent;
  margin-top: -15px;
  z-index: 1;
}

.solution-box {
  background-color: #ffffff;
  border-radius: 6px;
  margin: 24px 0 0;
  position: relative;
  padding: 0;
}

.solution-lead {
  color: #DF6952;
  font-size: 18px;
  line-height: 1.7;
  font-weight: 600;
  padding: 0 10px;
}

.solution-txt {
  color: #444;
  font-size: 16px;
  margin-top: 0;
  margin-bottom: 12px;
  line-height: 1.7;
  padding: 0 10px;
}

.btn_request_add_condition {
  position: relative;
  cursor: pointer;
  border: 1px solid #2ca2ab;
  border-radius: 50px;
  box-shadow: 1px 6px 4px 0 rgba(0, 0, 0, 0.2);
  background: linear-gradient(to bottom, #52d8e3 0%, #3bb4bd 100%);
  color: #fff;
  display: flex;
  margin: 0 auto 20px;
  padding: 4px 0;
  width: calc(100% - 30px);
  justify-content: center;
  align-items: center;
  height: 48px;
  text-decoration: none;
}

.btn_request_add_condition::before {
  background: #fff;
  border-radius: 2px;
  content: "\7121\6599";
  color: #EE827C;
  margin-right: 8px;
  padding: 2px 4px;
  font-weight: bold;
  font-size: 14px;
}

.btn_request_add_condition .btn_request_document {
  font-size: 18px;
  font-weight: bold;
  line-height: 1;
  text-align: center;
  text-shadow: 1px 0px 4px rgba(16, 137, 147, 0.25);
}

@media screen and (min-width: 768px) {
  .container_fv #main-slider {
    aspect-ratio: 620/409;
  }

  .care-finder-container {
    width: 100%;
    margin: 24px 0 40px;
  }

  .problem-text {
    padding: 10px 0;
    font-size: 20px;
  }

  .solution-box {
    margin: 28px 0 0;
  }

  .solution-lead {
    font-size: 20px;
  }

  .btn_request_add_condition {
    margin: 0 auto;
    width: 400px;
    margin-bottom: 20px;
  }

  .btn_request_add_condition::before {
    padding: 4px 6px;
  }

  .btn_request_add_condition .btn_request_document {
    font-size: 1.25rem;
  }
}

.section_summary {
  margin: 0 auto 36px;
  width: calc(100% - 20px);
}

.section_summary .blk_map {
  height: 385px;
  margin-bottom: 24px;
  width: 100%;
}

.section_summary .blk_facility {
  margin-bottom: 20px;
}

.section_summary .blk_facility .list_condition {
  display: flex;
  flex-wrap: wrap;
  justify-content: flex-start;
}

.section_summary .blk_facility .list_condition li {
  background: #fae3e1;
  border-radius: 4px;
  display: inline-flex;
  font-size: 0.875rem;
  font-weight: bold;
  margin: 0 8px 12px 0;
  padding: 6px 10px;
}

.section_summary .blk_facility .list_service {
  display: flex;
  flex-wrap: wrap;
  justify-content: flex-start;
}

.section_summary .blk_facility .list_service li {
  background: #fcf3e6;
  border-radius: 4px;
  display: inline-flex;
  font-size: 0.875rem;
  font-weight: bold;
  margin: 0 8px 12px 0;
  padding: 6px 10px;
}

.section_summary .open_button_container {
  display: flex;
  margin-top: 5px;
}

.section_summary .open_button_container .map_icon {
  display: flex;
  align-items: center;
}

.section_summary .open_map_button {
  font-weight: 400;
  cursor: pointer;
  text-decoration: underline;
  border: none;
  background: none;
  color: #ee827c;
  font-size: 0.875rem;
}

.section_summary .blk_map {
  margin-top: 12px;
}

@media screen and (min-width: 768px) {
  .section_summary .open_map_button {
    font-size: 16px;
  }

  .section_summary .map_icon svg {
    width: 12px;
    height: 16px;
  }
}

.blk_cv {
  margin: 0 auto 24px;
  width: calc(100% - 20px);
}

.blk_cv_lead {
  align-items: center;
  color: #df6952;
  display: flex;
  font-weight: bold;
  justify-content: center;
  line-height: 1.5;
  margin: 0 auto 12px;
  max-width: 355px;
  position: relative;
  text-align: center;
  width: 100%;
}

.blk_cv_lead::before {
  border-left: 1px solid #df6952;
  content: "";
  display: block;
  height: 100%;
  left: 28px;
  position: absolute;
  transform: rotate(-24deg);
}

.blk_cv_lead::after {
  border-left: 1px solid #df6952;
  content: "";
  display: block;
  height: 100%;
  right: 28px;
  position: absolute;
  transform: rotate(24deg);
}

.blk_cv .box_cv {
  border: 1px solid #ccc;
  display: flex;
  flex-wrap: wrap;
  height: auto;
  justify-content: center;
  margin: 0 auto 10px;
  max-width: 355px;
  width: 100%;
}

.blk_cv .box_cv_ttl {
  background: #f5f5f5;
  display: block;
  font-size: 0.875rem;
  font-weight: bold;
  height: 32px;
  line-height: 32px;
  margin-bottom: 10px;
  text-align: center;
  width: 100%;
}

.blk_cv .box_cv_head {
  display: grid;
  grid-template-columns: auto 1fr;
  grid-template-rows: repeat(2, auto);
  gap: 10px 5px;
  align-items: center;
  width: 100%;
  margin-bottom: 10px;
  padding: 0 10px;
  max-width: 600px;
  position: relative;
}

.blk_cv .box_cv_head a {
  color: #59bec5;
}

.blk_cv .box_cv_thum {
  grid-column: 1/2;
  grid-row: 1/3;
  align-self: normal;
  display: block;
  width: 80px;
  height: 80px;
  -o-object-fit: cover;
     object-fit: cover;
  border-radius: 50%;
}

@media (max-width: 360px) {
  .blk_cv .box_cv_thum {
    width: 60px;
    height: 60px;
  }
}

.blk_cv .box_cv_crnm {
  grid-column: 2/3;
  grid-row: 1/2;
  display: block;
  align-self: end;
  color: #574726;
  font-size: 0.875rem;
  line-height: 1.5;
  margin: 0 0 0 8px;
}

.blk_cv .box_cv_lead {
  grid-column: 2/3;
  grid-row: 2/3;
  display: block;
  align-self: start;
  margin: 0 0 0 0;
  padding: 6px 10px;
  font-size: 0.875rem;
  color: #574726;
  line-height: 1.2;
  background: #fcf3e6;
  border-radius: 32px;
}

.blk_cv .box_cv .btn_tel {
  display: grid;
  grid-template-columns: repeat(2, auto);
  grid-template-rows: repeat(2, auto);
  align-items: center;
  justify-content: center;
  gap: 0 10px;
  width: 100%;
  max-width: 355px;
  margin-bottom: 10px;
  padding: 10px 8% 10px 5%;
  position: relative;
  cursor: pointer;
  border: 1px solid #f44f6d;
  border-radius: 50px;
  box-shadow: 1px 6px 4px 0 rgba(0, 0, 0, 0.2);
  background: linear-gradient(to bottom, #fe909c 0%, #ff7785 100%);
  color: #fff;
  background: transparent linear-gradient(180deg, #FFE7E6 0, #fe909c 2px, #ff7785 80%);
  border: 1px solid #f44f6d;
  margin: 0 10px 10px;
  padding: 17px 0 15px;
  gap: 0 5px;
}

.blk_cv .box_cv .btn_tel a {
  width: 100%;
  height: 100%;
  position: absolute;
  top: 0;
  left: 0;
}

.blk_cv .box_cv .btn_tel:hover {
  opacity: 0.6;
}

@media (min-width: 768px) {
  .blk_cv .box_cv .btn_tel {
    gap: 0 20px;
  }
}

@media (max-width: 360px) {
  .blk_cv .box_cv .btn_tel {
    gap: 0 5px;
    padding-left: 10px;
    padding-right: 10px;
  }
}

.blk_cv .box_cv .btn_tel::before {
  content: "\E0CD";
  display: inline-block;
  font-family: "material icons";
  font-size: 2rem;
  font-weight: normal;
  text-decoration: none;
  width: 2rem;
  grid-column: 1/2;
  grid-row: 1/3;
  font-size: 40px;
  width: 40px;
  margin-left: -15px;
}

@media (max-width: 360px) {
  .blk_cv .box_cv .btn_tel::before {
    width: 1.75rem;
    font-size: 1.75rem;
  }
}

.blk_cv .box_cv .btn_tel_free {
  display: block;
  font-size: 1.16rem;
  font-weight: bold;
  line-height: 1;
  margin-bottom: 10px;
  text-shadow: 1px 0px 4px rgba(201, 33, 51, 0.25);
  width: 100%;
  grid-column: 2/3;
  grid-row: 1/2;
  font-size: 22px;
  margin-bottom: 0;
}

.blk_cv .box_cv .btn_tel_number {
  display: block;
  font-size: 0.875rem;
  font-weight: bold;
  line-height: 1;
  text-shadow: 1px 0px 4px rgba(201, 33, 51, 0.25);
  width: 100%;
  grid-column: 2/3;
  grid-row: 2/3;
  margin-bottom: 10px;
}

@media (max-width: 360px) {
  .blk_cv .box_cv .btn_tel_number {
    font-size: 0.8125rem;
  }
}

.blk_cv .box_cv .btn_tel_number {
  grid-row: 1/2;
}

.blk_cv .box_cv .btn_tel_free {
  grid-row: 2/3;
}

.blk_cv .box_cv .txt_free {
  display: none;
}

.blk_cv .box_cv .wrap_tel {
  width: 100%;
  max-width: 600px;
  margin: auto;
  text-align: center;
}

.blk_cv .box_cv .txt_tel {
  display: none;
}

.blk_cv .box_cv .txt_time {
  font-size: 0.875rem;
  margin-bottom: 10px;
}

.blk_cv .box_cv .btn_request {
  display: grid;
  grid-template-columns: repeat(2, auto);
  grid-template-rows: repeat(2, auto);
  align-items: center;
  justify-content: center;
  gap: 0 10px;
  width: 100%;
  max-width: 355px;
  margin-bottom: 10px;
  padding: 10px 8% 10px 5%;
  position: relative;
  cursor: pointer;
  border: 1px solid #2ca2ab;
  border-radius: 50px;
  box-shadow: 1px 6px 4px 0 rgba(0, 0, 0, 0.2);
  background: linear-gradient(to bottom, #52d8e3 0%, #3bb4bd 100%);
  color: #fff;
  margin: 0 10px 15px;
}

.blk_cv .box_cv .btn_request a {
  width: 100%;
  height: 100%;
  position: absolute;
  top: 0;
  left: 0;
}

.blk_cv .box_cv .btn_request:hover {
  opacity: 0.6;
}

@media (min-width: 768px) {
  .blk_cv .box_cv .btn_request {
    gap: 0 20px;
  }
}

@media (max-width: 360px) {
  .blk_cv .box_cv .btn_request {
    gap: 0 5px;
    padding-left: 10px;
    padding-right: 10px;
  }
}

.blk_cv .box_cv .btn_request::before {
  background: #fff;
  border-radius: 4px;
  content: "\7121\6599";
  color: #ee827c;
  display: inline-block;
  font-size: 1rem;
  font-weight: bold;
  line-height: 1;
  text-align: center;
  text-shadow: none;
  width: 50px;
  padding: 6px;
  grid-column: 1/2;
  grid-row: 1/3;
}

@media (max-width: 360px) {
  .blk_cv .box_cv .btn_request::before {
    width: 40px;
    font-size: 0.875rem;
  }
}

.blk_cv .box_cv .btn_request_easy {
  display: block;
  font-size: 0.875rem;
  font-weight: normal;
  line-height: 1;
  margin-bottom: 3px;
  text-align: center;
  text-shadow: 1px 0px 4px rgba(16, 137, 147, 0.25);
  width: 100%;
  grid-column: 2/3;
  grid-row: 1/2;
  font-size: 14px;
  margin-bottom: 10px;
}

@media (max-width: 360px) {
  .blk_cv .box_cv .btn_request_easy {
    font-size: 0.8125rem;
  }
}

.blk_cv .box_cv .btn_request_document {
  align-items: center;
  display: flex;
  font-size: 1.25rem;
  font-weight: bold;
  justify-content: center;
  line-height: 1;
  text-align: center;
  text-shadow: 1px 0px 4px rgba(16, 137, 147, 0.25);
  width: 100%;
  grid-column: 2/3;
  grid-row: 2/3;
}

.blk_cv .box_cv .btn_request_document::after {
  content: "\E5E1";
  display: inline-block;
  font-family: "material icons";
  font-size: 1.25rem;
  font-weight: normal;
  text-decoration: none;
  margin: 0 0 0 5px;
}

.blk_cv .box_cv .btn_add {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 100%;
  max-width: 600px;
  height: 40px;
  margin: 0 10px 10px;
  border: 1px solid #ddd;
  border-radius: 50px;
  cursor: pointer;
  position: relative;
  background: linear-gradient(180deg, #fff 0%, #efefef 100%);
  color: #574726;
}

.blk_cv .box_cv .btn_add a {
  width: 100%;
  height: 100%;
  position: absolute;
  top: 0;
  left: 0;
}

.blk_cv .box_cv .btn_add_facility {
  align-items: center;
  display: flex;
  font-size: 1rem;
  font-weight: bold;
  justify-content: center;
  line-height: 1;
  text-align: center;
  width: 100%;
}

.blk_cv .box_cv .btn_add_facility::before {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 20px;
  height: 20px;
  margin-right: 6px;
  border-radius: 50%;
  background: #59bec5;
  content: "\E145";
  color: #fff;
  font-family: "material icons";
  font-weight: bold;
}

.blk_cv .box_cv .btn_remove {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 100%;
  max-width: 600px;
  height: 40px;
  margin: 0 10px 10px;
  border: 1px solid #ddd;
  border-radius: 50px;
  cursor: pointer;
  position: relative;
  background: linear-gradient(180deg, #efefef 0%, #fff 100%);
  color: #ccc;
}

.blk_cv .box_cv .btn_remove a {
  width: 100%;
  height: 100%;
  position: absolute;
  top: 0;
  left: 0;
}

.blk_cv .box_cv .btn_remove_facility {
  align-items: center;
  display: flex;
  font-size: 1rem;
  font-weight: bold;
  justify-content: center;
  line-height: 1;
  text-align: center;
  width: 100%;
}

.blk_cv .box_cv .btn_remove_facility::before {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 20px;
  height: 20px;
  margin-right: 6px;
  border-radius: 50%;
  background: #ccc;
  content: "\E876";
  color: #fff;
  font-family: "material icons";
  font-weight: bold;
}

.blk_cv .link_allowance {
  align-items: center;
  color: #59bec5;
  display: flex;
  font-size: 0.875rem;
  font-weight: bold;
  justify-content: center;
}

.blk_cv .link_allowance::after {
  content: "arrow_forward_ios";
  font-family: "material icons";
  font-size: 1rem;
  font-weight: normal;
  text-decoration: none;
}

.blk_cv__campaign_link {
  text-align: center;
}

.blk_cv__campaign_link a {
  color: #59bec5;
  font-size: 15px;
  display: inline-flex;
  align-items: center;
  font-weight: bold;
  margin-top: 5px;
}

.blk_cv__campaign_link a::after {
  content: "\E5E1";
  display: inline-block;
  font-family: "material icons";
  font-size: 1.25rem;
  font-weight: normal;
  text-decoration: none;
  margin: 0 0 0 5px;
  font-size: 1em;
}

.blk_cv__campaign_link a:hover {
  opacity: 0.7;
}

.blk_bnr_cta {
  display: flex;
  align-items: center;
  justify-content: center;
  flex-flow: row wrap;
  margin: 40px 10px;
}

.blk_bnr_cta > p {
  width: 100%;
  box-sizing: border-box;
  background: #FCF3E6;
  border: 1px solid #E4DED5;
  border-radius: 3px;
  padding: 8px;
  margin-bottom: 20px;
}

.blk_bnr_cta > a > img {
  width: 100%;
}

.blk_bnr_cta > a > img:first-of-type {
  display: none;
}

.blk_bnr_cta > a > img:last-of-type {
  display: block;
}

.blk-other-search {
  margin: 50px 0;
  text-align: center;
}

.blk-other-search > a {
  font-size: 24px;
  font-weight: 600;
  letter-spacing: 0.01em;
  line-height: 1.4;
  text-decoration: underline;
}

.blk-other-search > a::before {
  content: ">";
}

.blk-other-search > a:hover {
  opacity: 0.7;
}

.section_medical {
  margin: 0 auto;
  width: calc(100% - 20px);
}

.section_medical .blk_medical {
  margin-bottom: 36px;
  display: flex;
  flex-direction: column;
}

.section_medical .blk_medical .list_accept {
  display: flex;
  flex-wrap: nowrap;
  font-weight: bold;
  justify-content: space-between;
  margin-bottom: 10px;
  order: 1;
}

.section_medical .blk_medical .list_accept li {
  display: inline-flex;
  flex-wrap: wrap;
  justify-content: center;
  line-height: 1.5;
  margin: 40px 0 0;
  position: relative;
  text-align: center;
  width: 30%;
  font-size: 12px;
  font-weight: normal;
  align-items: center;
  margin: 0;
}

.section_medical .blk_medical .list_accept li.item_circle::before {
  color: #ee827c;
  content: "\E836";
  font-family: "material icons";
  font-size: 1.75rem;
  font-weight: normal;
  bottom: 100%;
  position: initial;
  margin-right: 5px;
}

.section_medical .blk_medical .list_accept li.item_triangle::before {
  color: #f3931c;
  content: "\E86B";
  font-family: "material icons";
  font-size: 1.75rem;
  font-weight: normal;
  bottom: 100%;
  position: initial;
  margin-right: 5px;
}

.section_medical .blk_medical .list_accept li.item_cross::before {
  color: #888;
  content: "\E5CD";
  font-family: "material icons";
  font-size: 1.75rem;
  font-weight: normal;
  bottom: 100%;
  position: initial;
  margin-right: 5px;
}

.section_medical .blk_medical .list_medical {
  border-left: 1px solid #ccc;
  display: flex;
  flex-wrap: wrap;
  font-weight: bold;
  margin-bottom: 20px;
  order: 0;
}

.section_medical .blk_medical .list_medical li {
  align-items: center;
  border-bottom: 1px solid #ccc;
  border-right: 1px solid #ccc;
  display: flex;
  flex-wrap: nowrap;
  justify-content: flex-start;
  width: 50%;
  padding: 5px 5px 5px 0;
  line-height: 1.4;
}

.section_medical .blk_medical .list_medical li:first-child, .section_medical .blk_medical .list_medical li:nth-child(2) {
  border-top: 1px solid #ccc;
}

.section_medical .blk_medical .list_medical li.item_circle::before {
  color: #ee827c;
  content: "\E836";
  font-family: "material icons";
  font-size: 1.5rem;
  font-weight: normal;
  padding: 0 8px;
}

.section_medical .blk_medical .list_medical li.item_triangle::before {
  color: #f3931c;
  content: "\E86B";
  font-family: "material icons";
  font-size: 1.5rem;
  font-weight: normal;
  padding: 0 8px;
}

.section_medical .blk_medical .list_medical li.item_cross::before {
  color: #888;
  content: "\E5CD";
  font-family: "material icons";
  font-size: 1.5rem;
  font-weight: normal;
  padding: 0 8px;
}

.section_medical .blk_medical .txt_attention {
  font-size: 0.75rem;
  order: 2;
}

.section_medical .blk_medical h4 {
  margin: 20px 0 20px;
}

.section_medical .blk_medical .txt_medical {
  margin-bottom: 20px;
}

.section_present {
  background: #fcf3e6;
  border-radius: 8px;
  margin: 0 auto 36px;
  padding: 20px 10px;
  position: relative;
  text-align: center;
  width: calc(100% - 20px);
}

.section_present_lead {
  font-weight: bold;
  margin: 0 20px 10px;
}

.section_present h2 {
  border: none;
  margin: 0 0 15px;
}

.section_present .img_gift {
  height: auto;
  margin: auto;
  width: 40%;
}

.section_present .txt_gift {
  align-items: center;
  display: flex;
  font-weight: bold;
  justify-content: center;
  margin-bottom: 5px;
}

.section_present .txt_gift span {
  color: #df6952;
  margin-bottom: 5px;
}

.section_present .txt_gift span strong {
  font-size: 1.25rem;
}

.section_present .txt_attention {
  font-size: 0.75rem;
  margin-bottom: 24px;
}

.section_present .btn_allowance {
  background: #fff;
  border: 2px solid #59bec5;
  border-radius: 5px;
  color: #59bec5;
  height: 32px;
  margin-bottom: 36px;
  position: relative;
  width: 100%;
}

.section_present .btn_allowance_apply {
  font-weight: bold;
  line-height: 1;
}

.section_present .btn_allowance_apply::after {
  content: "\E5E1";
  display: inline-block;
  font-family: "material icons";
  font-weight: normal;
  margin-left: 4px;
  vertical-align: bottom;
}

.section_present .btn_allowance a {
  height: 100%;
  left: 0;
  position: absolute;
  top: 0;
  width: 100%;
}

.section_present .blk_present {
  margin-bottom: 20px;
  text-align: left;
}

.section_present .blk_present .list_flow li {
  margin-bottom: 14px;
  padding: 10px 100px 15px 10px;
}

.section_present .blk_present .list_flow li.flow_01 {
  background: #fff url(/img/gift/tel.png) right 10px center no-repeat;
  background-size: 64px;
}

.section_present .blk_present .list_flow li.flow_02 {
  background: #fff url(/img/gift/done.png) right 10px no-repeat;
  background-size: 64px;
}

.section_present .blk_present .list_flow li.flow_03 {
  background: #fff url(/img/gift/note.png) right 10px no-repeat;
  background-size: 64px;
}

.section_present .blk_present .list_flow li dl {
  line-height: 1.5;
  margin: 0;
}

.section_present .blk_present .list_flow li dl dt {
  font-weight: bold;
  margin-bottom: 10px;
}

.section_present .blk_apply {
  margin-bottom: 20px;
  text-align: left;
}

.section_present .blk_apply dl {
  line-height: 1.5;
  margin: 0;
}

.section_present .blk_apply dl dt {
  background: #fff;
  font-weight: bold;
  padding: 10px 10px;
}

.section_present .blk_apply dl dd {
  background: #fff;
  margin-bottom: 10px;
  padding: 0 10px 15px;
}

.section_present .blk_apply ol li {
  padding-left: 0.875rem;
  text-indent: -0.875rem;
}

.section_present .blk_attention {
  margin-bottom: 20px;
  text-align: left;
}

.section_present .blk_attention_inner {
  background: #fff;
  padding: 10px;
}

.section_present .blk_attention p {
  margin-bottom: 10px;
}

.section_present .blk_attention ol {
  margin-bottom: 10px;
}

.section_present .blk_attention ol li {
  line-height: 1.5;
  padding-left: 0.875rem;
  text-indent: -0.875rem;
}

.section_present .blk_attention ul {
  margin-bottom: 10px;
}

.section_present .blk_attention ul li {
  line-height: 1.5;
  padding-left: 0.875rem;
  text-indent: -0.875rem;
}

.section_present .blk_attention h4 {
  margin: 0 0 10px;
}

.section_campaign {
  margin: 0 auto 48px;
  width: calc(100% - 20px);
}

.section_campaign .blk_campaign {
  font-size: 1rem;
  margin-bottom: 20px;
}

.section_campaign .blk_campaign_inner {
  font-size: 0.9375rem;
}

.section_campaign .blk_campaign_inner p {
  margin-bottom: 10px;
}

.section_campaign .blk_campaign_inner p:last-child {
  margin-bottom: 0;
}

.section_campaign .blk_campaign .img_campaign {
  height: auto;
  margin-bottom: 20px;
  width: 100%;
}

.section_campaign .blk_campaign .icon_campaign {
  border: 1px solid #ee827c;
  color: #ee827c;
  display: inline-block;
  font-weight: bold;
  margin-bottom: 10px;
  padding: 2px 4px;
}

.section_review_speciality {
  margin: 0 auto 48px;
  font-size: 1rem;
  width: calc(100% - 20px);
}

.section_review_speciality-content {
  display: flex;
  flex-direction: column;
  gap: 16px;
  background: #fcf3e6;
  padding: 20px 10px;
  border-radius: 8px;
}

.section_review_speciality-content .couselor {
  display: flex;
  justify-content: start;
  align-items: center;
  gap: 18px;
  font-size: 0.75rem;
}

.section_review_speciality-content .couselor img {
  grid-column: 1/2;
  grid-row: 1/3;
  align-self: normal;
  display: block;
  width: 80px;
  height: 80px;
  -o-object-fit: cover;
     object-fit: cover;
  border-radius: 50%;
  width: 80px;
  height: 80px;
  margin: auto 0;
}

@media (max-width: 360px) {
  .section_review_speciality-content .couselor img {
    width: 60px;
    height: 60px;
  }
}

.section_review_speciality-content .couselor h3 {
  margin-bottom: 0;
  padding-bottom: 0;
}

.section_review_speciality-content .couselor > div {
  display: flex;
  flex-direction: column;
  gap: 4px;
}

.section_review_speciality-content .couselor > div > div {
  font-size: 14px;
}

.section_review_speciality-content h3 {
  border: none !important;
  padding: 0 !important;
  font-weight: normal !important;
}

.section_review_speciality-content .review_catchphrase {
  font-size: 18px;
  font-weight: bold;
  font-family: "Roboto", "Noto Sans JP", sans-serif;
  line-height: 1.5;
  display: block;
}

.section_review_speciality-content .review_catchphrase strong {
  font-weight: bold;
}

.section_review_speciality-content .review-text {
  width: 100%;
  position: relative;
}

.section_review_speciality-content .review-text h4 {
  color: #df6952;
  margin: 15px 0 5px;
}

.section_review_speciality-content .review-text p {
  line-height: 1.7;
}

.section_review_speciality-content .review-text .desc {
  width: 100%;
  padding: 20px;
  border-radius: 8px;
  background-color: white;
  line-height: 1.5;
  font-size: 16px;
}

.section_review_speciality_more-label {
  position: absolute;
  z-index: 1;
  bottom: -1px;
  width: 100%;
  height: 60px;
  cursor: pointer;
  text-align: center;
  background: linear-gradient(to bottom, rgba(255, 255, 255, 0) 0%, white 80%);
  display: flex;
  justify-content: center;
  align-items: center;
  padding-top: 20px;
  color: #59bec5;
  border-radius: 0 0 8px 8px;
}

.section_review_speciality_more-label::before {
  content: "\E038";
  font-family: "material icons";
  font-size: 1.5rem;
  margin-right: 8px;
  transform: rotate(0.25turn);
}

.section_review_speciality_more-label::after {
  content: "\8A73\3057\304F\898B\308B";
}

.section_review_speciality_more-check {
  display: none;
}

.section_review_speciality_more-check + div {
  max-height: 300px;
  overflow: hidden;
}

.section_review_speciality_more-check:checked + div.desc {
  max-height: none;
  overflow: visible;
  padding-bottom: 40px;
}

.section_review_speciality_more-check:checked + div.desc + label {
  background: none;
}

.section_review_speciality_more-check:checked + div.desc + label::before {
  transform: rotate(0.75turn);
}

.section_review_speciality_more-check:checked + div.desc + label::after {
  content: "\9589\3058\308B";
}

.section_recommend {
  margin: 0 auto 48px;
  width: calc(100% - 20px);
}

.section_recommend_lead {
  margin-bottom: 20px;
  white-space: pre-line;
}

.section_recommend .list_recommend {
  background: #fcf3e6;
  border-radius: 8px;
  font-weight: bold;
  line-height: 1.7;
  margin-bottom: 20px;
  padding: 20px 15px 10px;
}

.section_recommend .list_recommend li {
  margin-bottom: 10px;
  padding-left: 1.5rem;
  text-indent: -1.5rem;
  font-size: 1rem;
  letter-spacing: 0.02em;
  white-space: pre-line;
}

.section_recommend .list_recommend li span {
  color: #ee827c;
  font-size: 1.125rem;
  font-weight: normal;
  margin-right: 0.375rem;
}

.section_recommend .blk_facility {
  margin-bottom: 16px;
}

.section_recommend .blk_facility .list_preference {
  display: flex;
  flex-wrap: wrap;
  justify-content: flex-start;
}

.section_recommend .blk_facility .list_preference li {
  background: #fae3e1;
  border-radius: 4px;
  display: inline-flex;
  font-size: 0.75rem;
  font-weight: bold;
  margin: 0 8px 8px 0;
  padding: 6px 10px;
}

.section_price {
  line-height: 1.6;
  margin: 0 auto 48px auto;
  padding: 0;
  width: calc(100% - 20px);
}

@media (max-width: 767px) {
  .section_price .\--pc {
    display: none !important;
  }
}

@media (min-width: 768px) {
  .section_price .\--sp {
    display: none !important;
  }
}

.section_price .section_price_header {
  margin: 10px 0;
  width: 100%;
  display: flex;
  justify-content: flex-end;
  align-items: center;
  font-size: 14px;
}

@media (min-width: 768px) {
  .section_price .section_price_header {
    margin: 24px 0 16px;
  }
}

.section_price .section_price_header .sort_box {
  display: flex;
  align-items: center;
  justify-content: flex-end;
  gap: 10px;
}

.section_price .section_price_header .sort_box .plan_sort {
  color: #444;
}

.section_price .section_price_header select {
  border-radius: 5px;
  border: 1px solid #CCC;
  background: linear-gradient(180deg, #FFF 0%, #F0F0F0 100%);
  padding: 8px 4px 8px 8px;
  color: #444;
}

.section_price .plan_table_header {
  display: flex;
  border: 1px solid #CCC;
  background: #F6F6F6;
  text-align: center;
  font-size: 16px;
}

.section_price .plan_table_header .th_name {
  flex: 1 1 34%;
}

.section_price .plan_table_header .th_cost:nth-of-type(2) {
  flex: 1 1 19%;
}

.section_price .plan_table_header .th_cost:nth-of-type(3) {
  flex: 1 1 14%;
}

.section_price .plan_table_header .th_meta:nth-of-type(4) {
  flex: 1 1 10%;
}

.section_price .plan_table_header .th_meta:nth-of-type(5) {
  flex: 1 1 10%;
}

.section_price .plan_table_header .th_action {
  flex: 1 1 13%;
}

.section_price .plan_table_header > div {
  padding: 9px;
  border-right: 1px solid #CCC;
}

.section_price .plan_table_header > div:last-child {
  border-right: none;
}

.section_price .plan_item {
  border-bottom: 1px dashed #CCC;
  padding: 20px 0 10px;
}

.section_price .plan_item:first-of-type {
  padding-top: 20px;
}

@media (min-width: 768px) {
  .section_price .plan_item:first-of-type {
    padding-top: 0;
  }
}

@media (min-width: 768px) {
  .section_price .plan_item {
    border-right: 1px solid #CCC;
    border-left: 1px solid #CCC;
    border-bottom: 1px solid #CCC;
    padding: 0;
  }
}

.section_price .plan_summary .plan_name {
  font-size: 22px;
  font-weight: 700;
  margin-bottom: 10px;
}

.section_price .plan_summary .plan_meta {
  font-size: 14px;
  margin-bottom: 10px;
}

.section_price .plan_summary .plan_meta span {
  margin-right: 20px;
}

.section_price .plan_summary .plan_meta span strong {
  font-weight: 700;
}

.section_price .plan_summary .plan_costs {
  display: flex;
  border: 1px solid #ccc;
  overflow: hidden;
  margin-bottom: 10px;
}

.section_price .plan_summary .plan_costs .cost_col {
  flex: 0.84;
  text-align: center;
}

@media (min-width: 768px) {
  .section_price .plan_summary .plan_costs .cost_col {
    flex: 1;
  }
}

.section_price .plan_summary .plan_costs .cost_col:first-child {
  flex: 1.16;
  border-right: 1px solid #ccc;
}

@media (min-width: 768px) {
  .section_price .plan_summary .plan_costs .cost_col:first-child {
    flex: 1;
  }
}

.section_price .plan_summary .plan_costs .cost_label {
  background: #FCF3E6;
  font-size: 14px;
  padding: 3px 4px;
  border-bottom: 1px solid #ccc;
}

.section_price .plan_summary .plan_costs .cost_value {
  font-size: 18px;
  font-weight: 700;
  color: #DF6952;
}

.section_price .plan_summary .plan_costs .cost_value > span {
  font-size: 14px;
}

.section_price .plan_summary .plan_toggle {
  text-align: center;
}

.section_price .plan_summary .plan_toggle .btn_toggle_detail {
  background: none;
  border: none;
  color: #59BEC5;
  font-weight: bold;
  cursor: pointer;
  font-size: 14px;
  line-height: 1;
  padding: 0;
}

.section_price .plan_summary .plan_toggle .btn_toggle_detail > span {
  display: flex;
  align-items: center;
}

.section_price .plan_summary .plan_toggle .btn_toggle_detail > span.\--open::before {
  content: "\E316";
  font-family: "material icons";
  font-size: 24px;
  color: #59BEC5;
}

.section_price .plan_summary .plan_toggle .btn_toggle_detail > span.\--close::before {
  content: "\E313";
  font-family: "material icons";
  font-size: 24px;
  color: #59BEC5;
}

@media (min-width: 768px) {
  .section_price .plan_summary {
    display: flex;
    align-items: stretch;
    padding: 0;
    text-align: center;
  }

  .section_price .plan_summary .plan_name,
.section_price .plan_summary .plan_costs .cost_value,
.section_price .plan_summary .plan_meta_pc .meta_col,
.section_price .plan_summary .plan_toggle {
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 18px 8px;
  }

  .section_price .plan_summary .plan_name {
    flex: 1 1 34%;
    font-size: 18px;
    font-weight: 700;
    border-right: 1px solid #CCC;
    text-align: left;
    justify-content: flex-start;
    padding: 18px;
    margin: 0;
  }

  .section_price .plan_summary .plan_costs {
    display: contents;
    border: none;
    border-radius: 0;
    border: 0;
    overflow: visible;
    margin: 0;
    height: auto;
  }

  .section_price .plan_summary .plan_costs .cost_col {
    display: contents;
    border: none !important;
    padding: 0;
    margin: 0;
    border: 0;
  }

  .section_price .plan_summary .plan_costs .cost_col:nth-child(1) .cost_value {
    flex: 1 1 19%;
  }

  .section_price .plan_summary .plan_costs .cost_col:nth-child(2) .cost_value {
    flex: 1 1 14%;
  }

  .section_price .plan_summary .plan_costs .cost_col .cost_value {
    color: #DF6952;
    font-size: 18px;
    font-weight: 700;
    border-right: 1px solid #CCC;
    height: auto;
  }

  .section_price .plan_summary .plan_costs .cost_col .cost_value > span {
    font-size: 18px;
  }

  .section_price .plan_summary .plan_meta_pc {
    display: contents;
    margin-bottom: 0;
  }

  .section_price .plan_summary .plan_meta_pc .meta_col {
    flex: 1;
    text-align: center;
    font-size: 0.9rem;
    border-right: 1px solid #CCC;
    font-size: 14px;
  }

  .section_price .plan_summary .plan_meta_pc .meta_col:nth-child(1) {
    flex: 1 1 10%;
  }

  .section_price .plan_summary .plan_meta_pc .meta_col:nth-child(2) {
    flex: 1 1 10%;
  }

  .section_price .plan_summary .plan_toggle {
    flex: 1 1 13%;
    padding: 18px 6px;
  }

  .section_price .plan_summary .plan_toggle .btn_toggle_detail {
    display: inline-flex;
    padding: 4px 8px 4px 4px;
    align-items: center;
    gap: 4px;
    border-radius: 99px;
    border: 1px solid #59BEC5;
    background: #FFF;
    transition: all 0.2s;
    color: #59BEC5;
    text-align: center;
    font-size: 16px;
    font-weight: 700;
  }

  .section_price .plan_summary .plan_toggle .btn_toggle_detail:hover {
    opacity: 0.8;
  }
}

@media (min-width: 768px) {
  .section_price .plan_list_wrapper:not(.is-show-all) .plan_item.is-hidden-by-sort {
    display: none !important;
  }
}

@media (max-width: 767px) {
  .section_price .plan_list_wrapper:not(.is-show-all) .plan_item.is-hidden-by-sort--sp {
    display: none !important;
  }
}

@media (min-width: 768px) {
  .section_price .plan_detail_area {
    padding: 20px;
    border-top: 1px solid #ccc;
  }
}

.section_price .plan_detail_area .detail_heading {
  border-left: 4px solid #ee827c;
  padding-left: 10px;
  font-size: 16px;
  font-weight: bold;
  margin: 0 0 10px 0;
}

.section_price .plan_detail_area .detail_grid {
  display: grid;
  grid-template-columns: 1fr;
  gap: 20px;
}

@media (min-width: 768px) {
  .section_price .plan_detail_area .detail_grid {
    grid-template-columns: 1fr 1fr;
    gap: 24px 40px;
  }
}

.section_price .plan_detail_area .detail_subheading {
  margin: 0 0 7px 0;
  font-size: 16px;
  font-weight: 700;
}

.section_price .plan_detail_area .table_detail_sub {
  width: 100%;
  border-collapse: collapse;
  margin-bottom: 10px;
}

@media (min-width: 768px) {
  .section_price .plan_detail_area .table_detail_sub {
    margin-bottom: 20px;
  }
}

.section_price .plan_detail_area .table_detail_sub th, .section_price .plan_detail_area .table_detail_sub td {
  border: 1px solid #CCC;
  padding: 3px 4px;
  font-size: 14px;
}

@media (min-width: 768px) {
  .section_price .plan_detail_area .table_detail_sub th, .section_price .plan_detail_area .table_detail_sub td {
    padding: 8px 10px;
    font-size: 16px;
  }
}

.section_price .plan_detail_area .table_detail_sub th {
  background: #F6F6F6;
  width: 35%;
  text-align: left;
  font-weight: normal;
}

.section_price .plan_detail_area .list_attention {
  font-size: 12px;
  font-weight: 400;
  line-height: 1.5;
  margin-bottom: 10px;
}

@media (min-width: 768px) {
  .section_price .plan_detail_area .list_attention {
    font-size: 14px;
    margin-bottom: 20px;
  }
}

.section_price .plan_detail_area .list_attention li {
  margin-bottom: 5px;
  white-space: break-spaces;
}

@media (min-width: 768px) {
  .section_price .plan_detail_area .img_room {
    margin-top: 38px;
    padding: 0 40px;
  }
}

.section_price .plan_detail_area .img_room img {
  max-width: 100%;
  height: auto;
}

.section_price .plan_detail_area .img_room .img_note {
  display: block;
  font-size: 12px;
  margin-top: 10px;
}

.section_price .plan_detail_area .detail_close {
  text-align: center;
  margin-top: 20px;
}

.section_price .plan_detail_area .detail_close .btn_close_detail {
  background: none;
  border: none;
  font-size: 14px;
  color: #59BEC5;
  font-weight: 700;
  cursor: pointer;
  display: inline-flex;
  align-items: center;
  gap: 5px;
}

.section_price .plan_detail_area .detail_close .btn_close_detail::before {
  content: "\E316";
  font-family: "material icons";
  font-size: 24px;
  color: #59BEC5;
}

.section_price .plan_list_wrapper {
  position: relative;
  margin: 0 0 70px 0;
}

.section_price .plan_show_all_wrapper {
  text-align: center;
  display: flex;
  justify-content: center;
  align-items: flex-end;
  padding: 20px 0;
  width: 100%;
  height: 150px;
  position: absolute;
  bottom: -35px;
  background: linear-gradient(180deg, rgba(255, 255, 255, 0) 0%, #FFF 60%, #FFF 100%);
}

@media (min-width: 768px) {
  .section_price .plan_show_all_wrapper {
    height: 100px;
    bottom: 0;
  }
}

.section_price .plan_show_all_wrapper.\--close {
  position: relative;
  height: auto;
  bottom: 0;
}

.section_price .plan_show_all_wrapper .btn_show_all_plans {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  background: none;
  border: none;
  color: #59BEC5;
  font-weight: 700;
  cursor: pointer;
  font-size: 16px;
}

.section_price .plan_show_all_wrapper .btn_show_all_plans > span {
  display: flex;
  align-items: center;
  justify-content: center;
}

.section_price .plan_show_all_wrapper .btn_show_all_plans .icon_circle {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 20px;
  height: 20px;
  background-color: #59BEC5;
  color: #fff;
  border-radius: 50%;
  margin-right: 5px;
  font-size: 0.7rem;
  line-height: 1;
}

.section_price_benesse_insurance {
  color: #777;
  padding-bottom: 0.5rem;
  font-size: 0.875rem;
  margin-top: -40px;
  margin-bottom: 40px;
}

.section_price_benesse_plan {
  color: #777;
  padding-bottom: 0.5rem;
  font-size: 0.875rem;
  white-space: pre-line;
  margin-top: -40px;
  margin-bottom: 40px;
}

.section_price_attention {
  font-weight: bold;
  margin-top: -40px;
  margin-bottom: 40px;
}

.section_price .plan_simulator {
  background: #f6f6f6;
  border-radius: 4px;
  margin: 12px 0;
  overflow: hidden;
  box-shadow: 2px 2px 4px rgba(0, 0, 0, 0.2);
}

@media (min-width: 768px) {
  .section_price .plan_simulator {
    margin: 16px 0 8px;
  }
}

.section_price .plan_simulator__toggle {
  width: 100%;
  display: flex;
  align-items: center;
  gap: 10px;
  padding: 13px 14px;
  background: transparent;
  border: none;
  cursor: pointer;
  text-align: left;
  line-height: 1.4;
  color: #444;
}

@media (min-width: 768px) {
  .section_price .plan_simulator__toggle {
    padding: 14px 20px;
    gap: 12px;
  }
}

.section_price .plan_simulator__icon {
  flex-shrink: 0;
  width: 36px;
  height: 40px;
  -o-object-fit: contain;
     object-fit: contain;
  display: block;
}

@media (min-width: 768px) {
  .section_price .plan_simulator__icon {
    width: 40px;
    height: 45px;
  }
}

.section_price .plan_simulator__title {
  flex: 1;
  display: flex;
  flex-direction: column;
  gap: 2px;
}

.section_price .plan_simulator__title_lead {
  font-size: 13px;
  font-weight: 700;
  color: #444;
  line-height: 1.5;
}

@media (min-width: 768px) {
  .section_price .plan_simulator__title_lead {
    font-size: 14px;
  }
}

.section_price .plan_simulator__title_main {
  font-size: 16px;
  font-weight: 700;
  color: #444;
  line-height: 1.5;
}

@media (min-width: 768px) {
  .section_price .plan_simulator__title_main {
    font-size: 18px;
  }
}

.section_price .plan_simulator__chevron {
  flex-shrink: 0;
  width: 30px;
  height: 30px;
  position: relative;
}

.section_price .plan_simulator__chevron::before {
  content: "";
  position: absolute;
  top: 50%;
  left: 50%;
  width: 12px;
  height: 12px;
  border-right: 3px solid #EE827C;
  border-bottom: 3px solid #EE827C;
  transform: translate(-50%, -75%) rotate(45deg);
  z-index: 2;
}

.section_price .plan_simulator__chevron::after {
  content: "";
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  width: 30px;
  height: 30px;
  background-color: #fff;
  border-radius: 50%;
  z-index: 1;
}

.section_price .plan_simulator__toggle.is-open .plan_simulator__chevron::before {
  transform: translate(-50%, -35%) rotate(-135deg);
}

.section_price .plan_simulator__body {
  padding: 4px 10px 14px;
}

@media (min-width: 768px) {
  .section_price .plan_simulator__body {
    padding: 4px 20px 20px;
  }
}

.section_price .plan_simulator__desc {
  font-size: 14px;
  color: #444;
  margin: 0 0 16px;
  line-height: 1.7;
}

@media (min-width: 768px) {
  .section_price .plan_simulator__desc {
    font-size: 14px;
  }
}

.section_price .plan_simulator__groups {
  display: flex;
  flex-direction: column;
  gap: 18px;
}

@media (min-width: 768px) {
  .section_price .plan_simulator__groups {
    flex-direction: row;
    gap: 32px;
  }
}

.section_price .plan_simulator__group {
  flex: 1;
}

.section_price .plan_simulator__group_header {
  display: flex;
  align-items: baseline;
  justify-content: space-between;
  gap: 10px;
  margin: 0 0 10px;
}

.section_price .plan_simulator__group_label {
  font-weight: 700;
  font-size: 16px;
  color: #444;
  line-height: 1.5;
  margin: 0;
  padding: 0;
  border: none;
  background: none;
}

.section_price .plan_simulator__clear {
  background: none;
  border: none;
  color: #444;
  font-size: 14px;
  line-height: 1.5;
  cursor: pointer;
  padding: 0;
  text-decoration: underline;
  font-weight: 400;
}

.section_price .plan_simulator__buttons {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
}

.section_price .plan_simulator__btn {
  height: 32px;
  padding: 0 12px;
  border: 1px solid #ccc;
  background: #fff;
  border-radius: 99px;
  font-size: 14px;
  font-weight: 400;
  line-height: 21px;
  color: #444;
  cursor: pointer;
  transition: all 0.15s;
  box-shadow: 1px 2px 4px rgba(0, 0, 0, 0.2);
  display: inline-flex;
  align-items: center;
  justify-content: center;
}

.section_price .plan_simulator__btn:hover {
  border-color: #444;
}

.section_price .plan_simulator__btn.is-active {
  background: #444;
  border-color: #444;
  color: #fff;
  font-weight: 700;
  box-shadow: none;
}

.section_price .plan_simulator__result {
  margin-top: 18px;
  padding: 5px 14px;
  border: 2px solid #df6952;
  background: #fcf3e6;
  border-radius: 5px;
  text-align: center;
  line-height: 1.5;
  min-height: 40px;
  display: flex;
  align-items: center;
  justify-content: center;
}

.section_price .plan_simulator__result[hidden] {
  display: none;
}

.section_price .plan_simulator__result_label {
  font-size: 14px;
  font-weight: 700;
  color: #df6952;
  line-height: 21px;
}

.section_price .plan_simulator__result_amount {
  font-size: 16px;
  font-weight: 700;
  color: #df6952;
  line-height: 24px;
  margin: 0 2px;
}

.section_price .section_price_header {
  flex-wrap: wrap;
  justify-content: flex-start;
  align-items: center;
  gap: 10px;
}

@media (max-width: 767px) {
  .section_price .section_price_header .room_filter_box {
    order: 1;
    flex: 1 1 100%;
  }

  .section_price .section_price_header .plan_count_box {
    order: 2;
  }

  .section_price .section_price_header .sort_box {
    order: 3;
    margin-left: auto;
  }
}

.section_price .section_price_header .plan_count_box {
  font-size: 14px;
  color: #333;
}

@media (min-width: 768px) {
  .section_price .section_price_header .plan_count_box {
    font-size: 15px;
  }
}

.section_price .section_price_header .plan_count_box .plan_count {
  font-weight: 700;
  color: #df6952;
  margin-right: 2px;
  font-size: 16px;
}

@media (min-width: 768px) {
  .section_price .section_price_header .plan_count_box .plan_count {
    font-size: 17px;
  }
}

.section_price .section_price_header .room_filter_box {
  display: flex;
  flex-direction: column;
  gap: 8px;
}

@media (min-width: 768px) {
  .section_price .section_price_header .room_filter_box {
    flex: 1 1 auto;
    flex-direction: row;
    align-items: center;
    gap: 10px;
  }
}

.section_price .section_price_header .room_filter_label {
  font-size: 13px;
  color: #333;
}

@media (min-width: 768px) {
  .section_price .section_price_header .room_filter_label {
    font-size: 14px;
  }
}

.section_price .section_price_header .room_filter_buttons {
  display: flex;
  gap: 8px;
  flex-wrap: wrap;
}

.section_price .section_price_header .room_filter_btn {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  height: 32px;
  padding: 4px 16px 4px 12px;
  border: 1px solid #ccc;
  background: #fff;
  border-radius: 5px;
  font-size: 14px;
  font-weight: 400;
  line-height: 1;
  color: #444;
  cursor: pointer;
  box-shadow: 1px 2px 4px rgba(0, 0, 0, 0.2);
  transition: all 0.15s;
}

.section_price .section_price_header .room_filter_btn__check {
  display: flex;
  width: 20px;
  height: 20px;
  align-items: center;
  justify-content: center;
  border: 1px solid #ccc;
  border-radius: 2px;
  background: linear-gradient(180deg, #ffffff 0%, #f0f0f0 100%);
  flex-shrink: 0;
  position: relative;
}

.section_price .section_price_header .room_filter_btn__check::after {
  content: "";
  display: block;
  width: 12px;
  height: 10px;
  background-image: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='12' height='10' viewBox='0 0 12 10' fill='none'><path d='M3.81353 7.88963L0.968732 4.78001L0 5.83147L3.81353 10L12 1.05145L11.0381 0L3.81353 7.88963Z' fill='%23CCCCCC'/></svg>");
  background-repeat: no-repeat;
  background-position: center;
  background-size: contain;
}

.section_price .section_price_header .room_filter_btn:hover {
  border-color: #ee827c;
}

.section_price .section_price_header .room_filter_btn.is-active {
  background: #fdf4f4;
  border-color: #ee827c;
  color: #ee827c;
  font-weight: 700;
  box-shadow: none;
}

.section_price .section_price_header .room_filter_btn.is-active .room_filter_btn__check {
  background: #ee827c;
  border-color: #ee827c;
}

.section_price .section_price_header .room_filter_btn.is-active .room_filter_btn__check::after {
  background-image: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='12' height='10' viewBox='0 0 12 10' fill='none'><path d='M3.81353 7.88963L0.968732 4.78001L0 5.83147L3.81353 10L12 1.05145L11.0381 0L3.81353 7.88963Z' fill='white'/></svg>");
}

@media (min-width: 768px) {
  .section_price .section_price_header .sort_box {
    margin-left: auto;
  }
}

.section_price .plan_list_wrapper .plan_item.is-hidden-by-filter {
  display: none !important;
}

.section_price .plan_filter_empty {
  margin: 16px 0;
  padding: 24px 12px;
  text-align: center;
  font-size: 14px;
  color: #555;
}

@media (min-width: 768px) {
  .section_price .plan_filter_empty {
    font-size: 16px;
    padding: 32px 16px;
  }
}

.section_price .plan_filter_empty:not([hidden]) ~ .plan_show_all_wrapper {
  display: none !important;
}

.section_faq {
  margin: 0 auto 36px;
  width: calc(100% - 20px);
}

.section_faq > p {
  margin-bottom: 36px;
  line-height: 1.7;
  letter-spacing: 0.02em;
  font-size: 1rem;
}

.section_faq .link_map {
  white-space: pre-line;
}

.wrap_lower > .section_faq {
  width: 100%;
}

.blk_cv--plan {
  background: #FCF3E6;
  padding: 30px 8px 30px 8px;
  width: calc(100%);
}

.blk_cv--plan .blk_cv--plan-lead {
  font-size: 1.65rem;
  font-weight: bold;
  margin: 20px;
  text-align: center;
}

.blk_cv--plan .box_cv {
  background: #fff;
}

@media screen and (max-width: 600px) {
  .blk_cv--plan .box_cv {
    max-width: 100%;
  }
}

.blk_cv--plan .box_cv .box_cv_lead {
  text-align: center;
}

@media screen and (max-width: 600px) {
  .blk_cv--plan .box_cv .box_cv_lead {
    font-size: 0.757rem;
  }
}

.blk_cv--plan .box_cv .box_cv_crnm {
  text-align: center;
}

.blk_cv--plan .box_cv .btn_request_document,
.blk_cv--plan .box_cv .btn_tel_number {
  line-height: 1.5;
}

.blk_cv--inquirycond {
  background: #FCF3E6;
  padding: 20px 8px 40px 8px;
  width: calc(100%);
}

.blk_cv--inquirycond .blk_cv--inquirycond-lead {
  font-size: 1.65rem;
  font-weight: bold;
  margin: 20px;
  text-align: center;
}

.blk_cv--inquirycond.blk_cv .box_cv {
  background: #fff;
}

@media screen and (max-width: 600px) {
  .blk_cv--inquirycond.blk_cv .box_cv {
    max-width: 100%;
  }
}

.blk_cv--inquirycond.blk_cv .box_cv .box_cv_lead {
  text-align: center;
}

@media screen and (max-width: 600px) {
  .blk_cv--inquirycond.blk_cv .box_cv .box_cv_lead {
    font-size: 0.757rem;
  }
}

.blk_cv--inquirycond.blk_cv .box_cv .box_cv_crnm {
  text-align: center;
}

.blk_cv--inquirycond.blk_cv .box_cv .btn_request_document,
.blk_cv--inquirycond.blk_cv .box_cv .btn_tel_number {
  line-height: 1.5;
}

.blk_cv--inquirycond.blk_cv .box_cv .btn_request_easy {
  margin-bottom: 5px;
}

.blk_cv--inquirycond.blk_cv .box_cv .btn_request {
  max-width: 100%;
  border: 1px solid #2ca2ab;
  background: linear-gradient(to bottom, #52d8e3 0%, #3bb4bd 100%);
  padding: 10px 5%;
}

@media screen and (min-width: 768px) {
  .blk_cv--inquirycond.blk_cv .box_cv .btn_request {
    width: auto;
    min-width: 600px;
    max-width: 750px;
  }
}

.blk_cv--inquirycond .link_list {
  align-items: center;
  color: #0044cc;
  display: flex;
  font-size: 1rem;
  font-weight: bold;
  justify-content: center;
  margin-top: 20px;
}

.blk_cv--inquirycond .link_list::after {
  content: "arrow_forward_ios";
  font-family: "material icons";
  font-size: 1rem;
  font-weight: normal;
  text-decoration: none;
}

.blk_cv--inquirycond .link_list a {
  text-decoration: underline;
}

.section_feature {
  margin: 0 auto 48px;
  width: calc(100% - 20px);
}

.section_feature_desc {
  margin-bottom: 20px;
  white-space: pre-line;
}

.section_feature_lead {
  margin-bottom: 20px;
}

.section_feature .feature_container {
  display: flex;
  gap: 24px;
  margin-bottom: 36px;
}

@media (max-width: 768px) {
  .section_feature .feature_container {
    flex-direction: column;
    gap: 16px;
  }
}

.section_feature .blk_feature {
  margin: 0;
}

.section_feature .blk_feature_text {
  flex: 1;
}

.section_feature .blk_feature_text h4 {
  margin-bottom: 8px;
  margin-top: 0;
  line-height: 1.7;
  font-size: 1rem;
}

.section_feature .blk_feature_text p {
  white-space: pre-line;
}

.section_feature .img_feature {
  display: block;
  height: auto;
}

.section_facility {
  margin: 0 auto 48px;
  width: calc(100% - 20px);
}

.section_facility .blk_facility {
  margin-bottom: 20px;
}

.section_facility .blk_facility .list_facility {
  border-left: 1px solid #ccc;
  border-top: 1px solid #ccc;
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  margin-bottom: 20px;
  width: 100%;
}

.section_facility .blk_facility .list_facility li {
  align-items: center;
  display: flex;
  flex-wrap: nowrap;
  justify-content: center;
  width: 100%;
}

.section_facility .blk_facility .list_facility li span {
  align-items: center;
  border-bottom: 1px solid #ccc;
  border-right: 1px solid #ccc;
  display: inline-flex;
  height: 100%;
  justify-content: flex-start;
  line-height: 1.3;
  margin: 0;
  padding: 8px 10px;
  width: 64%;
}

.section_facility .blk_facility .list_facility li span.item_name {
  background: #fcf3e6;
  width: 36%;
}

.section_facility .blk_hashtag {
  margin: -15px 0 20px 0px;
  font-size: 12px;
}

.section_facility .blk_hashtag span {
  display: inline-block;
  margin: 0 4px 0 0;
}

.section_experience {
  margin: 0 auto 48px;
  width: calc(100% - 20px);
}

.section_experience .blk_facility {
  margin-bottom: 20px;
}

.section_experience .blk_facility .img_event {
  margin: 0 auto 20px;
  width: 100%;
}

.section_experience .blk_facility .img_event img {
  display: block;
  height: auto;
  width: 100%;
}

.section_experience .blk_facility .list_facility {
  border-left: 1px solid #ccc;
  border-top: 1px solid #ccc;
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  margin-bottom: 20px;
  width: 100%;
}

.section_experience .blk_facility .list_facility li {
  align-items: center;
  display: flex;
  flex-wrap: nowrap;
  justify-content: center;
  width: 100%;
}

.section_experience .blk_facility .list_facility li span {
  align-items: center;
  border-bottom: 1px solid #ccc;
  border-right: 1px solid #ccc;
  display: inline-flex;
  height: 100%;
  justify-content: flex-start;
  line-height: 1.3;
  margin: 0;
  padding: 8px 10px;
  width: 64%;
}

.section_experience .blk_facility .list_facility li span.item_name {
  background: #fcf3e6;
  width: 36%;
}

.section_service {
  margin: 0 auto 48px;
  width: calc(100% - 20px);
}

.section_service_lead {
  margin-bottom: 20px;
}

.section_service .blk_facility {
  margin-bottom: 20px;
  overflow: auto;
  max-width: 100%;
}

.section_service .blk_facility .table_service {
  border-left: 1px solid #ccc;
  border-top: 1px solid #ccc;
  display: block;
  line-height: 1.3;
  margin-bottom: 12px;
  min-width: 100%;
  overflow-x: auto;
  table-layout: fixed;
}

.section_service .blk_facility .table_service th {
  background: #fcf3e6;
  border-bottom: 1px solid #ccc;
  border-right: 1px solid #ccc;
  min-width: 100px;
  padding: 8px 2px;
  text-align: left;
  width: 20%;
}

.section_service .blk_facility .table_service td {
  border-bottom: 1px solid #ccc;
  border-right: 1px solid #ccc;
  min-width: 100px;
  padding: 8px 2px;
  text-align: left;
  width: 20%;
}

.section_service .blk_facility .table_service td.available {
  color: #EE827C;
  font-weight: bold;
}

.section_service .blk_facility .table_service td.text_center {
  text-align: center;
}

.section_service .blk_facility_note {
  padding-left: 1em;
  text-indent: -0.5em;
}

.section_service .blk_facility_note::before {
  content: "\203B";
  display: inline-block;
}

.section_life {
  margin: 0 auto 48px;
  width: calc(100% - 20px);
}

.section_life_lead {
  margin-bottom: 20px;
}

.section_life .feature_container {
  display: flex;
  gap: 24px;
  margin-bottom: 36px;
}

@media (max-width: 768px) {
  .section_life .feature_container {
    flex-direction: column;
    gap: 16px;
  }
}

.section_life .blk_feature {
  margin: 0;
}

.section_life .blk_feature .img_feature {
  display: block;
  height: auto;
  width: 100%;
}

.section_life .blk_feature .list_facility {
  border-left: 1px solid #ccc;
  border-top: 1px solid #ccc;
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  width: 100%;
}

.section_life .blk_feature .list_facility li {
  align-items: center;
  display: flex;
  flex-wrap: nowrap;
  justify-content: center;
  width: 100%;
}

.section_life .blk_feature .list_facility li span {
  align-items: center;
  border-bottom: 1px solid #ccc;
  border-right: 1px solid #ccc;
  display: inline-flex;
  height: 100%;
  justify-content: flex-start;
  line-height: 1.3;
  margin: 0;
  padding: 8px 10px;
  width: 80%;
}

.section_life .blk_feature .list_facility li span.item_name {
  background: #fcf3e6;
  justify-content: center;
  width: 20%;
}

.section_life .blk_feature_text {
  flex: 1;
}

.section_life .blk_feature_text h4 {
  margin: 0 0 16px;
}

.section_related_facilities_v2 {
  margin: 0 auto 0;
  width: 100%;
  /*SP版でカード1枚の時の幅修正*/
  /*ページネーションのデザイン変更*/
}

@media (min-width: 768px) {
  .section_related_facilities_v2 {
    margin: 0 auto 48px;
  }
}

.section_related_facilities_v2 h2 {
  margin-right: 10px;
  margin-left: 10px;
}

@media (min-width: 768px) {
  .section_related_facilities_v2 h2 {
    margin-right: 0px;
    margin-left: 0px;
  }
}

.section_related_facilities_v2 .related_facilities {
  position: relative;
  padding-bottom: 32px;
}

@media (min-width: 768px) {
  .section_related_facilities_v2 .related_facilities {
    display: flex;
    justify-content: center;
    align-items: center;
    padding-bottom: 60px;
  }
}

.section_related_facilities_v2 .related_facilities .more_toggle {
  display: none;
}

.section_related_facilities_v2 .related_facilities .more_toggle + div .\--more {
  display: none;
}

@media (min-width: 768px) {
  .section_related_facilities_v2 .related_facilities .more_toggle + div .\--more {
    display: block;
  }
}

.section_related_facilities_v2 .related_facilities .more_toggle:checked + div .\--more {
  display: block;
}

.section_related_facilities_v2 .related_facilities .more_toggle + div + .btn_more {
  cursor: pointer;
  display: flex;
  width: 100%;
  align-items: flex-end;
  justify-content: center;
  color: #59BEC5;
  font-size: 17px;
  font-weight: 700;
  z-index: 2;
  margin-top: 20px;
}

@media (min-width: 768px) {
  .section_related_facilities_v2 .related_facilities .more_toggle + div + .btn_more {
    display: none;
  }
}

.section_related_facilities_v2 .related_facilities .more_toggle + div + .btn_more span {
  display: flex;
  align-items: center;
  justify-content: center;
}

.section_related_facilities_v2 .related_facilities .more_toggle + div + .btn_more span::before {
  content: "";
  background-image: url("/img/market_price/ico_arrow_down.svg");
  background-size: cover;
  display: block;
  width: 36px;
  height: 36px;
}

.section_related_facilities_v2 .related_facilities .more_toggle:checked + div + .btn_more {
  display: none;
}

.section_related_facilities_v2 .related_facilities .splide__pagination__page.is-active {
  background-color: #efefef;
}

.section_related_facilities_v2 .related_facilities .splide__list {
  position: relative;
  min-height: 360px;
  flex-direction: column;
  gap: 20px;
}

@media (min-width: 768px) {
  .section_related_facilities_v2 .related_facilities .splide__list {
    flex-direction: row;
    gap: inherit;
  }
}

.section_related_facilities_v2 .related_facilities .facility {
  padding-right: 10px;
  padding-left: 10px;
  position: relative;
  z-index: 1;
  flex: 0 0 100%;
  max-width: 100%;
}

@media (min-width: 768px) {
  .section_related_facilities_v2 .related_facilities .facility {
    padding-right: 20px;
    padding-left: 0px;
    min-width: 333px;
    flex: 0 0 33.3333%;
    max-width: 33.3333%;
  }
}

.section_related_facilities_v2 .related_facilities .facility > div {
  border: 1px solid #ccc;
  border-radius: 4px;
}

.section_related_facilities_v2 .related_facilities .facility > div .title {
  font-weight: bold;
  color: #0044CC;
  padding: 15px 10px 10px;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
  max-width: 96%;
  font-size: 18px;
}

.section_related_facilities_v2 .related_facilities .facility > div .details {
  display: grid;
  align-items: center;
  grid-template-columns: 55fr 89fr;
  gap: 0 10px;
  padding: 0 10px 5px;
}

@media (min-width: 768px) {
  .section_related_facilities_v2 .related_facilities .facility > div .details {
    display: block;
    padding: 0;
  }
}

.section_related_facilities_v2 .related_facilities .facility > div .details .type-rating, .section_related_facilities_v2 .related_facilities .facility > div .details .address, .section_related_facilities_v2 .related_facilities .facility > div .details .price {
  grid-column: 2;
}

.section_related_facilities_v2 .related_facilities .facility > div .details .image {
  grid-column: 1;
  grid-row: 1/4;
  height: auto;
  aspect-ratio: 3/2;
}

@media (min-width: 768px) {
  .section_related_facilities_v2 .related_facilities .facility > div .details .image {
    height: 160px;
    aspect-ratio: auto;
  }
}

.section_related_facilities_v2 .related_facilities .facility > div .type-rating {
  padding: 0 10px 8px 0;
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: flex-start;
  gap: 6px 12px;
}

@media (min-width: 768px) {
  .section_related_facilities_v2 .related_facilities .facility > div .type-rating {
    padding: 0 10px 8px;
    gap: 12px;
  }
}

.section_related_facilities_v2 .related_facilities .facility > div .type-rating .blk_institution_tag {
  background: #fcf3e6;
  border-radius: 4px;
  color: #574726;
  display: inline-block;
  font-size: 0.75rem;
  font-weight: bold;
  line-height: 1.5;
  padding: 3px 7px;
  text-decoration: none;
  cursor: pointer;
}

@media (min-width: 768px) {
  .section_related_facilities_v2 .related_facilities .facility > div .type-rating .blk_institution_tag {
    font-size: 12px;
    padding: 6px 8px;
  }
}

.section_related_facilities_v2 .related_facilities .facility > div .type-rating .rating-simple {
  display: flex;
  align-items: center;
  font-size: 0.875rem;
}

.section_related_facilities_v2 .related_facilities .facility > div .type-rating .rating-simple .star {
  color: #FFA500;
  font-size: 1rem;
  margin-right: 2px;
}

.section_related_facilities_v2 .related_facilities .facility > div .type-rating .rating-simple .rating-value {
  font-weight: bold;
  margin-right: 4px;
  font-size: 14px;
}

.section_related_facilities_v2 .related_facilities .facility > div .type-rating .rating-simple .rating-count {
  color: #666;
  font-size: 0.75rem;
}

.section_related_facilities_v2 .related_facilities .facility > div .address {
  padding: 0 10px 8px 0;
  font-size: 14px;
  color: #444;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

@media (min-width: 768px) {
  .section_related_facilities_v2 .related_facilities .facility > div .address {
    padding: 0 10px 8px;
  }
}

.section_related_facilities_v2 .related_facilities .facility > div .company {
  align-items: center;
  font-size: 14px;
  padding: 0 10px 10px;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
  color: #A7A7A7;
}

.section_related_facilities_v2 .related_facilities .facility > div .company .label {
  font-size: 14px;
}

.section_related_facilities_v2 .related_facilities .facility > div .image {
  position: relative;
  width: 100%;
  height: 160px;
  background-size: cover;
  background-position: center;
  background-repeat: no-repeat;
  background-color: #f5f5f5;
}

.section_related_facilities_v2 .related_facilities .facility > div .image .caption {
  position: absolute;
  right: 0;
  bottom: 0;
}

.section_related_facilities_v2 .related_facilities .facility > div .price {
  display: flex;
}

.section_related_facilities_v2 .related_facilities .facility > div .price .left {
  justify-content: center;
  align-items: center;
  width: 20%;
  border-right: 1px solid #ccc;
  margin: 8px 0;
  font-weight: bold;
  display: none;
}

@media (min-width: 768px) {
  .section_related_facilities_v2 .related_facilities .facility > div .price .left {
    display: flex;
  }
}

.section_related_facilities_v2 .related_facilities .facility > div .price .right {
  display: flex;
  justify-content: flex-start;
  align-items: flex-start;
  width: 100%;
  padding: 0 0;
}

@media (min-width: 768px) {
  .section_related_facilities_v2 .related_facilities .facility > div .price .right {
    width: 80%;
    padding: 12px 0;
  }
}

.section_related_facilities_v2 .related_facilities .facility > div .price .right > div {
  display: flex;
  flex-direction: column;
  justify-content: flex-start;
  align-items: flex-start;
}

.section_related_facilities_v2 .related_facilities .facility > div .price .right > div > div {
  display: flex;
  justify-content: flex-start;
  align-items: center;
}

.section_related_facilities_v2 .related_facilities .facility > div .price .right > div > div:first-child {
  margin-bottom: 2px;
}

@media (min-width: 768px) {
  .section_related_facilities_v2 .related_facilities .facility > div .price .right > div > div:first-child {
    margin-bottom: 6px;
  }
}

.section_related_facilities_v2 .related_facilities .facility > div .price .right > div > div .label {
  width: auto;
  text-align: right;
  display: inline-block;
  font-size: 13px;
  margin-right: 4px;
  white-space: nowrap;
}

@media (min-width: 768px) {
  .section_related_facilities_v2 .related_facilities .facility > div .price .right > div > div .label {
    width: 48px;
  }
}

.section_related_facilities_v2 .related_facilities .facility > div .price .right > div > div .value {
  width: auto;
  color: #EE827C;
  font-size: 18px;
  font-weight: bold;
  display: inline-block;
  line-height: 1.2;
}

.section_related_facilities_v2 .related_facilities .facility > div .price .right > div > div .value span {
  margin-left: 2px;
  font-size: 12px;
}

.section_related_facilities_v2 .related_facilities .facility > div .room {
  background-color: #fdf4f4;
  color: inherit;
  margin: 0 10px 10px;
  border: 1px solid #ffdeda;
  border-radius: 4px;
  padding: 10px 0;
  height: auto;
  display: flex;
  justify-content: center;
  align-items: center;
}

.section_related_facilities_v2 .related_facilities .facility > div .room .update {
  font-size: 12px;
  margin-right: 8px;
}

@media (min-width: 768px) {
  .section_related_facilities_v2 .related_facilities .facility > div .room .update {
    font-size: 14px;
  }
}

.section_related_facilities_v2 .related_facilities .facility > div .room .available {
  font-size: 16px;
  font-weight: bold;
  display: flex;
  justify-content: center;
  align-items: center;
  color: #df6952;
}

@media (min-width: 768px) {
  .section_related_facilities_v2 .related_facilities .facility > div .room .available span {
    font-size: 22px;
    position: relative;
    top: -1px;
  }
}

.section_related_facilities_v2 .related_facilities .facility > div .room .toDetail_link_txt {
  color: #df6952;
}

.section_related_facilities_v2 .related_facilities .facility > div .toDetail_link {
  background: #fcf3e6;
  color: #0044CC;
  text-align: center;
  padding: 10px 0;
  text-decoration: underline;
  font-weight: 600;
  font-size: 14px;
  border-radius: 0 0 4px 4px;
}

@media (min-width: 768px) {
  .section_related_facilities_v2 .related_facilities .facility > div .toDetail_link {
    font-size: 16px;
  }
}

.section_related_facilities_v2 .related_facilities .facility > div .toDetail_link .toDetail_link_txt {
  position: relative;
}

.section_related_facilities_v2 .related_facilities .facility > div .toDetail_link .toDetail_link_txt::after {
  content: "";
  width: 10px;
  height: 10px;
  border-top: solid 2px #0044CC;
  border-right: solid 2px #0044CC;
  position: absolute;
  right: -15px;
  top: 30%;
  transform: rotate(45deg);
}

.section_related_facilities_v2 .related_facilities .facility:visited > div .title {
  color: #681da8;
}

.section_related_facilities_v2 .related_facilities .facility:visited > div .toDetail_link {
  color: #681da8;
}

.section_related_facilities_v2 .related_facilities .facility:visited > div .toDetail_link .toDetail_link_txt::after {
  border-top: solid 2px #681da8;
  border-right: solid 2px #681da8;
}

.section_related_facilities_v2 .related_facilities .campaigns_facility {
  display: block;
  margin: 0 0 4px 10px;
}

.section_related_facilities_v2 .related_facilities .campaigns_facility li {
  display: inline-block;
  border: 1px solid #df6952;
  padding: 8px 6px;
  color: #df6952;
  text-decoration: none;
  font-size: 12px;
  font-weight: bold;
  margin: 0 4px 4px 0;
}

.section_related_facilities_v2 .splide__track {
  flex-grow: 1;
}

.section_related_facilities_v2 .splide__pagination {
  gap: 5px;
}

.section_related_facilities_v2 .splide__pagination__page {
  height: 14px;
  width: 14px;
}

.section_related_facilities_v2 .splide__pagination__page.is-active {
  transform: scale(0.8);
  background-color: #ee827c;
}

.section_related_facilities_v2 .related_facilities .splide__pagination {
  gap: 5px;
}

.section_related_facilities_v2 .related_facilities .splide__pagination .splide__pagination__page {
  height: 14px;
  width: 14px;
  background-color: #cccccc;
}

.section_related_facilities_v2 .related_facilities .splide__pagination .splide__pagination__page.is-active {
  transform: scale(0.8);
  background-color: #ee827c;
}

.section_related_facilities_v2.related_facilities .splide__pagination__page {
  height: 14px;
  width: 14px;
  background-color: #cccccc;
}

.section_related_facilities_v2.related_facilities .splide__pagination__page.is-active {
  transform: scale(0.8);
  background-color: #ee827c;
}

.section_related_facilities_v2.related_facilities .splide__pagination__page.is-active {
  transform: scale(0.8) !important;
  background-color: #ee827c !important;
}

.section_care_premium {
  margin: 0 auto 48px;
  width: calc(100% - 20px);
}

.section_care_premium table.care_premium {
  width: 100%;
  border: 1px solid #cccccc;
  margin-bottom: 1em;
}

.section_care_premium table.care_premium tr {
  border-bottom: 1px solid #cccccc;
  text-align: center;
}

.section_care_premium table.care_premium tr th {
  background-color: #fcf3e6;
  border-bottom: 1px solid #cccccc;
  border-right: 1px solid #cccccc;
  font-weight: normal;
  padding: 10px 15px;
  font-weight: bold;
}

.section_care_premium table.care_premium tr th:last-child {
  border-right: 0;
}

.section_care_premium table.care_premium tr td {
  padding: 10px 15px;
  border-right: 1px solid #cccccc;
  background: #fff;
  color: #df6952;
  font-weight: bold;
}

.section_care_premium table.care_premium tr .unused-cells {
  background: repeating-linear-gradient(45deg, #ddd, #ddd 1px, #fff 0, #fff 8px);
}

.section_care_premium table.care_premium a {
  color: #59bec5;
  cursor: pointer;
}

.section_care_premium p.note {
  white-space: initial;
  font-size: 10px;
  line-height: 1.6;
  display: inline-block;
}

.section_care_premium--breakdown > h2 {
  margin-bottom: 14px;
}

@media (max-width: 767px) {
  .section_care_premium--breakdown .\--pc {
    display: none !important;
  }
}

@media (min-width: 768px) {
  .section_care_premium--breakdown .\--sp {
    display: none !important;
  }
}

.section_care_premium--breakdown .care_premium_cards {
  display: flex;
  flex-direction: column;
  align-items: stretch;
  gap: 6px;
  margin: 12px 0 16px;
  padding: 0 12px;
}

@media (min-width: 768px) {
  .section_care_premium--breakdown .care_premium_cards {
    flex-direction: row;
    gap: 8px;
    margin-bottom: 24px;
    padding: 0 16px;
  }
}

.section_care_premium--breakdown .care_premium_card {
  padding: 10px 12px;
  background: #fdeeee;
  border-radius: 8px;
  text-align: center;
}

@media (min-width: 768px) {
  .section_care_premium--breakdown .care_premium_card {
    flex: 1;
    padding: 14px 16px;
  }
}

.section_care_premium--breakdown .care_premium_card__title {
  text-align: center;
  font-size: 14px;
  font-weight: 700;
  color: #333;
  margin: 0 0 2px;
  padding: 0;
  line-height: 1.3;
}

@media (min-width: 768px) {
  .section_care_premium--breakdown .care_premium_card__title {
    font-size: 15px;
    margin-bottom: 4px;
  }
}

.section_care_premium--breakdown .care_premium_card__body {
  display: block;
  text-align: center;
  font-size: 12px;
  line-height: 1.6;
  color: #555;
  margin: 0;
}

@media (min-width: 768px) {
  .section_care_premium--breakdown .care_premium_card__body {
    font-size: 13px;
  }
}

.section_care_premium--breakdown .care_premium_cards__plus {
  display: flex;
  align-items: center;
  justify-content: center;
  color: #df6952;
  font-weight: 700;
  font-size: 18px;
  line-height: 1;
}

@media (min-width: 768px) {
  .section_care_premium--breakdown .care_premium_cards__plus {
    font-size: 22px;
  }
}

.section_care_premium--breakdown .care_premium_subheading {
  border-left: 4px solid #ee827c;
  padding-left: 10px;
  font-size: 16px;
  font-weight: 700;
  margin: 8px 0 10px;
}

@media (min-width: 768px) {
  .section_care_premium--breakdown .care_premium_subheading {
    font-size: 18px;
    margin: 16px 0 12px;
  }
}

#root .outside_business_hours.blk_cv_top .box_cv_head,
#root .outside_business_hours.blk_cv_top .txt_free,
#root .outside_business_hours.blk_cv_top .txt_note,
#root .outside_business_hours.blk_cv_top .txt_tel,
#root .outside_business_hours.blk_cv_top .txt_time,
#root .outside_business_hours.blk_cv_top .btn_tel {
  display: none;
}

#root .outside_business_hours.blk_cv_top .btn_request {
  border: 1px solid #f44f6d;
  border-radius: 50px;
  box-shadow: 1px 6px 4px 0 rgba(0, 0, 0, 0.2);
  background: linear-gradient(to bottom, #fe909c 0%, #ff7785 100%);
  color: #fff;
  padding: 20px 5%;
}

#root .outside_business_hours.blk_cv_top .btn_request .btn_request_easy {
  margin-bottom: 10px;
  text-shadow: 1px 0px 4px rgba(201, 33, 51, 0.25);
}

#root .outside_business_hours.blk_cv_top .btn_request .btn_request_document {
  font-size: 1.5rem;
  text-shadow: 1px 0px 4px rgba(201, 33, 51, 0.25);
}

@media (min-width: 768px) {
  #root .outside_business_hours.blk_cv_top .btn_request .btn_request_document {
    font-size: 1.4rem;
  }
}

#root .outside_business_hours.container .box_cv_head,
#root .outside_business_hours.container .btn_tel,
#root .outside_business_hours.container .txt_free,
#root .outside_business_hours.container .txt_note,
#root .outside_business_hours.container .wrap_tel,
#root .outside_business_hours.container .btn_add {
  display: none;
}

#root .outside_business_hours.container .btn_request {
  border: 1px solid #f44f6d;
  border-radius: 50px;
  box-shadow: 1px 6px 4px 0 rgba(0, 0, 0, 0.2);
  background: linear-gradient(to bottom, #fe909c 0%, #ff7785 100%);
  color: #fff;
}

#root .outside_business_hours.container .btn_request .btn_request_easy {
  text-shadow: 1px 0px 4px rgba(201, 33, 51, 0.25);
}

#root .outside_business_hours.container .btn_request .btn_request_document {
  text-shadow: 1px 0px 4px rgba(201, 33, 51, 0.25);
}

#root .outside_business_hours.floating_cv {
  justify-content: center;
}

#root .outside_business_hours.floating_cv .btn_tel,
#root .outside_business_hours.floating_cv .wrap_tel,
#root .outside_business_hours.floating_cv .floating_tellNumber {
  display: none;
}

@media (min-width: 768px) {
  #root .outside_business_hours.floating_cv.show {
    justify-content: center;
    gap: 24px;
  }
}

#root .outside_business_hours.floating_cv .btn_request {
  border: 1px solid #f44f6d;
  border-radius: 50px;
  box-shadow: 1px 6px 4px 0 rgba(0, 0, 0, 0.2);
  background: linear-gradient(to bottom, #fe909c 0%, #ff7785 100%);
  color: #fff;
}

#root .outside_business_hours.floating_cv .btn_request::before {
  background: #fff;
  border-radius: 4px;
  content: "\7121\6599";
  color: #ee827c;
  display: inline-block;
  font-size: 1rem;
  font-weight: bold;
  line-height: 1;
  text-align: center;
  text-shadow: none;
  width: 50px;
  padding: 6px;
  grid-column: 1/2;
  grid-row: 1/3;
}

@media (max-width: 360px) {
  #root .outside_business_hours.floating_cv .btn_request::before {
    width: 40px;
    font-size: 0.875rem;
  }
}

#root .outside_business_hours.floating_cv .btn_request .btn_request_easy {
  text-shadow: 1px 0px 4px rgba(201, 33, 51, 0.25);
}

#root .outside_business_hours.floating_cv .btn_request .btn_request_document {
  text-shadow: 1px 0px 4px rgba(201, 33, 51, 0.25);
}

#root .outside_business_hours.modal_plan_footer {
  justify-content: center;
}

#root .outside_business_hours.modal_plan_footer .btn_tel,
#root .outside_business_hours.modal_plan_footer .wrap_tel {
  display: none;
}

#root .outside_business_hours.modal_plan_footer .btn_request {
  border: 1px solid #f44f6d;
  border-radius: 50px;
  box-shadow: 1px 6px 4px 0 rgba(0, 0, 0, 0.2);
  background: linear-gradient(to bottom, #fe909c 0%, #ff7785 100%);
  color: #fff;
}

#root .outside_business_hours.modal_plan_footer .btn_request::before {
  background: #fff;
  border-radius: 4px;
  content: "\7121\6599";
  color: #ee827c;
  display: inline-block;
  font-size: 1rem;
  font-weight: bold;
  line-height: 1;
  text-align: center;
  text-shadow: none;
  width: 50px;
  padding: 6px;
  grid-column: 1/2;
  grid-row: 1/3;
  position: relative;
  top: 0;
}

@media (max-width: 360px) {
  #root .outside_business_hours.modal_plan_footer .btn_request::before {
    width: 40px;
    font-size: 0.875rem;
  }
}

#root .outside_business_hours.modal_plan_footer .btn_request .btn_request_easy {
  text-shadow: 1px 0px 4px rgba(201, 33, 51, 0.25);
}

#root .outside_business_hours.modal_plan_footer .btn_request .btn_request_document {
  text-shadow: 1px 0px 4px rgba(201, 33, 51, 0.25);
}

#root .outside_business_hours.cta_main .btn_tel,
#root .outside_business_hours.cta_main .txt_tel {
  display: none;
}

#root .outside_business_hours.cta_main .btn_request {
  border: 1px solid #f44f6d;
  border-radius: 50px;
  box-shadow: 1px 6px 4px 0 rgba(0, 0, 0, 0.2);
  background: linear-gradient(to bottom, #fe909c 0%, #ff7785 100%);
  color: #fff;
}

#root .outside_business_hours.cta_main .btn_request .btn_request_easy {
  text-shadow: 1px 0px 4px rgba(201, 33, 51, 0.25);
}

#root .outside_business_hours.cta_main .btn_request .btn_request_document {
  text-shadow: 1px 0px 4px rgba(201, 33, 51, 0.25);
}

#root .outside_business_hours.cta_thumb {
  background-color: #ff7785;
}

@media (max-width: 767px) {
  #root .floating_cv.show {
    flex-wrap: wrap;
    align-content: center;
    row-gap: 0px;
    padding-bottom: 0;
  }
}

#root .floating_cv .floating_tellNumber {
  display: none;
}

#root .floating_cv .facility_name_bottom {
  display: none;
}

@media (max-width: 767px) {
  #root .floating_cv .facility_name_bottom {
    position: static;
    order: 10;
    flex: 1 1 100%;
    width: 100%;
    max-width: 100%;
    margin: 0;
    display: block;
    text-align: center;
    background: rgba(255, 255, 255, 0.85);
    padding: 0 10px;
    font-size: 0.75rem;
    line-height: 1.35;
    box-sizing: border-box;
  }
}

@media (max-width: 767px) {
  #root .floating_cv .btn_tel,
#root .floating_cv .btn_request {
    flex: 1 1 0;
    min-width: 0;
  }
}

@media (min-width: 768px) {
  #root .floating_cv {
    background: rgba(255, 255, 255, 0.9);
    padding: 0 calc(50vw - 512px);
  }

  #root .floating_cv.show {
    justify-content: space-between;
  }

  #root .floating_cv .floating_tellNumber {
    display: block;
  }

  #root .floating_cv .floating_tellNumber p {
    text-align: center;
  }

  #root .floating_cv .floating_tellNumber .txt_tellnum {
    display: flex;
    align-items: center;
    margin-top: -5px;
    font-size: 24px;
    font-weight: bold;
  }

  #root .floating_cv .floating_tellNumber .txt_tellnum::before {
    font-family: "Material Icons";
    content: "phone_in_talk";
    font-size: 24px;
    margin-right: 5px;
    color: #E08780;
  }

  #root .floating_cv .facility_name_bottom {
    display: block;
    font-size: 16px;
  }
}

@media screen and (max-width: 479px) {
  .btn_request {
    position: relative;
  }

  .request_practice {
    position: absolute;
    width: 100%;
    height: 100%;
    overflow: hidden;
  }

  .request_practice::before {
    content: "";
    position: absolute;
    top: 0;
    left: -75%;
    width: 50%;
    height: 100%;
    background: linear-gradient(to right, rgba(255, 255, 255, 0) 0%, rgba(255, 255, 255, 0.3) 100%);
    transform: skewX(-25deg);
    -webkit-animation: shine 1.5s infinite;
            animation: shine 1.5s infinite;
  }

  @-webkit-keyframes shine {
    100% {
      left: 100%;
    }
  }

  @keyframes shine {
    100% {
      left: 100%;
    }
  }

  .tel_first {
    position: absolute;
    width: 100%;
    height: 100px;
    overflow: hidden;
  }

  .tel_first::before {
    content: "";
    position: absolute;
    top: 0;
    left: -75%;
    width: 50%;
    height: 100%;
    background: linear-gradient(to right, rgba(255, 255, 255, 0) 0%, rgba(255, 255, 255, 0.3) 100%);
    transform: skewX(-25deg);
    -webkit-animation: shine 1.5s infinite;
            animation: shine 1.5s infinite;
  }
}

.section_not_affiliated_item {
  position: relative;
  margin: 0 12px 48px;
}

.section_not_affiliated_item h3 {
  margin-bottom: 10px;
}

.section_not_affiliated_item h3 + p {
  font-size: 14px;
  margin-bottom: 5px;
}

.section_not_affiliated_item .list_not_affiliated {
  display: flex;
  justify-content: flex-start;
  overflow-x: scroll;
}

.section_not_affiliated_item .list_not_affiliated .item_not_affiliated {
  border: 1px solid #cccccc;
  border-radius: 4px 4px 4px 4px;
  position: relative;
  margin-top: 15px;
  white-space: nowrap;
  margin-right: 20px;
}

.section_not_affiliated_item .list_not_affiliated .item_not_affiliated a {
  display: block;
  padding: 15px 15px;
}

.section_not_affiliated_item .list_not_affiliated .item_not_affiliated h4 {
  margin: 0 0 15px 0;
}

.section_not_affiliated_item .list_not_affiliated .item_not_affiliated .txt_address {
  margin-bottom: 0;
  padding-left: 24px;
  position: relative;
}

.section_not_affiliated_item .list_not_affiliated .item_not_affiliated .txt_address::before {
  color: #ee827c;
  content: "\E0C8";
  display: inline-block;
  font-family: "material icons";
  font-size: 1.5rem;
  font-weight: normal;
  left: -4px;
  line-height: 1.2;
  position: absolute;
  top: -4px;
}

.section_not_affiliated_item .blk_next_prev {
  margin-top: 25px;
}

.section_not_affiliated_item .item_list {
  position: relative;
}

.section_not_affiliated_item .item_list #notAffiliatedMore {
  display: none;
}

.section_not_affiliated_item .item_list #notAffiliatedMore + label {
  position: absolute;
  z-index: 1;
  bottom: 0px;
  width: 100%;
  height: 40px;
  cursor: pointer;
  text-align: center;
  background: linear-gradient(to bottom, rgba(255, 255, 255, 0) 0%, #fff 60%);
  display: flex;
  justify-content: center;
  align-items: center;
  padding-top: 20px;
  color: #59bec5;
}

.section_not_affiliated_item .item_list #notAffiliatedMore + label::before {
  content: "\E038";
  font-family: "material icons";
  font-size: 1.5rem;
  margin-right: 8px;
  transform: rotate(0.25turn);
}

.section_not_affiliated_item .item_list #notAffiliatedMore:checked + label {
  display: none;
}

.section_not_affiliated_item .item_list #notAffiliatedMore ~ .list_not_affiliated {
  padding-bottom: 40px;
}

.section_not_affiliated_item .item_list #notAffiliatedMore ~ .list_not_affiliated .item_more {
  display: none;
}

.section_not_affiliated_item .item_list #notAffiliatedMore:checked ~ .list_not_affiliated {
  padding-bottom: 0;
}

.section_not_affiliated_item .item_list #notAffiliatedMore:checked ~ .list_not_affiliated .item_more {
  display: block;
}

.bnr-publication-info {
  display: none;
  max-width: 900px;
  margin: 40px auto 50px auto;
  padding: 0px 10px;
}

@media (min-width: 768px) {
  .bnr-publication-info {
    display: block;
    margin: 50px auto;
    padding: 0;
  }
}

.bnr-publication-info img {
  width: 100%;
}

.section_chart {
  padding: 16px;
  position: relative;
  top: -20px;
}

.section_chart h2 {
  margin: 0;
}

.section_chart .section_chart_inner {
  display: flex;
  justify-content: center;
  align-items: center;
  flex-wrap: wrap;
  position: relative;
  top: -40px;
  max-height: auto;
}

@media (min-width: 768px) {
  .section_chart .section_chart_inner {
    max-height: 400px;
  }
}

.section_chart .section_chart_inner .chart-wrapper {
  width: 100%;
  max-width: 480px;
  display: flex;
  align-items: center;
  justify-content: center;
}

.section_chart .section_chart_inner .detail-wrapper ul li {
  font-size: 14px;
  line-height: 1.5em;
  border-bottom: 1px solid #ccc;
  margin-bottom: 6px;
  padding: 0 12px 6px 12px;
  display: flex;
  align-items: center;
  justify-content: space-between;
}

.section_chart .section_chart_inner .detail-wrapper ul li .number {
  margin-left: 24px;
  display: flex;
  align-items: center;
}

.section_chart .section_chart_inner .detail-wrapper ul li .number .stars {
  margin-right: 6px;
  display: flex;
}

.section_chart .section_chart_inner .detail-wrapper ul li .number .stars .star:before {
  font-family: "material icons";
}

.section_chart .section_chart_inner .detail-wrapper ul li .number .stars .star.star-full:before {
  content: "\E838";
  color: orange;
}

.section_chart .section_chart_inner .detail-wrapper ul li .number .stars .star.star-half:before {
  content: "\E839";
  color: orange;
}

.section_chart .section_chart_inner .detail-wrapper ul li .number .stars .star.star-empty:before {
  content: "\E83A";
  color: gray;
}

.section_chart .section_chart_inner .detail-wrapper ul li.all {
  font-weight: bold;
}

.section_chart .section_chart_inner .detail-wrapper ul li.all .number {
  color: #df6952;
  font-weight: bold;
  font-size: 18px;
}

.section_chart .section_chart_inner .detail-wrapper ul li.detail .number {
  color: #666;
  font-weight: bold;
}

.section_chart .note {
  margin: 16px 0;
  background-color: #eee;
  line-height: 1.4em;
  padding: 12px;
  font-size: 12px;
  border-radius: 2px;
}

.tab-blk {
  margin-bottom: 16px;
  position: sticky;
  top: 0;
  z-index: 999;
}

.tab-blk__list {
  display: flex;
}

.tab-blk__item {
  background: #fff;
  border: 1px solid #ccc;
  border-left: none;
  text-align: center;
  flex: 1;
}

.tab-blk__item:last-child {
  border-right: none;
}

.tab-blk__item a {
  color: #ee827c;
  display: block;
  height: 100%;
  padding: 17px 0;
  position: relative;
  text-align: center;
  text-decoration: none;
}

.tab-blk__item.current {
  background: #f5f5f5;
  font-weight: bold;
  color: #444;
  padding: 17px 0;
  pointer-events: initial;
}

.section_review {
  margin: 0 auto;
  width: calc(100% - 20px);
}

body.form-time .container .box_cv .btn_tel, body.form-time .container_fv .box_cv .btn_tel, body.form-time .splide .box_cv .btn_tel, body.form-time .blk_cv .box_cv .btn_tel {
  border: 1px solid #f44f6d;
  border-radius: 50px;
  box-shadow: 1px 6px 4px 0 rgba(0, 0, 0, 0.2);
  background: linear-gradient(to bottom, #fe909c 0%, #ff7785 100%);
  color: #fff;
  padding-top: 0;
  padding-bottom: 0;
  order: 1;
}

body.form-time .container .box_cv .btn_tel_free, body.form-time .container_fv .box_cv .btn_tel_free, body.form-time .splide .box_cv .btn_tel_free, body.form-time .blk_cv .box_cv .btn_tel_free {
  margin-bottom: 5px;
}

body.form-time .container .box_cv .btn_tel_number, body.form-time .container_fv .box_cv .btn_tel_number, body.form-time .splide .box_cv .btn_tel_number, body.form-time .blk_cv .box_cv .btn_tel_number {
  font-size: 0.75rem;
  font-weight: normal;
}

body.form-time .container .box_cv .txt_note, body.form-time .container_fv .box_cv .txt_note, body.form-time .splide .box_cv .txt_note, body.form-time .blk_cv .box_cv .txt_note {
  max-width: 600px;
  order: 2;
}

body.form-time .container .box_cv .txt_tel, body.form-time .container_fv .box_cv .txt_tel, body.form-time .splide .box_cv .txt_tel, body.form-time .blk_cv .box_cv .txt_tel {
  order: 3;
}

body.form-time .container .box_cv .txt_time, body.form-time .container_fv .box_cv .txt_time, body.form-time .splide .box_cv .txt_time, body.form-time .blk_cv .box_cv .txt_time {
  order: 4;
  margin-bottom: 0;
}

body.form-time .container .box_cv .btn_request, body.form-time .container_fv .box_cv .btn_request, body.form-time .splide .box_cv .btn_request, body.form-time .blk_cv .box_cv .btn_request {
  border: 1px solid #f44f6d;
  border-radius: 50px;
  box-shadow: 1px 6px 4px 0 rgba(0, 0, 0, 0.2);
  background: linear-gradient(to bottom, #fe909c 0%, #ff7785 100%);
  color: #fff;
  order: 0;
  padding: 20px 5%;
}

body.form-time .container .box_cv .btn_request_easy, body.form-time .container_fv .box_cv .btn_request_easy, body.form-time .splide .box_cv .btn_request_easy, body.form-time .blk_cv .box_cv .btn_request_easy {
  margin-bottom: 10px;
}

body.form-time .container .box_cv .btn_request_document, body.form-time .container_fv .box_cv .btn_request_document, body.form-time .splide .box_cv .btn_request_document, body.form-time .blk_cv .box_cv .btn_request_document {
  font-size: 1.5rem;
}

body.form-time .container .box_cv .btn_tel, body.form-time .container_fv .box_cv .btn_tel, body.form-time .splide .box_cv .btn_tel, body.form-time .blk_cv .box_cv .btn_tel {
  display: none;
}

body.form-time .container .box_cv .txt_time, body.form-time .container_fv .box_cv .txt_time, body.form-time .splide .box_cv .txt_time, body.form-time .blk_cv .box_cv .txt_time {
  display: none;
}

body.form-time .container .box_cv .btn_request, body.form-time .container_fv .box_cv .btn_request, body.form-time .splide .box_cv .btn_request, body.form-time .blk_cv .box_cv .btn_request {
  border: 1px solid #f44f6d;
  border-radius: 50px;
  box-shadow: 1px 6px 4px 0 rgba(0, 0, 0, 0.2);
  background: linear-gradient(to bottom, #fe909c 0%, #ff7785 100%);
  color: #fff;
  padding: 20px 5%;
}

body.form-time .container .box_cv .btn_request_easy, body.form-time .container_fv .box_cv .btn_request_easy, body.form-time .splide .box_cv .btn_request_easy, body.form-time .blk_cv .box_cv .btn_request_easy {
  margin-bottom: 10px;
}

body.form-time .container .box_cv .btn_request_document, body.form-time .container_fv .box_cv .btn_request_document, body.form-time .splide .box_cv .btn_request_document, body.form-time .blk_cv .box_cv .btn_request_document {
  font-size: 1.5rem;
}

@media (max-width: 360px) {
  body.form-time .container .box_cv .btn_request_document, body.form-time .container_fv .box_cv .btn_request_document, body.form-time .splide .box_cv .btn_request_document, body.form-time .blk_cv .box_cv .btn_request_document {
    font-size: 1.25rem;
  }
}

body.form-time .container .cta_main .txt_tel, body.form-time .container_fv .cta_main .txt_tel, body.form-time .splide .cta_main .txt_tel, body.form-time .blk_cv .cta_main .txt_tel {
  display: none;
}

@media (max-width: 767px) {
  body.form-time .container_fv .box_cv {
    display: grid;
  }

  body.form-time .container_fv .box_cv .btn_request {
    order: 0;
    border: 1px solid #f44f6d;
    border-radius: 50px;
    box-shadow: 1px 6px 4px 0 rgba(0, 0, 0, 0.2);
    background: linear-gradient(to bottom, #fe909c 0%, #ff7785 100%);
    color: #fff;
  }

  body.form-time .container_fv .box_cv .btn_tel {
    padding: 10px 0;
    display: grid !important;
    order: 1;
    border: 1px solid #2ca2ab;
    border-radius: 50px;
    box-shadow: 1px 6px 4px 0 rgba(0, 0, 0, 0.2);
    background: linear-gradient(to bottom, #52d8e3 0%, #3bb4bd 100%);
    color: #fff;
  }

  body.form-time .container_fv .box_cv .txt_note {
    order: 2;
  }

  body.form-time .container_fv .box_cv .txt_tel {
    order: 3;
  }

  body.form-time .container_fv .box_cv .txt_time {
    display: block !important;
    order: 4;
  }
}

.non-business-time .blk_cv .box_cv .btn_request {
  display: grid;
  grid-template-columns: repeat(2, auto);
  grid-template-rows: repeat(2, auto);
  align-items: center;
  justify-content: center;
  gap: 0 10px;
  width: 100%;
  margin-bottom: 10px;
  padding: 10px 8% 10px 5%;
  position: relative;
  cursor: pointer;
  border: 1px solid #f44f6d;
  border-radius: 50px;
  box-shadow: 1px 6px 4px 0 rgba(0, 0, 0, 0.2);
  background: linear-gradient(to bottom, #fe909c 0%, #ff7785 100%);
  color: #fff;
  margin: 0 10px 15px;
  padding: 20px 5%;
}

.campaign_cv {
  margin-bottom: env(safe-area-inset-bottom);
  width: 100%;
  padding: 36px 0;
  padding-top: 15px;
  padding-bottom: 10px;
  display: flex;
  justify-content: center;
  align-items: center;
}

.campaign_cv .wrap_tel {
  display: none;
}

.campaign_cv .btn_request {
  display: grid;
  grid-template-columns: repeat(2, auto);
  grid-template-rows: repeat(2, auto);
  align-items: center;
  justify-content: center;
  gap: 0 10px;
  width: 100%;
  max-width: 355px;
  margin-bottom: 10px;
  padding: 10px 8% 10px 5%;
  position: relative;
  cursor: pointer;
  border: 1px solid #2ca2ab;
  border-radius: 50px;
  box-shadow: 1px 6px 4px 0 rgba(0, 0, 0, 0.2);
  background: linear-gradient(to bottom, #52d8e3 0%, #3bb4bd 100%);
  color: #fff;
  margin-bottom: 6px;
  padding: 12px 12px;
  box-shadow: 1px 5px 3px 0 rgba(0, 0, 0, 0.2);
}

.campaign_cv .btn_request a {
  width: 100%;
  height: 100%;
  position: absolute;
  top: 0;
  left: 0;
}

.campaign_cv .btn_request:hover {
  opacity: 0.6;
}

@media (min-width: 768px) {
  .campaign_cv .btn_request {
    gap: 0 20px;
  }
}

@media (max-width: 360px) {
  .campaign_cv .btn_request {
    gap: 0 5px;
    padding-left: 10px;
    padding-right: 10px;
  }
}

.campaign_cv .btn_request.non-business-hours {
  border: 1px solid #f44f6d;
  border-radius: 50px;
  box-shadow: 1px 6px 4px 0 rgba(0, 0, 0, 0.2);
  background: linear-gradient(to bottom, #fe909c 0%, #ff7785 100%);
  color: #fff;
}

.campaign_cv .btn_request.non-business-hours .btn_request_easy {
  text-shadow: 1px 0px 4px rgba(201, 33, 51, 0.25);
}

.campaign_cv .btn_request.non-business-hours .btn_request_document {
  text-shadow: 1px 0px 4px rgba(201, 33, 51, 0.25);
}

.campaign_cv .btn_request::before {
  background: #fff;
  border-radius: 4px;
  content: "\7121\6599";
  color: #ee827c;
  display: inline-block;
  font-size: 1rem;
  font-weight: bold;
  line-height: 1;
  text-align: center;
  text-shadow: none;
  width: 50px;
  padding: 6px;
  grid-column: 1/2;
  grid-row: 1/3;
}

@media (max-width: 360px) {
  .campaign_cv .btn_request::before {
    width: 40px;
    font-size: 0.875rem;
  }
}

.campaign_cv .btn_request_document {
  align-items: center;
  display: flex;
  font-size: 1.25rem;
  font-weight: bold;
  justify-content: center;
  line-height: 1;
  text-align: center;
  text-shadow: 1px 0px 4px rgba(16, 137, 147, 0.25);
  width: 100%;
  grid-column: 2/3;
  grid-row: 2/3;
  font-size: 1.1rem;
  margin: 0 0 2px;
}

.campaign_cv .btn_request_document::after {
  content: "\E5E1";
  display: inline-block;
  font-family: "material icons";
  font-size: 1.25rem;
  font-weight: normal;
  text-decoration: none;
  margin: 0 0 0 5px;
}

@media (min-width: 768px) {
  .campaign_cv {
    background: rgba(255, 255, 255, 0.8);
    margin: auto;
    width: 100%;
    z-index: 3;
  }

  .campaign_cv .btn_request {
    max-width: 400px;
  }

  .campaign_cv .btn_request_document {
    font-size: 1.25rem;
  }
}

@media (max-width: 360px) {
  .campaign_cv {
    padding-left: 5px;
    padding-right: 5px;
  }

  .campaign_cv .btn_request {
    padding-left: 8px;
    padding-right: 8px;
  }

  .campaign_cv .btn_request_document {
    margin-left: 0;
  }
}

.blk_institution {
  grid-column: 1/2;
  grid-row: 1/2;
  margin-bottom: 12px;
  position: relative;
  display: inline-block;
}

.blk_institution_tag {
  background: #fcf3e6;
  border-radius: 4px;
  color: #574726;
  display: inline-block;
  font-size: 0.75rem;
  font-weight: bold;
  line-height: 1.5;
  padding: 3px 7px;
  text-decoration: none;
  cursor: pointer;
}

.blk_institution_tooltip {
  position: absolute;
  top: calc(100% + 8px);
  left: 0;
  width: 280px;
  padding: 12px;
  background: #fcf3e6;
  border-radius: 5px;
  box-shadow: 0 2px 8px rgba(0, 0, 0, 0.1);
  font-size: 13px;
  line-height: 1.6;
  color: #574726;
  visibility: hidden;
  opacity: 0;
  transition: opacity 0.2s, visibility 0.2s;
  z-index: 999;
}

.blk_institution_tooltip h4 {
  margin: 0 0 6px 0;
  font-size: 16px;
  font-weight: bold;
}

.blk_institution_tooltip::before {
  border: 15px solid transparent;
  border-top: 15px solid #fcf3e6;
  content: "";
  left: 15%;
  margin-left: -15px;
  position: absolute;
  top: -24px;
  transform: rotateZ(180deg);
}

.blk_institution_tooltip.is-active {
  visibility: visible;
  opacity: 1;
}

.blk_institution_modal_content {
  background: white;
  z-index: 999999;
  position: absolute;
  border-radius: 4px;
  width: calc(100% - 32px);
  max-width: 400px;
}

.blk_institution_modal_content h4 {
  border-bottom: 1px solid #ccc;
  font-weight: bold;
  padding: 10px;
  text-align: center;
  margin: 0;
}

.blk_institution_modal_content p {
  margin: 0;
  font-size: 14px;
  line-height: 1.6;
  color: #574726;
  padding: 10px;
}

.blk_institution_modal_close {
  position: absolute;
  top: 0;
  right: 0;
  width: 24px;
  height: 24px;
  display: flex;
  align-items: center;
  justify-content: center;
  background: none;
  border: none;
  padding: 0;
  cursor: pointer;
}

.blk_institution_modal_close::before {
  background: #fff;
  border: 1px solid #ccc;
  border-radius: 4px;
  color: #ccc;
  content: "\E5CD";
  font-family: "material icons";
  font-size: 1.5rem;
  font-weight: normal;
  height: 24px;
  line-height: 24px;
  position: absolute;
  right: 5px;
  text-align: center;
  top: 5px;
  width: 24px;
}

.facility_modal {
  display: none;
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100vh;
  z-index: 1000;
}

.facility_modal::before {
  content: "";
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100vh;
  background: rgba(0, 0, 0, 0.5);
}

.facility_modal.is-active {
  display: flex;
  justify-content: center;
  align-items: center;
}

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

@media (min-width: 768px) {
  .facility_modal {
    display: none !important;
  }
}

.table_service th.th_tooltip {
  position: relative;
  cursor: pointer;
}

.table_header_tooltip {
  position: fixed;
  transform: translateX(-50%);
  width: 280px;
  padding: 12px;
  background: #fcf3e6;
  border-radius: 5px;
  box-shadow: 0 2px 8px rgba(0, 0, 0, 0.1);
  font-size: 13px;
  line-height: 1.6;
  color: #333;
  visibility: hidden;
  opacity: 0;
  transition: opacity 0.2s, visibility 0.2s;
  z-index: 999;
}

.table_header_tooltip h4 {
  margin: 0 0 6px 0;
  font-size: 16px;
  font-weight: bold;
}

.table_header_tooltip p {
  font-weight: normal;
}

.table_header_tooltip::before {
  border: 15px solid transparent;
  border-bottom: 15px solid #fcf3e6;
  content: "";
  left: 50%;
  margin-left: -15px;
  position: absolute;
  top: -30px;
}

.table_header_tooltip.is-active {
  visibility: visible;
  opacity: 1;
}

.table_header_modal_content {
  background: white;
  z-index: 999999;
  position: absolute;
  border-radius: 4px;
  width: calc(100% - 32px);
  max-width: 400px;
}

.table_header_modal_content h4 {
  border-bottom: 1px solid #ccc;
  font-weight: bold;
  padding: 10px;
  text-align: center;
  margin: 0;
}

.table_header_modal_content p {
  margin: 0;
  font-size: 14px;
  font-weight: normal;
  line-height: 1.6;
  color: #333;
  padding: 10px;
}

.table_header_modal_close {
  position: absolute;
  top: 0;
  right: 0;
  width: 24px;
  height: 24px;
  display: flex;
  align-items: center;
  justify-content: center;
  background: none;
  border: none;
  padding: 0;
  cursor: pointer;
}

.table_header_modal_close::before {
  background: #fff;
  border: 1px solid #ccc;
  border-radius: 4px;
  color: #ccc;
  content: "\E5CD";
  font-family: "material icons";
  font-size: 1.5rem;
  font-weight: normal;
  height: 24px;
  line-height: 24px;
  position: absolute;
  right: 5px;
  text-align: center;
  top: 5px;
  width: 24px;
}

.header_modal {
  display: none;
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100vh;
  z-index: 1000;
}

.header_modal::before {
  content: "";
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100vh;
  background: rgba(0, 0, 0, 0.5);
}

.header_modal.is-active {
  display: flex;
  justify-content: center;
  align-items: center;
}

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

@media (min-width: 768px) {
  .header_modal {
    display: none !important;
  }
}

@media (min-width: 768px) {
  .main_detail {
    margin: 0 auto;
    width: 100%;
    max-width: 1024px;
  }

  .text-xs {
    font-size: 0.75rem;
  }

  .text_white-space_pre_line {
    white-space: pre-line;
  }

  .content_textarea {
    white-space: pre-line;
  }

  .section_fv {
    grid-template-columns: 600px 1fr;
    margin: 18px 0 10px;
  }

  .section_fv .blk_institution {
    margin-bottom: 12px;
  }

  .section_fv .blk_institution_tag {
    font-size: 0.875rem;
    padding: 6px 8px;
  }

  .section_fv h1 {
    margin: 0 0 6px;
  }

  .section_fv .txt_kana {
    display: inline-block;
    font-size: 0.75rem;
    font-weight: normal;
    margin-left: 15px;
  }

  .section_fv .review-rating {
    grid-column: 1/2;
    grid-row: 3/4;
    margin-bottom: 12px;
    font-size: 1.25rem;
  }

  .section_fv .review-rating__total {
    font-size: 1rem;
  }

  .section_fv .review-rating__total em {
    font-size: 1.375rem;
  }

  .section_fv .blk_remaining {
    display: flex;
    grid-column: unset;
    grid-row: unset;
    font-size: 0.875rem;
    justify-content: center;
    right: calc(100% - 620px);
    text-align: center;
    top: calc(100% - 98px);
    width: 76px;
  }

  .section_fv .blk_remaining_count {
    font-size: 1.5rem;
  }

  .section_fv .blk_remaining p {
    border: 2px solid #ffdeda;
    border-radius: 8px;
    line-height: 1.5;
    font-size: 0.78rem;
  }

  .section_fv .blk_remaining.\--no-empty {
    width: 92px;
  }

  .section_fv .blk_remaining.\--no-empty p {
    width: 100%;
    font-size: 0.9rem;
    font-weight: bold;
  }

  .section_fv .blk_cost {
    grid-column: 1/3;
    grid-row: 6/7;
  }

  .section_fv .blk_cost dt {
    font-weight: bold;
    margin-right: 10px;
  }

  .section_fv .blk_cost dd {
    margin-right: 40px;
  }

  .section_fv .blk_cost dd em {
    font-size: 1.5rem;
    margin-bottom: 3px;
  }

  .section_fv .blk_traffic {
    align-items: center;
    display: flex;
    grid-column: 1/2;
    grid-row: 4/5;
    margin-bottom: 12px;
    -ms-grid-column: 1;
    -ms-grid-column-span: 2;
    -ms-grid-row: 4;
    -ms-grid-row-span: 1;
    overflow-x: auto;
    overflow-y: hidden;
    white-space: nowrap;
    max-width: 532px;
  }

  .section_fv .blk_traffic::before {
    font-size: 1.5rem;
    margin: 0 5px -3px 0;
    vertical-align: bottom;
  }

  .section_fv .link_map {
    -ms-grid-column: 1;
    -ms-grid-column-span: 2;
    grid-column: 1/3;
    -ms-grid-row: 5;
    -ms-grid-row-span: 1;
    grid-row: 5/6;
    margin: 0 0 12px 1rem;
  }

  .container_fv {
    display: flex;
    flex-wrap: nowrap;
    justify-content: space-between;
    margin-bottom: 48px;
  }

  .container_fv .blk_slider {
    display: block;
    max-width: 620px;
  }

  .container_fv .blk_cv_top {
    display: block;
    margin: 0;
    max-width: 355px;
    width: 100%;
  }

  .container_fv .box_cv {
    border: 1px solid #ccc;
    display: flex;
    flex-wrap: wrap;
    height: auto;
    justify-content: center;
    margin-bottom: 6px;
    max-width: 355px;
    width: 100%;
  }

  .container_fv .box_cv_ttl {
    background: #f5f5f5;
    display: block;
    font-size: 0.875rem;
    font-weight: bold;
    height: 32px;
    line-height: 32px;
    margin-bottom: 10px;
    text-align: center;
    width: 100%;
  }

  .container_fv .box_cv_head {
    display: grid;
    grid-template-columns: auto 1fr;
    grid-template-rows: repeat(2, auto);
    gap: 10px 5px;
    align-items: center;
    width: 100%;
    margin-bottom: 10px;
    padding: 0 10px;
    max-width: 600px;
    position: relative;
    gap: 9px;
    margin-top: 0;
    margin-bottom: 15px;
  }

  .container_fv .box_cv_head a {
    color: #59bec5;
  }

  .container_fv .box_cv_thum {
    grid-column: 1/2;
    grid-row: 1/3;
    align-self: normal;
    display: block;
    width: 80px;
    height: 80px;
    -o-object-fit: cover;
       object-fit: cover;
    border-radius: 50%;
    width: 94px;
    height: 94px;
  }
}

@media (min-width: 768px) and (max-width: 360px) {
  .container_fv .box_cv_thum {
    width: 60px;
    height: 60px;
  }
}

@media (min-width: 768px) {
  .container_fv .box_cv_crnm {
    grid-column: 2/3;
    grid-row: 1/2;
    display: block;
    align-self: end;
    color: #574726;
    font-size: 0.875rem;
    line-height: 1.5;
    margin: 0 0 0 8px;
    margin: 0;
  }
}

@media (min-width: 768px) {
  .container_fv .box_cv_lead {
    grid-column: 2/3;
    grid-row: 2/3;
    display: block;
    align-self: start;
    margin: 0 0 0 0;
    padding: 6px 10px;
    font-size: 0.875rem;
    color: #574726;
    line-height: 1.2;
    background: #fcf3e6;
    border-radius: 32px;
    border-radius: 16px;
    font-weight: bold;
    line-height: 1.5;
    padding: 10px;
  }

  .container_fv .box_cv_lead::before {
    display: none;
  }

  .container_fv .box_cv_lead::after {
    display: none;
  }
}

@media (min-width: 768px) {
  .container_fv .box_cv .btn_tel {
    display: none;
  }
}

@media (min-width: 768px) {
  .container_fv .box_cv .txt_free {
    display: block;
    font-size: 0.875rem;
    width: 100%;
    max-width: 600px;
    text-align: center;
  }
}

@media (min-width: 768px) {
  .container_fv .box_cv .txt_tel {
    align-items: center;
    color: #df6952;
    display: flex;
    font-size: 2.7rem;
    font-weight: bold;
    margin-bottom: 4px;
    width: 100%;
    max-width: 600px;
    justify-content: center;
  }

  .container_fv .box_cv .txt_tel::before {
    content: "\E0CD";
    display: inline-flex;
    font-family: "material icons";
    font-weight: normal;
  }
}

@media (min-width: 768px) {
  .container_fv .box_cv .txt_time {
    font-size: 0.875rem;
    display: none;
  }
}

@media (min-width: 768px) {
  .container_fv .box_cv .btn_request {
    display: grid;
    grid-template-columns: repeat(2, auto);
    grid-template-rows: repeat(2, auto);
    align-items: center;
    justify-content: center;
    gap: 0 10px;
    width: 100%;
    max-width: 355px;
    margin-bottom: 10px;
    padding: 10px 8% 10px 5%;
    position: relative;
    cursor: pointer;
    border: 1px solid #2ca2ab;
    border-radius: 50px;
    box-shadow: 1px 6px 4px 0 rgba(0, 0, 0, 0.2);
    background: linear-gradient(to bottom, #52d8e3 0%, #3bb4bd 100%);
    color: #fff;
    gap: 0 10px;
    max-width: 600px;
    margin: 0 10px 15px;
  }

  .container_fv .box_cv .btn_request a {
    width: 100%;
    height: 100%;
    position: absolute;
    top: 0;
    left: 0;
  }

  .container_fv .box_cv .btn_request:hover {
    opacity: 0.6;
  }
}

@media (min-width: 768px) and (min-width: 768px) {
  .container_fv .box_cv .btn_request {
    gap: 0 20px;
  }
}

@media (min-width: 768px) and (max-width: 360px) {
  .container_fv .box_cv .btn_request {
    gap: 0 5px;
    padding-left: 10px;
    padding-right: 10px;
  }
}

@media (min-width: 768px) {
  .container_fv .box_cv .btn_request::before {
    background: #fff;
    border-radius: 4px;
    content: "\7121\6599";
    color: #ee827c;
    display: inline-block;
    font-size: 1rem;
    font-weight: bold;
    line-height: 1;
    text-align: center;
    text-shadow: none;
    width: 50px;
    padding: 6px;
    grid-column: 1/2;
    grid-row: 1/3;
  }
}

@media (min-width: 768px) and (max-width: 360px) {
  .container_fv .box_cv .btn_request::before {
    width: 40px;
    font-size: 0.875rem;
  }
}

@media (min-width: 768px) {
  .container_fv .box_cv .btn_request_easy {
    display: block;
    font-size: 0.875rem;
    font-weight: normal;
    line-height: 1;
    margin-bottom: 3px;
    text-align: center;
    text-shadow: 1px 0px 4px rgba(16, 137, 147, 0.25);
    width: 100%;
    grid-column: 2/3;
    grid-row: 1/2;
    margin-bottom: 3px;
  }
}

@media (min-width: 768px) and (max-width: 360px) {
  .container_fv .box_cv .btn_request_easy {
    font-size: 0.8125rem;
  }
}

@media (min-width: 768px) {
  .container_fv .box_cv .btn_request_document {
    align-items: center;
    display: flex;
    font-size: 1.25rem;
    font-weight: bold;
    justify-content: center;
    line-height: 1;
    text-align: center;
    text-shadow: 1px 0px 4px rgba(16, 137, 147, 0.25);
    width: 100%;
    grid-column: 2/3;
    grid-row: 2/3;
  }

  .container_fv .box_cv .btn_request_document::after {
    content: "\E5E1";
    display: inline-block;
    font-family: "material icons";
    font-size: 1.25rem;
    font-weight: normal;
    text-decoration: none;
    margin: 0 0 0 5px;
    margin: 3px 0 0 5px;
  }
}

@media (min-width: 768px) {
  .container_fv .box_cv .btn_add {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 100%;
    max-width: 600px;
    height: 40px;
    margin: 0 10px 10px;
    border: 1px solid #ddd;
    border-radius: 50px;
    cursor: pointer;
    position: relative;
    background: linear-gradient(180deg, #fff 0%, #efefef 100%);
    color: #574726;
    margin-bottom: 15px;
  }

  .container_fv .box_cv .btn_add a {
    width: 100%;
    height: 100%;
    position: absolute;
    top: 0;
    left: 0;
  }

  .container_fv .box_cv .btn_add_facility {
    align-items: center;
    display: flex;
    font-size: 1rem;
    font-weight: bold;
    justify-content: center;
    line-height: 1;
    text-align: center;
    width: 100%;
  }

  .container_fv .box_cv .btn_add_facility::before {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 20px;
    height: 20px;
    margin-right: 6px;
    border-radius: 50%;
    background: #59bec5;
    content: "\E145";
    color: #fff;
    font-family: "material icons";
    font-weight: bold;
  }
}

@media (min-width: 768px) {
  .container_fv .box_cv .btn_remove {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 100%;
    max-width: 600px;
    height: 40px;
    margin: 0 10px 10px;
    border: 1px solid #ddd;
    border-radius: 50px;
    cursor: pointer;
    position: relative;
    background: linear-gradient(180deg, #efefef 0%, #fff 100%);
    color: #ccc;
    margin-bottom: 15px;
  }

  .container_fv .box_cv .btn_remove a {
    width: 100%;
    height: 100%;
    position: absolute;
    top: 0;
    left: 0;
  }

  .container_fv .box_cv .btn_remove_facility {
    align-items: center;
    display: flex;
    font-size: 1rem;
    font-weight: bold;
    justify-content: center;
    line-height: 1;
    text-align: center;
    width: 100%;
  }

  .container_fv .box_cv .btn_remove_facility::before {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 20px;
    height: 20px;
    margin-right: 6px;
    border-radius: 50%;
    background: #ccc;
    content: "\E876";
    color: #fff;
    font-family: "material icons";
    font-weight: bold;
  }
}

@media (min-width: 768px) {
  .section_summary {
    margin: 0 auto 48px;
    width: 100%;
  }

  .section_summary .blk_map {
    height: 420px;
    margin-bottom: 36px;
  }

  .section_summary .blk_facility {
    margin-bottom: 20px;
  }

  .section_summary .blk_facility .list_condition li {
    font-size: 0.875rem;
    margin: 0 10px 12px 0;
    padding: 12px 16px;
  }

  .section_summary .blk_facility .list_service li {
    font-size: 0.875rem;
    margin: 0 10px 12px 0;
    padding: 12px 16px;
  }

  .section_summary .open_button_container {
    display: flex;
    margin-top: 5px;
  }

  .section_summary .open_button_container .map_icon {
    display: flex;
    align-items: center;
  }

  .section_summary .open_map_button {
    font-weight: 400;
    cursor: pointer;
    text-decoration: underline;
    border: none;
    background: none;
    color: #ee827c;
    font-size: 0.875rem;
  }

  .section_summary .blk_map {
    margin-top: 12px;
  }
}

@media screen and (min-width: 768px) and (min-width: 768px) {
  .section_summary .open_map_button {
    font-size: 0.875rem;
  }

  .section_summary .map_icon svg {
    width: 12px;
    height: 16px;
  }
}

@media (min-width: 768px) {
  .blk_cv {
    margin: 0 auto 48px;
    width: 100%;
  }

  .blk_cv_lead {
    display: none;
  }

  .blk_cv .box_cv {
    width: 100%;
    max-width: 800px;
  }

  .blk_cv .box_cv_head {
    max-width: 600px;
    margin: 0 0 10px;
    padding: 0;
    gap: 10px 20px;
  }

  .blk_cv .box_cv_crnm {
    margin: 0;
  }

  .blk_cv .box_cv_lead {
    padding: 10px;
    text-align: center;
  }

  .blk_cv .box_cv .btn_tel {
    display: none;
  }

  .blk_cv .box_cv .wrap_tel {
    align-items: center;
    display: flex;
    justify-content: center;
    width: 100%;
    max-width: 600px;
    margin: auto;
    text-align: center;
  }

  .blk_cv .box_cv .txt_tel {
    align-items: center;
    color: #df6952;
    display: flex;
    font-size: 2.7rem;
    font-weight: bold;
    margin: 0 20px 0 0;
  }

  .blk_cv .box_cv .txt_tel::before {
    content: "\E0CD";
    display: inline-flex;
    font-family: "material icons";
    font-size: 2.5rem;
    font-weight: normal;
  }

  .blk_cv .box_cv .txt_time {
    margin-bottom: 0;
    display: none;
  }

  .blk_cv .box_cv .btn_request {
    margin: 0 0 20px;
    max-width: 600px;
  }

  .blk_cv .box_cv .btn_add {
    margin: 0 0 20px;
  }

  .blk_cv .box_cv .btn_remove {
    margin: 0 0 20px;
  }
}

@media (min-width: 768px) {
  .section_medical {
    margin: 0 auto 48px;
    width: 100%;
  }

  .section_medical .blk_medical {
    display: block;
  }

  .section_medical .blk_medical .list_accept {
    justify-content: flex-start;
    margin-bottom: 20px;
  }

  .section_medical .blk_medical .list_accept li {
    align-items: center;
    flex-wrap: nowrap;
    margin: 0 20px 0 0;
    position: static;
    width: auto;
    font-size: 14px;
    font-weight: bold;
  }

  .section_medical .blk_medical .list_accept li.item_circle::before {
    position: static;
    margin: 0;
  }

  .section_medical .blk_medical .list_accept li.item_triangle::before {
    position: static;
    margin: 0;
  }

  .section_medical .blk_medical .list_accept li.item_cross::before {
    position: static;
    margin: 0;
  }

  .section_medical .blk_medical .list_medical {
    display: flex;
    flex-wrap: wrap;
  }

  .section_medical .blk_medical .list_medical li {
    width: 50%;
    line-height: 32px;
    padding: 0;
  }

  .section_medical .blk_medical .txt_attention {
    font-size: 0.875rem;
  }
}

@media (min-width: 768px) {
  .section_present {
    margin: 0 auto 48px;
    padding: 20px 0;
    width: 100%;
  }

  .section_present_lead {
    font-size: 1.125rem;
  }

  .section_present h2 {
    font-weight: bold;
  }

  .section_present .txt_gift {
    font-size: 1.5rem;
  }

  .section_present .txt_gift span strong {
    font-size: 2rem;
  }

  .section_present .txt_attention {
    font-size: 0.875rem;
  }

  .section_present .btn_allowance {
    height: 48px;
    max-width: 600px;
  }

  .section_present .blk_present {
    margin: 0 auto 36px;
    max-width: 680px;
  }

  .section_present .blk_present .list_flow li {
    margin-bottom: 20px;
    padding: 10px 100px 10px 40px;
  }

  .section_present .blk_present .list_flow li.flow_01 {
    background: #fff url(/img/gift/tel.png) right 40px center no-repeat;
    background-size: 80px;
  }

  .section_present .blk_present .list_flow li.flow_02 {
    background: #fff url(/img/gift/done.png) right 40px center no-repeat;
    background-size: 80px;
  }

  .section_present .blk_present .list_flow li.flow_03 {
    background: #fff url(/img/gift/note.png) right 40px center no-repeat;
    background-size: 80px;
  }

  .section_present .blk_apply {
    margin: 0 auto 36px;
    max-width: 680px;
  }

  .section_present .blk_apply dl dt {
    padding: 10px 40px;
  }

  .section_present .blk_apply dl dd {
    padding: 0 40px 15px;
  }

  .section_present .blk_apply ul li {
    font-size: 0.875rem;
  }

  .section_present .blk_attention {
    margin: 0 auto 36px;
    max-width: 680px;
  }

  .section_present .blk_attention_inner {
    padding: 10px 40px 15px;
  }
}

@media (min-width: 768px) {
  .section_campaign {
    width: 100%;
  }

  .section_campaign .blk_campaign {
    display: flex;
    align-items: start;
    flex-wrap: wrap;
    font-size: 1rem;
    margin: 0;
  }

  .section_campaign .blk_campaign_inner {
    font-size: 1rem;
    width: calc(50% - 36px);
  }

  .section_campaign .blk_campaign_inner a {
    color: #574726;
    pointer-events: none;
  }

  .section_campaign .blk_campaign h3 {
    width: 100%;
  }

  .section_campaign .blk_campaign .img_campaign {
    -o-object-fit: contain;
       object-fit: contain;
    margin: 0 36px 0 0;
    width: 50%;
  }

  .section_campaign .blk_campaign .blk_campaign_inner + h3 {
    margin-top: 30px;
  }
}

@media (min-width: 768px) {
  .section_recommend {
    width: 100%;
  }

  .section_recommend .list_recommend {
    margin-bottom: 36px;
    padding: 20px 40px 10px;
  }

  .section_recommend .blk_facility {
    margin-bottom: 36px;
  }

  .section_recommend .blk_facility .list_preference li {
    font-size: 0.875rem;
    margin: 0 10px 10px 0;
    padding: 12px 16px;
  }
}

@media (min-width: 768px) {
  .section_faq {
    max-width: 1024px;
    width: 100%;
    margin: 0 auto;
  }

  .section_faq > p {
    margin-bottom: 36px;
  }
}

@media (min-width: 768px) {
  .section_feature .feature_container {
    display: flex;
    gap: 24px;
    margin-bottom: 36px;
  }
}

@media (min-width: 768px) and (max-width: 768px) {
  .section_feature .feature_container {
    flex-direction: column;
    gap: 16px;
  }
}

@media (min-width: 768px) {
  .section_feature .blk_feature {
    margin: 0;
  }
}

@media (min-width: 768px) {
  .section_feature .blk_feature_text {
    flex: 1;
  }

  .section_feature .blk_feature_text h4 {
    margin-bottom: 16px;
    margin-top: 0;
  }
}

@media (min-width: 768px) {
  .section_feature .img_feature {
    display: block;
    height: auto;
    max-width: 310px;
    width: 100%;
  }
}

@media (min-width: 768px) {
  .section_facility {
    width: 100%;
  }

  .section_facility .blk_facility {
    margin-bottom: 36px;
  }

  .section_facility .blk_facility .list_facility li span {
    padding: 10px 20px;
    width: 70%;
  }

  .section_facility .blk_facility .list_facility li span.item_name {
    width: 30%;
  }

  .section_facility .blk_hashtag {
    margin: -30px 0 30px 2px;
  }
}

@media (min-width: 768px) {
  .section_experience {
    width: 100%;
  }

  .section_experience .blk_facility {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
  }

  .section_experience .blk_facility h3 {
    display: block;
    width: 100%;
  }

  .section_experience .blk_facility .img_event {
    margin: 0;
    max-width: 310px;
    width: 100%;
  }

  .section_experience .blk_facility .list_facility.list_event {
    width: calc(70% - 24px);
  }

  .section_experience .blk_facility .list_facility li span {
    padding: 10px 20px;
    width: 70%;
  }

  .section_experience .blk_facility .list_facility li span.item_name {
    width: 30%;
  }
}

@media (min-width: 768px) {
  .section_service {
    width: 100%;
  }

  .section_service .blk_facility {
    margin-bottom: 36px;
  }

  .section_service .blk_facility .table_service th {
    padding: 10px 10px;
    text-align: left;
    width: 20%;
  }

  .section_service .blk_facility .table_service td {
    padding: 10px 10px;
    width: 20%;
  }
}

@media (min-width: 768px) {
  .section_life {
    width: 100%;
  }

  .section_life .blk_feature {
    clear: both;
    margin-bottom: 36px;
  }

  .section_life .blk_feature .img_feature {
    float: left;
    height: auto;
    margin: 0 0 36px 0;
    max-width: 310px;
    width: 100%;
  }

  .section_life .blk_feature .list_facility li span {
    padding: 10px 20px;
  }

  .section_life h3 {
    clear: both;
  }
}

@media (min-width: 768px) {
  .section_care_premium {
    width: 100%;
  }

  .section_care_premium p.note {
    font-size: 12px;
  }
}

@media (min-width: 768px) {
  .blk_bnr_cta {
    margin: 40px 0 50px 0;
  }

  .blk_bnr_cta > p {
    max-width: 900px;
    text-align: center;
  }

  .blk_bnr_cta > a > img {
    max-width: 900px;
  }

  .blk_bnr_cta > a > img:first-of-type {
    display: block;
  }

  .blk_bnr_cta > a > img:last-of-type {
    display: none;
  }
}

@media (min-width: 768px) {
  .blk-other-search {
    margin: 50px 0;
  }

  .blk-other-search > a {
    font-size: 32px;
  }

  .blk-other-search > a > br {
    display: none;
  }
}

@media (min-width: 768px) {
  .tab-blk {
    width: 100vw;
    margin: 20px calc(50% - 51vw) 30px;
    padding-top: 10px;
    padding-left: 2vw;
    background: #fff;
    border-bottom: 1px solid #ccc;
  }

  .tab-blk__list {
    display: flex;
    flex-wrap: nowrap;
    justify-content: flex-start;
    margin: 0 auto;
    width: 100%;
    max-width: 1024px;
  }

  .tab-blk__item {
    background: #fff;
    border: 1px solid #ccc;
    border-bottom: 0;
    border-radius: 5px 5px 0 0;
    color: #ee827c;
    display: block;
    flex: none;
    font-weight: bold;
    margin-right: 8px;
    text-align: center;
    text-decoration: none;
    width: 20%;
  }

  .tab-blk__item a {
    padding: 13px 0;
  }

  .tab-blk__item.current {
    position: relative;
    background-color: #ee827c;
    color: #fff;
    padding: 13px 0;
  }

  .tab-blk__item.current::after {
    content: "";
    position: absolute;
    top: 100%;
    left: 50%;
    margin-left: -8px;
    width: 0;
    height: 0;
    border-style: solid;
    border-width: 8px 8px 0;
    border-color: #ee827c transparent transparent;
  }
}

@media (min-width: 768px) {
  .section_review {
    margin: 0 auto 48px;
    width: 100%;
  }
}

@media (min-width: 768px) {
  .section_review_speciality {
    margin: 0 auto 48px;
    width: 100%;
  }

  .section_review_speciality_more-check + div {
    max-height: 200px;
  }

  .section_review_speciality .review_catchphrase {
    font-size: 20px;
  }

  .section_review_speciality .review-text h4 {
    font-size: 17px;
  }
}

@media (min-width: 768px) and (max-width: 1023.98px) {
  .main_detail {
    margin: 0 10px;
    width: calc(100% - 20px);
  }

  .container_fv {
    flex-wrap: wrap;
  }

  .container_fv .blk_slider {
    margin: 0 auto 48px;
  }

  .container_fv .blk_cv_top {
    margin: 0 auto;
    width: 100%;
    max-width: none;
  }

  .container_fv .box_cv {
    max-width: 800px;
  }

  .container_fv .box_cv_head {
    width: 100%;
    max-width: 600px;
    padding: 0;
  }

  .tab-blk {
    padding: 0 12px 0 20px;
  }
}

@media (min-width: 768px) {
  body.form-time .container_fv .box_cv .txt_free, body.form-time .container .box_cv .txt_free, body.form-time .splide .box_cv .txt_free {
    display: none;
  }

  body.form-time .container_fv .box_cv .txt_note::before, body.form-time .container .box_cv .txt_note::before, body.form-time .splide .box_cv .txt_note::before {
    content: "\6025\304E\306E\5165\5C45\76F8\8AC7\30FB\898B\5B66\4E88\7D04\306F\304A\96FB\8A71\304F\3060\3055\3044\FF01";
    display: block;
    font-size: 0.875rem;
  }

  body.form-time .container_fv .box_cv .txt_tel, body.form-time .container .box_cv .txt_tel, body.form-time .splide .box_cv .txt_tel {
    display: flex;
    color: #444;
    font-weight: normal;
    font-size: 1.4rem;
  }

  body.form-time .container_fv .box_cv .txt_tel::before, body.form-time .container .box_cv .txt_tel::before, body.form-time .splide .box_cv .txt_tel::before {
    font-size: auto;
  }

  body.form-time .container_fv .box_cv .btn_request, body.form-time .container .box_cv .btn_request, body.form-time .splide .box_cv .btn_request {
    border: 1px solid #f44f6d;
    border-radius: 50px;
    box-shadow: 1px 6px 4px 0 rgba(0, 0, 0, 0.2);
    background: linear-gradient(to bottom, #fe909c 0%, #ff7785 100%);
    color: #fff;
    padding: 20px 5%;
  }

  body.form-time .container_fv .box_cv .btn_request_document, body.form-time .container .box_cv .btn_request_document, body.form-time .splide .box_cv .btn_request_document {
    font-size: 1.4rem;
  }

  body.form-time .container_fv .box_cv .btn_add, body.form-time .container .box_cv .btn_add, body.form-time .splide .box_cv .btn_add {
    order: 3;
  }

  body.form-time .container_fv .box_cv .btn_remove, body.form-time .container .box_cv .btn_remove, body.form-time .splide .box_cv .btn_remove {
    order: 3;
  }

  body.form-time .container_fv .cta_main .txt_tel, body.form-time .container .cta_main .txt_tel, body.form-time .splide .cta_main .txt_tel {
    display: none;
  }

  body.form-time .blk_cv .box_cv .txt_tel {
    display: none;
  }
}

@media (min-width: 768px) {
  .review .section_fv .blk_remaining {
    right: 120px;
  }

  .container_fv .box_cv .btn_request_document {
    font-size: 1.4rem;
  }
}

.breadcrumb_lower {
  background: #f5f5f5;
  border-bottom: 1px solid #e6e6e6;
  display: block;
  height: 34px;
  margin-bottom: 24px;
  width: 100%;
}

.breadcrumb_lower .list_breadcrumb {
  display: flex;
  flex-wrap: nowrap;
  font-size: 0.8125rem;
  height: 36px;
  margin: 0 auto;
  max-width: 1024px;
  overflow-x: auto;
}

.breadcrumb_lower .list_breadcrumb li {
  height: 36px;
  line-height: 36px;
  white-space: nowrap;
}

.breadcrumb_lower .list_breadcrumb .item_current {
  padding: 0 10px;
}

.breadcrumb_lower .list_breadcrumb li a {
  color: #574726;
  display: block;
  height: 36px;
  padding: 0 10px;
  position: relative;
  text-decoration: none;
}

.breadcrumb_lower .list_breadcrumb li a::before {
  border-top: 1px solid #e6e6e6;
  content: "";
  display: inline-flex;
  height: 18px;
  position: absolute;
  right: 0;
  transform: rotate(60deg);
  top: 5px;
  width: 18px;
}

.breadcrumb_lower .list_breadcrumb li a::after {
  border-right: 1px solid #e6e6e6;
  bottom: 5px;
  content: "";
  display: inline-flex;
  height: 18px;
  position: absolute;
  right: 0;
  transform: rotate(30deg);
  width: 18px;
}

.wrap_lower {
  margin: 0 auto 36px;
  width: calc(100% - 20px);
}

.wrap_lower .blk_search {
  margin-bottom: 24px;
}

.wrap_lower .blk_search .list_search li {
  display: inline-block;
  line-height: 1.5;
}

.wrap_lower .blk_search .list_search li::after {
  content: "|";
}

.wrap_lower .blk_search .list_search li:last-child::after {
  content: "";
}

.wrap_lower .blk_search .list_search li a {
  color: #574726;
}

.wrap_lower.category_select ul li {
  display: inline-block;
  line-height: 1.5;
  margin-right: 4px;
}

.wrap_lower.category_select ul li a {
  display: inline-block;
  color: #574726;
  padding: 6px 12px;
  background-color: #fae3e1;
  border-radius: 20px;
  font-weight: bold;
  text-decoration: underline;
  margin-bottom: 8px;
}

@media (max-width: 768px) {
  .wrap_lower.category_select {
    margin-top: 24px;
    width: calc(100% - 10px);
  }
}

@media (min-width: 1025px) {
  .wrap_lower {
    font-size: 0.875rem;
    /*max-width: 1024px;*/
    width: 100%;
  }
}

@media (min-width: 768px) and (max-width: 1024px) {
  .wrap_lower {
    margin: 0 10px;
    width: calc(100% - 20px);
  }
}

.nav_group h4 {
  border-bottom: 1px solid #f5f5f5;
  margin: 0 0 24px 0;
  padding-left: 10px;
}

.nav_group .list_link {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  width: 100%;
}

.nav_group .list_link li {
  align-items: center;
  border-bottom: 1px solid #f5f5f5;
  border-right: 1px solid #f5f5f5;
  display: flex;
  height: 40px;
  padding-left: 10px;
  position: relative;
  width: 50%;
}

.nav_group .list_link li::after {
  content: "\E5E1";
  display: inline-block;
  font-family: "material icons";
  font-weight: normal;
  position: absolute;
  right: 10px;
}

.nav_group .list_link li a {
  color: #574726;
  text-decoration: none;
}

.station_detail .main_image {
  width: 100%;
}

.station_detail .introduction {
  margin-top: 10px;
}

.station_detail .basic_info {
  margin-top: 15px;
}

@media (min-width: 768px) {
  .nav_group {
    margin: 0 auto 48px;
    max-width: 1024px;
    width: 100%;
  }

  .nav_group h4 {
    margin-bottom: 10px;
    padding: 0 0 10px;
  }

  .nav_group .list_link {
    border-top: none;
    display: block;
    margin: 0 auto 72px;
  }

  .nav_group .list_link li {
    border: none;
    display: inline-block;
    height: auto;
    line-height: 1.5;
    padding: unset;
    width: auto;
  }

  .nav_group .list_link li::after {
    content: "|";
    padding: 0 0 0 5px;
    position: static;
  }

  .nav_group .list_link li:last-child::after {
    content: "";
  }
}

@media (min-width: 768px) and (max-width: 1023.98px) {
  .nav_group {
    margin: 0 10px;
    width: calc(100% - 20px);
  }
}

.footer {
  background: #f5f5f5;
  padding: 0 0 60px;
}

.footer nav h4 {
  background: #fff;
  margin: 0;
  padding: 0 0 10px 10px;
}

.footer nav .list_link {
  border-top: 1px solid #fff;
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  margin-bottom: 24px;
  width: 100%;
}

.footer nav .list_link li {
  background: #f5f5f5;
  border-bottom: 1px solid #fff;
  border-right: 1px solid #fff;
  height: 40px;
  position: relative;
  width: 50%;
}

.footer nav .list_link li a {
  align-items: center;
  color: #574726;
  display: flex;
  height: 100%;
  padding-left: 10px;
  position: relative;
  text-decoration: none;
  width: 100%;
}

.footer nav .list_link li a::after {
  content: "\E5E1";
  display: inline-block;
  font-family: "material icons";
  font-weight: normal;
  position: absolute;
  right: 10px;
}

.footer .footer_logos {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 16px;
  margin: 0 auto 20px;
  padding: 0 16px;
}

.footer .footer_logos_item {
  display: flex;
  align-items: center;
  gap: 12px;
  max-width: 360px;
  width: 100%;
}

.footer .footer_logos_img {
  flex-shrink: 0;
  width: auto;
  height: 56px;
}

.footer .footer_logos_txt {
  margin: 0;
  color: #333;
  font-size: 0.7rem;
  line-height: 1.5;
}

.footer .txt_copyright {
  font-size: 0.75rem;
  text-align: center;
}

.footer .txt_recaptcha {
  display: none;
  color: #999;
  margin-top: 12px;
  font-size: 0.7rem;
  text-align: center;
}

.footer .txt_recaptcha a {
  color: #59bec5;
}

@media (min-width: 1025px) {
  .footer {
    background: #f5f5f5;
    padding: 20px 0 70px;
  }

  .footer nav {
    margin: 0 auto 48px;
    max-width: 1024px;
    width: 100%;
  }

  .footer nav .list_link {
    border-top: none;
    display: block;
    text-align: center;
  }

  .footer nav .list_link li {
    border: none;
    display: inline-block;
    height: auto;
    line-height: 1.5;
    position: static;
    width: auto;
    font-size: 14px;
  }

  .footer nav .list_link li a {
    color: #574726;
    padding: 0;
  }

  .footer nav .list_link li a::after {
    content: "|";
    line-height: 1;
    padding-left: 5px;
    position: static;
  }

  .footer nav .list_link li:last-child a::after {
    content: "";
    line-height: 1;
    position: static;
  }

  .footer .footer_logos {
    flex-direction: row;
    justify-content: center;
    gap: 64px;
    max-width: 1024px;
    margin: 0 auto 20px;
  }

  .footer .footer_logos_item {
    max-width: 400px;
    width: auto;
  }

  .footer .txt_copyright {
    font-size: 0.75rem;
    text-align: center;
  }
}

.campaign_banner {
  margin: 40px auto 42px;
  max-width: 1040px;
  padding: 0 10px;
}

.campaign_banner + .shukatsu_banner,
.campaign_banner + .coordinator_recruitment_banner {
  margin-top: 42px;
}

.shukatsu_banner,
.coordinator_recruitment_banner {
  margin: 40px auto 48px;
  max-width: 1040px;
  padding: 0 10px;
}

+ .shukatsu_banner,
+ .coordinator_recruitment_banner {
  margin-top: 0;
}

.shukatsu_banner a,
.coordinator_recruitment_banner a {
  display: block;
}

.shukatsu_banner a .pc_banner,
.coordinator_recruitment_banner a .pc_banner {
  display: none;
  width: 100%;
  height: auto;
}

.shukatsu_banner a .sp_banner,
.coordinator_recruitment_banner a .sp_banner {
  display: block;
  width: 100%;
  height: auto;
  margin: 0 auto;
}

@media (min-width: 768px) {
  .shukatsu_banner,
.coordinator_recruitment_banner {
    margin: 40px auto 80px;
  }

  .shukatsu_banner a .pc_banner,
.coordinator_recruitment_banner a .pc_banner {
    display: block;
  }

  .shukatsu_banner a .sp_banner,
.coordinator_recruitment_banner a .sp_banner {
    display: none;
  }
}

@media (min-width: 768px) {
  .shukatsu_banner {
    margin: 40px auto 40px;
  }
}

.splide--nav > .splide__slider > .splide__track > .splide__list > .splide__slide,
.splide--nav > .splide__track > .splide__list > .splide__slide {
  border: 3px solid transparent;
  cursor: pointer;
  opacity: 0.7;
}

.splide--nav > .splide__slider > .splide__track > .splide__list > .splide__slide.is-active,
.splide--nav > .splide__track > .splide__list > .splide__slide.is-active {
  border: 3px solid #ffffff;
  opacity: 0.5;
  -webkit-backface-visibility: visible;
  backface-visibility: visible;
}

.splide--nav > .splide__slider > .splide__track > .splide__list > .splide__slide:focus,
.splide--nav > .splide__track > .splide__list > .splide__slide:focus {
  outline: none;
}

.splide__arrow {
  background: transparent;
  border: 0;
  cursor: pointer;
  padding: 0;
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  z-index: 1;
}

.splide__arrow svg {
  fill: #ffffff;
  height: 2em;
  transition: fill 0.2s linear;
  width: 2em;
  filter: drop-shadow(0 4px 4px rgba(0, 0, 0, 0.5));
}

.splide__arrow:focus {
  outline: none;
}

.splide__arrow--prev {
  left: 0;
}

.splide__arrow--prev svg {
  transform: scaleX(-1);
}

.splide__arrow--next {
  right: 0;
}

.splide__pagination {
  bottom: 0.5em;
  left: 0;
  padding: 0 1em;
  position: absolute;
  right: 0;
  z-index: 1;
}

.splide__pagination__page {
  background: #ccc;
  border: 0;
  border-radius: 50%;
  display: inline-block;
  height: 10px;
  margin: 3px;
  padding: 0;
  transition: all 0.2s linear;
  width: 10px;
}

.splide__pagination__page.is-active {
  background: #ffffff;
  transform: scale(1.4);
}

.splide__pagination__page:hover {
  cursor: pointer;
  opacity: 0.9;
}

.splide__pagination__page:focus {
  outline: none;
}

.splide__container {
  box-sizing: border-box;
  position: relative;
}

.splide__list {
  -webkit-backface-visibility: visible;
  backface-visibility: visible;
  display: flex;
  height: 100%;
  margin: 0 !important;
  padding: 0 !important;
  transform-style: preserve-3d;
}

.splide.is-initialized:not(.is-active) .splide__list {
  display: block;
}

.splide__pagination {
  align-items: center;
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  margin: 0;
  pointer-events: none;
}

.splide__pagination li {
  display: inline-block;
  line-height: 1;
  list-style-type: none;
  margin: 0;
  pointer-events: auto;
}

.splide__progress__bar {
  width: 0;
}

.splide {
  outline: none;
  position: relative;
  visibility: hidden;
}

.splide.is-initialized,
.splide.is-rendered {
  visibility: visible;
}

.splide__slide {
  -webkit-backface-visibility: visible;
  backface-visibility: visible;
  box-sizing: border-box;
  flex-shrink: 0;
  list-style-type: none !important;
  margin: 0;
  outline: none;
  position: relative;
}

.splide__slide img {
  vertical-align: bottom;
}

.splide__slider {
  position: relative;
}

.splide__spinner {
  -webkit-animation: splide-loading 1s linear infinite;
          animation: splide-loading 1s linear infinite;
  border: 2px solid #ffffff;
  border-left-color: transparent;
  border-radius: 50%;
  bottom: 0;
  contain: strict;
  display: inline-block;
  height: 20px;
  left: 0;
  margin: auto;
  position: absolute;
  right: 0;
  top: 0;
  width: 20px;
}

.splide__track {
  overflow: hidden;
  position: relative;
  z-index: 0;
}

@-webkit-keyframes splide-loading {
  0% {
    transform: rotate(0);
  }

  to {
    transform: rotate(1turn);
  }
}

@keyframes splide-loading {
  0% {
    transform: rotate(0);
  }

  to {
    transform: rotate(1turn);
  }
}

.splide--draggable > .splide__slider > .splide__track,
.splide--draggable > .splide__track {
  -webkit-user-select: none;
  -ms-user-select: none;
  -moz-user-select: none;
       user-select: none;
}

.splide--fade > .splide__slider > .splide__track > .splide__list,
.splide--fade > .splide__track > .splide__list {
  display: block;
}

.splide--fade > .splide__slider > .splide__track > .splide__list > .splide__slide,
.splide--fade > .splide__track > .splide__list > .splide__slide {
  left: 0;
  opacity: 0;
  position: absolute;
  top: 0;
  z-index: 0;
}

.splide--fade > .splide__slider > .splide__track > .splide__list > .splide__slide.is-active,
.splide--fade > .splide__track > .splide__list > .splide__slide.is-active {
  opacity: 0.5;
  position: relative;
  z-index: 1;
}

.splide--rtl {
  direction: rtl;
}

.splide--ttb.is-active > .splide__slider > .splide__track > .splide__list,
.splide--ttb.is-active > .splide__track > .splide__list {
  display: block;
}

.splide__progress__bar {
  background: #ccc;
  height: 3px;
}

.splide--rtl > .splide__arrows .splide__arrow--prev,
.splide--rtl > .splide__slider > .splide__track > .splide__arrows .splide__arrow--prev,
.splide--rtl > .splide__track > .splide__arrows .splide__arrow--prev {
  left: auto;
  right: 1em;
}

.splide--rtl > .splide__arrows .splide__arrow--prev svg,
.splide--rtl > .splide__slider > .splide__track > .splide__arrows .splide__arrow--prev svg,
.splide--rtl > .splide__track > .splide__arrows .splide__arrow--prev svg {
  transform: scaleX(1);
}

.splide--rtl > .splide__arrows .splide__arrow--next,
.splide--rtl > .splide__slider > .splide__track > .splide__arrows .splide__arrow--next,
.splide--rtl > .splide__track > .splide__arrows .splide__arrow--next {
  left: 1em;
  right: auto;
}

.splide--rtl > .splide__arrows .splide__arrow--next svg,
.splide--rtl > .splide__slider > .splide__track > .splide__arrows .splide__arrow--next svg,
.splide--rtl > .splide__track > .splide__arrows .splide__arrow--next svg {
  transform: scaleX(-1);
}

.splide--ttb > .splide__arrows .splide__arrow,
.splide--ttb > .splide__slider > .splide__track > .splide__arrows .splide__arrow,
.splide--ttb > .splide__track > .splide__arrows .splide__arrow {
  left: 50%;
  transform: translate(-50%);
}

.splide--ttb > .splide__arrows .splide__arrow--prev,
.splide--ttb > .splide__slider > .splide__track > .splide__arrows .splide__arrow--prev,
.splide--ttb > .splide__track > .splide__arrows .splide__arrow--prev {
  top: 1em;
}

.splide--ttb > .splide__arrows .splide__arrow--prev svg,
.splide--ttb > .splide__slider > .splide__track > .splide__arrows .splide__arrow--prev svg,
.splide--ttb > .splide__track > .splide__arrows .splide__arrow--prev svg {
  transform: rotate(-90deg);
}

.splide--ttb > .splide__arrows .splide__arrow--next,
.splide--ttb > .splide__slider > .splide__track > .splide__arrows .splide__arrow--next,
.splide--ttb > .splide__track > .splide__arrows .splide__arrow--next {
  bottom: 1em;
  top: auto;
}

.splide--ttb > .splide__arrows .splide__arrow--next svg,
.splide--ttb > .splide__slider > .splide__track > .splide__arrows .splide__arrow--next svg,
.splide--ttb > .splide__track > .splide__arrows .splide__arrow--next svg {
  transform: rotate(90deg);
}

.splide--ttb > .splide__pagination,
.splide--ttb > .splide__slider > .splide__pagination {
  bottom: 0;
  display: flex;
  flex-direction: column;
  left: auto;
  padding: 1em 0;
  right: 0.5em;
  top: 0;
}

.splide {
  margin: 0 auto;
}

.splide img {
  width: 100%;
  max-width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}

.splide__slide {
  height: 100%;
}

.thumbnails {
  display: flex;
  justify-content: flex-start;
  margin: 0 auto 0;
  max-width: 620px;
  padding: 0;
  overflow-x: scroll;
}

.thumbnails .thumbnail {
  border: 1px solid #fff;
  cursor: pointer;
  height: 50px;
  list-style: none;
  margin: 1px 0 0;
  min-height: 50px;
  min-width: 50px;
  opacity: 1;
  overflow: hidden;
  width: 50px;
}

.thumbnails .thumbnail.is-active {
  opacity: 0.5;
}

.thumbnails .thumbnail img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}

@media (min-width: 768px) {
  .thumbnails .thumbnail {
    border: 2px solid #fff;
    height: 62px;
    min-height: 62px;
    min-width: 62px;
    width: 62px;
  }

  .scroll-nav {
    overflow-x: auto;
    overflow-y: hidden;
    -webkit-overflow-scrolling: touch;
  }

  .scroll-nav::-webkit-scrollbar {
    height: 5px;
  }

  .scroll-nav::-webkit-scrollbar-thumb {
    background: #ccc;
  }
}

.thumbnails {
  cursor: -webkit-grab;
  cursor: grab;
  overflow-x: scroll;
  overflow-y: hidden;
  white-space: nowrap;
  -webkit-overflow-scrolling: touch;
  scroll-behavior: smooth;
  -webkit-user-select: none;
     -moz-user-select: none;
      -ms-user-select: none;
          user-select: none;
}

.thumbnails.active {
  cursor: -webkit-grabbing;
  cursor: grabbing;
}

.thumbnails::-webkit-scrollbar {
  height: 8px;
}

.thumbnails::-webkit-scrollbar-track {
  background: #f1f1f1;
}

.thumbnails::-webkit-scrollbar-thumb {
  background: #888;
  border-radius: 4px;
}

.thumbnails::-webkit-scrollbar-thumb:hover {
  background: #555;
}

.splide_setting .splide__pagination {
  position: static;
  margin-top: 20px;
}

.splide_setting .splide__pagination__page {
  margin: 0;
  margin-right: 12px;
}

.splide_setting .splide__pagination__page.is-active {
  background: #ee827c;
  transform: none;
}

.splide_setting .splide__pagination li:last-of-type .splide__pagination__page {
  margin-right: 0;
}

.splide_setting .splide__slide {
  max-width: 260px;
  height: auto;
  display: flex;
}

.splide_setting .splide__slide .title {
  line-height: 1.3;
  margin-top: 10px;
  margin-bottom: 10px;
}

.splide_setting .splide__slide .date {
  font-size: 0.75rem;
  color: #ccc;
}

.splide_content_wrap .container {
  padding-right: 0;
  overflow: hidden;
}

.splide_content_wrap .splide__track {
  overflow: visible;
}

@media (min-width: 768px) {
  .splide_setting .splide__slide {
    max-width: 328px;
    margin-right: 20px;
  }

  .splide_setting .splide__slide .title {
    margin-top: 16px;
    margin-bottom: 2px;
  }
}

.splide .cta_main {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: center;
}

.splide .cta_main > div {
  width: 100%;
  padding: 0 30px;
  display: flex;
  flex-direction: column;
  align-items: center;
}

@media (min-width: 768px) {
  .splide .cta_main > div {
    padding: 0;
  }
}

.splide .cta_mainCopy {
  font-size: 1.4em;
  font-weight: bold;
  text-align: center;
  line-height: 1;
}

.splide .cta_mainDesc {
  text-align: center;
  margin: 15px 0;
  line-height: 1;
}

.splide .cta_mainDesc > strong {
  color: #ee827c;
}

.splide .cta_main .btn_tel {
  display: grid;
  grid-template-columns: repeat(2, auto);
  grid-template-rows: repeat(2, auto);
  align-items: center;
  justify-content: center;
  gap: 0 10px;
  width: 100%;
  max-width: 355px;
  margin-bottom: 10px;
  padding: 10px 8% 10px 5%;
  position: relative;
  cursor: pointer;
  border: 1px solid #f44f6d;
  border-radius: 50px;
  box-shadow: 1px 6px 4px 0 rgba(0, 0, 0, 0.2);
  background: linear-gradient(to bottom, #fe909c 0%, #ff7785 100%);
  color: #fff;
  padding-left: 3%;
  padding-right: 4%;
}

.splide .cta_main .btn_tel a {
  width: 100%;
  height: 100%;
  position: absolute;
  top: 0;
  left: 0;
}

.splide .cta_main .btn_tel:hover {
  opacity: 0.6;
}

@media (min-width: 768px) {
  .splide .cta_main .btn_tel {
    gap: 0 20px;
  }
}

@media (max-width: 360px) {
  .splide .cta_main .btn_tel {
    gap: 0 5px;
    padding-left: 10px;
    padding-right: 10px;
  }
}

@media (min-width: 768px) {
  .splide .cta_main .btn_tel {
    display: none;
  }
}

.splide .cta_main .btn_tel::before {
  content: "\E0CD";
  display: inline-block;
  font-family: "material icons";
  font-size: 2rem;
  font-weight: normal;
  text-decoration: none;
  width: 2rem;
  grid-column: 1/2;
  grid-row: 1/3;
  width: 1.75rem;
  font-size: 1.75rem;
}

@media (max-width: 360px) {
  .splide .cta_main .btn_tel::before {
    width: 1.75rem;
    font-size: 1.75rem;
  }
}

@media (max-width: 360px) {
  .splide .cta_main .btn_tel::before {
    width: 1.5rem;
    font-size: 1.5rem;
  }
}

.splide .cta_main .btn_tel_free {
  display: block;
  font-size: 1.16rem;
  font-weight: bold;
  line-height: 1;
  margin-bottom: 10px;
  text-shadow: 1px 0px 4px rgba(201, 33, 51, 0.25);
  width: 100%;
  grid-column: 2/3;
  grid-row: 1/2;
  font-size: 1.1875rem;
}

.splide .cta_main .btn_tel_number {
  display: block;
  font-size: 0.875rem;
  font-weight: bold;
  line-height: 1;
  text-shadow: 1px 0px 4px rgba(201, 33, 51, 0.25);
  width: 100%;
  grid-column: 2/3;
  grid-row: 2/3;
}

@media (max-width: 360px) {
  .splide .cta_main .btn_tel_number {
    font-size: 0.8125rem;
  }
}

.splide .cta_main .txt_tel {
  align-items: center;
  color: #df6952;
  display: flex;
  font-size: 2.7rem;
  font-weight: bold;
  margin-bottom: 4px;
  justify-content: center;
}

@media (max-width: 769px) {
  .splide .cta_main .txt_tel {
    display: none;
  }
}

.splide .cta_main .txt_tel::before {
  content: "\E0CD";
  display: inline-flex;
  font-family: "material icons";
  font-size: 2.5rem;
  font-weight: normal;
}

.splide .cta_main .btn_request {
  display: grid;
  grid-template-columns: repeat(2, auto);
  grid-template-rows: repeat(2, auto);
  align-items: center;
  justify-content: center;
  gap: 0 10px;
  width: 100%;
  max-width: 355px;
  margin-bottom: 10px;
  padding: 10px 8% 10px 5%;
  position: relative;
  cursor: pointer;
  border: 1px solid #2ca2ab;
  border-radius: 50px;
  box-shadow: 1px 6px 4px 0 rgba(0, 0, 0, 0.2);
  background: linear-gradient(to bottom, #52d8e3 0%, #3bb4bd 100%);
  color: #fff;
  padding-left: 3%;
  padding-right: 4%;
}

.splide .cta_main .btn_request a {
  width: 100%;
  height: 100%;
  position: absolute;
  top: 0;
  left: 0;
}

.splide .cta_main .btn_request:hover {
  opacity: 0.6;
}

@media (min-width: 768px) {
  .splide .cta_main .btn_request {
    gap: 0 20px;
  }
}

@media (max-width: 360px) {
  .splide .cta_main .btn_request {
    gap: 0 5px;
    padding-left: 10px;
    padding-right: 10px;
  }
}

.splide .cta_main .btn_request::before {
  background: #fff;
  border-radius: 4px;
  content: "\7121\6599";
  color: #ee827c;
  display: inline-block;
  font-size: 1rem;
  font-weight: bold;
  line-height: 1;
  text-align: center;
  text-shadow: none;
  width: 50px;
  padding: 6px;
  grid-column: 1/2;
  grid-row: 1/3;
  width: 40px;
  font-size: 0.875rem;
}

@media (max-width: 360px) {
  .splide .cta_main .btn_request::before {
    width: 40px;
    font-size: 0.875rem;
  }
}

.splide .cta_main .btn_request_easy {
  display: block;
  font-size: 0.875rem;
  font-weight: normal;
  line-height: 1;
  margin-bottom: 3px;
  text-align: center;
  text-shadow: 1px 0px 4px rgba(16, 137, 147, 0.25);
  width: 100%;
  grid-column: 2/3;
  grid-row: 1/2;
}

@media (max-width: 360px) {
  .splide .cta_main .btn_request_easy {
    font-size: 0.8125rem;
  }
}

.splide .cta_main .btn_request_document {
  align-items: center;
  display: flex;
  font-size: 1.25rem;
  font-weight: bold;
  justify-content: center;
  line-height: 1;
  text-align: center;
  text-shadow: 1px 0px 4px rgba(16, 137, 147, 0.25);
  width: 100%;
  grid-column: 2/3;
  grid-row: 2/3;
  font-size: 1.1875rem;
}

.splide .cta_main .btn_request_document::after {
  content: "\E5E1";
  display: inline-block;
  font-family: "material icons";
  font-size: 1.25rem;
  font-weight: normal;
  text-decoration: none;
  margin: 0 0 0 5px;
}

.splide .cta_main .btn_add {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 100%;
  max-width: 600px;
  height: 40px;
  margin: 0 10px 10px;
  border: 1px solid #ddd;
  border-radius: 50px;
  cursor: pointer;
  position: relative;
  background: linear-gradient(180deg, #fff 0%, #efefef 100%);
  color: #574726;
  margin: 15px 0 0;
}

.splide .cta_main .btn_add a {
  width: 100%;
  height: 100%;
  position: absolute;
  top: 0;
  left: 0;
}

.splide .cta_main .btn_add_facility {
  align-items: center;
  display: flex;
  font-size: 1rem;
  font-weight: bold;
  justify-content: center;
  line-height: 1;
  text-align: center;
  width: 100%;
}

.splide .cta_main .btn_add_facility::before {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 20px;
  height: 20px;
  margin-right: 6px;
  border-radius: 50%;
  background: #59bec5;
  content: "\E145";
  color: #fff;
  font-family: "material icons";
  font-weight: bold;
}

.splide .cta_main .btn_remove {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 100%;
  max-width: 600px;
  height: 40px;
  margin: 0 10px 10px;
  border: 1px solid #ddd;
  border-radius: 50px;
  cursor: pointer;
  position: relative;
  background: linear-gradient(180deg, #efefef 0%, #fff 100%);
  color: #ccc;
  margin: 15px 0 0;
}

.splide .cta_main .btn_remove a {
  width: 100%;
  height: 100%;
  position: absolute;
  top: 0;
  left: 0;
}

.splide .cta_main .btn_remove_facility {
  align-items: center;
  display: flex;
  font-size: 1rem;
  font-weight: bold;
  justify-content: center;
  line-height: 1;
  text-align: center;
  width: 100%;
}

.splide .cta_main .btn_remove_facility::before {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 20px;
  height: 20px;
  margin-right: 6px;
  border-radius: 50%;
  background: #ccc;
  content: "\E876";
  color: #fff;
  font-family: "material icons";
  font-weight: bold;
}

.cta_thumb {
  background-color: #62c4cb;
  display: flex;
  align-items: center;
  justify-content: center;
}

.cta_thumb::before {
  content: "\E158";
  font-family: "material icons";
  font-weight: bold;
  color: #fff;
  font-size: 24px;
}

body.form-time .splide .cta_main .btn_tel {
  display: none;
}

body.form-time .splide .cta_main .btn_request {
  border: 1px solid #f44f6d;
  border-radius: 50px;
  box-shadow: 1px 6px 4px 0 rgba(0, 0, 0, 0.2);
  background: linear-gradient(to bottom, #fe909c 0%, #ff7785 100%);
  color: #fff;
}

@-webkit-keyframes bg {
  0% {
    opacity: 0;
  }

  100% {
    background: rgba(0, 0, 0, 0.6);
    opacity: 1;
  }
}

@keyframes bg {
  0% {
    opacity: 0;
  }

  100% {
    background: rgba(0, 0, 0, 0.6);
    opacity: 1;
  }
}

.window_description input[type=checkbox] {
  display: none;
}

.window_description p {
  display: none;
}

.window_description input[name^=description_] + p {
  display: none;
}

@media (max-width: 767px) {
  .window_description input[name^=description_] + p + label dl {
    display: none;
  }
}

.window_description label {
  cursor: pointer;
}

.window_description input[name^=description_]:checked + p {
  display: block;
  line-height: 1;
}

.window_description input[name^=description_]:checked + p + label {
  align-items: center;
  -webkit-animation: bg 0.5s both;
          animation: bg 0.5s both;
  cursor: pointer;
  display: flex;
  flex-wrap: wrap;
  height: 100vh;
  justify-content: center;
  left: 0%;
  position: fixed;
  top: 0%;
  width: 100%;
  z-index: 4;
}

.window_description input[name^=description_]:checked + p + label span {
  display: none;
}

.window_description input[name^=description_]:checked + p + label dl {
  background: #fff;
  border-radius: 5px;
  display: block;
  font-size: 0.875rem;
  font-weight: normal;
  margin: auto;
  position: relative;
  top: -20vh;
  width: 80%;
}

.window_description input[name^=description_]:checked + p + label dl::after {
  background: #fff;
  border: 1px solid #ccc;
  border-radius: 4px;
  color: #ccc;
  content: "\E5CD";
  font-family: "material icons";
  font-size: 1.5rem;
  font-weight: normal;
  height: 24px;
  line-height: 24px;
  position: absolute;
  right: 5px;
  text-align: center;
  top: 5px;
  width: 24px;
}

.window_description input[name^=description_]:checked + p + label dl dt {
  border-bottom: 1px solid #ccc;
  font-weight: bold;
  padding: 10px;
  text-align: center;
}

.window_description input[name^=description_]:checked + p + label dl dd {
  line-height: 1.5;
  padding: 10px;
}

@media (min-width: 768px) {
  .window_description {
    margin-right: 120px;
  }

  .window_description li {
    cursor: pointer;
    position: relative;
  }

  .window_description li label {
    pointer-events: none;
  }

  .window_description li dl {
    display: none;
  }

  .window_description li:hover dl {
    background: #fae3e1;
    border-radius: 5px;
    display: block;
    font-size: 0.875rem;
    font-weight: normal;
    left: 0;
    line-height: 1.5;
    margin: 10px 0 0;
    padding: 10px;
    position: absolute;
    top: 100%;
    width: 220px;
    z-index: 1;
  }

  .window_description li:hover dl::before {
    border: 15px solid transparent;
    border-top: 15px solid #fae3e1;
    content: "";
    left: 15%;
    margin-left: -15px;
    position: absolute;
    top: -24px;
    transform: rotateZ(180deg);
  }

  .window_description li:hover dl dt {
    font-weight: bold;
    margin-bottom: 5px;
  }

  .window_description.list_service li:hover dl {
    background: #fcf3e6;
  }

  .window_description.list_service li:hover dl::before {
    border-top: 15px solid #fcf3e6;
  }
}

.wrap_more {
  padding-bottom: 24px;
  position: relative;
}

.wrap_more_content {
  height: 0;
  overflow: hidden;
}

.wrap_more_label {
  align-items: center;
  bottom: 0;
  color: #59bec5;
  cursor: pointer;
  display: flex;
  font-size: 0.875rem;
  height: 24px;
  justify-content: center;
  position: absolute;
  width: 100%;
  z-index: 2;
}

.wrap_more_label::before {
  content: "\E038";
  font-family: "material icons";
  font-size: 1.5rem;
  margin-right: 8px;
  transform: rotate(0.25turn);
}

.wrap_more_label::after {
  content: "\5FDC\52DF\8981\9805\3092\78BA\8A8D\3059\308B";
}

.wrap_more_label.check_detail::after {
  content: "\3055\3089\306B\8A73\3057\304F\898B\308B";
}

.wrap_more_label.more_detail::after {
  content: "\8A73\3057\304F\898B\308B";
}

.wrap_more_label.check_all {
  border: 1px solid #59bec5;
  border-radius: 0 0 8px 8px;
  height: 40px;
  width: 100%;
}

.wrap_more_label.check_all::after {
  content: "\3059\3079\3066\306E\30D7\30E9\30F3\3092\898B\308B";
}

.wrap_more_label.check_condition {
  bottom: 12px;
}

.wrap_more_label.check_condition::after {
  content: "\3055\3089\306B\8A73\3057\3044\6761\4EF6\3092\9078\3076";
}

.wrap_more_check {
  display: none;
}

.wrap_more .wrap_more_check:checked ~ .wrap_more_label::before {
  content: "\E038";
  font-family: "material icons";
  font-size: 1.5rem;
  margin-right: 8px;
  transform: rotate(0.75turn);
}

.wrap_more .wrap_more_check:checked ~ .wrap_more_label::after {
  content: "\5FDC\52DF\8981\9805\3092\9589\3058\308B";
}

.wrap_more .wrap_more_check:checked ~ .wrap_more_label.check_detail::after {
  content: "\9589\3058\308B";
}

.wrap_more .wrap_more_check:checked ~ .wrap_more_label.more_detail::after {
  content: "\9589\3058\308B";
}

.wrap_more .wrap_more_check:checked ~ .wrap_more_label.check_all::after {
  content: "\9589\3058\308B";
}

.wrap_more .wrap_more_check:checked ~ .wrap_more_label.check_condition::after {
  content: "\8A73\3057\3044\6761\4EF6\3092\9589\3058\308B";
}

.wrap_more .wrap_more_check:checked ~ .wrap_more_content {
  display: block;
  height: auto;
}

.wrap_more.more_condition {
  padding-bottom: 48px;
}

@media (min-width: 768px) {
  .wrap_more_label.check_condition {
    bottom: 24px;
  }

  .wrap_more.more_condition {
    padding-bottom: 72px;
  }
}

@media all and (-ms-high-contrast: none) {
  .wrap_more_label.check_condition {
    bottom: 60px;
  }

  .wrap_more.more_condition {
    padding-bottom: 96px;
  }
}

.nearby_services .wrap_lower_more2, .wrap_lower_more {
  position: relative;
}

.nearby_services .wrap_lower_more2 label, .wrap_lower_more label {
  position: absolute;
  z-index: 1;
  bottom: -20px;
  width: 100%;
  height: 50px;
  cursor: pointer;
  text-align: center;
  background: linear-gradient(to bottom, rgba(255, 255, 255, 0) 0%, #fff 60%);
  justify-content: flex-end;
  display: flex;
  padding-top: 20px;
}

.nearby_services .wrap_lower_more2 input, .wrap_lower_more input {
  display: none;
}

.nearby_services .wrap_lower_more2 input:checked + label, .wrap_lower_more input:checked + label {
  background: inherit;
}

.nearby_services .wrap_lower_more2 input:checked ~ .wrap_more_content, .wrap_lower_more input:checked ~ .wrap_more_content {
  height: auto;
  padding-bottom: 20px;
  transition: all 0.5s;
}

.nearby_services .wrap_lower_more2 .wrap_more_content, .wrap_lower_more .wrap_more_content {
  overflow: hidden;
  height: 40px;
  transition: all 0.5s;
}

.nearby_services .wrap_lower_more2 .wrap_more_check:checked ~ label::before, .wrap_lower_more .wrap_more_check:checked ~ label::before {
  content: "\E038";
  font-family: "material icons";
  font-size: 1.5rem;
  margin-right: 8px;
  transform: rotate(0.75turn);
}

.nearby_services .wrap_lower_more2 .wrap_more_check:checked ~ label.more_detail::after, .wrap_lower_more .wrap_more_check:checked ~ label.more_detail::after {
  content: "\9589\3058\308B";
}

.nearby_services .wrap_lower_more2 label {
  position: relative;
  bottom: initial;
  padding-top: 0;
  height: auto;
}

.nearby_services .wrap_lower_more2 label.sp_hidden {
  display: none;
}

@media (min-width: 768px) {
  .nearby_services .wrap_lower_more2 label.pc_hidden {
    display: none;
  }
}

.nearby_services .wrap_lower_more2 input:checked ~ .wrap_more_content {
  height: auto;
  padding-bottom: 0;
}

@media (max-width: 767px) {
  .nearby_services .wrap_lower_more2 input:checked ~ .wrap_more_content ul li:nth-child(n+4) {
    display: block;
  }
}

@media (min-width: 768px) {
  .nearby_services .wrap_lower_more2 input:checked ~ .wrap_more_content ul li:nth-child(n+10) {
    display: block;
  }
}

.nearby_services .wrap_lower_more2 .wrap_more_content {
  overflow: visible;
  height: auto;
}

@media (max-width: 767px) {
  .nearby_services .wrap_lower_more2 .wrap_more_content ul li:nth-child(n+4) {
    display: none;
  }
}

@media (min-width: 768px) {
  .nearby_services .wrap_lower_more2 .wrap_more_content ul li:nth-child(n+10) {
    display: none;
  }
}

.nearby_services ul {
  display: flex;
  flex-wrap: wrap;
  align-items: flex-start;
  gap: 10px 10px;
  margin: 10px 0;
}

@media (min-width: 768px) {
  .nearby_services ul {
    gap: 20px 10px;
    margin: 20px 0;
  }
}

.nearby_services ul > li {
  width: 100%;
  line-height: 1.2;
}

@media (min-width: 768px) {
  .nearby_services ul > li {
    width: calc(33.3% - 10px);
  }
}

.nearby_services ul > li h4 {
  margin: 0 0 0.2em 0;
}

@media (min-width: 768px) {
  .nearby_services ul > li h4 {
    margin: 0 0 0.5em 0;
  }
}

.nearby_services ul > li .adddress {
  position: relative;
  display: flex;
  align-items: flex-start;
  font-size: 0.85em;
}

@media (min-width: 768px) {
  .nearby_services ul > li .adddress {
    font-size: 1em;
  }
}

.nearby_services ul > li .adddress::before {
  color: #ee827c;
  content: "\E0C8";
  display: block;
  font-family: "material icons";
  font-size: 1.4em;
  font-weight: normal;
  margin-top: -0.2em;
}

.area_support_center h4 {
  position: relative;
  padding-left: 1em;
  font-size: 15px;
}

.area_support_center h4::before {
  content: "";
  display: inline-block;
  width: 8px;
  height: 8px;
  background-color: #ee817d;
  position: absolute;
  top: 50%;
  left: 0;
  transform: translateY(-50%);
}

.area_support_center .nearby_services ul {
  display: flex;
  flex-wrap: wrap;
  align-items: flex-start;
  gap: 10px 10px;
  margin: 10px 0;
}

@media (min-width: 768px) {
  .area_support_center .nearby_services ul {
    gap: 20px 10px;
    margin: 20px 0;
  }
}

.area_support_center .nearby_services ul > li {
  width: 100%;
  line-height: 1.2;
}

@media (min-width: 768px) {
  .area_support_center .nearby_services ul > li {
    width: calc(33.3% - 10px);
  }
}

.area_support_center .nearby_services ul > li h5 {
  font-size: 1em;
  margin: 0 0 0.2em 0;
}

@media (min-width: 768px) {
  .area_support_center .nearby_services ul > li h5 {
    margin: 0 0 0.5em 0;
  }
}

.area_support_center .nearby_services ul > li .adddress {
  position: relative;
  display: flex;
  align-items: flex-start;
  font-size: 0.85em;
}

@media (min-width: 768px) {
  .area_support_center .nearby_services ul > li .adddress {
    font-size: 1em;
  }
}

.area_support_center .nearby_services ul > li .adddress::before {
  color: #ee827c;
  content: "\E0C8";
  display: block;
  font-family: "material icons";
  font-size: 1.4em;
  font-weight: normal;
  margin-top: -0.2em;
}

.blk_more_check {
  display: none;
}

.blk_more_label {
  align-items: center;
  display: flex;
  height: 40px;
  justify-content: space-between;
  position: relative;
}

.blk_more_label::after {
  content: "\E5CF";
  font-family: "material icons";
  font-size: 1.5rem;
  position: absolute;
  right: 10px;
}

.blk_more .blk_more_check:checked ~ h4 {
  margin: 0;
}

.blk_more .blk_more_check:checked ~ h4 .blk_more_label::after {
  content: "\E5CE";
  font-family: "material icons";
  font-size: 1.5rem;
  position: absolute;
  right: 10px;
}

.blk_more .blk_more_check:checked ~ .list_link {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  height: 160px;
  margin: 0 0 24px;
}

.blk_more .list_link {
  font-size: 0.875rem;
  height: 0;
  line-height: 1.5;
  transition: 0.2s;
}

@media (min-width: 768px) {
  .blk_more_label {
    height: auto;
  }

  .blk_more_label::after {
    display: none;
  }

  .blk_more .list_link {
    font-size: 1rem;
  }

  .blk_more .blk_more_check:checked ~ h4 {
    margin-bottom: 10px;
    padding: 0 0 10px;
  }

  .blk_more .blk_more_check:checked ~ h4 .blk_more_label::after {
    display: none;
  }

  .blk_more .blk_more_check:checked ~ .list_link {
    display: flex;
    display: block;
    height: 0;
    margin: 0 auto 72px;
  }
}

.floating_cv {
  background: rgba(255, 255, 255, 0.8);
  border: 1px solid #ccc;
  bottom: 0;
  display: none;
  margin-bottom: env(safe-area-inset-bottom);
  position: fixed;
  width: 100%;
  z-index: 200;
  padding: 5px 10px 2px;
}

.floating_cv.show {
  align-items: center;
  display: flex;
  flex-wrap: nowrap;
  justify-content: space-between;
  gap: 2%;
}

.floating_cv .btn_tel {
  display: grid;
  grid-template-columns: repeat(2, auto);
  grid-template-rows: repeat(2, auto);
  align-items: center;
  justify-content: center;
  gap: 0 10px;
  width: 100%;
  max-width: 355px;
  margin-bottom: 10px;
  padding: 10px 8% 10px 5%;
  position: relative;
  cursor: pointer;
  border: 1px solid #f44f6d;
  border-radius: 50px;
  box-shadow: 1px 6px 4px 0 rgba(0, 0, 0, 0.2);
  background: linear-gradient(to bottom, #fe909c 0%, #ff7785 100%);
  color: #fff;
  margin-bottom: 4px;
  padding: 6px 10px 4px;
  box-shadow: 1px 5px 3px 0 rgba(0, 0, 0, 0.2);
}

.floating_cv .btn_tel a {
  width: 100%;
  height: 100%;
  position: absolute;
  top: 0;
  left: 0;
}

.floating_cv .btn_tel:hover {
  opacity: 0.6;
}

@media (min-width: 768px) {
  .floating_cv .btn_tel {
    gap: 0 20px;
  }
}

@media (max-width: 360px) {
  .floating_cv .btn_tel {
    gap: 0 5px;
    padding-left: 10px;
    padding-right: 10px;
  }
}

.floating_cv .btn_tel_lead {
  display: block;
  font-size: 0.875rem;
  font-weight: bold;
  line-height: 1;
  text-shadow: 1px 0px 4px rgba(201, 33, 51, 0.25);
  width: 100%;
  grid-column: 2/3;
  grid-row: 2/3;
  font-size: 0.625rem;
  margin: 0 0 2px;
  font-weight: normal;
  grid-row: 1/2;
}

@media (max-width: 360px) {
  .floating_cv .btn_tel_lead {
    font-size: 0.8125rem;
  }
}

.floating_cv .btn_tel_free {
  display: block;
  font-size: 1.16rem;
  font-weight: bold;
  line-height: 1;
  margin-bottom: 10px;
  text-shadow: 1px 0px 4px rgba(201, 33, 51, 0.25);
  width: 100%;
  grid-column: 2/3;
  grid-row: 1/2;
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 0.9375rem;
  margin: 0;
  grid-row: 2/3;
}

.floating_cv .btn_tel_free::before {
  content: "\E0CD";
  display: inline-block;
  font-family: "material icons";
  font-size: 2rem;
  font-weight: normal;
  text-decoration: none;
  width: 2rem;
  grid-column: 1/2;
  grid-row: 1/3;
  font-size: 1rem;
  margin-right: 4px;
  width: 1rem;
}

@media (max-width: 360px) {
  .floating_cv .btn_tel_free::before {
    width: 1.75rem;
    font-size: 1.75rem;
  }
}

.floating_cv .wrap_tel {
  display: none;
}

.floating_cv .btn_request {
  display: grid;
  grid-template-columns: repeat(2, auto);
  grid-template-rows: repeat(2, auto);
  align-items: center;
  justify-content: center;
  gap: 0 10px;
  width: 100%;
  max-width: 355px;
  margin-bottom: 10px;
  padding: 10px 8% 10px 5%;
  position: relative;
  cursor: pointer;
  border: 1px solid #2ca2ab;
  border-radius: 50px;
  box-shadow: 1px 6px 4px 0 rgba(0, 0, 0, 0.2);
  background: linear-gradient(to bottom, #52d8e3 0%, #3bb4bd 100%);
  color: #fff;
  margin-bottom: 4px;
  padding: 6px 10px 4px;
  box-shadow: 1px 5px 3px 0 rgba(0, 0, 0, 0.2);
}

.floating_cv .btn_request a {
  width: 100%;
  height: 100%;
  position: absolute;
  top: 0;
  left: 0;
}

.floating_cv .btn_request:hover {
  opacity: 0.6;
}

@media (min-width: 768px) {
  .floating_cv .btn_request {
    gap: 0 20px;
  }
}

@media (max-width: 360px) {
  .floating_cv .btn_request {
    gap: 0 5px;
    padding-left: 10px;
    padding-right: 10px;
  }
}

.floating_cv .btn_request_easy {
  display: block;
  font-size: 0.875rem;
  font-weight: normal;
  line-height: 1;
  margin-bottom: 3px;
  text-align: center;
  text-shadow: 1px 0px 4px rgba(16, 137, 147, 0.25);
  width: 100%;
  grid-column: 2/3;
  grid-row: 1/2;
  display: flex;
  font-size: 0.625rem;
  justify-content: center;
  align-items: center;
  margin: 0 0 3px;
  padding: 0;
  font-weight: normal;
}

@media (max-width: 360px) {
  .floating_cv .btn_request_easy {
    font-size: 0.8125rem;
  }
}

.floating_cv .btn_request_easy::before {
  border-left: 1px solid #fff;
  content: "";
  display: block;
  height: 10px;
  margin-right: 8px;
  transform: rotate(-24deg);
}

.floating_cv .btn_request_easy::after {
  border-left: 1px solid #fff;
  content: "";
  display: block;
  height: 10px;
  margin-left: 8px;
  transform: rotate(24deg);
}

.floating_cv .btn_request_document {
  align-items: center;
  display: flex;
  font-size: 1.25rem;
  font-weight: bold;
  justify-content: center;
  line-height: 1;
  text-align: center;
  text-shadow: 1px 0px 4px rgba(16, 137, 147, 0.25);
  width: 100%;
  grid-column: 2/3;
  grid-row: 2/3;
  font-size: 0.9375rem;
  padding: 0;
}

.floating_cv .btn_request--top {
  padding: 12px 10px 12px !important;
  display: flex;
  justify-content: center;
  align-items: center;
  line-height: 1.5em;
  margin: auto !important;
  border: 1px solid #f44f6d;
  border-radius: 50px;
  box-shadow: 1px 6px 4px 0 rgba(0, 0, 0, 0.2);
  background: linear-gradient(to bottom, #fe909c 0%, #ff7785 100%);
  color: #fff;
}

.floating_cv .btn_request--top .btn_request_document {
  margin: 0;
  text-shadow: 1px 0px 4px rgba(201, 33, 51, 0.25);
}

.floating_cv .btn_request--top::before {
  content: none !important;
}

.floating_cv .btn_call {
  align-items: center;
  background: linear-gradient(180deg, #fe909c 0%, #ff7785 100%);
  border: 1px solid #f44f6d;
  border-radius: 5px;
  box-shadow: 0px 2px 4px rgba(0, 0, 0, 0.16);
  color: #fff;
  display: flex;
  flex-wrap: wrap;
  height: 42px;
  justify-content: center;
  margin: auto;
  position: relative;
  width: 86%;
}

.floating_cv .btn_call_lead {
  display: flex;
  font-size: 0.625rem;
  justify-content: center;
  line-height: 1;
  margin: 4px 0 2px;
  text-shadow: 1px 0px 4px rgba(201, 33, 51, 0.25);
  width: 100%;
}

.floating_cv .btn_call_free {
  align-items: center;
  display: flex;
  font-size: 0.9375rem;
  font-weight: bold;
  justify-content: center;
  line-height: 1;
  margin: 0 0 2px;
  text-shadow: 1px 0px 4px rgba(201, 33, 51, 0.25);
  width: 100%;
}

.floating_cv .btn_call_free::before {
  content: "\E0CD";
  display: inline-block;
  font-family: "material icons";
  font-size: 1rem;
  font-weight: normal;
  margin-right: 4px;
}

.floating_cv .btn_call a {
  height: 100%;
  position: absolute;
  width: 100%;
}

@media (min-width: 768px) {
  .floating_cv {
    background: rgba(255, 255, 255, 0.8);
    height: 60px;
    margin: auto;
    width: 100%;
    z-index: 3;
  }

  .floating_cv.show {
    justify-content: center;
  }

  .floating_cv .btn_tel {
    display: none;
  }

  .floating_cv .btn_call {
    display: none;
  }

  .floating_cv .wrap_tel {
    align-items: center;
    display: flex;
  }

  .floating_cv .wrap_tel .txt_tel {
    align-items: center;
    color: #df6952;
    display: flex;
    font-size: 1.875rem;
    font-weight: bold;
    margin: 0 40px 0 10px;
  }

  .floating_cv .wrap_tel .txt_tel::before {
    content: "\E0CD";
    display: inline-flex;
    font-family: "material icons";
    font-size: 1.75rem;
    font-weight: normal;
  }

  .floating_cv .wrap_tel .txt_tel a {
    pointer-events: none;
  }

  .floating_cv .btn_request {
    max-width: 400px;
    padding-top: 4px;
    padding-bottom: 2px;
  }

  .floating_cv .btn_request::before {
    background: #fff;
    border-radius: 4px;
    content: "\7121\6599";
    color: #ee827c;
    display: inline-block;
    font-size: 1rem;
    font-weight: bold;
    line-height: 1;
    text-align: center;
    text-shadow: none;
    width: 50px;
    padding: 6px;
    grid-column: 1/2;
    grid-row: 1/3;
  }
}

@media (min-width: 768px) and (max-width: 360px) {
  .floating_cv .btn_request::before {
    width: 40px;
    font-size: 0.875rem;
  }
}

@media (min-width: 768px) {
  .floating_cv .btn_request_easy {
    font-size: 0.875rem;
    margin: 0 0 2px;
  }

  .floating_cv .btn_request_easy::before {
    height: 14px;
    margin-right: 10px;
  }

  .floating_cv .btn_request_easy::after {
    height: 14px;
    margin-right: 10px;
  }
}

@media (min-width: 768px) {
  .floating_cv .btn_request_document {
    font-size: 1.25rem;
  }
}

@media (min-width: 768px) and (max-width: 1023.98px) {
  .floating_cv .wrap_tel .txt_tel {
    margin: 0 10px;
    white-space: nowrap;
  }
}

@media (max-width: 360px) {
  .floating_cv {
    padding-left: 5px;
    padding-right: 5px;
  }

  .floating_cv .btn_tel {
    padding-left: 8px;
    padding-right: 8px;
  }

  .floating_cv .btn_tel_free {
    margin-left: 0;
  }

  .floating_cv .btn_tel_free::before {
    width: 0.875rem;
    font-size: 0.875rem;
    margin-right: 2px;
  }

  .floating_cv .btn_tel_lead {
    margin-left: 0;
  }

  .floating_cv .btn_request {
    padding-left: 8px;
    padding-right: 8px;
  }

  .floating_cv .btn_request_easy {
    margin-left: 0;
  }

  .floating_cv .btn_request_easy::before {
    height: 8px;
    margin-right: 4px;
  }

  .floating_cv .btn_request_easy::after {
    height: 8px;
    margin-left: 4px;
  }

  .floating_cv .btn_request_document {
    margin-left: 0;
  }
}

/* ページTOPに戻る */

#page_top {
  background: rgba(0, 0, 0, 0.4);
  border-radius: 4px;
  bottom: 80px;
  cursor: pointer;
  height: 40px;
  line-height: 40px;
  margin-bottom: env(safe-area-inset-bottom);
  opacity: 0;
  position: fixed;
  right: 4px;
  text-align: center;
  width: 40px;
  z-index: 9999;
}

#page_top.show {
  opacity: 1;
  transform: none;
}

#page_top a {
  display: block;
  height: 40px;
  position: relative;
  text-decoration: none;
  width: 40px;
}

#page_top a::before {
  color: #fff;
  content: "\E5C7";
  display: block;
  font-family: "material icons";
  font-size: 2.5rem;
  font-weight: normal;
  position: absolute;
  right: 0;
  top: 0;
}

@media (min-width: 768px) {
  #page_top {
    bottom: 64px;
    right: 14px;
  }
}

@media (max-width: 767px) {
  .main_detail #floating_footer ~ #page_top {
    bottom: 120px;
  }
}

@keyframes bg {
  0% {
    opacity: 0;
  }

  100% {
    background: rgba(0, 0, 0, 0.6);
    opacity: 1;
  }
}

.window_info .btn_info {
  align-items: center;
  color: #ee827c;
  cursor: pointer;
  display: flex;
  font-size: 0.8125rem;
  position: absolute;
  right: 10px;
  top: 20px;
}

.window_info .btn_info span {
  text-decoration: underline;
}

.window_info .btn_info::before {
  content: "\E88E";
  display: inline-flex;
  font-family: "Material Icons Outlined";
  font-size: 1rem;
  margin-right: 4px;
  text-decoration: none;
}

.window_info_inner {
  align-items: center;
  -webkit-animation: bg 0.5s both;
          animation: bg 0.5s both;
  display: flex;
  font-size: 0.875rem;
  font-weight: normal;
  height: 100%;
  justify-content: center;
  left: 0;
  position: fixed;
  top: 0;
  width: 100%;
  z-index: 1;
}

.window_info_inner .box_facility {
  background: #fff;
  border-radius: 4px;
  max-width: 640px;
  position: relative;
  width: calc(100% - 20px);
  z-index: 2;
}

.window_info_inner .box_facility_tag {
  background: #fcf3e6;
  border-radius: 4px;
  color: #574726;
  display: inline-block;
  font-size: 0.75rem;
  font-weight: bold;
  line-height: 1.5;
  margin: 0 10px 18px;
  padding: 3px 7px;
  text-decoration: none;
}

.window_info_inner .img_facility {
  height: auto;
  margin: 0 10px 10px;
  width: calc(100% - 20px);
}

.window_info_inner .txt_address {
  font-size: 1rem;
  font-weight: bold;
  margin: 0 10px 18px;
}

.window_info_inner .list_access {
  font-size: 0.875rem;
  line-height: 1.5;
  margin-bottom: 24px;
}

.window_info_inner .list_access li {
  display: block;
  margin: 0 10px 18px;
  padding: 0;
}

.window_info_inner .list_access li::before {
  content: "\25A0";
  display: inline-block;
}

.window_info_inner .txt_close {
  background: #fff;
  border: 1px solid #ccc;
  border-radius: 4px;
  color: #888;
  cursor: pointer;
  display: block;
  height: 40px;
  line-height: 40px;
  margin: 0 auto 20px;
  text-align: center;
  width: 43%;
}

.window_info_inner .bg_box {
  background: rgba(0, 0, 0, 0.6);
  height: 100%;
  left: 0;
  position: fixed;
  top: 0;
  width: 100%;
  z-index: 1;
}

.section_facility .list_facility li h3.inner_window {
  align-items: center;
  border-bottom: 1px solid #ccc;
  border-left: none;
  display: flex;
  height: 64px;
  justify-content: center;
  margin-bottom: 10px;
  padding: 0 50px 0 0;
  text-align: center;
}

@media (min-width: 768px) {
  .window_info .btn_info {
    right: 8%;
  }

  .window_info_inner .box_facility_tag {
    margin: 0 20px 18px;
  }

  .window_info_inner .img_facility {
    margin: 0 20px 20px;
    width: calc(100% - 40px);
  }

  .window_info_inner .txt_address {
    margin: 0 20px 18px;
  }

  .window_info_inner .list_access li {
    margin: 0 20px 18px;
  }
}

@keyframes bg {
  0% {
    opacity: 0;
  }

  100% {
    background: rgba(0, 0, 0, 0.6);
    opacity: 1;
  }
}

.window_condition_inner {
  align-items: center;
  -webkit-animation: bg 0.5s both;
          animation: bg 0.5s both;
  display: flex;
  font-size: 0.875rem;
  font-weight: normal;
  height: 100%;
  justify-content: center;
  left: 0;
  position: fixed;
  top: 0;
  width: 100%;
  z-index: 9999;
}

.window_condition_inner .section_condition {
  background: #fff;
  border-radius: 4px;
  height: 84vh;
  left: 50%;
  max-width: 640px;
  margin: 0;
  overflow: hidden;
  position: absolute;
  top: 50%;
  transform: translate(-50%, -50%);
  width: calc(100% - 40px);
  z-index: 2;
}

.window_condition_inner .section_condition--line {
  overflow: auto;
}

.window_condition_inner .section_condition h3 {
  border-bottom: 1px solid #ccc;
  border-left: none;
  font-size: 1rem;
  height: 64px;
  line-height: 64px;
  margin: 0;
  padding: 0;
  text-align: center;
}

.window_condition_inner .section_condition h4 {
  background: #efefef;
  font-size: 1rem;
  height: 32px;
  line-height: 32px;
  margin: 0;
  padding-left: 10px;
  position: relative;
  z-index: 1;
}

.window_condition_inner .section_condition h4 span {
  display: none;
}

.window_condition_inner .section_condition h4.mb_18 {
  margin-bottom: 18px;
}

.window_condition_inner .section_condition .txt_cost {
  font-weight: bold;
  margin-bottom: 10px;
  width: 100%;
}

.window_condition_inner .section_condition .ttl_sub {
  background: #fff;
  font-weight: bold;
  padding: 10px 0 0 10px;
  position: relative;
  width: 100%;
  z-index: 1;
}

.window_condition_inner .section_condition .blk_select {
  align-items: center;
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  padding: 0 10px 18px;
}

.window_condition_inner .section_condition .blk_select .box_select {
  align-items: center;
  display: flex;
  position: relative;
  width: 44%;
}

.window_condition_inner .section_condition .blk_select .box_select::after {
  content: "\E5CF";
  font-family: "material icons";
  font-size: 1.5rem;
  font-weight: normal;
  position: absolute;
  right: 10px;
  z-index: -1;
}

.window_condition_inner .section_condition .blk_select .box_select select {
  align-items: center;
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
  background: transparent;
  border: 1px solid #ccc;
  border-radius: 4px;
  color: #574726;
  display: flex;
  height: 48px;
  line-height: 1;
  padding-left: 10px;
  width: 100%;
}

.window_condition_inner .section_condition .blk_select .box_select select::-ms-expand {
  display: none;
}

.window_condition_inner .section_condition .blk_select .txt_connect {
  font-size: 1rem;
}

.window_condition_inner .section_condition .list_condition li {
  align-items: center;
  border-bottom: 1px solid #ccc;
  display: flex;
  flex-wrap: nowrap;
  font-weight: bold;
  height: 48px;
  width: 100%;
}

.window_condition_inner .section_condition .list_condition li:last-child {
  border: none;
}

.window_condition_inner .section_condition .list_condition li label {
  align-items: center;
  display: flex;
  height: 100%;
  padding-left: 48px;
  position: relative;
  width: 100%;
}

.window_condition_inner .section_condition .list_condition li label span {
  font-size: 0.75rem;
  font-weight: normal;
  max-width: 80%;
  padding-left: 5px;
}

.window_condition_inner .section_condition .list_condition li input[type=checkbox] {
  display: none;
}

.window_condition_inner .section_condition .list_condition li input[type=checkbox] + label::before {
  background: #fff;
  border: 2px solid #ccc;
  border-radius: 4px;
  content: "";
  display: inline-flex;
  height: 24px;
  left: 12px;
  position: absolute;
  top: 12px;
  width: 24px;
}

.window_condition_inner .section_condition .list_condition li input[type=checkbox] + label::after {
  border-bottom: 2px solid #ccc;
  border-right: 2px solid #ccc;
  content: "";
  display: inline-flex;
  height: 14px;
  left: 20px;
  position: absolute;
  top: 15px;
  transform: rotate(45deg);
  width: 8px;
}

.window_condition_inner .section_condition .list_condition li input[type=checkbox]:checked + label {
  background: #fcf3e6;
}

.window_condition_inner .section_condition .list_condition li input[type=checkbox]:checked + label::before {
  background: #59bec5;
  border: 2px solid #59bec5;
  border-radius: 4px;
  content: "";
  display: inline-flex;
  height: 24px;
  left: 12px;
  position: absolute;
  top: 12px;
  width: 24px;
}

.window_condition_inner .section_condition .list_condition li input[type=checkbox]:checked + label::after {
  border-bottom: 3px solid #fff;
  border-right: 3px solid #fff;
  content: "";
  display: inline-flex;
  height: 16px;
  left: 19px;
  position: absolute;
  top: 14px;
  transform: rotate(45deg);
  width: 10px;
}

.window_condition_inner .section_condition .box_search {
  background: #fff;
  border-radius: 0 0 4px 4px;
  border-top: 1px solid #ccc;
  bottom: 0;
  display: flex;
  height: 56px;
  position: fixed;
  width: 100%;
  z-index: 2;
}

.window_condition_inner .section_condition .box_search-text {
  width: 30%;
  margin: 10px 0 0 10px;
}

.window_condition_inner .section_condition .box_search-result {
  font-weight: bold;
  font-size: 1.5em;
}

.window_condition_inner .section_condition .box_search .btn_search {
  align-items: center;
  background: linear-gradient(180deg, #62c4cb 0%, #3bb4bd 100%);
  border: 1px solid #2ca2ab;
  border-radius: 5px;
  box-shadow: 0px 2px 4px rgba(0, 0, 0, 0.16);
  color: #fff;
  display: flex;
  flex-wrap: wrap;
  font-size: 0.9375rem;
  height: 40px;
  justify-content: center;
  margin: 8px auto 0 0;
  text-shadow: 1px 0px 4px rgba(16, 137, 147, 0.25);
  width: 40%;
}

.window_condition_inner .scroll-inr {
  height: 84vh;
  overflow-y: scroll;
  padding-bottom: 150px;
  position: relative;
}

@media (min-width: 768px) {
  .window_condition_inner {
    font-size: 1rem;
  }

  .window_condition_inner .section_condition {
    height: 60vh;
    max-width: 740px;
    width: 100%;
  }

  .window_condition_inner .section_condition h3 {
    font-size: 1.125rem;
  }

  .window_condition_inner .section_condition h4 {
    font-size: 1.0625rem;
    height: 40px;
    line-height: 40px;
    padding-left: 20px;
  }

  .window_condition_inner .section_condition h4 span {
    display: inline-block;
    font-size: 0.75rem;
    font-weight: normal;
    margin-left: 30px;
  }

  .window_condition_inner .section_condition .blk_select {
    display: inline-flex;
    margin: 0;
    padding: 0 0 18px 20px;
    width: 46%;
  }

  .window_condition_inner .section_condition .blk_select .box_select::after {
    font-size: 1.75rem;
  }

  .window_condition_inner .section_condition .blk_select .box_select select {
    padding-left: 15px;
  }

  .window_condition_inner .section_condition .ttl_sub {
    padding: 10px 0 0 20px;
  }

  .window_condition_inner .section_condition .list_condition {
    border-bottom: 1px solid #fff;
    display: flex;
    flex-wrap: wrap;
    margin-bottom: -2px;
  }

  .window_condition_inner .section_condition .list_condition li {
    height: 56px;
    width: calc(100% / 3);
  }

  .window_condition_inner .section_condition .list_condition li label {
    padding-left: 64px;
  }

  .window_condition_inner .section_condition .list_condition li label span {
    bottom: 4px;
    left: 64px;
    padding: 0;
    position: absolute;
    white-space: nowrap;
  }

  .window_condition_inner .section_condition .list_condition li input[type=checkbox] + label::before {
    left: 20px;
    top: 16px;
  }

  .window_condition_inner .section_condition .list_condition li input[type=checkbox] + label::after {
    left: 28px;
    top: 19px;
  }

  .window_condition_inner .section_condition .list_condition li input[type=checkbox]:checked + label::before {
    left: 20px;
    top: 16px;
  }

  .window_condition_inner .section_condition .list_condition li input[type=checkbox]:checked + label::after {
    left: 27px;
    top: 18px;
  }

  .window_condition_inner .section_condition .box_search {
    height: 72px;
    max-width: 842px;
  }

  .window_condition_inner .section_condition .box_search .btn_search {
    font-size: 1rem;
    justify-content: center;
    margin: 16px auto 0 0;
    position: static;
    width: 355px;
  }

  .window_condition_inner .scroll-inr {
    height: 60vh;
  }
}

@media (min-width: 1024px) {
  .window_condition .section_condition {
    max-width: 842px;
  }
}

.btn_close {
  background: #fff;
  border: 1px solid #ccc;
  border-radius: 4px;
  color: #888;
  cursor: pointer;
  display: block;
  font-family: "material icons";
  font-size: 1.5rem;
  font-weight: normal;
  height: 40px;
  line-height: 40px !important;
  padding: 0;
  position: absolute;
  right: 10px;
  text-align: center;
  top: 12px;
  width: 40px;
  z-index: 9999;
}

.btn_close--plain {
  background: none;
  border: none;
  border-radius: 0;
  height: auto;
  line-height: 1 !important;
  right: 15px;
  top: 10px;
  width: auto;
}

body.form-time .floating_cv .btn_tel {
  border: 1px solid #2ca2ab;
  border-radius: 50px;
  box-shadow: 1px 6px 4px 0 rgba(0, 0, 0, 0.2);
  background: linear-gradient(to bottom, #52d8e3 0%, #3bb4bd 100%);
  color: #fff;
}

body.form-time .floating_cv .btn_request {
  border: 1px solid #f44f6d;
  border-radius: 50px;
  box-shadow: 1px 6px 4px 0 rgba(0, 0, 0, 0.2);
  background: linear-gradient(to bottom, #fe909c 0%, #ff7785 100%);
  color: #fff;
}

@media (min-width: 768px) {
  body.form-time .floating_cv .wrap_tel .txt_tel {
    color: #444;
    font-weight: normal;
    font-size: 1.5rem;
  }
}

.breadcrumb_upper {
  display: none;
}

@media (min-width: 768px) {
  .breadcrumb_upper {
    background: #f5f5f5;
    border-bottom: 1px solid #e6e6e6;
    display: block;
    height: 34px;
    width: 100%;
  }

  .breadcrumb_upper .list_breadcrumb {
    display: flex;
    font-size: 0.8125rem;
    height: 36px;
    margin: 0 auto;
    max-width: 1024px;
  }

  .breadcrumb_upper .list_breadcrumb li {
    height: 36px;
    line-height: 36px;
  }

  .breadcrumb_upper .list_breadcrumb li:last-child {
    padding-left: 10px;
  }

  .breadcrumb_upper .list_breadcrumb li a {
    color: #574726;
    display: block;
    height: 36px;
    padding: 0 10px;
    position: relative;
    text-decoration: none;
  }

  .breadcrumb_upper .list_breadcrumb li a::before {
    border-top: 1px solid #e6e6e6;
    content: "";
    display: inline-flex;
    height: 18px;
    position: absolute;
    right: 0;
    transform: rotate(60deg);
    top: 5px;
    width: 18px;
  }

  .breadcrumb_upper .list_breadcrumb li a::after {
    border-right: 1px solid #e6e6e6;
    bottom: 5px;
    content: "";
    display: inline-flex;
    height: 18px;
    position: absolute;
    right: 0;
    transform: rotate(30deg);
    width: 18px;
  }
}

.breadcrumb_lower {
  background: #f5f5f5;
  border-bottom: 1px solid #e6e6e6;
  display: block;
  height: 34px;
  margin-bottom: 24px;
  width: 100%;
}

.breadcrumb_lower .list_breadcrumb {
  display: flex;
  flex-wrap: nowrap;
  font-size: 0.8125rem;
  height: 36px;
  margin: 0 auto;
  max-width: 1024px;
  overflow-x: auto;
}

.breadcrumb_lower .list_breadcrumb li {
  height: 36px;
  line-height: 36px;
  white-space: nowrap;
}

.breadcrumb_lower .list_breadcrumb li:last-child {
  padding-left: 10px;
}

.breadcrumb_lower .list_breadcrumb li a {
  color: #574726;
  display: block;
  height: 36px;
  padding: 0 10px;
  position: relative;
  text-decoration: none;
}

.breadcrumb_lower .list_breadcrumb li a::before {
  border-top: 1px solid #e6e6e6;
  content: "";
  display: inline-flex;
  height: 18px;
  position: absolute;
  right: 0;
  transform: rotate(60deg);
  top: 5px;
  width: 18px;
}

.breadcrumb_lower .list_breadcrumb li a::after {
  border-right: 1px solid #e6e6e6;
  bottom: 5px;
  content: "";
  display: inline-flex;
  height: 18px;
  position: absolute;
  right: 0;
  transform: rotate(30deg);
  width: 18px;
}

.wrap_lower {
  margin: 0 auto 36px;
  width: calc(100% - 20px);
}

.detail-lower-content {
  content-visibility: auto;
  contain-intrinsic-size: 1px 5000px;
}

.wrap_lower .blk_search {
  margin-bottom: 24px;
}

.wrap_lower .blk_search .list_search li {
  display: inline-block;
  line-height: 1.5;
}

.wrap_lower .blk_search .list_search li::after {
  content: "|";
}

.wrap_lower .blk_search .list_search li:last-child::after {
  content: "";
}

.wrap_lower .blk_search .list_search li a {
  color: #0044CC;
}

.wrap_lower h2 {
  border-bottom: 1px solid #ee827c;
  font-size: 18px;
  font-weight: bold;
  line-height: 1.5;
  margin: 0 0 20px;
  padding-bottom: 4px;
}

.wrap_lower h3 {
  border-left: 4px solid #ee827c;
  font-size: 16px;
  font-weight: bold;
  line-height: 1.5;
  margin: 10px 0 10px;
  padding-left: 10px;
}

.wrap_lower h4 {
  font-size: 1rem;
}

@media (min-width: 1025px) {
  .wrap_lower {
    font-size: 0.875rem;
    max-width: 1024px;
    width: 100%;
  }
}

@media (min-width: 768px) and (max-width: 1024px) {
  .wrap_lower {
    margin: 0 10px;
    width: calc(100% - 20px);
  }
}

.nav_group h4 {
  border-bottom: 1px solid #f5f5f5;
  margin: 0 0 24px 0;
  padding-left: 10px;
}

.nav_group .list_link {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  width: 100%;
}

.nav_group .list_link li {
  border-bottom: 1px solid #f5f5f5;
  border-right: 1px solid #f5f5f5;
  height: 40px;
  position: relative;
  width: 50%;
}

.nav_group .list_link li a {
  align-items: center;
  color: #574726;
  display: flex;
  height: 100%;
  padding-left: 10px;
  position: relative;
  text-decoration: none;
  width: 100%;
}

.nav_group .list_link li a::after {
  content: "\E5E1";
  display: inline-block;
  font-family: "material icons";
  font-weight: normal;
  position: absolute;
  right: 10px;
}

@media (min-width: 768px) {
  .nav_group {
    margin: 0 auto 48px;
    max-width: 1024px;
    width: 100%;
  }

  .nav_group h4 {
    margin-bottom: 10px;
    padding: 0 0 10px;
  }

  .nav_group .list_link {
    border-top: none;
    display: block;
    margin: 0 auto 72px;
  }

  .nav_group .list_link li {
    border: none;
    display: inline-block;
    height: auto;
    line-height: 1.5;
    width: auto;
  }

  .nav_group .list_link li a {
    padding: unset;
    height: auto;
    width: auto;
  }

  .nav_group .list_link li a::after {
    content: "|";
    padding: 0 0 0 5px;
    position: static;
  }

  .nav_group .list_link li:last-child a::after {
    content: "";
  }
}

@media (min-width: 768px) and (max-width: 1023.98px) {
  .nav_group {
    margin: 0 10px;
    width: calc(100% - 20px);
  }
}

table.pref_city_detail {
  width: 100%;
  border: 1px solid #cccccc;
  margin-bottom: 1em;
}

table.pref_city_detail tr {
  border-bottom: 1px solid #cccccc;
  text-align: center;
}

table.pref_city_detail tr th {
  background-color: #fcf3e6;
  border-bottom: 1px solid #cccccc;
  border-right: 1px solid #cccccc;
  font-weight: normal;
  padding: 10px 15px;
}

table.pref_city_detail tr th:last-child {
  border-right: 0;
}

table.pref_city_detail tr:first-child th {
  font-weight: bold;
}

table.pref_city_detail tr td {
  padding: 10px 15px;
  border-right: 1px solid #cccccc;
  background: #fff;
}

table.pref_city_detail tr .unused-cells {
  background: repeating-linear-gradient(45deg, #ddd, #ddd 1px, #fff 0, #fff 8px);
}

table.pref_city_detail a {
  color: #59bec5;
  cursor: pointer;
}

@media (max-width: 767px) {
  .scroll-table {
    overflow: auto;
  }

  .scroll-table table {
    white-space: nowrap;
  }
}

.note-txt a {
  color: #59bec5;
  cursor: pointer;
}

#cost_market .pref_city_detail th,
#cost_market_fv .pref_city_detail th {
  font-weight: bold;
}

#cost_market .pref_city_detail td,
#cost_market_fv .pref_city_detail td {
  color: #df6952;
  font-weight: bold;
}

#cost_market .pref_city_detail_title,
#cost_market_fv .pref_city_detail_title {
  font-size: 1.4em;
}

#cost_market .pref_city_detail_label,
#cost_market_fv .pref_city_detail_label {
  line-height: 1.2;
}

#cost_market .pref_city_detail a,
#cost_market_fv .pref_city_detail a {
  color: #444;
  display: flex;
  line-height: 1.2;
  min-height: 2em;
  align-items: center;
  justify-content: center;
}

#cost_market .wrap_lower_more label,
#cost_market_fv .wrap_lower_more label {
  position: relative;
  bottom: 0;
  height: auto;
  background: none;
  padding: 0;
}

#cost_market .wrap_more_check + div > .pref_city_detail tr:nth-child(n+8),
#cost_market_fv .wrap_more_check + div > .pref_city_detail tr:nth-child(n+8) {
  display: none;
}

#cost_market .wrap_more_check:checked + div > .pref_city_detail tr,
#cost_market_fv .wrap_more_check:checked + div > .pref_city_detail tr {
  display: table-row;
}

#cost_market .blk_search,
#cost_market_fv .blk_search {
  display: grid;
  grid-template-columns: minmax(0, 1fr);
}

.nav_group_footer {
  overflow: hidden;
}

.nav_group_footer .ttl_link {
  margin: 0;
}

.nav_group_footer h4 {
  margin: 0 0 15px;
  font-size: 0.875rem;
  font-weight: bold;
}

.nav_group_footer .blk_more {
  position: relative;
}

.nav_group_footer .blk_more_check {
  display: none;
}

.nav_group_footer .blk_more_label {
  box-sizing: border-box;
  display: flex;
  align-items: center;
  justify-content: space-between;
  width: 100%;
  height: 48px;
  padding: 0 10px;
  font-size: 1rem;
  font-weight: normal;
  border-top: 1px solid #e6e6e6;
  background: #fff;
  position: relative;
}

.nav_group_footer .blk_more_label::after {
  content: "";
  box-sizing: content-box;
  width: 6px;
  height: 6px;
  border-top: solid 2px #574726;
  border-right: solid 2px #574726;
  transform: rotate(135deg);
  position: absolute;
  right: 10px;
}

.nav_group_footer .blk_more_check:checked ~ .ttl_link {
  margin: 0;
}

.nav_group_footer .blk_more_check:checked ~ .ttl_link .blk_more_label::after {
  transform: rotate(-45deg);
}

.nav_group_footer .blk_more_check:checked ~ .blk_more_content {
  display: flex;
  flex-wrap: wrap;
  height: auto;
  margin: 0;
  padding: 10px 20px;
  transform: translate(0, 0);
  transition: 0.2s;
}

.nav_group_footer .blk_more .blk_more_content {
  height: 0;
  margin: 0 20px;
  font-size: 0.875rem;
  line-height: 1.5;
  overflow: hidden;
}

.nav_group_footer .blk_more .blk_more_content a {
  text-decoration: none;
  line-height: 1.5;
}

.nav_group_footer .blk_more .list_site {
  margin: 0;
  padding-bottom: 10px;
  position: relative;
}

.nav_group_footer .blk_more .list_site::before {
  border-left: 10px solid #fff;
  content: "";
  height: 100%;
  left: -8px;
  position: absolute;
}

.nav_group_footer .blk_more .list_site.pb_0 {
  padding-bottom: 0;
}

.nav_group_footer .blk_more .list_site li {
  border-left: 1px solid #232b39;
  display: inline-flex;
  line-height: 1;
  margin: 0 12px 20px -8px;
  padding-left: 8px;
}

@media (min-width: 1025px) {
  .nav_group_footer {
    margin: 0 auto 10px;
    max-width: 1024px;
    width: 100%;
  }

  .nav_group_footer h4 {
    margin: 0 0 15px 12px;
  }

  .nav_group_footer .blk_more_label {
    justify-content: center;
    max-width: 1024px;
    height: 36px;
    margin: 0 auto;
    border-top: none;
    border-bottom: 1px solid #ee827c;
    pointer-events: none;
    /* PCではラベルのクリックイベントを無効化 */
  }

  .nav_group_footer .blk_more_label::after {
    display: none;
  }

  .nav_group_footer .blk_more .blk_more_check {
    display: none;
  }

  .nav_group_footer .blk_more .blk_more_content {
    display: block !important;
    height: auto !important;
    width: 100%;
    max-width: 1020px;
    margin: 0 auto;
    padding: 40px 0 0;
    position: relative;
    overflow: visible !important;
    /* オーバーフローを表示させる */
  }

  .nav_group_footer .blk_more .blk_more_content li::before {
    left: 2px;
  }

  .nav_group_footer .blk_more .blk_more_content li:last-child::after {
    content: "";
  }

  .nav_group_footer .blk_more .list_site::before {
    left: 2px;
  }

  .nav_group_footer .blk_more .list_site.pb_0 {
    padding-bottom: 0;
  }

  .nav_group_footer .blk_more .list_site li {
    margin: 0 2px 20px;
  }

  .nav_group_footer .wrap_other {
    display: flex;
    flex-wrap: wrap;
    position: relative;
  }
}

@media (min-width: 1025px) and (min-width: 768px) {
  .nav_group_footer .wrap_other:last-of-type {
    display: block;
    -moz-column-count: 3;
         column-count: 3;
  }
}

@media (min-width: 1025px) {
  .nav_group_footer .wrap_other::before {
    border-left: 2px solid #fff;
    content: "";
    height: 100%;
    left: 0;
    position: absolute;
    z-index: 1;
  }
}

@media (min-width: 1025px) {
  .nav_group_footer .wrap_other .blk_link {
    box-sizing: border-box;
    width: 33.33333%;
    border-left: 1px dashed #ccc;
  }

  .nav_group_footer .wrap_other .blk_link:first-child {
    border-left: none;
  }
}

@media (min-width: 1025px) and (min-width: 768px) {
  .nav_group_footer .wrap_other .blk_link {
    width: 100%;
    -moz-column-break-inside: avoid;
         break-inside: avoid;
  }
}

@media (min-width: 1025px) {
  .nav_group_footer .wrap_other .blk_link a {
    line-height: 1.5;
  }
}

@media (min-width: 1025px) {
  .nav_group_footer .wrap_other .mt_adj {
    margin-top: -2em;
  }
}

@media (min-width: 1025px) {
  .nav_group_footer .wrap_other .item_00 {
    order: 0;
  }
}

@media (min-width: 1025px) {
  .nav_group_footer .wrap_other .item_01 {
    order: 1;
  }
}

@media (min-width: 1025px) {
  .nav_group_footer .wrap_other .item_02 {
    order: 2;
  }
}

@media (min-width: 1025px) {
  .nav_group_footer .wrap_other .item_03 {
    order: 3;
  }
}

@media (min-width: 1025px) {
  .nav_group_footer .wrap_other .item_04 {
    order: 4;
  }
}

@media (min-width: 1025px) {
  .nav_group_footer .wrap_other .item_05 {
    order: 5;
  }
}

@media (min-width: 1025px) {
  .nav_group_footer .wrap_other .item_06 {
    order: 6;
  }
}

@media (min-width: 768px) and (max-width: 1024px) {
  .nav_group_footer {
    margin: 0 10px;
    width: calc(100% - 20px);
  }

  .nav_group_footer .blk_more .wrap_other .mt_adj {
    margin-top: 0;
  }
}

.facility_staff {
  margin: 36px auto;
}

@media (max-width: 768px) {
  .facility_staff {
    margin: 24px auto;
    width: calc(100% - 20px);
  }
}

.facility_staff h4 {
  text-align: center;
}

.facility_staff .horizontal-graph-wrapper {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 24px;
  margin-bottom: 24px;
}

@media (max-width: 768px) {
  .facility_staff .horizontal-graph-wrapper {
    grid-template-columns: 1fr;
  }
}

.facility_staff .horizontal-graph-wrapper .horizontal-graph {
  width: 100%;
  border: 1px solid #ee827c;
  border-radius: 12px;
  max-width: 800px;
  margin: 0 auto;
  padding: 20px;
}

@media (max-width: 768px) {
  .facility_staff .horizontal-graph-wrapper .horizontal-graph {
    width: 100%;
    padding: 12px;
  }
}

.facility_staff .horizontal-graph-wrapper .horizontal-graph .graph-content {
  margin-bottom: 20px;
  position: relative;
  margin-left: 120px;
  margin-right: 80px;
}

@media (max-width: 768px) {
  .facility_staff .horizontal-graph-wrapper .horizontal-graph .graph-content {
    margin-left: 7em;
    margin-right: 2em;
  }
}

.facility_staff .horizontal-graph-wrapper .horizontal-graph .grid-lines {
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  height: 100%;
  z-index: 1;
}

.facility_staff .horizontal-graph-wrapper .horizontal-graph .grid-lines .grid-line {
  position: absolute;
  height: 100%;
  width: 1px;
  background-color: rgba(0, 0, 0, 0.1);
}

.facility_staff .horizontal-graph-wrapper .horizontal-graph .graph-row {
  display: flex;
  align-items: center;
  margin-bottom: 20px;
  position: relative;
  z-index: 2;
}

.facility_staff .horizontal-graph-wrapper .horizontal-graph .graph-row .label {
  width: 120px;
  padding-right: 15px;
  text-align: right;
  font-size: 14px;
  color: #333;
  position: absolute;
  left: -120px;
}

.facility_staff .horizontal-graph-wrapper .horizontal-graph .graph-row .bar-container {
  flex-grow: 1;
  height: 40px;
  position: relative;
}

.facility_staff .horizontal-graph-wrapper .horizontal-graph .graph-row .bar-container .bar {
  height: 100%;
  background-color: #fcf3e6;
  border-radius: 2px;
  position: relative;
  transition: width 0.3s ease;
}

.facility_staff .horizontal-graph-wrapper .horizontal-graph .graph-row .bar-container .bar .value {
  position: absolute;
  left: 10px;
  top: 50%;
  transform: translateY(-50%);
  color: #ee827c;
  font-weight: bold;
  font-size: 12px;
  white-space: nowrap;
}

.facility_staff .horizontal-graph-wrapper .horizontal-graph .graph-row .bar-container .bar .value strong {
  font-size: 18px;
}

.facility_staff .horizontal-graph-wrapper .horizontal-graph .x-axis {
  position: relative;
  margin-left: 120px;
  margin-right: 80px;
  height: 30px;
}

@media (max-width: 768px) {
  .facility_staff .horizontal-graph-wrapper .horizontal-graph .x-axis {
    margin-left: 7em;
    margin-right: 2em;
  }
}

.facility_staff .horizontal-graph-wrapper .horizontal-graph .x-axis .x-mark {
  position: absolute;
  text-align: center;
  transform: translateX(-50%);
}

.facility_staff .horizontal-graph-wrapper .horizontal-graph .x-axis .x-mark::before {
  content: "";
  position: absolute;
  top: -5px;
  left: 50%;
  height: 5px;
  width: 1px;
  background-color: #333;
}

.facility_staff .horizontal-graph-wrapper .horizontal-graph .x-axis .x-mark span {
  font-size: 12px;
  color: #666;
  position: relative;
  top: 5px;
}

.facility_staff .horizontal-graph-wrapper .horizontal-graph .x-axis .x-label {
  position: absolute;
  font-size: 12px;
  color: #666;
  right: -34px;
  top: 9px;
}

.facility_staff .horizontal-graph-wrapper .horizontal-graph .graph-numbers {
  margin-top: 24px;
  display: flex;
  justify-content: center;
  align-items: center;
}

.facility_staff .horizontal-graph-wrapper .horizontal-graph .graph-numbers span {
  color: #ee827c;
  font-family: "Oswald", sans-serif;
  font-size: 24px;
  margin: 0 8px;
}

.facility_staff .horizontal-graph-wrapper .person-chart {
  display: flex;
  flex-direction: column;
  text-align: center;
  justify-content: space-between;
  width: 100%;
  padding: 20px;
  border: 1px solid #ee827c;
  border-radius: 12px;
}

@media (max-width: 768px) {
  .facility_staff .horizontal-graph-wrapper .person-chart {
    width: 100%;
    padding: 12px;
  }
}

.facility_staff .horizontal-graph-wrapper .person-chart img {
  width: 32px;
  height: 55px;
}

@media (max-width: 768px) {
  .facility_staff .horizontal-graph-wrapper .person-chart img {
    width: 24px;
    height: 41px;
  }
}

.facility_staff .horizontal-graph-wrapper .person-chart .person-numbers {
  margin-top: 24px;
}

.facility_staff .horizontal-graph-wrapper .person-chart .person-numbers span {
  color: #ee827c;
  font-family: "Oswald", sans-serif;
  font-size: 24px;
  margin: 0 8px;
}

.facility_staff .horizontal-graph-wrapper .person-chart .person-numbers span.male {
  color: #6694c4;
}

.facility_staff .table-container {
  border-radius: 8px;
  overflow: hidden;
  max-width: 1200px;
  margin: 0 auto 24px auto;
  font-family: sans-serif;
  background: #ccc;
}

.facility_staff .table-container .grid-wrapper {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 1px;
  border: 1px solid #ccc;
  overflow: hidden;
  border-radius: 8px;
}

@media (max-width: 768px) {
  .facility_staff .table-container .grid-wrapper {
    grid-template-columns: repeat(2, 1fr);
  }
}

.facility_staff .table-container .grid-wrapper .grid-item {
  background: #fff;
  display: flex;
  flex-direction: column;
}

.facility_staff .table-container .grid-wrapper .grid-item .grid-header {
  padding: 12px;
  text-align: center;
  font-weight: bold;
  color: #333;
  border-bottom: 1px solid #ccc;
  background: #fcf3e6;
  min-height: 40px;
  height: 40px;
}

.facility_staff .table-container .grid-wrapper .grid-item .grid-value {
  padding: 12px;
  text-align: center;
  color: #666;
}

.facility_staff .notice {
  background-color: #eee;
  line-height: 1.4em;
  padding: 12px;
  font-size: 12px;
  margin: 2em 0;
}

.breadcrumb_upper {
  display: none;
}

@media (min-width: 768px) {
  .breadcrumb_upper {
    background: #f5f5f5;
    border-bottom: 1px solid #e6e6e6;
    display: block;
    height: 34px;
    width: 100%;
  }

  .breadcrumb_upper .list_breadcrumb {
    display: flex;
    font-size: 0.8125rem;
    height: 36px;
    margin: 0 auto;
    max-width: 1024px;
    overflow-y: scroll;
  }

  .breadcrumb_upper .list_breadcrumb li {
    height: 36px;
    line-height: 36px;
  }

  .breadcrumb_upper .list_breadcrumb .item_current {
    padding: 0 10px;
  }

  .breadcrumb_upper .list_breadcrumb li a {
    color: #574726;
    display: block;
    height: 36px;
    padding: 0 10px;
    position: relative;
    text-decoration: none;
  }

  .breadcrumb_upper .list_breadcrumb li a::before {
    border-top: 1px solid #e6e6e6;
    content: "";
    display: inline-flex;
    height: 18px;
    position: absolute;
    right: 0;
    transform: rotate(60deg);
    top: 5px;
    width: 18px;
  }

  .breadcrumb_upper .list_breadcrumb li a::after {
    border-right: 1px solid #e6e6e6;
    bottom: 5px;
    content: "";
    display: inline-flex;
    height: 18px;
    position: absolute;
    right: 0;
    transform: rotate(30deg);
    width: 18px;
  }
}

.header {
  border-bottom: 1px solid #ee827c;
}

.header_inner {
  align-items: center;
  display: flex;
  height: 68px;
  flex-wrap: nowrap;
  justify-content: center;
  position: relative;
}

.header_link {
  display: none;
}

.header_nav .list_nav {
  display: none;
}

.header_logo {
  display: flex;
  height: 24px;
  width: auto;
}

.header_tel {
  display: none;
}

@media (min-width: 768px) {
  .header_inner {
    display: flex;
    height: 72px;
    justify-content: space-between;
    margin: 0 auto;
    max-width: 1024px;
    width: 100%;
  }

  .header_nav {
    display: flex;
    flex-wrap: nowrap;
    justify-content: flex-start;
  }

  .header_nav .list_nav {
    align-items: center;
    display: flex;
    font-size: 1rem;
    font-weight: bold;
  }

  .header_nav .list_nav a {
    color: #574726;
    text-decoration: none;
  }

  .header_nav .item_search {
    margin-right: 20px;
  }

  .header_nav .item_knowledge {
    margin-right: 20px;
  }

  .header_nav .item_search::before {
    color: #ee827c;
    content: "\E8B6";
    display: inline-flex;
    font-family: "material icons";
    font-size: 1.5rem;
    font-weight: normal;
    vertical-align: sub;
  }

  .header_nav .item_knowledge::before {
    color: #ee827c;
    content: "\EA19";
    display: inline-flex;
    font-family: "material icons";
    font-size: 1.5rem;
    font-weight: normal;
    vertical-align: sub;
  }

  .header_nav .item_news::before {
    color: #ee827c;
    content: "\EB81";
    display: inline-flex;
    font-family: "material icons";
    font-size: 1.5rem;
    font-weight: normal;
    vertical-align: sub;
  }

  .header_logo {
    height: 32px;
    margin-right: 60px;
    width: auto;
  }

  .header_info {
    position: static;
  }

  .header_consider {
    border-radius: 56px;
    font-size: 0.875rem;
    height: 36px;
    line-height: 36px;
    margin: 0 0 0 0;
    width: 120px;
  }

  .header_consider .txt_consider {
    padding-right: 20px;
  }

  .header_consider .txt_add {
    display: inline;
  }

  .header_consider .txt_count {
    font-size: 0.75rem;
    height: 20px;
    line-height: 20px;
    right: 8px;
    top: 8px;
    width: 20px;
  }

  .header_tel {
    display: block;
  }

  .header_tel .txt_tel {
    align-items: center;
    color: #df6952;
    display: flex;
    font-size: 1.5rem;
    font-weight: 700;
    margin-bottom: 4px;
  }

  .header_tel .txt_tel::before {
    content: "\E0CD";
    display: inline-flex;
    font-family: "material icons";
    font-weight: normal;
  }

  .header_tel .txt_time {
    font-size: 0.75rem;
    line-height: 1;
  }
}

@media (min-width: 768px) and (max-width: 1023.98px) {
  .header_nav .list_nav {
    font-size: 0.875rem;
  }

  .header_logo {
    margin-right: 20px;
  }
}

.header_detail .header_link {
  color: #59bec5;
  display: block;
  font-size: 0.875rem;
  left: 10px;
  position: absolute;
  text-decoration: none;
}

.header_detail .header_link::before {
  content: "\E5E0";
  display: inline-block;
  font-family: "material icons";
  font-weight: normal;
  vertical-align: text-bottom;
}

@media (min-width: 768px) {
  .header_detail .header_link {
    display: none;
  }
}

.facility-caption {
  position: absolute;
  z-index: 1;
  bottom: 0;
  text-shadow: 1px 1px 3px #000;
  color: #fff;
  padding: 0.5rem;
  font-size: 0.875rem;
  width: 100%;
  display: block;
}

.facility-table {
  font-size: 0.875rem;
  background-color: #f5f0e6;
  border-radius: 0.5rem;
  border-width: 1px;
  border-color: #d2d2d2;
  overflow: hidden;
}

.facility-table .item-cost {
  flex: 1 1 0%;
  padding: 0.75rem;
  background-color: #fff;
  border-left-width: 1px;
}

.facility-table .item {
  display: flex;
  align-items: center;
  border-bottom-width: 1px;
  border-color: #d2d2d2;
}

.facility-table .item:last-child {
  border: none;
}

.facility-table.is-detail .item-cost {
  display: block;
}

@media (min-width: 640px) {
  .facility-table.is-detail .item-cost {
    display: flex;
  }
}

.gallery .swiper-slide::before,
.gallery-thumbs .swiper-slide::before {
  content: "";
  display: block;
  padding-top: 66.666666%;
}

.gallery {
  width: 100vw;
}

@media (min-width: 640px) {
  .gallery {
    width: 590px;
    margin: 0;
  }
}

.gallery-thumbs {
  width: 100vw;
  transform: translate3d(0, 0, 0) !important;
  padding: 0 0 0 1rem;
}

.gallery-thumbs .swiper-slide {
  max-width: 20.3%;
  padding: 0;
}

@media (min-width: 640px) {
  .gallery-thumbs {
    width: 100%;
    padding: 0 0 0 0;
  }

  .gallery-thumbs .swiper-slide {
    min-width: 74px;
  }
}

.iryou-jyouken-wrapper div {
  border-radius: 6px;
  border: 1px solid #d8d2c6;
  margin-bottom: 10px;
  margin-right: 5px;
  width: calc(50% - 5px);
  min-height: 65px;
}

.iryou-jyouken-wrapper div:nth-child(2n) {
  margin-left: 5px;
  margin-right: 0;
}

@media (min-width: 640px) {
  .iryou-jyouken-wrapper {
    justify-content: flex-start;
    border: none;
  }

  .iryou-jyouken-wrapper div {
    margin-right: 0.8298755187%;
    margin-bottom: 0.8298755187%;
    width: 24.37759336%;
    border-radius: 6px;
    border: 1px solid #d8d2c6;
    min-height: auto;
  }

  .iryou-jyouken-wrapper div:nth-child(2n) {
    margin-left: 0;
    margin-right: 0.8298755187%;
  }

  .iryou-jyouken-wrapper div:nth-child(4n) {
    margin-right: 0;
  }
}

.facility-empty-room {
  min-width: 85px;
  margin-left: auto;
}

.facility-main {
  width: 100%;
  margin: 0 0 0 0;
}

@media (min-width: 640px) {
  .facility-main {
    width: 600px;
    margin: 0 0 0 30px;
  }
}

.facility-right {
  width: 100%;
  margin: 0 1rem;
}

@media (min-width: 640px) {
  .facility-right {
    width: 355px;
    margin: 0 20px 0 0;
  }
}

.facility-description {
  width: 100%;
}

@media (min-width: 640px) {
  .facility-description {
    width: 352px;
  }
}

.facility-tel {
  position: relative;
  font-weight: bold;
  text-align: center;
  align-items: center;
  justify-content: center;
  border-radius: 0 0 4px 4px;
  font-size: 12px;
  height: 48px;
  display: block;
  width: 100%;
  height: 95px;
  background: initial;
  border: 1px solid #F5F0E6;
  border-radius: 8px;
  text-align: center;
}

.facility-tel::after {
  position: absolute;
  bottom: -3px;
  left: 0;
  content: "";
  height: 100%;
  width: 100%;
  border-radius: 5px;
  background-color: #EE827C;
  z-index: -1;
}

.facility-tel.is-nav {
  border-radius: 4px;
  display: flex;
  padding: 8px;
  height: auto;
  margin: 12px 24px 0 0;
}

.facility-tel.is-nav::after {
  display: none;
}

.facility-tel.is-nav div {
  display: block;
}

.facility-tel.is-nav div.flex {
  display: flex;
}

.facility-tel::after {
  display: none;
}

.facility-tel div:nth-child(1) {
  display: block;
  height: 30px;
  line-height: 30px;
  font-size: 16px;
  background-color: #F5F0E6;
  color: #605C55;
}

.facility-tel div:nth-child(2) {
  display: flex;
}

.facility-tel div:nth-child(3) {
  display: block;
  height: 16px;
  line-height: 5px;
  font-size: 16px;
  color: #605C55;
}

@media (min-width: 640px) {
  .facility-tel {
    width: 352px;
    height: 105px;
  }
}

.number-font-family {
  font-family: arial, Helvetica, sans-serif;
}

.consulting_flow {
  display: none;
}

@media (max-width: 767px) {
  .consulting_flow {
    display: flex;
    width: 100%;
    margin-top: 2rem;
  }

  .consulting_flow img {
    width: 100%;
    height: auto;
  }
}

.special_conditions {
  background: #FCF3E6;
  padding: 20px calc(50vw - 142px);
  display: none;
  flex-wrap: wrap;
  gap: 10px;
  margin-bottom: 32px;
  justify-content: flex-start;
}

@media (max-width: 767px) {
  .special_conditions {
    display: flex;
  }
}

.special_conditions_title {
  display: inline-block;
  width: 100%;
  text-align: center;
  font-size: 16px;
  font-weight: bold;
  margin: 0 0 5px 0;
  padding: 0;
}

.special_conditions img {
  width: 88px;
  height: auto;
}

.ad__ttl--card {
  font-size: 1rem;
  height: 2.5rem;
  line-height: 1.4;
  margin: 0;
  padding: 0.75rem 0 0 2rem;
  position: relative;
  font-weight: 600;
  display: flex;
  align-items: center;
  line-height: inherit;
  margin-bottom: 5px;
}

@media screen and (min-width: 768px) {
  .ad__ttl--card {
    font-size: 1.125rem;
    background: none;
    height: 66px;
    padding: 0 0 0 3rem;
    margin-bottom: 0;
  }

  .ad__ttl--card img {
    height: 4.75rem;
  }
}

@media screen and (max-width: 359px) {
  .ad__ttl--card {
    height: 5.5rem;
    background: url(/img/ad/spx_kitano.png) no-repeat right center/auto 5.5rem;
    line-height: 1.2;
    padding: 0.75rem 0 0 2.875rem;
  }
}

.ad__ttl--card::before {
  content: "";
  background: url(/img/ad/icon_hand.png) no-repeat left center/contain;
  position: absolute;
  top: 50%;
  left: 0;
  width: 1.75rem;
  height: 2.1875rem;
  display: block;
  transform: translateY(-50%);
}

@media screen and (min-width: 768px) {
  .ad__ttl--card::before {
    width: 2.1875rem;
    height: 3.1875rem;
    left: 0.5rem;
  }
}

@media screen and (max-width: 359px) {
  .ad__ttl--card::before {
    width: 2.625rem;
    height: 3.625rem;
  }
}

.ad__ttl--card span {
  display: inline-block;
}

@media screen and (min-width: 768px) {
  .ad__ttl--card span {
    margin: 0 3px 0;
  }
}

.ad__ttl--card em {
  background: linear-gradient(transparent 60%, #fee8aa 60%);
  font-weight: 600;
  display: inline-block;
}

.ad__ttl--card i {
  display: inline-block;
  font-size: 1.25rem;
  color: #e16c0e;
  font-style: normal;
}

@media screen and (min-width: 768px) {
  .ad__ttl--card i {
    font-size: 1.5rem;
    margin: 0 0 0 0;
  }
}

.ad__ttl--facility {
  color: #04c;
  font-size: 1rem;
  font-weight: 600;
  line-height: 1;
  margin: 0 0 0.85rem;
  padding-right: 2rem;
  width: 100%;
}

@media screen and (min-width: 768px) {
  .ad__ttl--facility {
    font-size: 1.125rem;
    margin: 0 0 0.625rem;
  }
}

@media screen and (max-width: 359px) {
  .ad__ttl--facility {
    margin: 0 0 0.81rem;
  }
}

.ad__ttl--facility a {
  text-decoration: none;
  color: inherit;
}

.ad__ttl--facility a:hover {
  text-decoration: none;
}

.ad__ttl--facility a span {
  display: inline-block;
  border-bottom: 1px solid #0044CC;
  color: #0044CC;
}

.ad__ttl--facility a:visited span {
  color: #681da8;
  border-bottom-color: #681da8;
}

.ad__ttl--show {
  font-size: 1.125rem;
  font-weight: 600;
  line-height: 1.4;
  margin: 0 0 1rem;
  position: relative;
  width: 100%;
}

@media screen and (min-width: 768px) {
  .ad__ttl--show {
    font-size: 1.5rem;
    line-height: 3.5rem;
    margin: 0 0 1.3rem;
    padding: 0 0 0 3.5rem;
  }
}

.ad__ttl--show::after {
  content: "";
  width: 2.9375rem;
  height: 4.25rem;
  background: url(/img/ad/icon_hand.png) no-repeat center top/contain;
  position: absolute;
  right: 1.1rem;
  top: -0.75rem;
}

@media screen and (min-width: 768px) {
  .ad__ttl--show::after {
    content: none;
  }
}

@media screen and (max-width: 359px) {
  .ad__ttl--show::after {
    width: 1.9375rem;
    height: 2.8125rem;
    right: 2.5rem;
    top: -1.125rem;
  }
}

@media screen and (min-width: 768px) {
  .ad__ttl--show::before {
    content: "";
    width: 2.375rem;
    height: 3.4375rem;
    background: url(/img/ad/icon_hand.png) no-repeat center top/contain;
    position: absolute;
    left: 0.625rem;
    top: 0;
  }
}

.ad__ttl--show span {
  display: block;
  margin-bottom: 0.125rem;
}

@media screen and (min-width: 768px) {
  .ad__ttl--show span {
    display: inline;
  }
}

.ad__ttl--show em {
  font-size: 1.375rem;
  color: #e16c0e;
}

@media screen and (min-width: 768px) {
  .ad__ttl--show em {
    font-size: 1.875rem;
  }
}

.ad__ttl--show i {
  font-style: normal;
  background: linear-gradient(transparent 60%, #fee8aa 60%);
}

.ad__ttl--interview {
  font-size: 0.875rem;
  align-items: center;
  font-weight: 400;
  display: flex;
  gap: 0.5rem;
  margin: 1rem 0;
}

@media screen and (min-width: 768px) {
  .ad__ttl--interview {
    margin: 0 0 1rem;
  }
}

.ad__ttl--interview img {
  width: 3.5rem;
  height: 3.5rem;
  border-radius: 50%;
  -o-object-fit: cover;
     object-fit: cover;
}

.ad__ttl--interview strong {
  font-weight: 600;
  margin-left: 0.375rem;
}

.ad__ttl--interview span,
.ad__ttl--interview i {
  display: block;
}

.ad__ttl--interview i {
  font-style: normal;
  margin-top: 0.125rem;
}

.ad__ttl--interview a {
  color: #59bec5;
  text-decoration: underline;
}

.ad__ttl--interview a:hover, .ad__ttl--interview a:visited {
  color: #59bec5;
  text-decoration: underline;
}

.ad__ttl--profile {
  display: block;
  font-weight: 600;
  margin-bottom: 0.41rem;
}

.ad__text--description {
  display: -webkit-box;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 5;
  line-clamp: 5;
  overflow: hidden;
  line-height: 1.4;
}

@media screen and (min-width: 768px) {
  .ad__text--description {
    -webkit-line-clamp: 7;
    line-clamp: 7;
  }
}

.ad__text--description strong {
  background: linear-gradient(transparent 60%, #fee8aa 60%);
  font-weight: 600;
  display: inline;
}

.ad__text--description h4 {
  border-left: #e16c0e 0.25rem solid;
  display: block;
  font-weight: 600;
  padding: 0 0 0 0.625rem;
  margin: 0 0 0.75rem;
}

.ad__text--show {
  background: #fff;
  border-radius: 0.625rem;
  padding: 1.25rem 1.5rem;
}

@media screen and (min-width: 768px) {
  .ad__text--show {
    padding: 1.75rem;
  }
}

.ad__text--show p {
  font-size: 0.875rem;
  line-height: 1.4;
  margin-bottom: 1.25rem;
}

.ad__text--show p:last-of-type {
  margin-bottom: 0;
}

.ad__text--show p strong {
  background: linear-gradient(transparent 60%, #fee8aa 60%);
  font-weight: 600;
  display: inline;
}

.ad__text--show h4 {
  font-size: 1rem;
  border-left: #e16c0e 0.25rem solid;
  display: block;
  font-weight: 600;
  padding: 0.1rem 0 0 0.625rem;
  margin: 0 0 0.75rem;
}

.ad__text--show__more {
  position: absolute;
  bottom: 0;
  left: 0;
  right: 0;
  z-index: 100;
  background-image: linear-gradient(180deg, rgba(255, 255, 255, 0.7), rgba(255, 255, 255, 0.8) 100%);
  display: flex;
  align-items: center;
  justify-content: center;
  flex-wrap: wrap;
  flex-direction: column;
  height: 160px;
  color: #e16c0e;
  font-size: 16px;
  font-weight: bold;
  -webkit-backdrop-filter: blur(4px);
          backdrop-filter: blur(4px);
}

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

.ad__text--show__moreBtn {
  height: 48px;
  border: 2px solid #e16c0e;
  display: flex;
  align-items: center;
  justify-content: center;
  width: calc(100% - 3rem);
  border-radius: 2rem;
  background-color: #fff;
  margin-top: 0.5rem;
  box-shadow: 0px 3px 6px 0px rgba(0, 0, 0, 0.25);
}

.ad__text--show__moreBtn::after {
  content: "";
  background: url(/img/ad/icon_arrow.png) no-repeat center center/contain;
  width: 1.75rem;
  height: 1.75rem;
  margin-left: 0;
}

#adDesc + .ad__text--show {
  position: relative;
  max-height: 600px;
  overflow: hidden;
}

@media screen and (min-width: 768px) {
  #adDesc + .ad__text--show {
    max-height: auto;
  }
}

#adDesc:checked + .ad__text--show {
  max-height: none;
}

#adDesc:checked + .ad__text--show > .ad__text--show__more {
  display: none;
}

.ad__img {
  width: 100%;
}

.ad__anchor--card {
  display: block;
  width: 100%;
  height: 100%;
  position: absolute;
  top: 0;
  left: 0;
  z-index: 100;
}

.ad__icon--pr {
  font-size: 0.875rem;
  height: 1.25rem;
  line-height: 1.25rem;
  width: 1.6875rem;
  border: 1px solid #999;
  color: #999;
  position: absolute;
  top: 1rem;
  right: 1rem;
  text-align: center;
}

.ad__badge--kitano {
  position: absolute;
  left: 0.375rem;
  top: 8.125rem;
  z-index: 300;
  width: 3rem;
}

@media screen and (min-width: 768px) {
  .ad__badge--kitano {
    position: relative;
    left: 0;
    top: -0.5rem;
    margin-right: 0.5rem;
  }
}

@media screen and (max-width: 359px) {
  .ad__badge--kitano {
    top: 6.125rem;
  }
}

.ad__badge--fv {
  width: 3rem;
}

@media screen and (max-width: 479px) {
  .ad__badge--fv {
    position: absolute;
    right: 0;
    top: -1rem;
  }
}

.ad__line {
  background: #fcf3e6;
  font-feature-settings: normal;
  margin: 1.75rem calc(50% - 50vw);
  padding: 0.75rem 0.625rem 1.5rem;
  width: 100vw;
}

@media screen and (min-width: 768px) {
  .ad__line {
    padding: 0.5rem 0 2rem;
  }
}

@media screen and (min-width: 768px) and (max-width: 1040px) {
  .ad__line {
    margin: 1.75rem calc(50% - 50vw);
    padding: 0.75rem 0.625rem 1.5rem;
  }
}

.ad__line--inr {
  margin: 0 auto;
  max-width: 1024px;
  width: 100%;
}

.ad__card {
  background: #fff;
  border-radius: 0.25rem;
  border: 1px solid #e16c0e;
  box-shadow: 0px 2px 6px 0px rgba(0, 0, 0, 0.2);
  padding: 1rem;
  position: relative;
}

@media screen and (min-width: 768px) {
  .ad__card {
    display: flex;
    flex-wrap: wrap;
  }
}

.ad__button {
  background-image: linear-gradient(0deg, #e16c0e, #e08e38);
  border-radius: 99px;
  border: 1px solid #e16c0e;
  box-shadow: 0px 2px 6px 0px rgba(0, 0, 0, 0.25);
  color: #fff;
  display: block;
  font-weight: 600;
  line-height: 1.4;
  margin-top: 1rem;
  padding: 0.313rem 0;
  position: relative;
  text-align: center;
  width: 100%;
}

@media screen and (min-width: 768px) {
  .ad__button {
    margin-top: 1.125rem;
    padding: 0.39rem 0;
    position: absolute;
    bottom: 0;
  }
}

@media screen and (min-width: 768px) and (max-width: 1040px) {
  .ad__button {
    position: relative;
  }
}

.ad__button::before, .ad__button::after {
  content: "";
  background-color: #fff;
  height: 0.1875rem;
  position: absolute;
  right: 1.25rem;
  top: 50%;
  transform: rotateY("-50%");
  transform-origin: calc(100% - 1.5px) 50%;
  width: 0.875rem;
}

.ad__button::before {
  transform: rotate(45deg);
}

.ad__button::after {
  transform: rotate(-45deg);
}

.ad__button span {
  font-size: 0.875rem;
  display: block;
  margin-bottom: 0.125rem;
}

.ad__button em {
  font-size: 1rem;
  font-weight: 600;
}

@media screen and (min-width: 768px) {
  .ad__button em {
    font-size: 1.25rem;
  }
}

@media screen and (min-width: 768px) {
  .ad__description--list {
    margin-top: 0.875rem;
    position: relative;
    width: 45.56%;
  }
}

@media screen and (min-width: 768px) and (max-width: 1040px) {
  .ad__description--list {
    margin-top: 0;
    width: inherit;
  }
}

.ad__view--list {
  display: block;
  margin: 0 0 1rem 0;
  min-height: inherit;
  position: relative;
  z-index: 200;
}

@media screen and (min-width: 768px) {
  .ad__view--list {
    margin: 0 auto 0 0;
    width: 53.1%;
  }
}

@media screen and (min-width: 768px) and (max-width: 1040px) {
  .ad__view--list {
    margin: 0 auto 1rem;
    width: inherit;
  }
}

.ad__view--list > img {
  height: 42.6vw;
  left: 0;
  margin: 0;
  -o-object-fit: cover;
  object-fit: cover;
  position: absolute;
  top: 0;
  width: 63.9vw;
}

@media screen and (min-width: 768px) {
  .ad__view--list > img {
    height: 16.375rem;
    width: 24.5625rem;
  }
}

@media screen and (min-width: 768px) and (max-width: 1040px) {
  .ad__view--list > img {
    height: 42.6vw;
    width: 63.9vw;
  }
}

@media screen and (max-width: 359px) {
  .ad__view--list > img {
    width: 12.5rem;
  }
}

.ad__view--list label {
  cursor: pointer;
  display: flex;
  flex-wrap: wrap;
  margin: 0 0 1.2vw 65.1vw;
  opacity: 1;
  width: 20.1vw;
}

.ad__view--list label:last-of-type {
  margin: 0 0 0 65.1vw;
}

@media screen and (min-width: 768px) {
  .ad__view--list label {
    margin: 0 0 0.4rem 25rem;
    width: 7.6875rem;
  }

  .ad__view--list label:last-of-type {
    margin: 0 0 0 25rem;
  }
}

@media screen and (min-width: 768px) and (max-width: 1040px) {
  .ad__view--list label {
    margin: 0 0 1.2vw 66.1vw;
    width: 20.1vw;
  }

  .ad__view--list label:last-of-type {
    margin: 0 0 1.2vw 66.1vw;
  }
}

@media screen and (max-width: 359px) {
  .ad__view--list label {
    width: 4.125rem;
    margin: 0 0 0.22rem 64vw;
  }
}

.ad__view--list label:hover {
  opacity: 0.5;
}

.ad__view--list label img {
  display: block;
  height: 13.4vw;
  -o-object-fit: cover;
  object-fit: cover;
  width: 20.1vw;
}

@media screen and (min-width: 768px) {
  .ad__view--list label img {
    height: 5.125rem;
    width: 7.6875rem;
  }
}

@media screen and (min-width: 768px) and (max-width: 1040px) {
  .ad__view--list label img {
    height: 13.4vw;
    width: 20.1vw;
  }
}

@media screen and (max-width: 359px) {
  .ad__view--list label img {
    height: 2.625rem;
  }
}

.ad__view--list input[name^=switch_img_] {
  display: none;
}

.ad__view--list input[name^=switch_img_]:checked + label {
  opacity: 0.5;
}

.ad__view--list input[name^=switch_img_] ~ img {
  opacity: 0;
}

.ad__view--list input[name^=switch_img_]:checked + label + img {
  opacity: 1;
}

.ad__view--list .icon_movie {
  font-size: 0.75rem;
  height: 1.5rem;
  line-height: 1.5rem;
  width: 5rem;
  align-items: center;
  background: #fff;
  border-radius: 0.25rem;
  display: flex;
  font-style: normal;
  justify-content: center;
  left: 0.25rem;
  position: absolute;
  top: 0.25rem;
}

.ad__view--list .icon_movie::before {
  content: "\E63A";
  display: inline-block;
  font-family: "material icons";
  font-size: 1rem;
  margin-right: 4px;
}

.ad__view--list .link_img {
  height: 100%;
  left: 0;
  position: absolute;
  top: 0;
  width: 64.9vw;
}

@media screen and (min-width: 768px) {
  .ad__view--list .link_img {
    width: 24.5625rem;
  }
}

@media screen and (min-width: 768px) and (max-width: 1040px) {
  .ad__view--list .link_img {
    width: 64.9vw;
  }
}

.ad__view--show {
  width: 100%;
}

.ad__show {
  background: #fcf3e6;
  font-feature-settings: normal;
  line-height: 1.4;
  margin: 0 calc(50% - 50vw) 1.5rem;
  position: relative;
  width: 100vw;
}

@media screen and (min-width: 768px) {
  .ad__show {
    margin: 0 calc(50% - 50vw) 3.375rem;
  }
}

.ad__show--inr {
  margin: 0 auto;
  max-width: 1024px;
  padding: 1.5rem 0.625rem;
  position: relative;
  width: 100%;
}

@media screen and (min-width: 768px) {
  .ad__show--inr {
    display: flex;
    flex-wrap: wrap;
    padding: 1.13rem 0 2rem;
  }
}

@media screen and (min-width: 768px) and (max-width: 1040px) {
  .ad__show--inr {
    padding: 1.5rem 0.625rem;
  }
}

.ad__show .ad__icon--pr {
  top: 0.625rem;
  right: 0.625rem;
}

@media screen and (min-width: 768px) {
  .ad__show .ad__icon--pr {
    top: 2.25rem;
    right: 0;
  }
}

.ad__fv {
  font-feature-settings: normal;
  padding: 0 0.75rem;
}

@media screen and (min-width: 768px) {
  .ad__fv {
    margin: 1.85rem 0 0;
    padding: 0;
  }
}

.ad__profile {
  font-size: 0.875rem;
  background: #fcf3e6;
  border-radius: 0.25rem;
  margin: 1rem 0 1.5rem;
  padding: 0.75rem 0.5rem 0.625rem;
  line-height: 1.4;
}

@media screen and (min-width: 768px) {
  .ad__profile {
    margin: 1.375rem 0 2.25rem;
    padding: 0.75rem 1.5rem;
  }
}

.ad__more {
  font-size: 0.875rem;
  height: 9.375rem;
  overflow: hidden;
  transition: all 0.5s;
}

@media screen and (min-width: 768px) {
  .ad__more {
    height: 10rem;
  }
}

.ad__more::before {
  content: "";
  position: absolute;
  bottom: -0.1rem;
  left: 0;
  width: 100%;
  height: 2rem;
  background-image: linear-gradient(180deg, rgba(255, 255, 255, 0), rgba(255, 255, 255, 0.51), white 70%);
}

.ad__more h3 {
  font-weight: 600;
}

.ad__form--check {
  visibility: hidden;
  position: absolute;
  top: 0;
}

.ad__form--check:checked ~ .ad__more {
  height: auto;
  padding-bottom: 1.25rem;
  transition: all 0.5s;
}

.ad__form--check:checked ~ .ad__more::before {
  content: none;
}

.ad__form--check:checked ~ .ad__form--label {
  bottom: 0;
}

.ad__form--check:checked ~ .ad__form--label::before {
  content: "\E038";
  font-family: "material icons";
  font-size: 1.5rem;
  margin-right: 0.5rem;
  transform: rotate(0.75turn);
}

.ad__form--check:checked ~ .ad__form--label::after {
  content: "\9589\3058\308B";
}

.ad__form--label {
  border: none;
  border-radius: inherit;
  width: 100%;
  align-items: center;
  color: #59bec5;
  cursor: pointer;
  display: flex;
  font-size: 0.875rem;
  justify-content: right;
  position: absolute;
  z-index: 1;
  bottom: -1.25rem;
  text-align: center;
}

.ad__form--label::before {
  content: "\E038";
  font-family: "material icons";
  font-size: 1.5rem;
  margin-right: 0.5rem;
  transform: rotate(0.25turn);
}

.ad__form--label::after {
  content: "\8A73\3057\304F\898B\308B";
}

.ad__point {
  margin: 0 0 2.25rem;
  position: relative;
}

@media screen and (min-width: 768px) {
  .ad__point {
    margin: 0 0 3rem;
  }
}

.ad__point h2 {
  font-size: 1.1875rem;
  font-weight: 600;
}

@media screen and (min-width: 768px) {
  .ad__point h2 {
    border-bottom: 2px solid #ee827c;
  }
}

.ad__point p {
  font-size: 0.875rem;
  margin-bottom: 1.25rem;
}

.ad__point ul {
  list-style-type: decimal;
  margin-bottom: 1.25rem;
}

.ad__point ul li {
  margin-left: 2.5em;
  line-height: 1.5;
}

.ad__point a {
  color: #59bec5;
}

.ad__facility_detail {
  background: #fcf3e6;
  font-feature-settings: normal;
  margin: 1.75rem calc(50% - 50vw);
  padding: 1.7rem 0.625rem 2rem;
  width: 100vw;
}

@media screen and (min-width: 768px) {
  .ad__facility_detail {
    padding: 1.3rem 0 2.8rem;
  }
}

@media screen and (min-width: 768px) and (max-width: 1040px) {
  .ad__facility_detail {
    margin: 1.75rem calc(50% - 50vw);
    padding: 0.75rem 0.625rem 1.5rem;
  }
}

.ad__facility_detail--inr {
  margin: 0 auto 0;
  max-width: 1024px;
  width: 100%;
}

.ad__facility_detail--ttl {
  position: relative;
  display: block;
  border-bottom: 1px solid #E16C0E;
  padding: 0 0 9px 43px;
  line-height: 1.3;
  margin-top: 0;
  font-size: 1.1875rem;
}

@media screen and (min-width: 768px) {
  .ad__facility_detail--ttl {
    font-size: 1.3125rem;
    display: flex;
    align-items: center;
    justify-content: start;
    padding: 0;
  }
}

.ad__facility_detail--ttl::before {
  content: "";
  background: url(/img/ad/icon_hand.png) no-repeat left center/contain;
  width: 2.375rem;
  height: 3.0625rem;
  display: block;
  position: absolute;
  left: 0;
  top: 38%;
  transform: translateY(-50%);
}

@media screen and (min-width: 768px) {
  .ad__facility_detail--ttl::before {
    width: 2.1875rem;
    height: 3.1875rem;
    margin: 6px;
    left: 0;
    top: 0;
    position: relative;
    transform: none;
  }
}

@media screen and (max-width: 359px) {
  .ad__facility_detail--ttl::before {
    width: 2.625rem;
    height: 3.625rem;
  }
}

.ad__facility_detail--ttl em {
  background: linear-gradient(transparent 60%, #fee8aa 60%);
  font-weight: 600;
  display: inline-block;
}

.ad__facility_detail--ttl i {
  display: inline-block;
  font-size: 1em;
  color: #e16c0e;
  font-style: normal;
  margin-top: 0.25rem;
}

@media screen and (min-width: 768px) {
  .ad__facility_detail--ttl i {
    font-size: 1.5rem;
    display: block;
    margin: 0 0 0 0.5rem;
  }
}

.ad__facility_detail--ttl span {
  display: block;
  font-size: 1rem;
}

@media screen and (min-width: 768px) {
  .ad__facility_detail--ttl span {
    display: inline;
    font-size: 1.3125rem;
  }
}

.ad__facility_detail__card {
  display: grid;
  grid-template-columns: 1fr;
  gap: 16px;
  pointer-events: none;
}

@media screen and (min-width: 768px) {
  .ad__facility_detail__card {
    grid-template-columns: auto 383px;
    gap: 20px;
  }
}

.ad__facility_detail__card > * {
  pointer-events: auto;
}

.ad__facility_detail__card--ttl {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 8px;
  order: 1;
}

@media screen and (min-width: 768px) {
  .ad__facility_detail__card--ttl {
    justify-content: start;
    grid-row: 1/3;
    grid-column: 1/3;
    order: 1;
    gap: 16px;
  }
}

.ad__facility_detail__card--ttl h3 {
  color: #04C;
  font-size: 1.125rem;
  font-style: normal;
  font-weight: 700;
  line-height: 140%;
  -webkit-text-decoration-line: underline;
          text-decoration-line: underline;
  margin: 0;
}

.ad__facility_detail__card--ttl span {
  color: #999;
  text-align: center;
  font-size: 0.875rem;
  font-style: normal;
  font-weight: 500;
  line-height: 1;
  border: 1px solid #999;
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 0 4px;
  height: 20px;
}

.ad__facility_detail__card--comment {
  font-size: 14px;
  line-height: 160%;
  display: flex;
  align-items: center;
  justify-content: start;
  flex-direction: column;
  gap: 10px;
  order: 3;
}

@media screen and (min-width: 768px) {
  .ad__facility_detail__card--comment {
    flex-direction: row;
    grid-row: 3/4;
    grid-column: 1/3;
    order: 2;
  }
}

.ad__facility_detail__card--comment > div:first-of-type {
  width: 100%;
  display: flex;
  flex-direction: row;
  justify-content: start;
  align-items: center;
  gap: 9px;
}

@media screen and (min-width: 768px) {
  .ad__facility_detail__card--comment > div:first-of-type {
    max-width: 112px;
    flex-direction: column;
    justify-content: center;
    gap: 5px;
  }
}

.ad__facility_detail__card--comment > div:first-of-type > img {
  width: 56px;
  height: 56px;
  -o-object-fit: cover;
     object-fit: cover;
  border-radius: 50%;
}

@media screen and (min-width: 768px) {
  .ad__facility_detail__card--comment > div:first-of-type > img {
    width: 72px;
    height: 72px;
  }
}

.ad__facility_detail__card--comment > div:first-of-type > p {
  font-weight: 700;
  line-height: 1.34;
  font-size: 1rem;
}

.ad__facility_detail__card--comment > div:first-of-type > p > span {
  display: block;
  font-size: 0.875rem;
}

@media screen and (min-width: 768px) {
  .ad__facility_detail__card--comment > div:first-of-type > p {
    text-align: center;
    font-size: 0.875rem;
  }
}

.ad__facility_detail__card--comment > div:first-of-type > p br {
  display: none;
}

@media screen and (min-width: 768px) {
  .ad__facility_detail__card--comment > div:first-of-type > p br {
    display: block;
  }
}

.ad__facility_detail__card--comment > div:last-of-type {
  background-color: #fff;
  padding: 16px 20px;
  position: relative;
}

.ad__facility_detail__card--comment > div:last-of-type::before {
  content: "";
  position: absolute;
  left: 40px;
  top: 0;
  transform: rotate(45deg);
  width: 0;
  height: 0;
  border-bottom: 25px solid transparent;
  border-right: 25px solid transparent;
  border-left: 25px solid #fff;
}

@media screen and (min-width: 768px) {
  .ad__facility_detail__card--comment > div:last-of-type::before {
    left: -20px;
    top: 50%;
    transform: translateY(-50%);
    width: 0;
    height: 0;
    border-top: 32px solid transparent;
    border-bottom: 32px solid transparent;
    border-right: 32px solid #fff;
    border-left: 0;
  }
}

.ad__facility_detail__card--comment > div:last-of-type > div {
  display: -webkit-box;
  -webkit-box-orient: vertical;
  overflow: hidden;
  text-overflow: ellipsis;
  font-size: 14px;
  font-weight: 500;
  line-height: 1.4;
  -webkit-line-clamp: 8;
  line-clamp: 8;
}

@media screen and (min-width: 768px) {
  .ad__facility_detail__card--comment > div:last-of-type > div {
    -webkit-line-clamp: 5;
    line-clamp: 5;
  }
}

.ad__facility_detail__card--comment > div:last-of-type > div p {
  font-size: 0.875rem;
  line-height: 1.4;
  margin-bottom: 1.25rem;
}

.ad__facility_detail__card--comment > div:last-of-type > div p:last-of-type {
  margin-bottom: 0;
}

.ad__facility_detail__card--comment > div:last-of-type > div p strong {
  background: linear-gradient(transparent 60%, #fee8aa 60%);
  font-weight: 600;
  display: inline;
}

.ad__facility_detail__card--comment > div:last-of-type > div h4 {
  font-size: 1rem;
  border-left: #e16c0e 0.25rem solid;
  display: block;
  font-weight: 600;
  padding: 0.1rem 0 0 0.625rem;
  margin: 0 0 0.75rem;
}

.ad__facility_detail__card--images {
  order: 2;
  width: 100%;
}

.ad__facility_detail__card--images.splide.is-active {
  margin: 0 -10px;
  width: calc(100% + 20px);
}

@media screen and (min-width: 768px) {
  .ad__facility_detail__card--images {
    order: 3;
  }

  .ad__facility_detail__card--images.splide {
    visibility: initial;
  }
}

@media screen and (min-width: 768px) {
  .ad__facility_detail__card--images ul {
    display: grid;
    grid-template-columns: 367fr 245fr;
    gap: 10px;
  }
}

.ad__facility_detail__card--images ul > li a {
  display: block;
  width: 100%;
  height: 100%;
}

.ad__facility_detail__card--images ul > li img {
  -o-object-fit: cover;
     object-fit: cover;
  width: 100%;
  aspect-ratio: 3/2;
}

@media screen and (min-width: 768px) {
  .ad__facility_detail__card--images ul > li img {
    width: 245px;
    height: 121px;
    max-height: 100%;
    aspect-ratio: unset;
    border-radius: 0;
    -o-object-fit: cover;
       object-fit: cover;
  }
}

@media screen and (min-width: 768px) {
  .ad__facility_detail__card--images ul > li:first-of-type {
    grid-row: 1/3;
  }
}

@media screen and (min-width: 768px) {
  .ad__facility_detail__card--images ul > li:first-of-type img {
    width: 367px;
    height: 100%;
  }
}

.ad__facility_detail__card--content {
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  order: 4;
  gap: 16px;
}

@media screen and (min-width: 768px) {
  .ad__facility_detail__card--content {
    order: 4;
    gap: 0;
  }
}

.ad__facility_detail__card--content--price {
  display: flex;
  padding: 0 20px;
  align-items: stretch;
  gap: 20px;
  font-size: 14px;
  line-height: 1.4;
  order: 1;
}

@media screen and (min-width: 768px) {
  .ad__facility_detail__card--content--price {
    order: 1;
  }
}

.ad__facility_detail__card--content--price > p {
  padding-right: 20px;
  border-right: 1px solid #444;
  font-weight: 700;
  display: flex;
  align-items: center;
  justify-content: center;
  flex-shrink: 0;
}

.ad__facility_detail__card--content--price > div p {
  font-weight: 500;
}

.ad__facility_detail__card--content--price > div p em {
  color: #E16C0E;
  font-size: 18px;
  font-weight: 700;
}

.ad__facility_detail__card--content--price > div p em small {
  font-size: 14px;
}

.ad__facility_detail__card--content--availability {
  display: flex;
  width: auto;
  height: 39px;
  margin: 0 20px;
  padding: 8px 0 6px 0;
  justify-content: center;
  align-items: center;
  gap: 5px;
  border-radius: 4px;
  border: 1px solid #E16C0E;
  background: #FFF;
  line-height: 1;
  order: 3;
}

@media screen and (min-width: 768px) {
  .ad__facility_detail__card--content--availability {
    margin: 0;
    height: 48px;
    order: 2;
  }
}

.ad__facility_detail__card--content--availability span {
  font-size: 12px;
  font-weight: 400;
}

.ad__facility_detail__card--content--availability em {
  color: #E16C0E;
  font-size: 16px;
  font-weight: 700;
  display: flex;
  align-items: center;
}

.ad__facility_detail__card--content--availability em strong {
  font-size: 19px;
}

.ad__facility_detail__card--content--features {
  font-size: 14px;
  font-weight: 500;
  line-height: 1.8;
  margin: 0 20px;
  order: 2;
}

@media screen and (min-width: 768px) {
  .ad__facility_detail__card--content--features {
    margin: 0;
    order: 3;
  }
}

.ad__facility_detail__card--content--features > p {
  display: -webkit-box;
  overflow: hidden;
  text-overflow: ellipsis;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 1;
  line-clamp: 1;
}

.ad__facility_detail__card--content--btn {
  border-radius: 99px;
  background-image: linear-gradient(0deg, #e16c0e, #e08e38);
  border: 1px solid #E16C0E;
  box-shadow: 0 2px 6px 0 rgba(0, 0, 0, 0.25);
  width: 100%;
  display: flex;
  align-items: center;
  justify-content: center;
  height: 48px;
  color: #fff;
  font-size: 18px;
  font-weight: 700;
  line-height: 1;
  position: relative;
  order: 4;
}

.ad__facility_detail__card--content--btn span {
  top: 1px;
  position: relative;
}

.ad__facility_detail__card--content--btn::before, .ad__facility_detail__card--content--btn::after {
  content: "";
  background-color: #fff;
  height: 0.1875rem;
  position: absolute;
  right: 1.25rem;
  top: 50%;
  transform: rotateY("-50%");
  transform-origin: calc(100% - 1.2px) 50%;
  width: 0.875rem;
}

.ad__facility_detail__card--content--btn::before {
  transform: rotate(45deg);
}

.ad__facility_detail__card--content--btn::after {
  transform: rotate(-45deg);
}

#ad-carousel {
  margin: 0 -0.625rem;
}

@media screen and (min-width: 768px) {
  #ad-carousel {
    margin: 0;
  }
}

#ad-carousel img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
  max-height: inherit;
}

#ad-carousel .is-active {
  opacity: 1;
}

@media screen and (min-width: 768px) {
  #ad-carousel .splide__arrow {
    background: rgba(0, 0, 0, 0.7);
    padding: 0;
    width: 40px;
    height: 120px;
  }

  #ad-carousel .splide__arrow--prev svg {
    margin-left: -1em;
  }

  #ad-carousel .splide__arrow--next svg {
    margin-right: -1em;
  }

  #ad-carousel .splide__arrow svg {
    filter: none;
  }
}

#ad-thumbnail {
  margin: 0.25rem -0.625rem 0;
}

@media screen and (min-width: 768px) {
  #ad-thumbnail {
    margin: 0.75rem 0 1.5rem;
  }
}

#ad-thumbnail .splide__slide {
  opacity: 1;
  border: none;
}

#ad-thumbnail .is-active {
  opacity: 0.5;
}

.section_fv h1 {
  align-items: flex-start;
  display: flex;
  position: relative;
}

.facility__name {
  display: inline-block;
  width: 80%;
}

@media screen and (min-width: 768px) {
  .facility__name {
    width: inherit;
  }
}

@media screen and (min-width: 768px) {
  .section_fv .blk_institution {
    align-items: center;
    display: flex;
    gap: 1rem;
  }
}

@media screen and (min-width: 768px) and (max-width: 1040px) {
  .card_facility .blk_tag {
    align-items: center;
    display: flex;
    flex-wrap: wrap;
  }
}

section.inquirycta {
  margin: -16px 10px 48px;
  background: #FCF3E6;
}

@media (max-width: 767px) {
  section.inquirycta {
    display: none;
  }
}

.inquirycta-balloon {
  padding: 32px 0 24px;
  position: relative;
  text-align: center;
}

.inquirycta-ttl {
  color: inherit;
  font-size: 22px;
  font-weight: 700;
}

p.inquirycta-catch {
  color: #fff;
  font-size: 14px;
  font-weight: 400;
}

.inquirycta-contents {
  margin: auto;
  padding: 0 15px 32px;
}

.inquirycta-list {
  display: flex;
  justify-content: center;
  width: 100%;
  flex-flow: row nowrap;
  max-width: 100%;
  align-items: stretch;
  gap: 15px;
  margin: 0 auto;
  max-width: 100%;
}

.inquirycta-item {
  text-align: center;
  width: auto;
  flex: 1;
  height: auto;
}

.inquirycta-link {
  align-items: center;
  background: #fff;
  border: 1px solid #ccc;
  border-radius: 8px;
  box-shadow: 0 2px 4px 0 rgba(0, 0, 0, 0.25);
  display: inline-flex;
  text-align: left;
  text-decoration: none;
  width: 100%;
  position: relative;
  padding: 10px 0;
  height: auto;
}

.inquirycta-link span {
  display: inline-block;
  font-size: 1rem;
  font-weight: 700;
  margin: 0 30px 0 12px;
  line-height: 1.4;
  word-break: keep-all;
  overflow-wrap: anywhere;
}

.inquirycta-link i {
  color: #EE827C;
  font-size: 26px;
  margin-left: 11px;
}

.inquirycta-item em {
  background: #EE827C;
  color: #fff;
  font-size: 16px;
  font-weight: 700;
  text-align: center;
  border-radius: 4px;
  margin-left: 11px;
  width: 26px;
  height: 26px;
  text-align: center;
  line-height: 26px;
}

.inquirycta-link-arrow::before,
.inquirycta-link-arrow::after {
  content: "";
  margin: auto;
  position: absolute;
  right: 12px;
  vertical-align: middle;
}

.inquirycta-link-arrow::before {
  border-right: 3px solid #EE827C;
  border-top: 3px solid #EE827C;
  height: 14px;
  transform: rotate(45deg);
  width: 14px;
}

.inquirycta-item-onlooking .inquirycta-link {
  border: 2px solid #ee827c;
}

.related-facilities-popup {
  position: fixed;
  bottom: 20px;
  right: 20px;
  z-index: 9999;
  background: white;
  border-radius: 8px;
  box-shadow: 0 4px 20px rgba(0, 0, 0, 0.15);
  border: 1px solid #ddd;
  width: 80%;
  max-width: 600px;
  -webkit-animation: PopUp 0.6s ease-in-out;
          animation: PopUp 0.6s ease-in-out;
}

@media (max-width: 767px) {
  .related-facilities-popup {
    left: 50%;
    right: auto;
    transform: translateX(-50%);
    width: 90%;
    bottom: 10px;
    -webkit-animation: PopUp 0.6s ease-in-out;
            animation: PopUp 0.6s ease-in-out;
  }
}

.related-facilities-popup .popup-content {
  position: relative;
  padding: 15px;
}

@media (max-width: 767px) {
  .related-facilities-popup .popup-content {
    padding: 10px;
  }
}

.related-facilities-popup .popup-content h3 {
  font-size: 14px;
  font-weight: bold;
  margin: 0 0 10px 0;
  padding-right: 30px;
  color: #333;
}

@media (max-width: 767px) {
  .related-facilities-popup .popup-content h3 {
    font-size: 14px;
    margin-bottom: 8px;
  }
}

.related-facilities-popup .popup-content .popup-close {
  position: absolute;
  top: -15px;
  right: -15px;
  background: white;
  border: 2px solid #333;
  border-radius: 50%;
  font-size: 18px;
  font-weight: bold;
  cursor: pointer;
  color: #333;
  width: 32px;
  height: 32px;
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 0;
  transition: all 0.2s;
  box-shadow: 0 2px 8px rgba(0, 0, 0, 0.2);
  z-index: 10000;
}

.related-facilities-popup .popup-content .popup-close:hover {
  background: #333;
  color: white;
  transform: scale(1.1);
  box-shadow: 0 4px 12px rgba(0, 0, 0, 0.3);
}

@media (max-width: 767px) {
  .related-facilities-popup .popup-content .popup-close {
    top: -12px;
    right: -12px;
    font-size: 16px;
    width: 28px;
    height: 28px;
    border-width: 2px;
  }
}

.related-facilities-popup .popup-facilities-splide {
  overflow: hidden;
}

.related-facilities-popup .popup-facilities-splide .splide__track {
  overflow: hidden;
}

.related-facilities-popup .popup-facilities-splide .splide__list {
  display: flex;
  align-items: stretch;
}

.related-facilities-popup .popup-facilities-splide .splide__arrow {
  background: transparent;
  border: none;
  opacity: 0.7;
  width: 30px;
  height: 30px;
  border-radius: 0;
}

@media (max-width: 767px) {
  .related-facilities-popup .popup-facilities-splide .splide__arrow {
    width: 25px;
    height: 25px;
  }
}

.related-facilities-popup .popup-facilities-splide .splide__arrow svg {
  fill: white !important;
  width: 20px;
  height: 20px;
}

@media (max-width: 767px) {
  .related-facilities-popup .popup-facilities-splide .splide__arrow svg {
    width: 16px;
    height: 16px;
  }
}

.related-facilities-popup .popup-facilities-splide .splide__arrow:hover {
  opacity: 1;
}

.related-facilities-popup .popup-facilities-splide .splide__arrow:disabled {
  opacity: 0.3;
  cursor: not-allowed;
}

.related-facilities-popup .popup-facilities-splide .splide__arrow--prev {
  left: 2px;
}

.related-facilities-popup .popup-facilities-splide .splide__arrow--next {
  right: 2px;
}

.facility-popup-card {
  flex: 0 0 auto;
  width: 233px;
  text-decoration: none;
  color: inherit;
  display: block;
}

@media (max-width: 767px) {
  .facility-popup-card {
    width: 200px;
  }
}

.facility-popup-card > div {
  border: 1px solid #ccc;
  border-radius: 3px;
  height: 100%;
  display: flex;
  flex-direction: column;
}

.facility-popup-card > div .popup-title {
  font-weight: bold;
  color: #0044CC;
  padding: 10px 8px 7px;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
  font-size: 14px;
}

@media (max-width: 767px) {
  .facility-popup-card > div .popup-title {
    font-size: 14px;
    padding: 8px 6px 5px;
  }
}

.facility-popup-card > div .popup-type-rating {
  padding: 0 8px 6px;
  display: flex;
  align-items: center;
  justify-content: flex-start;
  gap: 8px;
  flex-wrap: wrap;
}

@media (max-width: 767px) {
  .facility-popup-card > div .popup-type-rating {
    padding: 0 6px 5px;
    gap: 6px;
  }
}

.facility-popup-card > div .popup-type-rating .popup-institution-tag {
  background: #fcf3e6;
  border-radius: 3px;
  color: #574726;
  display: inline-block;
  font-size: 12px;
  font-weight: bold;
  line-height: 1.4;
  padding: 3px 5px;
}

@media (max-width: 767px) {
  .facility-popup-card > div .popup-type-rating .popup-institution-tag {
    font-size: 12px;
    padding: 3px 5px;
  }
}

.facility-popup-card > div .popup-type-rating .popup-rating-simple {
  display: flex;
  align-items: center;
  font-size: 12px;
}

@media (max-width: 767px) {
  .facility-popup-card > div .popup-type-rating .popup-rating-simple {
    font-size: 12px;
  }
}

.facility-popup-card > div .popup-type-rating .popup-rating-simple .star {
  color: #FFA500;
  font-size: 14px;
  margin-right: 2px;
}

@media (max-width: 767px) {
  .facility-popup-card > div .popup-type-rating .popup-rating-simple .star {
    font-size: 14px;
  }
}

.facility-popup-card > div .popup-type-rating .popup-rating-simple .rating-value {
  font-weight: bold;
  margin-right: 3px;
  font-size: 15px;
}

@media (max-width: 767px) {
  .facility-popup-card > div .popup-type-rating .popup-rating-simple .rating-value {
    font-size: 15px;
  }
}

.facility-popup-card > div .popup-type-rating .popup-rating-simple .rating-count {
  color: #666;
  font-size: 12px;
}

@media (max-width: 767px) {
  .facility-popup-card > div .popup-type-rating .popup-rating-simple .rating-count {
    font-size: 12px;
  }
}

.facility-popup-card > div .popup-address {
  padding: 0 8px 6px;
  font-size: 12px;
  color: #444;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

@media (max-width: 767px) {
  .facility-popup-card > div .popup-address {
    font-size: 12px;
    padding: 0 8px 6px;
  }
}

.facility-popup-card > div .popup-company {
  font-size: 12px;
  padding: 0 8px 7px;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
  color: #A7A7A7;
}

@media (max-width: 767px) {
  .facility-popup-card > div .popup-company {
    font-size: 10px;
    padding: 0 6px 6px;
  }
}

.facility-popup-card > div .popup-company .label {
  font-size: 12px;
}

@media (max-width: 767px) {
  .facility-popup-card > div .popup-company .label {
    font-size: 10px;
  }
}

.facility-popup-card > div .popup-image {
  position: relative;
  width: 100%;
  height: 112px;
  background-size: cover;
  background-position: center;
  background-repeat: no-repeat;
  background-color: #f5f5f5;
}

@media (max-width: 767px) {
  .facility-popup-card > div .popup-image {
    height: 96px;
  }
}

.facility-popup-card > div .popup-price {
  display: flex;
  font-size: 12px;
}

@media (max-width: 767px) {
  .facility-popup-card > div .popup-price {
    font-size: 12px;
  }
}

.facility-popup-card > div .popup-price .left {
  display: flex;
  justify-content: center;
  align-items: center;
  width: 20%;
  border-right: 1px solid #ccc;
  margin: 6px 0;
  font-weight: bold;
  font-size: 12px;
}

@media (max-width: 767px) {
  .facility-popup-card > div .popup-price .left {
    font-size: 12px;
    margin: 6px 0;
  }
}

.facility-popup-card > div .popup-price .right {
  display: flex;
  justify-content: flex-start;
  align-items: flex-start;
  width: 80%;
  padding: 8px 0;
}

@media (max-width: 767px) {
  .facility-popup-card > div .popup-price .right {
    padding: 8px 0;
  }
}

.facility-popup-card > div .popup-price .right > div {
  display: flex;
  flex-direction: column;
  justify-content: flex-start;
  align-items: flex-start;
}

.facility-popup-card > div .popup-price .right > div > div {
  display: flex;
  justify-content: flex-start;
  align-items: center;
}

.facility-popup-card > div .popup-price .right > div > div:first-child {
  margin-bottom: 4px;
}

.facility-popup-card > div .popup-price .right > div > div .label {
  width: 34px;
  text-align: right;
  display: inline-block;
  font-size: 12px;
  margin-right: 3px;
}

@media (max-width: 767px) {
  .facility-popup-card > div .popup-price .right > div > div .label {
    font-size: 12px;
    width: 34px;
  }
}

.facility-popup-card > div .popup-price .right > div > div .value {
  color: #EE827C;
  font-size: 15px;
  font-weight: bold;
  display: inline-block;
  line-height: 1.2;
}

@media (max-width: 767px) {
  .facility-popup-card > div .popup-price .right > div > div .value {
    font-size: 15px;
  }
}

.facility-popup-card > div .popup-price .right > div > div .value span {
  margin-left: 2px;
  font-size: 12px;
}

@media (max-width: 767px) {
  .facility-popup-card > div .popup-price .right > div > div .value span {
    font-size: 12px;
  }
}

.facility-popup-card > div .popup-room {
  background-color: #fdf4f4;
  margin: 0 8px 7px;
  border: 1px solid #ffdeda;
  border-radius: 3px;
  padding: 7px 0;
  display: flex;
  justify-content: center;
  align-items: center;
  font-size: 12px;
}

@media (max-width: 767px) {
  .facility-popup-card > div .popup-room {
    margin: 0 8px 7px;
    padding: 7px 0;
    font-size: 12px;
  }
}

.facility-popup-card > div .popup-room .update {
  font-size: 12px;
  margin-right: 6px;
}

@media (max-width: 767px) {
  .facility-popup-card > div .popup-room .update {
    font-size: 12px;
    margin-right: 6px;
  }
}

.facility-popup-card > div .popup-room .available {
  font-size: 13px;
  font-weight: bold;
  display: flex;
  justify-content: center;
  align-items: center;
  color: #df6952;
}

@media (max-width: 767px) {
  .facility-popup-card > div .popup-room .available {
    font-size: 13px;
  }
}

.facility-popup-card > div .popup-room .available span {
  font-size: 17px;
  position: relative;
  top: -1px;
}

@media (max-width: 767px) {
  .facility-popup-card > div .popup-room .available span {
    font-size: 17px;
  }
}

.facility-popup-card > div .popup-toDetail-link {
  background: #fcf3e6;
  color: #0044CC;
  text-align: center;
  padding: 7px 0;
  text-decoration: underline;
  font-weight: 600;
  font-size: 13px;
  border-radius: 0 0 3px 3px;
  margin-top: auto;
}

@media (max-width: 767px) {
  .facility-popup-card > div .popup-toDetail-link {
    font-size: 13px;
    padding: 7px 0;
  }
}

.facility-popup-card > div .popup-toDetail-link .popup-toDetail-link-txt {
  position: relative;
}

.facility-popup-card > div .popup-toDetail-link .popup-toDetail-link-txt::after {
  content: "";
  width: 7px;
  height: 7px;
  border-top: solid 2px #0044CC;
  border-right: solid 2px #0044CC;
  position: absolute;
  right: -12px;
  top: 30%;
  transform: rotate(45deg);
}

@media (max-width: 767px) {
  .facility-popup-card > div .popup-toDetail-link .popup-toDetail-link-txt::after {
    width: 6px;
    height: 6px;
    right: -10px;
  }
}

.facility-popup-card:visited > div .popup-title {
  color: #681da8;
}

.facility-popup-card:visited > div .popup-toDetail-link {
  color: #681da8;
}

.facility-popup-card:visited > div .popup-toDetail-link .popup-toDetail-link-txt::after {
  border-top: solid 1px #681da8;
  border-right: solid 1px #681da8;
}

@-webkit-keyframes slideUp {
  from {
    transform: translateX(-50%) translateY(100%);
    opacity: 0;
  }

  to {
    transform: translateX(-50%) translateY(0);
    opacity: 1;
  }
}

@keyframes slideUp {
  from {
    transform: translateX(-50%) translateY(100%);
    opacity: 0;
  }

  to {
    transform: translateX(-50%) translateY(0);
    opacity: 1;
  }
}

@-webkit-keyframes slideUpRight {
  from {
    transform: translateY(100%);
    opacity: 0;
  }

  to {
    transform: translateY(0);
    opacity: 1;
  }
}

@keyframes slideUpRight {
  from {
    transform: translateY(100%);
    opacity: 0;
  }

  to {
    transform: translateY(0);
    opacity: 1;
  }
}

#related-facilities-popup-0 .popup-facilities-splide .splide__arrow svg,
#related-facilities-popup-0 .splide__arrow svg,
#related-facilities-popup-0 .splide__arrow--prev svg,
#related-facilities-popup-0 .splide__arrow--next svg,
.related-facilities-popup .popup-facilities-splide .splide__arrow svg,
.related-facilities-popup .splide__arrow svg,
.related-facilities-popup .splide__arrow--prev svg,
.related-facilities-popup .splide__arrow--next svg {
  fill: white !important;
  color: white !important;
}

#related-facilities-popup-0 .popup-content .popup-close,
.related-facilities-popup .popup-content .popup-close {
  color: #aaa !important;
  border: 1px solid #aaa !important;
  font-size: 24px !important;
  font-weight: normal !important;
}

.popup-address,
.popup-toDetail-link,
.facility-popup-card > div .popup-type-rating .popup-rating-simple {
  display: none;
}

.popup-room {
  display: none !important;
}

.facility-popup-card > div .popup-type-rating .popup-institution-tag {
  font-size: 11px;
}

.facility-popup-card > div .popup-title {
  font-size: 13px;
}

.facility-popup-card > div .popup-price .right > div {
  width: 100%;
}

.facility-popup-card > div .popup-price .right > div > div {
  width: 100%;
}

.facility-popup-card > div .popup-price .right > div > div .label {
  flex-shrink: 0;
}

.facility-popup-card > div .popup-price .right > div > div .value {
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
  display: inline-block;
}

.facility-popup-card > div .popup-price .right {
  padding: 8px 5px 5px 8px;
}

@-webkit-keyframes PopUp {
  from {
    opacity: 0;
  }

  to {
    opacity: 1;
  }
}

@keyframes PopUp {
  from {
    opacity: 0;
  }

  to {
    opacity: 1;
  }
}

.blk_cv--plan--empty.blk_cv .box_cv_thum {
  width: 72px;
  height: 72px;
}

@media (max-width: 768px) {
  .blk_cv--plan--empty .modal-inner .blk_cv--plan-lead {
    margin: 10px 20px 15px 20px;
  }

  .blk_cv--plan--empty .box_cv .box_cv_lead,
.blk_cv--plan--empty .box_cv .box_cv_crnm {
    text-align: left;
    font-size: 0.875rem;
  }

  .blk_cv--plan--empty.blk_cv .box_cv_head {
    gap: 5px;
  }
}

.shukatsu_banner,
.coordinator_recruitment_banner {
  margin: 40px auto 48px;
  max-width: 1040px;
  padding: 0 10px;
}

.shukatsu_banner a,
.coordinator_recruitment_banner a {
  display: block;
}

.shukatsu_banner a .pc_banner,
.coordinator_recruitment_banner a .pc_banner {
  display: none;
  width: 100%;
  height: auto;
}

.shukatsu_banner a .sp_banner,
.coordinator_recruitment_banner a .sp_banner {
  display: block;
  width: 100%;
  height: auto;
  max-width: 300px;
  margin: 0 auto;
}

@media (min-width: 768px) {
  .shukatsu_banner,
.coordinator_recruitment_banner {
    margin: 40px auto 80px;
  }

  .shukatsu_banner a .pc_banner,
.coordinator_recruitment_banner a .pc_banner {
    display: block;
  }

  .shukatsu_banner a .sp_banner,
.coordinator_recruitment_banner a .sp_banner {
    display: none;
  }
}

@media (min-width: 640px) {
  a[href^="tel:"] {
    pointer-events: none;
  }
}

* {
  outline: none !important;
}

.bg-fill {
  background-size: cover;
}

body {
  color: #444;
}

body.hide {
  overflow: hidden;
}

code,
kbd,
pre,
samp {
  font-family: Hiragino Kaku Gothic ProN, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, "Noto Sans", sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";
}

.container {
  position: relative;
}

@media (min-width: 640px) {
  .container {
    margin: 0 auto;
  }
}

img {
  vertical-align: top;
}

::-moz-placeholder {
  color: #aaa !important;
}

:-ms-input-placeholder {
  color: #aaa !important;
}

::placeholder {
  color: #aaa !important;
}

.table td {
  vertical-align: middle;
}

/* お問合せからご入居までの流れ */

.section_catch {
  display: none;
}

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

  .catch_flow {
    background: #FDF4F4;
    width: 100%;
    border-radius: 8px;
    padding: 12px;
    text-align: center;
    font-size: 20px;
  }

  span.catch_em {
    color: #DF6952;
    font-weight: 700;
  }

  .catch_em em {
    font-size: 26px;
  }

  p.catch_sub {
    font-size: 14px;
  }

  img.img_flow {
    width: 100%;
    height: auto;
    margin: 24px 0 64px;
  }
}

.blk_brand {
  margin-bottom: 20px;
}

.blk_brand .brand_head {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 12px;
}

.blk_brand .brand_head_body {
  display: contents;
}

.blk_brand .brand_logo {
  width: 100px;
  height: 68px;
  flex-shrink: 0;
  border: 1px solid #ccc;
  background: #fff;
  display: flex;
  align-items: center;
  justify-content: center;
}

.blk_brand .brand_logo img {
  max-width: 90%;
  max-height: 90%;
  -o-object-fit: contain;
     object-fit: contain;
}

.blk_brand .brand_name {
  color: #444;
  font-size: 15px;
  font-weight: bold;
  line-height: 1.5;
}

.blk_brand .brand_desc {
  width: 100%;
  color: #444;
  font-size: 14px;
  line-height: 1.5;
}

.blk_brand .brand_features_ttl {
  color: #444;
  font-size: 16px;
  font-weight: bold;
  line-height: 1.5;
  margin: 20px 0 16px;
}

.blk_brand .brand_features {
  display: flex;
  flex-direction: column;
  gap: 16px;
}

.blk_brand .brand_feature {
  display: flex;
  align-items: center;
  gap: 12px;
}

.blk_brand .brand_feature_img {
  width: 40%;
  flex-shrink: 0;
}

.blk_brand .brand_feature_img img {
  width: 100%;
  height: auto;
  -o-object-fit: cover;
     object-fit: cover;
  display: block;
}

.blk_brand .brand_feature_txt {
  flex: 1;
  color: #444;
  font-size: 14px;
  font-weight: bold;
  line-height: 1.5;
}

@media (min-width: 768px) {
  .blk_brand {
    margin-bottom: 30px;
  }

  .blk_brand .brand_head {
    flex-wrap: nowrap;
    gap: 24px;
  }

  .blk_brand .brand_head_body {
    display: flex;
    flex-direction: column;
    gap: 8px;
    flex: 1;
    min-width: 0;
  }

  .blk_brand .brand_logo {
    width: 200px;
    height: 134px;
  }

  .blk_brand .brand_name {
    font-size: 17px;
  }

  .blk_brand .brand_desc {
    width: auto;
  }

  .blk_brand .brand_features_ttl {
    font-size: 17px;
    margin-top: 32px;
  }

  .blk_brand .brand_features {
    flex-direction: row;
    gap: 40px;
  }

  .blk_brand .brand_feature {
    flex: 1;
    flex-direction: column;
    align-items: flex-start;
    gap: 20px;
  }

  .blk_brand .brand_feature_img {
    width: 100%;
  }

  .blk_brand .brand_feature_img img {
    height: 210px;
  }

  .blk_brand .brand_feature_txt {
    font-size: 16px;
  }
}

#consultation_case_study.section_consultation_case {
  margin: 0 auto 48px;
  width: calc(100% - 20px);
}

#consultation_case_study.section_consultation_case .consultation_case {
  margin-bottom: 36px;
}

#consultation_case_study.section_consultation_case .consultation_case:last-child {
  margin-bottom: 0;
}

#consultation_case_study.section_consultation_case .consultation_case_ttl {
  color: #444;
  font-size: 16px;
  font-weight: bold;
  line-height: 1.4;
  margin: 14px 0 10px;
}

#consultation_case_study.section_consultation_case .consultation_case_summary {
  background: #fdf4f4;
  margin: 0 -10px 20px;
  padding: 20px 10px;
}

#consultation_case_study.section_consultation_case .consultation_case_profile {
  align-items: center;
  display: flex;
  gap: 10px;
  margin-bottom: 10px;
}

#consultation_case_study.section_consultation_case .consultation_case_avatar {
  border-radius: 50%;
  flex-shrink: 0;
  height: 64px;
  -o-object-fit: cover;
     object-fit: cover;
  width: 64px;
}

#consultation_case_study.section_consultation_case .consultation_case_profile_txt p {
  color: #444;
  font-size: 16px;
  line-height: 1.5;
}

#consultation_case_study.section_consultation_case .consultation_case_profile_txt span {
  font-weight: bold;
}

#consultation_case_study.section_consultation_case .consultation_case_reason {
  background: #fff;
  border-radius: 10px;
  padding: 20px 10px;
  position: relative;
}

#consultation_case_study.section_consultation_case .consultation_case_reason p {
  color: #444;
  font-size: 16px;
  line-height: 1.7;
}

#consultation_case_study.section_consultation_case .consultation_case_suggestion_ttl {
  align-items: center;
  color: #444;
  display: flex;
  font-size: 17px;
  font-weight: bold;
  gap: 8px;
  justify-content: center;
  line-height: 1.4;
  margin: -20px 0 15px;
  padding-top: 33px;
  position: relative;
}

#consultation_case_study.section_consultation_case .consultation_case_suggestion_ttl::before {
  background: #fdf4f4;
  -webkit-clip-path: polygon(0 0, 100% 0, 50% 100%);
          clip-path: polygon(0 0, 100% 0, 50% 100%);
  content: "";
  height: 48px;
  left: 50%;
  position: absolute;
  top: 16px;
  transform: translateX(-50%);
  width: 133px;
}

#consultation_case_study.section_consultation_case .consultation_case_suggestion_ttl img,
#consultation_case_study.section_consultation_case .consultation_case_suggestion_ttl span {
  position: relative;
}

#consultation_case_study.section_consultation_case .consultation_case_suggestion_ttl img {
  display: block;
  height: 24px;
  width: 94px;
}

#consultation_case_study.section_consultation_case .consultation_case_suggestion {
  color: #444;
  font-size: 16px;
  line-height: 1.7;
  margin-bottom: 15px;
}

#consultation_case_study.section_consultation_case .consultation_case_emphasis {
  background: linear-gradient(transparent 40%, #feeec1 40%, #feeec1 90%, transparent 90%);
}

#consultation_case_study.section_consultation_case .consultation_case_advice p {
  color: #444;
  font-size: 16px;
  line-height: 1.7;
}

#consultation_case_study.section_consultation_case .consultation_case_advice p.consultation_case_advice_ttl {
  color: #df6952;
  font-size: 16px;
  font-weight: bold;
  line-height: 1.4;
}

#consultation_case_study.section_consultation_case .consultation_case_advice_head {
  align-items: center;
  display: flex;
  gap: 12px;
  margin-bottom: 8px;
}

#consultation_case_study.section_consultation_case .consultation_case_advice_photo {
  border-radius: 50%;
  flex-shrink: 0;
  height: 56px;
  -o-object-fit: cover;
     object-fit: cover;
  -o-object-position: center top;
     object-position: center top;
  width: 56px;
}

#consultation_case_study.section_consultation_case .consultation_case_advice_body {
  background: #fcf3e6;
  border-radius: 4px;
  padding: 13px 20px 11px;
  position: relative;
}

#consultation_case_study.section_consultation_case .consultation_case_advice_body p {
  position: relative;
}

#consultation_case_study.section_consultation_case .consultation_case_advice--photo .consultation_case_advice_body::before {
  background: #fcf3e6;
  -webkit-clip-path: polygon(50% 0, 93.3% 75%, 6.7% 75%);
          clip-path: polygon(50% 0, 93.3% 75%, 6.7% 75%);
  content: "";
  height: 50px;
  left: 61px;
  position: absolute;
  top: -22px;
  transform: rotate(-39.18deg);
  width: 34px;
}

#consultation_case_study.section_consultation_case .consultation_case_toggle {
  margin: 10px 0 0;
  text-align: center;
}

#consultation_case_study.section_consultation_case .consultation_case_toggle_btn {
  align-items: center;
  background: none;
  border: none;
  cursor: pointer;
  display: inline-flex;
  gap: 6px;
  padding: 0;
}

#consultation_case_study.section_consultation_case .consultation_case_toggle_btn[aria-expanded=true] .consultation_case_toggle_icon::after {
  transform: rotate(0deg);
}

#consultation_case_study.section_consultation_case .consultation_case_toggle_icon {
  background: url("/img/consultation_case_study/accordion_arrow.svg") no-repeat center/contain;
  display: block;
  height: 20px;
  position: relative;
  width: 20px;
}

#consultation_case_study.section_consultation_case .consultation_case_toggle_icon::after {
  background: url("/img/consultation_case_study/accordion_polygon.svg") no-repeat center/9px 8px;
  content: "";
  height: 10px;
  left: 5px;
  position: absolute;
  top: 5px;
  transform: rotate(180deg);
  width: 10px;
}

#consultation_case_study.section_consultation_case .consultation_case_toggle_txt {
  color: #59bec5;
  font-size: 14px;
  line-height: 1.7;
}

#consultation_case_study.section_consultation_case .consultation_case_like {
  margin-top: 16px;
}

#consultation_case_study.section_consultation_case .consultation_case_like_btn {
  align-items: center;
  background: #fff;
  border: 1px solid #ccc;
  border-radius: 5px;
  cursor: pointer;
  display: inline-flex;
  filter: drop-shadow(1px 2px 2px rgba(0, 0, 0, 0.15));
  gap: 5px;
  padding: 5px 9px;
}

#consultation_case_study.section_consultation_case .consultation_case_like_btn img {
  display: block;
  height: 24px;
  margin: -2px;
  width: 24px;
}

#consultation_case_study.section_consultation_case .consultation_case_like_btn:disabled {
  cursor: default;
}

#consultation_case_study.section_consultation_case .consultation_case_like_btn.is-voted {
  background: #fdf4f4;
  border-color: #ee827c;
}

#consultation_case_study.section_consultation_case .consultation_case_like_txt, #consultation_case_study.section_consultation_case .consultation_case_like_count {
  color: #444;
  line-height: 1.4;
}

#consultation_case_study.section_consultation_case .consultation_case_like_txt {
  font-size: 14px;
}

#consultation_case_study.section_consultation_case .consultation_case_like_count {
  align-items: center;
  align-self: stretch;
  border-left: 1px solid #ccc;
  display: flex;
  font-size: 16px;
  font-weight: bold;
  margin: -5px 0 -5px 10px;
  padding-left: 10px;
}

@media (max-width: 767px) {
  #consultation_case_study.section_consultation_case .consultation_case:not(.is-open) .consultation_case_reason .content_textarea {
    -webkit-box-orient: vertical;
    display: -webkit-box;
    -webkit-line-clamp: 4;
    overflow: hidden;
  }

  #consultation_case_study.section_consultation_case .consultation_case:not(.is-open) .consultation_case_detail,
#consultation_case_study.section_consultation_case .consultation_case:not(.is-open) .consultation_case_toggle--close {
    display: none;
  }

  #consultation_case_study.section_consultation_case .consultation_case.is-open .consultation_case_toggle--open {
    display: none;
  }
}

#consultation_case_study.section_consultation_case .consultation_case--more[hidden] {
  display: none;
}

#consultation_case_study.section_consultation_case .consultation_case_more {
  display: flex;
  justify-content: center;
  padding: 0 0 8px;
}

#consultation_case_study.section_consultation_case .consultation_case_more_btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  background: none;
  border: none;
  color: #59BEC5;
  font-weight: 700;
  font-size: 16px;
  cursor: pointer;
}

#consultation_case_study.section_consultation_case .consultation_case_more_icon {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 20px;
  height: 20px;
  margin-right: 5px;
  border-radius: 50%;
  background-color: #59BEC5;
  color: #fff;
  font-size: 0.7rem;
  line-height: 1;
}

@media (min-width: 768px) {
  #consultation_case_study.section_consultation_case {
    width: 100%;
  }

  #consultation_case_study.section_consultation_case .consultation_case {
    margin-bottom: 48px;
  }

  #consultation_case_study.section_consultation_case .consultation_case_summary {
    margin: 0 0 20px;
    padding: 16px 20px 20px;
  }

  #consultation_case_study.section_consultation_case .consultation_case_profile {
    margin-bottom: 10px;
  }

  #consultation_case_study.section_consultation_case .consultation_case_reason {
    padding: 20px;
  }

  #consultation_case_study.section_consultation_case .consultation_case_ttl {
    margin-top: 15px;
  }

  #consultation_case_study.section_consultation_case .consultation_case_suggestion_ttl {
    margin-bottom: 23px;
  }

  #consultation_case_study.section_consultation_case .consultation_case_suggestion {
    margin-bottom: 20px;
  }

  #consultation_case_study.section_consultation_case .consultation_case_advice_body {
    padding: 16px 20px 17px;
  }

  #consultation_case_study.section_consultation_case .consultation_case_toggle {
    display: none;
  }
}

.consultation_case_cv {
  margin-top: 32px;
}

.consultation_case_cv_ttl {
  color: #df6952;
  font-size: 16px;
  font-weight: bold;
  line-height: 1.4;
  margin-bottom: 16px;
  text-align: center;
}

@media (min-width: 768px) {
  .consultation_case_cv_ttl {
    align-items: center;
    display: flex;
    font-size: 20px;
    gap: 16px;
    justify-content: center;
  }

  .consultation_case_cv_ttl::before, .consultation_case_cv_ttl::after {
    background: url("/img/consultation_case_study/cta_line.svg") no-repeat center/contain;
    content: "";
    display: block;
    flex-shrink: 0;
    height: 56px;
    width: 41px;
  }

  .consultation_case_cv_ttl::after {
    transform: scaleX(-1);
  }
}

.section_resident_trend {
  margin: 0 auto 48px;
  width: calc(100% - 20px);
}

.section_resident_trend .resident_trend_lead {
  color: #444;
  font-size: 16px;
  line-height: 1.7;
  margin: 0 0 24px;
}

.section_resident_trend .resident_trend_lead_note {
  font-size: 12px;
}

.section_resident_trend .resident_trend_summary {
  background: #fcf3e6;
  border-radius: 5px;
  margin-bottom: 40px;
  padding: 10px;
}

.section_resident_trend .resident_trend_summary_ttl {
  color: #444;
  font-size: 16px;
  font-weight: bold;
  line-height: 1.7;
  margin: 0 0 8px;
}

.section_resident_trend .resident_trend_summary_txt {
  color: #444;
  font-size: 16px;
  line-height: 1.7;
  margin: 0 0 8px;
}

.section_resident_trend .resident_trend_summary_note {
  color: #444;
  font-size: 12px;
  line-height: 1.7;
  margin: 0;
}

.section_resident_trend .resident_trend_chart {
  margin-bottom: 32px;
}

.section_resident_trend .resident_trend_chart:last-child {
  margin-bottom: 0;
}

.section_resident_trend .resident_trend_chart_body {
  align-items: center;
  display: flex;
  gap: 16px;
}

.section_resident_trend .resident_trend_donut--pc {
  display: none;
}

.section_resident_trend .resident_trend_donut--sp {
  flex-shrink: 0;
  height: 200px;
  width: 200px;
}

.section_resident_trend .resident_trend_donut_ttl {
  fill: #444;
  font-weight: bold;
}

.section_resident_trend .resident_trend_donut--sp .resident_trend_donut_ttl {
  font-size: 16px;
}

.section_resident_trend .resident_trend_donut--pc .resident_trend_donut_ttl {
  font-size: 18px;
}

.section_resident_trend .resident_trend_donut_inside {
  fill: #fff;
  filter: drop-shadow(0 0 4px rgba(0, 0, 0, 0.3));
  font-size: 16px;
  font-weight: bold;
}

.section_resident_trend .resident_trend_donut_outside {
  fill: #444;
  font-size: 16px;
  font-weight: bold;
}

.section_resident_trend .resident_trend_donut_line {
  fill: none;
  stroke: #444;
  stroke-width: 1;
}

.section_resident_trend .resident_trend_legend li {
  align-items: center;
  color: #444;
  display: flex;
  font-size: 14px;
  gap: 7px;
  line-height: 1.7;
  margin-bottom: 8px;
}

.section_resident_trend .resident_trend_legend li:last-child {
  margin-bottom: 0;
}

.section_resident_trend .resident_trend_legend_mark {
  border-radius: 50%;
  flex-shrink: 0;
  height: 16px;
  width: 16px;
}

.section_resident_trend .resident_trend_chart_note {
  color: #444;
  font-size: 12px;
  line-height: 1.7;
  margin: 12px 0 0;
  text-align: center;
}

.section_resident_trend .resident_trend_note {
  color: #444;
  font-size: 16px;
  line-height: 1.7;
  margin: 32px 0 0;
}

@media (min-width: 768px) {
  .section_resident_trend {
    width: 100%;
  }

  .section_resident_trend .resident_trend_summary {
    margin-bottom: 64px;
    padding: 13px 11px;
  }

  .section_resident_trend .resident_trend_charts {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    justify-items: center;
    row-gap: 72px;
  }

  .section_resident_trend .resident_trend_chart {
    margin-bottom: 0;
    width: 100%;
  }

  .section_resident_trend .resident_trend_chart_body {
    justify-content: center;
    padding-bottom: var(--trend_overflow_bottom, 0px);
    padding-top: var(--trend_overflow_top, 0px);
  }

  .section_resident_trend .resident_trend_donut--pc {
    display: block;
    height: 360px;
    overflow: visible;
    width: 360px;
  }

  .section_resident_trend .resident_trend_donut--sp {
    display: none;
  }

  .section_resident_trend .resident_trend_legend {
    display: none;
  }

  .section_resident_trend .resident_trend_chart_note {
    font-size: 14px;
    margin-top: 16px;
  }

  .section_resident_trend .resident_trend_note {
    margin-top: 64px;
    text-align: center;
  }
}

.resident_trend_cv {
  margin-top: 32px;
}
/*# sourceMappingURL=details.css.map*/