/*----------------------------------------------------*/
/*                      color                         */
/*----------------------------------------------------*/
.bg-beige {
  background: #f6f3f0;
}

.shadow-bg {
  background: url("/img/common/shadow-bg.png") no-repeat top left/50%;
}

/*----------------------------------------------------*/
/*                      common                        */
/*----------------------------------------------------*/
.pagenation {
  color: #fff;
  display: flex;
  justify-content: center;
  flex-wrap: wrap;
  gap: 5vw;
  margin-top: 10%;
}
.pagenation .current {
  width: 15vw;
  border: 1px solid #26553b;
  padding: 10px 0;
  background: #26553b;
  text-align: center;
}
.pagenation a {
  color: #26553b;
  width: 15vw;
  padding: 10px 0;
  border: 1px solid #26553b;
  text-align: center;
  display: block;
}

.content-u {
  padding-top: 25%;
}

.btn01 a {
  color: #26553b;
  display: block;
  width: 80vw;
  padding: 5% 0;
  background: #fff;
  border: 1px solid #26553b;
  text-align: center;
  position: relative;
  transition: 0.3s;
}
.btn01 a::before {
  content: "";
  width: 2vw;
  height: 2vw;
  border-top: solid 1px #26553b;
  border-right: solid 1px #26553b;
  position: absolute;
  right: 20px;
  top: 50%;
  transform: translateY(-50%) rotate(45deg);
  transition: 0.3s;
}
.btn01 a:hover {
  color: #fff;
  background: #26553b;
}
.btn01 a:hover::before {
  border-top: solid 1px #fff;
  border-right: solid 1px #fff;
  right: 15px;
}

.ttl01 {
  color: #26553b;
  font-weight: 500;
  text-align: center;
  margin-bottom: 10%;
}
.ttl01 .ttl-en {
  font-size: 8vw;
}
.ttl01 .ttl-jp {
  font-size: 4vw;
}

/*btn-sec
=========================================================*/
#btn-cnt {
  padding: 10% 0;
}
#btn-cnt .inbox {
  display: block;
}
#btn-cnt .btn-style:nth-child(n+2) {
  margin-top: 5%;
}
#btn-cnt .btn-style a {
  color: #fff;
  display: block;
  width: 90%;
  padding: 35px 0;
  text-align: center;
  background: #a29e62;
  margin: 0 auto;
  position: relative;
}
#btn-cnt .btn-style a::before {
  content: "";
  width: 7px;
  height: 7px;
  border-top: solid 1px #fff;
  border-right: solid 1px #fff;
  position: absolute;
  right: 20px;
  top: 50%;
  transform: translateY(-50%) rotate(45deg);
  transition: 0.3s;
}
#btn-cnt .btn-style a span {
  padding-left: 6vw;
  position: relative;
}
#btn-cnt .btn-style a span::before {
  content: "";
  width: 5vw;
  height: 5vw;
  position: absolute;
  top: 50%;
  left: -10px;
  transform: translateY(-50%);
}
#btn-cnt .btn-style a:hover::before {
  right: 15px;
}
#btn-cnt .about-btn a span::before {
  background: url("/img/common/about-icn.png") no-repeat center/contain;
}
#btn-cnt .menu-btn a span::before {
  background: url("/img/common/menu-icn.png") no-repeat center/contain;
}
#btn-cnt .voice-btn a span::before {
  background: url("/img/common/voice-icn.png") no-repeat center/contain;
}
#btn-cnt .therapist-btn a span::before {
  background: url("/img/common/therapist-icn.png") no-repeat center/contain;
}

