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

         COMMON

-----------------------*/
@media screen and (min-width: 1921px) {
  .mv img {
    width: 100%;
  }
  html {
    font-size: 62.5%;
  }
}
/* リセット */
html {
  font-size: 62.5%;
  /*scroll-behavior: smooth;*/
  overflow-x: hidden;
  overflow-y: scroll;
}
@media only screen and (max-width: 559px) {
  html {
    font-size: 62.5%;
  }
}

html,
body {
  height: 100%;
}
@media only screen and (max-width: 559px) {
  html,
  body {
    height: 100dvh;
  }
}

body {
  width: 100%;
  color: var(--baseColor);
  font-size: clamp(1.4rem, 1.3029126214rem + 0.2588996764vw, 1.8rem);
  font-weight: 600;
  line-height: 1.75;
  letter-spacing: 0;
  font-feature-settings: "palt";
  font-family: "Shippori Mincho B1";
}

.wrapper {
  max-width: 1366px;
  padding: 0 2rem;
  margin: 0 auto;
  min-height: auto;
}
@media only screen and (max-width: 1368px) {
  .wrapper {
    width: 100%;
    padding: 0 5vw;
  }
}
@media only screen and (max-width: 559px) {
  .wrapper {
    padding: 0 6%;
  }
}
@media only screen and (max-width: 1368px) {
  .wrapper {
    max-width: 100%;
    width: 100%;
  }
}

p {
  margin: 0;
  text-align: justify;
}

a {
  text-decoration: none;
  color: inherit;
  transition: 0.4s;
}

a:hover,
a:focus {
  opacity: 0.8;
  text-decoration: none;
  color: inherit;
}

a:hover {
  transition: 0.4s;
}

img {
  max-width: 100%;
  height: auto;
  vertical-align: bottom;
}

video {
  width: 100%;
  vertical-align: bottom;
}

input,
textarea,
select,
button {
  font-family: inherit;
}

.pc {
  display: block;
}

.sp {
  display: none;
}

.text-c {
  text-align: center;
}

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

.text-r {
  text-align: right;
}

.text-j {
  text-align: justify;
}

.corm {
  font-family: "Cormorant Garamond";
  font-weight: 400;
}

.flex {
  display: flex;
}

/* iOSでのデフォルトスタイルをリセット */
input[type=submit],
input[type=button] {
  -webkit-box-sizing: content-box;
  -webkit-appearance: button;
  appearance: button;
  border: none;
  box-sizing: border-box;
  cursor: pointer;
}

input[type=submit]::-webkit-search-decoration,
input[type=button]::-webkit-search-decoration {
  display: none;
}

input[type=submit]::focus,
input[type=button]::focus {
  outline-offset: -2px;
}

input,
button,
textarea,
select,
.entry input[type=url],
input[type=email],
.entry input[type=text] {
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  border-radius: 0;
}

@media only screen and (max-width: 559px) {
  .pc {
    display: none;
  }
  .sp {
    display: block;
  }
}
@media only screen and (max-width: 559px) {
  /*セレクトボックスの矢印カスタマイズ*/
  .shelf-nav-sp {
    width: 100%;
    margin: 3rem auto 0;
    position: relative;
  }
  .shelf-nav-sp::before {
    content: "";
    width: 0;
    height: 0;
    border-style: solid;
    border-width: 1rem 0.7rem 0 0.7rem;
    border-color: var(--mainColor) transparent transparent transparent;
    position: absolute;
    top: 55%;
    right: 1.5rem;
    transform: translateY(-50%);
    pointer-events: none;
  }
  .breadcrumb.form-control {
    width: 100%;
    padding: 1rem;
    /*デフォルトの矢印を削除*/
    -webkit-appearance: none;
    appearance: none;
  }
}
.grad_ihan100 {
  background-image: linear-gradient(45deg, #b5c2e3, #f1e9ef, #c7a6bf);
  background-image: -webkit-linear-gradient(45deg, #b5c2e3, #f1e9ef, #c7a6bf);
}

.grad_lhca100 {
  background-image: linear-gradient(45deg, #d9c8e1, #f9cfc9, #f6f6d7);
  background-image: -webkit-linear-gradient(45deg, #d9c8e1, #f9cfc9, #f6f6d7);
}

.grad_ihan30 {
  background-image: linear-gradient(45deg, rgba(181, 194, 227, 0.3), rgba(241, 233, 239, 0.3), rgba(199, 166, 191, 0.3));
  background-image: -webkit-linear-gradient(45deg, rgba(181, 194, 227, 0.3), rgba(241, 233, 239, 0.3), rgba(199, 166, 191, 0.3));
}

.grad_lhca30 {
  background-image: linear-gradient(45deg, rgba(217, 200, 225, 0.3), rgba(249, 207, 201, 0.3), rgba(246, 246, 215, 0.3));
  background-image: -webkit-linear-gradient(45deg, rgba(217, 200, 225, 0.3), rgba(249, 207, 201, 0.3), rgba(246, 246, 215, 0.3));
}

.grad_ihan50 {
  background-image: linear-gradient(45deg, rgba(181, 194, 227, 0.5), rgba(241, 233, 239, 0.5), rgba(199, 166, 191, 0.5));
  background-image: -webkit-linear-gradient(45deg, rgba(181, 194, 227, 0.5), rgba(241, 233, 239, 0.5), rgba(199, 166, 191, 0.5));
}

.grad_lhca50 {
  background-image: linear-gradient(45deg, rgba(217, 200, 225, 0.5), rgba(249, 207, 201, 0.5), rgba(246, 246, 215, 0.5));
  background-image: -webkit-linear-gradient(45deg, rgba(217, 200, 225, 0.5), rgba(249, 207, 201, 0.5), rgba(246, 246, 215, 0.5));
}

.box {
  margin-bottom: 0;
  background-color: transparent;
  border: none;
  box-shadow: none;
}

.wide {
  position: relative;
  width: 100vw;
  left: 50%;
  transform: translateX(-50%);
}

.table-bordered span.required {
  background: var(--mainColor);
  color: var(--colorW) !important;
}

footer.main-footer {
  border-top: none;
}

.modal-open {
  overflow: visible;
}

.page-detail-top .content-header {
  display: none;
}

/*under-header*/
.content-header {
  margin-bottom: 0;
  border-bottom: none;
}

.page-header {
  border-bottom: none;
  padding: 0;
  margin: 0;
}

select::placeholder {
  color: #b6b7b7;
}

.sec_ttlG {
  display: flex;
  flex-direction: column;
  align-items: center;
}
.sec_ttlG .sec_icon {
  line-height: 1lh;
}
.sec_ttlG .sec_icon--ver2 {
  margin-block: -8rem 1rem;
}
.sec_ttlG .sec_ttl {
  font-size: clamp(2.4rem, 1.9631067961rem + 1.1650485437vw, 4.2rem);
  font-weight: 500;
  letter-spacing: 0.1em;
  padding-block: 1.5rem;
  line-height: 1;
  text-align: center;
}
.sec_ttlG .sec_ttl span {
  font-size: clamp(1.4rem, 1.0601941748rem + 0.9061488673vw, 2.8rem);
  display: block;
  margin-bottom: 2rem;
  letter-spacing: 0.05em;
}
@media only screen and (max-width: 559px) {
  .sec_ttlG .sec_ttl span {
    letter-spacing: 0;
  }
}
@media only screen and (max-width: 559px) {
  .sec_ttlG .sec_ttl {
    padding-inline: 0.8rem;
    padding-block: 1rem;
  }
}
.sec_ttlG .sec_enttl {
  font-size: clamp(1.2rem, 1.054368932rem + 0.3883495146vw, 1.8rem);
  font-weight: 500;
  letter-spacing: 0.4em;
  margin-bottom: clamp(2.5rem, 2.1359223301rem + 0.9708737864vw, 4rem);
  line-height: 1;
}

.sec_ttlG--ver2 {
  display: flex;
  flex-direction: column;
  align-items: center;
  position: relative;
}
.sec_ttlG--ver2 .sec_icon {
  line-height: 1lh;
}
@media only screen and (max-width: 559px) {
  .sec_ttlG--ver2 .sec_icon img {
    width: 18.2rem;
    height: auto;
  }
}
.sec_ttlG--ver2 div {
  position: absolute;
  top: 50%;
  margin-bottom: clamp(4rem, 3.2718446602rem + 1.9417475728vw, 7rem);
}
.sec_ttlG--ver2 .sec_ttl {
  font-size: clamp(2.9rem, 2.4388349515rem + 1.2297734628vw, 4.8rem);
  font-weight: 500;
  letter-spacing: 0.1em;
  padding-block: 1.5rem;
  line-height: 1;
  text-align: center;
}
@media only screen and (max-width: 559px) {
  .sec_ttlG--ver2 .sec_ttl {
    padding-inline: 0.8rem;
    padding-block: 1rem;
  }
}
.sec_ttlG--ver2 .sec_enttl {
  font-size: clamp(1.4rem, 1.2058252427rem + 0.5177993528vw, 2.2rem);
  font-weight: 400;
  letter-spacing: 0.2em;
  text-align: center;
  margin-bottom: clamp(2.5rem, 2.1359223301rem + 0.9708737864vw, 4rem);
  line-height: 1;
}

@media only screen and (max-width: 559px) {
  .ihan .sec_ttlG .sec_icon img {
    width: 4.6rem;
    height: 4.1rem;
  }
}

@media only screen and (max-width: 559px) {
  .ihan .sec_ttlG .sec_icon--ver2 img {
    width: 10.8rem;
    height: 9.7rem;
  }
}

@media only screen and (max-width: 559px) {
  .ihan .sec_ttlG--ver2 .sec_icon img {
    width: 17.3rem;
    height: 15.4rem;
  }
}

@media only screen and (max-width: 559px) {
  .lhca .sec_ttlG .sec_ttl {
    padding-block: 0.8rem;
  }
  .lhca .sec_ttlG .sec_icon img {
    width: 4.1rem;
    height: 3.3rem;
  }
  .lhca .sec_ttlG--ver2 .sec_ttl {
    padding-block: 1.3rem;
  }
  .lhca .sec_ttlG--ver2 .sec_icon img {
    width: 18.2rem;
    height: 14.6rem;
  }
}

.o-btn {
  text-align: center;
}

.o-btn__link {
  font-size: clamp(1.6rem, 1.5514563107rem + 0.1294498382vw, 1.8rem);
  border: 1px solid;
  text-align: center;
  position: relative;
  font-weight: 500;
  border-radius: 0.5rem;
  font-family: "Shippori Mincho B1";
  line-height: 1;
  display: block;
  margin-inline: auto;
  height: 5rem;
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 0.5rem;
  padding: 0 5rem;
  width: fit-content;
  transition: 0.5s;
  letter-spacing: 0.05em;
}
.o-btn__link:hover {
  opacity: 1;
}
@media only screen and (max-width: 559px) {
  .o-btn__link {
    width: 100%;
  }
}
.o-btn__link--w {
  color: var(--colorW);
  border-color: var(--colorW);
}
.o-btn__link--w:hover {
  color: var(--mainColor);
}

.ihan .o-btn__link:visited {
  color: #fff;
}
.ihan .o-btn__link:hover {
  color: #fff;
  background-color: var(--mainColor_ihan);
}
.ihan .o-btn__link--bg:hover {
  opacity: 0.8;
  background-color: var(--subColor_ihan);
}

.lhcc .o-btn__link {
  border-color: var(--mainColor);
  color: var(--mainColor);
}
.lhcc .o-btn__link:visited {
  color: #fff;
}
.lhcc .o-btn__link:hover {
  color: #fff;
  background-color: var(--mainColor_lhcc);
}
.lhcc .o-btn__link--bg:hover {
  opacity: 0.8;
  background-color: var(--main50Color_lhcc);
  color: var(--mainColor);
}
.lhcc .o-btn__link--w {
  color: var(--colorW);
  border-color: var(--colorW);
}

.o-card {
  display: grid;
  margin-bottom: clamp(2.5rem, 2.1359223301rem + 0.9708737864vw, 4rem);
}
.o-card--2wrap {
  grid-template-columns: repeat(2, 1fr);
  gap: 6rem;
}
.o-card--3wrap {
  grid-template-columns: repeat(3, 1fr);
  gap: 5.5rem 5rem;
}
@media only screen and (max-width: 559px) {
  .o-card--3wrap {
    grid-template-columns: repeat(2, 1fr);
    gap: 1.5rem 2rem;
  }
}
.o-card--4wrap {
  grid-template-columns: repeat(4, 1fr);
  gap: 4rem 3rem;
}
@media only screen and (max-width: 559px) {
  .o-card--4wrap {
    grid-template-columns: repeat(2, 1fr);
    gap: 1.5rem 2rem;
  }
}
.o-card--3wrap_sp1 {
  grid-template-columns: repeat(3, 1fr);
  gap: 5.5rem 5rem;
}
@media only screen and (max-width: 559px) {
  .o-card--3wrap_sp1 {
    grid-template-columns: repeat(1, 1fr);
    gap: 3rem;
  }
}
.o-card--4wrap_sp1 {
  grid-template-columns: repeat(4, 1fr);
  gap: 3rem;
}
@media only screen and (max-width: 559px) {
  .o-card--4wrap_sp1 {
    grid-template-columns: repeat(1, 1fr);
    gap: 2.5rem;
  }
}
.o-card__catflex {
  display: flex;
  gap: 2rem 0.5rem;
  flex-wrap: wrap;
}
.o-card__text--3 {
  -webkit-line-clamp: 3;
  line-clamp: 3;
}
.o-card__list {
  display: flex;
  flex-wrap: wrap;
  font-size: 1.2rem;
}
.o-card__listitem {
  line-height: 1.5;
}

.o-card__link {
  display: flex;
  flex-direction: column;
  height: 100%;
}

.o-card__img {
  overflow: hidden;
  aspect-ratio: 7/4;
}
.o-card__img img {
  border-radius: 0.5rem;
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.o-card__cat {
  width: fit-content;
  font-weight: 500;
  font-size: clamp(1rem, 0.9029126214rem + 0.2588996764vw, 1.4rem);
  padding: 0.2rem 1.5rem;
  border-radius: 2rem;
  margin-top: -1.5rem;
  position: relative;
}

.o-card__cat--border {
  border: solid 1px;
}

.o-card__ttl {
  font-size: clamp(1.8rem, 1.7029126214rem + 0.2588996764vw, 2.2rem);
  font-weight: 600;
  display: -webkit-box;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 2;
  overflow: hidden;
  text-overflow: ellipsis;
  line-height: 1.4;
  margin-top: 1.5rem;
}
@media only screen and (max-width: 559px) {
  .o-card__ttl {
    height: auto;
    margin-inline: auto;
    margin-top: 1rem;
  }
}

.o-card__text_wrap {
  flex-grow: 1;
  margin-top: 1.2rem;
}
@media only screen and (max-width: 559px) {
  .o-card__text_wrap {
    margin-top: 1rem;
  }
}

.o-card__text {
  font-size: clamp(1.2rem, 1.1029126214rem + 0.2588996764vw, 1.6rem);
  font-weight: 500;
  line-height: 1.5;
  display: -webkit-box;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 2;
  overflow: hidden;
  text-overflow: ellipsis;
  margin-bottom: 1.5rem;
}
@media only screen and (max-width: 559px) {
  .o-card__text {
    margin-bottom: 0.5rem;
  }
}

.o-card__date {
  font-weight: 500;
  font-size: clamp(1rem, 0.9029126214rem + 0.2588996764vw, 1.4rem);
  margin-top: auto;
}

.o-flex {
  display: flex;
  gap: 6rem;
}
@media only screen and (max-width: 559px) {
  .o-flex {
    flex-direction: column-reverse;
    gap: 2.5rem;
  }
}
.o-flex__item {
  width: 100%;
}
.o-flex__item figure {
  position: relative;
}
.o-flex__ttlG {
  margin-bottom: clamp(2.5rem, 2.2572815534rem + 0.6472491909vw, 3.5rem);
  position: relative;
  align-items: flex-start;
  z-index: 10;
}
.o-flex__ttlG::after {
  content: "";
  position: absolute;
  top: -17rem;
  left: 50%;
}
.o-flex__ttlG--mem::after {
  background: url(../img/lhca_ftr_member_img01.webp) no-repeat center center/contain;
  width: 54.8rem;
  height: 37.9rem;
  transform: translateX(-50%);
  z-index: -2;
  pointer-events: none;
}
@media only screen and (max-width: 559px) {
  .o-flex__ttlG--mem::after {
    width: 32.9rem;
    height: 22.7rem;
    top: -12rem;
    left: 57%;
  }
}
.o-flex__ttl {
  font-size: clamp(2.6rem, 2.2116504854rem + 1.0355987055vw, 4.2rem);
  letter-spacing: 0.1em;
}
@media only screen and (max-width: 559px) {
  .o-flex__ttl {
    margin-bottom: 1rem;
  }
}
.o-flex__enttl {
  font-size: clamp(1.1rem, 0.9300970874rem + 0.4530744337vw, 1.8rem);
  letter-spacing: 0.2em;
}
.o-flex__text {
  font-size: clamp(1.4rem, 1.3514563107rem + 0.1294498382vw, 1.6rem);
  letter-spacing: 0.05em;
  margin-bottom: clamp(3.5rem, 3.2572815534rem + 0.6472491909vw, 4.5rem);
  position: relative;
  z-index: 11;
}
.o-flex .o-btn__link {
  margin-inline: inherit;
}
.o-flex--c {
  justify-content: center;
}
.o-flex--b {
  justify-content: space-between;
}
.o-flex--e {
  justify-content: flex-end;
}
.o-flex__item {
  width: calc((100% - 6rem) / 2);
}
.o-flex__item--1 {
  width: calc((100% - 6rem) / 3);
}
.o-flex__item--2 {
  width: calc((100% - 6rem) / 3 * 2);
}

.o-flex--ver2 {
  display: flex;
  justify-content: flex-end;
  gap: 4rem;
}
@media only screen and (max-width: 559px) {
  .o-flex--ver2 {
    flex-direction: column-reverse;
    gap: 0;
  }
}
.o-flex--ver2__item__l {
  width: calc(100% - 4rem - 48.4375vw);
  padding-left: 2rem;
  margin-left: calc((100% - 136.6rem) / 2);
}
@media only screen and (max-width: 559px) {
  .o-flex--ver2__item__l {
    width: 88%;
    padding-left: 0;
    margin-left: 0;
    margin: auto;
  }
}
.o-flex--ver2__item__r {
  width: 48.4375vw;
  flex-shrink: 0;
}
@media only screen and (max-width: 559px) {
  .o-flex--ver2__item__r {
    width: 100%;
    flex-shrink: 0;
    display: flex;
    justify-content: flex-end;
  }
}
@media only screen and (min-width: 2560px) {
  .o-flex--ver2__item__r img {
    width: 100%;
  }
}
@media only screen and (max-width: 559px) {
  .o-flex--ver2__item__r img {
    width: 94%;
  }
}
.o-flex--ver2__ttlgroup {
  display: flex;
  flex-direction: column;
  position: relative;
  left: 0;
}
.o-flex--ver2__ttl {
  font-size: clamp(2.1rem, 1.7359223301rem + 0.9708737864vw, 3.6rem);
  letter-spacing: 0.05em;
  font-weight: 600;
  line-height: 1.4;
  padding-block: clamp(1rem, 0.3932038835rem + 1.6181229773vw, 3.5rem) clamp(1rem, 0.8786407767rem + 0.3236245955vw, 1.5rem);
  padding-left: calc((100% - 136.6rem) / 2);
  position: relative;
  left: 0;
}
@media only screen and (max-width: 559px) {
  .o-flex--ver2__ttl {
    padding-left: 0;
  }
}
.o-flex--ver2__ttl::after {
  content: "";
  width: 100vw;
  height: 1px;
  background-color: var(--mainColor);
  display: block;
  position: absolute;
  bottom: 0;
  left: 0;
  margin-left: calc((100% - 136.6rem) / 2);
}
@media only screen and (min-width: 2560px) {
  .o-flex--ver2__ttl::after {
    left: calc((100% - 136.6rem) / 2);
  }
}
@media only screen and (max-width: 559px) {
  .o-flex--ver2__ttl::after {
    left: inherit;
    right: 0;
    margin-left: auto;
  }
}
.o-flex--ver2__enttl {
  font-size: clamp(1.3rem, 1.0815533981rem + 0.5825242718vw, 2.2rem);
  letter-spacing: 0.05em;
  font-weight: 400;
  padding-left: calc((100% - 136.6rem) / 2);
  padding-top: 0.5rem;
}
@media only screen and (max-width: 559px) {
  .o-flex--ver2__enttl {
    padding-left: 0;
  }
}
.o-flex--ver2__textarea {
  margin-block: clamp(4rem, 3.3932038835rem + 1.6181229773vw, 6.5rem) clamp(4.5rem, 3.8932038835rem + 1.6181229773vw, 7rem);
}
.o-flex--ver2__text {
  font-size: clamp(1.6rem, 1.5514563107rem + 0.1294498382vw, 1.8rem);
  letter-spacing: 0.05em;
  font-weight: 600;
  line-height: 1.75;
}
.o-flex--ver2__text:not(:last-child) {
  margin-bottom: 1.5em;
}
.o-flex--ver2 .o-btn__link {
  margin-inline: 0;
}
.o-flex--ver2:not(:last-of-type) {
  margin-bottom: clamp(8rem, 6.0582524272rem + 5.1779935275vw, 16rem);
}

.ihan .o-flex__ttlG--mem::after {
  background: url(../img/ihan_ftr_member_img01.webp) no-repeat center center/contain;
}
.ihan .o-flex--ver2__ttlgroup::after {
  background: var(--subColor_ihan);
}

.lhca .o-flex--ver2__ttlgroup::after {
  background: var(--subColor_lhca);
}

.lhcc .o-flex--ver2__ttlgroup::after {
  background: var(--main50Color_lhcc);
}

@media only screen and (max-width: 559px) {
  .o-flex__item {
    width: 100%;
  }
}

.o-card__text--4 {
  -webkit-line-clamp: 4;
  line-clamp: 4;
}

.o-flex__textitem:not(:last-child) {
  margin-bottom: 3rem;
}

.lhca .o-flex__ttlG--fer::after {
  background: url(../img/lhca_feature_img.webp) no-repeat center center/contain;
  width: 45.5rem;
  height: 36.6rem;
  transform: translateX(-50%);
  z-index: -1;
  pointer-events: none;
  left: 40%;
}
@media only screen and (max-width: 559px) {
  .lhca .o-flex__ttlG--fer::after {
    width: 27rem;
    height: 21.9rem;
    top: -10rem;
  }
}
.lhca .o-flex__ttlG--cor::after {
  background: url(../img/lhca_course_img.webp) no-repeat center center/contain;
  width: 37.8rem;
  height: 35.6rem;
  transform: translateX(-50%);
  z-index: -1;
  pointer-events: none;
  left: 40%;
}
@media only screen and (max-width: 559px) {
  .lhca .o-flex__ttlG--cor::after {
    left: 38%;
    width: 20.3rem;
    height: 21rem;
    top: -10.5rem;
  }
}

/*drawer*/ /*---------------数値など任意で書き換えを行う----------------------*/
.drawer-hamburger {
  width: 9.3rem;
  height: 9.3rem;
  border-radius: 50%;
  padding: 0;
  position: relative;
}
@media only screen and (max-width: 1368px) {
  .drawer-hamburger {
    width: 7.8rem;
    height: 7.8rem;
  }
}
@media only screen and (max-width: 559px) {
  .drawer-hamburger {
    width: 4rem;
    height: 4rem;
  }
}

.drawer--right.drawer-hamburger,
.drawer--right.drawer-open .drawer-hamburger {
  background-color: transparent;
  right: 0;
  top: 0;
}

.drawer-hamburger-icon,
.drawer-hamburger-icon:before,
.drawer-hamburger-icon:after,
.drawer--right.drawer-open .drawer-hamburger-icon {
  background-color: #fff;
  height: 0.1rem;
  width: 4.5rem;
  margin-inline: auto;
}
@media only screen and (max-width: 559px) {
  .drawer-hamburger-icon,
  .drawer-hamburger-icon:before,
  .drawer-hamburger-icon:after,
  .drawer--right.drawer-open .drawer-hamburger-icon {
    width: 2.6rem;
  }
}

.drawer--right .drawer-hamburger-icon,
.drawer--right.drawer-open .drawer-hamburger-icon {
  background-color: transparent;
}

.drawer-hamburger-icon:before {
  background-color: #fff;
  top: -2px;
}
@media only screen and (max-width: 559px) {
  .drawer-hamburger-icon:before {
    top: 4px;
  }
}

.drawer-hamburger-icon:after {
  background-color: #fff;
  top: 10px;
}
@media only screen and (max-width: 559px) {
  .drawer-hamburger-icon:after {
    top: 11px;
  }
}

.drawer--right.drawer-open .drawer-hamburger-icon:after {
  width: 100%;
}

.drawer--right.drawer-open .drawer-hamburger-icon:before,
.drawer--right.drawer-open .drawer-hamburger-icon:after {
  top: 4px;
}
@media only screen and (max-width: 559px) {
  .drawer--right.drawer-open .drawer-hamburger-icon:before,
  .drawer--right.drawer-open .drawer-hamburger-icon:after {
    top: 8px;
  }
}

.drawer--right.drawer-open .drawer-hamburger {
  z-index: 9999;
}

.drawer-hamburger .l-hdr__humtext {
  margin-top: 1rem;
  font-size: clamp(1.2rem, 1.1029126214rem + 0.2588996764vw, 1.6rem);
  font-weight: 400;
  letter-spacing: 0.2em;
  position: relative;
  top: 1rem;
}
@media only screen and (max-width: 559px) {
  .drawer-hamburger .l-hdr__humtext {
    letter-spacing: 0;
  }
}

.drawer-nav .drawer-hamburger .l-hdr__humtext {
  text-align: center;
}

.drawer-nav {
  width: 24%;
  right: -24%;
  z-index: 500;
  padding: 12rem 7rem;
  background: #fff;
}
@media only screen and (max-width: 559px) {
  .drawer-nav {
    width: 100%;
    right: -100%;
    padding: 2rem 6%;
    margin-top: var(--header-height);
    height: calc(100vh - var(--header-height));
  }
}
.drawer-nav .hdr-inner {
  padding-inline: 1.5rem;
}

.drawer--right .drawer-nav {
  right: -24%;
}
@media only screen and (max-width: 559px) {
  .drawer--right .drawer-nav {
    right: -100%;
  }
}

.drawer-open .drawer-nav {
  right: 0;
  overflow-y: auto;
  -webkit-overflow-scrolling: touch;
  overflow-x: hidden;
}

.drawer-nav .logo {
  width: 12.9rem;
}

.drawer-nav::-webkit-scrollbar {
  display: none;
}

.drawer-nav .mypage {
  margin-right: 5vw;
}

.drawer-nav .mypage a {
  color: var(--baseColor);
}

.drawer-nav .mypage img:first-child {
  top: 0;
}

.drawer-nav .wrapper {
  display: flex;
  flex-direction: column;
  gap: 6rem;
}
@media only screen and (max-width: 559px) {
  .drawer-nav .wrapper {
    padding-inline: 0;
    gap: 2rem;
  }
}

.drawer-nav .flex-c {
  gap: 6vw;
}

.drawer-nav .drawer-menu {
  flex-direction: column;
  margin-top: 0;
  gap: 3rem;
  display: flex;
}
@media only screen and (max-width: 559px) {
  .drawer-nav .drawer-menu {
    gap: 2rem;
  }
}

.drawer-nav .drawer-menu li {
  position: relative;
}

.drawer-nav .drawer-menu li.hover {
  padding: 2.5rem 0 1rem;
  position: relative;
}

.drawer-nav .drawer-menu a {
  font-size: clamp(1.4rem, 1.254368932rem + 0.3883495146vw, 2rem);
  font-weight: 600;
  color: var(--baseColor);
  padding: 0;
}
@media only screen and (max-width: 559px) {
  .drawer-nav .drawer-menu a {
    text-align: center;
  }
}

.drawer-nav .drawer-menu.second {
  margin-top: 1.5rem;
  display: flex;
  flex-direction: column;
  gap: 1.5rem;
}
@media only screen and (max-width: 559px) {
  .drawer-nav .drawer-menu.second {
    gap: 1rem;
  }
}

.drawer-nav .drawer-menu.second a {
  padding: 0;
  font-size: clamp(1.1rem, 0.9300970874rem + 0.4530744337vw, 1.8rem);
}
@media only screen and (max-width: 559px) {
  .drawer-nav .drawer-menu.second a {
    text-align: center;
  }
}

.drawer-open .drawer-nav .sub-menu {
  /*    transition: .4s;*/
  visibility: hidden;
  opacity: 0;
  position: absolute;
  padding: 1rem 2rem 1.5rem;
  background: rgba(255, 255, 255, 0.9);
  width: fit-content;
  z-index: 1;
  top: 6rem;
  left: 0;
  top: 4rem;
  border-radius: 0.3rem;
}
@media only screen and (max-width: 559px) {
  .drawer-open .drawer-nav .sub-menu {
    left: 50%;
    top: 3rem;
    transform: translateX(-50%);
    min-width: 80%;
  }
}
.drawer-open .drawer-nav .sub-menu a {
  font-size: clamp(1.2rem, 1.1029126214rem + 0.2588996764vw, 1.6rem);
  letter-spacing: 0.05em;
}

.drawer-open .drawer-nav li a.on + .sub-menu {
  transition: 0.4s;
  visibility: visible;
  opacity: 1;
}

.drawer-open .drawer-nav li a.on + .sub-menu a {
  color: #fff;
  letter-spacing: 0.05em;
  font-size: clamp(1.2rem, 1.1029126214rem + 0.2588996764vw, 1.6rem);
  text-align: center;
  display: block;
  padding: 1.5rem 0 1rem;
}

.drawer-open .drawer-nav li a.on + .sub-menu li:not(:last-child) {
  border-bottom: dashed 1px #fff;
}

.drawer-menu-item:hover {
  text-decoration: none;
}

.drawer__sns {
  display: flex;
  justify-content: center;
  gap: 1.5rem;
  margin-top: -2rem;
}
@media only screen and (max-width: 559px) {
  .drawer__sns {
    display: none;
  }
}

.ihan .drawer-hamburger {
  background: url(../img/ihan_btn_bg.webp) no-repeat center center/contain;
}
@media only screen and (max-width: 559px) {
  .ihan .drawer-hamburger {
    background: url(../img/ihan_btn_bg_sp.webp) no-repeat center center/contain;
  }
}
.ihan .drawer-hamburger-icon:before,
.ihan .drawer-hamburger-icon:after,
.ihan .drawer--left.drawer-open .drawer-hamburger-icon {
  background-color: var(--mainColor_ihan);
}
.ihan .drawer-hamburger-icon:after {
  background-color: var(--mainColor_ihan);
}
.ihan .drawer-nav {
  background-color: rgba(227, 210, 223, 0.9);
}
@media only screen and (max-width: 559px) {
  .ihan .drawer-nav {
    background: url(../img/ihan_bg_sp.webp) #fff no-repeat center bottom/cover;
  }
  .ihan .drawer-nav .sub-menu {
    background: rgba(249, 233, 221, 0.9);
  }
}
.ihan .drawer-nav li a.on + .sub-menu a {
  color: var(--mainColor_ihan);
}
.ihan .drawer-nav li a.on + .sub-menu li:not(:last-child) {
  border-bottom: dashed 1px var(--mainColor_ihan);
}

.lhcc .drawer-hamburger {
  background: url(../img/lhcc_btn_bg.webp) no-repeat center center/contain;
}
@media only screen and (max-width: 559px) {
  .lhcc .drawer-hamburger {
    background: url(../img/lhcc_btn_bg_sp.webp) #fff no-repeat center center/contain;
  }
}
.lhcc .drawer-hamburger-icon:before,
.lhcc .drawer-hamburger-icon:after,
.lhcc .drawer--right.drawer-open .drawer-hamburger-icon {
  background-color: var(--mainColor_lhcc);
}
.lhcc .drawer-hamburger-icon:after {
  background-color: var(--mainColor_lhcc);
}
.lhcc .drawer-nav {
  background-color: rgba(240, 200, 171, 0.9);
}
@media only screen and (max-width: 559px) {
  .lhcc .drawer-nav {
    background: url(../img/lhca_bg_sp.webp) no-repeat center bottom/cover;
  }
  .lhcc .drawer-nav .sub-menu {
    background-color: rgba(245, 226, 232, 0.9);
  }
}
.lhcc .drawer-nav li a.on + .sub-menu a {
  color: var(--mainColor_lhcc);
}
.lhcc .drawer-nav li a.on + .sub-menu li:not(:last-child) {
  border-bottom: dashed 1px var(--mainColor_lhcc);
}

.lhcc .drawer-hamburger {
  background: url(../img/lhcc_btn_bg.webp) no-repeat center center/contain;
}
.lhcc .drawer-hamburger-icon:before,
.lhcc .drawer-hamburger-icon:after,
.lhcc .drawer--right.drawer-open .drawer-hamburger-icon {
  background-color: var(--mainColor_lhcc);
}
.lhcc .drawer-hamburger-icon:after {
  background-color: var(--mainColor_lhcc);
}
.lhcc .drawer-nav {
  background-color: rgba(240, 200, 171, 0.9);
}
@media only screen and (max-width: 559px) {
  .lhcc .drawer-nav {
    background: url(../img/lhca_bg_sp.webp) no-repeat center bottom/cover;
  }
  .lhcc .drawer-nav .sub-menu {
    background: rgba(249, 233, 221, 0.9);
  }
}
.lhcc .drawer-nav li a.on + .sub-menu a {
  color: var(--mainColor_lhcc);
}
.lhcc .drawer-nav li a.on + .sub-menu li:not(:last-child) {
  border-bottom: dashed 1px var(--mainColor_lhcc);
}

.topcase__flex {
  display: flex;
  align-items: flex-end;
  justify-content: space-between;
  position: relative;
  top: -5rem;
}

.case-slider__navi {
  display: flex;
  align-items: center;
  justify-content: space-between;
}
@media only screen and (max-width: 559px) {
  .case-slider__navi {
    margin-top: 2rem;
  }
}

.swiper-horizontal > .swiper-pagination-bullets .swiper-pagination-bullet,
.swiper-pagination-horizontal.swiper-pagination-bullets .swiper-pagination-bullet {
  margin: 0 1rem;
}
@media only screen and (max-width: 559px) {
  .swiper-horizontal > .swiper-pagination-bullets .swiper-pagination-bullet,
  .swiper-pagination-horizontal.swiper-pagination-bullets .swiper-pagination-bullet {
    margin: 0 0.5rem;
  }
}

.swiper-pagination-bullet {
  background: #b1b1b1;
  opacity: 1;
}

.swiper-pagination-bullet-active {
  background: var(--mainColor);
}

.swiper-button-next:after {
  background: url(../img/slider-next.webp) no-repeat center center/cover;
}

.swiper-button-prev:after {
  background: url(../img/slider-prev.webp) no-repeat center center/cover;
}

.swiper-button-next,
.swiper-button-prev,
.swiper-pagination {
  position: static;
}

.swiper-pagination {
  margin-inline: 1rem;
  width: auto !important;
}

.swiper-button-next,
.swiper-button-prev {
  margin-top: 0;
  width: 4.6rem;
  height: 4.6rem;
}
@media only screen and (max-width: 559px) {
  .swiper-button-next,
  .swiper-button-prev {
    width: 2.8rem;
    height: 2.8rem;
  }
}

.swiper-button-next:hover,
.swiper-button-prev:hover {
  opacity: 0.8;
}

.swiper-button-next:after,
.swiper-button-prev:after {
  font-family: inherit;
  content: "";
  width: 4.6rem;
  height: 4.6rem;
  display: block;
}
@media only screen and (max-width: 559px) {
  .swiper-button-next:after,
  .swiper-button-prev:after {
    width: 2.8rem;
    height: 2.8rem;
  }
}

.case-slider__item {
  padding-bottom: 1.5rem;
  border-bottom: solid 1px #929292;
  margin-bottom: 3.5rem;
}

.swiper {
  overflow: visible;
}

.swiper-slide {
  opacity: 0.5;
  overflow: hidden;
}

.swiper-slide-next,
.swiper-slide-prev,
.swiper-slide-active {
  opacity: 1;
}

@media only screen and (max-width: 559px) {
  .swiper-slide-next,
  .swiper-slide-prev {
    opacity: 0.5;
  }
}

.slide_none .swiper-wrapper {
  width: min(136.8rem, 100% - 4rem);
  margin-inline: auto;
}

.slide_none .swiper-slide {
  opacity: 1;
}

.slide_none .case-slider__navi {
  display: none;
}

.slide_none .swiper-wrapper {
  gap: 5rem;
  justify-content: center;
}

.slide_none .swiper-slide {
  width: calc((100% - 10rem) / 3);
}
@media only screen and (max-width: 559px) {
  .slide_none .swiper-slide {
    width: 100%;
  }
}

@media only screen and (max-width: 559px) {
  .video-digest-slider {
    overflow: hidden;
    width: 100vw;
    position: relative;
    left: 50%;
    transform: translateX(-50%);
  }
}
.video-digest-slider figure {
  overflow: hidden;
  aspect-ratio: 7/4;
}
.video-digest-slider figure img,
.video-digest-slider figure video,
.video-digest-slider figure iframe {
  width: 100%;
  height: 100%;
  object-fit: cover;
  border-radius: 1.5rem;
  cursor: pointer;
}

.video-digest-slider__navi {
  margin-block: 2rem;
}

.video-digest .video-digest-slider:not(:first-of-type) {
  margin-top: 3.5rem;
}
.video-digest .swiper-slide-next,
.video-digest .swiper-slide-prev {
  opacity: 1;
}

/*====================================================================
　モーダル/*---------------数値など任意で書き換えを行う---------------------
====================================================================*/
.modal {
  position: fixed;
  top: 0;
  left: 0;
  z-index: 1050;
  display: none;
  width: 100%;
  height: 100vh;
}

.remodal-overlay {
  background: rgba(0, 0, 0, 0.6);
}

.modal__bg {
  position: absolute;
  width: 100%;
  height: 100vh;
  background: rgba(0, 0, 0, 0.8);
}

/* modalの中身 */
.remodal-close {
  width: 5rem;
  height: 5rem;
}

.remodal-close.top {
  right: 2rem;
  top: 2rem;
  left: inherit;
}

.remodal__white {
  background: #fff;
}

/* modal-window ----------------------------------------- */
.remodal-overlay {
  background: rgba(35, 35, 35, 0.6);
}

.modal-window {
  display: none;
  width: 100vw;
  height: 100vh;
  position: fixed;
  top: 0;
  left: 0;
  background: rgba(35, 35, 35, 0.6);
  z-index: 1200;
  justify-content: center;
  align-items: center;
}

.remodal {
  width: min(60rem, 80%);
  height: 90%;
  overflow: auto;
  margin: 0;
  position: relative;
  border-radius: 1rem;
  padding: 3rem 3.5rem 3rem;
  text-align: justify;
  color: inherit;
}
@media only screen and (max-width: 559px) {
  .remodal {
    width: 95%;
    padding: 2rem;
  }
}

.remodal-close {
  width: 6rem;
  height: 6rem;
  color: var(--mainColor);
}
.remodal-close:hover {
  color: var(--mainColor);
  opacity: 0.8;
}
@media only screen and (max-width: 559px) {
  .remodal-close {
    width: 4.6rem;
    height: 4.5rem;
  }
}

.remodal-close.top {
  right: 2rem;
  top: 1.5rem;
  left: inherit;
}
@media only screen and (max-width: 559px) {
  .remodal-close.top {
    right: 1.5rem;
  }
}

.remodal-close.bottom {
  position: static;
  margin: 4rem 0 0;
}

.remodal-close::before {
  width: 6rem;
  line-height: 5rem;
  height: 6rem;
  font-size: 7rem;
  font-family: "Zen Kaku Gothic Antique" !important;
  position: static;
}
@media only screen and (max-width: 559px) {
  .remodal-close::before {
    width: 4.6rem;
    line-height: 4rem;
    height: 4.5rem;
    font-size: 5rem;
  }
}

.remodal--white {
  background-color: #fff;
}

.modal-area figure {
  overflow: hidden;
  aspect-ratio: 1/1;
  margin-top: 1rem;
}
.modal-area figure img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  border-radius: 3.5rem;
}
.modal-area .team__name {
  color: #fff;
  background: var(--mainColor);
  line-height: 1;
  border-radius: 3rem;
  font-weight: 700;
  font-size: 1.2rem;
  padding: 0.5rem clamp(1rem, 0.8786407767rem + 0.3236245955vw, 1.5rem);
  letter-spacing: 0.1em;
  width: fit-content;
  margin-bottom: 1rem;
}
.modal-area .team__company-name {
  height: 4.7rem;
  overflow: hidden;
}
@media only screen and (max-width: 559px) {
  .modal-area .team__company-name {
    height: 3.5rem;
  }
}
.modal-area .team__company-name img {
  height: 100%;
  width: auto;
  object-fit: cover;
}
.modal-area .member-name {
  background: var(--mainColor);
  width: fit-content;
  margin-inline: auto;
  position: relative;
  top: -5rem;
  padding: 1.5rem 7.2rem;
  border-radius: 2rem;
}
@media only screen and (max-width: 559px) {
  .modal-area .member-name {
    top: -4rem;
    padding: 1rem 5rem;
  }
}
.modal-area .member-name__name {
  color: #fff;
  font-size: clamp(2.2rem, 1.8601941748rem + 0.9061488673vw, 3.6rem);
  text-align: center;
  letter-spacing: 0, 2em;
  line-height: 1.2;
}
.modal-area .member-name__name-en {
  font-size: clamp(1.6rem, 1.454368932rem + 0.3883495146vw, 2.2rem);
  text-align: center;
  letter-spacing: 0.1em;
  color: var(--main20Color);
}
.modal-area .modal-area__ttl {
  color: var(--mainColor);
  font-size: clamp(2.2rem, 2.054368932rem + 0.3883495146vw, 2.8rem);
  font-weight: 700;
  line-height: 1.4;
  margin-bottom: 3rem;
  position: relative;
  margin-top: -3rem;
}
@media only screen and (max-width: 559px) {
  .modal-area .modal-area__ttl {
    margin-top: -1rem;
  }
}
.modal-area .modal-area__textarea p {
  font-size: clamp(1.4rem, 1.1572815534rem + 0.6472491909vw, 2.4rem);
  line-height: 1.75;
  color: var(--baseColor);
  line-height: 1.75;
}

/*-----------------------

       header /*---------------数値など任意で書き換えを行う---------------------

-----------------------*/
.l-hdr {
  padding: 2rem 3rem 1rem;
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  z-index: 10000;
  background: rgba(255, 255, 255, 0.8);
}
@media only screen and (max-width: 1368px) {
  .l-hdr {
    padding: 1rem 2rem 1rem;
  }
}
@media only screen and (max-width: 559px) {
  .l-hdr {
    padding: 1rem 1.5rem;
  }
}
.l-hdr__inner {
  justify-content: space-between;
  align-items: center;
  display: flex;
}
@media only screen and (max-width: 1280px) {
  .l-hdr__inner {
    align-items: flex-start;
  }
}
@media only screen and (max-width: 559px) {
  .l-hdr__inner {
    align-items: center;
  }
}
.l-hdr__logo {
  width: 26.302083vw;
}
@media only screen and (max-width: 559px) {
  .l-hdr__logo {
    width: 12.9rem;
  }
}
.l-hdr__login__link {
  text-align: center;
  display: flex;
  align-items: center;
}
.l-hdr__login__icon {
  vertical-align: text-bottom;
  margin-right: 0.5rem;
}
.l-hdr__login__arrow {
  margin-left: 1rem;
}
.l-hdr__cart {
  margin-left: 2rem;
}
@media only screen and (max-width: 559px) {
  .l-hdr__cart img {
    width: 1.8rem;
    height: 1.6rem;
  }
}
.l-hdr__cart__link {
  display: flex;
  align-items: center;
}
.l-hdr__cart__count {
  border-radius: 50%;
  line-height: 1;
  font-size: clamp(1rem, 0.854368932rem + 0.3883495146vw, 1.6rem);
  font-weight: 600;
  width: 2.3rem;
  height: 2.3rem;
  display: flex;
  justify-content: center;
  align-items: center;
  margin: 0.5rem 0 0 -1rem;
}
@media only screen and (max-width: 559px) {
  .l-hdr__cart__count {
    width: 1.4rem;
    height: 1.4rem;
    margin: 0.5rem -0.5rem 0 -1rem;
  }
}
.l-hdr__navi {
  display: flex;
  margin-top: 1.5rem;
  justify-content: flex-end;
}
@media only screen and (max-width: 1368px) {
  .l-hdr__navi {
    margin-top: 1rem;
  }
}
.l-hdr__menu {
  display: flex;
  gap: 0.78125vw;
}
.l-hdr__menu__item {
  position: relative;
}
.l-hdr__menu__item:not(:nth-last-child(1)):not(:nth-last-child(2)) .l-hdr__menu__link::after {
  content: "|";
  padding-left: 0.78125vw;
}
.l-hdr__menu__item:hover .l-hdr__submenu {
  top: 3.5rem;
  visibility: visible;
  opacity: 0.9;
  z-index: 9999;
  display: block;
}
.l-hdr__menu__link {
  font-weight: 600;
  font-size: 1.6rem;
  position: relative;
}
@media only screen and (max-width: 1368px) {
  .l-hdr__menu__link {
    font-size: 1.4rem;
  }
}
.l-hdr__menu__link--ver2 {
  border-radius: 0.5rem;
  padding: 0.5rem 2rem;
}
.l-hdr__submenu {
  position: absolute;
  top: 3.5rem;
  left: 0;
  width: 28rem;
  -webkit-transition: 0.4s;
  transition: 0.4s;
  visibility: hidden;
  opacity: 0;
  padding: 1.3rem 8% 2rem;
  flex-direction: column;
  z-index: 9999;
  margin-top: 0;
}
.l-hdr__submenu__item {
  border: none;
  width: 100%;
}
.l-hdr__submenu__item:not(:last-child) {
  border-bottom: dashed 1px #fff;
}
.l-hdr__submenu__link {
  font-size: 1.6rem;
  padding: 2rem 0 1rem;
  display: block;
  color: #fff;
  font-weight: 500;
  letter-spacing: 0.05em;
  text-align: center;
}
@media only screen and (max-width: 1368px) {
  .l-hdr__submenu__link {
    font-size: 1.4rem;
  }
}
.l-hdr__submenu:hover {
  color: #fff;
}
.l-hdr__navigroup {
  margin-inline: auto 1rem;
  display: flex;
  flex-direction: column;
  align-items: flex-end;
  gap: 1.5rem;
}
.l-hdr__companygroup {
  display: flex;
  justify-content: flex-end;
}
@media only screen and (max-width: 1280px) {
  .l-hdr__companygroup {
    margin-top: 1rem;
  }
}
.l-hdr__companygroupList {
  display: flex;
  gap: 0.8rem;
}
@media only screen and (max-width: 559px) {
  .l-hdr__companygroupList {
    gap: 0.5rem;
  }
}
.l-hdr__groupname__link {
  font-size: clamp(1.1rem, 1.027184466rem + 0.1941747573vw, 1.4rem);
  border: solid 1px;
  border-radius: 1.5rem;
  height: 3rem;
  line-height: 3rem;
  padding-inline: 2rem;
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 0.5rem;
}
@media only screen and (max-width: 1368px) {
  .l-hdr__groupname__link {
    height: 2.5rem;
    line-height: 2.5rem;
  }
}
@media only screen and (max-width: 559px) {
  .l-hdr__groupname__link {
    padding-inline: 1.5rem;
  }
}
.l-hdr__groupname__link--ihan:hover {
  color: var(--mainColor_ihan);
}
.l-hdr__groupname__link--lhca:hover {
  color: var(--mainColor_lhca);
}
.l-hdr__groupname__link--shop:hover {
  color: var(--mainColor_shop);
}
.l-hdr__groupname__link--lhcc:hover {
  color: var(--mainColor_lhcc);
}

.drawer-open .l-hdr {
  background: rgb(255, 255, 255);
}

.l-hdr .l-hdr__toparea {
  display: flex;
  justify-content: space-between;
  align-items: center;
  border-bottom: solid 1px var(--baseColor);
  padding-bottom: 0.5rem;
  margin-block: 2rem 3rem;
}
.l-hdr .l-hdr__toparea .mypage {
  display: flex;
  flex-direction: row;
  border-bottom: none;
  margin-bottom: 0;
  gap: 0.5rem;
}
.l-hdr .l-hdr__toparea .mypage p {
  font-size: 1.4rem;
}
.l-hdr .l-hdr__toparea .mypage-link {
  font-size: 1.2rem;
  font-weight: 600;
  display: block;
  padding: 1rem 1rem 0.5rem;
  color: var(--colorW);
}
.l-hdr ul {
  flex-shrink: 0;
}
@media only screen and (max-width: 559px) {
  .l-hdr ul .l-hdr__menu__link {
    font-size: 1.2rem;
    margin-left: 0;
  }
}

.drawer-open .drawer-nav .mypage-list {
  background: rgba(226, 146, 87, 0.9);
  border-radius: 0.3rem;
  top: 10.5rem !important;
  width: 47% !important;
  padding: 0.5rem 2rem 1rem !important;
  color: var(--colorW);
}

.drawer-open .drawer-nav .mypage-list :first-child {
  margin-top: 0;
}

.drawer-open .drawer-nav .mypage.loginBtn.down span {
  transform: rotate(180deg);
  display: block;
  position: relative;
  top: 2px;
}

@media only screen and (max-width: 559px) {
  .ihan .l-hdr__logo {
    width: 26.6rem;
  }
}
.ihan .l-hdr__menu__link:hover {
  color: var(--mainColor_ihan);
}
.ihan .l-hdr__menu__link--ver2:hover {
  color: #fff;
}
.ihan .l-hdr__submenu {
  background: rgba(227, 210, 223, 0.9);
}
.ihan .l-hdr__submenu__item {
  border: none;
  width: 100%;
}
.ihan .l-hdr__submenu__item:not(:last-child) {
  border-bottom: dashed 1px var(--mainColor_ihan);
}
.ihan .l-hdr__submenu__link {
  color: var(--mainColor_ihan);
}
.ihan .l-hdr__toparea {
  justify-content: center;
  padding-bottom: 1rem;
}
.ihan .l-hdr__mypage-item {
  border-bottom: dashed 1px var(--sub50Color_ihan);
}

.lhcc .l-hdr__menu__link:hover {
  color: var(--mainColor_lhcc);
}
.lhcc .l-hdr__menu__link--ver2:hover {
  color: #fff;
}
.lhcc .l-hdr__submenu {
  background: rgba(249, 233, 221, 0.9);
}
.lhcc .l-hdr__submenu__item {
  border: none;
  width: 100%;
}
.lhcc .l-hdr__submenu__item:not(:last-child) {
  border-bottom: dashed 1px var(--mainColor_lhcc);
}
.lhcc .l-hdr__submenu__link {
  color: var(--mainColor_lhcc);
}
.lhcc .l-hdr__mypage-item {
  border-bottom: dashed 1px var(--sub50Color_lhca);
}

header .mypage {
  margin-left: 2rem;
}

@media only screen and (max-width: 559px) {
  .lhcc .drawer-nav {
    background: url(../img/lhcc_bg.webp) #fff no-repeat center bottom/cover;
  }
  .l-hdr__logo {
    width: 26.3rem;
  }
}
header .mypage .flex {
  align-items: center;
}

/*-----------------------

      footer/*---------------数値など任意で書き換えを行う---------------------

-----------------------*/
.ftr-member__inner {
  padding-block: clamp(5rem, 3.0582524272rem + 5.1779935275vw, 13rem) clamp(10rem, 8.5436893204rem + 3.8834951456vw, 16rem);
}
@media only screen and (max-width: 559px) {
  .ftr-member__inner {
    padding-block: 0 clamp(10rem, 8.5436893204rem + 3.8834951456vw, 16rem);
  }
}

.ftr-contact {
  border-radius: 5rem;
  margin-top: clamp(10rem, 8.5436893204rem + 3.8834951456vw, 16rem);
}
@media only screen and (max-width: 559px) {
  .ftr-contact {
    border-radius: 1.5rem;
  }
}
.ftr-contact__inner {
  padding-bottom: clamp(3.5rem, 2.8932038835rem + 1.6181229773vw, 6rem);
  padding-top: clamp(5rem, 4.1504854369rem + 2.2653721683vw, 8.5rem);
  position: relative;
}
.ftr-contact__ttleng {
  font-size: clamp(9.6rem, 7.5611650485rem + 5.4368932039vw, 18rem);
  line-height: 1;
  position: absolute;
  top: -10rem;
  left: 50%;
  transform: translateX(-50%);
}
@media only screen and (max-width: 559px) {
  .ftr-contact__ttleng {
    top: -5.5rem;
  }
}
.ftr-contact__ttl {
  margin-bottom: clamp(4rem, 3.6359223301rem + 0.9708737864vw, 5.5rem);
  font-size: clamp(1.6rem, 1.3572815534rem + 0.6472491909vw, 2.6rem);
  line-height: 1;
  letter-spacing: 0.1em;
  font-weight: 500;
}
.ftr-contact__btn {
  margin-bottom: clamp(4rem, 3.3932038835rem + 1.6181229773vw, 6.5rem);
}
.ftr-contact__sns {
  display: flex;
  justify-content: center;
  align-items: center;
  gap: 5.5rem;
}
@media only screen and (max-width: 559px) {
  .ftr-contact__sns {
    gap: 0;
    justify-content: space-between;
  }
}
.ftr-contact__sns img {
  width: clamp(4.3rem, 3.8873786408rem + 1.1003236246vw, 6rem);
  height: clamp(4.3rem, 3.8873786408rem + 1.1003236246vw, 6rem);
}

footer.main-footer {
  padding: 6.5rem 0 3rem;
}
@media only screen and (max-width: 559px) {
  footer.main-footer {
    padding: 4rem 0 13rem;
  }
}

.l-footer address {
  padding-bottom: clamp(1.5rem, 1.1359223301rem + 0.9708737864vw, 3rem);
}
.l-footer__tel {
  font-size: clamp(1.8rem, 1.6058252427rem + 0.5177993528vw, 2.6rem);
  margin-bottom: clamp(1.5rem, 1.3786407767rem + 0.3236245955vw, 2rem);
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 0.7rem;
}
.l-footer__date {
  font-size: clamp(1.4rem, 1.3029126214rem + 0.2588996764vw, 1.8rem);
  line-height: 1;
  display: flex;
  gap: 1rem;
  justify-content: center;
  flex-direction: column;
  padding-bottom: clamp(5.5rem, 4.6504854369rem + 2.2653721683vw, 9rem);
}
.l-footer__date span {
  font-size: clamp(1.2rem, 1.1514563107rem + 0.1294498382vw, 1.4rem);
  display: block;
}
.l-footer__copy {
  text-align: center;
  line-height: 2rem;
}
.l-footer__copy small {
  font-size: clamp(1rem, 0.9029126214rem + 0.2588996764vw, 1.4rem);
  font-weight: 500;
  letter-spacing: 0.05em;
  line-height: 1.5;
}
.l-footer .ft-navi {
  position: fixed;
  bottom: 0;
  left: 0;
  width: 100%;
  background: rgba(255, 255, 255, 0.87);
  padding: 0.5rem 0.9rem;
  display: none;
}
.l-footer .ft-navi .ft-navi__list {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  grid-template-rows: auto auto;
  gap: 0.5rem;
  margin: auto;
}
.l-footer .ft-navi .ft-navi__item--large {
  grid-column: span 2;
}
.l-footer .ft-navi .ft-navi__item img {
  width: 100%;
}

.lhca .ftr-member__ttlgroup::after {
  background: url(../img/lhca_ftr_member_img01.webp) no-repeat center center/contain;
}

.ihan .ftr-member__ttlgroup::after {
  background: url(../img/ihan_ftr_member_img01.webp) no-repeat center center/contain;
}

/*-----------------------

      CMS

-----------------------*/
/*LHCA講座詳細*/
.body-page-detail-lhca_coursesingle .content-header {
  display: none;
}

.page-detail-ihan_cmssingle .content-header {
  padding: 0;
  margin: clamp(3rem, 1.3009708738rem + 4.5307443366vw, 10rem) auto clamp(1.5rem, 1.1359223301rem + 0.9708737864vw, 3rem);
  min-height: auto;
  width: 100%;
}
.page-detail-ihan_cmssingle .content-header .page-header {
  width: 69%;
  margin: 0 auto;
}
@media only screen and (max-width: 1280px) {
  .page-detail-ihan_cmssingle .content-header .page-header {
    width: 64%;
  }
}

.page-detail-ihan_cmsarchive .content-header {
  padding: clamp(6rem, 3.8155339806rem + 5.8252427184vw, 15rem) 0 clamp(5rem, 2.0873786408rem + 7.7669902913vw, 17rem);
}

.ihan .cms__pagelink {
  margin-top: clamp(6rem, 5.0291262136rem + 2.5889967638vw, 10rem);
  justify-content: center;
  align-items: center;
  gap: 3.5rem;
}
@media only screen and (max-width: 559px) {
  .ihan .cms__pagelink {
    gap: 2.5rem;
  }
}
.ihan .cms__listbtnlink {
  width: fit-content;
  border: 1px solid var(--mainColor_ihan);
  padding: 0.8rem 6rem;
  border-radius: 3rem;
  line-height: 1;
  font-size: clamp(1.4rem, 1.3029126214rem + 0.2588996764vw, 1.8rem);
}
@media only screen and (max-width: 559px) {
  .ihan .cms-single-Contents {
    margin-top: 0;
  }
}
.ihan .cms-single-Contents h2 {
  color: var(--baseColor);
}
.ihan .cms-single-Contents .post-info {
  margin: 0;
}
.ihan .cms-single-Area figure,
.ihan .cms-single-Area figure.top-img {
  margin-bottom: clamp(1.5rem, 1.1359223301rem + 0.9708737864vw, 3rem);
}
.ihan .cms-single-Area {
  margin-bottom: clamp(10rem, 9.2718446602rem + 1.9417475728vw, 13rem);
}
.ihan .cms-single__ttl {
  font-size: clamp(2rem, 1.6601941748rem + 0.9061488673vw, 3.4rem);
  line-height: 1.5;
  padding-bottom: clamp(2rem, 1.7572815534rem + 0.6472491909vw, 3rem);
  margin-bottom: clamp(3rem, 2.6359223301rem + 0.9708737864vw, 4.5rem);
  border-bottom: 1px solid;
}
.ihan .cms-single__cat {
  list-style-type: none;
  padding-left: 0;
  display: flex;
  gap: 1rem;
  flex-wrap: wrap;
  margin-bottom: clamp(1.5rem, 1.2572815534rem + 0.6472491909vw, 2.5rem);
}
.ihan .cms-single__catitem {
  padding: 0.2rem 2rem;
  border-radius: 1.7rem;
  font-size: clamp(1.2rem, 1.054368932rem + 0.3883495146vw, 1.8rem);
}
@media only screen and (max-width: 559px) {
  .ihan .cms-single__catitem {
    padding: 0 1.1rem;
    border-radius: 1.1rem;
  }
}

.ihan .cms-archive {
  margin-bottom: 8rem;
}
@media only screen and (max-width: 559px) {
  .ihan .cms-archive {
    margin-bottom: 10rem;
  }
}
.ihan .cms-archive__date {
  font-size: clamp(1rem, 0.9029126214rem + 0.2588996764vw, 1.4rem);
  line-height: 1;
}
.ihan .cms-archive .o-card--3wrap {
  gap: 4rem 5.5rem;
  margin-bottom: clamp(6rem, 5.5145631068rem + 1.2944983819vw, 8rem);
}
@media only screen and (max-width: 559px) {
  .ihan .cms-archive .o-card--3wrap {
    gap: 1.5rem 2rem;
  }
}

/*-----------------------

      下層ページ /*---------------数値など任意で書き換えを行う---------------------

-----------------------*/
/*header*/
.bg-contents {
  width: 100%;
  min-height: 100vh;
  position: fixed;
  top: var(--header-height);
  left: 0;
  pointer-events: none;
  z-index: -1;
}
@media only screen and (max-width: 559px) {
  .bg-contents {
    min-height: calc(100vh - var(--header-height));
  }
}
.bg-contents--lhcc {
  background: url(../img/lhcc_bg.webp) left top/cover no-repeat fixed;
}

.content-header {
  margin-bottom: 0;
  border-bottom: none;
  padding-block: clamp(6rem, 3.8155339806rem + 5.8252427184vw, 15rem) clamp(4rem, 3.5145631068rem + 1.2944983819vw, 6rem);
  width: 100vw;
  position: relative;
  left: 50%;
  transform: translateX(-50%);
}

.page-header {
  font-weight: 600;
  color: var(--mainColor);
  font-size: clamp(2.2rem, 1.6174757282rem + 1.5533980583vw, 4.6rem);
  width: 136.6rem;
  margin-inline: auto;
  padding-inline: 2rem;
}
@media only screen and (max-width: 1368px) {
  .page-header {
    padding-inline: 5vw;
  }
}
@media only screen and (max-width: 559px) {
  .page-header {
    width: 100%;
    padding-inline: 6%;
    text-align: center;
  }
}

@media screen and (min-width: 1921px) {
  .page-header {
    position: relative;
    left: 50%;
    transform: translateX(-50%);
  }
}
.under_mv {
  padding-inline: 3.125vw;
  margin-bottom: clamp(6rem, 4.3009708738rem + 4.5307443366vw, 13rem);
}
@media only screen and (max-width: 1368px) {
  .under_mv {
    padding-inline: 2rem;
  }
}
@media only screen and (max-width: 559px) {
  .under_mv {
    padding-inline: 6%;
  }
}
.under_mv img {
  border-radius: 2rem;
  width: 100%;
}

.hero .bg img {
  width: 100%;
}

.grad_area {
  border-radius: 4rem;
  padding-bottom: clamp(5.5rem, 4.6504854369rem + 2.2653721683vw, 9rem);
}
@media only screen and (max-width: 559px) {
  .grad_area {
    background: none;
  }
}
.grad_area__toptext {
  font-size: clamp(1.9rem, 1.6330097087rem + 0.71197411vw, 3rem);
  font-weight: 600;
  letter-spacing: 0.05em;
  text-align: center;
}
.grad_area__textarea {
  margin-top: clamp(4rem, 3.5145631068rem + 1.2944983819vw, 6rem);
}
.grad_area__text {
  font-size: clamp(1.4rem, 1.3029126214rem + 0.2588996764vw, 1.8rem);
  font-weight: 600;
  letter-spacing: 0.05em;
  line-height: 2;
  text-align: center;
}
@media only screen and (max-width: 559px) {
  .grad_area__text {
    text-align: left;
  }
}

/*サイト別*/
.ihan.content-wrapper .page-header {
  color: var(--mainColor_ihan);
}

.lhca.content-wrapper .page-header {
  color: var(--mainColor_lhca);
}

.shop.content-wrapper .page-header {
  color: var(--mainColor_shop);
}

.lhcc.content-wrapper .page-header {
  color: var(--mainColor_lhcc);
}

@media only screen and (max-width: 559px) {
  .under_mv img {
    border-radius: 1rem;
  }
}

@media only screen and (min-width: 1921px) {
  .page-header {
    width: 192.1rem;
    margin: 0;
    position: relative;
    left: inherit;
    transform: inherit;
  }
}

/*-----------------------

      LHCA

-----------------------*/
/*organization.*/
.philosophy .sec_ttlG--ver2 {
  margin-top: clamp(0.4rem, -1.6873786408rem + 5.5663430421vw, 9rem);
}
.philosophy .sec_ttlG--ver2 div {
  transform: translateY(-35%);
}
@media only screen and (max-width: 559px) {
  .philosophy .sec_ttlG--ver2 div {
    transform: translateY(-45%);
  }
}
@media only screen and (max-width: 559px) {
  .philosophy .sec_ttlG--ver2 .sec_icon img {
    width: 14.8rem;
    height: 22.7rem;
  }
}
.philosophy .overview__ttlgroup {
  margin-bottom: 0;
}
.philosophy__ttlsecond {
  font-weight: 600;
  letter-spacing: 0.05em;
  font-size: clamp(2.2rem, 1.8116504854rem + 1.0355987055vw, 3.8rem);
  line-height: 1.8;
}
.philosophy__text {
  font-size: clamp(1.4rem, 1.1572815534rem + 0.6472491909vw, 2.4rem);
  font-weight: 600;
  letter-spacing: 0.05em;
  margin-top: clamp(1rem, -0.213592233rem + 3.2362459547vw, 6rem);
  text-align: center;
}
@media only screen and (max-width: 559px) {
  .philosophy__text {
    text-align: left;
  }
}

.mission__inner {
  padding-block: clamp(8.5rem, 7.4077669903rem + 2.9126213592vw, 13rem);
  max-width: 97.9rem;
  margin-inline: auto;
}
.mission__list {
  margin-top: clamp(1.5rem, 0.8932038835rem + 1.6181229773vw, 4rem);
}
.mission__listitem {
  font-weight: 600;
  letter-spacing: 0.05em;
  font-size: clamp(1.6rem, 1.5514563107rem + 0.1294498382vw, 1.8rem);
  margin-bottom: 3rem;
  position: relative;
}
@media only screen and (max-width: 559px) {
  .mission__listitem {
    display: flex;
    align-items: baseline;
  }
}
.mission__listitem::before {
  content: "";
  margin-right: 1rem;
  background: url(../img/lhca_misson_listmark.webp) no-repeat center center/cover;
  width: 1.6rem;
  height: 1.6rem;
  display: inline-block;
}
@media only screen and (max-width: 559px) {
  .mission__listitem::before {
    width: 1rem;
    height: 1rem;
  }
}
.mission__text {
  font-size: clamp(1.4rem, 1.3029126214rem + 0.2588996764vw, 1.8rem);
  letter-spacing: 0.05em;
  font-weight: 600;
  line-height: 1.88;
  margin-top: -16rem;
  position: relative;
}
@media only screen and (max-width: 559px) {
  .mission__text {
    margin-top: -6rem;
  }
}
.mission__text--color {
  text-align: center;
  font-weight: 600;
  letter-spacing: 0.05em;
  font-size: clamp(1.8rem, 1.654368932rem + 0.3883495146vw, 2.4rem);
  margin-bottom: clamp(3rem, 2.7572815534rem + 0.6472491909vw, 4rem);
}
.mission__text--color:first-of-type {
  margin-top: 6rem;
}
.mission__photo {
  margin-top: clamp(4rem, 3.5145631068rem + 1.2944983819vw, 6rem);
}

.association-information__inner {
  max-width: 97.9rem;
  margin-inline: auto;
}
.association-information dl {
  margin-top: clamp(1.5rem, 0.8932038835rem + 1.6181229773vw, 4rem);
  display: flex;
  flex-wrap: wrap;
  align-items: flex-start;
  gap: 2rem;
}
@media only screen and (max-width: 559px) {
  .association-information dl {
    flex-direction: column;
    gap: 1.5rem;
  }
}
.association-information dl dt,
.association-information dl dd {
  font-weight: 600;
  letter-spacing: 0.05em;
  padding-inline: 1rem;
  line-height: 1.75;
}
.association-information dl dt {
  font-size: clamp(1.6rem, 1.5514563107rem + 0.1294498382vw, 1.8rem);
  border-bottom: solid 1px;
  border-left: solid 1px;
  padding-bottom: 1rem;
  line-height: 1;
  width: 18%;
}
@media only screen and (max-width: 559px) {
  .association-information dl dt {
    width: 100%;
    padding-bottom: 0.5rem;
  }
}
.association-information dl dt:not(:last-child) {
  margin-bottom: clamp(0rem, -0.9708737864rem + 2.5889967638vw, 4rem);
}
.association-information dl dd {
  font-size: clamp(1.4rem, 1.3514563107rem + 0.1294498382vw, 1.6rem);
  width: calc(82% - 2rem);
}
@media only screen and (max-width: 559px) {
  .association-information dl dd {
    width: 100%;
  }
}
.association-information dl dd:not(:last-child) {
  margin-bottom: clamp(2.5rem, 2.1359223301rem + 0.9708737864vw, 4rem);
}
.association-information dl dd address {
  display: inline;
}
.association-information dl dd .o-btn {
  margin-top: 1.5rem;
}
.association-information dl dd.enkaku {
  display: flex;
  flex-wrap: wrap;
  gap: 2rem 6rem;
  align-items: flex-start;
}
@media only screen and (max-width: 559px) {
  .association-information dl dd.enkaku {
    gap: 0;
  }
}
.association-information dl dd.enkaku span {
  width: calc(83% - 6rem);
}
@media only screen and (max-width: 559px) {
  .association-information dl dd.enkaku span {
    width: 100%;
    margin-bottom: 1rem;
  }
}
.association-information dl dd.enkaku span.date {
  width: 17%;
}
@media only screen and (max-width: 559px) {
  .association-information dl dd.enkaku span.date {
    width: 100%;
    margin-bottom: 0rem;
  }
}
.association-information dl dd.association-information__list li {
  position: relative;
}
@media only screen and (max-width: 559px) {
  .association-information dl dd.association-information__list li {
    display: flex;
    align-items: baseline;
  }
}
.association-information dl dd.association-information__list li::before {
  content: "・";
  margin-right: 0.5rem;
  width: 1.6rem;
  height: 1.6rem;
  display: inline-block;
}

.message__inner {
  max-width: 97.9rem;
  margin-inline: auto;
  padding-block: clamp(8.5rem, 7.4077669903rem + 2.9126213592vw, 13rem);
}
.message__degree {
  margin-block: 2.5rem 7rem;
  font-size: clamp(1.4rem, 1.254368932rem + 0.3883495146vw, 2rem);
  font-weight: 600;
  letter-spacing: 0.05em;
}
@media only screen and (max-width: 559px) {
  .message__degree {
    margin-block: 3rem 2.5rem;
  }
}
.message__degree span {
  font-size: clamp(2rem, 1.7572815534rem + 0.6472491909vw, 3rem);
}
.message__contentswrap {
  overflow: hidden;
}
.message__contentswrap:not(:last-of-type) {
  margin-bottom: clamp(4rem, 3.5145631068rem + 1.2944983819vw, 6rem);
}
.message__photo {
  float: left;
  margin-top: 4rem;
}
.message__photo--right {
  float: right;
}
.message__contentttl {
  font-weight: 600;
  letter-spacing: 0.05em;
  padding-bottom: 1rem;
  border-bottom: solid 1px;
  font-size: clamp(2rem, 1.9029126214rem + 0.2588996764vw, 2.4rem);
  line-height: 1.5;
  margin-bottom: clamp(1.5rem, 1.2572815534rem + 0.6472491909vw, 2.5rem);
}
@media only screen and (max-width: 559px) {
  .message__contentttl {
    text-align: center;
  }
}
.message__text {
  font-size: 1.4rem;
  font-weight: 600;
  letter-spacing: 0.05em;
}
.message__text:not(:last-child) {
  margin-bottom: 2em;
}

.chart__img {
  margin-block: clamp(1.5rem, 0.8932038835rem + 1.6181229773vw, 4rem) clamp(2rem, 1.2718446602rem + 1.9417475728vw, 5rem);
}
@media only screen and (max-width: 559px) {
  .chart .o-btn__link {
    width: 90%;
    height: 6rem;
  }
}

.board-members__inner {
  padding-top: clamp(8.5rem, 7.4077669903rem + 2.9126213592vw, 13rem);
  max-width: 97.9rem;
  margin-inline: auto;
}
.board-members__list {
  margin-top: clamp(1.5rem, 0.8932038835rem + 1.6181229773vw, 4rem);
}
.board-members__list dt {
  margin-bottom: 1rem;
}
.board-members__list dt a {
  text-decoration: underline;
  font-size: clamp(1.6rem, 1.5029126214rem + 0.2588996764vw, 2rem);
  font-weight: 600;
  letter-spacing: 0.05em;
  display: block;
}
.board-members__list dd {
  font-size: clamp(1.4rem, 1.3514563107rem + 0.1294498382vw, 1.6rem);
  margin-bottom: clamp(1.5rem, 1.0145631068rem + 1.2944983819vw, 3.5rem);
}

.sponsoring-organizations__inner,
.others__inner {
  padding-top: clamp(8.5rem, 7.4077669903rem + 2.9126213592vw, 13rem);
  max-width: 97.9rem;
  margin-inline: auto;
}
.sponsoring-organizations__list,
.others__list {
  margin-top: clamp(1.5rem, 0.8932038835rem + 1.6181229773vw, 4rem);
}
.sponsoring-organizations__list dt,
.others__list dt {
  margin-bottom: 1rem;
}
.sponsoring-organizations__list dt:not(:last-child),
.others__list dt:not(:last-child) {
  margin-bottom: clamp(1.4rem, 0.7689320388rem + 1.6828478964vw, 4rem);
}
.sponsoring-organizations__list dt a,
.others__list dt a {
  text-decoration: underline;
  font-size: clamp(1.6rem, 1.5029126214rem + 0.2588996764vw, 2rem);
  font-weight: 600;
  letter-spacing: 0.05em;
  display: block;
}

.others {
  padding-bottom: clamp(5rem, 3.0582524272rem + 5.1779935275vw, 13rem);
}
@media only screen and (max-width: 559px) {
  .others {
    margin-bottom: 5rem;
  }
}

.page-detail-lhcc_top .content-header {
  display: none;
}

.lhcc .grad_lhcc {
  background: linear-gradient(to right, #fa9257, #f7d763);
}
.lhcc .hero__inner {
  position: relative;
  padding: 0;
  margin-bottom: clamp(8rem, 6.786407767rem + 3.2362459547vw, 13rem);
}
.lhcc .hero__img {
  text-align: center;
  display: block;
}
@media only screen and (min-width: 1921px) {
  .lhcc .hero__img img {
    height: 84rem;
    width: auto;
  }
}
.lhcc .hero__cont {
  width: fit-content;
  position: absolute;
  right: 18rem;
  bottom: 1rem;
  text-align: right;
}
@media only screen and (max-width: 559px) {
  .lhcc .hero__cont {
    display: flex;
    flex-direction: column;
    width: 100%;
    right: 0;
    align-items: flex-end;
  }
}
.lhcc .hero__ttl {
  font-size: clamp(2.4rem, 1.6718446602rem + 1.9417475728vw, 5.4rem);
  width: fit-content;
  margin-inline: auto;
  text-align: center;
  letter-spacing: 0;
  margin-bottom: 6rem;
}
@media only screen and (max-width: 559px) {
  .lhcc .hero__ttl {
    margin: 0 2rem 0 0;
  }
}
.lhcc .hero__ttl span {
  background: linear-gradient(to right, #fa9257, #f7d763);
  color: var(--colorW);
  border-radius: calc(infinity * 1px);
  line-height: 1;
  padding: 2.4rem 3rem 2.4rem 4.8rem;
}
@media only screen and (max-width: 559px) {
  .lhcc .hero__ttl span:first-child {
    margin-bottom: 1rem;
  }
}
@media only screen and (max-width: 559px) {
  .lhcc .hero__ttl span {
    padding: 1rem 2rem;
    display: block;
    width: fit-content;
    margin-left: auto;
  }
}
@media only screen and (max-width: 559px) {
  .lhcc .hero__ttl {
    order: 2;
  }
}
.lhcc .hero__text {
  background-color: var(--colorW);
  color: var(--mainColor);
  font-size: clamp(1.3rem, 0.9359223301rem + 0.9708737864vw, 2.8rem);
  border-radius: calc(infinity * 1px);
  padding: 1rem 3rem;
  text-align: center;
  margin-left: auto;
  letter-spacing: 0;
  width: fit-content;
  margin-bottom: 1.5rem;
}
@media only screen and (max-width: 559px) {
  .lhcc .hero__text {
    order: 3;
    margin: 1.5rem 0 -3rem 0;
    width: fit-content;
    margin-inline: auto;
  }
}
@media only screen and (max-width: 559px) {
  .lhcc .hero__logo {
    order: 1;
    width: 6.4rem;
    height: auto;
    margin: 0 2rem 2rem 0;
  }
}
.lhcc .reservation {
  padding-bottom: clamp(6rem, 5.0291262136rem + 2.5889967638vw, 10rem);
}
@media only screen and (max-width: 559px) {
  .lhcc .reservation .o-flex {
    flex-direction: column;
    margin-bottom: 0;
    gap: 4rem;
  }
}
.lhcc .reservation__subttl {
  text-align: center;
  font-size: clamp(2rem, 1.8058252427rem + 0.5177993528vw, 2.8rem);
  letter-spacing: 0.05em;
  line-height: 1;
  margin-bottom: 2.5rem;
}
@media only screen and (max-width: 559px) {
  .lhcc .reservation__subttl {
    margin-bottom: 2rem;
  }
}
.lhcc .reservation__card {
  gap: 1.8rem;
}
@media only screen and (max-width: 559px) {
  .lhcc .reservation__card {
    grid-template-columns: repeat(1, 1fr);
    gap: 1.5rem;
    margin-bottom: 0;
  }
}
.lhcc .reservation__link {
  color: var(--colorW);
  background-color: var(--mainColor);
  font-size: clamp(1.6rem, 1.5514563107rem + 0.1294498382vw, 1.8rem);
  letter-spacing: 0.05em;
  border-radius: 0.5rem;
  height: 7rem;
  display: flex;
  align-items: center;
  justify-content: center;
  text-align: center;
  line-height: 1.2222222222;
  width: 100%;
}
.lhcc .reservation__link--wide {
  width: 43.5rem;
  margin-inline: auto;
}
@media only screen and (max-width: 559px) {
  .lhcc .reservation__link--wide {
    width: 100%;
  }
}
@media only screen and (max-width: 559px) {
  .lhcc .reservation__link {
    height: 5rem;
    width: 100%;
  }
}
.lhcc .topics__inner {
  padding-bottom: clamp(6rem, 5.0291262136rem + 2.5889967638vw, 10rem);
}
.lhcc .topics .o-card--4wrap {
  margin-bottom: 0;
}
.lhcc .topics .o-card__text {
  font-size: 1.6rem;
}
.lhcc .topics .o-card__date {
  font-size: 1.4rem;
}
.lhcc .topics .o-card__cat {
  font-size: 1.4rem;
}
.lhcc .feature {
  padding-bottom: clamp(6rem, 5.0291262136rem + 2.5889967638vw, 10rem);
}
.lhcc .feature__ttlgroup {
  margin-bottom: clamp(4rem, 3.2718446602rem + 1.9417475728vw, 7rem);
}
.lhcc .feature__wrap {
  width: 80rem;
  margin-inline: auto;
}
@media only screen and (max-width: 559px) {
  .lhcc .feature__wrap {
    width: 100%;
    padding: 0 6%;
  }
}
.lhcc .feature__catch {
  margin-bottom: 3rem;
  font-size: clamp(1.8rem, 1.1689320388rem + 1.6828478964vw, 4.4rem);
  width: fit-content;
  margin-inline: auto;
  background: linear-gradient(to right, #fa9257, #f7d763);
  color: var(--colorW);
  border-radius: calc(infinity * 1px);
  line-height: 1;
  padding: 2.4rem 4.7rem;
  text-align: center;
}
@media only screen and (max-width: 559px) {
  .lhcc .feature__catch {
    width: 100%;
    padding-inline: 0;
    padding-block: 1.5rem;
    margin-bottom: 2rem;
  }
}
.lhcc .feature__copy {
  text-align: center;
  font-size: clamp(1.6rem, 1.454368932rem + 0.3883495146vw, 2.2rem);
  letter-spacing: 0.05em;
  margin-bottom: 5rem;
}
@media only screen and (max-width: 559px) {
  .lhcc .feature__copy {
    margin-bottom: 2rem;
  }
}
.lhcc .feature__copy span {
  color: var(--mainColor);
  font-size: clamp(2rem, 1.7087378641rem + 0.7766990291vw, 3.2rem);
  letter-spacing: 0.05em;
}
.lhcc .feature__figure {
  text-align: center;
  margin-bottom: 3.5rem;
}
@media only screen and (max-width: 559px) {
  .lhcc .feature__figure {
    margin-bottom: 2rem;
  }
}
@media only screen and (max-width: 559px) {
  .lhcc .feature__figure img {
    width: 13.6rem;
  }
}
.lhcc .feature__list {
  display: flex;
  flex-direction: column;
  gap: 3rem;
  align-items: center;
}
.lhcc .feature__itemimg {
  text-align: center;
}
@media only screen and (max-width: 559px) {
  .lhcc .feature__itemimg img {
    width: 15.2rem;
  }
}
.lhcc .feature__itemtext {
  text-align: center;
  color: var(--mainColor);
  font-size: clamp(1.8rem, 1.727184466rem + 0.1941747573vw, 2.1rem);
  letter-spacing: 0.05em;
  margin-top: -6rem;
  z-index: 100;
  position: relative;
}
@media only screen and (max-width: 559px) {
  .lhcc .feature__itemtext {
    margin-top: -4rem;
  }
}
.lhcc .thought__ttlgroup {
  margin-bottom: 5rem;
}
@media only screen and (max-width: 559px) {
  .lhcc .thought__ttlgroup {
    margin-bottom: 4rem;
  }
}
.lhcc .thought__subttl {
  font-size: clamp(2rem, 1.46602rem + 1.42395vw, 4.2rem);
  font-weight: 600;
  letter-spacing: 0.1em;
  line-height: 1.65;
}
@media only screen and (max-width: 559px) {
  .lhcc .thought__subttl {
    margin-bottom: 2rem;
  }
}
.lhcc .thought__eng {
  font-size: clamp(1.5rem, 1.354368932rem + 0.3883495146vw, 2.1rem);
  letter-spacing: 0.2em;
  line-height: 1.5;
  margin-top: clamp(0rem, -0.849515rem + 2.26537vw, 3.5rem);
  width: 78%;
  font-weight: 400;
  color: var(--mainColor);
}
@media only screen and (max-width: 559px) {
  .lhcc .thought__eng {
    letter-spacing: 0.025em;
    width: 100%;
  }
}
.lhcc .thought__textarea {
  font-size: clamp(1.6rem, 1.5514563107rem + 0.1294498382vw, 1.8rem);
  letter-spacing: 0.05em;
  font-weight: 600;
  line-height: 2;
  margin-block: 6rem;
}
@media only screen and (max-width: 559px) {
  .lhcc .thought__textarea {
    margin-top: 3.5rem;
  }
}
.lhcc .thought__name {
  text-align: center;
  font-weight: 600;
  letter-spacing: 0.05em;
  font-size: clamp(1.8rem, 1.50874rem + 0.776699vw, 3rem);
  line-height: 1.6;
  margin-top: 1rem;
}
.lhcc .thought__name span {
  font-size: clamp(1.2rem, 1.10291rem + 0.2589vw, 1.6rem);
}
.lhcc .thought__name span.large {
  font-size: clamp(1.5rem, 1.3300970874rem + 0.4530744337vw, 2.2rem);
}
.lhcc .thought__btnarea {
  display: flex;
  justify-content: center;
  margin-top: 3rem;
}
.lhcc .thought__img {
  width: 80%;
  margin-inline: auto;
}
.lhcc .services {
  padding-bottom: 10rem;
}
.lhcc .services__ttlgroup {
  margin-bottom: 7rem;
}
@media only screen and (max-width: 559px) {
  .lhcc .services__ttlgroup {
    margin-bottom: 4rem;
  }
}

.service-info {
  padding-bottom: 5rem;
}
.service-info--online, .service-info--salon {
  padding-bottom: 10rem;
}
.service-info__ttlgroup {
  margin-bottom: 11rem;
}
@media only screen and (max-width: 559px) {
  .service-info__ttlgroup {
    margin-bottom: 4rem;
  }
}

.service-cm__card {
  gap: 5rem;
}
@media only screen and (max-width: 559px) {
  .service-cm__card {
    grid-template-columns: repeat(1, 1fr);
    gap: 3rem;
  }
}
.service-cm__card--offer {
  margin-bottom: 5rem;
}
@media only screen and (max-width: 559px) {
  .service-cm__card--offer {
    margin-bottom: 4.5rem;
  }
}
.service-cm__cardttl {
  text-align: center;
  color: var(--mainColor);
  font-size: clamp(2rem, 1.9029126214rem + 0.2588996764vw, 2.4rem);
  margin-bottom: 1rem;
  line-height: 1.4;
  font-weight: 600;
}
.service-cm__cardttl--hight {
  display: flex;
  flex-direction: column;
  justify-content: center;
  min-height: 6.8rem;
}
@media only screen and (max-width: 559px) {
  .service-cm__cardttl--hight {
    min-height: auto;
  }
}
.service-cm__cardttl span {
  font-size: clamp(1.4rem, 1.3514563107rem + 0.1294498382vw, 1.6rem);
}
.service-cm__cardfigure {
  margin-bottom: 1rem;
}
.service-cm__cardtextarea p {
  font-size: 1.6rem;
  letter-spacing: 0;
  line-height: 1.5;
}
.service-cm__cardtextarea li {
  display: flex;
}
.service-cm__cardtextarea li:not(:last-child) {
  margin-bottom: 0.2rem;
}

.service-cont {
  padding-bottom: 13rem;
}
@media only screen and (max-width: 559px) {
  .service-cont {
    padding-bottom: 8rem;
  }
}
.service-cont__ttl {
  font-size: clamp(2rem, 1.7087378641rem + 0.7766990291vw, 3.2rem);
  color: var(--mainColor);
  line-height: 1.5;
  margin-bottom: 6rem;
  text-align: center;
  letter-spacing: 0.05em;
}
@media only screen and (max-width: 559px) {
  .service-cont__ttl {
    margin-bottom: 4rem;
  }
}
.service-cont__catch {
  font-size: clamp(1.6rem, 1.4058252427rem + 0.5177993528vw, 2.4rem);
  color: var(--mainColor);
  line-height: 1.5;
  text-align: center;
  margin-bottom: 5.5rem;
  letter-spacing: 0.05em;
}
@media only screen and (max-width: 559px) {
  .service-cont__catch {
    margin-bottom: 4.5rem;
    line-height: 1.75;
  }
}
.service-cont__catch--salon {
  margin-bottom: 1rem;
}
@media only screen and (max-width: 559px) {
  .service-cont__catch--salon {
    margin-bottom: 1rem;
  }
}
.service-cont__list {
  margin-bottom: 5rem;
}
@media only screen and (max-width: 559px) {
  .service-cont__list {
    margin-bottom: 4rem;
    width: fit-content;
    margin-inline: auto;
  }
}
.service-cont__item {
  font-size: clamp(1.6rem, 1.3572815534rem + 0.6472491909vw, 2.6rem);
  text-align: center;
  line-height: 1.5;
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 0.5rem;
}
@media only screen and (max-width: 559px) {
  .service-cont__item {
    text-align-last: left;
    justify-content: flex-start;
    align-items: baseline;
  }
}
@media only screen and (max-width: 559px) {
  .service-cont__item:not(:last-child) {
    margin-bottom: 2rem;
  }
}
@media only screen and (max-width: 559px) {
  .service-cont__item img {
    width: 2.4rem;
    height: 1.9rem;
    position: relative;
    top: 0.3rem;
  }
}
.service-cont__your {
  font-size: clamp(1.6rem, 1.3572815534rem + 0.6472491909vw, 2.6rem);
  text-align: center;
  letter-spacing: 0.05em;
  margin-bottom: 2rem;
}
@media only screen and (max-width: 559px) {
  .service-cont__your {
    margin-bottom: 0;
  }
}
.service-cont__textarea {
  font-size: clamp(1.6rem, 1.5029126214rem + 0.2588996764vw, 2rem);
  letter-spacing: 0.05em;
}
.service-cont__textarea p {
  text-align: center;
}
.service-cont__textarea--salon p:first-child {
  margin-bottom: 4rem;
}
@media only screen and (max-width: 559px) {
  .service-cont__textarea--salon p:first-child {
    margin-bottom: 2rem;
  }
}
.service-cont__textarea--salon p:nth-child(2) {
  margin-bottom: 5rem;
}
@media only screen and (max-width: 559px) {
  .service-cont__textarea--salon p:nth-child(2) {
    margin-bottom: 2.5rem;
  }
}
.service-cont__textarea--salon p.note {
  font-size: clamp(1.4rem, 1.3029126214rem + 0.2588996764vw, 1.8rem);
  margin-bottom: 7rem;
}
@media only screen and (max-width: 559px) {
  .service-cont__textarea--salon p.note {
    margin-bottom: 3.5rem;
  }
}

@media only screen and (max-width: 559px) {
  .service-info .sec_ttlG--ver2 .sec_ttl {
    line-height: 1.2692307692;
  }
}
@media only screen and (max-width: 559px) {
  .service-info .sec_ttlG--ver2 .sec_icon img {
    width: 24.9rem;
  }
}
@media only screen and (max-width: 559px) {
  .service-info .sec_ttlG .sec_ttl span {
    display: block;
    margin-bottom: 0.5rem;
  }
}
.service-info__subttl {
  color: var(--mainColor);
  font-size: clamp(1.9rem, 1.7300970874rem + 0.4530744337vw, 2.6rem);
  display: flex;
  gap: 1rem;
  align-items: center;
  margin-bottom: 2rem;
  font-weight: 500;
}
@media only screen and (max-width: 559px) {
  .service-info__subttl {
    margin-bottom: 1rem;
    gap: 0.2rem;
  }
}
@media only screen and (max-width: 559px) {
  .service-info__subttl img {
    width: 1.8rem;
    height: auto;
  }
}
@media only screen and (max-width: 559px) {
  .service-info__list {
    padding-left: 2rem;
  }
}
.service-info__item {
  display: flex;
  align-items: center;
  gap: 0.5rem;
  font-size: clamp(1.4rem, 1.3514563107rem + 0.1294498382vw, 1.6rem);
  font-weight: 500;
}
.service-info__item:not(:last-child) {
  margin-bottom: 0.5rem;
}
@media only screen and (max-width: 559px) {
  .service-info__item {
    align-items: flex-start;
  }
}
@media only screen and (max-width: 559px) {
  .service-info__item img {
    position: relative;
    top: 0.7rem;
    width: 1.6rem;
    height: 1.3rem;
  }
}

.service-menu {
  padding-bottom: 10rem;
}
@media only screen and (max-width: 559px) {
  .service-menu {
    padding-bottom: 6rem;
  }
}
.service-menu .service-cm__card {
  margin-bottom: 0;
}
.service-menu .service-cm__card--offer {
  margin-bottom: 5rem;
}
@media only screen and (max-width: 559px) {
  .service-menu .service-cm__card--offer {
    margin-bottom: 4.5rem;
  }
}

.service-offer {
  padding-bottom: 10rem;
}
@media only screen and (max-width: 559px) {
  .service-offer {
    padding-bottom: 4rem;
  }
}
.service-offer__text {
  text-align: center;
  font-size: clamp(1.6rem, 1.5514563107rem + 0.1294498382vw, 1.8rem);
  line-height: 2;
  margin-bottom: 5rem;
  letter-spacing: 0.05em;
}
@media only screen and (max-width: 559px) {
  .service-offer__text {
    margin-bottom: 4rem;
  }
}

.service-cta {
  padding-bottom: 10rem;
}
@media only screen and (max-width: 559px) {
  .service-cta {
    padding-bottom: 6rem;
  }
}
.service-cta--last {
  padding-bottom: 7rem;
}
@media only screen and (max-width: 559px) {
  .service-cta--last {
    padding-bottom: 0;
  }
}
.service-cta__wrap {
  background: rgba(255, 255, 255, 0.6);
  border-radius: 5rem;
  width: 100rem;
  margin-inline: auto;
  box-shadow: 5px 5px 5px rgba(0, 0, 0, 0.15);
  padding-block: 10rem;
}
@media only screen and (max-width: 559px) {
  .service-cta__wrap {
    width: 100%;
    padding-inline: 2rem;
    border-radius: 1.2rem;
    padding-block: 6rem;
    box-shadow: none;
  }
}
.service-cta__subttl {
  color: var(--mainColor);
  text-align: center;
  font-size: clamp(1.8rem, 1.7029126214rem + 0.2588996764vw, 2.2rem);
  margin-bottom: 2rem;
  letter-spacing: 0.1em;
  font-weight: 500;
}
@media only screen and (max-width: 559px) {
  .service-cta__subttl {
    margin-bottom: 1.5rem;
  }
}
.service-cta__price {
  margin-bottom: 4rem;
  font-size: clamp(3.4rem, 3.2058252427rem + 0.5177993528vw, 4.2rem);
  text-align: center;
  color: var(--mainColor);
  line-height: 1;
  font-weight: 500;
}
@media only screen and (max-width: 559px) {
  .service-cta__price {
    margin-bottom: 4.5rem;
  }
}
.service-cta__price span {
  font-size: clamp(1.8rem, 1.654368932rem + 0.3883495146vw, 2.4rem);
}
.service-cta__text {
  text-align: center;
  font-size: clamp(1.6rem, 1.5514563107rem + 0.1294498382vw, 1.8rem);
  line-height: 2;
  margin-bottom: 5rem;
  letter-spacing: 0.05em;
}
@media only screen and (max-width: 559px) {
  .service-cta__text {
    margin-bottom: 3.5rem;
  }
}

.service-price {
  margin-bottom: 10rem;
}
@media only screen and (max-width: 559px) {
  .service-price {
    margin-bottom: 6rem;
  }
}
.service-price__ttlgroup {
  margin-bottom: 7rem;
}
@media only screen and (max-width: 559px) {
  .service-price__ttlgroup {
    margin-bottom: 4.5rem;
  }
}
.service-price__subttl {
  color: var(--mainColor);
  text-align: center;
  font-size: clamp(1.8rem, 1.7029126214rem + 0.2588996764vw, 2.2rem);
  margin-bottom: 2rem;
  letter-spacing: 0.1em;
}
@media only screen and (max-width: 559px) {
  .service-price__subttl {
    margin-bottom: 1.5rem;
  }
}
.service-price__price {
  margin-bottom: 1.5rem;
  font-size: clamp(3.4rem, 3.2058252427rem + 0.5177993528vw, 4.2rem);
  text-align: center;
  color: var(--mainColor);
  line-height: 1;
  font-weight: 500;
}
.service-price__price span {
  font-size: clamp(1.8rem, 1.654368932rem + 0.3883495146vw, 2.4rem);
}
.service-price__note {
  text-align: center;
  font-size: clamp(1.4rem, 1.3029126214rem + 0.2588996764vw, 1.8rem);
  line-height: 1.5;
  margin-bottom: 4rem;
  letter-spacing: 0.05em;
}
.service-price__table {
  width: 74rem;
  margin-inline: auto;
  margin-bottom: 5rem;
}
@media only screen and (max-width: 559px) {
  .service-price__table {
    margin-bottom: 4rem;
    width: 100%;
  }
}
.service-price__table thead tr {
  height: 5rem;
}
@media only screen and (max-width: 559px) {
  .service-price__table thead tr {
    height: 3.2rem;
  }
}
.service-price__table thead th {
  background-color: var(--mainColor);
  color: var(--colorW);
  text-align: center;
  vertical-align: middle;
  font-size: clamp(1.2rem, 1.054368932rem + 0.3883495146vw, 1.8rem);
  letter-spacing: 0.05em;
  font-weight: 500;
}
@media only screen and (max-width: 559px) {
  .service-price__table thead th {
    line-height: 1.2;
  }
}
.service-price__table thead th span {
  font-size: clamp(1rem, 0.854368932rem + 0.3883495146vw, 1.6rem);
}
@media only screen and (max-width: 559px) {
  .service-price__table thead th:first-child {
    width: 13.3rem;
  }
}
.service-price__table thead th:nth-child(2), .service-price__table thead th:nth-child(3) {
  width: calc((100% - 13.3rem) / 2);
}
.service-price__table tbody td {
  background-color: var(--colorW);
  text-align: center;
  height: 6.5rem;
  vertical-align: middle;
  font-size: clamp(1.2rem, 1.054368932rem + 0.3883495146vw, 1.8rem);
  letter-spacing: 0.05em;
  font-weight: 500;
}
@media only screen and (max-width: 559px) {
  .service-price__table tbody td {
    height: 4.2rem;
    line-height: 1.3;
  }
}
.service-price__table tbody td:first-child {
  background: #fdf6f2;
}
@media only screen and (max-width: 559px) {
  .service-price__table tbody td:first-child {
    width: 13.3rem;
  }
}
.service-price__table tbody td:nth-child(2), .service-price__table tbody td:nth-child(3) {
  width: calc((100% - 13.3rem) / 2);
}
.service-price__table tbody td .or {
  color: var(--mainColor);
}
.service-price__table tbody td .small {
  font-size: clamp(0.9rem, 0.7786407767rem + 0.3236245955vw, 1.4rem);
}

.service-area {
  padding-bottom: 10rem;
}
@media only screen and (max-width: 559px) {
  .service-area {
    padding-bottom: 6rem;
  }
}
.service-area__list {
  margin-bottom: 5rem;
}
@media only screen and (max-width: 559px) {
  .service-area__list {
    margin-bottom: 3.5rem;
  }
}
.service-area__item:not(:last-child) {
  margin-bottom: 4rem;
}
@media only screen and (max-width: 559px) {
  .service-area__item:not(:last-child) {
    margin-bottom: 2.5rem;
  }
}
.service-area__subttl {
  font-size: clamp(1.8rem, 1.7029126214rem + 0.2588996764vw, 2.2rem);
  text-align: center;
  color: var(--mainColor);
  margin-bottom: 2rem;
  line-height: 1;
  font-weight: 500;
}
@media only screen and (max-width: 559px) {
  .service-area__subttl {
    margin-bottom: 1.5rem;
  }
}
.service-area__subtext {
  text-align: center;
  font-size: clamp(1.4rem, 1.3029126214rem + 0.2588996764vw, 1.8rem);
  font-weight: 500;
}
.service-area__text {
  text-align: center;
  font-size: clamp(1.4rem, 1.3029126214rem + 0.2588996764vw, 1.8rem);
  margin-bottom: 5rem;
}
@media only screen and (max-width: 559px) {
  .service-area__text {
    margin-bottom: 3.5rem;
  }
}

.service-flow {
  padding-bottom: 10rem;
}
@media only screen and (max-width: 559px) {
  .service-flow {
    padding-bottom: 6rem;
  }
}
.service-flow__ttlgroup {
  margin-bottom: 7rem;
}
@media only screen and (max-width: 559px) {
  .service-flow__ttlgroup {
    margin-bottom: 3.5rem;
  }
}
@media only screen and (max-width: 559px) {
  .service-flow__card {
    grid-template-columns: repeat(1, 1fr);
    gap: 3rem;
  }
}
.service-flow__figure {
  margin-bottom: 1.5rem;
}
@media only screen and (max-width: 559px) {
  .service-flow__figure {
    text-align: center;
    margin-bottom: 2.5rem;
  }
}
.service-flow__subttl {
  line-height: 1;
  color: var(--mainColor);
  margin-bottom: 1.5rem;
  font-size: 1.8rem;
}
.service-flow__text {
  font-size: 1.6rem;
  line-height: 1.5;
  font-weight: 500;
}

.service-faq {
  padding-bottom: 10rem;
}
@media only screen and (max-width: 559px) {
  .service-faq {
    padding-bottom: 6rem;
  }
}
.service-faq__wrap {
  width: 100.5rem;
  margin-inline: auto;
}
@media only screen and (max-width: 559px) {
  .service-faq__wrap {
    width: 100%;
  }
}
.service-faq__text {
  font-size: clamp(1.4rem, 1.3029126214rem + 0.2588996764vw, 1.8rem);
  text-align: center;
  margin-bottom: 4.5rem;
  font-weight: 500;
}
@media only screen and (max-width: 559px) {
  .service-faq__text {
    margin-bottom: 3.5rem;
  }
}
.service-faq__item {
  margin-bottom: 4.5rem;
}
@media only screen and (max-width: 559px) {
  .service-faq__item {
    margin-bottom: 2.5rem;
  }
}
.service-faq__que {
  margin-bottom: 2rem;
  font-size: clamp(1.6rem, 1.454368932rem + 0.3883495146vw, 2.2rem);
  font-weight: 500;
  display: flex;
  line-height: 1.6363636364;
}
@media only screen and (max-width: 559px) {
  .service-faq__que {
    padding-inline: 6%;
    margin-bottom: 1.5rem;
  }
}
.service-faq__que span {
  color: var(--mainColor);
  font-size: clamp(2rem, 1.854368932rem + 0.3883495146vw, 2.6rem);
  position: relative;
  top: -0.3rem;
}
.service-faq__ans {
  background-color: var(--colorW);
  padding: 3.5rem 3rem;
  border-radius: 1rem;
  font-size: clamp(1.6rem, 1.454368932rem + 0.3883495146vw, 2.2rem);
  position: relative;
  display: flex;
  align-items: baseline;
  font-weight: 500;
  line-height: 1.6363636364;
}
@media only screen and (max-width: 559px) {
  .service-faq__ans {
    padding: 2.5rem 6%;
    border-radius: 0.8rem;
  }
}
.service-faq__ans::before {
  content: "A：";
  color: var(--mainColor);
  font-size: clamp(2rem, 1.854368932rem + 0.3883495146vw, 2.6rem);
  position: relative;
  top: 0.1rem;
  line-height: 1;
}
.service-faq__ans ul li {
  display: flex;
  gap: 0.5rem;
}
.service-faq__contact {
  font-size: clamp(1.6rem, 1.454368932rem + 0.3883495146vw, 2.2rem);
}
@media only screen and (max-width: 559px) {
  .service-faq__contact {
    padding-inline: 6%;
  }
}
.service-faq__contact a {
  color: var(--mainColor);
  text-decoration: underline;
}

.access {
  padding-bottom: 10rem;
}
@media only screen and (max-width: 559px) {
  .access {
    padding-bottom: 6rem;
  }
}
.access__inner {
  padding-bottom: clamp(10rem, 8.5436893204rem + 3.8834951456vw, 16rem);
}
.access__flex {
  gap: 8rem;
  justify-content: space-between;
  display: flex;
}
@media only screen and (max-width: 559px) {
  .access__flex {
    flex-direction: column;
    gap: 3rem;
    justify-content: center;
  }
}
.access__item:first-child {
  padding-bottom: clamp(4rem, 3.7572815534rem + 0.6472491909vw, 5rem);
  margin-bottom: clamp(4rem, 3.7572815534rem + 0.6472491909vw, 5rem);
  border-bottom: 1px solid var(--mainColor);
}
.access__ttlgroup {
  margin-bottom: 5rem;
}
@media only screen and (max-width: 559px) {
  .access__ttlgroup {
    margin-bottom: 2.5rem;
  }
}
.access__subttl {
  font-size: clamp(2.4rem, 2.0601941748rem + 0.9061488673vw, 3.8rem);
  letter-spacing: 0.1em;
  line-height: 1;
  margin-bottom: 2.5rem;
  font-weight: 500;
}
@media only screen and (max-width: 559px) {
  .access__subttl {
    margin-bottom: 1rem;
  }
}
.access__ttl {
  margin-bottom: 4rem;
  font-size: clamp(1.8rem, 1.7029126214rem + 0.2588996764vw, 2.2rem);
  font-weight: 500;
  letter-spacing: 0.1em;
}
@media only screen and (max-width: 559px) {
  .access__ttl {
    margin-bottom: 2rem;
  }
}
.access__contarea {
  margin-bottom: clamp(1.5rem, 0.7718446602rem + 1.9417475728vw, 4.5rem);
}
.access__address {
  font-size: clamp(1.4rem, 1.254368932rem + 0.3883495146vw, 2rem);
  letter-spacing: 0.05em;
  line-height: 1.5;
}
.access__address span {
  font-size: clamp(1.4rem, 1.3514563107rem + 0.1294498382vw, 1.6rem);
}
.access__address img {
  vertical-align: middle;
  margin-right: 1rem;
}
.access__address:first-child {
  margin-bottom: 2.5rem;
}
@media only screen and (max-width: 559px) {
  .access__address:first-child {
    margin-bottom: 1.5rem;
  }
}
.access__address:nth-child(2) {
  margin-bottom: 5rem;
}
@media only screen and (max-width: 559px) {
  .access__address:nth-child(2) {
    margin-bottom: 2.5rem;
  }
}
.access__link span {
  font-size: clamp(1.2rem, 1.1029126214rem + 0.2588996764vw, 1.6rem);
  letter-spacing: 0.04em;
  padding-bottom: 0.5rem;
  border-bottom: 1px solid;
  margin-right: 0.5rem;
}
.access__link:hover {
  color: var(--mainColor);
}
.access iframe {
  border-radius: 0.8rem;
  aspect-ratio: 52/33;
}
@media only screen and (max-width: 559px) {
  .access iframe {
    width: 100%;
  }
}

.vision {
  padding-bottom: 10rem;
}
@media only screen and (max-width: 559px) {
  .vision {
    padding-bottom: 6rem;
  }
}
.vision__ttlgroup {
  margin-bottom: 7rem;
}
@media only screen and (max-width: 559px) {
  .vision__ttlgroup {
    margin-bottom: 5rem;
  }
}
.vision__subttl {
  font-size: clamp(2.4rem, 1.9145631068rem + 1.2944983819vw, 4.4rem);
  font-weight: 500;
  letter-spacing: 0.1em;
  line-height: 1.5;
  text-align: center;
  color: var(--mainColor);
  margin-bottom: 5rem;
}
@media only screen and (max-width: 559px) {
  .vision__subttl {
    margin-bottom: 3rem;
  }
}
.vision__text {
  font-size: clamp(1.6rem, 1.5514563107rem + 0.1294498382vw, 1.8rem);
  text-align: center;
  letter-spacing: 0.05em;
  line-height: 1.75;
  margin-bottom: 5rem;
}
@media only screen and (max-width: 559px) {
  .vision__text {
    text-align: left;
    margin-bottom: 3rem;
  }
}
.vision__figure {
  text-align: center;
  margin-bottom: 7rem;
}
@media only screen and (max-width: 559px) {
  .vision__figure {
    margin-bottom: 3.5rem;
  }
}

.reason {
  padding-bottom: 10rem;
}
@media only screen and (max-width: 559px) {
  .reason {
    padding-bottom: 6rem;
  }
}
.reason__ttlgroup {
  margin-bottom: 7rem;
}
@media only screen and (max-width: 559px) {
  .reason__ttlgroup {
    margin-bottom: 4rem;
  }
}
.reason__card {
  gap: 2.5rem;
  margin-bottom: 0;
}
@media only screen and (max-width: 559px) {
  .reason__card {
    gap: 4rem;
    margin-bottom: 0;
    grid-template-columns: repeat(1, 1fr);
  }
}
.reason__cardfigure {
  margin-bottom: 1.5rem;
  width: 100%;
}
.reason__cardfigure img {
  width: 100%;
}
.reason__cardttl {
  font-size: 2rem;
  font-weight: 500;
  line-height: 1.5;
  color: var(--mainColor);
  margin-bottom: 2rem;
}
@media only screen and (max-width: 559px) {
  .reason__cardttl {
    margin-bottom: 1.5rem;
  }
}
.reason__cardtext {
  font-size: 1.6rem;
  line-height: 1.5;
}

.lhcc .about__service {
  padding-bottom: 0;
}
@media only screen and (max-width: 559px) {
  .lhcc .about__service {
    padding-bottom: 0;
  }
}
/*# sourceMappingURL=style.css.map */