/*contact-sec
=========================================================*/
#contact-sec {
  padding: 25% 0 20%;
  background: url("/img/common/contact-bg.png") no-repeat center/cover;
}
#contact-sec .cnt {
  padding: 30% 0 10%;
  background: rgba(255, 255, 255, 0.7);
  position: relative;
}
#contact-sec .cnt .ttl01 {
  position: absolute;
  top: -10%;
  left: 50%;
  transform: translateX(-50%);
}
#contact-sec .cnt .tel {
  text-align: center;
}
#contact-sec .cnt .tel a span {
  padding-left: 6vw;
  position: relative;
}
#contact-sec .cnt .tel a span::before {
  content: "";
  width: 4vw;
  height: 4vw;
  background: url("/img/common/tel-icn.png") no-repeat center/contain;
  position: absolute;
  top: 60%;
  left: 0;
  transform: translateY(-50%);
}
#contact-sec .cnt .wrap {
  display: block;
}
#contact-sec .cnt .wrap .sns-cnt {
  margin-top: 8%;
  gap: 5vw;
  justify-content: center;
}
#contact-sec .cnt .wrap .btn01 {
  margin-top: 8%;
}
#contact-sec .cnt .wrap .btn01 a {
  background: none;
  width: 80vw;
  margin: 0 auto;
}
#contact-sec .cnt .wrap .btn01 a:hover {
  background: #26553b;
}

/*----------------------------------------------------*/
/*                      header                        */
/*----------------------------------------------------*/
#header .hd-logo {
  width: 25vw;
  position: absolute;
  top: 3%;
  left: 5%;
  z-index: 5;
}
#header .mv {
  margin-top: 25%;
  position: relative;
}
#header .mv::before {
  content: "";
  width: 100%;
  height: 15vw;
  background: #f6f3f0;
  position: absolute;
  bottom: 0;
  left: 0;
  z-index: -1;
}
#header .mv .catch {
  width: 60vw;
  position: absolute;
  bottom: 10%;
  left: 15%;
}
#header .mv .mv-img {
  text-align: center;
}
#header .mv .mv-img img {
  width: 83.3%;
  height: 75vw;
  -o-object-fit: cover;
     object-fit: cover;
  -o-object-position: center;
     object-position: center;
}
#header .sv {
  margin-top: 25%;
  position: relative;
}
#header .sv::before {
  content: "";
  width: 100%;
  height: 10vw;
  background: #f6f3f0;
  position: absolute;
  bottom: 0;
  left: 0;
  z-index: -1;
}
#header .sv .sv-ttl {
  color: #fff;
  font-size: 7vw;
  position: absolute;
  bottom: 5%;
  left: 15%;
}
#header .sv .sv-img {
  text-align: center;
}
#header .sv .sv-img img {
  width: 83.3%;
  height: 35vw;
  -o-object-fit: cover;
     object-fit: cover;
  -o-object-position: center;
     object-position: center;
}
#header .sidebtn {
  position: fixed;
  bottom: 20px;
  right: 20px;
  z-index: 50;
  text-align: center;
}
#header .sidebtn a img {
  transition: 0.3s;
}
#header .sidebtn a:hover img {
  transform: scale(0.95);
}
#header .sidebtn .side-line,
#header .sidebtn .side-hotpepper {
  margin-top: 5vw;
}
#header .sidebtn .side-line img,
#header .sidebtn .side-insta img {
  width: 8vw;
}
#header .sidebtn .side-hotpepper img {
  width: 13vw;
}
#header .sidebtn .side-top {
  margin-top: 13vw;
}
#header .sidebtn .side-top img {
  width: 10vw;
}

/*----------------------------------------------------*/
/*                      footer                        */
/*----------------------------------------------------*/
#footer {
  padding: 15% 0;
}
#footer .inbox {
  display: block;
}
#footer .ft-logo {
  width: 25vw;
  margin: 0 auto;
}
#footer .wrap-l {
  text-align: center;
}
#footer .wrap-l .tel {
  margin-top: 10%;
}
#footer .wrap-l .tel a span {
  padding-left: 6vw;
  position: relative;
}
#footer .wrap-l .tel a span::before {
  content: "";
  width: 4vw;
  height: 4vw;
  background: url("/img/common/tel-icn.png") no-repeat center/contain;
  position: absolute;
  top: 60%;
  left: 0;
  transform: translateY(-50%);
}
#footer .ft-nav {
  margin-top: 10%;
}
#footer .ft-nav .ft-nav-list {
  justify-content: center;
}
#footer .ft-nav .ft-nav-list .ft-nav-item a {
  padding: 0 2vw;
  transition: 0.3s;
}
#footer .ft-nav .ft-nav-list .ft-nav-item a:hover {
  color: #a29e62;
}
#footer .copy {
  color: #878787;
  text-align: center;
  margin-top: 10%;
}
#footer .copy a {
  color: #878787;
}

/*----------------------------------------------------*/
/*                        top                         */
/*----------------------------------------------------*/
#top-blog {
  padding: 15% 0 40%;
  position: relative;
}
#top-blog .inbox {
  display: block;
}
#top-blog .blog-list {
  margin-top: 10%;
}
#top-blog .blog-list .blog-item {
  width: 100%;
}
#top-blog .blog-list .blog-item:nth-child(n+2) {
  margin-top: 8%;
  padding-top: 8%;
  border-top: 1px solid #878787;
}
#top-blog .blog-list .blog-item a {
  transition: 0.3s;
}
#top-blog .blog-list .blog-item a .tag-list {
  margin-left: 5vw;
  gap: 2vw;
}
#top-blog .blog-list .blog-item a .tag-list .tag-item span {
  padding: 1vw 3vw;
  border: 1px solid #878787;
}
#top-blog .blog-list .blog-item a .blog-ttl {
  margin-top: 3%;
  white-space: nowrap;
  text-overflow: ellipsis;
  overflow: hidden;
}
#top-blog .blog-list .blog-item a:hover {
  opacity: 0.8;
}
#top-blog .btn01 {
  position: absolute;
  bottom: 10%;
  left: 50%;
  transform: translateX(-50%);
}
#top-blog .btn01 a {
  width: 70vw;
  background: none;
}
#top-blog .btn01 a:hover {
  background: #26553b;
}

#top-concept {
  padding: 20% 0 25%;
}
#top-concept .ttl {
  margin-bottom: 10%;
}
#top-concept .ttl .ttl-jp {
  margin-top: 3%;
}
#top-concept .wrap {
  display: block;
}
#top-concept .concept-img {
  width: 60vw;
  margin: 10% auto 0;
  position: relative;
}
#top-concept .concept-img::before {
  content: "";
  width: 100%;
  height: 100%;
  background: url("/img/top/concept-img02.png") no-repeat center/contain;
  position: absolute;
  bottom: -10%;
  right: -10%;
  z-index: -1;
}
#top-concept .concept-img::after {
  content: "";
  width: 50vw;
  height: 14vw;
  background: url("/img/top/concept-deco.png") no-repeat center/contain;
  position: absolute;
  bottom: -10%;
  right: -20%;
}
#top-concept .btn01 {
  margin-top: 10%;
}
#top-concept .btn01 a {
  margin: 0 auto;
}

#top-symptoms {
  padding: 20% 0;
  background: url("/img/top/symptoms-bg.png") no-repeat center right/auto;
  position: relative;
}
#top-symptoms .txt-cnt {
  margin: 0 0 0 auto;
}
#top-symptoms .txt-cnt .ttl {
  margin-bottom: 10%;
}
#top-symptoms .txt-cnt .ttl .ttl-jp {
  margin-top: 3%;
}
#top-symptoms .txt-cnt .sym-list .sym-item {
  padding-left: 8vw;
  position: relative;
}
#top-symptoms .txt-cnt .sym-list .sym-item:nth-child(n+2) {
  margin-top: 5%;
}
#top-symptoms .txt-cnt .sym-list .sym-item::before {
  content: "";
  width: 4vw;
  height: 4vw;
  background: url("/img/top/check.png") no-repeat center/contain;
  position: absolute;
  top: 50%;
  left: 0;
  transform: translateY(-50%);
}
#top-symptoms .sym-img {
  width: 90vw;
  margin: 10% 0 0 0;
}

#top-service {
  padding: 20% 0;
  position: relative;
}
#top-service::before {
  content: "";
  width: 95%;
  height: 80vw;
  background: #ccdfd0;
  position: absolute;
  bottom: 0;
  left: 50%;
  transform: translateX(-50%);
  z-index: -1;
}
#top-service::after {
  content: "";
  width: 100%;
  height: 45vw;
  background: #f6f3f0;
  position: absolute;
  bottom: 0;
  left: 0;
  z-index: -2;
}
#top-service .service-list {
  gap: 5vw;
}
#top-service .service-list .service-item {
  width: 42vw;
  text-align: center;
}
#top-service .service-list .service-item .nm {
  margin-bottom: 8%;
}
#top-service .service-list .service-item .nm span {
  padding: 0 10px;
  position: relative;
}
#top-service .service-list .service-item .nm span::before, #top-service .service-list .service-item .nm span::after {
  content: "";
  width: 6px;
  height: 1px;
  background: #a29e62;
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
}
#top-service .service-list .service-item .nm span::before {
  left: 0;
}
#top-service .service-list .service-item .nm span::after {
  right: 0;
}
#top-service .service-list .service-item .service-ttl {
  margin-top: 5%;
}
#top-service .service-list .service-item .service-ttl p:nth-child(n+2) {
  color: #929d94;
}
#top-service .btn01 {
  margin-top: 10%;
}
#top-service .btn01 a {
  margin: 0 auto;
  border: none;
}

#top-access {
  padding: 20% 0;
}
#top-access .cnt {
  display: block;
}
#top-access .map {
  width: 100%;
  height: 55vw;
}
#top-access .map iframe {
  width: 100%;
  height: 100%;
}
#top-access .info-tbl {
  border-collapse: separate;
  border-spacing: 0 5vw;
  margin-top: 5%;
}
#top-access .info-tbl tr th {
  padding-right: 5vw;
  border-right: 1px solid #26553b;
  white-space: nowrap;
}
#top-access .info-tbl tr td {
  padding-left: 5vw;
}
#top-access .access-img {
  width: 50vw;
  margin: 10% auto 0;
}

/*----------------------------------------------------*/
/*                      about                         */
/*----------------------------------------------------*/
#about #therapist {
  padding-bottom: 25%;
}
#about #therapist .wrap {
  display: block;
}
#about #therapist .txt-cnt .name {
  padding: 3% 0;
  text-align: center;
  border-top: 1px solid #a29e62;
  border-bottom: 1px solid #a29e62;
}
#about #therapist .txt-cnt .txt {
  margin-top: 5%;
}
#about #therapist .therapist-img {
  width: 55vw;
  margin: 8% auto 0;
  position: relative;
}
#about #therapist .therapist-img::before {
  content: "";
  width: 100%;
  height: 100%;
  background: url("/img/about/therapist-img02.png") no-repeat center/contain;
  position: absolute;
  bottom: -10%;
  right: -10%;
}
#about #therapist .therapist-img::after {
  content: "";
  width: 50vw;
  height: 14vw;
  background: url("/img/about/therapist-deco.png") no-repeat center/contain;
  position: absolute;
  bottom: -15%;
  right: -20%;
  z-index: 3;
}
#about #therapist .therapist-img img {
  position: relative;
  z-index: 2;
}
#about #reason {
  padding: 25% 0;
}
#about #reason .reason-list {
  gap: 10vw;
}
#about #reason .reason-list .reason-item {
  padding-bottom: 10%;
  border-bottom: 3px double #a29e62;
}
#about #reason .reason-list .reason-item .nm {
  text-align: center;
  margin-bottom: 5%;
}
#about #reason .reason-list .reason-item .nm span {
  padding: 0 10px;
  position: relative;
}
#about #reason .reason-list .reason-item .nm span::before, #about #reason .reason-list .reason-item .nm span::after {
  content: "";
  width: 6px;
  height: 1px;
  background: #a29e62;
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
}
#about #reason .reason-list .reason-item .nm span::before {
  left: 0;
}
#about #reason .reason-list .reason-item .nm span::after {
  right: 0;
}
#about #reason .reason-list .reason-item .reason-img {
  width: 55vw;
  margin: 0 auto;
}
#about #reason .reason-list .reason-item .reason-ttl {
  text-align: center;
  margin-top: 5%;
}
#about #reason .reason-list .reason-item .reason-ttl p:nth-child(n+2) {
  color: #d3d2bb;
  margin-top: 2%;
}
#about #reason .reason-list .reason-item .txt {
  margin-top: 5%;
}
#about #service {
  padding: 0 0 20% 0;
  position: relative;
}
#about #service::before {
  content: "";
  width: 100%;
  height: 55vw;
  background: #f6f3f0;
  position: absolute;
  bottom: 0;
  left: 0;
  z-index: -2;
}
#about #service::after {
  content: "";
  width: 95%;
  height: 80%;
  background: #ccdfd0;
  position: absolute;
  bottom: 0;
  left: 50%;
  transform: translateX(-50%);
  z-index: -2;
}
#about #service .wrap {
  display: block;
}
#about #service .wrap .service-img {
  width: 50vw;
  margin: 8% auto 0;
}
#about #service .service-cnt {
  margin-top: 10%;
}
#about #service .service-cnt .service-style {
  padding: 8% 0;
  border-top: 1px solid #a29e62;
  border-bottom: 1px solid #a29e62;
  background: #fff;
}
#about #service .service-cnt .service-style:nth-child(n+2) {
  margin-top: 8%;
}
#about #service .service-cnt .service-style .service-ttl {
  text-align: center;
}
#about #service .service-cnt .service-style .txt {
  padding: 0 5%;
  margin-top: 5%;
}

/*----------------------------------------------------*/
/*                      menu                          */
/*----------------------------------------------------*/
#menu #all-menu {
  padding-bottom: 10%;
}
#menu #all-menu .menu-style {
  width: 100%;
  padding: 10% 0 5% 0;
  border-top: 1px solid #a29e62;
  background: #fff;
}
#menu #all-menu .menu-style:nth-child(n+3) {
  margin-top: 8%;
}
#menu #all-menu .menu-style .menu-ttl {
  text-align: center;
}
#menu #all-menu .menu-style .price-tbl {
  width: 90%;
  margin: 8% auto 0;
}
#menu #all-menu .menu-style .price-tbl tr:nth-child(n+2) {
  border-top: 1px solid #d3d2bb;
}
#menu #all-menu .menu-style .price-tbl tr th,
#menu #all-menu .menu-style .price-tbl tr td {
  padding: 5% 0;
}
#menu #all-menu .menu-style .price-tbl tr td {
  text-align: right;
}

/*----------------------------------------------------*/
/*                      voice                         */
/*----------------------------------------------------*/
#voice #all-voice {
  padding-bottom: 10%;
}
#voice #all-voice .voice-style {
  width: 100%;
  padding: 10% 0;
  border-top: 1px solid #a29e62;
  background: #fff;
}
#voice #all-voice .voice-style:nth-child(n+3) {
  margin-top: 8%;
}
#voice #all-voice .voice-style .wrap {
  padding: 0 5%;
}
#voice #all-voice .voice-style .review {
  margin-top: 8%;
}
#voice #all-voice .voice-style .review .review-ttl span {
  padding-right: 5vw;
  border-right: 1px solid #a29e62;
}
#voice #all-voice .voice-style .review .star {
  margin-left: 5%;
  gap: 2vw;
}
#voice #all-voice .voice-style .review .star img {
  width: 8vw;
}
#voice #all-voice .voice-style .txt {
  margin-top: 8%;
  padding-top: 8%;
  border-top: 1px solid #878787;
}

/*----------------------------------------------------*/
/*                        access                      */
/*----------------------------------------------------*/
#access #infomation .inbox {
  padding-bottom: 15%;
  border-bottom: 1px solid #a29e62;
}
#access #infomation .map {
  width: 100%;
  height: 55vw;
  margin: 0 auto;
}
#access #infomation .map iframe {
  width: 100%;
  height: 100%;
}
#access #infomation .info-tbl {
  width: 100%;
  border-collapse: separate;
  border-spacing: 0 5%;
  margin: 10% auto 0;
}
#access #infomation .info-tbl tr th {
  padding-right: 5%;
  border-right: 1px solid #26553b;
  white-space: nowrap;
}
#access #infomation .info-tbl tr td {
  padding-left: 5%;
}

/*----------------------------------------------------*/
/*                       contact                      */
/*----------------------------------------------------*/
#contact #mail-form {
  padding: 25% 0;
}

/*----------------------------------------------------*/
/*                        blog                        */
/*----------------------------------------------------*/
#blog #blog-cnt {
  padding: 25% 0;
}
#blog #blog-cnt .category-btn {
  margin-top: 10%;
  padding: 8% 0;
  border: 1px solid #26553b;
}
#blog #blog-cnt .category-btn .category-list {
  padding: 0 5%;
  gap: 5vw;
}
#blog #blog-cnt .category-btn .category-list .category-item a {
  color: #fff;
  font-size: 3.2vw;
  padding: 1vw 5vw;
  background: #26553b;
}
#blog #blog-cnt .blog-list {
  margin-top: 15%;
}
#blog #blog-cnt .blog-list .blog-item {
  padding: 10% 0;
  border-top: 1px solid #26553b;
}
#blog #blog-cnt .blog-list .blog-item:last-child {
  border-bottom: 1px solid #26553b;
}
#blog #blog-cnt .blog-list .blog-item a .wrap {
  display: block;
}
#blog #blog-cnt .blog-list .blog-item a .tag-list {
  gap: 10px;
  margin-top: 5%;
}
#blog #blog-cnt .blog-list .blog-item a .tag-list .tag-item span {
  color: #fff;
  padding: 1vw 3vw;
  background: #26553b;
}
#blog #blog-cnt .blog-list .blog-item a time {
  color: #26553b;
  font-weight: 700;
}
#blog #blog-cnt .blog-list .blog-item a .blog-item-ttl {
  color: #26553b;
  font-size: 5.5vw;
  font-weight: 700;
}
#blog #blog-cnt .blog-list .blog-item a .txt {
  margin-top: 3%;
}
#blog #blog-cnt .blog-list .blog-item a .blog-thumb {
  display: none;
}

#detail-wrp {
  padding-bottom: 25%;
}
#detail-wrp .blog-tag-list {
  gap: 8px;
  margin-bottom: 5%;
}
#detail-wrp .blog-tag-list .blog-tag-item span {
  color: #fff;
  padding: 1vw 3vw;
  background: #26553b;
}
#detail-wrp .blog-ttl {
  font-size: 5.5vw;
  margin-bottom: 5%;
}
#detail-wrp .txt {
  margin-top: 5%;
}

.page-btn {
  font-size: 3.8vw;
  margin-top: 10%;
  position: relative;
}
.page-btn .left {
  left: 0;
  position: absolute;
  font-weight: 600;
}
.page-btn .text-c {
  text-align: center;
}
.page-btn .right {
  right: 0;
  position: absolute;
  font-weight: 600;
}

/*----------------------------------------------------*/
/*                       complete                     */
/*----------------------------------------------------*/
#complete .complete-box {
  padding-bottom: 25%;
  margin-top: 10%;
  text-align: center;
}

/*----------------------------------------------------*/
/*                      sitemap                       */
/*----------------------------------------------------*/
#site .sitemap-cnt {
  padding-bottom: 25%;
}
#site .sitemap-cnt ul {
  margin-top: 10%;
}
#site .sitemap-cnt ul li {
  padding: 0 0 2% 5%;
  border-bottom: 1px dotted #26553b;
}
#site .sitemap-cnt ul li:nth-child(n+2) {
  margin-top: 10px;
}
#site .sitemap-cnt ul li a {
  padding-left: 10%;
  position: relative;
}
#site .sitemap-cnt ul li a::before {
  content: "";
  width: 2vw;
  height: 2vw;
  border-top: 1px solid #26553b;
  border-right: 1px solid #26553b;
  position: absolute;
  top: 50%;
  left: 0;
  transform: rotate(45deg) translateY(-50%);
}

/*----------------------------------------------------*/
/*                      privacy                       */
/*----------------------------------------------------*/
#privacy .privacy {
  padding-bottom: 25%;
}
#privacy .privacy-box {
  margin-top: 10%;
}
#privacy .privacy-box p {
  margin-top: 3%;
}
#privacy .privacy-box .ttl04 {
  color: #26553b;
  padding-bottom: 5%;
  border-bottom: 2px solid #26553b;
}

/*----------------------------------------------------*/
/*                        404                         */
/*----------------------------------------------------*/
#notfound .item-box {
  text-align: center;
  padding-bottom: 25%;
}
#notfound .not-found-txt {
  margin-top: 10%;
}/*# sourceMappingURL=style_sp.css.map */