.font-en {
  font-family: aktiv-grotesk, "Helvetica Neue", helvetica, heisei-kaku-gothic-std, -apple-system, blinkmacsystemfont, "Helvetica Neue", "游ゴシック体", yugothic, "游ゴシック", "Yu Gothic", "ヒラギノ角ゴ ProN W3", hiragino kaku gothic pron, arial, "メイリオ", meiryo, sans-serif
}

.c-article[data-page=single-interview] {
  background-color: #f0f0f0
}

.c-article[data-page=single-interview] .c-page-fv {
  padding-bottom: 9rem;
  margin-bottom: 0;
  background-color: #fff
}

@media screen and (max-width: 767px) {
  .c-article[data-page=single-interview] .c-page-fv {
	padding-bottom: 2.3rem;
	margin: 7.1rem 0 0
  }
}

.c-article[data-page=single-staff] {
  background-color: #f0f0f0
}

.c-article[data-page=single-staff] .c-page-fv {
  padding-bottom: 8vw;
  margin-bottom: 0;
  background-color: #fff
}

@media screen and (max-width: 767px) {
  .c-article[data-page=single-staff] .c-page-fv {
	padding-bottom: 2.3rem;
	margin: 7.1rem 0 0
  }
}

@media screen and (width >=1600px) {
  .c-article[data-page=single-staff] .c-page-fv .c-article__heading-label {
	max-width: 80vw
  }
}

.c-article[data-page=single-staff] .c-article__content {
  padding-top: 23.5rem
}

@media screen and (max-width: 767px) {
  .c-article[data-page=single-staff] .c-article__content {
	padding-top: .8rem
  }
}

.c-article .c-page-fv {
  margin-bottom: 9rem
}

@media screen and (max-width: 767px) {
  .c-article .c-page-fv {
	margin: 7.1rem 0 2.3rem
  }
}

.c-article .c-page-fv__index-wrp {
  position: absolute;
  right: 0;
  bottom: 0;
  justify-content: flex-end;
  width: 100%
}

@media screen and (max-width: 767px) {
  .c-article .c-page-fv__index-wrp {
	top: -2rem
  }
}

.c-article .c-page-fv__index-img-breadcrumb {
  -ms-overflow-style: none;
  scrollbar-width: none
}

.c-article .c-page-fv__index-img-breadcrumb::-webkit-scrollbar {
  display: none
}

@media screen and (max-width: 1080px) {
  .c-article .c-page-fv__index-img-breadcrumb {
	justify-content: flex-end;
	margin-bottom: 3.5rem
  }
}

@media screen and (max-width: 767px) {
  .c-article .c-page-fv__index-img-breadcrumb {
	justify-content: flex-start;
	margin-bottom: 0
  }
}

.c-article .c-article__heading {
  margin-bottom: 0
}

.c-article .c-article__heading>*:not(img) {
  display: block;
  max-width: 121rem;
  padding: 0 3rem;
  margin: 0 auto;
  margin-bottom: 0
}

.c-article .c-article__heading .c-article__heading-label {
  transform: translateY(-30px)
}

@media screen and (max-width: 1080px) {
  .c-article .c-article__heading .c-article__heading-label {
	transform: translateY(-10px)
  }
}

@media screen and (max-width: 767px) {
  .c-article .c-article__heading .c-article__heading-label {
	margin-top: 2rem;
	font-size: 1.2rem;
	font-weight: 300;
	transform: translateY(0)
  }
}

.c-article .c-article__heading h1 {
  margin-top: 1rem;
  font-size: 3rem;
  line-height: 1.8;
  transform: translateY(0)
}

@media screen and (max-width: 767px) {
  .c-article .c-article__heading h1 {
	margin-top: 1.8rem;
	font-size: 1.8rem;
	line-height: 1.6
  }
}

.c-article .c-article__heading h1 p {
  max-width: 60rem
}

.c-article .c-article__heading .c-article__heading-category {
  display: flex;
  gap: 1rem;
  margin-top: 3rem
}

@media screen and (max-width: 767px) {
  .c-article .c-article__heading .c-article__heading-category {
	margin-top: 1.6rem
  }
}

.c-article .c-article__heading .c-article__heading-category>span {
  display: inline-block;
  padding: 10px 15px;
  font-size: 1.4rem;
  line-height: 1;
  color: #505050;
  border: 1px solid #a3a3a3;
  border-radius: 3px
}

@media screen and (max-width: 767px) {
  .c-article .c-article__heading .c-article__heading-category>span {
	padding: 6px 7px;
	font-size: 1.2rem
  }
}

.c-article .c-article__heading .c-article__heading-owner {
  margin-top: 4.3rem;
  font-size: 1.8rem;
  font-weight: 300;
  line-height: 1;
  color: #9a9a9a
}

@media screen and (max-width: 767px) {
  .c-article .c-article__heading .c-article__heading-owner {
	margin-top: 3rem;
	font-size: 1.4rem
  }
}

.c-article__content {
  max-width: 111rem;
  padding: 0 3rem;
  margin: 0 auto 15rem
}

@media screen and (max-width: 767px) {
  .c-article__content {
	padding: 0 2.4rem;
	margin: 0 auto 9rem
  }
}

.c-article__content[data-type=news] {
  margin: 14rem auto 8rem
}

@media screen and (max-width: 1080px) {
  .c-article__content[data-type=news] {
	margin: 10rem auto 6rem
  }
}

@media screen and (max-width: 767px) {
  .c-article__content[data-type=news] {
	margin: 3.2rem auto 10rem
  }
}

.c-article__content[data-type=news] .c-article__content-index {
  padding-top: 10rem;
  border-top: 1px solid #c5c5c5
}

@media screen and (max-width: 767px) {
  .c-article__content[data-type=news] .c-article__content-index {
	padding-top: 5.5rem
  }
}

.c-article__content-thumbnail {
  aspect-ratio: 14/9;
  margin-bottom: 8rem
}

.c-article__content-thumbnail img {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover
}

@media screen and (max-width: 767px) {
  .c-article__content-thumbnail {
	width: calc(100% + 4.8rem);
	margin-bottom: 4rem;
	transform: translateX(-2.4rem)
  }
}

.c-article__content-thumbnail[data-width=large] {
  width: 100vw;
  aspect-ratio: 144/73;
  margin-left: calc(50% - 50vw)
}

@media screen and (max-width: 767px) {
  .c-article__content-thumbnail[data-width=large] {
	transform: translateX(0)
  }
}

.c-article__content-text {
  font-weight: 300
}

.c-article__content-text #toc_container {
  display: block;
  width: auto;
  padding: 0;
  margin-bottom: 10rem;
  font-size: inherit;
  text-align: left;
  background: rgba(0, 0, 0, 0);
  border: none
}

@media screen and (max-width: 767px) {
  .c-article__content-text #toc_container {
	margin-bottom: 6rem
  }
}

.c-article__content-text #toc_container p.toc_title {
  margin-bottom: 2.5rem;
  font-size: 1.4rem;
  font-weight: 500;
  line-height: 1em;
  color: #9a9a9a;
  text-align: left
}

.c-article__content-text #toc_container ul.toc_list {
  margin-top: 0;
  font-size: 1.5rem;
  font-weight: 500;
  color: #5f5f65
}

.c-article__content-text #toc_container ul.toc_list li {
  position: relative;
  padding-left: 1rem;
  line-height: 1.4
}

.c-article__content-text #toc_container ul.toc_list li::before {
  position: absolute;
  top: 9px;
  left: 0;
  width: 4px;
  height: 4px;
  content: "";
  background-color: #d9d9d9;
  border-radius: 50%
}

@media screen and (max-width: 767px) {
  .c-article__content-text #toc_container ul.toc_list li::before {
	top: 8px
  }
}

.c-article__content-text #toc_container ul.toc_list li+li {
  margin-top: 2.2rem
}

@media screen and (max-width: 767px) {
  .c-article__content-text #toc_container ul.toc_list li+li {
	margin-top: 2rem
  }
}

.c-article__content-text #toc_container ul.toc_list li a {
  color: #5f5f65;
  transition: color .3s
}

.c-article__content-text #toc_container ul.toc_list li a::after {
  display: none
}

.c-article__content-text #toc_container ul.toc_list li a:hover {
  color: #2d2d2d;
  text-decoration: none
}

.c-article__content-text #toc_container ul.toc_list li ul {
  margin-left: 0
}

.c-article__content-text #toc_container ul.toc_list li li {
  padding-left: 2rem;
  margin-top: 1.5rem;
  font-weight: 300
}

.c-article__content-text #toc_container ul.toc_list li li::before {
  left: 8px
}

.c-article__content-text>*+* {
  margin-top: 3rem
}

@media screen and (max-width: 767px) {
  .c-article__content-text>*+* {
	margin-top: 2rem
  }
}

.c-article__content-text h2 {
  margin-bottom: 2.5rem;
  font-size: 2.8rem;
  font-weight: 300;
  line-height: 2;
  text-decoration: underline;
  text-decoration-thickness: 1px;
  text-decoration-color: #c5c5c5;
  text-underline-offset: 18px
}

@media screen and (max-width: 767px) {
  .c-article__content-text h2 {
	margin-bottom: 3.6rem;
	font-size: 2rem;
	line-height: 2.3;
	text-decoration-thickness: 1px;
	text-underline-offset: 12px
  }
}

.c-article__content-text *+h2 {
  margin-top: 5rem
}

@media screen and (max-width: 767px) {
  .c-article__content-text *+h2 {
	margin-top: 4rem
  }
}

.c-article__content-text h3 {
  position: relative;
  padding-left: 1.8rem;
  font-size: 2rem;
  font-weight: 500;
  color: #505050
}

@media screen and (max-width: 767px) {
  .c-article__content-text h3 {
	font-size: 1.6rem
  }
}

.c-article__content-text h3::before {
  position: absolute;
  top: 10%;
  left: 0;
  display: inline-block;
  width: 4px;
  height: 80%;
  content: "";
  background-color: #c5c5c5
}

.c-article__content-text *+h3 {
  margin-top: 5rem
}

@media screen and (max-width: 767px) {
  .c-article__content-text *+h3 {
	margin-top: 4rem
  }
}

.c-article__content-text p {
  font-size: 1.8rem;
  line-height: 2.2
}

@media screen and (max-width: 767px) {
  .c-article__content-text p {
	font-size: 1.6rem
  }
}

.c-article__content-text b,
.c-article__content-text strong {
  font-weight: 700
}

.c-article__content-text figure {
  width: fit-content;
  margin-top: 3rem;
  margin-right: auto;
  margin-left: auto
}

@media screen and (max-width: 767px) {
  .c-article__content-text figure {
	margin-top: 6rem;
	text-align: left
  }
}

.c-article__content-text figure figcaption {
  margin-top: 1rem;
  font-size: 1.4rem;
  line-height: 1.8
}

@media screen and (max-width: 767px) {
  .c-article__content-text figure figcaption {
	font-size: 1.2rem
  }
}

.c-article__content-text figure.wp-block-image a::after {
  background-image: none
}

.c-article__content-text>figure {
  margin-top: 3.5rem
}

.c-article__content-text .wp-block-columns figure {
  margin-top: 0
}

.c-article__content-text figure.is-provider-youtube {
  width: 100%;
  aspect-ratio: 16/9
}

.c-article__content-text figure.is-provider-youtube .wp-block-embed__wrapper {
  height: 100%
}

.c-article__content-text figure.is-provider-youtube .wp-block-embed__wrapper iframe {
  width: 100%;
  height: 100%
}

.c-article__content-text blockquote {
  padding-left: 3.5rem;
  margin-top: 8rem;
  font-size: 1.8rem;
  font-style: normal;
  font-weight: 300;
  line-height: 2;
  color: #505050;
  border-left: 4px solid #ddd
}

@media screen and (max-width: 767px) {
  .c-article__content-text blockquote {
	padding-left: 2rem;
	margin-top: 6rem;
	font-size: 1.4rem;
	line-height: 2
  }
}

.c-article__content-text blockquote strong {
  font-size: 2rem;
  font-weight: 500
}

@media screen and (max-width: 767px) {
  .c-article__content-text blockquote strong {
	font-size: 1.8rem
  }
}

.c-article__content-text cite {
  font-style: normal
}

.c-article__content-text a {
  position: relative;
  color: #9a9a9a;
  text-decoration: underline
}

.c-article__content-text a:hover {
  text-decoration: none
}

.c-article__content-text a::after {
  position: relative;
  top: 1px;
  display: inline-block;
  width: 15px;
  height: 15px;
  margin-left: 3px;
  content: "";
  background-image: url(../images/link-icon.020ba1715b4ed926469b.svg);
  background-size: contain
}

.c-article__content-text a[target]::after {
  background-image: url(../images/outlink-icon.09b6e48b8011c480c3df.svg)
}

.c-article__content-text .has-red-color {
  color: #d05833
}

.c-article__content-text .has-blue-color {
  color: #3a69a1
}

.c-article__content-text .has-yellow-color {
  color: #b39839
}

.c-article__content-text .has-gray-color {
  color: #9b9b9b
}

.c-article__other {
  max-width: 121rem;
  padding: 0 3rem;
  margin: 0 auto
}

@media screen and (max-width: 767px) {
  .c-article__other {
	padding: 0 2.4rem
  }
}

.c-article__other[data-padding=bottom-large] {
  padding-bottom: 27rem
}

@media screen and (max-width: 1080px) {
  .c-article__other[data-padding=bottom-large] {
	padding-bottom: 4.6rem
  }
}

.c-article__other+.c-article__other {
  margin-top: 17rem
}

@media screen and (max-width: 767px) {
  .c-article__other+.c-article__other {
	margin-top: 9rem
  }
}

.c-article__other-heading {
  padding-top: 2rem;
  margin-bottom: 6.5rem;
  border-top: 1px solid #c5c5c5
}

@media screen and (max-width: 767px) {
  .c-article__other-heading {
	margin-bottom: 4.6rem
  }
}

.c-article__other-heading span {
  line-height: 1.8;
  color: #9a9a9a
}

.c-article__other-heading h2 {
  margin-top: 5.5rem;
  font-size: 2.8rem;
  font-weight: 300;
  line-height: 2
}

@media screen and (max-width: 767px) {
  .c-article__other-heading h2 {
	margin-top: .7rem;
	font-size: 1.8rem
  }
}

.c-article__other-list {
  display: grid;
  grid-template-columns: 1fr 1fr 1fr;
  gap: 5rem;
  margin-bottom: 17rem
}

@media screen and (max-width: 767px) {
  .c-article__other-list {
	display: block;
	margin-bottom: 6rem
  }
}

@media screen and (max-width: 767px) {
  .c-article__other-list li+li {
	margin-top: 8rem
  }
}

.c-article__other-list li .c-article__other-list-item {
  position: relative;
  display: block;
  height: 100%;
  color: #505050
}

.c-article__other-list li .c-article__other-list-item:hover .c-article__other-list-item-image {
  filter: brightness(115%)
}

.c-article__other-list li .c-article__other-list-item-image {
  aspect-ratio: 1/1;
  margin-bottom: 4rem;
  transition: filter .5s ease
}

.c-article__other-list li .c-article__other-list-item-image img {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover
}

.c-article__other-list li .c-article__other-list-item-image .comment-end {
  display: none
}

.c-article__other-list li .c-article__other-list-item-image.event-end {
  position: relative
}

.c-article__other-list li .c-article__other-list-item-image.event-end::before {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  content: "";
  background-color: #000;
  opacity: .4
}

.c-article__other-list li .c-article__other-list-item-image.event-end .comment-end {
  position: absolute;
  top: 50%;
  left: 50%;
  display: block;
  font-size: 1.8rem;
  font-weight: 500;
  line-height: 1.7em;
  color: #fff;
  text-align: center;
  transform: translate(-50%, -50%)
}

@media screen and (max-width: 767px) {
  .c-article__other-list li .c-article__other-list-item-image {
	margin-bottom: 2rem
  }
}

.c-article__other-list li .c-article__other-list-item-label[data-item=multiple] {
  display: flex;
  gap: 1rem
}

@media screen and (max-width: 767px) {
  .c-article__other-list li .c-article__other-list-item-label[data-item=multiple] {
	gap: 1rem .6rem
  }
}

.c-article__other-list li .c-article__other-list-item-label span {
  display: inline-block;
  padding: 10px 9px;
  font-size: 1.4rem;
  line-height: 1;
  border: 1px solid #c5c5c5;
  border-radius: 3px
}

@media screen and (max-width: 767px) {
  .c-article__other-list li .c-article__other-list-item-label span {
	padding: 6px 7px;
	font-size: 1.2rem
  }
}

.c-article__other-list li .c-article__other-list-item-text {
  margin: 2.8rem 0 7.5rem
}

@media screen and (max-width: 767px) {
  .c-article__other-list li .c-article__other-list-item-text {
	margin: 1.9rem 0 2.2rem
  }
}

.c-article__other-list li .c-article__other-list-item-text time {
  display: block;
  line-height: 1
}

.c-article__other-list li .c-article__other-list-item-text p {
  margin-top: 1.6rem;
  font-size: 2rem;
  line-height: 1.8
}

@media screen and (max-width: 767px) {
  .c-article__other-list li .c-article__other-list-item-text p {
	margin-top: 1.2rem;
	font-size: 1.4rem
  }
}

.c-article__other-list li .c-article__other-list-item-text .date-info {
  display: block;
  font-size: 1.6rem;
  line-height: 1;
  color: #505050
}

@media screen and (max-width: 767px) {
  .c-article__other-list li .c-article__other-list-item-text .date-info {
	font-size: 1.2rem
  }
}

.c-article__other-list li .c-article__other-list-item-text .title-info {
  min-height: 10.8rem;
  margin-top: 1.6rem;
  font-size: 2rem;
  line-height: 1.8
}

@media screen and (max-width: 1080px) {
  .c-article__other-list li .c-article__other-list-item-text .title-info {
	min-height: 14.4rem
  }
}

@media screen and (max-width: 767px) {
  .c-article__other-list li .c-article__other-list-item-text .title-info {
	min-height: auto;
	margin-top: 1.2rem;
	font-size: 1.4rem
  }
}

.c-article__other-list li .c-article__other-list-item-link {
  position: absolute;
  bottom: 0;
  left: 0;
  width: 100%;
  margin-top: 2rem
}

@media screen and (max-width: 767px) {
  .c-article__other-list li .c-article__other-list-item-link {
	position: relative
  }
}

.c-article__bottom {
  margin-bottom: 13.8rem
}

@media screen and (max-width: 767px) {
  .c-article__bottom {
	margin-bottom: 11.3rem
  }
}

.c-article__bottom .c-button__small {
  margin: 0 auto
}

.c-article__other-list-article {
  display: grid;
  grid-template-columns: 1fr 1fr 1fr;
  gap: 5rem
}

@media screen and (max-width: 767px) {
  .c-article__other-list-article {
	display: block
  }
}

@media screen and (max-width: 767px) {
  .c-article__other-list-article>li+li {
	margin-top: 6rem
  }
}

.c-article__other-list-article li.p-works-a__mainWrp-list {
  width: 100%;
  padding-left: 0
}

.c-article__other-list-article li.p-works-a__mainWrp-list .p-works-a__mainWrp-list-subTtl {
  position: static;
  margin: 0 0 10px;
  writing-mode: horizontal-tb
}

.c-article__other-list-article li.p-works-a__mainWrp-list .p-works-a__mainWrp-list-contents .img-wrp {
  aspect-ratio: 1/1
}

.c-article__other-list-article li.p-works-a__mainWrp-list .p-works-a__mainWrp-list-contents .img-wrp img {
  transition: opacity .3s
}

.c-article__other-list-article li.p-works-a__mainWrp-list .p-works-a__mainWrp-list-contents .list-title {
  aspect-ratio: initial;
  margin-bottom: 4rem;
  font-size: 2rem
}

@media screen and (max-width: 1080px) {
  .c-article__other-list-article li.p-works-a__mainWrp-list .p-works-a__mainWrp-list-contents .list-title {
	margin-bottom: 2.3rem;
	font-size: 1.4rem
  }
}

.c-article__other-list-article li.p-works-a__mainWrp-list .p-works-a__mainWrp-list-contents .term-contents li {
  background-color: #fff
}

.c-article__other-list-article-item {
  position: relative;
  display: block;
  height: 100%
}

.c-article__other-list-article-item .p-blog__list-item-link {
  position: absolute;
  bottom: 0;
  left: 0;
  width: 100%
}

@media screen and (max-width: 767px) {
  .c-article__other-list-article-item .p-blog__list-item-link {
	position: relative
  }
}

.c-article__other-list-article-item span {
  display: block;
  margin-bottom: .9rem;
  font-weight: 500;
  line-height: 1.8;
  color: #9a9a9a
}

@media screen and (max-width: 767px) {
  .c-article__other-list-article-item span {
	margin-bottom: 1.2rem;
	font-size: 1.4rem;
	line-height: 1
  }
}

.c-article__other-list-article-item>div:not(.p-blog__list-item-link) {
  aspect-ratio: 1/1
}

.c-article__other-list-article-item>div:not(.p-blog__list-item-link) img {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover
}

.c-article__other-list-article-item p {
  margin: 3rem 0 7rem;
  font-size: 2rem;
  line-height: 1.8;
  color: #505050
}

@media screen and (max-width: 767px) {
  .c-article__other-list-article-item p {
	margin: 1.3rem 0 1.5rem;
	font-size: 1.4rem
  }
}

.c-article__prev-next {
  padding: 15.2rem 0 0;
  background-color: #fff
}

@media screen and (max-width: 767px) {
  .c-article__prev-next {
	padding: 7.3rem 0 0
  }
}

.c-article__prev-next-wrap {
  display: flex;
  gap: 5rem;
  justify-content: space-between;
  max-width: 105rem;
  margin: 0 auto 16.5rem
}

@media screen and (max-width: 1080px) {
  .c-article__prev-next-wrap {
	padding: 0 3rem
  }
}

@media screen and (max-width: 767px) {
  .c-article__prev-next-wrap {
	display: block;
	margin: 0 auto 9.5rem
  }
}

.c-article__prev-next-wrap[data-wrap=reverse] {
  justify-content: flex-end
}

.c-article__prev-next-wrap a {
  display: block;
  width: 50%;
  transition: all .4s ease
}

@media screen and (max-width: 767px) {
  .c-article__prev-next-wrap a {
	width: 100%
  }
}

.c-article__prev-next-wrap a:hover {
  filter: brightness(120%)
}

@media screen and (max-width: 767px) {
  .c-article__prev-next-wrap a[data-type=next] {
	margin-top: 6rem
  }
}

.c-article__prev-next-wrap a[data-type=next] .c-article__prev-next-link {
  justify-content: flex-end
}

.c-article__prev-next-wrap a[data-type=next] .c-article__prev-next-link::before {
  display: none
}

.c-article__prev-next-wrap a[data-type=next] .c-article__prev-next-link::after {
  display: inline-block;
  width: .9rem;
  height: .9rem;
  margin-left: 2rem;
  content: "";
  border-right: 1px solid #9a9a9a;
  border-bottom: 1px solid #9a9a9a;
  transform: rotate(-45deg)
}

@media screen and (max-width: 767px) {
  .c-article__prev-next-wrap a[data-type=next] .c-article__prev-next-link::after {
	display: none
  }
}

.c-article__prev-next-wrap a[data-type=next] .c-article__prev-next-link span {
  margin-right: 1rem;
  margin-left: 0
}

@media screen and (max-width: 767px) {
  .c-article__prev-next-wrap a[data-type=next] .c-article__prev-next-link {
	flex-direction: row-reverse;
	justify-content: flex-start
  }

  .c-article__prev-next-wrap a[data-type=next] .c-article__prev-next-link span {
	margin-right: 0;
	margin-left: 1rem
  }
}

@media screen and (max-width: 767px) {
  .c-article__prev-next-wrap a[data-type=next] .c-article__prev-next-image {
	order: 2
  }
}

.c-article__prev-next-link {
  position: relative;
  display: flex;
  align-items: center;
  margin-bottom: 4.2rem;
  line-height: 1;
  color: #9a9a9a
}

@media screen and (max-width: 767px) {
  .c-article__prev-next-link {
	margin-bottom: 1.5rem
  }
}

.c-article__prev-next-link::before {
  display: inline-block;
  width: .9rem;
  height: .9rem;
  margin-right: 2rem;
  content: "";
  border-bottom: 1px solid #9a9a9a;
  border-left: 1px solid #9a9a9a;
  transform: rotate(45deg)
}

@media screen and (max-width: 767px) {
  .c-article__prev-next-link::before {
	display: none
  }
}

.c-article__prev-next-link p {
  font-size: 2rem
}

.c-article__prev-next-link span {
  display: inline-block;
  margin-left: 1rem;
  font-size: 1.1rem;
  font-weight: 300
}

@media screen and (max-width: 767px) {
  .c-article__prev-next-content {
	display: flex;
	gap: 1.7rem;
	align-items: flex-start;
	justify-content: space-between
  }
}

.c-article__prev-next-image {
  aspect-ratio: 25/14;
  margin-bottom: 3.4rem
}

.c-article__prev-next-image img {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover
}

@media screen and (max-width: 767px) {
  .c-article__prev-next-image {
	width: 35%;
	aspect-ratio: 1/1;
	margin-bottom: 0
  }

  .c-article[data-page=single-staff] .c-article__prev-next-image {
	width: 57%;
	aspect-ratio: 18/13
  }
}

@media screen and (max-width: 767px) {
  .c-article__prev-next-image+div {
	flex: 1
  }
}

.c-article__prev-next-title {
  font-size: 2rem;
  line-height: 1.8
}

@media screen and (max-width: 1080px) {
  .c-article__prev-next-title {
	font-size: 1.4rem
  }
}

.c-article__prev-next-info {
  margin-top: 2.9rem;
  font-size: min(1.25vw, 1.8rem);
  font-weight: 300;
  line-height: 1;
  color: #9a9a9a
}

@media screen and (max-width: 767px) {
  .c-article__prev-next-info {
	margin-top: 2rem;
	font-size: 1.2rem;
	line-height: 1.4
  }
}

.c-article__prev-next-name {
  margin-top: 1.6rem;
  font-size: min(1.67vw, 2.4rem);
  font-weight: 300;
  line-height: 1;
  color: #9a9a9a
}

@media screen and (max-width: 767px) {
  .c-article__prev-next-name {
	margin-top: 1rem;
	font-size: 1.2rem;
	line-height: 1.4
  }

  .c-article[data-page=single-staff] .c-article__prev-next-name {
	margin-top: 15px;
	font-size: 2rem
  }
}

.c-article__prev-next-name .staff-en-name {
  margin-left: 8px;
  font-size: 1.4rem;
  line-height: 1.4;
  color: #a3a3a3
}

@media screen and (max-width: 767px) {
  .c-article__prev-next-name .staff-en-name {
	display: block;
	margin-top: 10px;
	margin-left: 0
  }
}

.c-footer {
  padding: 115px 100px;
  color: #fff;
  background-color: #2d2d2d
}

@media screen and (max-width: 767px) {
  .c-footer {
	padding: 5.7rem 4.3rem
  }
}

.c-footer__main,
.c-footer__sub {
  display: flex;
  gap: 30px;
  justify-content: space-between
}

@media screen and (max-width: 1080px) {

  .c-footer__main,
  .c-footer__sub {
	display: block
  }
}

@media screen and (max-width: 1080px) {
  .c-footer__main-info {
	margin-bottom: 6rem
  }
}

.c-footer__main-info-catalog {
  display: flex;
  justify-content: center;
  padding: 3rem 0;
  margin-top: 5rem;
  font-size: 1.5rem;
  line-height: 1em;
  color: #a3a3a3;
  border: 1px solid #505050;
  border-radius: 5px
}

.c-footer__main-info-catalog span:last-child {
  margin-left: 4px
}

@media screen and (max-width: 1080px) {
  .c-footer__main-info-catalog {
	display: none
  }
}

.c-footer__main-info-sublinks {
  margin-top: 50px;
  margin-bottom: 50px;
  font-size: 1.6rem;
  line-height: 1em;
  color: #a3a3a3
}

@media screen and (max-width: 767px) {
  .c-footer__main-info-sublinks {
	display: none
  }
}

.c-footer__main-info-sublinks .__main-list {
  display: flex;
  column-gap: 12px;
  align-items: center
}

.c-footer__main-info-sublinks .__main-list:not(:first-child) {
  margin-top: 24px
}

.c-footer__main-info-sublinks .__main-list .__arrow {
  position: relative;
  display: block;
  width: 8px;
  height: 8px
}

.c-footer__main-info-sublinks .__main-list .__arrow::before {
  position: absolute;
  top: 50%;
  left: 50%;
  width: 100%;
  height: 100%;
  content: "";
  border-top: 1px solid #a3a3a3;
  border-right: 1px solid #a3a3a3;
  rotate: 45deg;
  translate: -50% -50%
}

.c-footer__main-info-sublinks--sp {
  display: none
}

@media screen and (max-width: 767px) {
  .c-footer__main-info-sublinks--sp {
	display: block;
	width: fit-content;
	margin: 42px auto;
	font-size: 1.6rem;
	line-height: 1em;
	color: #a3a3a3
  }

  .c-footer__main-info-sublinks--sp .__main-list {
	display: flex;
	column-gap: 12px;
	align-items: center
  }

  .c-footer__main-info-sublinks--sp .__main-list:not(:first-child) {
	margin-top: 20px
  }

  .c-footer__main-info-sublinks--sp .__main-list .__arrow {
	position: relative;
	display: block;
	width: 8px;
	height: 8px
  }

  .c-footer__main-info-sublinks--sp .__main-list .__arrow::before {
	position: absolute;
	top: 50%;
	left: 50%;
	width: 100%;
	height: 100%;
	content: "";
	border-top: 1px solid #a3a3a3;
	border-right: 1px solid #a3a3a3;
	rotate: 45deg;
	translate: -50% -50%
  }
}

.c-footer__main-info-catalog--sp {
  display: none
}

@media screen and (max-width: 1080px) {
  .c-footer__main-info-catalog--sp {
	display: block;
	width: fit-content;
	padding: 1.6rem 3.6rem;
	margin: 6rem auto 4.8rem;
	font-size: 1.5rem;
	line-height: 1em;
	color: #a3a3a3;
	border: 1px solid #505050;
	border-radius: 5px
  }

  .c-footer__main-info-catalog--sp span {
	display: block
  }

  .c-footer__main-info-catalog--sp span:last-child {
	margin-top: 6px
  }
}

.c-footer__main-link {
  display: flex;
  gap: 78px
}

@media screen and (max-width: 767px) {
  .c-footer__main-link {
	display: block;
	width: 230px;
	margin-inline: auto
  }
}

@media screen and (max-width: 1080px) {
  .c-footer__main-link-unit {
	margin-bottom: 5rem
  }
}

.c-footer__main-link-unit+.c-footer__main-link-unit {
  margin-top: 75px
}

@media screen and (max-width: 767px) {
  .c-footer__main-link-unit+.c-footer__main-link-unit {
	margin-top: 5rem
  }
}

.c-footer__main-link-unit>p {
  margin-bottom: 25px;
  font-size: 1.8rem
}

@media screen and (max-width: 767px) {
  .c-footer__main-link-unit>p {
	font-size: 1.6rem
  }
}

.c-footer__main-link-unit ul li:not(:last-child) {
  margin-bottom: 15px
}

@media screen and (max-width: 767px) {
  .c-footer__main-link-unit ul li:not(:last-child) {
	font-size: 1.4rem;
	line-height: 1em
  }
}

.c-footer__main-link-unit ul li a {
  font-weight: 300;
  line-height: 1;
  color: #9a9a9a
}

.c-footer__main-link-unit ul li a[target] {
  position: relative;
  display: inline-flex;
  align-items: center
}

.c-footer__main-link-unit ul li a[target]::after {
  display: inline-block;
  width: 18px;
  height: 18px;
  margin-left: 8px;
  content: url(../images/arrow_upper_right.39250930f2a4fff66a73.svg);
  transform: translateY(-1px)
}

@media screen and (max-width: 767px) {
  .c-footer__main-link-unit ul li a[target]::after {
	transform: translateY(0)
  }
}

.c-footer__main-link-unit ul li:hover a {
  color: #ddd;
  transition: color .5s ease
}

.c-footer__sub {
  align-items: flex-end;
  margin-top: 90px
}

.c-footer__sub>div {
  display: flex;
  align-items: center
}

@media screen and (max-width: 1080px) {
  .c-footer__sub {
	margin-top: 63px;
	text-align: center
  }

  .c-footer__sub>div {
	flex-direction: column-reverse
  }
}

@media screen and (max-width: 1080px) {
  .c-footer__sub-logo {
	width: 14rem;
	margin: 6.3rem auto 6.5rem
  }
}

.c-footer__sub-logo.__top-nav {
  display: none
}

@media screen and (max-width: 1080px) {
  .c-footer__sub-logo.__top-nav {
	display: block;
	margin: 57px auto 48px
  }
}

.c-footer__sub-copyright {
  display: block;
  margin-right: 4.2rem;
  font-family: aktiv-grotesk, "Helvetica Neue", helvetica, heisei-kaku-gothic-std, -apple-system, blinkmacsystemfont, "Helvetica Neue", "游ゴシック体", yugothic, "游ゴシック", "Yu Gothic", "ヒラギノ角ゴ ProN W3", hiragino kaku gothic pron, arial, "メイリオ", meiryo, sans-serif;
  font-size: 1.2rem;
  font-weight: 500;
  color: #9a9a9a
}

@media screen and (max-width: 767px) {
  .c-footer__sub-copyright {
	margin-right: 0
  }
}

.c-footer__sub-link {
  display: flex;
  align-items: center
}

@media screen and (max-width: 767px) {
  .c-footer__sub-link {
	height: 2.4rem;
	margin-bottom: 2.5rem
  }
}

.c-footer__sub-link li:first-child {
  margin-right: 17px
}

@media screen and (max-width: 767px) {
  .c-footer__sub-link li:first-child {
	margin-right: 13px
  }
}

.c-footer__sub-link li:nth-child(2) {
  margin-right: 13px
}

@media screen and (max-width: 767px) {
  .c-footer__sub-link li:nth-child(2) {
	margin-right: 9px
  }
}

.c-footer__sub-link li:nth-child(3) {
  margin-right: 14px
}

@media screen and (max-width: 767px) {
  .c-footer__sub-link li:nth-child(3) {
	margin-right: 11px
  }
}

.c-footer__sub-link li:nth-child(4) {
  margin-right: 12px
}

@media screen and (max-width: 767px) {
  .c-footer__sub-link li:nth-child(4) {
	margin-right: 8px
  }
}

.c-footer__sub-link li:nth-child(5) {
  margin-right: 11px
}

@media screen and (max-width: 767px) {
  .c-footer__sub-link li:nth-child(5) {
	margin-right: 7px
  }
}

.c-footer__sub-link a img {
  transition: all .5s ease
}

.c-footer__sub-link a:hover img {
  opacity: .7;
  transform: scale(1.1)
}

.c-header {
  position: relative;
  top: 0;
  left: 0;
  z-index: 101;
  width: 100%
}

@media screen and (max-width: 767px) {
  .c-header {
	position: relative
  }
}

.c-header__inner {
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding: 40px 28px 17px 43px
}

.c-header__inner .c-header__menu-wrp {
  position: fixed;
  top: 2.9rem;
  right: 2.8rem;
  display: flex;
  gap: 18px
}

@media screen and (max-width: 767px) {
  .c-header__inner .c-header__menu-wrp {
	top: 2rem;
	right: 1.5rem
  }
}

@media screen and (max-width: 767px) {
  .c-header__inner {
	height: 0;
	padding: 0
  }
}

.c-header__logo {
  position: fixed;
  top: 3.9rem;
  left: 4.3rem
}

@media screen and (max-width: 767px) {
  .c-header__logo {
	top: 2rem;
	left: 2rem
  }
}

.c-header__search button {
  position: relative;
  display: inline-flex;
  align-items: center;
  justify-content: space-between;
  width: 109px;
  padding: 6px 13px 7px 16px !important;
  text-align: left;
  border: 1px solid #c5c5c5;
  border-radius: 50px
}

.c-header__search button::after {
  display: block;
  width: 14px;
  height: 13px;
  content: url(../images/search.21bb17b8e3ef8b56785a.svg)
}

.c-header__search button span {
  display: block;
  margin-top: 3px;
  font-family: aktiv-grotesk, "Helvetica Neue", helvetica, heisei-kaku-gothic-std, -apple-system, blinkmacsystemfont, "Helvetica Neue", "游ゴシック体", yugothic, "游ゴシック", "Yu Gothic", "ヒラギノ角ゴ ProN W3", hiragino kaku gothic pron, arial, "メイリオ", meiryo, sans-serif;
  font-size: 1rem;
  line-height: 1;
  color: #9a9a9a;
  opacity: .98
}

@media screen and (max-width: 767px) {
  .c-header__search button span {
	margin-top: 4px
  }
}

.c-header__menu {
  position: relative
}

.c-header__menu button {
  position: relative;
  display: block;
  padding: 0 3px 19px;
  font-family: aktiv-grotesk, "Helvetica Neue", helvetica, heisei-kaku-gothic-std, -apple-system, blinkmacsystemfont, "Helvetica Neue", "游ゴシック体", yugothic, "游ゴシック", "Yu Gothic", "ヒラギノ角ゴ ProN W3", hiragino kaku gothic pron, arial, "メイリオ", meiryo, sans-serif;
  font-size: 1rem !important;
  font-weight: 500;
  line-height: 1;
  text-align: center !important;
  color: #fff;
  z-index: 9999; /* メニューより上に出す */
}

.c-header__menu button[aria-expanded=true] {
  color: #2d2d2d
}

.c-header__menu button[aria-expanded=true]::before,
.c-header__menu button[aria-expanded=true]::after {
  background-color: #fff
}

.c-header__menu button[aria-expanded=true]::before {
  transform: rotate(45deg)
}

.c-header__menu button[aria-expanded=true]::after {
  bottom: 5px;
  transform: rotate(-45deg)
}

.c-header__menu button::before,
.c-header__menu button::after {
  position: absolute;
  bottom: -3px;
  left: 6px;
  display: inline-block;
  width: 33px;
  height: 2px;
  content: "";
  background-color: #9a9a9a;
  transition: transform .3s
}

.c-header__menu button::before {
  bottom: 5px
}
.c-header__nav{
  position: fixed;
  top:0;
  right: 0;
  bottom: 0;
  z-index: 100;
  flex-flow: column nowrap;
  width: 100%;
  padding: 20rem 8vw 11rem;
  overflow-y: scroll;
  color: #fff;
  visibility: hidden;
  background-color: #2d2d2d;
  opacity: 0;
  /* pointer-events: none;*/
  transition:  all .5s cubic-bezier(0.18, 0.06, 0.23, 1);
  -webkit-overflow-scrolling: touch;
}


/* メニューを開いている間、bodyのスクロールを無効化 */
body.is-menu-open {
  overflow: hidden;
}

/* is-activeクラスが付与されたらメニューを表示 */

.c-header__nav.is-active {
  visibility: visible;
  opacity: 1;
  pointer-events: auto;
}

@media screen and (max-width: 1080px) {
  .c-header__nav {
	padding: 15rem 5rem 11rem
  }
}

@media screen and (max-width: 767px) {
  .c-header__nav {
	padding: 10rem 10vw 4.3rem
  }
}



.c-header__nav-logo {
  position: absolute;
  top: 3.9rem;
  left: 4.3rem;
  display: block
}

@media screen and (max-width: 767px) {
  .c-header__nav-logo {
	top: 2rem;
	left: 2rem
  }
}

.c-header__nav-sub {
  color: #9a9a9a
}

@media screen and (max-width: 1080px) {
  .c-header__nav-sub {
	margin-top: 8rem
  }
}

@media screen and (max-width: 767px) {
  .c-header__nav-sub {
	display: flex;
	flex-direction: column-reverse;
	margin-top: 0
  }
}

.c-header__nav-sub .c-header__nav-sub-copyright {
  display: block;
  font-size: 1.2rem;
  font-weight: 500;
  line-height: 1
}

@media screen and (max-width: 767px) {
  .c-header__nav-sub .c-header__nav-sub-copyright {
	margin-top: 2.5rem;
	text-align: center
  }
}

.c-header__nav-sub .c-header__nav-sub-link {
  display: flex;
  margin-top: 3.4rem
}

@media screen and (max-width: 767px) {
  .c-header__nav-sub .c-header__nav-sub-link {
	justify-content: center;
	margin-top: 0
  }
}

.c-header__nav-sub .c-header__nav-sub-link li:first-child {
  margin-right: 17px
}

@media screen and (max-width: 767px) {
  .c-header__nav-sub .c-header__nav-sub-link li:first-child {
	margin-right: 13px
  }
}

.c-header__nav-sub .c-header__nav-sub-link li:nth-child(2) {
  margin-right: 13px
}

@media screen and (max-width: 767px) {
  .c-header__nav-sub .c-header__nav-sub-link li:nth-child(2) {
	margin-right: 9px
  }
}

.c-header__nav-sub .c-header__nav-sub-link li:nth-child(3) {
  margin-right: 14px
}

@media screen and (max-width: 767px) {
  .c-header__nav-sub .c-header__nav-sub-link li:nth-child(3) {
	margin-right: 11px
  }
}

.c-header__nav-sub .c-header__nav-sub-link li:nth-child(4) {
  margin-right: 12px
}

@media screen and (max-width: 767px) {
  .c-header__nav-sub .c-header__nav-sub-link li:nth-child(4) {
	margin-right: 8px
  }
}

.c-header__nav-sub .c-header__nav-sub-link li:nth-child(5) {
  margin-right: 11px
}

@media screen and (max-width: 767px) {
  .c-header__nav-sub .c-header__nav-sub-link li:nth-child(5) {
	margin-right: 7px
  }
}

.c-header__cv-btn {
  position: fixed;
  bottom: 0;
  left: 50%;
  z-index: 100;
  display: block;
  width: 234px;
  height: 90px;
  border-radius: 10rem 10rem 0 0;
  opacity: 0;
  transform: translate3d(-50%, 0, 0);
  animation: fadeIn .3s ease 1 forwards
}

@media screen and (max-width: 767px) {
  .c-header__cv-btn {
	width: 280px;
	height: 45px
  }
}

.c-header__cv-btn.home-header {
  animation-delay: 3s
}

@media screen and (max-width: 767px) {
  .c-header__cv-btn.is-scroll {
	width: 6rem
  }
}

.c-header__cv-btn-bg {
  position: absolute;
  bottom: 0;
  left: 50%;
  width: 15rem;
  height: 8rem;
  text-align: center;
  background-color: #000;
  border-radius: 10rem 10rem 0 0;
  transition: transform .3s cubic-bezier(0.4, 0.07, 0.28, 0.9);
  transform: translateX(-50%)
}

.c-header__cv-btn .c-header__cv-btn-bg:hover {
  transform: translateX(-50%) scale(1.133, 1.125)
}

@media screen and (max-width: 767px) {
  .c-header__cv-btn-bg {
	height: 5rem;
	border-radius: 3rem 3rem 0 0;
	transition: width .5s cubic-bezier(0.4, 0.07, 0.28, 0.9)
  }

  .c-header__cv-btn.is-scroll .c-header__cv-btn-bg {
	width: 6rem
  }
}

.c-header__cv-btn-grid {
  display: grid;
  grid-template-columns: 1fr 1px 1fr;
  height: 100%;
  border-radius: 60px 60px 0 0
}

@media screen and (max-width: 767px) {
  .c-header__cv-btn-grid {
	grid-template-columns: 142px 1px 135px
  }
}

.c-header__cv-btn-grid-gap {
  background-color: #fff
}

.c-header__cv-btn-wrp {
  display: flex;
  align-items: flex-end;
  justify-content: center;
  padding-bottom: 15px;
  text-align: center;
  background-color: #000;
  transition: background-color 300ms cubic-bezier(0.17, 0.67, 0.69, 0.91)
}

.c-header__cv-btn-wrp:first-child {
  border-top-left-radius: 60px
}

.c-header__cv-btn-wrp:last-child {
  border-top-right-radius: 60px
}

.c-header__cv-btn-wrp:hover {
  background-color: #555
}

@media screen and (max-width: 767px) {
  .c-header__cv-btn-wrp {
	display: flex;
	align-items: center;
	justify-content: center;
	padding-bottom: 0
  }

  .c-header__cv-btn-wrp:first-child {
	border-top-left-radius: 30px
  }

  .c-header__cv-btn-wrp:last-child {
	border-top-right-radius: 30px
  }

  .c-header__cv-btn-wrp>div {
	display: flex;
	align-items: center;
	justify-content: center
  }
}

.c-header__cv-btn-icon {
  margin-bottom: 14px
}

.c-header__cv-btn-icon[data-btn-type=catalog] {
  width: 22px
}

.c-header__cv-btn-icon[data-btn-type=reservation] {
  width: 20px
}

@media screen and (max-width: 767px) {
  .c-header__cv-btn-icon {
	margin-bottom: 0
  }

  .c-header__cv-btn-icon[data-btn-type=catalog] {
	width: 17px
  }

  .c-header__cv-btn-icon[data-btn-type=reservation] {
	width: 16px
  }
}

.c-header__cv-btn-title {
  position: relative;
  font-size: 1.6rem;
  line-height: 1em;
  color: #f0f0f0
}

@media screen and (max-width: 767px) {
  .c-header__cv-btn-title {
	flex-shrink: 0;
	margin-left: 8px;
	font-size: 1.4rem
  }

  .c-header__cv-btn-title.is-scroll {
	width: 0;
	margin-left: 0;
	opacity: 0
  }
}

.google-search-popup {
  position: fixed;
  top: 50%;
  left: 50%;
  z-index: 150;
  width: 100%;
  height: 100%;
  padding: 10vh 12% 0;
  background-color: #fff;
  transform: translate(-50%, -50%)
}

@media screen and (max-width: 767px) {
  .google-search-popup {
	padding: 7rem 1.5rem 5rem
  }
}

.google-search-popup[data-view=false] {
  display: none
}

.google-search-popup[data-view=true] {
  display: block
}

.google-search-popup .gsc-search-button {
  display: none
}

.google-search-popup #gs_tti50 {
  position: relative;
  padding-left: 5rem
}

.google-search-popup #gs_tti50::before {
  position: absolute;
  top: 50%;
  left: 1rem;
  content: url(../images/search.21bb17b8e3ef8b56785a.svg);
  transform: translateY(-35%) scale(1.4)
}

@media screen and (max-width: 767px) {
  .google-search-popup #gs_tti50::before {
	transform: translateY(-35%) scale(1.2)
  }
}

.google-search-popup input.gsc-input {
  color: #5f5f65
}

.google-search-popup .gsib_b {
  display: none
}

.google-search-popup .gsc-input-box {
  border: none
}

.google-search-popup form.gsc-search-box {
  height: 7rem;
  padding: 0 3rem 3rem;
  border-bottom: 1px solid #a3a3a3
}

@media screen and (max-width: 767px) {
  .google-search-popup form.gsc-search-box {
	height: auto;
	padding: 0
  }
}

.google-search-popup .gsc-above-wrapper-area {
  display: none
}

.google-search-popup .jsCloseBtn {
  position: absolute;
  top: 1rem;
  right: 1rem;
  display: block;
  width: 20px;
  height: 20px
}

@media screen and (max-width: 767px) {
  .google-search-popup .jsCloseBtn {
	width: 15px;
	height: 15px
  }
}

.google-search-popup .jsCloseBtn::before,
.google-search-popup .jsCloseBtn::after {
  position: absolute;
  top: 50%;
  left: 50%;
  display: block;
  width: 100%;
  height: 1px;
  content: "";
  background-color: #5f5f65
}

.google-search-popup .jsCloseBtn::before {
  transform: translate(-50%, -50%) rotate(45deg)
}

.google-search-popup .jsCloseBtn::after {
  transform: translate(-50%, -50%) rotate(-45deg)
}

.google-search-popup .gsc-results-wrapper-nooverlay.gsc-results-wrapper-visible {
  height: calc(90vh - 7rem - 5rem - 3rem);
  padding: 5rem;
  overflow-y: scroll
}

@media screen and (max-width: 767px) {
  .google-search-popup .gsc-results-wrapper-nooverlay.gsc-results-wrapper-visible {
	padding: 0
  }
}

.google-search-popup .gsc-results-wrapper-nooverlay.gsc-results-wrapper-visible .gs-title {
  font-size: min(1.12vw, 1.6rem) !important
}

@media screen and (max-width: 767px) {
  .google-search-popup .gsc-results-wrapper-nooverlay.gsc-results-wrapper-visible .gs-title {
	margin-bottom: 1rem;
	font-size: 1.5rem !important
  }
}

.google-search-popup .gsc-results-wrapper-nooverlay.gsc-results-wrapper-visible .gs-webResult div.gs-visibleUrl {
  margin-bottom: min(1.53vw, 2.2rem);
  font-size: min(.84vw, 1.2rem) !important
}

@media screen and (max-width: 767px) {
  .google-search-popup .gsc-results-wrapper-nooverlay.gsc-results-wrapper-visible .gs-webResult div.gs-visibleUrl {
	margin-bottom: 1.8rem;
	font-size: 1rem !important
  }
}

.google-search-popup .gsc-results-wrapper-nooverlay.gsc-results-wrapper-visible .gs-webResult .gs-snippet,
.google-search-popup .gsc-results-wrapper-nooverlay.gsc-results-wrapper-visible .gs-fileFormatType {
  font-size: min(.98vw, 1.4rem) !important;
  line-height: 2em
}

@media screen and (max-width: 767px) {

  .google-search-popup .gsc-results-wrapper-nooverlay.gsc-results-wrapper-visible .gs-webResult .gs-snippet,
  .google-search-popup .gsc-results-wrapper-nooverlay.gsc-results-wrapper-visible .gs-fileFormatType {
	font-size: 1.3rem !important
  }
}

.google-search-popup .gsc-control-cse .gsc-table-result {
  display: flex;
  flex-direction: row-reverse;
  justify-content: space-between
}

.google-search-popup .gsc-webResult.gsc-result {
  padding: 0;
  padding-top: min(3.47vw, 5rem);
  border-bottom: 1px solid #ddd
}

.google-search-popup .gsc-webResult.gsc-result:hover {
  border-bottom: 1px solid #ddd
}

@media screen and (max-width: 767px) {
  .google-search-popup .gsc-webResult.gsc-result {
	padding-top: 3rem;
	padding-bottom: 3rem
  }
}

.google-search-popup .gsc-table-cell-snippet-close,
.google-search-popup .gs-promotion-text-cell {
  width: 70%
}

.google-search-popup .gsc-table-cell-thumbnail,
.google-search-popup .gs-promotion-image-cell {
  width: 25%;
  transform: translateY(-60px)
}

@media screen and (max-width: 767px) {

  .google-search-popup .gsc-table-cell-thumbnail,
  .google-search-popup .gs-promotion-image-cell {
	transform: translateY(0)
  }
}

.google-search-popup .gs-web-image-box,
.google-search-popup .gs-promotion-image-box {
  width: 100%
}

.google-search-popup .gs-result .gs-image,
.google-search-popup .gs-result .gs-promotion-image {
  width: 100%;
  max-width: 100%;
  height: 100%;
  max-height: 100%;
  aspect-ratio: 2/1.2;
  border: none;
  object-fit: cover
}

@media screen and (max-width: 767px) {

  .google-search-popup .gs-result .gs-image,
  .google-search-popup .gs-result .gs-promotion-image {
	aspect-ratio: 1/1
  }
}

.google-search-popup .gs-promotion-image-box,
.google-search-popup .gs-image-box.gs-web-image-box.gs-web-image-box-portrait,
.google-search-popup .gs-image-box.gs-web-image-box.gs-web-image-box-landscape {
  padding: 0;
  margin: 0
}

.google-search-popup .gsc-results .gsc-cursor {
  display: flex;
  justify-content: center
}

.google-search-popup .gsc-results .gsc-cursor-box {
  margin: 5rem 0 3rem
}

.google-search-popup .gsc-control-cse {
  padding: 0
}

.google-search-popup .gsc-results .gsc-cursor-box .gsc-cursor-page {
  display: flex;
  align-items: center;
  justify-content: center;
  width: min(2.78vw, 4rem);
  height: min(2.78vw, 4rem);
  margin: 0;
  font-size: min(1.12vw, 1.6rem);
  color: #505050 !important;
  text-align: center
}

.google-search-popup .gsc-results .gsc-cursor-box .gsc-cursor-page.gsc-cursor-current-page {
  font-weight: normal;
  background-color: #f0f0f0;
  border-radius: 50%
}

.google-search-popup .gcsc-more-maybe-branding-root {
  width: fit-content;
  margin: 0 auto
}

.c-main {
  padding-top: 9rem
}

.c-wrapper {
  max-width: 1180px;
  padding: 0 30px;
  margin: 0 auto
}

.c-wrapper__large {
  max-width: 1260px;
  padding: 0 30px;
  margin: 0 auto
}

.c-wrapper__small {
  max-width: 860px;
  padding: 0 30px;
  margin: 0 auto
}

.vsp {
  display: none
}

@media screen and (max-width: 767px) {
  .vsp {
	display: block
  }
}

.vtab {
  display: none
}

@media screen and (max-width: 1080px) {
  .vtab {
	display: block
  }
}

.vtab-only {
  display: none
}

@media screen and (max-width: 1080px) {
  .vtab-only {
	display: block
  }
}

@media screen and (max-width: 767px) {
  .vtab-only {
	display: none
  }
}

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

@media screen and (max-width: 1080px) {
  .vpc-for-tab {
	display: none
  }
}

.c-button {
  max-width: 321px
}

.c-button a {
  display: flex;
  align-items: center;
  justify-content: space-between;
  margin-bottom: 2.2rem
}

.c-button a p {
  font-size: 1.8rem
}

@media screen and (max-width: 767px) {
  .c-button a p {
	font-size: 1.4rem
  }
}

.c-button.line-hover {
  position: relative;
  overflow: hidden
}

.c-button.line-hover::before {
  position: absolute;
  bottom: 0;
  left: -100%;
  width: 200%;
  height: 1px;
  content: "";
  background-image: linear-gradient(to right, #9a9a9a 50%, #505050 50%);
  transition: all .5s ease
}

.c-button.line-hover:hover::before {
  left: 0
}

@media screen and (max-width: 767px) {
  .c-button.line-hover {
	width: 92%;
	margin: 0 auto
  }
}

.c-button__large[data-page=contact] {
  position: relative;
  width: fit-content;
  margin: 0 auto
}

@media screen and (max-width: 767px) {
  .c-button__large[data-page=contact] {
	width: 100%;
	max-width: 38rem
  }
}

.c-button__large[data-page=contact] .c-slide-btn {
  position: absolute;
  top: 50%;
  right: 30px;
  transform: translateY(-50%)
}

.c-button__large[data-page=contact] a,
.c-button__large[data-page=contact] input {
  width: 38rem;
  color: #fff
}

@media screen and (max-width: 767px) {

  .c-button__large[data-page=contact] a,
  .c-button__large[data-page=contact] input {
	width: 100%;
	max-width: 38rem;
	height: 8rem
  }
}

.c-button__large a,
.c-button__large input {
  position: relative;
  display: flex;
  align-items: center;
  justify-content: space-between;
  width: 48rem;
  height: 11rem;
  padding: 0 3rem 0 4.1rem;
  margin: 0 auto;
  background-color: #2d2d2d;
  transition: opacity .5s ease
}

.c-button__large a:hover,
.c-button__large input:hover {
  opacity: .9
}

.c-button__large a p,
.c-button__large input p {
  font-size: 1.8rem;
  line-height: 1.6;
  color: #f0f0f0;
  letter-spacing: .02em
}

@media screen and (max-width: 767px) {
  .c-button__large a {
	width: 100%;
	padding: 3rem 3.5rem
  }

  .c-button__large a p {
	font-size: 1.5rem
  }
}

.p-front__reservation-inner-content .c-button__large {
  margin-top: 70px
}

.p-front__reservation-inner-content .c-button__large a {
  text-align: left
}

@media screen and (max-width: 767px) {
  .p-front__reservation-inner-content .c-button__large {
	margin-top: 4.5rem
  }

  .p-front__reservation-inner-content .c-button__large a {
	padding: 3rem 2.5rem 3rem 3rem
  }

  .p-front__reservation-inner-content .c-button__large a p {
	margin-right: 2rem
  }
}

.c-button__small {
  max-width: 321px
}

.c-button__small[data-icon=left] {
  max-width: 260px
}

.c-button__small[data-icon=left] a {
  gap: 3rem;
  justify-content: flex-start
}

.c-button__small[data-icon=left] a .c-slide-btn {
  transform: rotate(180deg)
}

.c-button__small[data-text=center] a {
  gap: 0
}

.c-button__small[data-text=center] a p {
  flex: 1;
  text-align: center
}

.c-button__small[data-page=modelhouse] {
  max-width: 33rem
}

.c-button__small[data-page=modelhouse] a {
  padding: 21px 30px 21px 37px;
  margin-bottom: 0;
  background-color: #f0f0f0;
  transition: background-color .4s
}

@media screen and (max-width: 1080px) {
  .c-button__small[data-page=modelhouse] a {
	padding: 21px 25px 21px 42px
  }
}

.c-button__small[data-page=modelhouse] a:hover {
  background-color: #ddd
}

.c-button__small[data-page=modelhouse] a p {
  line-height: 1.6;
  color: #505050
}

@media screen and (max-width: 1080px) {
  .c-button__small[data-page=modelhouse] a p {
	font-size: 1.4rem
  }
}

.c-button__small[data-page=modelhouse] a .c-slide-btn[data-color=white] {
  border: 1px solid rgba(0, 0, 0, 0)
}

.c-button__small a {
  display: flex;
  align-items: center;
  justify-content: space-between;
  margin-bottom: 1.2rem
}

.c-button__small a p {
  font-size: 1.8rem;
  color: #7b7b7b
}

@media screen and (max-width: 767px) {
  .c-button__small a p {
	font-size: 1.4rem
  }
}

.c-button__small.line-hover {
  position: relative;
  overflow: hidden
}

.c-button__small.line-hover::before {
  position: absolute;
  bottom: 0;
  left: -100%;
  width: 200%;
  height: 1px;
  content: "";
  background-image: linear-gradient(to right, #505050 50%, #ddd 50%);
  transition: all .5s ease
}

.c-button__small.line-hover:hover::before {
  left: 0
}

@media screen and (max-width: 767px) {
  .c-button__small.line-hover {
	width: 92%;
	margin: 0 auto
  }
}

.c-button__small .c-slide-btn {
  width: 3.8rem;
  height: 3.8rem
}

.c-slide-btn {
  position: relative;
  display: block;
  flex-shrink: 0;
  width: 4.6rem;
  height: 4.6rem;
  overflow: hidden;
  border-radius: 50%;
  transition: all .4s ease-in-out .1s
}

.c-slide-btn::before {
  position: absolute;
  top: 50%;
  left: 49%;
  width: .6rem;
  height: .6rem;
  content: "";
  transition: all .4s ease-in;
  transform: translate(-50%, -50%) rotate(45deg)
}

.c-slide-btn::after {
  position: absolute;
  top: 50%;
  left: 30%;
  width: .6rem;
  height: .6rem;
  content: "";
  opacity: 0;
  transition: all .4s ease-out .1s;
  transform: translate(-50%, -50%) rotate(45deg)
}

@media screen and (max-width: 767px) {
  .c-slide-btn {
	width: 3.8rem;
	height: 3.8rem
  }

  .c-slide-btn::before {
	width: .5rem;
	height: .5rem
  }

  .c-slide-btn::after {
	width: .5rem;
	height: .5rem
  }
}

.c-slide-btn.big-circle {
  width: 7.2rem;
  height: 7.2rem
}

@media screen and (max-width: 767px) {
  .c-slide-btn.big-circle {
	width: 4.6rem;
	height: 4.6rem
  }
}

.c-slide-btn[data-color=gray] {
  background-color: #f0f0f0
}

.c-slide-btn[data-color=gray][data-icon=window]::before {
  top: 40%;
  left: 35%;
  width: 10px;
  height: 8px;
  content: "";
  background-image: url(../images/window_dark_gray.6c35991913890e6750e2.svg);
  background-size: contain;
  border: none;
  opacity: 1;
  transform: rotate(0)
}

.c-slide-btn[data-color=gray][data-icon=window]::after {
  top: 40%;
  left: 35%;
  width: 10px;
  height: 8px;
  background-image: url(../images/window_light.cecfce7566af9c4e9263.svg);
  background-size: contain;
  border: none;
  transform: rotate(0)
}

.c-slide-btn[data-color=transparent-gray] {
  border: 1px solid #ddd
}

.c-slide-btn[data-color=transparent-gray]::before {
  border-top: 1px solid #ddd;
  border-right: 1px solid #ddd
}

.c-slide-btn[data-color=transparent-gray]::after {
  border-top: 1px solid #ddd;
  border-right: 1px solid #ddd
}

.c-slide-btn[data-color=flow-gray] {
  background-color: #89898d
}

.c-slide-btn[data-color=flow-gray]::before {
  border-top: 1px solid #fff;
  border-right: 1px solid #fff
}

.c-slide-btn[data-color=flow-gray]::after {
  border-top: 1px solid #fff;
  border-right: 1px solid #fff
}

.c-slide-btn[data-color=transparent-normal] {
  border: 1px solid #ddd
}

.c-slide-btn[data-color=transparent-normal]::before {
  border-top: 1px solid #505050;
  border-right: 1px solid #505050
}

.c-slide-btn[data-color=transparent-normal]::after {
  border-top: 1px solid #fff;
  border-right: 1px solid #fff
}

.c-slide-btn[data-color=transparent-normal-nomal] {
  border: 1px solid #ddd
}

.c-slide-btn[data-color=transparent-normal-nomal]::before {
  border-top: 1px solid #505050;
  border-right: 1px solid #505050
}

.c-slide-btn[data-color=transparent-normal-nomal]::after {
  border-top: 1px solid #505050;
  border-right: 1px solid #505050
}

.c-slide-btn[data-color=white] {
  background-color: #fff;
  border: 1px solid #ddd
}

.c-slide-btn[data-color=white]::before {
  border-top: 1px solid #505050;
  border-right: 1px solid #505050
}

.c-slide-btn[data-color=white]::after {
  border-top: 1px solid #fff;
  border-right: 1px solid #fff
}

.c-slide-btn[data-color=white-white] {
  background-color: #fff;
  border: 1px solid #ddd
}

.c-slide-btn[data-color=white-white]::before {
  border-top: 1px solid #505050;
  border-right: 1px solid #505050
}

.c-slide-btn[data-color=white-white]::after {
  border-top: 1px solid #505050;
  border-right: 1px solid #505050
}

.c-slide-btn[data-color=translucent-white-white] {
  background-color: rgba(240, 240, 240, .5019607843)
}

.c-slide-btn[data-color=translucent-white-white]::before {
  border-top: 1px solid #606060;
  border-right: 1px solid #606060
}

.c-slide-btn[data-color=translucent-white-white]::after {
  border-top: 1px solid #606060;
  border-right: 1px solid #606060
}

.c-slide-btn[data-color=weak-white-white] {
  background-color: rgba(240, 240, 240, .2509803922)
}

.c-slide-btn[data-color=weak-white-white]::before {
  border-top: 1px solid #fff;
  border-right: 1px solid #fff
}

.c-slide-btn[data-color=weak-white-white]::after {
  border-top: 1px solid #fff;
  border-right: 1px solid #fff
}

.c-slide-btn[data-color=black] {
  background-color: #424242
}

.c-slide-btn[data-color=black]::before {
  border-top: 1px solid #fff;
  border-right: 1px solid #fff
}

.c-slide-btn[data-color=black]::after {
  border-top: 1px solid #424242;
  border-right: 1px solid #424242
}

.c-slide-btn[data-color=readingBlack] {
  background-color: #2d2d2d;
  border: 1px solid #606060
}

.c-slide-btn[data-color=readingBlack]::before {
  border-top: 1px solid #fff;
  border-right: 1px solid #fff
}

.c-slide-btn[data-color=readingBlack]::after {
  border-top: 1px solid #fff;
  border-right: 1px solid #fff
}

.c-slide-btn[data-color=aboutus] {
  border: 1px solid #606060
}

.c-slide-btn[data-color=aboutus]::before {
  border-top: 1px solid #fff;
  border-right: 1px solid #fff
}

.c-slide-btn[data-color=aboutus]::after {
  border-top: 1px solid #424242;
  border-right: 1px solid #424242
}

.c-slide-btn[data-color=pageImgSec] {
  margin: 0 auto;
  background-color: rgba(0, 0, 0, 0);
  border: 1px solid #ddd
}

.c-slide-btn[data-color=pageImgSec]::before {
  border-top: 1px solid #ddd;
  border-right: 1px solid #ddd
}

.c-slide-btn[data-color=pageImgSec]::after {
  border-top: 1px solid #ddd;
  border-right: 1px solid #ddd;
  opacity: 0
}

.c-slide-btn[data-link=anchor] {
  transform: rotate(90deg)
}

.c-slide-btn[data-icon=window]::before {
  top: 40%;
  left: 35%;
  width: 10px;
  height: 8px;
  content: "";
  background-image: url(../images/window.e27a672eb3d592c21f4c.svg);
  background-size: contain;
  border: none;
  opacity: 1;
  transform: rotate(0)
}

.c-slide-btn[data-icon=window]::after {
  top: 40%;
  left: 35%;
  width: 10px;
  height: 8px;
  background-image: url(../images/window_light.cecfce7566af9c4e9263.svg);
  background-size: contain;
  border: none;
  transform: rotate(0)
}

.c-slide-btn--parent:hover .c-slide-btn::before {
  left: 70%;
  opacity: .3;
  transition: all .4s ease-out .1s
}

.c-slide-btn--parent:hover .c-slide-btn::after {
  left: 49%;
  opacity: 1;
  transition: all .4s ease-in
}

.c-slide-btn--parent:hover .c-slide-btn[data-color=gray] {
  background-color: #505050
}

.c-slide-btn--parent:hover .c-slide-btn[data-color=gray]::before {
  opacity: 0
}

.c-slide-btn--parent:hover .c-slide-btn[data-icon=window]::after {
  left: 39%
}

.c-slide-btn--parent:hover .c-slide-btn[data-color=transparent-gray]::before {
  opacity: 0
}

.c-slide-btn--parent:hover .c-slide-btn[data-color=flow-gray]::before {
  opacity: 0
}

.c-slide-btn--parent:hover .c-slide-btn[data-color=white] {
  background-color: #505050;
  border: 1px solid #505050
}

.c-slide-btn--parent:hover .c-slide-btn[data-color=transparent-normal] {
  background-color: #505050;
  border: 1px solid #505050
}

.c-slide-btn--parent:hover .c-slide-btn[data-color=transparent-normal-nomal]::before {
  opacity: 0
}

.c-slide-btn--parent:hover .c-slide-btn[data-color=white-white] {
  border: none
}

.c-slide-btn--parent:hover .c-slide-btn[data-color=white-white]::before {
  opacity: 0
}

.c-slide-btn--parent:hover .c-slide-btn[data-color=translucent-white-white]::before {
  opacity: 0
}

.c-slide-btn--parent:hover .c-slide-btn[data-color=weak-white-white]::before {
  opacity: 0
}

.c-slide-btn--parent:hover .c-slide-btn[data-color=black] {
  background-color: #fff
}

.c-slide-btn--parent:hover .c-slide-btn[data-color=readingBlack]::before {
  opacity: 0
}

.c-slide-btn--parent:hover .c-slide-btn[data-color=aboutus] {
  background-color: #fff
}

.c-slide-btn--parent:hover .c-slide-btn[data-color=pageImgSec]::before {
  opacity: 0
}

.c-nav-main-links-list {
  position: relative;
  overflow: hidden;
  color: #2d2d2d;
  background-color: #eee;
  transition: opacity .3s ease-out
}

.c-nav-main-links-list:hover {
  opacity: .7
}

.c-nav-main-links-list:not(:first-child) {
  margin-top: 16px
}

@media screen and (max-width: 767px) {
  .c-nav-main-links-list:not(:first-child) {
	margin-top: 12px
  }
}

.c-nav-main-links-list a {
  position: relative;
  display: grid;
  grid-template-columns: 40px auto;
  align-items: center;
  width: 100%;
  min-width: 330px;
  padding: 35px 20px 35px 30px;
  font-size: 1.8rem;
  font-weight: 500;
  line-height: 1
}

.c-nav-main-links-list a span {
  padding-top: 2px
}

@media screen and (max-width: 767px) {
  .c-nav-main-links-list a {
	grid-template-columns: 35px auto;
	min-width: 100%;
	padding: 31px 15px 30px 25px;
	font-size: 1.6rem
  }
}

.c-form {
  width: 80%;
  max-width: 105rem;
  padding: 5.7rem 3rem 10rem;
  margin: 0 auto 3rem;
  background-color: #fff
}

@media screen and (max-width: 767px) {
  .c-form {
	width: calc(100% - 4rem);
	padding: 1.7rem 2rem 2.5rem
  }
}

.c-form__inner {
  max-width: 770px;
  margin: 0 auto
}

.c-form__inner .c-button__form-back {
  display: block;
  padding-bottom: 1.5rem;
  margin: 5.5rem auto 0;
  border-bottom: 1px solid #c5c5c5;
  transition: all .4s ease
}

.c-form__inner .c-button__form-back:hover {
  color: #5f5f65;
  border-color: #3b3b3b
}

.c-form__title {
  margin-bottom: 9rem;
  font-size: 2.2rem;
  font-weight: 500;
  line-height: 1.8;
  text-align: center
}

@media screen and (max-width: 767px) {
  .c-form__title {
	width: 200px;
	padding-bottom: 20px;
	margin: 0 auto 3rem;
	font-size: 1.6rem;
	border-bottom: 1px solid #ddd
  }
}

.c-form__lead {
  margin-bottom: 9.7rem;
  font-weight: 300;
  line-height: 2;
  text-align: center
}

@media screen and (max-width: 767px) {
  .c-form__lead {
	margin-bottom: 4.9rem;
	text-align: left
  }
}

.c-form__lead small {
  display: block;
  margin-top: 3.5rem;
  font-size: 1.2rem;
  line-height: 1
}

@media screen and (max-width: 767px) {
  .c-form__lead small {
	margin-top: 1.2rem;
	line-height: 1.8
  }
}

.c-form__item>label,
.c-form__item>div.c-form__item-label {
  display: inline-flex;
  align-items: center;
  margin-bottom: 14px;
  font-weight: bold
}

@media screen and (max-width: 1080px) {

  .c-form__item>label,
  .c-form__item>div.c-form__item-label {
	margin-bottom: 12px;
	font-size: 1.5rem
  }
}

@media screen and (max-width: 767px) {

  .c-form__item>label,
  .c-form__item>div.c-form__item-label {
	margin-bottom: 8px;
	font-size: 1.4rem
  }
}

.c-form__item>label .c-form__item-label,
.c-form__item>div.c-form__item-label .c-form__item-label {
  display: inline-block;
  margin-left: 7px;
  font-size: 1.2rem;
  color: #e32727
}

@media screen and (max-width: 767px) {

  .c-form__item>label .c-form__item-label,
  .c-form__item>div.c-form__item-label .c-form__item-label {
	margin-left: 6px
  }
}

.c-form__item>p {
  font-size: 1.4rem;
  font-weight: 300;
  font-feature-settings: initial;
  line-height: 1.8
}

.c-form__item>p a {
  text-decoration: underline
}

.c-form__item>p a:hover {
  text-decoration: none
}

.c-form__item+.c-form__item {
  margin-top: 6rem
}

@media screen and (max-width: 767px) {
  .c-form__item+.c-form__item {
	margin-top: 4.2rem
  }
}

.c-form__item>div.c-form__item-label[data-input=date] {
  display: flex
}

@media screen and (max-width: 1080px) {
  .c-form__item>div.c-form__item-label[data-input=date] {
	display: block
  }
}

.c-form__item>div.c-form__item-label[data-input=date] p:not(:empty) {
  margin-left: 2rem;
  font-size: 1.3rem;
  font-weight: 300
}

@media screen and (max-width: 1080px) {
  .c-form__item>div.c-form__item-label[data-input=date] p:not(:empty) {
	margin: 1rem 0 0;
	font-size: 1.2rem;
	line-height: 1.6
  }
}

.c-form__item.site-wrp {
  margin-bottom: 6rem
}

.c-form__item-input[data-input=portal] {
  position: relative;
  display: flex;
  gap: 18px;
  align-items: center
}

@media screen and (max-width: 767px) {
  .c-form__item-input[data-input=portal] {
	display: block
  }
}

.c-form__item-input[data-input=portal]::before {
  position: absolute;
  top: 50%;
  left: 18px;
  font-size: 2rem;
  font-weight: 300;
  line-height: 1;
  content: "〒";
  transform: translateY(-49%)
}

@media screen and (max-width: 767px) {
  .c-form__item-input[data-input=portal]::before {
	top: 16px;
	transform: translateY(0)
  }
}

.c-form__item-input[data-input=portal] input {
  width: 35%;
  min-width: 272px;
  padding-left: 60px
}

@media screen and (max-width: 1080px) {
  .c-form__item-input[data-input=portal] input {
	min-width: 260px
  }
}

@media screen and (max-width: 767px) {
  .c-form__item-input[data-input=portal] input {
	width: 100%;
	min-width: auto;
	padding-left: 50px
  }
}

.c-form__item-input[data-input=portal] span {
  font-size: 1.2rem;
  font-weight: 300
}

@media screen and (max-width: 767px) {
  .c-form__item-input[data-input=portal] span {
	display: inline-block;
	margin-top: 7px
  }
}

.c-form__item-input+.c-form__item-input {
  margin-top: 20px
}

@media screen and (max-width: 767px) {
  .c-form__item-input+.c-form__item-input {
	margin-top: 16px
  }
}

.c-form__item-input input,
.c-form__item-input textarea {
  display: block;
  width: 100%;
  padding: 13px 23px 15px;
  font-size: 1.8rem;
  line-height: 1.8;
  border: 1px solid #c5c5c5;
  border-radius: 5px
}

@media screen and (max-width: 1080px) {

  .c-form__item-input input,
  .c-form__item-input textarea {
	padding: 20px 30px 22px
  }
}

@media screen and (max-width: 767px) {

  .c-form__item-input input,
  .c-form__item-input textarea {
	padding: 10px 16px 12px;
	font-size: 1.6rem
  }
}

.c-form__item-input input::placeholder {
  font-size: 1.4rem;
  font-weight: 300;
  color: #a3a3a3
}

.c-form__item-input textarea::placeholder {
  font-size: 1.4rem;
  font-weight: 300;
  color: #a3a3a3
}

.c-form__item-input textarea {
  min-height: 180px;
  resize: vertical
}

.c-form__item-date-wrap {
  padding-left: 4.7vw;
  margin: 5.2rem 0 7rem
}

@media screen and (max-width: 1080px) {
  .c-form__item-date-wrap {
	padding-left: 0
  }
}

@media screen and (max-width: 767px) {
  .c-form__item-date-wrap {
	margin: 3rem 0 7rem
  }
}

.c-form__item-date {
  display: flex;
  gap: 2rem;
  align-items: center
}

@media screen and (max-width: 1080px) {
  .c-form__item-date {
	align-items: flex-start
  }
}

.c-form__item-date+.c-form__item-date {
  margin-top: 3rem
}

.c-form__item-date>label {
  font-weight: 300
}

@media screen and (max-width: 1080px) {
  .c-form__item-date>label {
	transform: translateY(20px)
  }
}

@media screen and (max-width: 767px) {
  .c-form__item-date>label {
	transform: translateY(10px)
  }
}

.c-form__item-date input,
.c-form__item-date select {
  display: block;
  min-width: 240px;
  padding: 13px 23px 15px;
  font-weight: 300;
  line-height: 1.8;
  border: 1px solid #c5c5c5;
  border-radius: 5px
}

@media screen and (max-width: 1080px) {

  .c-form__item-date input,
  .c-form__item-date select {
	padding: 20px 30px 22px
  }
}

@media screen and (max-width: 767px) {

  .c-form__item-date input,
  .c-form__item-date select {
	width: 100%;
	min-width: 100%;
	padding: 10px 16px 12px;
	font-size: 1.2rem
  }
}

.c-form__item-date>div {
  display: flex;
  gap: 2rem
}

@media screen and (max-width: 1080px) {
  .c-form__item-date>div {
	flex-direction: column;
	gap: 1rem
  }
}

@media screen and (max-width: 767px) {
  .c-form__item-date>div {
	flex: 1
  }
}

.c-form__item-date div[data-input=select] {
  position: relative
}

.c-form__item-date div[data-input=select]::after {
  position: absolute;
  top: 22px;
  right: 22px;
  display: inline-block;
  width: 6px;
  height: 6px;
  content: "";
  border-right: 1px solid #a3a3a3;
  border-bottom: 1px solid #a3a3a3;
  transform: rotate(45deg)
}

@media screen and (max-width: 767px) {
  .c-form__item-date div[data-input=select]::after {
	top: 17px
  }
}

.c-form__check {
  margin: 9rem 0 5rem;
  text-align: center
}

@media screen and (max-width: 767px) {
  .c-form__check {
	margin: 6.3rem 0 2.6rem
  }
}

.c-form__check label {
  display: block;
  width: fit-content;
  margin: 0 auto;
  cursor: pointer
}

.c-form__check label+label {
  margin-top: 12px
}

.c-form__check label>input[type=checkbox] {
  position: absolute;
  display: block;
  opacity: 0
}

.c-form__check label>input[type=checkbox]:checked+span::after {
  display: block
}

.c-form__check label>input[type=checkbox]:focus+span {
  color: #2d2d2d
}

.c-form__check label>input[type=checkbox]:focus+span::before {
  border: solid 1px #7b7b7b
}

.c-form__check label>span {
  position: relative;
  padding-left: 37px;
  font-weight: 700;
  pointer-events: none
}

@media screen and (max-width: 767px) {
  .c-form__check label>span {
	display: inline-block
  }
}

.c-form__check label>span::before {
  position: absolute;
  top: -2px;
  left: 0;
  width: 25px;
  height: 25px;
  content: "";
  background-color: #fff;
  border: 1px solid #c5c5c5;
  border-radius: 5px
}

@media screen and (max-width: 767px) {
  .c-form__check label>span::before {
	top: 0
  }
}

.c-form__check label>span::after {
  position: absolute;
  top: 5px;
  left: 6px;
  display: none;
  width: 13px;
  height: 7px;
  content: "";
  border-bottom: 2px solid #2d2d2d;
  border-left: 2px solid #2d2d2d;
  transform: rotate(-45deg)
}

@media screen and (max-width: 767px) {
  .c-form__check label>span::after {
	top: 8px
  }
}

.c-form__bottom {
  margin-top: 12rem;
  font-size: 1.4rem;
  font-weight: 300;
  text-align: center
}

@media screen and (max-width: 767px) {
  .c-form__bottom {
	margin-top: 3.4rem;
	text-align: left
  }
}

.c-form__bottom a {
  text-decoration: underline
}

.c-form__bottom a:hover {
  text-decoration: none
}

.c-form__item-radio {
  display: flex;
  flex-wrap: wrap;
  gap: 15px 38px;
  margin-top: 1rem
}

@media screen and (max-width: 767px) {
  .c-form__item-radio {
	gap: 15px 20px;
	margin-top: .3rem
  }
}

@media screen and (width <=350px) {
  .c-form__item-radio {
	flex-direction: column
  }
}

.c-form__item-radio label {
  display: block
}

@media screen and (width <=350px) {
  .c-form__item-radio label {
	width: 100%
  }
}

.c-form__item-radio label>input[type=radio] {
  position: absolute;
  display: block;
  opacity: 0
}

.c-form__item-radio label>input[type=radio]:checked+span::after {
  display: block
}

.c-form__item-radio label>input[type=radio]:focus+span {
  color: #2d2d2d
}

.c-form__item-radio label>input[type=radio]:focus+span::before {
  border: solid 1px #2d2d2d
}

.c-form__item-radio label>span {
  position: relative;
  padding-left: 26px;
  color: #2d2d2d;
  cursor: pointer
}

.c-form__item-radio label>span::before {
  position: absolute;
  top: 2px;
  left: 0;
  width: 16px;
  height: 16px;
  content: "";
  background-color: #fff;
  border: 1px solid #c5c5c5;
  border-radius: 50%
}

.c-form__item-radio label>span::after {
  position: absolute;
  top: 5px;
  left: 3px;
  display: none;
  width: 10px;
  height: 10px;
  content: "";
  background-color: #2d2d2d;
  border-radius: 50%
}

@media screen and (max-width: 767px) {
  .mw_wp_form .c-form__item .horizontal-item {
	display: block;
	min-width: 37%
  }
}

@media screen and (max-width: 767px) {
  .mw_wp_form .c-form__item .horizontal-item+.horizontal-item {
	margin-left: 0
  }
}

.c-form__notice {
  padding: 2.2rem 3rem;
  margin-bottom: 6.4rem;
  color: #fff;
  background-color: #5f5f65
}

@media screen and (max-width: 767px) {
  .c-form__notice {
	padding: 2rem
  }
}

.c-form__notice p {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: center;
  font-size: 1.4rem;
  line-height: 1
}

@media screen and (max-width: 767px) {
  .c-form__notice p {
	font-size: 1.2rem;
	line-height: 1.4
  }
}

.c-form__notice p em {
  margin: 0 1.6rem;
  font-size: 2.4rem;
  font-style: normal;
  font-weight: 500
}

@media screen and (max-width: 767px) {
  .c-form__notice p em {
	margin: 0 .8rem;
	font-size: 2.2rem
  }
}

.c-form__inner-item {
  display: none;
  margin-top: -2rem
}

.c-form__inner-item-status {
  display: flex;
  gap: 0 4rem;
  margin-top: 5rem;
  margin-bottom: 6rem
}

@media screen and (max-width: 767px) {
  .c-form__inner-item-status {
	display: block
  }
}

.c-form__inner-item-status .c-form__item {
  margin-top: 0
}

@media screen and (max-width: 767px) {
  .c-form__inner-item-status .c-form__item {
	margin-bottom: 4rem
  }
}

.c-form__inner-item-status .c-form__item .c-form__item-select {
  position: relative
}

.c-form__inner-item-status .c-form__item .c-form__item-select::after {
  position: absolute;
  top: 22px;
  right: 22px;
  display: inline-block;
  width: 6px;
  height: 6px;
  content: "";
  border-right: 1px solid #a3a3a3;
  border-bottom: 1px solid #a3a3a3;
  transform: rotate(45deg)
}

.c-form__inner-item-status .c-form__item .c-form__item-select select {
  display: block;
  min-width: 24rem;
  padding: 13px 23px 15px;
  font-weight: 300;
  line-height: 1.8;
  border: 1px solid #c5c5c5;
  border-radius: 5px
}

@media screen and (max-width: 767px) {
  .c-form__inner-item-status .c-form__item .c-form__item-select select {
	width: 100%
  }
}

.c-form__inner-item-status .c-form__item .c-form__item-input input {
  max-width: 24rem
}

@media screen and (max-width: 767px) {
  .c-form__inner-item-status .c-form__item .c-form__item-input input {
	max-width: none
  }
}

.c-form__inner-item-status .c-form__item .c-form__item-input.form-flex {
  display: flex;
  align-items: center
}

.c-form__inner-item-status .c-form__item .c-form__item-input.form-flex p {
  margin-left: 1rem
}

@media screen and (max-width: 767px) {

  .c-form[data-page=confirm],
  .c-form .mw_wp_form_confirm {
	padding: 1.7rem 2rem 5rem
  }
}

.c-form[data-page=confirm] span.c-form__item-label,
.c-form .mw_wp_form_confirm span.c-form__item-label {
  display: none
}

.c-form[data-page=confirm] .c-form__item-input[data-input=portal] span,
.c-form .mw_wp_form_confirm .c-form__item-input[data-input=portal] span {
  display: none
}

.c-form[data-page=confirm] .c-form__item-input[data-input=portal]::before,
.c-form .mw_wp_form_confirm .c-form__item-input[data-input=portal]::before {
  position: relative;
  left: 0;
  transform: translateY(1px)
}

.c-form[data-page=confirm] .c-form__item[data-item=privacy],
.c-form .mw_wp_form_confirm .c-form__item[data-item=privacy] {
  display: none
}

.c-form[data-page=confirm] .c-form__bottom,
.c-form .mw_wp_form_confirm .c-form__bottom {
  display: none
}

.c-form[data-page=confirm] .c-form__inner-item,
.c-form .mw_wp_form_confirm .c-form__inner-item {
  display: block
}

.c-form[data-page=confirm] .c-form__inner-item-status,
.c-form .mw_wp_form_confirm .c-form__inner-item-status {
  display: block
}

.c-form[data-page=confirm] .c-form__inner-item-status .c-form__item:first-child,
.c-form .mw_wp_form_confirm .c-form__inner-item-status .c-form__item:first-child {
  margin-bottom: 5rem
}

.c-form[data-page=confirm] .c-form__item-date div[data-input=select]::after,
.c-form .mw_wp_form_confirm .c-form__item-date div[data-input=select]::after {
  display: none
}

.c-form[data-page=confirm] .c-form__inner-item-status .c-form__item .c-form__item-select::after,
.c-form .mw_wp_form_confirm .c-form__inner-item-status .c-form__item .c-form__item-select::after {
  display: none
}

.c-form[data-page=confirm] .c-form__check,
.c-form .mw_wp_form_confirm .c-form__check {
  display: none
}

.c-form[data-page=confirm] .c-button__large,
.c-form .mw_wp_form_confirm .c-button__large {
  margin-top: 12rem
}

@media screen and (max-width: 767px) {

  .c-form[data-page=confirm] .c-button__large,
  .c-form .mw_wp_form_confirm .c-button__large {
	margin-top: 6rem
  }
}

.c-nav-global {
  display: flex;
  gap: 30px;
  justify-content: space-between
}

@media screen and (max-width: 1080px) {
  .c-nav-global {
	display: block
  }
}

@media screen and (max-width: 767px) {
  .c-nav-global[data-view=pc] {
	display: none
  }
}

.c-nav-global[data-view=sp] {
  display: none
}

@media screen and (max-width: 767px) {
  .c-nav-global[data-view=sp] {
	display: block
  }
}

@media screen and (max-width: 1080px) {
  .c-nav-global__info {
	margin-bottom: 6rem
  }
}

.c-nav-global__info-catalog {
  display: flex;
  justify-content: center;
  padding: 3rem 0;
  margin-top: 5rem;
  font-size: 1.5rem;
  line-height: 1em;
  color: #a3a3a3;
  border: 1px solid #505050;
  border-radius: 5px
}

.c-nav-global__info-catalog span:last-child {
  margin-left: 4px
}

@media screen and (max-width: 1080px) {
  .c-nav-global__info-catalog {
	display: none
  }
}

.c-nav-global__info-catalog--sp {
  display: none
}

@media screen and (max-width: 1080px) {
  .c-nav-global__info-catalog--sp {
	display: flex;
	align-items: center;
	justify-content: center;
	max-width: 320px;
	padding: 2.8rem 0;
	margin: 3.8rem auto 4.2rem;
	font-size: 1.5rem;
	line-height: 1em;
	color: #a3a3a3;
	border: 1px solid #505050;
	border-radius: 5px
  }

  .c-nav-global__info-catalog--sp span:last-child {
	margin-left: 4px
  }
}

.c-nav-global__info-sp {
  margin: 0 0 5.5rem
}

.c-nav-global__link {
  display: flex;
  gap: 78px
}

@media screen and (max-width: 767px) {
  .c-nav-global__link {
	display: block
  }
}

@media screen and (max-width: 767px) {
  .c-nav-global__link-unit {
	border-top: 1px solid #505050
  }

  .c-nav-global__link-unit:last-of-type.c-toggle-wrp {
	border-bottom: 1px solid #505050
  }

  .c-nav-global__link-unit>a,
  .c-nav-global__link-unit>button.toggle-btn {
	display: block;
	width: 100%;
	padding: 24px 30px 24px 13px;
	font-size: 1.6rem;
	font-weight: 500;
	line-height: 1;
	text-align: left
  }

  .c-nav-global__link-unit>button {
	position: relative
  }

  .c-nav-global__link-unit>button::before,
  .c-nav-global__link-unit>button::after {
	position: absolute;
	top: 50%;
	right: 10px;
	display: inline-block;
	width: 13px;
	height: 1px;
	content: "";
	background-color: #fff;
	transform: translateY(-50%)
  }

  .c-nav-global__link-unit>button::after {
	transition: opacity .3s;
	transform: rotate(90deg) translateY(-50%)
  }

  .c-nav-global__link-unit>button[data-view=visibility]::after {
	opacity: 0
  }
}

@media screen and (max-width: 767px) {
  .c-nav-global__link-unit.c-toggle-wrp {
	width: 100%;
	max-width: 100%;
	margin: 0;
	border-bottom: none
  }
}

.c-nav-global__link-unit+.c-nav-global__link-unit {
  margin-top: 13rem
}

@media screen and (max-width: 767px) {
  .c-nav-global__link-unit+.c-nav-global__link-unit {
	margin-top: 0
  }
}

.c-nav-global__link-unit>p {
  margin-bottom: 3.6rem;
  font-size: 1.8rem;
  line-height: 1
}

@media screen and (max-width: 767px) {
  .c-nav-global__link-unit ul.toggle-item {
	padding: 0
  }
}

@media screen and (max-width: 767px) {
  .c-nav-global__link-unit ul li {
	margin-left: 43px
  }
}

@media screen and (max-width: 767px) {
  .c-nav-global__link-unit ul li:first-child {
	margin-top: 10px
  }
}

.c-nav-global__link-unit ul li:not(:last-child) {
  margin-bottom: 24px;
  line-height: 1
}

@media screen and (max-width: 767px) {
  .c-nav-global__link-unit ul li:last-child {
	margin-bottom: 40px
  }
}

.c-nav-global__link-unit ul li a {
  font-size: 1.6rem;
  font-weight: 300;
  line-height: 1;
  color: #9a9a9a
}

@media screen and (max-width: 767px) {
  .c-nav-global__link-unit ul li a {
	font-size: 1.4rem;
	font-weight: 500
  }
}

.c-nav-global__link-unit ul li a[target] {
  position: relative;
  display: inline-flex;
  align-items: center
}

.c-nav-global__link-unit ul li a[target]::after {
  display: inline-block;
  width: 18px;
  height: 18px;
  margin-left: 8px;
  content: url(../images/arrow_upper_right.39250930f2a4fff66a73.svg);
  transform: translateY(-1px)
}

@media screen and (max-width: 767px) {
  .c-nav-global__link-unit ul li a[target]::after {
	transform: translateY(0)
  }
}

.c-nav-global__link-unit ul li:hover a {
  color: #ddd;
  transition: color .5s ease
}

.c-pagination {
  display: flex;
  gap: 18px;
  justify-content: center
}

.c-pagination li a {
  display: grid;
  place-items: center;
  width: 4rem;
  height: 4rem;
  font-family: aktiv-grotesk, "Helvetica Neue", helvetica, heisei-kaku-gothic-std, -apple-system, blinkmacsystemfont, "Helvetica Neue", "游ゴシック体", yugothic, "游ゴシック", "Yu Gothic", "ヒラギノ角ゴ ProN W3", hiragino kaku gothic pron, arial, "メイリオ", meiryo, sans-serif;
  line-height: 1;
  border-radius: 50%
}

.c-pagination li a[aria-current=page] {
  background-color: #f0f0f0
}

@media screen and (max-width: 767px) {
  .c-front-ttl-wrp {
	padding-left: 4rem;
	margin-bottom: 5.4rem
  }
}

.c-front-ttl-wrp__sub-ttl {
  margin-top: 3.5rem;
  font-size: 1.2rem;
  line-height: 1.45;
  color: #9a9a9a;
  letter-spacing: .05em
}

@media screen and (max-width: 767px) {
  .c-front-ttl-wrp__sub-ttl {
	margin-top: 2.7rem
  }
}

.p-front__reading .c-front-ttl-wrp__sub-ttl {
  color: #7b7b7b;
  text-align: right
}

@media screen and (max-width: 767px) {
  .p-front__reading .c-front-ttl-wrp__sub-ttl {
	text-align: left
  }
}

.c-vertical {
  position: absolute;
  top: 92px;
  right: 75px;
  display: flex;
  font-family: aktiv-grotesk, "Helvetica Neue", helvetica, heisei-kaku-gothic-std, -apple-system, blinkmacsystemfont, "Helvetica Neue", "游ゴシック体", yugothic, "游ゴシック", "Yu Gothic", "ヒラギノ角ゴ ProN W3", hiragino kaku gothic pron, arial, "メイリオ", meiryo, sans-serif;
  font-size: 1.6rem;
  color: #9a9a9a;
  letter-spacing: .012em;
  writing-mode: vertical-rl
}

.c-vertical span {
  display: block;
  opacity: 0;
  transition: all .5s ease;
  transform: translate3d(-1.5em, 0, 0)
}

@media screen and (max-width: 767px) {
  .c-vertical {
	top: 3.6rem;
	right: 1.7rem;
	font-size: 1.4rem
  }

  .c-vertical span {
	transition-duration: .8s;
	transform: translate3d(0, -1em, 0)
  }
}

.c-vertical.is-active span {
  opacity: 1;
  transform: translate3d(0, 0, 0)
}

.p-front__pick .c-vertical {
  top: 0;
  right: auto;
  left: 0
}

.p-front__pick .c-vertical h2 {
  font-family: aktiv-grotesk, "Helvetica Neue", helvetica, heisei-kaku-gothic-std, -apple-system, blinkmacsystemfont, "Helvetica Neue", "游ゴシック体", yugothic, "游ゴシック", "Yu Gothic", "ヒラギノ角ゴ ProN W3", hiragino kaku gothic pron, arial, "メイリオ", meiryo, sans-serif;
  font-size: 1.6rem
}

@media screen and (max-width: 767px) {
  .p-front__pick .c-vertical {
	left: 2rem;
	z-index: 10
  }
}

.p-front__pick-inner.is-active .c-vertical span {
  opacity: 1;
  transform: translate3d(0, 0, 0)
}

.p-front__contact .c-vertical {
  top: 0;
  right: auto;
  left: -5rem
}

@media screen and (max-width: 767px) {
  .p-front__contact .c-vertical {
	top: 2.5rem;
	left: 1rem
  }
}

.p-front__reading .c-vertical {
  top: 12rem;
  right: auto;
  left: 11rem
}

@media screen and (max-width: 1080px) {
  .p-front__reading .c-vertical {
	left: 5%
  }
}

@media screen and (max-width: 767px) {
  .p-front__reading .c-vertical {
	right: 2rem;
	left: auto
  }
}

.p-front__company .c-vertical {
  top: 0;
  right: auto;
  left: 11rem
}

@media screen and (max-width: 1080px) {
  .p-front__company .c-vertical {
	top: -4rem;
	left: 5%;
	writing-mode: horizontal-tb
  }
}

@media screen and (max-width: 767px) {
  .p-front__company .c-vertical {
	left: 2rem
  }
}

.p-front__reservation-inner .c-vertical {
  top: 4px;
  right: initial;
  left: -48px
}

@media screen and (max-width: 767px) {
  .p-front__reservation-inner .c-vertical {
	top: 3.5rem;
	right: 1.5rem;
	left: auto
  }
}

@keyframes fadeIn {
  to {
	opacity: 1
  }
}

@keyframes fadeOut {
  to {
	opacity: 0
  }
}

@keyframes contactArrowSlide {
  0% {
	right: 2.1rem;
	border-color: #fff
  }

  50% {
	right: 1.5rem
  }

  51% {
	opacity: 0
  }

  52% {
	right: 2.8rem;
	opacity: .1
  }

  100% {
	right: 2.1rem;
	border-color: #fff;
	opacity: 1
  }
}

@keyframes contactArrowSlideSp {
  0% {
	right: 1.7rem;
	border-color: #fff
  }

  50% {
	right: 1.3rem
  }

  51% {
	opacity: 0
  }

  52% {
	right: 2.1rem;
	opacity: .1
  }

  100% {
	right: 1.7rem;
	border-color: #fff;
	opacity: 1
  }
}

@keyframes contactArrowSlideReverse {
  0% {
	right: 2.1rem;
	border-color: #505050;
	opacity: 1
  }

  50% {
	right: 2.8rem;
	opacity: .1
  }

  51% {
	opacity: 0
  }

  52% {
	right: 1.5rem
  }

  100% {
	right: 2.1rem;
	border-color: #505050
  }
}

@keyframes contactArrowSlideReverseSp {
  0% {
	right: 1.7rem;
	border-color: #505050;
	opacity: 1
  }

  50% {
	right: 2.1rem;
	opacity: .1
  }

  51% {
	opacity: 0
  }

  52% {
	right: 1.3rem
  }

  100% {
	right: 1.7rem;
	border-color: #505050
  }
}

@keyframes arboArrowSlide {
  0% {
	left: 47%;
	border-color: #fff
  }

  50% {
	left: 70%
  }

  51% {
	opacity: 0
  }

  52% {
	left: 25%;
	opacity: .1
  }

  100% {
	left: 47%;
	border-color: #fff;
	opacity: 1
  }
}

@keyframes footerArrowSlide {
  0% {
	right: 2.1rem;
	border-color: #2d2d2d
  }

  50% {
	right: 1.5rem
  }

  51% {
	opacity: 0
  }

  52% {
	right: 2.8rem;
	opacity: .1
  }

  100% {
	right: 2.1rem;
	border-color: #2d2d2d;
	opacity: 1
  }
}

@keyframes footerArrowSlideSp {
  0% {
	right: 1.7rem;
	border-color: #2d2d2d
  }

  50% {
	right: 1.5rem
  }

  51% {
	opacity: 0
  }

  52% {
	right: 2.8rem;
	opacity: .1
  }

  100% {
	right: 1.7rem;
	border-color: #2d2d2d;
	opacity: 1
  }
}

@keyframes footerArrowSlideReverse {
  0% {
	right: 2.1rem;
	border-color: #2d2d2d;
	opacity: 1
  }

  50% {
	right: 2.8rem;
	opacity: .1
  }

  51% {
	opacity: 0
  }

  52% {
	right: 1.5rem
  }

  100% {
	right: 2.1rem;
	border-color: #2d2d2d
  }
}

@keyframes footerArrowSlideReverseSp {
  0% {
	right: 1.7rem;
	border-color: #2d2d2d;
	opacity: 1
  }

  50% {
	right: 2.8rem;
	opacity: .1
  }

  51% {
	opacity: 0
  }

  52% {
	right: 1.5rem
  }

  100% {
	right: 1.7rem;
	border-color: #2d2d2d
  }
}

@keyframes pageTitleAnime {
  0% {
	transform: translateY(1em)
  }

  100% {
	transform: translateY(0)
  }
}

@keyframes pageEnTitleAnime {
  0% {
	clip-path: inset(0 100% 0 0)
  }

  100% {
	clip-path: inset(0 0 0 0)
  }
}

@keyframes maintenanceArrow {
  0% {
	right: 18px;
	border-color: #f0f0f0
  }

  50% {
	right: 1.5rem
  }

  51% {
	opacity: 0
  }

  52% {
	right: 2.8rem;
	opacity: .1
  }

  100% {
	right: 18px;
	border-color: #f0f0f0;
	opacity: 1
  }
}

@keyframes maintenanceArrowSp {
  0% {
	right: 1.7rem;
	border-color: #f0f0f0
  }

  50% {
	right: 1.5rem
  }

  51% {
	opacity: 0
  }

  52% {
	right: 2.8rem;
	opacity: .1
  }

  100% {
	right: 1.7rem;
	border-color: #f0f0f0;
	opacity: 1
  }
}

@keyframes maintenanceArrowReverse {
  0% {
	right: 18px;
	border-color: #f0f0f0;
	opacity: 1
  }

  50% {
	right: 2.8rem;
	opacity: .1
  }

  51% {
	opacity: 0
  }

  52% {
	right: 1.5rem
  }

  100% {
	right: 18px;
	border-color: #f0f0f0
  }
}

@keyframes maintenanceArrowReverseSp {
  0% {
	right: 1.7rem;
	border-color: #f0f0f0;
	opacity: 1
  }

  50% {
	right: 2.8rem;
	opacity: .1
  }

  51% {
	opacity: 0
  }

  52% {
	right: 1.5rem
  }

  100% {
	right: 1.7rem;
	border-color: #f0f0f0
  }
}

@keyframes scrollDown {
  0% {
	transform: scale(1, 0);
	transform-origin: 0 0
  }

  50% {
	transform: scale(1, 1);
	transform-origin: 0 0
  }

  51% {
	transform: scale(1, 1);
	transform-origin: 0 100%
  }

  100% {
	transform: scale(1, 0);
	transform-origin: 0 100%
  }
}

@keyframes lineDrow {
  0% {
	transform: scale(0, 1);
	transform-origin: 0 0
  }

  50% {
	transform: scale(1, 1);
	transform-origin: 0 0
  }

  51% {
	transform: scale(1, 1);
	transform-origin: 100% 0
  }

  100% {
	transform: scale(0, 1);
	transform-origin: 100% 0
  }
}

@keyframes changeFill {
  100% {
	fill: #2d2d2d
  }
}

html.lenis {
  height: auto
}

.lenis.lenis-smooth {
  scroll-behavior: auto
}

.lenis.lenis-smooth [data-lenis-prevent] {
  overscroll-behavior: contain
}

.lenis.lenis-stopped {
  overflow: hidden
}

.lenis.lenis-scrolling iframe {
  pointer-events: none
}

.js-fadeIn {
  opacity: 0;
  transition: opacity 1s cubic-bezier(0.4, 0.46, 0.46, 0.98) .15s
}

.js-fadeIn[data-view=true] {
  opacity: 1
}

@media screen and (max-width: 767px) {
  .js-fadeIn {
	transition: opacity .8s cubic-bezier(0.4, 0.46, 0.46, 0.98) .15s
  }
}

.js-ttlFadeIn .ttl-wrp {
  overflow: hidden
}

.js-ttlFadeIn .ttl-wrp span {
  display: block
}

.js-ttlFadeIn .ttl-wrp:first-child {
  margin-bottom: .6em
}

.js-ttlFadeIn span {
  opacity: 0;
  transition: all .7s cubic-bezier(0.4, 0.46, 0.46, 0.98) .15s;
  transform: translateY(20px)
}

@media screen and (max-width: 767px) {
  .js-ttlFadeIn span {
	transition: all .6s cubic-bezier(0.4, 0.46, 0.46, 0.98) .15s
  }
}

.js-ttlFadeIn[data-view=true] span {
  opacity: 1;
  transform: translateY(0)
}

.p-front__reservation .js-ttlFadeIn {
  display: flex;
  justify-content: center
}

.p-front__reservation .js-ttlFadeIn .ttl-wrp:first-child {
  margin-bottom: 0
}

@media screen and (max-width: 767px) {
  .p-front__reservation .js-ttlFadeIn {
	display: block
  }
}

.disable-hover {
  pointer-events: none
}

.js-pageTtlFadeIn .ttl-wrp {
  margin-bottom: .6em;
  overflow: hidden;
  line-height: 1.25
}

.js-pageTtlFadeIn .ttl-wrp span {
  display: block;
  line-height: 1.25
}

.js-pageTtlFadeIn .ttl-wrp:last-child {
  margin-bottom: 0
}

@media screen and (max-width: 767px) {
  .js-pageTtlFadeIn .ttl-wrp.sp-inline-block {
	display: inline-block;
	margin-bottom: 0
  }
}

.js-pageTtlFadeIn span {
  opacity: 0;
  transition: all .8s cubic-bezier(0.4, 0.46, 0.46, 0.98) .1s;
  transform: translateY(1.2em)
}

@media screen and (max-width: 767px) {
  .js-pageTtlFadeIn span {
	transition: all .6s cubic-bezier(0.4, 0.46, 0.46, 0.98) .1s
  }
}

.js-pageTtlFadeIn[data-view=true] span {
  opacity: 1;
  transform: translateY(0)
}

.js-pageTtlFadeIn.pc-1line {
  display: flex;
  justify-content: center
}

.js-pageTtlFadeIn.pc-1line .ttl-wrp {
  margin-bottom: 0
}

@media screen and (max-width: 767px) {
  .js-pageTtlFadeIn.pc-1line {
	display: block
  }

  .js-pageTtlFadeIn.pc-1line .ttl-wrp:first-child {
	margin-bottom: .6em
  }
}

.p-front__feature {
  position: relative;
  padding-bottom: 45rem;
  margin-top: 30px
}

@media screen and (max-width: 767px) {
  .p-front__feature {
	padding-bottom: 15rem
  }
}

.p-front__feature-content {
  position: relative;
  z-index: 1;
  width: 86.1111111111vw;
  padding: 205px 0 150px;
  overflow: hidden;
  color: #f0f0f0;
  background-color: #2d2d2d;
  --feature-inner-width: 924px
}

@media screen and (max-width: 1080px) {
  .p-front__feature-content {
	width: 90%;
	padding: 8.7rem 4rem 4rem
  }
}

@media screen and (max-width: 767px) {
  .p-front__feature-content {
	width: calc(100% - 2rem)
  }
}

.p-front__feature-image-top {
  position: sticky;
  top: 15rem;
  z-index: 0;
  width: 60%
}

@media screen and (max-width: 767px) {
  .p-front__feature-image-top {
	width: 77%
  }
}

.p-front__feature-image-bottom {
  position: absolute;
  right: 0;
  bottom: -5vh;
  z-index: 0;
  width: 65%;
  aspect-ratio: 780/480;
  transform-origin: right top
}

.p-front__feature-content-detail {
  max-width: var(--feature-inner-width);
  margin: 0 auto 101px
}

.p-front__feature-content-detail>div {
  display: flex;
  gap: 10.4166666667vw;
  margin-top: 30px
}

@media screen and (max-width: 767px) {
  .p-front__feature-content-detail>div {
	display: block
  }
}

@media screen and (max-width: 767px) {
  .p-front__feature-content-detail {
	margin-bottom: 0
  }
}

.p-front__feature-content-detail-en {
  font-family: aktiv-grotesk, "Helvetica Neue", helvetica, heisei-kaku-gothic-std, -apple-system, blinkmacsystemfont, "Helvetica Neue", "游ゴシック体", yugothic, "游ゴシック", "Yu Gothic", "ヒラギノ角ゴ ProN W3", hiragino kaku gothic pron, arial, "メイリオ", meiryo, sans-serif;
  font-size: 1.2rem;
  font-weight: 300;
  line-height: 1.45;
  color: #9a9a9a;
  letter-spacing: .05em
}

@media screen and (max-width: 767px) {
  .p-front__feature-content-detail-en {
	margin-bottom: 3rem;
	font-size: .9rem
  }
}

.p-front__feature-content-detail-text p[data-text=main] {
  line-height: 2
}

.p-front__feature-content-detail-text p[data-text=main] sub {
  display: inline-block;
  font-size: 1rem;
  transform: scale(0.7) translateY(-2px);
  transform-origin: bottom left
}

@media screen and (max-width: 767px) {
  .p-front__feature-content-detail-text p[data-text=main] {
	font-size: 1.5rem
  }
}

.p-front__feature-content-detail-text p[data-text=sub] {
  margin-top: 19px;
  font-size: 1.1rem;
  font-weight: 300;
  line-height: 1.65;
  color: #9a9a9a
}

@media screen and (max-width: 767px) {
  .p-front__feature-content-detail-text p[data-text=sub] {
	margin-top: 11px;
	font-size: 1rem
  }
}

.p-front__feature-content-figure {
  position: relative;
  padding: 7px
}

.p-front__feature-content-figure p {
  margin-top: 32px;
  font-size: 1.5rem;
  font-weight: 300;
  line-height: 1;
  color: #9a9a9a
}

@media screen and (max-width: 1080px) {
  .p-front__feature-content-figure {
	margin-right: -4rem;
	margin-left: -4rem
  }

  .p-front__feature-content-figure h3 {
	font-size: 2rem
  }

  .p-front__feature-content-figure p {
	margin-top: 15px;
	font-size: 1.2rem;
	white-space: nowrap
  }
}

@media screen and (max-width: 767px) {
  .p-front__feature-content-figure {
	margin-right: 0;
	margin-left: 0
  }
}

.p-front__feature-content-circle-wrp {
  display: flex
}

@media screen and (max-width: 767px) {
  .p-front__feature-content-circle-wrp {
	position: relative;
	display: block;
	padding-top: 10rem
  }
}

.p-front__feature-content-circle-wrp .title {
  position: relative;
  display: flex;
  align-items: center;
  justify-content: center;
  padding-bottom: 20px
}

@media screen and (max-width: 1080px) {
  .p-front__feature-content-circle-wrp .title {
	padding-bottom: 15px
  }
}

.p-front__feature-content-circle-wrp .title::before {
  position: absolute;
  bottom: 0;
  left: 50%;
  width: 180px;
  height: 1px;
  content: "";
  background-color: #fff;
  transform: translateX(-50%)
}

@media screen and (max-width: 1080px) {
  .p-front__feature-content-circle-wrp .title::before {
	width: 120px
  }
}

.p-front__feature-content-circle-wrp .title span {
  display: block;
  flex-shrink: 0;
  font-size: 2.6rem;
  font-weight: 300;
  color: #fff
}

@media screen and (max-width: 1080px) {
  .p-front__feature-content-circle-wrp .title span {
	font-size: 1.6rem
  }
}

.p-front__feature-content-circle-wrp .title .img-wrp {
  position: relative;
  flex-shrink: 0;
  margin-bottom: 3px
}

.p-front__feature-content-circle-wrp .title .img-wrp img {
  width: 100%
}

.p-front__feature-content-circle-wrp .title .img-wrp .stroke {
  position: absolute;
  top: 0;
  left: 0
}

.p-front__feature-content-circle-wrp .title .img-wrp .fill {
  position: absolute;
  top: 0;
  left: 0;
  opacity: 0;
  transition: opacity .8s linear
}

.p-front__feature-content-circle-wrp .title .img-wrp-1 {
  width: 29px;
  height: 45px;
  margin-left: 8px
}

@media screen and (max-width: 1080px) {
  .p-front__feature-content-circle-wrp .title .img-wrp-1 {
	width: 19px;
	height: 30px;
	margin-left: 5px
  }
}

.p-front__feature-content-circle-wrp .title .img-wrp-2 {
  width: 99px;
  height: 39px;
  margin-right: 8px
}

@media screen and (max-width: 1080px) {
  .p-front__feature-content-circle-wrp .title .img-wrp-2 {
	width: 69px;
	height: 26px;
	margin-right: 5px
  }
}

.p-front__feature-content-circle-wrp .title .img-wrp-3 {
  width: 56px;
  height: 39px;
  margin-right: 8px
}

@media screen and (max-width: 1080px) {
  .p-front__feature-content-circle-wrp .title .img-wrp-3 {
	width: 41px;
	height: 28px;
	margin-right: 5px
  }
}

.p-front__feature-content-circle-wrp.is-active .title .img-wrp .fill {
  opacity: 1;
  transition-delay: .8s
}

.p-front__feature-content-circle-wrp.is-active .item-02 .title .img-wrp .fill {
  transition-delay: 1.6s
}

.p-front__feature-content-circle-wrp.is-active .item-03 .title .img-wrp .fill {
  transition-delay: 2.4s
}

.p-front__feature-content-circle {
  position: relative;
  flex-basis: 25%;
  aspect-ratio: 1/1
}

@media screen and (max-width: 767px) {
  .p-front__feature-content-circle {
	width: 100%;
	aspect-ratio: 1.7/1
  }
}

.p-front__feature-content-circle .line-circle {
  position: absolute;
  top: 50%;
  left: 50%;
  width: 105%;
  height: 105%;
  opacity: 0;
  fill: rgba(0, 0, 0, 0);
  stroke: #2d2d2d;
  stroke-dasharray: 0 1000;
  stroke-width: 1;
  transition: stroke-dasharray 2s, stroke 2s;
  transition-timing-function: ease;
  will-change: stroke-dasharray, stroke;
  transform: translate3d(-50%, -50%, 0) rotate(-90deg)
}

.p-front__feature-content-circle-wrp.is-active .p-front__feature-content-circle .line-circle {
  opacity: 1;
  stroke: #7b7b7b;
  stroke-dasharray: 1000 1000
}

.p-front__feature-content-circle-wrp.is-active .p-front__feature-content-circle .line-circle.second-circle {
  transition-delay: .8s
}

.p-front__feature-content-circle-wrp.is-active .p-front__feature-content-circle .line-circle.third-circle {
  transition-delay: 1.6s
}

@media screen and (max-width: 767px) {
  .p-front__feature-content-circle .line-circle {
	height: 210%
  }

  .p-front__feature-content-circle .line-circle.second-circle {
	transition-delay: .7s
  }

  .p-front__feature-content-circle .line-circle.third-circle {
	transition-delay: 1.4s
  }
}

.p-front__feature-content-circle--half {
  position: relative;
  flex-basis: 12.5%
}

.p-front__feature-content-circle--half .half-line-circle {
  position: absolute;
  top: 50%;
  width: 210%;
  height: 210%;
  opacity: 0;
  fill: rgba(0, 0, 0, 0);
  stroke: #505050;
  stroke-dasharray: 0 1000;
  stroke-width: 1;
  transition: stroke-dasharray 3s, opacity 3s;
  transition-delay: .15s;
  transition-timing-function: ease
}

.p-front__feature-content-circle-wrp.is-active .p-front__feature-content-circle--half .half-line-circle {
  opacity: 1;
  stroke-dasharray: 1000 1000
}

.p-front__feature-content-circle--half.left .half-line-circle {
  left: 0;
  transform: translate(-50%, -50%) rotate(-90deg)
}

.p-front__feature-content-circle--half.right .half-line-circle {
  left: 100%;
  transform: translate(-50%, -50%) rotate(90deg)
}

@media screen and (max-width: 767px) {
  .p-front__feature-content-circle--half {
	width: 100%;
	aspect-ratio: 1.7/1;
	overflow: hidden
  }

  .p-front__feature-content-circle--half .half-line-circle {
	transition-duration: 1.5s
  }

  .p-front__feature-content-circle--half.left {
	position: absolute;
	left: 50%;
	transform: translate3d(-50%, -29%, 0) scale(1.1)
  }

  .p-front__feature-content-circle--half.left .half-line-circle {
	top: -120%;
	width: 100%;
	transform: translate3d(0, 0, 0) rotate(-90deg)
  }

  .p-front__feature-content-circle--half.right {
	position: absolute;
	left: 50%;
	transform: translate3d(-50%, -69%, 0) scale(1.1)
  }

  .p-front__feature-content-circle--half.right .half-line-circle {
	top: 10%;
	left: 0;
	width: 100%;
	transform: translate3d(0, 0, 0) rotate(90deg)
  }
}

.p-front__feature-content-circle-text-wrp {
  position: absolute;
  top: 50%;
  left: 50%;
  z-index: 5;
  width: fit-content;
  height: fit-content;
  text-align: center;
  opacity: 0;
  transition-duration: 3s;
  transform: translate3d(-50%, -50%, 0)
}

.p-front__feature-content-circle-wrp.is-active .p-front__feature-content-circle-text-wrp {
  opacity: 1
}

.p-front__feature-content-circle-text-wrp.item-02 {
  transition-delay: 1s
}

.p-front__feature-content-circle-text-wrp.item-03 {
  transition-delay: 2s
}

.p-front__feature-content-figure-heading {
  position: absolute;
  top: 30px;
  left: 13%;
  font-family: aktiv-grotesk, "Helvetica Neue", helvetica, heisei-kaku-gothic-std, -apple-system, blinkmacsystemfont, "Helvetica Neue", "游ゴシック体", yugothic, "游ゴシック", "Yu Gothic", "ヒラギノ角ゴ ProN W3", hiragino kaku gothic pron, arial, "メイリオ", meiryo, sans-serif;
  font-size: 1.4rem;
  font-weight: 300;
  line-height: 1.45;
  color: #9a9a9a;
  letter-spacing: .05em
}

@media screen and (max-width: 1080px) {
  .p-front__feature-content-figure-heading {
	top: 7px;
	left: 10%;
	font-size: 1.2rem
  }
}

@media screen and (max-width: 767px) {
  .p-front__feature-content-figure-heading {
	top: 27%;
	right: 4%;
	left: auto;
	font-size: 1rem;
	writing-mode: vertical-rl
  }
}

.p-front__feature-content-link {
  max-width: var(--feature-inner-width);
  margin: 100px auto 0
}

.p-front__feature-content-link .c-button {
  margin-left: auto
}

.font-en {
  font-family: aktiv-grotesk, "Helvetica Neue", helvetica, heisei-kaku-gothic-std, -apple-system, blinkmacsystemfont, "Helvetica Neue", "游ゴシック体", yugothic, "游ゴシック", "Yu Gothic", "ヒラギノ角ゴ ProN W3", hiragino kaku gothic pron, arial, "メイリオ", meiryo, sans-serif
}

@keyframes copyClipIn {
  from {
	opacity: 0
  }

  to {
	clip-path: inset(0);
	opacity: 1
  }
}

@keyframes heroBgImg {
  to {
	opacity: 1
  }
}

@keyframes taglineFadeUp {
  from {
	transform: translateY(5px)
  }

  to {
	opacity: 1;
	transform: translateY(0)
  }
}

@keyframes taglineClipPath {
  from {
	clip-path: inset(0 100% 0 0)
  }

  to {
	clip-path: inset(0);
	opacity: 1
  }
}

.c-header.home-header {
  opacity: 0;
  animation: fadeIn forwards 1s ease-in 2.5s 1 normal
}

.p-front__hero {
  position: relative;
  padding-top: 25px;
  overflow: hidden
}

@media screen and (max-width: 767px) {
  .p-front__hero {
	margin: 0 1.5rem 8rem
  }
}

.p-front__hero-copy {
  display: flex;
  gap: 8px;
  padding: 0 1.9vw
}

.p-front__hero-copy span {
  position: relative
}

.p-front__hero-copy span img {
  width: 100%;
  height: auto;
  clip-path: inset(0 100% 0 0);
  opacity: 0
}

.p-front__hero-copy span img.outline {
  position: absolute;
  top: 0;
  left: 0;
  z-index: -1;
  opacity: 0
}

.p-front__hero-copy span:first-child {
  display: block;
  width: 40.6%
}

.p-front__hero-copy span:first-child img {
  animation: copyClipIn forwards .4s linear 1.1s 1 normal
}

.p-front__hero-copy span:first-child img.outline {
  animation: copyClipIn forwards .4s linear .3s 1 normal
}

.p-front__hero-copy span:nth-child(2) {
  width: 25.97%
}

.p-front__hero-copy span:nth-child(2) img {
  animation: copyClipIn forwards .4s linear 1.2s 1 normal
}

.p-front__hero-copy span:nth-child(2) img.outline {
  animation: copyClipIn forwards .4s linear .4s 1 normal
}

.p-front__hero-copy span:nth-child(3) {
  width: 33.43%
}

.p-front__hero-copy span:nth-child(3) img {
  animation: copyClipIn forwards .4s linear 1.4s 1 normal
}

.p-front__hero-copy span:nth-child(3) img.outline {
  animation: copyClipIn forwards .4s linear .5s 1 normal
}

@media screen and (max-width: 767px) {
  .p-front__hero-copy {
	flex-direction: column;
	padding: 0
  }

  .p-front__hero-copy span:first-child {
	width: 64.96%
  }

  .p-front__hero-copy span:nth-child(2) {
	width: 41.55%
  }

  .p-front__hero-copy span:nth-child(2) img {
	animation-delay: 1.1s
  }

  .p-front__hero-copy span:nth-child(3) {
	width: 53.48%
  }

  .p-front__hero-copy span:nth-child(3) img {
	animation-delay: 1.1s
  }
}

.p-front__hero-tagline {
  display: inline-block;
  padding-left: 36px;
  margin: 63px 0 160px;
  font-weight: 500;
  opacity: 0;
  animation: taglineClipPath forwards .5s ease-out 1.3s 1 normal
}

.p-front__hero-tagline p:first-child {
  position: relative;
  font-family: aktiv-grotesk, "Helvetica Neue", helvetica, heisei-kaku-gothic-std, -apple-system, blinkmacsystemfont, "Helvetica Neue", "游ゴシック体", yugothic, "游ゴシック", "Yu Gothic", "ヒラギノ角ゴ ProN W3", hiragino kaku gothic pron, arial, "メイリオ", meiryo, sans-serif;
  font-size: min(2.7vw, 4rem);
  line-height: 1.6;
  letter-spacing: -0.03em
}

.p-front__hero-tagline p:first-child::after {
  position: absolute;
  right: 0;
  bottom: 4px;
  width: 16vw;
  width: min(16vw, 23rem);
  height: 11px;
  clip-path: inset(0 100% 0 0);
  content: "";
  background-image: url(../images/tagline-line.7950214249690c76781a.svg);
  background-repeat: no-repeat;
  background-size: 100% 100%;
  animation: taglineClipPath forwards .5s cubic-bezier(0.25, 1, 0.5, 1) 2.3s 1 normal
}

.p-front__hero-tagline p:nth-child(2) {
  margin-top: 10px;
  font-size: min(1.7vw, 2.5rem);
  line-height: 1.65;
  color: #505050
}

@media screen and (max-width: 767px) {
  .p-front__hero-tagline {
	padding-left: 0;
	margin: 3.7rem 0 6rem
  }

  .p-front__hero-tagline p:first-child {
	font-size: 1.8rem
  }

  .p-front__hero-tagline p:first-child::after {
	bottom: -3px;
	width: 106px;
	transform: rotate(1deg)
  }

  .p-front__hero-tagline p:nth-child(2) {
	margin-top: 8px;
	font-size: 1.3rem
  }
}

.p-front__hero-image-wrp {
  position: fixed;
  top: 0;
  right: 0;
  z-index: -1;
  width: 59%;
  aspect-ratio: 17/16;
  transition: opacity .5s ease
}

@media screen and (max-width: 767px) {
  .p-front__hero-image-wrp {
	top: 14rem;
	right: 0;
	width: 72%;
	aspect-ratio: 9/10
  }
}

.p-front__hero-image {
  width: 100%;
  height: 100%;
  background-repeat: no-repeat;
  background-position: 50% top;
  background-size: contain;
  background-blend-mode: lighten;
  border-radius: 1px solid #ccc;
  opacity: 0;
  animation: heroBgImgFadeIn forwards 5s ease-in 2s 1 normal
}

@media screen and (max-width: 767px) {
  .p-front__hero-image {
	background-position: 50%
  }
}

@keyframes heroBgImgFadeIn {
  from {
	opacity: 0;
	transform: scale(1)
  }

  to {
	opacity: 1;
	transform: scale(1.1)
  }
}

.p-front__hero-slide {
  margin: 0 2rem;
  clip-path: inset(0 0 0 100%);
  animation: heroSlideMainWrpIn forwards 1.1s cubic-bezier(0.7, 0.1, 0.32, 0.98) 1.2s 1 normal
}

@media screen and (max-width: 767px) {
  .p-front__hero-slide {
	margin: 0;
	animation-delay: 1.6s
  }
}

@keyframes heroSlideMainWrpIn {
  0% {
	clip-path: inset(0 0 0 100%)
  }

  100% {
	clip-path: inset(0);
	opacity: 1
  }
}

.hero-slider__btn-wrp {
  display: flex;
  align-items: center;
  justify-content: end;
  margin-bottom: 1rem;
  opacity: 0;
  animation: fadeIn forwards 1s ease-in 2.5s 1 normal
}

@media screen and (max-width: 767px) {
  .hero-slider__btn-wrp {
	justify-content: space-between;
	margin-bottom: .7rem
  }
}

.hero-slider__btn-counter {
  display: flex;
  font-size: 1.2rem
}

.hero-slider__btn-counter .counter-name {
  margin-right: .5rem
}

@media screen and (max-width: 767px) {
  .hero-slider__btn-counter .counter-name {
	margin-right: 0
  }
}

.hero-slider__btn-counter .slider-counter {
  overflow: hidden
}

.hero-slider__btn-counter span {
  margin: 0 1rem
}

.hero-slider__btn-counter span.slide-number {
  position: relative;
  display: inline-block;
  margin: 0
}

.hero-slider__btn-counter span.slide-number::after {
  position: absolute;
  top: 0;
  right: 0;
  width: 100%;
  height: 100%;
  clip-path: inset(0 100% 0 0);
  content: "";
  background-color: #eee;
  transition: all 1s ease
}

.hero-slider__btn-counter span:nth-of-type(3) {
  margin: 0 .5rem
}

@media screen and (max-width: 767px) {
  .hero-slider__btn-counter span {
	margin: 0 .7rem
  }
}

.hero-slider__btn-item button {
  margin: 0 1rem;
  transition: all .5s ease
}

.hero-slider__btn-item button:first-child {
  opacity: 1
}

.hero-slider__btn-item button:first-child.is-active {
  opacity: .2;
  transform: translateX(-10%)
}

.hero-slider__btn-item button:last-child {
  opacity: 1
}

.hero-slider__btn-item button:last-child.is-active {
  opacity: .2;
  transform: translateX(10%)
}

@media screen and (max-width: 767px) {
  .hero-slider__btn-item button {
	width: 1.8rem;
	margin: 0 .5rem
  }
}

.hero-slider-wrp {
  position: relative;
  display: flex;
  overflow: hidden;
  list-style: none;
  opacity: 1
}

.slider-list {
  position: absolute;
  top: 0;
  left: 0;
  height: 100%;
  transform-origin: top right
}

.slider-list__inner {
  position: relative;
  display: block;
  height: 100%;
  overflow: hidden;
  pointer-events: none
}

.slider-list__inner picture {
  position: absolute;
  top: 0;
  right: 0;
  max-width: none;
  clip-path: inset(0);
  object-fit: cover;
  object-position: right
}

.slider-list__inner picture img {
  width: 100%;
  height: 100%;
  object-fit: cover
}

.slide-active .slider-list__inner {
  pointer-events: auto
}

.hero-slider-item-wrp {
  display: flex
}

@media screen and (max-width: 1080px) {
  .hero-slider-item-wrp {
	display: block;
	height: 10rem
  }
}

.slider-tags-wrp {
  position: relative;
  width: 100%;
  margin-left: 2rem
}

@media screen and (max-width: 1080px) {
  .slider-tags-wrp {
	margin-left: 0
  }
}

.slider-list__tags {
  position: absolute;
  top: 14px;
  left: 0;
  z-index: 10;
  display: flex;
  flex-wrap: wrap;
  opacity: 0
}

.slider-list__tags li {
  padding: 6px 8px;
  margin-right: 1rem;
  margin-bottom: 1rem;
  font-size: 1.2rem;
  line-height: 1em;
  color: #5f5f65;
  border: 1px solid #7b7b7b
}

.slider-list__tags.first-slide-tags {
  animation: fadeIn forwards 1s ease-in 1s 1 normal
}

@media screen and (max-width: 767px) {
  .slider-list__tags li {
	margin-right: .5rem;
	margin-bottom: .5rem
  }
}

.hero-slider__li-ttl {
  margin-top: 1.7rem;
  font-size: 1.3rem;
  font-weight: 300;
  color: #505050;
  white-space: nowrap
}

@media screen and (max-width: 767px) {
  .hero-slider__li-ttl {
	margin-top: 1.3rem
  }
}

.smooth-scroll {
  margin-top: 300px
}

.smooth-scroll .wrapper {
  width: 600px;
  margin: 0 auto 100vh
}

.smooth-scroll .wrapper img {
  width: 100%
}

.smooth-scroll .img-wrp li {
  margin-bottom: 150px
}

.p-front__hero-link.vpc {
  position: relative;
  transform: translateY(-90px)
}

@media screen and (max-width: 1080px) {
  .p-front__hero-link.vpc {
	transform: translateY(-170px)
  }
}

.p-front__hero-link.vpc a {
  position: relative;
  z-index: 1;
  display: grid;
  place-content: center;
  width: 130px;
  height: 130px;
  margin-right: 55px;
  margin-left: auto;
  font-size: 1.2rem;
  font-weight: 500;
  line-height: 1.5;
  text-align: center;
  letter-spacing: -0.03em;
  background-color: #fff;
  border-radius: 50%
}

.p-front__hero-link.vpc a::before {
  position: absolute;
  inset: 10px;
  z-index: -1;
  content: "";
  border: 1px solid #9a9a9a;
  border-radius: 50%;
  transition: background-color .3s ease-in
}

.p-front__hero-link.vpc a:hover::before {
  background-color: #f0f0f0
}

.p-front__hero-link.vsp {
  display: none
}

@media screen and (max-width: 767px) {
  .p-front__hero-link.vsp {
	display: flex;
	align-items: center;
	justify-content: space-between;
	width: 70%;
	padding-bottom: 2rem;
	margin: 0 auto;
	margin-top: 4rem;
	font-size: 1.4rem;
	font-weight: 500;
	border-bottom: 1px solid #ddd
  }
}

@media screen and (max-width: 1080px) {
  .p-front__information {
	margin-top: 15rem
  }
}

.p-front__information-inner {
  position: relative;
  padding-bottom: 20rem
}

.p-front__information-inner .c-vertical {
  top: 0;
  right: 11px
}

@media screen and (max-width: 1080px) {
  .p-front__information-inner {
	padding: 0 0 0 13%;
	margin: 0 2.5rem
  }

  .p-front__information-inner .c-vertical {
	top: -5.7rem;
	right: auto;
	left: 0
  }
}

@media screen and (max-width: 767px) {
  .p-front__information-inner {
	padding: 0 0 0 5rem
  }
}

.p-front__information-heading p {
  margin-top: 35px;
  font-family: aktiv-grotesk, "Helvetica Neue", helvetica, heisei-kaku-gothic-std, -apple-system, blinkmacsystemfont, "Helvetica Neue", "游ゴシック体", yugothic, "游ゴシック", "Yu Gothic", "ヒラギノ角ゴ ProN W3", hiragino kaku gothic pron, arial, "メイリオ", meiryo, sans-serif;
  font-size: 1.2rem;
  line-height: 1.45;
  color: #9a9a9a;
  letter-spacing: .05em
}

@media screen and (max-width: 1080px) {
  .p-front__information-heading p {
	margin-top: 2.6rem
  }
}

.p-front__information-link {
  width: 47.22vw;
  margin-top: 42px;
  margin-left: 18.06vw
}

@media screen and (max-width: 1080px) {
  .p-front__information-link {
	width: 100%;
	margin-top: 6rem;
	margin-left: 0
  }
}

@media screen and (max-width: 1080px) {
  .p-front__information-link-div {
	margin-bottom: 5rem
  }

  .p-front__information-link-div img {
	width: 100%
  }
}

.p-front__information-link-anchor {
  position: relative;
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding: 9rem 3rem 9rem 4rem;
  background-repeat: no-repeat;
  background-size: cover;
  border-top: 1px solid #ddd
}

.p-front__information-link-anchor::after {
  position: absolute;
  top: 0;
  left: 0;
  z-index: -1;
  width: 100%;
  height: 100%;
  content: "";
  background-position: center;
  background-size: cover;
  opacity: 0;
  transition: all .5s linear
}

@media screen and (max-width: 767px) {
  .p-front__information-link-anchor::after {
	display: none
  }
}

.p-front__information-link-anchor.first-item::after {
  background-image: url(../images/front-info-pc-bg-01.2df4ad1d73c8bc7f1195.jpg)
}

.p-front__information-link-anchor.second-item::after {
  background-image: url(../images/front-info-pc-bg-02.ff5060fe8abbd4932d6f.jpg)
}

.p-front__information-link-anchor span[data-text=en] {
  margin-right: 23px;
  font-family: aktiv-grotesk, "Helvetica Neue", helvetica, heisei-kaku-gothic-std, -apple-system, blinkmacsystemfont, "Helvetica Neue", "游ゴシック体", yugothic, "游ゴシック", "Yu Gothic", "ヒラギノ角ゴ ProN W3", hiragino kaku gothic pron, arial, "メイリオ", meiryo, sans-serif;
  font-size: 1.2rem;
  line-height: 1;
  color: #9a9a9a;
  letter-spacing: .02em
}

.p-front__information-link-anchor span[data-text=ja] {
  font-size: 2.2rem;
  font-weight: 500;
  line-height: 1
}

.p-front__information-link-anchor[data-style=border-bottom] {
  border-bottom: 1px solid #ddd
}

.js-changeBg .p-front__information-link-anchor {
  border-color: #7b7b7b
}

.js-changeBg .p-front__information-link-anchor span[data-text=ja] {
  color: #ddd
}

.js-changeBg .p-front__information-link-anchor[data-style=border-bottom] {
  border-color: #7b7b7b
}

.p-front__information-link-anchor:hover::after {
  opacity: 1
}

.p-front__information-link-anchor:hover span[data-text=en] {
  color: #fff
}

@media screen and (max-width: 1080px) {
  .p-front__information-link-anchor:hover span[data-text=en] {
	color: #9a9a9a
  }
}

.p-front__information-link-anchor:hover span[data-text=ja] {
  color: #fff
}

@media screen and (max-width: 1080px) {
  .p-front__information-link-anchor:hover span[data-text=ja] {
	color: #2d2d2d
  }
}

@media screen and (max-width: 1080px) {
  .p-front__information-link-anchor {
	padding: 0 0 2rem;
	border: none
  }

  .p-front__information-link-anchor span[data-text=en] {
	display: block;
	margin-bottom: .6rem
  }

  .p-front__information-link-anchor span[data-text=ja] {
	display: block;
	font-size: 1.6rem;
	line-height: 1.6em
  }

  .p-front__information-link-anchor[data-style=border-bottom] {
	border: none
  }
}

@media screen and (max-width: 1080px) {
  .p-front__information-link-anchor.c-slide-btn--parent:hover .c-slide-btn[data-color=white-white] {
	border: 1px solid #ddd
  }
}

#frontInfoLink {
  overflow: hidden
}

#mouseStalker {
  position: fixed;
  top: 50%;
  left: 50%;
  z-index: -1;
  width: 5px;
  height: 5px;
  pointer-events: none;
  background-repeat: no-repeat;
  background-size: contain;
  opacity: 0;
  transition-timing-function: ease-out;
  transform: translate(-50%, -50%)
}

#frontInfoLink:hover #mouseStalker {
  opacity: 1
}

.p-front__reservation {
  position: relative;
  padding: 0 30px;
  margin-bottom: 20rem
}

@media screen and (max-width: 767px) {
  .p-front__reservation {
	padding: 0;
	margin: 0 2rem 3rem
  }
}

.p-front__reservation-inner {
  position: relative;
  max-width: 1120px;
  padding: 165px 0 107px;
  margin: 0 auto;
  background-color: #f0f0f0;
  border-radius: 20px
}

@media screen and (max-width: 767px) {
  .p-front__reservation-inner {
	padding: 7.6rem 3rem 4.8rem;
	border-radius: 10px
  }
}

.p-front__reservation-inner-content {
  text-align: center
}

.p-front__reservation-inner-content p {
  font-weight: 300;
  line-height: 2.3;
  color: #505050
}

.p-front__reservation-inner-content p+p {
  margin-top: 19px
}

@media screen and (max-width: 767px) {
  .p-front__reservation-inner-content {
	text-align: left
  }

  .p-front__reservation-inner-content p {
	margin-right: 3rem;
	font-size: 1.4rem;
	line-height: 2.1
  }
}

.p-front__reservation-inner-slide {
  position: relative;
  margin-top: 12rem;
  overflow: hidden
}

.p-front__reservation-inner-slide .slide-item {
  width: 170%;
  max-width: none;
  animation: testAnime 40s linear infinite
}

.p-front__reservation-inner-slide .slide-item2 {
  position: absolute;
  top: 0;
  left: 170%;
  margin-left: 15px
}

@media screen and (max-width: 767px) {
  .p-front__reservation-inner-slide {
	margin-top: 8.5rem
  }

  .p-front__reservation-inner-slide .slide-item {
	width: 320%;
	animation-duration: 30s
  }

  .p-front__reservation-inner-slide .slide-item2 {
	left: 320%
  }
}

@keyframes testAnime {
  0% {
	transform: translate3d(0, 0, 0)
  }

  100% {
	transform: translate3d(-100%, 0, 0)
  }
}

.p-front__pick {
  margin-bottom: 17rem;
  background-color: #fff
}

@media screen and (max-width: 1080px) {
  .p-front__pick {
	margin-bottom: 0;
	overflow: hidden
  }
}

.p-front__pick-inner {
  position: relative;
  width: 80%;
  max-width: 115rem;
  padding-top: 4rem;
  padding-left: 10rem;
  margin: 0 auto
}

@media screen and (max-width: 1080px) {
  .p-front__pick-inner {
	width: 100%;
	height: 50rem;
	padding-left: 0
  }
}

@media screen and (max-width: 1080px) {
  .p-front__pick-ul-base-wrp {
	position: relative;
	display: flex;
	flex-wrap: nowrap;
	width: 100%;
	height: 39rem;
	padding-right: 25%;
	padding-bottom: 0;
	margin-left: 15%;
	overflow: scroll;
	will-change: transform
  }
}

.p-front__pick-ul {
  z-index: 1;
  display: flex;
  flex-wrap: wrap;
  gap: 4rem 2rem;
  opacity: 0;
  transition: opacity .5s linear
}

@media screen and (max-width: 1080px) {
  .p-front__pick-ul {
	flex-wrap: nowrap;
	opacity: .1
  }
}

.p-front__pick-inner.is-active .p-front__pick-ul {
  opacity: 1
}

.p-front__pick-ul.over-contents {
  margin-top: 7rem;
  transition: all .3s linear
}

.p-front__pick-ul.over-contents[data-view=false] {
  clip-path: inset(0 0 100% 0);
  visibility: hidden;
  opacity: 0
}

.p-front__pick-ul.over-contents[data-view=true] {
  clip-path: inset(0);
  visibility: visible;
  opacity: 1
}

@media screen and (max-width: 1080px) {
  .p-front__pick-ul.over-contents {
	margin-top: 0;
	margin-left: 2rem
  }

  .p-front__pick-ul.over-contents[data-view=false] {
	height: 100%;
	clip-path: inset(0);
	visibility: visible;
	opacity: 1
  }
}

.p-front__pick-ul-over-outer {
  overflow: hidden
}

@media screen and (max-width: 1080px) {
  .p-front__pick-ul-over-outer {
	overflow: visible
  }
}

.p-front__pick-li {
  width: calc(33.3% - 1.33rem)
}

.p-front__pick-li a {
  display: block
}

.p-front__pick-li img {
  aspect-ratio: 33/40;
  margin-bottom: 2rem;
  transition: all .5s ease;
  object-fit: cover
}

.p-front__pick-li:hover img {
  opacity: .8
}

@media screen and (max-width: 1080px) {
  .p-front__pick-li {
	flex-shrink: 0;
	width: 25rem
  }
}

.p-front__pick-more-btn {
  position: relative;
  display: block;
  width: 30rem;
  padding-bottom: 1rem;
  padding-left: 1rem;
  margin: 9.5rem auto 0;
  font-size: 1.4rem;
  font-weight: 500;
  line-height: 2.1em;
  color: #a3a3a3;
  text-align: left;
  border-bottom: 1px solid #a3a3a3
}

@media screen and (max-width: 1080px) {
  .p-front__pick-more-btn {
	display: none
  }
}

.p-front__pick-more-btn::before {
  position: absolute;
  top: 24%;
  right: 1rem;
  width: 9px;
  height: 9px;
  content: "";
  border-right: 1px solid #a3a3a3;
  border-bottom: 1px solid #a3a3a3;
  transform: rotate(45deg)
}

.p-front__pick-more-btn[data-open=true]::before {
  transform: rotate(-135deg)
}

.p-front__pick-text-wrp {
  display: flex;
  justify-content: space-between
}

.p-front__pick-text-wrp p {
  flex-basis: auto;
  margin-right: 3.5rem;
  font-size: 1.6rem;
  font-weight: 300;
  line-height: 1.5em;
  color: #505050
}

@media screen and (max-width: 1080px) {
  .p-front__pick-text-wrp .c-slide-btn {
	display: none
  }

  .p-front__pick-text-wrp p {
	margin-right: 0;
	font-size: 1.4rem
  }
}

.p-front__reading {
  position: relative;
  padding: 21rem 0 0;
  transition: all 1s ease
}

.p-front__reading-inner {
  width: 73%;
  max-width: 105rem;
  margin: 0 auto
}

@media screen and (max-width: 1080px) {
  .p-front__reading-inner {
	width: 90%
  }
}

@media screen and (max-width: 767px) {
  .p-front__reading-inner {
	width: 100%
  }
}

.p-front__reading-ul {
  display: flex;
  justify-content: space-between;
  margin: 13.5rem 0 17rem 6%
}

@media screen and (max-width: 1080px) {
  .p-front__reading-ul {
	margin-left: 0
  }
}

@media screen and (max-width: 767px) {
  .p-front__reading-ul {
	display: block;
	margin: 0
  }
}

.p-front__reading-li {
  width: 30.5%
}

.p-front__reading-li:nth-child(2) {
  margin-top: 9rem
}

.p-front__reading-li a img {
  transition: all .6s ease
}

.p-front__reading-li a:hover img {
  transform: scale(105%)
}

@media screen and (max-width: 767px) {
  .p-front__reading-li {
	width: 72%
  }

  .p-front__reading-li:nth-child(2) {
	margin-top: 7rem;
	margin-left: auto
  }

  .p-front__reading-li:nth-child(2) .p-front__reading-li-text {
	margin-left: 0
  }

  .p-front__reading-li:nth-child(3) {
	margin-top: 7rem
  }
}

.p-front__reading-li-img {
  width: 100%;
  aspect-ratio: 3/4;
  object-fit: cover;
  margin-bottom: 4rem;
  overflow: hidden
}

@media screen and (max-width: 767px) {
  .p-front__reading-li-img {
	margin-bottom: 2rem
  }
}

.p-front__reading-li-text {
  position: relative;
  display: flex;
  align-items: center;
  justify-content: space-between
}

@media screen and (max-width: 767px) {
  .p-front__reading-li-text {
	justify-content: start;
	margin-left: 3rem
  }

  .p-front__reading-li-text>div {
	margin-right: min(5.5vw, 3rem)
  }
}

.p-front__reading-li:hover .p-front__reading-li-text::before {
  background-color: #505050
}

.p-front__reading-li:hover .p-front__reading-li-text::after {
  animation: contactArrowSlide .5s ease 0s 1 forwards
}

.p-front__reading-li-text p {
  position: relative;
  padding-left: 12px;
  margin-bottom: 1.5rem;
  font-size: 1.1rem;
  color: #7b7b7b;
  letter-spacing: .06em
}

.p-front__reading-li-text p::before {
  position: absolute;
  top: 50%;
  left: 0;
  width: 6px;
  height: 1px;
  content: "";
  background-color: #7b7b7b;
  transform: translateY(-50%)
}

@media screen and (max-width: 767px) {
  .p-front__reading-li-text p {
	margin-bottom: 1rem
  }
}

.p-front__reading-li-text h3 {
  font-size: 2rem;
  font-weight: 500;
  line-height: 1em;
  color: #f0f0f0
}

@media screen and (max-width: 1080px) {
  .p-front__reading-li-text h3 {
	font-size: 1.8rem
  }
}

@media screen and (max-width: 767px) {
  .p-front__reading-li-text h3 {
	font-size: 2rem
  }
}

.p-front__reading-sns {
  display: flex;
  align-items: center;
  justify-content: center;
  color: #7b7b7b
}

.p-front__reading-sns li {
  margin-right: 2rem
}

.p-front__reading-sns li:last-child {
  margin-right: 0
}

.p-front__reading-sns .title {
  font-size: 1.6rem;
  letter-spacing: .08em
}

.p-front__reading-sns .line {
  top: 50%;
  width: 2rem;
  height: 1px;
  background-color: #7b7b7b;
  transform: translateY(-50%)
}

@media screen and (max-width: 767px) {
  .p-front__reading-sns {
	flex-direction: column;
	margin-top: 9rem
  }

  .p-front__reading-sns li {
	order: 1;
	margin-right: 0
  }

  .p-front__reading-sns .title {
	margin-bottom: 2.5rem;
	font-size: 1.4rem
  }

  .p-front__reading-sns .line {
	order: 0;
	width: 16rem;
	margin-bottom: 7rem
  }
}

.p-front__reading-sns-icons {
  display: flex
}

.p-front__reading-sns-icons .mark a {
  position: relative;
  display: block
}

.p-front__reading-sns-icons .mark img {
  transition: transform .5s ease
}

.p-front__reading-sns-icons .mark img.icon-white {
  visibility: hidden
}

.js-changeBg .p-front__reading-sns-icons .mark img.icon-white {
  visibility: visible
}

.p-front__reading-sns-icons .mark img.icon-black {
  position: absolute;
  top: 2px;
  left: 0
}

.js-changeBg .p-front__reading-sns-icons .mark img.icon-black {
  visibility: hidden
}

.p-front__reading-sns-icons .mark:hover img {
  opacity: .7;
  transform: scale(1.1)
}

@media screen and (max-width: 767px) {
  .p-front__reading-sns-icons {
	height: 2rem
  }

  .p-front__reading-sns-icons .mark {
	margin-right: 1.5rem
  }

  .p-front__reading-sns-icons .mark:last-child {
	margin-right: 0
  }

  .p-front__reading-sns-icons img {
	height: 100%
  }
}

.p-front__contact {
  position: relative;
  width: 89%;
  max-width: 128rem;
  padding: 7.8rem 8rem 7.8rem 12rem;
  margin: 50rem 0 33rem auto;
  background-color: #f0f0f0
}

@media screen and (max-width: 1080px) {
  .p-front__contact {
	width: 85%;
	padding: 8rem 4rem 1rem 7rem;
	margin-top: 30rem;
	margin-bottom: 5rem
  }
}

@media screen and (max-width: 767px) {
  .p-front__contact {
	width: calc(100% - 2rem)
  }
}

.p-front__contact__inner {
  display: flex;
  align-items: center;
  justify-content: space-between
}

@media screen and (max-width: 1080px) {
  .p-front__contact__inner {
	display: block
  }
}

.p-front__contact-explan {
  margin-bottom: 4.5rem;
  font-size: 1.5rem;
  font-weight: 300;
  line-height: 2em;
  color: #505050
}

.p-front__contact-text-wrp {
  width: 50%
}

@media screen and (max-width: 1080px) {
  .p-front__contact-text-wrp {
	width: 100%;
	margin-bottom: 1rem
  }
}

.p-front__contact-link-wrp {
  width: 33rem
}

@media screen and (max-width: 1080px) {
  .p-front__contact-link-wrp {
	width: 100%
  }
}

.p-front__contact-link-list {
  position: relative;
  overflow: hidden
}

.p-front__contact-link-list:first-child {
  border-top: 1px solid #ddd
}

.p-front__contact-link-list::before {
  position: absolute;
  bottom: 0;
  left: -100%;
  width: 200%;
  height: 1px;
  content: "";
  background-image: linear-gradient(to right, #9a9a9a 50%, #ddd 50%);
  transition: left .5s ease
}

.p-front__contact-link-list:hover::before {
  left: 0
}

.p-front__contact-link-list a {
  position: relative;
  display: block;
  padding: 2.8rem 0;
  font-weight: 300;
  line-height: 1.6;
  color: #2d2d2d
}

.p-front__contact-link-list a::before {
  position: absolute;
  top: 50%;
  right: 0;
  width: 4.6rem;
  height: 4.6rem;
  content: "";
  background-color: #fff;
  border-radius: 50%;
  transition: all .5s ease;
  transform: translateY(-50%)
}

.p-front__contact-link-list a::after {
  position: absolute;
  top: 50%;
  right: 2.1rem;
  width: .6rem;
  height: .6rem;
  content: "";
  border-top: 1px solid #505050;
  border-right: 1px solid #505050;
  transform: translateY(-50%) rotate(45deg);
  animation: contactArrowSlideReverse .5s ease 0s 1 forwards
}

.p-front__contact-link-list a:hover::before {
  background-color: #606060
}

.p-front__contact-link-list a:hover::after {
  animation: contactArrowSlide .5s ease 0s 1 forwards
}

@media screen and (max-width: 767px) {
  .p-front__contact-link-list a::before {
	width: 3.8rem;
	height: 3.8rem
  }

  .p-front__contact-link-list a::after {
	right: 1.7rem;
	width: .5rem;
	height: .5rem;
	animation-name: contactArrowSlideReverseSp
  }

  .p-front__contact-link-list a:hover::after {
	animation-name: contactArrowSlideSp
  }
}

.p-front__contact-img {
  width: 47%
}

@media screen and (max-width: 1080px) {
  .p-front__contact-img {
	width: 85%;
	transform: translate(-13rem, 6rem)
  }
}

@media screen and (max-width: 767px) {
  .p-front__contact-img {
	width: calc(100% + 4rem + 6rem);
	transform: translate(-9rem, 4rem)
  }
}

.p-front__arbo {
  width: 71.5%;
  max-width: 105rem;
  margin: 0 auto 33rem
}

@media screen and (max-width: 1080px) {
  .p-front__arbo {
	width: 100%;
	padding: 0 3rem 0 4rem;
	margin: 0 0 18.5rem
  }
}

.p-front__arbo-inner {
  display: flex;
  margin-left: 3rem
}

@media screen and (max-width: 1080px) {
  .p-front__arbo-inner {
	display: block;
	margin-left: 0
  }
}

.p-front__arbo-ttl-wrp {
  display: block;
  width: fit-content;
  height: fit-content;
  padding-top: 12.8rem;
  margin-right: 2rem
}

@media screen and (max-width: 1080px) {
  .p-front__arbo-ttl-wrp {
	margin-bottom: 3rem
  }
}

.p-front__arbo-sub-ttl {
  margin-bottom: 1.8rem;
  font-size: 1.4rem;
  color: #505050;
  letter-spacing: .05em
}

.p-front__arbo-sub-ttl span {
  display: inline-block;
  margin: 0 1rem
}

.p-front__arbo-text {
  margin-bottom: 3.8rem;
  font-size: 1.5rem;
  font-weight: 300;
  line-height: 1.8em;
  color: #505050;
  letter-spacing: -0.02%
}

@media screen and (max-width: 1080px) {
  .p-front__arbo-text {
	margin-bottom: 2rem
  }
}

.p-front__arbo-btn-mark {
  position: relative;
  display: block;
  width: 7.2rem;
  height: 7.2rem;
  border: 1px solid #ddd;
  border-radius: 50%
}

.p-front__arbo-btn-mark::before {
  position: absolute;
  top: 50%;
  left: 47%;
  width: 9px;
  height: 9px;
  content: "";
  border-top: 1px solid #2d2d2d;
  border-right: 1px solid #2d2d2d;
  transform: translate(-50%, -50%) rotate(45deg)
}

.p-front__arbo-ttl-wrp:hover .p-front__arbo-btn-mark {
  background-color: #606060
}

.p-front__arbo-ttl-wrp:hover .p-front__arbo-btn-mark::before {
  animation: arboArrowSlide .5s ease 0s 1 forwards
}

@media screen and (max-width: 1080px) {
  .p-front__arbo-btn-mark {
	width: 5rem;
	height: 5rem
  }
}

.p-front__arbo-ttl-slider-wrp {
  position: relative;
  flex: 1;
  width: 100%;
  padding-bottom: 10rem
}

.p-front__arbo-ttl-slider-wrp img {
  width: 100%;
  height: 100%;
  object-fit: cover
}

.p-front__arbo-ttl-slider-top {
  width: 73%;
  margin-left: auto
}

.p-front__arbo-ttl-slider-top .splide__slide.is-active {
  transition-duration: 1.5s !important
}

.slider-top-ul {
  position: relative;
  z-index: 1;
  display: flex;
  width: 100%;
  aspect-ratio: 5/6;
  overflow: hidden
}

.slider-top-li {
  position: absolute;
  top: 0;
  right: 0;
  flex-shrink: 0;
  width: 100%;
  height: 100%;
  transform: translateZ(0);
  will-change: opacity
}

.slider-top-li img {
  transform: translateZ(0)
}

.slider-btm-ul {
  position: relative;
  z-index: 2;
  display: flex;
  width: 100%;
  aspect-ratio: 9/7;
  overflow: hidden
}

.p-front__arbo-ttl-slider-bottom {
  position: absolute;
  bottom: 0;
  left: 0;
  width: 53%
}

.p-front__arbo-ttl-slider-bottom img {
  object-fit: cover
}

@media screen and (max-width: 1080px) {
  .p-front__arbo-ttl-slider-bottom {
	bottom: 6.5rem
  }
}

.p-front__arbo-ttl-slider-name {
  position: absolute;
  right: 0;
  bottom: 6.5rem;
  overflow: hidden
}

.p-front__arbo-ttl-slider-name ul {
  position: relative;
  width: 13rem;
  height: 3rem
}

.p-front__arbo-ttl-slider-name ul li {
  position: absolute;
  top: 0;
  right: 0;
  width: fit-content;
  margin-left: auto;
  font-size: 1.5rem;
  font-weight: 300;
  line-height: 1.8;
  color: #505050;
  letter-spacing: .02em
}

.p-front__arbo-thumb-line {
  position: absolute;
  right: 0;
  bottom: 0;
  display: flex
}

.p-front__arbo-thumb-line li {
  width: 5rem;
  height: 2px;
  margin-right: 3px;
  background-color: #9a9a9a
}

@media screen and (max-width: 1080px) {
  .p-front__arbo-thumb-line {
	right: auto;
	left: 50%;
	transform: translateX(-50%)
  }
}

.p-front__company {
  position: relative
}

@media screen and (max-width: 1080px) {
  .p-front__company {
	margin-bottom: 3rem
  }
}

.p-front__company-inner {
  width: 71.5%;
  max-width: 105rem;
  padding-bottom: 13rem;
  margin: 0 auto
}

@media screen and (max-width: 1080px) {
  .p-front__company-inner {
	width: 90%;
	padding-bottom: 0
  }
}

@media screen and (max-width: 767px) {
  .p-front__company-inner {
	width: calc(100% - 4rem)
  }
}

.p-front__company-wrp {
  position: relative;
  height: 35rem;
  margin-left: 3rem
}

.p-front__company-wrp li {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%
}

@media screen and (max-width: 1080px) {
  .p-front__company-wrp {
	height: auto;
	margin-left: 0
  }

  .p-front__company-wrp li {
	aspect-ratio: 5/2.5
  }
}

@media screen and (max-width: 767px) {
  .p-front__company-wrp li {
	aspect-ratio: 5/3
  }
}

.p-front__company-img a {
  position: relative;
  display: block;
  width: 100%;
  height: 100%
}

.p-front__company-img a img {
  width: 100%;
  height: 100%;
  object-fit: cover
}

@media screen and (max-width: 1080px) {
  .p-front__company-img {
	margin-bottom: 2rem
  }

  .p-front__company-wrp .p-front__company-img {
	position: relative
  }
}

@media screen and (max-width: 767px) {
  .p-front__company-img {
	margin-bottom: 1rem
  }
}

.p-front__company-img[data-type=COMPANY] {
  clip-path: inset(0 66.7% 0 0)
}

@media screen and (max-width: 1080px) {
  .p-front__company-img[data-type=COMPANY] {
	clip-path: inset(0)
  }
}

.p-front__company-img[data-type=PARTNER] {
  clip-path: inset(0 33.3% 0 33.3%)
}

@media screen and (max-width: 1080px) {
  .p-front__company-img[data-type=PARTNER] {
	clip-path: inset(0)
  }

  .p-front__company-img[data-type=PARTNER] a::before {
	inset: auto 2rem 2.5rem auto;
	width: 4.6rem
  }

  .p-front__company-img[data-type=PARTNER] a::after {
	inset: auto 4rem 4.5rem auto
  }
}

.p-front__company-img[data-type=RECRUIT] {
  clip-path: inset(0 0 0 66.7%)
}

@media screen and (max-width: 1080px) {
  .p-front__company-img[data-type=RECRUIT] {
	clip-path: inset(0)
  }

  .p-front__company-img[data-type=RECRUIT] a::before {
	inset: auto 2rem 2.5rem auto;
	width: 4.6rem
  }

  .p-front__company-img[data-type=RECRUIT] a::after {
	inset: auto 3.5rem 3.5rem auto
  }
}

.p-front__company-text-wrp {
  z-index: 15;
  pointer-events: none
}

@media screen and (max-width: 1080px) {
  .p-front__company-text-wrp {
	margin-bottom: 1rem
  }

  .p-front__company-wrp .p-front__company-text-wrp {
	height: auto
  }
}

.p-front__company-text-wrp .text-item {
  position: absolute;
  bottom: 3.8rem;
  left: 4.2rem
}

.p-front__company-text-wrp .text-item p {
  font-size: 1.1rem;
  color: #ddd;
  letter-spacing: .06em
}

.p-front__company-text-wrp .text-item h3 {
  font-size: 2rem;
  line-height: 1.5em;
  color: #ddd
}

@media screen and (max-width: 1080px) {
  .p-front__company-text-wrp .text-item {
	bottom: 2.2rem;
	left: 3.2rem
  }
}

.p-front__company-text-wrp::before {
  position: absolute;
  top: 3rem;
  right: 3rem;
  width: 4.6rem;
  height: 4.6rem;
  content: "";
  background-color: rgba(235, 235, 235, .3);
  border-radius: 50%
}

.p-front__company-text-wrp::after {
  position: absolute;
  top: 5rem;
  content: ""
}

.p-front__company-text-wrp[data-type=COMPANY] {
  left: 0;
  width: 33.3%
}

.p-front__company-text-wrp[data-type=COMPANY]::after {
  right: 5.1rem;
  width: 5px;
  height: 5px;
  border-top: 1px solid #fff;
  border-right: 1px solid #fff;
  transform: rotate(45deg)
}

@media screen and (max-width: 1080px) {
  .p-front__company-text-wrp[data-type=COMPANY] {
	width: 100%
  }
}

.p-front__company-text-wrp[data-type=PARTNER] {
  left: 33.3%;
  width: 33.3%
}

.p-front__company-text-wrp[data-type=PARTNER]::after {
  right: 5.1rem;
  width: 5px;
  height: 5px;
  border-top: 1px solid #fff;
  border-right: 1px solid #fff;
  transform: rotate(45deg)
}

@media screen and (max-width: 1080px) {
  .p-front__company-text-wrp[data-type=PARTNER] {
	top: 34%;
	left: 0;
	width: 100%
  }
}

.p-front__company-text-wrp[data-type=RECRUIT] {
  left: 66.6%;
  width: 33.3%
}

.p-front__company-text-wrp[data-type=RECRUIT]::after {
  top: 3.9rem;
  right: 4.6rem;
  content: url(../images/another-link-icon.d9718abf3a5619b65b1e.svg)
}

@media screen and (max-width: 1080px) {
  .p-front__company-text-wrp[data-type=RECRUIT] {
	top: auto;
	bottom: -1rem;
	left: 0;
	width: 100%
  }
}

.p-front__company-dummy {
  position: absolute;
  top: 0;
  left: 0;
  z-index: 10;
  width: 100%;
  height: 35rem;
  pointer-events: none;
  opacity: 0;
  transition: opacity .8s ease
}

.p-front__company-dummy img {
  width: 100%;
  object-fit: cover;
  height: 100%
}

.p-front__company-dummy.is-active {
  opacity: 1
}

@media screen and (max-width: 1080px) {
  .p-front__company-dummy {
	display: none
  }
}

.p-front {
  color: #2d2d2d
}

body {
  transition: background-color .5s ease
}

body.js-changeBg {
  background-color: #2d2d2d
}

.p-front-sec-ttl-2line {
  position: relative;
  padding-bottom: 50px;
  font-size: 4.2rem;
  line-height: 1.24;
  letter-spacing: .02em
}

@media screen and (max-width: 767px) {
  .p-front-sec-ttl-2line {
	padding-bottom: 2.6rem;
	font-size: 2.4rem
  }
}

.p-front-sec-ttl-2line::after {
  position: absolute;
  bottom: 0;
  left: 0;
  width: 20px;
  height: 1px;
  content: "";
  background-color: #9a9a9a
}

.p-front__reading .p-front-sec-ttl-2line {
  color: #2d2d2d;
  text-align: right
}

.p-front__reading .p-front-sec-ttl-2line::after {
  right: 0;
  left: auto;
  background-color: #7b7b7b
}

.js-changeBg .p-front__reading .p-front-sec-ttl-2line {
  color: #f0f0f0
}

@media screen and (max-width: 767px) {
  .p-front__reading .p-front-sec-ttl-2line {
	text-align: left
  }

  .p-front__reading .p-front-sec-ttl-2line::after {
	right: auto;
	left: 0
  }
}

.p-front-sec-ttl-single {
  line-height: 1.24
}

.p-front-sec-ttl-single .ttl-wrp {
  overflow: hidden
}

.p-front__reservation .p-front-sec-ttl-single {
  margin-bottom: 4rem
}

.p-front__reservation .p-front-sec-ttl-single span {
  font-size: 3.4rem
}

@media screen and (max-width: 767px) {
  .p-front__reservation .p-front-sec-ttl-single {
	margin-bottom: 3.3rem
  }

  .p-front__reservation .p-front-sec-ttl-single span {
	font-size: 2.3rem;
	line-height: 1.6em
  }
}

.p-front__contact .p-front-sec-ttl-single {
  margin-bottom: 5rem
}

.p-front__contact .p-front-sec-ttl-single span {
  font-size: 3.2rem
}

@media screen and (max-width: 767px) {
  .p-front__contact .p-front-sec-ttl-single span {
	font-size: 2.4rem
  }
}

.p-front__arbo .p-front-sec-ttl-single {
  margin-bottom: 4rem
}

.p-front__arbo .p-front-sec-ttl-single span {
  font-size: 5.2rem;
  font-weight: 300;
  letter-spacing: .05em
}

@media screen and (max-width: 767px) {
  .p-front__arbo .p-front-sec-ttl-single {
	margin-bottom: 2.8rem
  }

  .p-front__arbo .p-front-sec-ttl-single span {
	margin-bottom: 0
  }
}

.testInputButton {
  position: fixed;
  bottom: 0;
  left: 0;
  z-index: 105;
  display: flex;
  padding: 1rem 0 1rem 1rem;
  font-size: 1.2rem;
  background-color: #fff;
  border: 1px solid #ccc;
  opacity: 0;
  animation: fadeInText forwards 5s linear 0s 1 normal
}

@keyframes fadeInText {
  0% {
	opacity: 0
  }

  95% {
	opacity: 0
  }

  100% {
	opacity: .8
  }
}

.testInputButton input {
  width: 6rem;
  padding: 3px 5px;
  margin-right: 5px;
  background-color: #fff;
  border: 1px solid #333
}

.testInputButton button {
  padding: 3px 10px;
  margin-right: 10px;
  color: #fff;
  background-color: #555
}

.testInputButton button:active {
  color: #333
}

.testInputButton>div div {
  margin-bottom: .5rem
}

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

.p-contact {
  color: #2d2d2d
}

.p-blog__list {
  margin-top: 8rem
}

@media screen and (max-width: 767px) {
  .p-blog__list {
	margin-top: 5rem
  }
}

.p-blog__list li+li {
  margin-top: 12rem
}

@media screen and (max-width: 767px) {
  .p-blog__list li+li {
	margin-top: 7rem
  }
}

.p-blog__list-item {
  display: flex;
  gap: 6rem;
  align-items: flex-end;
  color: #505050
}

@media screen and (max-width: 1080px) {
  .p-blog__list-item {
	gap: 3rem;
	align-items: flex-start
  }
}

@media screen and (max-width: 767px) {
  .p-blog__list-item {
	display: block
  }
}

.p-blog__list-item .p-blog__list-item-image {
  transition: opacity .3s
}

.p-blog__list-item:hover .p-blog__list-item-image {
  opacity: .8
}

.p-blog__list-item:hover .p-blog__list-item-link::before {
  left: 0
}

.p-blog__list-item:hover .p-blog__list-item-link::after {
  right: 3px
}

.p-blog__list-item-image {
  width: 47.8%;
  aspect-ratio: 55/36;
  transition: filter .5s ease
}

.p-blog__list-item-image img {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover
}

@media screen and (max-width: 1080px) {
  .p-blog__list-item-image {
	width: 40%
  }
}

@media screen and (max-width: 767px) {
  .p-blog__list-item-image {
	width: 100%;
	margin-bottom: 3.22rem
  }
}

.p-blog__list-item-image+div {
  flex: 1
}

.p-blog__list-item-label {
  display: flex;
  flex-wrap: wrap;
  gap: 1rem
}

.p-blog__list-item-label span {
  display: inline-block;
  padding: 10px 9px;
  font-size: 1.4rem;
  line-height: 1;
  border: 1px solid #c5c5c5;
  border-radius: 3px
}

@media screen and (max-width: 767px) {
  .p-blog__list-item-label span {
	padding: 6px 7px;
	font-size: 1.2rem
  }
}

.p-blog__list-item-text {
  margin: 4.4rem 0 6.6rem
}

@media screen and (max-width: 1080px) {
  .p-blog__list-item-text {
	margin: 1.9rem 0 2.2rem
  }
}

.p-blog__list-item-text time {
  display: block;
  line-height: 1
}

.p-blog__list-item-text h2 {
  margin-top: 1.6rem;
  font-size: 2rem;
  font-weight: 400;
  line-height: 2.2
}

@media screen and (max-width: 1080px) {
  .p-blog__list-item-text h2 {
	font-size: 1.6rem
  }
}

@media screen and (max-width: 767px) {
  .p-blog__list-item-text h2 {
	margin-top: 1.2rem;
	font-size: 1.4rem
  }
}

.p-blog__list-item-link {
  position: relative;
  max-width: 21rem;
  padding-bottom: 1.3rem;
  overflow: hidden;
  font-size: 1.2rem
}

@media screen and (max-width: 767px) {
  .p-blog__list-item-link {
	max-width: 100%
  }
}

.p-blog__list-item-link::before {
  position: absolute;
  bottom: 0;
  left: -100%;
  width: 200%;
  height: 1px;
  content: "";
  background-image: linear-gradient(to right, #505050 50%, #a3a3a3 50%);
  transition: left .5s ease
}

.p-blog__list-item-link::after {
  position: absolute;
  top: 7px;
  right: 10px;
  display: inline-block;
  width: 7px;
  height: 7px;
  content: "";
  border-top: 1px solid #a3a3a3;
  border-right: 1px solid #a3a3a3;
  transition: right .5s ease;
  transform: rotate(45deg)
}

.c-page-underlayer[data-phase=second] .c-page-fv__index-wrp {
  justify-content: flex-end
}

.c-page-underlayer[data-phase=second] .c-page-fv__title h1 {
  max-width: 121rem;
  padding-left: 3rem;
  margin: 0 auto
}

.c-page-underlayer[data-phase=second] .c-pagination {
  margin-top: 14.6rem
}

@media screen and (max-width: 767px) {
  .c-page-underlayer[data-phase=second] .c-pagination {
	margin-top: 7rem
  }
}

.c-page-underlayer__wrap {
  max-width: 121rem;
  padding: 0 3rem;
  margin: 4.4rem auto 13.6rem
}

@media screen and (max-width: 767px) {
  .c-page-underlayer__wrap {
	margin: .3rem auto 6.7rem
  }
}

.c-page-underlayer__wrap[data-page=interview] {
  max-width: 160rem;
  padding: 0
}

@media screen and (max-width: 767px) {
  .c-page-underlayer__wrap[data-page=staff] {
	padding: 0 1.5rem
  }
}

.c-page-underlayer__category {
  display: flex;
  color: #505050
}

@media screen and (max-width: 767px) {
  .c-page-underlayer__category {
	display: block
  }
}

.c-page-underlayer__category span {
  font-size: 1.4rem;
  transform: translateY(6px)
}

@media screen and (max-width: 767px) {
  .c-page-underlayer__category span {
	font-size: 1.3rem;
	transform: translateY(0)
  }
}

.c-page-underlayer__category ul {
  display: flex;
  flex-wrap: wrap;
  gap: 2rem 1.4rem;
  margin-left: 2.8rem
}

@media screen and (max-width: 767px) {
  .c-page-underlayer__category ul {
	gap: 1rem .6rem;
	margin-top: 1.4rem;
	margin-left: 0
  }
}

.c-page-underlayer__category ul li a {
  display: block;
  padding: 9px 15px;
  line-height: 1;
  border: 1px solid #ddd;
  border-radius: 3px;
  transition: background-color .4s ease
}

@media screen and (max-width: 767px) {
  .c-page-underlayer__category ul li a {
	padding: 5px 7px 6px;
	font-size: 1.2rem
  }
}

.c-page-underlayer__category ul li a:hover {
  background-color: #f0f0f0
}

.c-page-underlayer__category ul li a[data-page=active] {
  color: #fff;
  background-color: #505050;
  border: 1px solid #505050
}

.p-event__list {
  display: grid;
  grid-template-columns: 1fr 1fr 1fr;
  gap: 10.5rem 5rem;
  margin-top: 8rem
}

@media screen and (max-width: 1080px) {
  .p-event__list {
	gap: 10rem 3rem
  }
}

@media screen and (max-width: 767px) {
  .p-event__list {
	display: block;
	margin-top: 5rem
  }
}

@media screen and (max-width: 767px) {
  .p-event__list li+li {
	margin-top: 6rem
  }
}

.p-event__list-item {
  display: block;
  color: #505050
}

.p-event__list-item .p-event__list-item-image .comment-end {
  display: none
}

.p-event__list-item .p-event__list-item-image.event-end {
  position: relative
}

.p-event__list-item .p-event__list-item-image.event-end::before {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  content: "";
  background-color: #000;
  opacity: .4
}

.p-event__list-item .p-event__list-item-image.event-end .comment-end {
  position: absolute;
  top: 50%;
  left: 50%;
  display: block;
  font-size: 1.8rem;
  font-weight: 500;
  line-height: 1.7em;
  color: #fff;
  text-align: center;
  transform: translate(-50%, -50%)
}

.p-event__list-item .p-event__list-item-image {
  transition: opacity .3s
}

.p-event__list-item:hover .p-event__list-item-image {
  opacity: .8
}

.p-event__list-item:hover .p-event__list-item-link::before {
  left: 0
}

.p-event__list-item:hover .p-event__list-item-link::after {
  right: 3px
}

.p-event__list-item-image {
  aspect-ratio: 1/1;
  margin-bottom: 4rem;
  transition: filter .5s ease
}

.p-event__list-item-image img {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover
}

@media screen and (max-width: 767px) {
  .p-event__list-item-image {
	margin-bottom: 2rem
  }
}

.p-event__list-item-label span {
  display: inline-block;
  padding: 10px 9px;
  font-size: 1.4rem;
  line-height: 1;
  border: 1px solid #c5c5c5;
  border-radius: 3px
}

@media screen and (max-width: 767px) {
  .p-event__list-item-label span {
	padding: 6px 7px;
	font-size: 1.2rem
  }
}

.p-event__list-item-text {
  margin: 2.8rem 0
}

.p-event__list-item-text .date-info {
  display: block;
  font-size: 2.2rem;
  line-height: 1;
  color: #505050
}

@media screen and (max-width: 767px) {
  .p-event__list-item-text .date-info {
	font-size: 1.6rem
  }
}

@media screen and (max-width: 767px) {
  .p-event__list-item-text {
	margin: 1.9rem 0 2.2rem
  }
}

.p-event__list-item-text .title-info {
  min-height: 10.8rem;
  margin-top: 1.6rem;
  font-size: 2rem;
  font-weight: 400;
  line-height: 1.8
}

@media screen and (max-width: 1080px) {
  .p-event__list-item-text .title-info {
	min-height: 14.4rem
  }
}

@media screen and (max-width: 767px) {
  .p-event__list-item-text .title-info {
	min-height: auto;
	margin-top: 1.2rem;
	font-size: 1.4rem
  }
}

.p-event__list-item-link {
  position: relative;
  padding-bottom: 1.3rem;
  overflow: hidden;
  font-size: 1.2rem
}

.p-event__list-item-link::before {
  position: absolute;
  bottom: 0;
  left: -100%;
  width: 200%;
  height: 1px;
  content: "";
  background-image: linear-gradient(to right, #505050 50%, #a3a3a3 50%);
  transition: left .5s ease
}

.p-event__list-item-link::after {
  position: absolute;
  top: 7px;
  right: 10px;
  display: inline-block;
  width: 7px;
  height: 7px;
  content: "";
  border-top: 1px solid #a3a3a3;
  border-right: 1px solid #a3a3a3;
  transition: right .5s ease;
  transform: rotate(45deg)
}

.p-interview__list>li:nth-of-type(even) .p-interview__list-item {
  justify-content: flex-end
}

@media screen and (max-width: 767px) {
  .p-interview__list>li:nth-of-type(even) .p-interview__list-item {
	flex-direction: column-reverse;
	align-items: flex-start;
	margin-left: auto
  }
}

.p-interview__list>li:nth-of-type(even) .p-interview__list-item-image {
  order: 2
}

@media screen and (max-width: 767px) {
  .p-interview__list>li:nth-of-type(even) .p-interview__list-item-content {
	padding-right: 2.4rem
  }
}

.p-interview__list>li:nth-of-type(even) .p-interview__list-item-content>* {
  margin-right: 0;
  margin-left: auto
}

.p-interview__list>li+li {
  margin-top: 10rem
}

@media screen and (max-width: 767px) {
  .p-interview__list>li+li {
	margin-top: 8rem
  }
}

.p-interview__list-item {
  display: flex;
  gap: 6.6vw;
  align-items: center
}

@media screen and (max-width: 767px) {
  .p-interview__list-item {
	flex-direction: column;
	align-items: flex-start;
	width: 90%
  }
}

.p-interview__list-item .p-interview__list-item-image {
  transition: opacity .3s
}

.p-interview__list-item:hover .p-interview__list-item-image {
  opacity: .8
}

.p-interview__list-item:hover .p-blog__list-item-link::before {
  left: 0
}

.p-interview__list-item:hover .p-blog__list-item-link::after {
  right: 3px
}

.p-interview__list-item-image {
  flex: 0 0 auto;
  width: 53.5%;
  aspect-ratio: 7/4;
  transition: filter .4s ease
}

.p-interview__list-item-image img {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover
}

@media screen and (max-width: 1080px) {
  .p-interview__list-item-image {
	width: 40%
  }
}

@media screen and (max-width: 767px) {
  .p-interview__list-item-image {
	width: 100%
  }
}

.p-interview__list-item-content {
  width: 100%
}

.p-interview__list-item-content>* {
  max-width: 75%
}

@media screen and (max-width: 1080px) {
  .p-interview__list-item-content>* {
	max-width: 90%
  }
}

@media screen and (max-width: 767px) {
  .p-interview__list-item-content>* {
	max-width: 100%;
	margin-left: 2.4rem
  }
}

.p-interview__list-item-title {
  margin-bottom: 5rem;
  font-size: 2rem;
  line-height: 2.2
}

@media screen and (max-width: 1080px) {
  .p-interview__list-item-title {
	margin-bottom: 2.2rem;
	font-size: 1.6rem;
	line-height: 1.8
  }
}

@media screen and (max-width: 767px) {
  .p-interview__list-item-title {
	font-size: 1.4rem
  }
}

.p-interview__list-item-area {
  margin-bottom: 2.4rem;
  font-size: 1.8rem;
  font-weight: 300;
  line-height: 1
}

@media screen and (max-width: 1080px) {
  .p-interview__list-item-area {
	margin-bottom: 1.5rem;
	font-size: 1.6rem
  }
}

.p-interview__list-item-tag {
  display: flex;
  flex-wrap: wrap;
  gap: 1rem;
  align-items: center;
  margin-bottom: 5rem
}

@media screen and (max-width: 1080px) {
  .p-interview__list-item-tag {
	margin-bottom: 2.7rem
  }
}

.p-interview__list-item-tag li {
  padding: 8px 8px 9px;
  font-size: 1.4rem;
  line-height: 1;
  color: #9a9a9a;
  background-color: #f0f0f0
}

@media screen and (max-width: 1080px) {
  .p-interview__list-item-tag li {
	padding: 5px 6px 6px;
	font-size: 1.2rem
  }
}

.p-modelhouse-single__info {
  margin-top: 22rem
}

@media screen and (max-width: 1080px) {
  .p-modelhouse-single__info {
	margin-top: 12rem
  }
}

@media screen and (max-width: 767px) {
  .p-modelhouse-single__info {
	margin-top: 7.2rem
  }
}

.p-modelhouse-single__info .main-title {
  margin-bottom: 6rem;
  font-size: 4rem;
  font-weight: 300;
  line-height: 1.8
}

@media screen and (max-width: 1080px) {
  .p-modelhouse-single__info .main-title {
	margin-bottom: 5.3rem;
	font-size: 2.6rem
  }
}

@media screen and (max-width: 767px) {
  .p-modelhouse-single__info .main-title {
	margin-bottom: 4.7rem
  }
}

@media screen and (max-width: 767px) {
  .p-modelhouse-single__info .c-page-sec-ttl__wrp[data-gap="30"] {
	gap: 2rem
  }
}

.p-modelhouse-single__info .c-page-sec-ttl__wrp[data-gap="30"] figure figcaption {
  margin-top: 2.6rem;
  font-size: 1.4rem;
  line-height: 1.8;
  color: #505050
}

@media screen and (max-width: 767px) {
  .p-modelhouse-single__info .c-page-sec-ttl__wrp[data-gap="30"] figure figcaption {
	margin-top: 1rem;
	font-size: 1.2rem
  }
}

.p-modelhouse-single__info-detail {
  display: flex;
  justify-content: center;
  gap: 2rem;
  max-width: 105rem;
  margin: 14.6rem auto 12.8rem;
  padding: 4.5rem 0;
  border-top: 1px solid #c5c5c5;
  border-bottom: 1px solid #c5c5c5
}

@media screen and (max-width: 767px) {
  .p-modelhouse-single__info-detail {
	display: block;
	margin: 9.3rem 3.2rem 3.4rem;
	padding: 4.5rem 0 4rem
  }
}

.p-modelhouse-single__info-detail-name {
  min-width: 25rem;
  font-size: 2.4rem
}

@media screen and (max-width: 767px) {
  .p-modelhouse-single__info-detail-name {
	font-weight: 300
  }
}

.p-modelhouse-single__info-detail-text .p-modelhouse__wrap-item-info {
  margin-top: 0
}

@media screen and (max-width: 767px) {
  .p-modelhouse-single__info-detail-text .p-modelhouse__wrap-item-info {
	margin-top: 3rem
  }
}

.p-modelhouse-single__info-detail-text .p-modelhouse__wrap-item-info>div {
  margin-top: 2.6rem
}

.p-modelhouse-single__info-detail-text .p-modelhouse__wrap-item-info>div dt {
  margin-right: 3.4rem
}

@media screen and (max-width: 767px) {
  .p-modelhouse-single__info-detail-text .p-modelhouse__wrap-item-info>div dt {
	line-height: 1
  }
}

@media screen and (max-width: 767px) {
  .p-modelhouse-single__info-detail-text .p-modelhouse__wrap-item-info>div dd {
	margin-top: 1rem;
	line-height: 1
  }
}

.p-modelhouse-single__info-detail-text .p-modelhouse__wrap-item-info>div dd.tel {
  position: relative;
  display: inline-block
}

@media screen and (max-width: 767px) {
  .p-modelhouse-single__info-detail-text .p-modelhouse__wrap-item-info>div dd.tel {
	font-size: 2rem
  }
}

.p-modelhouse-single__info-detail-text .p-modelhouse__wrap-item-info>div dd.tel::before {
  content: "";
  display: none;
  position: absolute;
  bottom: -0.3rem;
  width: 100%;
  height: 1px;
  background-color: #a3a3a3
}

@media screen and (max-width: 767px) {
  .p-modelhouse-single__info-detail-text .p-modelhouse__wrap-item-info>div dd.tel::before {
	display: inline-block
  }
}

.p-modelhouse-single__info-detail-text .p-modelhouse__wrap-item-info>div dd.tel a {
  pointer-events: none
}

@media screen and (max-width: 767px) {
  .p-modelhouse-single__info-detail-text .p-modelhouse__wrap-item-info>div dd.tel a {
	pointer-events: initial
  }
}

.p-modelhouse-single__info-detail-text .p-modelhouse__wrap-item-info>div dd.address a {
  position: relative
}

@media screen and (max-width: 767px) {
  .p-modelhouse-single__info-detail-text .p-modelhouse__wrap-item-info>div dd.address a {
	font-size: 1.6rem
  }
}

@media(any-hover: hover) {
  .p-modelhouse-single__info-detail-text .p-modelhouse__wrap-item-info>div dd.address a:hover::before {
	display: none
  }
}

.p-modelhouse-single__info-detail-text .p-modelhouse__wrap-item-info>div dd.address a::before {
  content: "";
  position: absolute;
  bottom: -0.3rem;
  width: 100%;
  height: 1px;
  background-color: #a3a3a3
}

.p-modelhouse-single__info-detail-text .p-modelhouse__wrap-item-info>div dd.address a::after {
  position: absolute;
  top: -0.1rem;
  right: -2.3rem;
  display: inline-block;
  width: 1.5rem;
  height: 2.1rem;
  content: "";
  background-image: url(../images/map-pin.64c82c5a7b072866b55f.svg);
  background-repeat: no-repeat
}

@media screen and (max-width: 1080px) {
  .p-modelhouse-single__info-detail-text .p-modelhouse__wrap-item-info>div dd.address a::after {
	right: -2rem;
	background-size: contain
  }
}

.p-modelhouse-single__gallery {
  padding: 16rem 3rem 6rem;
  color: #fff;
  background-color: #5f5f65
}

@media screen and (max-width: 767px) {
  .p-modelhouse-single__gallery {
	padding: 5.8rem 3.2rem
  }
}

@media screen and (max-width: 767px) {
  .p-modelhouse-single__gallery .c-page-sec-ttl {
	width: 100%;
	margin: 0
  }
}

.p-modelhouse-single__gallery .sub-title {
  color: #f0f0f0
}

.p-modelhouse-single__gallery .main-title {
  margin-bottom: 5.3rem;
  font-size: 4rem;
  font-weight: 300;
  line-height: 1.8
}

@media screen and (max-width: 1080px) {
  .p-modelhouse-single__gallery .main-title {
	font-size: 2.6rem
  }
}

.p-modelhouse-single__gallery-wrap {
  position: relative
}

.p-modelhouse-single__gallery-wrap div figure {
  width: 100%;
  aspect-ratio: 16/9
}

.p-modelhouse-single__gallery-wrap div figure img {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover
}

.p-modelhouse-single__gallery-wrap div figure figcaption {
  max-width: 70rem;
  margin-top: 2.4rem;
  margin-left: 0;
  font-size: 1.4rem;
  line-height: 1.8;
  color: #fff
}

@media screen and (max-width: 767px) {
  .p-modelhouse-single__gallery-wrap div figure figcaption {
	margin-top: 2.2rem;
	font-size: 1.2rem;
	font-weight: 300
  }
}

.p-modelhouse-single__gallery-wrap .swiper-button-prev,
.p-modelhouse-single__gallery-wrap .swiper-button-next {
  position: absolute;
  top: 45%;
  width: 8px;
  filter: brightness(200%);
  cursor: pointer
}

@media screen and (max-width: 767px) {

  .p-modelhouse-single__gallery-wrap .swiper-button-prev,
  .p-modelhouse-single__gallery-wrap .swiper-button-next {
	top: initial;
	bottom: 30%;
	width: 25px
  }
}

.p-modelhouse-single__gallery-wrap .swiper-button-prev {
  left: -4.5rem
}

@media screen and (max-width: 767px) {
  .p-modelhouse-single__gallery-wrap .swiper-button-prev {
	left: initial;
	right: 39px
  }
}

.p-modelhouse-single__gallery-wrap .swiper-button-next {
  right: -4.5rem
}

@media screen and (max-width: 767px) {
  .p-modelhouse-single__gallery-wrap .swiper-button-next {
	right: 3px
  }
}

.p-modelhouse-single__gallery-wrap .swiper-pagination {
  position: absolute;
  bottom: 1.9rem;
  right: 0
}

@media screen and (max-width: 767px) {
  .p-modelhouse-single__gallery-wrap .swiper-pagination {
	position: static;
	right: initial;
	bottom: 0;
	left: 0;
	margin-top: 1.3rem;
	font-size: 1.2rem
  }
}

.p-modelhouse-single__gallery-caption {
  min-height: 3.2rem;
  max-width: 70rem;
  margin-top: 2.4rem;
  margin-left: 0;
  font-size: 1.4rem;
  line-height: 1.8;
  color: #fff;
  background-color: #5f5f65
}

@media screen and (max-width: 767px) {
  .p-modelhouse-single__gallery-caption {
	margin-top: 2.2rem;
	font-size: 1.2rem;
	font-weight: 300
  }
}

.p-modelhouse-single__gallery-caption p:not(.swiper-slide-active) {
  opacity: 0 !important;
  transition: opacity .2s
}

.p-modelhouse-single__gallery-caption p.swiper-slide-active {
  transition: opacity .35s
}

.p-modelhouse-single__reservation {
  padding: 16.5rem 0 15rem;
  background-color: #f0f0f0
}

@media screen and (max-width: 767px) {
  .p-modelhouse-single__reservation {
	padding: 8.5rem 0 5rem
  }
}

.p-modelhouse-single__reservation .c-page-sec-ttl {
  margin-bottom: 6.3rem
}

@media screen and (max-width: 767px) {
  .p-modelhouse-single__reservation .c-page-sec-ttl {
	margin-bottom: 2.5rem
  }
}

.p-modelhouse-single__reservation .main-title {
  font-size: 4rem;
  font-weight: 300;
  line-height: 1.8
}

@media screen and (max-width: 1080px) {
  .p-modelhouse-single__reservation .main-title {
	font-size: 2.6rem
  }
}

.p-modelhouse-single__reservation .p-company__application-tel {
  max-width: 105rem;
  margin: 0 auto 5rem
}

@media screen and (max-width: 767px) {
  .p-modelhouse-single__reservation .p-company__application-tel {
	margin: 0 2rem 5rem;
	padding: 2.4rem 1rem 3.2rem
  }
}

@media screen and (max-width: 767px) {
  .p-modelhouse-single__reservation .p-company__application-tel .p-company__application-tel-info {
	text-align: center
  }
}

.p-modelhouse__list {
  margin-top: 22rem
}

@media screen and (max-width: 1080px) {
  .p-modelhouse__list {
	margin-top: 12rem
  }
}

@media screen and (max-width: 767px) {
  .p-modelhouse__list {
	margin-top: 7.2rem
  }
}

.p-modelhouse__list .main-title {
  margin-bottom: 6rem;
  font-size: 4rem;
  font-weight: 300;
  line-height: 1.8
}

@media screen and (max-width: 1080px) {
  .p-modelhouse__list .main-title {
	margin-bottom: 5.3rem;
	font-size: 2.6rem
  }
}

@media screen and (max-width: 767px) {
  .p-modelhouse__list .main-title {
	margin-bottom: 4.7rem
  }
}

@media screen and (max-width: 767px) {
  .p-modelhouse__list .c-page-sec-ttl .p-modelhouse__list-info {
	padding: 4.3rem 2rem;
	text-align: center;
	background-color: #f0f0f0;
	border-radius: 6px
  }
}

.p-modelhouse__list .c-page-sec-ttl .p-modelhouse__list-info .explan {
  width: 100%
}

@media screen and (max-width: 767px) {
  .p-modelhouse__list .c-page-sec-ttl .p-modelhouse__list-info .explan {
	margin-top: 0;
	font-size: 1.4rem;
	line-height: 1.8;
	text-align: center
  }
}

.p-modelhouse__list .c-page-sec-ttl .explan {
  font-weight: 300;
  line-height: 2.2;
  color: #505050
}

@media screen and (max-width: 767px) {
  .p-modelhouse__list .c-page-sec-ttl .explan {
	margin-top: 3.4rem
  }
}

.p-modelhouse__list .c-page-sec-ttl .explan p+p {
  margin-top: 3.2rem
}

.p-modelhouse__list .p-modelhouse__list-info-text {
  margin-top: 2.4rem;
  font-size: 2.9rem;
  font-weight: 300;
  line-height: 1.8
}

@media screen and (max-width: 1080px) {
  .p-modelhouse__list .p-modelhouse__list-info-text {
	font-size: 2.2rem
  }
}

@media screen and (max-width: 767px) {
  .p-modelhouse__list .p-modelhouse__list-info-text {
	margin-top: 1.5rem
  }
}

.p-modelhouse__present {
  padding: 9.5rem 3rem 16rem;
  background-color: #f0f0f0
}

@media screen and (max-width: 767px) {
  .p-modelhouse__present {
	padding: 6.3rem 3.2rem 5rem
  }
}

.p-modelhouse__present .c-page-sec-ttl {
  width: 100%;
  max-width: 84rem;
  margin: 0 auto
}

.p-modelhouse__present .c-page-sec-ttl .sub-title {
  margin-bottom: 2.4rem;
  text-align: center
}

.p-modelhouse__present .c-page-sec-ttl .main-title {
  width: 100%;
  font-size: 2.4rem;
  font-weight: 500;
  text-align: center
}

.p-modelhouse__present .c-page-sec-ttl .explan {
  width: 100%;
  margin-top: 3rem;
  font-weight: 300
}

@media screen and (max-width: 767px) {
  .p-modelhouse__present .c-page-sec-ttl .explan {
	margin-top: 0;
	line-height: 2
  }
}

@media screen and (max-width: 767px) {
  .p-modelhouse__present .c-page-sec-ttl .explan br[data-view=pc] {
	display: none
  }
}

.p-modelhouse__present .c-page-sec-ttl .c-page-sec-ttl__wrp {
  display: block;
  justify-content: center
}

@media screen and (max-width: 1080px) {
  .p-modelhouse__present .c-page-sec-ttl .c-page-sec-ttl__wrp {
	align-items: center;
	margin-inline: auto
  }
}

@media screen and (max-width: 767px) {
  .p-modelhouse__present .c-page-sec-ttl .c-page-sec-ttl__wrp {
	max-width: 500px
  }
}

@media screen and (max-width: 1080px) {
  .p-modelhouse__present img[data-view=pc] {
	display: none
  }
}

.p-modelhouse__present img[data-view=tab] {
  display: none
}

@media screen and (max-width: 1080px) {
  .p-modelhouse__present img[data-view=tab] {
	display: block;
	width: 100%;
	max-width: 50rem;
	margin: 2.4rem auto
  }
}

.p-modelhouse__present-direct {
  display: grid;
  grid-template-columns: 41.9047619048% auto;
  column-gap: 50px;
  margin-top: 128px
}

.p-modelhouse__present-direct img {
  width: 100%
}

.p-modelhouse__present-direct .__inner-contents {
  margin-top: 17px
}

.p-modelhouse__present-direct .__inner-contents h3 {
  font-size: 2.2rem;
  font-weight: 500;
  line-height: 1.8em
}

.p-modelhouse__present-direct .__inner-contents p {
  margin-top: 20px;
  font-size: 1.6rem;
  font-weight: 300;
  line-height: 2.2em
}

.p-modelhouse__present-direct .__inner-contents ul {
  margin-top: 20px;
  font-size: 1.4rem;
  font-weight: 300;
  line-height: 1.8em
}

@media screen and (max-width: 767px) {
  .p-modelhouse__present-direct {
	grid-template-columns: auto;
	margin-top: 53px
  }

  .p-modelhouse__present-direct .__inner-contents {
	margin-top: 32px
  }

  .p-modelhouse__present-direct .__inner-contents h3 {
	font-size: 2rem
  }

  .p-modelhouse__present-direct .__inner-contents p {
	margin-top: 16px;
	line-height: 2em
  }

  .p-modelhouse__present-direct .__inner-contents ul {
	margin-top: 16px
  }

  .p-modelhouse__present-direct .__inner-contents ul li {
	display: inline
  }
}

.p-modelhouse__present-catalog {
  display: grid;
  grid-template-columns: 400px min(30.7142857143%, 258px);
  column-gap: min(7.9166666667vw, 114px);
  align-items: center;
  margin-top: 75px
}

.p-modelhouse__present-catalog img {
  width: 100%
}

.p-modelhouse__present-catalog .__inner-contents h3 {
  font-size: 22px;
  font-weight: 500;
  line-height: 1.8em
}

.p-modelhouse__present-catalog .__inner-contents p {
  margin-top: 20px;
  font-size: 16px;
  font-weight: 300;
  line-height: 2.2em
}

@media screen and (max-width: 767px) {
  .p-modelhouse__present-catalog {
	grid-template-columns: auto;
	margin-top: 60px
  }

  .p-modelhouse__present-catalog .__inner-contents {
	order: 2;
	margin-top: -10px
  }

  .p-modelhouse__present-catalog .__inner-contents h3 {
	font-size: 2rem
  }

  .p-modelhouse__present-catalog .__inner-contents p {
	margin-top: 16px;
	line-height: 2em
  }
}

.p-modelhouse__present-catalog-image {
  width: 100%;
  margin-top: 20px
}

.p-modelhouse__content {
  padding: 16.1rem 0 0
}

@media screen and (max-width: 1080px) {
  .p-modelhouse__content {
	padding: 8.6rem 0 0
  }
}

.p-modelhouse-map__popUp {
  max-width: 220px
}

.p-modelhouse-map__popUp img {
  width: 100%
}

.p-modelhouse-map__popUp-title {
  margin: 8px 0 12px;
  font-size: 1.4rem;
  font-weight: medium
}

.p-modelhouse-map__popUp-address {
  margin-top: 10px;
  font-size: 1.2rem
}

.p-modelhouse-map__popUp-link {
  position: relative;
  display: block;
  padding: 8px;
  margin-top: 10px;
  font-size: 1.2rem;
  color: #fff;
  text-align: center;
  background-color: #5f5f65
}

.p-modelhouse-map__popUp-link span {
  position: absolute;
  top: 50%;
  right: 1.5rem;
  display: block;
  width: 6px;
  height: 6px;
  border-top: 1px solid #fff;
  border-right: 1px solid #fff;
  transform: translateY(-50%) rotate(45deg)
}

.p-modelhouse__map {
  max-width: 105rem;
  aspect-ratio: 105/60;
  margin: 0 auto 13.6rem
}

@media screen and (max-width: 1080px) {
  .p-modelhouse__map {
	margin: 0 auto 6rem
  }
}

@media screen and (max-width: 767px) {
  .p-modelhouse__map {
	aspect-ratio: 35/45;
	margin: 0 1.2rem 6rem
  }
}

.p-modelhouse__map iframe {
  width: 100%;
  height: 100%
}

.p-modelhouse__anchor {
  display: grid;
  grid-template-columns: 1fr 1fr 1fr 1fr;
  gap: 4rem 7rem;
  max-width: 80rem;
  padding: 0 4.8vw;
  margin: 0 auto
}

@media screen and (min-width: 1441px) {
  .p-modelhouse__anchor {
	padding: 0 4rem
  }
}

@media screen and (max-width: 1080px) {
  .p-modelhouse__anchor {
	gap: 2rem 4rem
  }
}

@media screen and (max-width: 767px) {
  .p-modelhouse__anchor {
	grid-template-columns: 1fr 1fr;
	gap: 2.2rem 3.6rem;
	max-width: calc(100% - 16vw);
	padding: 0 8vw
  }
}

.p-modelhouse__anchor[data-anchor=arbo] {
  display: flex;
  gap: 6rem;
  justify-content: center;
  padding: 7rem 1.8rem 0;
  margin-top: 7rem;
  border-top: 1px solid #c5c5c5
}

@media screen and (max-width: 1080px) {
  .p-modelhouse__anchor[data-anchor=arbo] {
	gap: 3rem;
	padding: 4rem 1.8rem 0;
	margin-top: 4rem
  }
}

@media screen and (max-width: 767px) {
  .p-modelhouse__anchor[data-anchor=arbo] {
	display: block;
	padding: 4rem 2.8rem 0
  }
}

@media screen and (max-width: 767px) {
  .p-modelhouse__anchor[data-anchor=arbo] li+li {
	margin-top: 1.8rem
  }
}

.p-modelhouse__anchor[data-anchor=arbo] li a {
  display: flex;
  align-items: center
}

.p-modelhouse__anchor[data-anchor=arbo] li a::after {
  position: relative;
  display: inline-block;
  flex: 0 0 auto;
  margin-left: 1.2rem;
  transform: translateY(0)
}

@media screen and (max-width: 767px) {
  .p-modelhouse__anchor[data-anchor=arbo] li a::after {
	position: absolute;
	margin-left: 0;
	transform: translateY(-50%)
  }
}

.p-modelhouse__anchor li a {
  position: relative;
  display: block;
  font-size: 1.8rem;
  font-weight: 300;
  line-height: 1.8
}

@media screen and (max-width: 767px) {
  .p-modelhouse__anchor li a {
	font-size: 1.6rem
  }
}

.p-modelhouse__anchor li a::after {
  position: absolute;
  top: 50%;
  right: 0;
  width: 2.8rem;
  height: 2.8rem;
  content: "";
  border: 1px solid #ddd;
  border-radius: 50%;
  transform: translateY(-50%)
}

.p-modelhouse__anchor li a::before {
  position: absolute;
  top: 50%;
  right: 12px;
  display: inline-block;
  width: 4px;
  height: 4px;
  content: "";
  border-right: 1px solid #2d2d2d;
  border-bottom: 1px solid #2d2d2d;
  transform: translateY(-50%) rotate(45deg)
}

.p-modelhouse__wrap {
  max-width: 132rem;
  padding: 0 3rem;
  margin: 14.5rem auto 0
}

@media screen and (max-width: 767px) {
  .p-modelhouse__wrap {
	padding: 0 3.2rem
  }
}

.p-modelhouse__wrap[data-wrap=arbo] {
  max-width: 100%;
  padding: 15rem 0;
  margin: 15rem auto 0;
  background-color: #f0f0f0
}

@media screen and (max-width: 767px) {
  .p-modelhouse__wrap[data-wrap=arbo] {
	padding: 0;
	margin-top: 11rem
  }
}

.p-modelhouse__wrap[data-wrap=arbo] .p-modelhouse__wrap-inner {
  max-width: 132rem;
  padding: 0 3rem;
  margin: 0 auto
}

@media screen and (max-width: 767px) {
  .p-modelhouse__wrap[data-wrap=arbo] .p-modelhouse__wrap-inner {
	padding: 5rem 3.2rem 8rem
  }
}

.p-modelhouse__wrap[data-wrap=arbo] .p-modelhouse__wrap-item-button .c-button__small[data-page=modelhouse] a {
  background-color: #fff
}

.p-modelhouse__wrap-item {
  display: flex;
  gap: 7vw;
  align-items: center
}

@media screen and (max-width: 1080px) {
  .p-modelhouse__wrap-item {
	gap: 5vw
  }
}

@media screen and (max-width: 767px) {
  .p-modelhouse__wrap-item {
	display: block
  }
}

.p-modelhouse__wrap-item:nth-of-type(even) {
  justify-content: flex-end
}

.p-modelhouse__wrap-item:nth-of-type(even) .p-modelhouse__wrap-item-image {
  order: 2
}

.p-modelhouse__wrap-item+.p-modelhouse__wrap-item {
  margin-top: 18rem
}

@media screen and (max-width: 1080px) {
  .p-modelhouse__wrap-item+.p-modelhouse__wrap-item {
	margin-top: 10rem
  }
}

.p-modelhouse__wrap-item-content {
  flex: 1
}

.p-modelhouse__wrap-item-heading {
  display: flex;
  gap: 2.3rem;
  align-items: center
}

@media screen and (max-width: 1080px) {
  .p-modelhouse__wrap-item-heading {
	gap: 1.1rem
  }
}

.p-modelhouse__wrap-item-heading h2 {
  font-size: 3.2rem;
  font-weight: 300;
  line-height: 1.8
}

@media screen and (max-width: 1080px) {
  .p-modelhouse__wrap-item-heading h2 {
	flex: 1;
	font-size: 2.4rem
  }
}

.p-modelhouse__wrap-item-heading-pin {
  display: inline-flex;
  justify-content: center;
  width: 4.2rem;
  height: 6.5rem;
  padding-top: 1rem;
  font-size: 2.8rem;
  font-weight: 700;
  line-height: 1;
  color: #f0f0f0;
  background-image: url(../images/pin.54b8d62fe99ad5199282.svg);
  background-repeat: no-repeat;
  background-size: contain
}

@media screen and (max-width: 1080px) {
  .p-modelhouse__wrap-item-heading-pin {
	width: 3.3rem;
	height: 5rem;
	padding-top: 1rem;
	font-size: 2.2rem
  }
}

.p-modelhouse__wrap-item-info {
  margin-top: 2.3rem
}

@media screen and (max-width: 767px) {
  .p-modelhouse__wrap-item-info {
	margin-top: 2.5rem
  }
}

.p-modelhouse__wrap-item-info>div {
  display: flex;
  align-items: center
}

@media screen and (max-width: 767px) {
  .p-modelhouse__wrap-item-info>div {
	display: block
  }
}

.p-modelhouse__wrap-item-info>div+div {
  margin-top: 1.8rem
}

@media screen and (max-width: 1080px) {
  .p-modelhouse__wrap-item-info>div+div {
	margin-top: .8rem
  }
}

@media screen and (max-width: 767px) {
  .p-modelhouse__wrap-item-info>div+div {
	margin-top: 2rem
  }
}

.p-modelhouse__wrap-item-info>div dt {
  min-width: 6.4rem;
  margin-right: 1.9rem;
  font-weight: 500;
  line-height: 1.6;
  color: #a3a3a3
}

@media screen and (max-width: 1080px) {
  .p-modelhouse__wrap-item-info>div dt {
	margin-right: 1.5rem;
	font-size: 1.4rem;
	line-height: 1.6
  }
}

.p-modelhouse__wrap-item-info>div dd {
  font-size: 1.8rem;
  font-weight: 300;
  line-height: 1.4
}

@media screen and (max-width: 1080px) {
  .p-modelhouse__wrap-item-info>div dd {
	font-size: 1.6rem;
	line-height: 1.4
  }
}

.p-modelhouse__wrap-item-info[data-type=except-arbo] {
  margin: 6rem 0
}

@media screen and (max-width: 767px) {
  .p-modelhouse__wrap-item-info[data-type=except-arbo] {
	margin: 2.4rem 0 3rem
  }
}

.p-modelhouse__wrap-item-info[data-type=except-arbo]>div {
  display: block
}

.p-modelhouse__wrap-item-info[data-type=except-arbo]>div dd {
  font-size: 2.4rem
}

@media screen and (max-width: 767px) {
  .p-modelhouse__wrap-item-info[data-type=except-arbo]>div dd {
	font-size: 2.2rem
  }
}

.p-modelhouse__wrap-item-info[data-type=except-arbo]>div dd.tel a {
  position: relative;
  pointer-events: none
}

@media screen and (max-width: 767px) {
  .p-modelhouse__wrap-item-info[data-type=except-arbo]>div dd.tel a {
	pointer-events: initial
  }
}

.p-modelhouse__wrap-item-info[data-type=except-arbo]>div dd.tel a::before {
  position: absolute;
  bottom: -0.1rem;
  display: none;
  width: 100%;
  height: 1px;
  content: "";
  background-color: #a3a3a3
}

@media screen and (max-width: 767px) {
  .p-modelhouse__wrap-item-info[data-type=except-arbo]>div dd.tel a::before {
	display: block
  }
}

.p-modelhouse__wrap-item-info[data-type=except-arbo]>div dd.address a {
  position: relative;
  font-size: 1.8rem
}

@media screen and (max-width: 767px) {
  .p-modelhouse__wrap-item-info[data-type=except-arbo]>div dd.address a {
	font-size: 1.6rem
  }
}

@media(any-hover: hover) {
  .p-modelhouse__wrap-item-info[data-type=except-arbo]>div dd.address a:hover::before {
	display: none
  }
}

.p-modelhouse__wrap-item-info[data-type=except-arbo]>div dd.address a::before {
  position: absolute;
  bottom: -0.3rem;
  width: 100%;
  height: 1px;
  content: "";
  background-color: #a3a3a3
}

.p-modelhouse__wrap-item-info[data-type=except-arbo]>div dd.address a::after {
  position: absolute;
  top: -0.1rem;
  right: -2.3rem;
  display: inline-block;
  width: 1.5rem;
  height: 2.1rem;
  content: "";
  background-image: url(../images/map-pin.64c82c5a7b072866b55f.svg);
  background-repeat: no-repeat
}

@media screen and (max-width: 1080px) {
  .p-modelhouse__wrap-item-info[data-type=except-arbo]>div dd.address a::after {
	right: -2rem;
	background-size: contain
  }
}

.p-modelhouse__wrap-item-map {
  margin-top: 2.8rem
}

@media screen and (max-width: 767px) {
  .p-modelhouse__wrap-item-map {
	margin-top: 3rem
  }
}

.p-modelhouse__wrap-item-map a {
  position: relative;
  display: inline-block;
  font-size: 1.8rem;
  font-weight: 300;
  line-height: 1;
  text-decoration: underline;
  text-underline-position: initial
}

.p-modelhouse__wrap-item-map a:hover {
  text-decoration: none
}

@media screen and (max-width: 1080px) {
  .p-modelhouse__wrap-item-map a {
	font-size: 1.5rem;
	line-height: 1
  }
}

.p-modelhouse__wrap-item-map a::after {
  position: absolute;
  top: .1rem;
  right: -2.3rem;
  display: inline-block;
  width: 1.4rem;
  height: 1.4rem;
  content: "";
  background-image: url(../images/outlink-icon.09b6e48b8011c480c3df.svg)
}

@media screen and (max-width: 1080px) {
  .p-modelhouse__wrap-item-map a::after {
	right: -2rem;
	width: 1.2rem;
	height: 1.2rem;
	background-size: contain
  }
}

.p-modelhouse__wrap-item-button {
  margin-top: 4.4rem
}

@media screen and (max-width: 1080px) {
  .p-modelhouse__wrap-item-button {
	margin-top: 3.7rem
  }
}

.p-modelhouse__wrap-item-button[data-type="2column"] {
  display: flex;
  gap: 1rem
}

.p-modelhouse__wrap-item-button[data-type="2column"]>* {
  width: 50%
}

@media screen and (max-width: 767px) {
  .p-modelhouse__wrap-item-button[data-type="2column"]>*.c-button__small[data-page=modelhouse] a.c-slide-btn--parent {
	padding: 1.2rem 1.2rem 1.4rem 1.9rem
  }

  .p-modelhouse__wrap-item-button[data-type="2column"]>*.c-button__small[data-page=modelhouse] a.c-slide-btn--parent .c-slide-btn {
	width: 3rem;
	height: 3rem
  }

  .p-modelhouse__wrap-item-button[data-type="2column"]>*.c-button__small[data-page=modelhouse] a.c-slide-btn--parent p {
	line-height: 1
  }
}

.p-modelhouse__wrap-item-image {
  width: 52%;
  aspect-ratio: 6/5
}

.p-modelhouse__wrap-item-image img {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover
}

@media screen and (max-width: 1080px) {
  .p-modelhouse__wrap-item-image {
	width: 45%
  }
}

@media screen and (max-width: 767px) {
  .p-modelhouse__wrap-item-image {
	display: none;
	margin-top: 2rem
  }
}

.p-modelhouse__wrap-item-image-sp {
  display: none
}

@media screen and (max-width: 767px) {
  .p-modelhouse__wrap-item-image-sp {
	display: block;
	aspect-ratio: 16/9;
	margin-top: 2rem
  }

  .p-modelhouse__wrap-item-image-sp img {
	display: block;
	width: 100%;
	height: 100%;
	object-fit: cover
  }
}

.p-modelhouse__covid {
  padding: 13rem 3rem;
  color: #fff;
  background-color: #5f5f65
}

@media screen and (max-width: 767px) {
  .p-modelhouse__covid {
	padding: 7.5rem 3.2rem 6.4rem
  }
}

.p-modelhouse__covid-wrp {
  max-width: 70rem;
  margin: 0 auto
}

.p-modelhouse__covid-wrp h2 {
  margin-bottom: 5.2rem;
  font-size: 2.4rem;
  line-height: 1.8;
  text-align: center
}

@media screen and (max-width: 767px) {
  .p-modelhouse__covid-wrp h2 {
	margin-bottom: 4rem;
	font-size: 2.2rem
  }
}

.p-modelhouse__covid-wrp p {
  font-size: 1.6rem;
  font-weight: 300;
  line-height: 2.2
}

@media screen and (max-width: 767px) {
  .p-modelhouse__covid-wrp p {
	line-height: 2
  }
}

.p-modelhouse__area {
  padding: 22rem 3rem 16.4rem
}

@media screen and (max-width: 1080px) {
  .p-modelhouse__area {
	padding: 10rem 3.2rem
  }
}

@media screen and (max-width: 767px) {
  .p-modelhouse__area {
	padding: 7rem 3.2rem 10rem
  }
}

.p-modelhouse__area .c-page-sec-ttl {
  margin: 0 auto 6rem
}

@media screen and (max-width: 1080px) {
  .p-modelhouse__area .c-page-sec-ttl {
	width: 100%;
	max-width: 84rem
  }
}

@media screen and (max-width: 767px) {
  .p-modelhouse__area .c-page-sec-ttl {
	width: 100%;
	margin: 0 auto 5rem
  }
}

.p-modelhouse__area .c-page-sec-ttl__wrp {
  align-items: flex-end
}

@media screen and (max-width: 1080px) {
  .p-modelhouse__area .c-page-sec-ttl__wrp {
	align-items: flex-start
  }
}

.p-modelhouse__area .c-page-sec-ttl__wrp .main-title {
  width: 100%
}

.p-modelhouse__area .c-page-sec-ttl__wrp .explan {
  width: 50%;
  margin: 0;
  font-weight: 300;
  line-height: 2.1
}

@media screen and (max-width: 1080px) {
  .p-modelhouse__area .c-page-sec-ttl__wrp .explan {
	margin-top: 2.6rem
  }
}

@media screen and (max-width: 767px) {
  .p-modelhouse__area .c-page-sec-ttl__wrp .explan {
	width: 100%
  }
}

.p-modelhouse__area-image {
  margin: 8rem auto 0;
  text-align: center
}

@media screen and (max-width: 1080px) {
  .p-modelhouse__area-image {
	max-width: 84rem
  }
}

@media screen and (max-width: 767px) {
  .p-modelhouse__area-image {
	margin: 0 auto
  }
}

.p-modelhouse__area-list {
  max-width: 84rem;
  margin: 10.7rem auto 0
}

@media screen and (max-width: 767px) {
  .p-modelhouse__area-list {
	margin: 5.5rem auto 0
  }
}

.p-modelhouse__area-list-item>div {
  display: flex;
  gap: 4.3rem;
  padding-left: 2.3rem;
  font-weight: 300;
  border-left: 4px solid #d9d9d9
}

@media screen and (max-width: 767px) {
  .p-modelhouse__area-list-item>div {
	display: block;
	padding-left: 0;
	border-left: none
  }
}

.p-modelhouse__area-list-item>div:nth-child(2) {
  border-color: #9d8f5b
}

@media screen and (max-width: 767px) {
  .p-modelhouse__area-list-item>div:nth-child(2) dt {
	border-color: #9d8f5b
  }
}

.p-modelhouse__area-list-item>div:nth-child(3) {
  border-color: #9c9c9c
}

@media screen and (max-width: 767px) {
  .p-modelhouse__area-list-item>div:nth-child(3) dt {
	border-color: #9c9c9c
  }
}

.p-modelhouse__area-list-item>div:nth-child(4) {
  border-color: #7b7b7b
}

@media screen and (max-width: 767px) {
  .p-modelhouse__area-list-item>div:nth-child(4) dt {
	border-color: #7b7b7b
  }
}

.p-modelhouse__area-list-item>div:nth-child(5) {
  border-color: #7ea7c2
}

@media screen and (max-width: 767px) {
  .p-modelhouse__area-list-item>div:nth-child(5) dt {
	border-color: #7ea7c2
  }
}

.p-modelhouse__area-list-item>div:nth-child(6) {
  border-color: #00618e
}

@media screen and (max-width: 767px) {
  .p-modelhouse__area-list-item>div:nth-child(6) dt {
	border-color: #00618e
  }
}

.p-modelhouse__area-list-item>div+div {
  margin-top: 5rem
}

@media screen and (max-width: 767px) {
  .p-modelhouse__area-list-item>div+div {
	margin-top: 3.8rem
  }
}

.p-modelhouse__area-list-item>div dt {
  font-size: 1.8rem;
  line-height: 1.6
}

@media screen and (max-width: 767px) {
  .p-modelhouse__area-list-item>div dt {
	padding-bottom: .5rem;
	margin-bottom: 1.8rem;
	line-height: 2.1;
	border-bottom: 2px solid #d9d9d9
  }
}

.p-modelhouse__area-list-item>div dd {
  flex: 1;
  font-size: 1.4rem;
  line-height: 2
}

.p-modelhouse__online {
  padding: 15rem 3rem 17rem;
  background-color: #f0f0f0
}

@media screen and (max-width: 1080px) {
  .p-modelhouse__online {
	padding: 10rem 3.2rem 5rem
  }
}

@media screen and (max-width: 767px) {
  .p-modelhouse__online {
	padding: 7rem 3.2rem 3rem
  }
}

.p-modelhouse__online .c-page-sec-ttl {
  margin: 0 auto 6rem
}

@media screen and (max-width: 767px) {
  .p-modelhouse__online .c-page-sec-ttl {
	width: 100%;
	margin: 0 auto 5rem
  }
}

.p-modelhouse__online .c-page-sec-ttl__wrp .main-title {
  width: 100%
}

.p-modelhouse__online .c-page-sec-ttl__wrp .explan {
  width: 53%;
  margin: 5.5rem 0 0;
  font-weight: 300;
  line-height: 2.1
}

@media screen and (max-width: 1080px) {
  .p-modelhouse__online .c-page-sec-ttl__wrp .explan {
	width: 100%
  }
}

.p-modelhouse__online-image {
  display: flex;
  gap: 20px;
  align-items: center;
  margin-top: 4.7rem
}

@media screen and (max-width: 767px) {
  .p-modelhouse__online-image {
	flex-direction: column;
	gap: 18px;
	margin-top: 5.1rem
  }
}

.p-modelhouse__online-image a {
  transition: filter .4s
}

.p-modelhouse__online-image a:hover {
  filter: brightness(120%)
}

@media screen and (max-width: 767px) {
  .p-modelhouse__online-image a img {
	min-width: 15.2rem;
	max-width: 16rem
  }
}

.p-modelhouse__feature {
  max-width: 134rem;
  margin: 8rem auto
}

@media screen and (max-width: 767px) {
  .p-modelhouse__feature {
	margin: 0 auto 5rem
  }
}

.p-modelhouse__feature .p-modelhouse__feature-inner {
  position: relative;
  display: block;
  padding: 19.4rem 0 12.7rem;
  color: #fff;
  text-align: center;
  background-image: url(../images/our-feature.54ef6702aba27c400e3a.jpg);
  background-position: center;
  background-size: cover;
  transition: filter .4s
}

@media screen and (max-width: 1080px) {
  .p-modelhouse__feature .p-modelhouse__feature-inner {
	padding: 7.1rem 0 5.3rem
  }
}

.p-modelhouse__feature .p-modelhouse__feature-inner:hover {
  filter: brightness(120%)
}

.p-modelhouse__feature .p-modelhouse__feature-inner::before {
  position: absolute;
  inset: 0;
  z-index: 1;
  content: "";
  background: #9a9a9a;
  mix-blend-mode: multiply;
  opacity: .4
}

.p-modelhouse__feature .p-modelhouse__feature-inner>* {
  position: relative;
  z-index: 2
}

.p-modelhouse__feature .p-modelhouse__feature-inner .main-title {
  margin: 1.5rem 0 3.3rem;
  font-size: 4rem;
  font-weight: 300;
  line-height: 1.8
}

@media screen and (max-width: 1080px) {
  .p-modelhouse__feature .p-modelhouse__feature-inner .main-title {
	font-size: 2.6rem
  }
}

.p-modelhouse__feature .p-modelhouse__feature-inner p {
  font-weight: 300;
  line-height: 1.8
}

.p-modelhouse__feature .p-modelhouse__feature-inner .c-slide-btn {
  width: 7.2rem;
  height: 7.2rem;
  margin: 6.3rem auto 0
}

@media screen and (max-width: 767px) {
  .p-modelhouse__feature .p-modelhouse__feature-inner .c-slide-btn {
	width: 4.6rem;
	height: 4.6rem;
	margin: 2.3rem auto 0
  }
}

.p-modelhouse__feature .p-modelhouse__feature-inner .c-slide-btn::before {
  width: .9rem;
  height: .9rem
}

@media screen and (max-width: 767px) {
  .p-modelhouse__feature .p-modelhouse__feature-inner .c-slide-btn::before {
	width: .6rem;
	height: .6rem
  }
}

.p-news__list {
  margin: 11.5rem 5rem
}

@media screen and (max-width: 1080px) {
  .p-news__list {
	margin: 11.5rem 0
  }
}

@media screen and (max-width: 767px) {
  .p-news__list {
	margin: 5.1rem 0 6.7rem
  }
}

.p-news__list li:last-child .p-news__list-item {
  border-bottom: 1px solid #c5c5c5
}

.p-news__list-item {
  position: relative;
  display: flex;
  align-items: center;
  padding: 7.4rem 3rem 7.4rem 2rem;
  border-top: 1px solid #c5c5c5;
  transition: background-color .4s ease-in
}

.p-news__list-item:hover {
  background-color: #f0f0f0
}

@media screen and (max-width: 1080px) {
  .p-news__list-item {
	padding: 7.4rem 2rem
  }
}

@media screen and (max-width: 767px) {
  .p-news__list-item {
	display: block;
	padding: 2.8rem 0
  }
}

.p-news__list-item .c-slide-btn {
  position: absolute;
  right: 3rem
}

@media screen and (max-width: 1080px) {
  .p-news__list-item .c-slide-btn {
	right: 2rem
  }
}

@media screen and (max-width: 767px) {
  .p-news__list-item .c-slide-btn {
	display: none
  }
}

.p-news__list-item-inner {
  display: flex;
  align-items: center
}

@media screen and (max-width: 767px) {
  .p-news__list-item-inner {
	justify-content: space-between
  }
}

.p-news__list-item-date {
  display: flex;
  gap: .9rem;
  align-items: center;
  margin-right: 6rem;
  line-height: 1
}

@media screen and (max-width: 1080px) {
  .p-news__list-item-date {
	margin-right: 3rem
  }
}

@media screen and (max-width: 767px) {
  .p-news__list-item-date {
	gap: .3rem;
	align-items: flex-end;
	margin-right: 0
  }
}

.p-news__list-item-date span[data-text=date] {
  font-size: 4.4rem
}

@media screen and (max-width: 767px) {
  .p-news__list-item-date span[data-text=date] {
	font-size: 2.4rem
  }
}

.p-news__list-item-date span:not([data-text=date]) span {
  display: block
}

@media screen and (max-width: 767px) {
  .p-news__list-item-date span:not([data-text=date]) span {
	display: inline;
	margin-left: .3rem
  }
}

@media screen and (max-width: 767px) {
  .p-news__list-item-date br {
	display: none
  }
}

.p-news__list-item-label {
  min-width: 10.8rem;
  margin-right: 3rem
}

@media screen and (max-width: 767px) {
  .p-news__list-item-label {
	min-width: auto;
	margin-right: 0
  }
}

.p-news__list-item-label span {
  display: inline-block;
  padding: 10px 15px;
  font-size: 1.4rem;
  line-height: 1;
  color: #505050;
  border: 1px solid #a3a3a3;
  border-radius: 3px
}

@media screen and (max-width: 767px) {
  .p-news__list-item-label span {
	padding: 6px 7px;
	font-size: 1.2rem
  }
}

.p-news__list-item-title {
  flex: 1;
  padding-right: 9.3rem;
  font-size: 2rem;
  font-weight: 400;
  line-height: 1.8
}

@media screen and (max-width: 1080px) {
  .p-news__list-item-title {
	padding-right: 5.5rem;
	font-size: 1.8rem
  }
}

@media screen and (max-width: 767px) {
  .p-news__list-item-title {
	padding-right: 0;
	margin-top: 1.1rem;
	font-size: 1.4rem
  }
}

.p-staff-single {
  position: relative;
  z-index: 2;
  display: flex;
  align-items: flex-end;
  height: 49.5833333333vw;
  background-color: #fff
}

@media screen and (max-width: 767px) {
  .p-staff-single {
	display: block;
	height: auto;
	background-color: #f0f0f0
  }
}

.p-staff-single__image {
  position: relative;
  bottom: -8vw;
  left: 7vw;
  width: 41.6666666667vw;
  aspect-ratio: 3/4
}

.p-staff-single__image img {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover
}

@media screen and (max-width: 767px) {
  .p-staff-single__image {
	position: static;
	width: 85.3333333333vw;
	aspect-ratio: 32/35
  }
}

.p-staff-single__content {
  position: relative;
  z-index: 3;
  width: 38.1944444444vw;
  min-height: 38rem;
  padding: 8.3vw 6vw 8.3vw 9vw;
  margin-left: 4.4vw;
  color: #f0f0f0;
  background-color: #5f5f65;
  transform: translateY(0)
}

@media screen and (max-width: 1080px) {
  .p-staff-single__content {
	min-height: auto;
	padding: 4vw 5vw
  }
}

@media screen and (max-width: 767px) {
  .p-staff-single__content {
	width: 75.2vw;
	padding: 12vw 10.7vw 12vw 11.7vw;
	margin-right: 0;
	margin-left: auto;
	transform: translateY(-5.2rem)
  }
}

.p-staff-single__content-heading span.job {
  font-size: 1.8rem
}

@media screen and (max-width: 1080px) {
  .p-staff-single__content-heading span.job {
	font-size: 1.4rem
  }
}

.p-staff-single__content-heading h1 {
  margin-top: 1rem;
  font-size: 3.4rem;
  font-weight: 300;
  line-height: 1.6
}

@media screen and (max-width: 1080px) {
  .p-staff-single__content-heading h1 {
	font-size: 3rem
  }
}

.p-staff-single__content-heading span.en {
  display: block;
  margin-top: .3rem;
  font-size: 1.4rem;
  font-weight: 300;
  color: #ddd
}

@media screen and (max-width: 1080px) {
  .p-staff-single__content-heading span.en {
	margin-top: 0;
	font-size: 1.4rem
  }
}

.p-staff-single__content-heading dl {
  display: flex;
  margin-top: 2.5rem;
  font-weight: 300
}

@media screen and (max-width: 1080px) {
  .p-staff-single__content-heading dl {
	margin-top: 2rem
  }
}

@media screen and (max-width: 767px) {
  .p-staff-single__content-heading dl {
	flex-wrap: wrap;
	margin-top: 1.5rem
  }
}

.p-staff-single__content-heading dl dt {
  position: relative;
  flex: 0 0 auto
}

@media screen and (max-width: 767px) {
  .p-staff-single__content-heading dl dt {
	display: block;
	width: 100%;
	font-size: 1.2rem
  }
}

.p-staff-single__content-heading dl dt::after {
  display: inline-block;
  margin: 0 3px;
  content: "："
}

.p-staff-single__content-heading dl .qualification-wrap {
  display: flex;
  flex-wrap: wrap
}

.p-staff-single__content-heading dl dd {
  position: relative
}

@media screen and (max-width: 767px) {
  .p-staff-single__content-heading dl dd {
	font-size: 1.4rem
  }
}

.p-staff-single__content-heading dl dd:not(:last-of-type)::after {
  content: "、"
}

.p-staff-single__content-message {
  margin-top: 6rem;
  font-size: 1.8rem;
  font-weight: 500;
  line-height: 1.9
}

@media screen and (max-width: 1080px) {
  .p-staff-single__content-message {
	margin-top: 4rem;
	font-size: 1.6rem
  }
}

.p-staff-single__content-text {
  margin-top: 3.2rem;
  font-size: 1.4rem;
  font-weight: 300;
  line-height: 2.2
}

@media screen and (max-width: 1080px) {
  .p-staff-single__content-text {
	margin-top: 2rem;
	line-height: 1.8
  }
}

.p-staff__list {
  display: grid;
  grid-template-columns: 1fr 1fr 1fr;
  gap: 15rem 7rem;
  margin-top: 17.5rem
}

@media screen and (max-width: 1080px) {
  .p-staff__list {
	grid-template-columns: 1fr 1fr;
	gap: 10rem 7rem;
	margin-top: 10rem
  }
}

@media screen and (max-width: 767px) {
  .p-staff__list {
	gap: 7rem 1.5rem;
	margin-top: 5rem
  }
}

.p-staff__list li {
  aspect-ratio: 22/29
}

@media screen and (max-width: 1080px) {
  .p-staff__list li {
	aspect-ratio: 24/29
  }
}

@media screen and (max-width: 767px) {
  .p-staff__list li {
	aspect-ratio: 33/48
  }
}

@media screen and (width <=500px) {
  .p-staff__list li {
	aspect-ratio: 33/53
  }
}

@media screen and (width <=400px) {
  .p-staff__list li {
	aspect-ratio: 33/58
  }
}

@media screen and (width <=360px) {
  .p-staff__list li {
	aspect-ratio: 33/60
  }
}

@media screen and (max-width: 767px) {
  .p-staff__list li:nth-child(even) {
	transform: translateY(4rem)
  }
}

.p-staff__list-item {
  position: relative;
  display: block;
  height: 100%;
  transition: opacity .3s
}

.p-staff__list-item:hover {
  opacity: .8
}

.p-staff__list-item-image {
  width: 76.7%;
  aspect-ratio: 3/4;
  margin-left: auto
}

.p-staff__list-item-image img {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover
}

@media screen and (max-width: 767px) {
  .p-staff__list-item-image {
	width: 91%;
	margin-right: auto;
	margin-left: 0
  }
}

.p-staff__list-item-job {
  position: absolute;
  top: 0;
  left: 2.09vw;
  font-size: 2.6rem;
  font-weight: 300;
  line-height: 1;
  color: #a3a3a3;
  letter-spacing: -0.03em;
  writing-mode: vertical-rl
}

@media screen and (max-width: 767px) {
  .p-staff__list-item-job {
	right: 0;
	left: initial;
	font-size: 2.2rem;
	transform: translateY(-1rem)
  }
}

@media screen and (width <=360px) {
  .p-staff__list-item-job {
	font-size: 2rem
  }
}

.p-staff__list-item-info {
  position: absolute;
  bottom: 0;
  left: 0;
  width: 92%;
  padding: 30px 20px 35px 30px;
  color: #fff;
  background-color: #5f5f65
}

@media screen and (max-width: 767px) {
  .p-staff__list-item-info {
	right: 0;
	left: initial;
	width: 95%;
	padding: 26px 20px 30px 30px;
	padding: 19px 15px
  }
}

.p-staff__list-item-info p {
  min-height: 81px;
  margin-bottom: 3.5rem;
  font-size: 1.4rem;
  line-height: 1.9
}

@media screen and (max-width: 767px) {
  .p-staff__list-item-info p {
	margin-bottom: 3rem
  }
}

.p-staff__list-item-info-job {
  font-size: 1.6rem;
  line-height: 1.2
}

@media screen and (max-width: 767px) {
  .p-staff__list-item-info-job {
	display: block;
	font-size: 1.2rem
  }
}

.p-staff__list-item-info-name {
  margin-top: 1rem;
  line-height: 1.4
}

@media screen and (max-width: 767px) {
  .p-staff__list-item-info-name {
	margin-top: 1rem
  }
}

.p-staff__list-item-info-name span[data-text=ja] {
  margin-right: .6rem;
  font-size: 2rem
}

@media screen and (max-width: 767px) {
  .p-staff__list-item-info-name span[data-text=ja] {
	display: block;
	margin-right: 0;
	font-size: 1.8rem;
	font-weight: 300
  }
}

.p-staff__list-item-info-name span.font-en {
  font-size: 1.2rem;
  color: #c5c5c5
}

@media screen and (max-width: 767px) {
  .p-staff__list-item-info-name span.font-en {
	display: block;
	margin-top: 0;
	font-size: 1rem
  }
}

.p-works {
  padding-top: 11rem
}

.p-works .c-page-fv__index-wrp {
  justify-content: flex-end
}

.p-works .c-page-secLink .c-page-secLink__inner-img {
  aspect-ratio: 134/65
}

@media screen and (max-width: 767px) {
  .p-works .c-page-secLink .c-page-secLink__inner-img {
	aspect-ratio: 75/64
  }
}

@media screen and (max-width: 767px) {
  .p-works-fv {
	position: relative
  }

  .p-works-fv .c-page-fv__index-wrp {
	position: absolute;
	top: -2rem;
	left: 0;
	width: 100%
  }

  .p-works-fv .c-page-fv__index-img-breadcrumb p:first-child {
	margin-left: 4rem
  }

  .p-works-fv .c-page-fv__index-img-breadcrumb .page-title {
	margin-right: 1rem
  }
}

@media screen and (max-width: 767px) {
  .p-works-fv__title-img {
	width: 20rem
  }
}

.p-works-fv__inner {
  display: flex;
  justify-content: space-between;
  margin-top: -2rem;
  margin-bottom: 10rem;
  margin-left: 10%
}

@media screen and (max-width: 767px) {
  .p-works-fv__inner {
	display: block;
	width: 88%;
	margin: 1.5rem auto 4rem
  }
}

.p-works-fv__title {
  color: #2d2d2d
}

.p-works-fv__title h1 {
  margin-bottom: 3rem;
  font-size: min(2.09vw, 3rem);
  font-weight: 500;
  line-height: 1.8em
}

@media screen and (max-width: 767px) {
  .p-works-fv__title h1 {
	font-size: 1.8rem;
	line-height: 1.6em
  }
}

.p-works-fv__cat-title {
  margin-bottom: 4rem;
  font-size: min(1.25vw, 1.8rem);
  font-weight: 500;
  line-height: 1.8em
}

@media screen and (max-width: 767px) {
  .p-works-fv__cat-title {
	font-size: 1.2rem
  }
}

.p-works-fv__owner {
  font-size: min(1.25vw, 1.8rem);
  font-weight: 300;
  line-height: 1em;
  color: #9a9a9a
}

@media screen and (max-width: 767px) {
  .p-works-fv__owner {
	font-size: 1.4rem
  }
}

.p-works-info {
  width: 80%;
  padding-top: 25px;
  padding-bottom: 8rem;
  margin: 0 auto;
  border-top: 1px solid #c5c5c5;
  border-bottom: 1px solid #c5c5c5
}

@media screen and (max-width: 767px) {
  .p-works-info {
	width: 88%;
	padding-top: 0;
	border: none
  }
}

.p-works__sec-title {
  margin-bottom: 85px;
  font-size: min(1.12vw, 1.6rem);
  line-height: 1em;
  color: #9a9a9a;
  letter-spacing: .02em
}

@media screen and (max-width: 767px) {
  .p-works__sec-title {
	padding-top: 2rem;
	margin-bottom: 4rem;
	font-size: 1.4rem;
	font-weight: 500
  }

  .p-works__sec-title.line-item {
	border-top: 1px solid #c5c5c5
  }

  .p-works-relation .p-works__sec-title {
	margin-bottom: 10px
  }
}

.p-works-info__slideWrp {
  position: relative;
  width: 46%;
  max-width: 700px;
  margin-right: min(11.1vw, 12rem)
}

@media screen and (max-width: 767px) {
  .p-works-info__slideWrp {
	width: 100%
  }
}

.p-works-info__slideWrp-slide {
  position: relative;
  max-width: 600px
}

.p-works-info__slideWrp-slide .swiper-slide {
  height: 100%
}

.p-works-info__slideWrp-slide .swiper-slide img {
  width: 100%;
  height: 100%;
  aspect-ratio: 53/72;
  object-fit: cover
}

.p-works-info__slideWrp-slide .swiper-button-prev,
.p-works-info__slideWrp-slide .swiper-button-next {
  position: absolute;
  top: 50%;
  width: 8px;
  cursor: pointer
}

@media screen and (max-width: 767px) {

  .p-works-info__slideWrp-slide .swiper-button-prev,
  .p-works-info__slideWrp-slide .swiper-button-next {
	top: auto;
	bottom: -6px;
	z-index: 3
  }
}

.p-works-info__slideWrp-slide .swiper-button-prev {
  left: -4.5rem
}

@media screen and (max-width: 767px) {
  .p-works-info__slideWrp-slide .swiper-button-prev {
	left: 5px
  }
}

.p-works-info__slideWrp-slide .swiper-button-next {
  right: -4.5rem
}

@media screen and (max-width: 767px) {
  .p-works-info__slideWrp-slide .swiper-button-next {
	right: 5px
  }
}

.p-works-info__slideWrp-slide .swiper-pagination {
  display: flex;
  justify-content: center;
  margin-top: 25px
}

.p-works-info__slideWrp-slide .swiper-pagination .swiper-pagination-bullet {
  display: block;
  width: 8px;
  height: 8px;
  margin: 0 5px;
  background-color: #ddd;
  border-radius: 50%
}

.p-works-info__slideWrp-slide .swiper-pagination .swiper-pagination-bullet[aria-current=true] {
  background-color: #7b7b7b
}

.p-works-info__swiper-caption {
  position: relative;
  margin-top: 4rem;
  font-size: min(.98vw, 1.4rem);
  font-weight: 500;
  line-height: 1.8em;
  color: #2d2d2d
}

.p-works-info__swiper-caption li {
  background-color: #fff
}

.p-works-info__swiper-caption li:not(.swiper-slide-active) {
  opacity: 0 !important
}

.p-works-info__swiper-caption li.swiper-slide-active {
  transition: opacity .2s
}

@media screen and (max-width: 767px) {
  .p-works-info__swiper-caption {
	margin-bottom: 5rem;
	font-size: 1.2rem;
	font-weight: 300
  }
}

.p-works-info__inner {
  display: flex;
  justify-content: center
}

@media screen and (max-width: 767px) {
  .p-works-info__inner {
	display: block
  }
}

@media screen and (max-width: 767px) {
  .p-works-info__textWrp {
	margin-left: 4rem
  }
}

.p-works-info__title {
  margin-bottom: 55px;
  font-size: min(1.67vw, 2.4rem);
  font-weight: 300;
  line-height: 1.8em
}

@media screen and (max-width: 767px) {
  .p-works-info__title {
	margin-bottom: 3.5rem;
	font-size: 1.8rem
  }
}

.p-works-info__price {
  margin-bottom: 25px
}

.p-works-info__price span {
  font-size: min(1.12vw, 1.6rem);
  font-weight: 300;
  line-height: 1em
}

@media screen and (max-width: 767px) {
  .p-works-info__price span {
	font-size: 1.4rem;
	line-height: 1.5em
  }
}

.p-works-info__price .name {
  margin-right: 5px
}

.p-works-info__price .price {
  font-size: min(2.09vw, 3rem)
}

@media screen and (max-width: 767px) {
  .p-works-info__price .price {
	font-size: 3rem
  }
}

.p-works-info__price .unit {
  font-weight: 500
}

.p-works-info__sub-items {
  margin-bottom: 5rem;
  font-size: min(1.12vw, 1.6rem);
  font-weight: 300;
  line-height: 2em
}

.p-works-info__sub-items.other-section {
  margin-bottom: 3rem
}

@media screen and (max-width: 767px) {
  .p-works-info__sub-items {
	margin-bottom: 3rem;
	font-size: 1.4rem
  }
}

.p-works-info__other-consts {
  margin-bottom: 25px;
  font-size: min(1.12vw, 1.6rem);
  font-weight: 500;
  line-height: 1em
}

@media screen and (max-width: 767px) {
  .p-works-info__other-consts {
	margin-bottom: 5px;
	font-size: 1.4rem
  }
}

.p-works-info__attention {
  margin-bottom: 8rem;
  font-size: min(.98vw, 1.4rem);
  font-weight: 300;
  line-height: 1.8em;
  color: #5f5f65
}

@media screen and (max-width: 767px) {
  .p-works-info__attention {
	margin-bottom: 3.5rem;
	font-size: 1.2rem
  }
}

.p-works-info__control {
  font-size: min(.98vw, 1.4rem);
  font-weight: 500;
  line-height: 1em;
  color: #505050;
  pointer-events: none
}

@media screen and (max-width: 767px) {
  .p-works-info__control {
	font-size: 1.2rem
  }
}

.p-works-movie {
  width: 80%;
  padding-top: 2rem;
  padding-bottom: 20rem;
  margin: 0 auto;
  border-bottom: 1px solid #c5c5c5
}

@media screen and (max-width: 767px) {
  .p-works-movie {
	width: 88%;
	padding-bottom: 10rem
  }
}

.p-works-movie__title {
  margin-bottom: min(3.47vw, 5rem);
  font-size: min(1.12vw, 1.6rem);
  line-height: 1.8em;
  color: #9a9a9a
}

.p-works-movie__wrp {
  display: flex;
  gap: 0 min(1.4vw, 2rem);
  justify-content: center;
  margin-right: -2.4%;
  margin-left: -2.4%
}

@media screen and (max-width: 767px) {
  .p-works-movie__wrp {
	display: block;
	margin: 0
  }
}

.p-works-movie__wrp-beside {
  width: 74.6%;
  max-width: 90rem
}

.p-works-movie__wrp-beside iframe {
  width: 100%;
  height: 100%;
  aspect-ratio: 91/51
}

@media screen and (max-width: 767px) {
  .p-works-movie__wrp-beside {
	width: 100vw;
	margin-bottom: 3rem;
	margin-left: -6vw
  }
}

.p-works-movie__wrp-vertical iframe {
  width: 100%;
  height: 100%;
  aspect-ratio: 29/51
}

@media screen and (max-width: 767px) {
  .p-works-movie__wrp-vertical {
	width: 60%;
	margin: 0 auto
  }
}

.p-works-details {
  width: 80%;
  padding-top: 20px;
  margin: 0 auto;
  border-bottom: 1px solid #c5c5c5
}

@media screen and (max-width: 767px) {
  .p-works-details {
	width: 88%;
	padding-top: 0
  }
}

.p-works-details__content {
  width: 91%;
  max-width: 1050px;
  margin: 0 auto
}

@media screen and (max-width: 767px) {
  .p-works-details__content {
	width: 100%
  }
}

.p-works-details__content h2 {
  margin-bottom: min(3.125vw, 4.5rem);
  font-size: min(1.95vw, 2.8rem);
  font-weight: 300;
  line-height: 2em
}

@media screen and (max-width: 767px) {
  .p-works-details__content h2 {
	margin-bottom: 3.5rem;
	font-size: 2rem;
	line-height: 1.8em
  }
}

.p-works-details__content h3 {
  position: relative;
  padding-left: min(1.4vw, 2rem);
  margin-top: min(6.95vw, 10rem);
  margin-bottom: min(1.67vw, 2.4rem);
  font-size: min(1.4vw, 2rem);
  font-weight: 500;
  line-height: 2em
}

@media screen and (max-width: 767px) {
  .p-works-details__content h3 {
	padding-left: 15px;
	margin-bottom: 1.5rem;
	font-size: 1.8rem;
	line-height: 1.8em
  }
}

.p-works-details__content h3::before {
  position: absolute;
  top: min(1.4vw, 2rem);
  left: 0;
  width: 6px;
  height: 2px;
  content: "";
  background-color: #2d2d2d
}

@media screen and (max-width: 767px) {
  .p-works-details__content h3::before {
	top: 15px
  }
}

.p-works-details__content p {
  margin-bottom: min(3.47vw, 5rem);
  font-size: min(1.25vw, 1.8rem);
  font-weight: 300;
  line-height: 2.2em
}

.p-works-details__content p strong {
  font-weight: 700
}

@media screen and (max-width: 767px) {
  .p-works-details__content p {
	margin-bottom: 4rem;
	font-size: 1.6rem;
	color: #505050
  }
}

.p-works-details__content figure {
  margin-bottom: min(3.47vw, 5rem);
  text-align: center
}

.p-works-details__content figure img {
  width: auto
}

.p-works-details__content figure.wp-block-image a::after {
  margin-left: 3px;
  content: ""
}

.p-works-details__content figcaption {
  font-size: min(.98vw, 1.4rem);
  font-weight: 300;
  line-height: 1.8em
}

@media screen and (max-width: 767px) {
  .p-works-details__content figcaption {
	font-size: 1.2rem
  }
}

.p-works-details__content .is-layout-flex {
  gap: min(1.4vw, 2rem)
}

@media screen and (max-width: 767px) {
  .p-works-details__content .is-layout-flex {
	flex-wrap: nowrap !important;
	gap: 15px;
	width: 100vw;
	margin-left: -6vw
  }
}

.p-works-details__content blockquote {
  padding-left: min(2.43vw, 3.5rem);
  margin-bottom: 10rem;
  border-left: 4px solid #eee
}

.p-works-details__content a {
  position: relative;
  padding-bottom: 1px;
  color: #9a9a9a;
  border-bottom: 1px solid #c5c5c5
}

.p-works-details__content a::after {
  margin-left: 3px;
  content: url(../images/link-icon.020ba1715b4ed926469b.svg)
}

.p-works-details__content a[target=_blank]::after {
  content: url(../images/outlink-icon.09b6e48b8011c480c3df.svg)
}

.p-works-relation {
  width: 80%;
  padding-top: 20px;
  margin: 0 auto
}

@media screen and (max-width: 767px) {
  .p-works-relation {
	width: 88%;
	padding-top: 0;
	padding-bottom: 9rem
  }
}

.p-works-relation__title {
  margin-bottom: 5rem;
  font-size: min(1.95vw, 2.8rem);
  font-weight: 300;
  line-height: 2em
}

@media screen and (max-width: 767px) {
  .p-works-relation__title {
	font-size: 1.8rem
  }
}

.p-works-relation__ul {
  display: flex
}

@media screen and (max-width: 767px) {
  .p-works-relation__ul {
	display: block
  }
}

.p-works-relation__li {
  position: relative;
  width: 30.66%
}

@media screen and (max-width: 767px) {
  .p-works-relation__li {
	width: 100%;
	margin-bottom: 6rem
  }

  .p-works-relation__li:last-child {
	margin-bottom: 0
  }
}

.p-works-relation__li:not(:last-child) {
  margin-right: 4%
}

.p-works-relation__li .cat-title {
  margin-bottom: 7px;
  font-size: min(1.12vw, 1.6rem);
  line-height: 1.8em;
  color: #9a9a9a
}

@media screen and (max-width: 767px) {
  .p-works-relation__li .cat-title {
	font-size: 1.4rem
  }
}

.p-works-relation__li img {
  width: 100%;
  aspect-ratio: 1/1;
  object-fit: cover;
  margin-bottom: min(2.09vw, 3rem)
}

@media screen and (max-width: 767px) {
  .p-works-relation__li img {
	margin-bottom: 15px
  }
}

.p-works-relation__li h3 {
  min-height: min(5.55vw, 8rem);
  margin-bottom: min(5.55vw, 8rem);
  font-size: min(1.4vw, 2rem);
  font-weight: 500;
  line-height: 1.8em;
  color: #505050
}

@media screen and (max-width: 767px) {
  .p-works-relation__li h3 {
	margin-bottom: 25px;
	font-size: 1.4rem
  }
}

.p-works-relation__li-more {
  position: absolute;
  bottom: 0;
  left: 0;
  display: flex;
  align-items: center;
  justify-content: space-between;
  width: 100%;
  padding-right: 10px;
  padding-bottom: 13px;
  border-bottom: 1px solid #a3a3a3
}

@media screen and (max-width: 767px) {
  .p-works-relation__li-more {
	position: relative;
	padding-bottom: 2rem;
	font-size: 1.2rem
  }
}

.p-works-relation__li-more p {
  font-size: min(.98vw, 1.4rem);
  line-height: 2.1em
}

.p-works-relation__li-more .mark {
  width: 10px;
  height: 10px;
  border-right: 1px solid #a3a3a3;
  border-bottom: 1px solid #a3a3a3;
  transform: rotate(-45deg)
}

@media screen and (max-width: 767px) {
  .p-works-relation__li-more .mark {
	width: 7px;
	height: 7px
  }
}

.p-works-taglist {
  padding-top: 8rem;
  padding-bottom: 13rem;
  margin-top: 16rem;
  background-color: #f0f0f0
}

@media screen and (max-width: 767px) {
  .p-works-taglist {
	padding-top: 4rem;
	padding-bottom: 6rem
  }
}

.p-works-taglist__inner {
  width: 80%;
  margin: 0 auto
}

.p-works-taglist__title {
  margin-bottom: 5rem;
  font-size: min(1.12vw, 1.6rem);
  font-weight: 500;
  line-height: 1.8em;
  color: #9a9a9a
}

@media screen and (max-width: 767px) {
  .p-works-taglist__title {
	margin-bottom: 3.5rem;
	font-size: 1.6rem
  }
}

.p-works-taglist__ul {
  display: flex;
  flex-wrap: wrap;
  gap: 30px 15px
}

@media screen and (max-width: 767px) {
  .p-works-taglist__ul {
	gap: 15px 10px
  }
}

.p-works-taglist__li {
  padding: 8px 12px 8px 15px;
  font-size: min(1.12vw, 1.6rem);
  font-weight: 300;
  background-color: #fff
}

.p-works-taglist__li::before {
  margin-right: 2px;
  color: #c5c5c5;
  content: "#"
}

@media screen and (max-width: 767px) {
  .p-works-taglist__li {
	padding: 7px 8px 7px 10px;
	font-size: 1.4rem
  }
}

.works-searchform {
  position: fixed;
  top: 50%;
  left: 50%;
  z-index: 110;
  width: min(55.5vw, 80rem);
  margin: 0 auto;
  visibility: hidden;
  transform: translate(-50%, -50%)
}

@media screen and (max-width: 767px) {
  .works-searchform {
	top: 10%;
	width: 90%;
	transform: translate(-50%, 0)
  }
}

.works-searchform form {
  position: relative;
  height: 100%
}

.works-searchform[data-view=visible] {
  visibility: visible
}

.works-searchform__background {
  position: fixed;
  top: 0;
  left: 0;
  z-index: 109;
  width: 100vw;
  height: 100vh;
  visibility: hidden;
  background-color: rgba(0, 0, 0, .6)
}

.works-searchform__titleWrp {
  display: flex;
  align-items: center;
  padding: min(3.125vw, 4.5rem) 5% min(3.125vw, 4.5rem) min(7.64vw, 11rem);
  color: #fff;
  background-color: #5f5f65
}

.works-searchform__titleWrp .icon {
  width: min(2.09vw, 3rem);
  margin-right: min(2.09vw, 3rem)
}

@media screen and (max-width: 767px) {
  .works-searchform__titleWrp {
	justify-content: center;
	padding: 25px 0
  }

  .works-searchform__titleWrp .icon {
	width: 18px;
	margin-right: 12px
  }
}

.works-searchform__title {
  font-size: min(1.67vw, 2.4rem);
  font-weight: 700;
  line-height: min(7.64vw, 11rem);
  line-height: 1em
}

@media screen and (max-width: 767px) {
  .works-searchform__title {
	font-size: 1.8rem
  }
}

.works-searchform__titleWrp-close {
  margin-left: auto
}

@media screen and (max-width: 767px) {
  .works-searchform__titleWrp-close {
	position: absolute;
	top: -2.5rem;
	right: -0.5rem
  }
}

.works-searchform__titleWrp-close button {
  position: relative;
  display: block;
  width: min(2.09vw, 3rem);
  height: min(2.09vw, 3rem)
}

@media screen and (max-width: 767px) {
  .works-searchform__titleWrp-close button {
	width: 20px;
	height: 20px
  }
}

.works-searchform__titleWrp-close button::before,
.works-searchform__titleWrp-close button::after {
  position: absolute;
  top: 50%;
  left: 50%;
  width: 2px;
  height: 100%;
  content: "";
  background-color: #f0f0f0
}

.works-searchform__titleWrp-close button::before {
  transform: translate(-50%, -50%) rotate(45deg)
}

.works-searchform__titleWrp-close button::after {
  transform: translate(-50%, -50%) rotate(-45deg)
}

.works-searchform__inner {
  position: relative;
  display: flex;
  height: 60vh;
  background-color: #f0f0f0
}

@media screen and (max-width: 767px) {
  .works-searchform__inner {
	display: block;
	height: auto
  }
}

@media screen and (max-width: 767px) {
  .works-searchform-style-ul {
	display: flex
  }
}

.works-searchform-style-ul li {
  display: flex;
  align-items: center;
  justify-content: center;
  width: min(6.25vw, 9rem);
  height: 25%;
  font-size: min(1.25vw, 1.8rem);
  background-color: #c5c5c5;
  border-right: 1px solid #5f5f65;
  border-bottom: 1px solid #5f5f65;
  writing-mode: vertical-rl
}

.works-searchform-style-ul li.is-active {
  background-color: rgba(0, 0, 0, 0);
  border-right: none
}

.works-searchform-style-ul li:last-child {
  border-bottom: none
}

@media screen and (max-width: 767px) {
  .works-searchform-style-ul li {
	width: 25%;
	height: auto;
	padding: 15px 0;
	font-size: 1.6rem;
	line-height: 1em;
	white-space: nowrap;
	writing-mode: horizontal-tb
  }

  .works-searchform-style-ul li:last-child {
	border-right: none;
	border-bottom: 1px solid #5f5f65
  }

  .works-searchform-style-ul li.is-active {
	border-right: 1px solid #5f5f65;
	border-bottom: none
  }
}

.works-searchform-parent-wrp {
  position: relative;
  width: 100%;
  padding: 8% 7% 15%;
  overflow: scroll
}

@media screen and (max-width: 767px) {
  .works-searchform-parent-wrp {
	height: 66vh;
	height: calc(var(--vh, 1vh)*66);
	padding-left: 5rem
  }
}

#worksFilterModal .works-searchform-parent-wrp {
  display: flex;
  align-items: center
}

.works-searchform-parent-ul {
  display: none
}

.works-searchform-parent-ul.is-active {
  display: block
}

.works-searchform-parent-ul.works-searchform__filter-ul {
  width: fit-content;
  margin: 0 auto
}

.works-searchform-parent-li {
  margin-bottom: min(5.55vw, 8rem);
  font-size: min(1.53vw, 2.2rem);
  font-weight: 500;
  line-height: 1em;
  color: #505050
}

@media screen and (max-width: 767px) {
  .works-searchform-parent-li {
	font-size: 2rem
  }
}

.works-searchform__filter-ul .works-searchform-parent-li {
  display: flex;
  margin-bottom: min(2.09vw, 3rem)
}

.works-searchform-checkbox+label {
  position: relative;
  display: block;
  padding-right: 1rem;
  padding-left: min(2.78vw, 4rem)
}

@media screen and (max-width: 767px) {
  .works-searchform-checkbox+label {
	padding-left: 30px
  }
}

.works-searchform-checkbox+label::before {
  position: absolute;
  top: 50%;
  left: 0;
  width: min(1.4vw, 2rem);
  height: min(1.4vw, 2rem);
  content: "";
  background-color: #fff;
  border: 1px solid #c5c5c5;
  border-radius: 2px;
  transform: translateY(-50%)
}

@media screen and (max-width: 767px) {
  .works-searchform-checkbox+label::before {
	width: 20px;
	height: 20px
  }
}

.works-searchform-checkbox:checked+label::after {
  position: absolute;
  top: 50%;
  left: 5px;
  z-index: 1;
  width: 10px;
  height: 7px;
  content: "";
  border-bottom: 2px solid #5f5f65;
  border-left: 2px solid #5f5f65;
  transform: translate(0, -60%) rotate(-45deg)
}

@media screen and (max-width: 1080px) {
  .works-searchform-checkbox:checked+label::after {
	left: 2px;
	width: 7px;
	height: 5px
  }
}

@media screen and (max-width: 767px) {
  .works-searchform-checkbox:checked+label::after {
	left: 5px;
	width: 10px;
	height: 7px
  }
}

.works-searchform-child-ul .works-searchform-checkbox+label {
  padding-left: min(2.43vw, 3.5rem)
}

@media screen and (max-width: 767px) {
  .works-searchform-child-ul .works-searchform-checkbox+label {
	padding-left: 30px
  }
}

.works-searchform-child-li {
  display: flex;
  align-items: center;
  width: min(17.4vw, 25rem);
  margin-bottom: 2rem;
  font-size: min(1.25vw, 1.8rem);
  font-weight: 500;
  line-height: 1.4em;
  color: #505050
}

@media screen and (max-width: 767px) {
  .works-searchform-child-li {
	width: 100%;
	font-size: 1.6rem
  }
}

.works-searchform-child-ul {
  display: flex;
  flex-wrap: wrap;
  margin-top: min(2.78vw, 4rem);
  margin-left: min(2.78vw, 4rem)
}

@media screen and (max-width: 767px) {
  .works-searchform-child-ul {
	display: block;
	margin-top: 30px;
	margin-left: 35px
  }
}

.works-searchform__submit-btn {
  position: absolute;
  bottom: min(2.78vw, 4rem);
  left: 50%;
  width: min(60%, 50rem);
  margin-left: min(3.125vw, 4.5rem);
  transform: translateX(-50%)
}

@media screen and (max-width: 767px) {
  .works-searchform__submit-btn {
	width: 80%;
	margin-left: 0
  }
}

.works-searchform__submit-btn button {
  position: relative;
  display: block;
  width: 100%;
  height: min(4.87vw, 7rem);
  font-size: min(1.4vw, 2rem);
  font-weight: 700;
  line-height: 1em;
  color: #f0f0f0;
  background-color: #5f5f65;
  border-radius: 10px
}

.works-searchform__submit-btn button::after {
  position: absolute;
  top: 50%;
  right: 6%;
  width: min(.84vw, 1.2rem);
  height: min(.84vw, 1.2rem);
  content: "";
  border-right: 2px solid #ddd;
  border-bottom: 2px solid #ddd;
  transform: translateY(-50%) rotate(-45deg)
}

@media screen and (max-width: 767px) {
  .works-searchform__submit-btn button {
	height: auto;
	padding: 20px 0;
	font-size: 1.8rem;
	border-radius: 5px
  }

  .works-searchform__submit-btn button::after {
	width: 9px;
	height: 9px;
	border-width: 1px
  }
}

.p-works-a-main .c-page-fv__index-wrp {
  justify-content: flex-end
}

.p-works-a-main .c-page-secLink .c-page-secLink__inner-img {
  aspect-ratio: 134/65
}

@media screen and (max-width: 767px) {
  .p-works-a-main .c-page-secLink .c-page-secLink__inner-img {
	aspect-ratio: 75/64
  }
}

.p-works-a__modalBtnWrp {
  display: flex;
  margin-bottom: min(3.47vw, 5rem);
  margin-left: 11.5%
}

@media screen and (max-width: 767px) {
  .p-works-a__modalBtnWrp {
	display: block;
	width: 88%;
	margin: 0 auto
  }
}

.p-works-a__modalBtn {
  margin-right: 10px;
  background-color: #5f5f65;
  border-radius: 5px
}

@media screen and (max-width: 767px) {
  .p-works-a__modalBtn {
	margin-right: 0
  }
}

.p-works-a__modalBtn button {
  display: flex;
  align-items: center;
  padding: min(2.78vw, 4rem);
  color: #fff
}

@media screen and (max-width: 767px) {
  .p-works-a__modalBtn button {
	width: 100%;
	padding: 25px 20px 25px 38px
  }
}

.p-works-a__modalBtn button .icon {
  width: min(1.67vw, 2.4rem);
  margin-right: min(2.09vw, 3rem)
}

@media screen and (max-width: 767px) {
  .p-works-a__modalBtn button .icon {
	width: 24px;
	margin-right: 23px;
	font-size: 1.4rem
  }
}

.p-works-a__modalBtn button .title {
  margin-right: min(10.4vw, 15rem);
  font-size: min(1.25vw, 1.8rem)
}

@media screen and (max-width: 767px) {
  .p-works-a__modalBtn button .title {
	margin: 0;
	font-size: 1.4rem;
	white-space: nowrap
  }
}

.p-works-a__modalBtn button .plus {
  position: relative;
  width: min(1.12vw, 1.6rem);
  height: min(1.12vw, 1.6rem)
}

@media screen and (max-width: 767px) {
  .p-works-a__modalBtn button .plus {
	display: none
  }
}

.p-works-a__modalBtn button .plus::before,
.p-works-a__modalBtn button .plus::after {
  position: absolute;
  top: 50%;
  left: 50%;
  content: "";
  background-color: #f0f0f0;
  transform: translate(-50%, -50%)
}

.p-works-a__modalBtn button .plus::before {
  width: 1px;
  height: 100%
}

.p-works-a__modalBtn button .plus::after {
  width: 100%;
  height: 1px
}

@media screen and (max-width: 767px) {
  .p-works-a__modalBtn {
	display: block
  }

  .p-works-a__modalBtn:first-child {
	margin-bottom: 10px
  }
}

.p-works-a__sortby {
  width: 77.5%;
  margin: 0 auto 10rem;
  color: #9a9a9a
}

@media screen and (max-width: 767px) {
  .p-works-a__sortby {
	width: 88%;
	margin-top: 9rem
  }
}

.p-works-a__sortby-title {
  margin-bottom: 5px;
  font-size: 1.4rem;
  font-weight: 500;
  line-height: 1em
}

.p-works-a__sortby-ul {
  position: relative;
  display: flex;
  flex-wrap: wrap;
  gap: min(2.09vw, 3rem) min(2.78vw, 4rem);
  padding: min(2.78vw, 4rem) min(4.87vw, 7rem);
  background-color: #f0f0f0
}

@media screen and (max-width: 767px) {
  .p-works-a__sortby-ul {
	padding: 25px 23px
  }
}

.p-works-a__sortby-ul li {
  font-size: min(1.67vw, 2.4rem);
  font-weight: 500;
  line-height: 1em
}

@media screen and (max-width: 767px) {
  .p-works-a__sortby-ul li {
	font-size: 1.6rem
  }
}

.p-works-a__sortby-ul .close-btn {
  position: absolute;
  top: 50%;
  right: min(2.09vw, 3rem);
  transform: translateY(-50%)
}

@media screen and (max-width: 767px) {
  .p-works-a__sortby-ul .close-btn {
	top: 0;
	transform: translateY(-150%)
  }
}

.p-works-a__sortby-ul .close-btn a {
  display: block
}

.p-works-a__sortby-ul .close-btn button {
  position: relative;
  display: block;
  width: min(1.12vw, 1.6rem);
  height: min(1.12vw, 1.6rem)
}

@media screen and (max-width: 767px) {
  .p-works-a__sortby-ul .close-btn button {
	width: 10px;
	height: 10px
  }
}

.p-works-a__sortby-ul .close-btn button::before,
.p-works-a__sortby-ul .close-btn button::after {
  position: absolute;
  top: 50%;
  left: 50%;
  width: 1px;
  height: 100%;
  content: "";
  background-color: #9a9a9a
}

.p-works-a__sortby-ul .close-btn button::before {
  transform: translate(-50%, -50%) rotate(45deg)
}

.p-works-a__sortby-ul .close-btn button::after {
  transform: translate(-50%, -50%) rotate(-45deg)
}

.p-works-a__mainWrp {
  margin-top: 18rem;
  margin-bottom: 15rem
}

@media screen and (max-width: 767px) {
  .p-works-a__mainWrp {
	margin-top: 6rem
  }
}

.p-works-a__no-result-msg {
  margin-bottom: 20rem;
  font-size: min(1.53vw, 2.2rem);
  text-align: center
}

@media screen and (max-width: 767px) {
  .p-works-a__no-result-msg {
	margin-bottom: 10rem;
	font-size: 1.8rem
  }
}

.p-works-a__mainWrp-ul {
  display: flex;
  flex-wrap: wrap;
  gap: 9.7vw 5%;
  width: calc(100% - 10rem);
  max-width: 130rem;
  margin: 0 auto
}

@media screen and (max-width: 767px) {
  .p-works-a__mainWrp-ul {
	display: block;
	width: calc(100% - 6rem)
  }
}

.p-works-a__mainWrp-list {
  position: relative;
  width: 30%;
  padding-left: 2rem
}

@media screen and (max-width: 767px) {
  .p-works-a__mainWrp-list {
	width: 100%;
	padding-bottom: 5rem;
	padding-left: 0;
	margin-bottom: 5rem;
	border-bottom: 1px solid #a3a3a3
  }
}

.p-works-a__mainWrp-list a img {
  transition: opacity .3s
}

.p-works-a__mainWrp-list a:hover img {
  opacity: .8
}

.p-works-a__mainWrp-list-subTtl {
  position: absolute;
  top: 0;
  left: -0.5rem;
  margin-right: 10px;
  font-size: min(1.12vw, 1.6rem);
  font-weight: 500;
  line-height: 1.2em;
  color: #505050;
  writing-mode: vertical-rl;
  text-orientation: upright
}

@media screen and (max-width: 767px) {
  .p-works-a__mainWrp-list-subTtl {
	position: relative;
	margin-bottom: 17px;
	font-size: 1.4rem;
	writing-mode: horizontal-tb
  }
}

.p-works-a__mainWrp-list-contents {
  width: 100%
}

.p-works-a__mainWrp-list-contents .img-wrp {
  aspect-ratio: 19/24;
  margin-bottom: 2rem
}

.p-works-a__mainWrp-list-contents .img-wrp img {
  width: 100%;
  height: 100%;
  object-fit: cover
}

.p-works-a__mainWrp-list-contents .list-title {
  margin-bottom: min(2.09vw, 3rem);
  font-size: min(1.4vw, 2rem);
  font-weight: 500;
  line-height: 1.8em;
  color: #505050
}

@media screen and (max-width: 767px) {
  .p-works-a__mainWrp-list-contents .list-title {
	margin-bottom: 15px;
	font-size: 1.4rem
  }
}

.p-works-a__mainWrp-list-contents .term-contents {
  display: flex;
  flex-wrap: wrap;
  gap: 6px 6px;
  margin-bottom: 24px;
  font-size: min(.98vw, 1.4rem);
  font-weight: 500;
  line-height: 1em;
  color: #9a9a9a
}

.p-works-a__mainWrp-list-contents .term-contents li {
  padding: 8px;
  background-color: #f0f0f0
}

@media screen and (max-width: 767px) {
  .p-works-a__mainWrp-list-contents .term-contents {
	gap: 10px 10px;
	margin-bottom: 25px;
	font-size: 1.4rem
  }
}

.p-works-a__mainWrp-list-contents .price-content {
  display: flex;
  align-items: center
}

.p-works-a__mainWrp-list-contents .price-content span {
  font-weight: 500;
  line-height: 1em;
  color: #505050
}

.p-works-a__mainWrp-list-contents .price-content .price {
  margin-top: 2px;
  margin-right: 8px;
  font-size: min(.84vw, 1.2rem)
}

@media screen and (max-width: 767px) {
  .p-works-a__mainWrp-list-contents .price-content .price {
	font-size: 1.2rem
  }
}

.p-works-a__mainWrp-list-contents .price-content .number {
  margin-right: 3px;
  font-size: min(1.67vw, 2.4rem);
  font-weight: 400
}

@media screen and (max-width: 767px) {
  .p-works-a__mainWrp-list-contents .price-content .number {
	font-size: 2.4rem
  }
}

.p-works-a__mainWrp-list-contents .price-content .number.no-item {
  width: 24px;
  height: 1px;
  margin-left: 10px;
  background-color: #a3a3a3
}

@media screen and (max-width: 767px) {
  .p-works-a__mainWrp-list-contents .price-content .number.no-item {
	margin-top: 3px
  }
}

.p-works-a__mainWrp-list-contents .price-content .unit {
  margin-top: 4px;
  font-size: min(1.12vw, 1.6rem)
}

@media screen and (max-width: 767px) {
  .p-works-a__mainWrp-list-contents .price-content .unit {
	font-size: 1.6rem
  }
}

.p-works-a__mainWrp-list-contents .price-content .c-slide-btn {
  margin-left: auto
}

.p-works-pagenation {
  margin-top: 15rem
}

@media screen and (max-width: 767px) {
  .p-works-pagenation {
	margin-top: 8rem
  }
}

.p-works-pagenation .navigation {
  width: fit-content;
  margin: 0 auto;
  font-size: min(1.12vw, 1.6rem);
  line-height: 1em
}

@media screen and (max-width: 767px) {
  .p-works-pagenation .navigation {
	font-size: 1.2rem
  }
}

.p-works-pagenation .nav-links {
  display: flex
}

.p-works-pagenation .page-numbers {
  display: flex;
  align-items: center;
  justify-content: center;
  width: min(2.78vw, 4rem);
  height: min(2.78vw, 4rem);
  font-family: aktiv-grotesk, "Helvetica Neue", helvetica, heisei-kaku-gothic-std, -apple-system, blinkmacsystemfont, "Helvetica Neue", "游ゴシック体", yugothic, "游ゴシック", "Yu Gothic", "ヒラギノ角ゴ ProN W3", hiragino kaku gothic pron, arial, "メイリオ", meiryo, sans-serif;
  text-align: center
}

@media screen and (max-width: 767px) {
  .p-works-pagenation .page-numbers {
	width: 32px;
	height: 32px
  }
}

.p-works-pagenation .page-numbers.current {
  position: relative;
  margin: 0 6px;
  background-color: #f0f0f0;
  border-radius: 50%
}

@media screen and (max-width: 767px) {
  .p-works-pagenation .page-numbers.current {
	margin: 0
  }
}

.p-works-pagenation .page-numbers.dots {
  padding-bottom: 2%;
  color: #c5c5c5
}

@media screen and (max-width: 767px) {
  .p-works-pagenation .page-numbers.dots {
	width: 20px;
	padding-bottom: 8px
  }
}

.p-works-pagenation .page-numbers.prev {
  position: relative
}

.p-works-pagenation .page-numbers.prev::before {
  position: absolute;
  width: 7px;
  height: 7px;
  content: "";
  border-bottom: 1px solid #9a9a9a;
  border-left: 1px solid #9a9a9a;
  transform: rotate(45deg)
}

@media screen and (max-width: 767px) {
  .p-works-pagenation .page-numbers.prev::before {
	translate: 0 -20%
  }
}

.p-works-pagenation .page-numbers.next {
  position: relative
}

.p-works-pagenation .page-numbers.next::before {
  position: absolute;
  width: 7px;
  height: 7px;
  content: "";
  border-right: 1px solid #9a9a9a;
  border-bottom: 1px solid #9a9a9a;
  transform: rotate(-45deg)
}

@media screen and (max-width: 767px) {
  .p-works-pagenation .page-numbers.next::before {
	translate: 0 -20%
  }
}

.p-works-seo__text {
  width: 49%;
  margin: -37px 0 10rem 11.5%;
  font-size: 1.6rem;
  font-weight: 300;
  line-height: 2em
}

@media screen and (max-width: 767px) {
  .p-works-seo__text {
	width: auto;
	margin: 0 3rem 60px;
	font-size: 1.3rem
  }
}

.p-aboutus__strength {
  padding-top: 45rem;
  padding-bottom: 26rem;
  margin-top: -20rem;
  color: #fff;
  background-color: #2d2d2d
}

@media screen and (max-width: 1080px) {
  .p-aboutus__strength {
	padding-top: 8rem;
	padding-bottom: 7rem;
	margin-top: 8rem;
	overflow: hidden
  }
}

.p-aboutus__strength-img {
  width: 59%;
  max-width: 85rem;
  margin: 0 auto 27rem
}

@media screen and (max-width: 1080px) {
  .p-aboutus__strength-img {
	width: 100%;
	margin-bottom: 8rem
  }
}

.p-aboutus__strength-img-inner {
  position: relative;
  aspect-ratio: 85/78
}

@media screen and (max-width: 1080px) {
  .p-aboutus__strength-img-inner {
	aspect-ratio: 5/6
  }
}

.p-aboutus__strength-img-inner .strength-text {
  position: absolute;
  opacity: 0;
  transition: all 3s
}

.p-aboutus__strength-img-inner .strength-text-01 {
  top: 0;
  right: 6.5%;
  width: 45%;
  aspect-ratio: 385/338;
  background-repeat: no-repeat;
  background-size: contain
}

.p-aboutus__strength-img.is-active .p-aboutus__strength-img-inner .strength-text-01 {
  opacity: 1
}

@media screen and (max-width: 1080px) {
  .p-aboutus__strength-img-inner .strength-text-01 {
	top: 1%;
	right: 8.5%;
	width: 48.2%;
	aspect-ratio: 1/1
  }
}

.p-aboutus__strength-img-inner .strength-text-02 {
  bottom: 11.5%;
  left: 0;
  width: 45%;
  aspect-ratio: 380/254;
  background-repeat: no-repeat;
  background-size: contain;
  transition-delay: .5s
}

.p-aboutus__strength-img.is-active .p-aboutus__strength-img-inner .strength-text-02 {
  opacity: 1
}

@media screen and (max-width: 1080px) {
  .p-aboutus__strength-img-inner .strength-text-02 {
	bottom: 13.5%;
	left: 3%;
	width: 36%;
	aspect-ratio: 135/216
  }
}

.p-aboutus__strength-img-inner .strength-text-03 {
  right: 0;
  bottom: 0%;
  width: 42%;
  aspect-ratio: 357/259;
  background-repeat: no-repeat;
  background-size: contain;
  transition-delay: 1s
}

.p-aboutus__strength-img.is-active .p-aboutus__strength-img-inner .strength-text-03 {
  opacity: 1
}

@media screen and (max-width: 1080px) {
  .p-aboutus__strength-img-inner .strength-text-03 {
	right: 7%;
	bottom: 10%;
	width: 39.2%;
	aspect-ratio: 147/142
  }
}

.p-aboutus__strength-img-inner .strength-text-logo {
  position: absolute;
  top: 51.5%;
  left: 45.5%;
  width: 19.5%;
  transition-delay: 2.2s
}

.p-aboutus__strength-img.is-active .p-aboutus__strength-img-inner .strength-text-logo {
  opacity: 1
}

@media screen and (max-width: 1080px) {
  .p-aboutus__strength-img-inner .strength-text-logo {
	top: 50%;
	left: 50%;
	width: 22.6%;
	transform: translate(-50%, -50%)
  }
}

.p-aboutus__strength-img-inner .line-circle {
  position: absolute;
  width: 54%;
  aspect-ratio: 1/1;
  opacity: 0;
  fill: rgba(0, 0, 0, 0);
  stroke: #fff;
  stroke-dasharray: 0 2000;
  stroke-width: 1;
  transition: all 2s;
  transition-timing-function: ease;
  transform: rotate(90deg)
}

@media screen and (max-width: 1080px) {
  .p-aboutus__strength-img-inner .line-circle {
	width: 62%
  }
}

.p-aboutus__strength-img.is-active .p-aboutus__strength-img-inner .line-circle {
  opacity: .7;
  stroke-dasharray: 2000 2000
}

.p-aboutus__strength-img.is-active .p-aboutus__strength-img-inner .line-circle.circle-1 {
  transition-delay: .5s
}

.p-aboutus__strength-img.is-active .p-aboutus__strength-img-inner .line-circle.circle-2 {
  transition-delay: 1s
}

.p-aboutus__strength-img-inner .line-circle.circle-0 {
  top: -7%;
  right: 11%
}

@media screen and (max-width: 1080px) {
  .p-aboutus__strength-img-inner .line-circle.circle-0 {
	top: -5%;
	right: 11%
  }
}

.p-aboutus__strength-img-inner .line-circle.circle-1 {
  bottom: 4.5%;
  left: -1.1%
}

@media screen and (max-width: 1080px) {
  .p-aboutus__strength-img-inner .line-circle.circle-1 {
	bottom: 15.5%;
	left: -15%
  }
}

.p-aboutus__strength-img-inner .line-circle.circle-2 {
  right: -5.5%;
  bottom: -8%
}

@media screen and (max-width: 1080px) {
  .p-aboutus__strength-img-inner .line-circle.circle-2 {
	right: -7.5%;
	bottom: 4%
  }
}

.p-aboutus__strength-img-inner .clasis-circle {
  position: absolute;
  top: 55%;
  left: 54%;
  width: 66%;
  aspect-ratio: 1/1;
  fill: rgba(0, 0, 0, 0);
  stroke: #fff;
  stroke-dasharray: 0 2000;
  stroke-width: 1;
  transition: all 3s;
  transition-delay: 2.2s;
  transition-timing-function: ease;
  transform: translate(-50%, -50%) rotate(90deg)
}

.p-aboutus__strength-img.is-active .p-aboutus__strength-img-inner .clasis-circle {
  opacity: .7;
  fill: rgba(255, 255, 255, .2);
  stroke-dasharray: 2000 2000
}

@media screen and (max-width: 1080px) {
  .p-aboutus__strength-img-inner .clasis-circle {
	top: 50%;
	left: 50%;
	width: 76.8%;
	transform: translate(-50%, -50%)
  }
}

.p-aboutus__strength-explan {
  width: 80%;
  max-width: 100rem;
  margin: 0 auto 8.5rem
}

.p-aboutus__strength-explan p {
  max-width: 58rem;
  font-size: 1.6rem;
  font-weight: 300;
  line-height: 2.2em;
  color: #ddd;
  text-align: justify;
  letter-spacing: .04em
}

.p-aboutus__strength-points {
  width: 80%;
  max-width: 100rem;
  margin: 0 auto
}

@media screen and (max-width: 1080px) {
  .p-aboutus__strength-points {
	width: 87%
  }
}

.p-aboutus__strength-points-list {
  margin-bottom: 2rem
}

@media screen and (max-width: 1080px) {
  .p-aboutus__strength-points-list {
	padding: 3rem 2rem 3rem 3rem;
	margin-bottom: 1rem;
	background-color: #3b3b3b
  }
}

.p-aboutus__strength-points-list a {
  display: flex
}

@media screen and (max-width: 1080px) {
  .p-aboutus__strength-points-list a {
	display: block
  }
}

.p-aboutus__strength-points-list .list-item-number {
  position: relative;
  flex-shrink: 0;
  width: 19rem;
  height: 18rem;
  margin-right: 2px;
  font-size: 1.8rem;
  color: #c5c5c5;
  letter-spacing: .02em;
  background-color: #3b3b3b;
  transition: background-color .3s linear
}

.p-aboutus__strength-points-list .list-item-number p {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%)
}

@media screen and (max-width: 1080px) {
  .p-aboutus__strength-points-list .list-item-number {
	width: auto;
	height: auto;
	background-color: rgba(0, 0, 0, 0)
  }

  .p-aboutus__strength-points-list .list-item-number p {
	position: relative
  }
}

.p-aboutus__strength-points-list .list-item-wrp {
  display: flex;
  align-items: center;
  justify-content: space-between;
  width: 100%;
  padding: 0 6rem 0 8.3rem;
  color: #c5c5c5;
  background-color: #3b3b3b;
  transition: background-color .3s linear
}

@media screen and (max-width: 1080px) {
  .p-aboutus__strength-points-list .list-item-wrp {
	padding: 0;
	background-color: rgba(0, 0, 0, 0)
  }

  .p-aboutus__strength-points-list .list-item-wrp .c-slide-btn {
	transform: translateY(-5rem)
  }
}

.p-aboutus__strength-points-list .list-item-wrp__contents {
  display: flex;
  align-items: end
}

.p-aboutus__strength-points-list .list-item-wrp__contents img {
  margin-right: 5.5rem
}

@media screen and (max-width: 1080px) {
  .p-aboutus__strength-points-list .list-item-wrp__contents img {
	margin-right: 3rem;
	transform: scale(0.85)
  }
}

.p-aboutus__strength-points-list .list-item-wrp__contents h3 {
  margin-bottom: 5px;
  font-size: 2.2rem;
  line-height: 1.6em;
  color: #f0f0f0
}

@media screen and (max-width: 1080px) {
  .p-aboutus__strength-points-list .list-item-wrp__contents h3 {
	font-size: 1.8rem;
	white-space: nowrap
  }
}

.p-aboutus__strength-points-list .list-item-wrp__contents p {
  font-size: 1.4rem;
  line-height: 1em;
  color: #9a9a9a;
  letter-spacing: .02em
}

.p-aboutus__strength-points-list .list-item-wrp__arrow {
  width: 4.6rem;
  height: 4.6rem
}

.p-aboutus__strength-points-anker:hover .list-item-number,
.p-aboutus__strength-points-anker:hover .list-item-wrp {
  background-color: #505050
}

.p-aboutus__series {
  margin-bottom: 15rem;
  text-align: center;
  background-color: #f0f0f0
}

@media screen and (max-width: 1080px) {
  .p-aboutus__series {
	margin-bottom: 7rem;
	text-align: left
  }
}

.p-aboutus__series .sub-title {
  margin-bottom: 4.4rem;
  font-size: 1.6rem;
  font-weight: 500;
  line-height: 1em;
  color: #9a9a9a;
  letter-spacing: .02em
}

@media screen and (max-width: 1080px) {
  .p-aboutus__series .sub-title {
	margin-bottom: 2.8rem;
	font-size: 1.4rem
  }
}

.p-aboutus__series .main-title {
  margin-bottom: 5.7rem;
  font-size: 4rem;
  font-weight: 300;
  line-height: 1.8em;
  color: #2d2d2d
}

@media screen and (max-width: 1080px) {
  .p-aboutus__series .main-title {
	margin-bottom: 4rem;
	font-size: 2.6rem
  }
}

.p-aboutus__series .explan {
  max-width: 85rem;
  margin: 0 auto;
  margin-bottom: 6rem;
  font-size: 1.6rem;
  line-height: 2.1em;
  color: #505050
}

@media screen and (max-width: 1080px) {
  .p-aboutus__series .explan {
	margin-bottom: 3rem;
	text-align: justify;
	letter-spacing: -0.02em
  }
}

.p-aboutus__series-inner {
  width: 80%;
  max-width: 86rem;
  padding-top: 24rem;
  padding-bottom: 15.5rem;
  margin: 0 auto
}

@media screen and (max-width: 1080px) {
  .p-aboutus__series-inner {
	padding-bottom: 10rem;
	margin: 8.5rem auto 7rem
  }
}

.p-aboutus__series-sub-title {
  font-size: 16px;
  font-weight: 300;
  line-height: 2.1em;
  color: #505050;
  text-align: left
}

@media screen and (max-width: 1080px) {
  .p-aboutus__series-sub-title {
	font-size: 14px
  }
}

.p-aboutus__series-arrange {
  margin-top: 2rem;
  margin-bottom: 9.5rem
}

.p-aboutus__series-arrange a {
  display: block;
  padding: 52px 20px;
  background-color: #fff
}

.p-aboutus__series-arrange a img {
  width: 326px
}

@media screen and (max-width: 1080px) {
  .p-aboutus__series-arrange {
	margin-top: 12px
  }

  .p-aboutus__series-arrange a {
	display: flex;
	align-items: center;
	justify-content: center;
	height: 15rem
  }

  .p-aboutus__series-arrange a img {
	width: 165px
  }
}

.p-aboutus__flow {
  display: flex;
  justify-content: space-between;
  width: 85%;
  max-width: 105rem;
  margin: 0 auto 26rem
}

@media screen and (max-width: 1080px) {
  .p-aboutus__flow {
	position: relative;
	display: block;
	margin: 0 auto 16rem
  }
}

@media screen and (max-width: 767px) {
  .p-aboutus__flow {
	margin: 0 auto 10.8rem
  }
}

.p-aboutus__flow-ttlWrp {
  width: 44%;
  padding-right: 10%
}

@media screen and (max-width: 1080px) {
  .p-aboutus__flow-ttlWrp {
	width: 100%;
	padding-right: 0
  }
}

.p-aboutus__flow-ttlWrp .sub-title {
  margin-top: 1.2rem;
  margin-bottom: 4.4rem;
  font-size: 1.6rem;
  line-height: 1em;
  color: #9a9a9a;
  letter-spacing: .02em
}

@media screen and (max-width: 1080px) {
  .p-aboutus__flow-ttlWrp .sub-title {
	margin-bottom: 2.8rem;
	font-size: 1.4rem
  }
}

.p-aboutus__flow-ttlWrp .main-title {
  margin-bottom: 6rem;
  font-size: 4rem;
  font-weight: 300;
  line-height: 1.8em;
  color: #2d2d2d
}

@media screen and (max-width: 1080px) {
  .p-aboutus__flow-ttlWrp .main-title {
	margin-bottom: 4rem;
	font-size: 2.6rem
  }
}

.p-aboutus__flow-ttlWrp .explan {
  max-width: 85rem;
  margin: 0 auto;
  margin-bottom: 6rem;
  font-size: 1.6rem;
  font-weight: 300;
  line-height: 2.2em;
  color: #505050;
  text-align: justify
}

@media screen and (max-width: 1080px) {
  .p-aboutus__flow-ttlWrp .explan {
	margin-bottom: 70vw;
	text-align: justify;
	letter-spacing: -0.02em
  }
}

.p-aboutus__flow-img {
  width: 56%
}

.p-aboutus__flow-img img {
  width: 100%
}

@media screen and (max-width: 1080px) {
  .p-aboutus__flow-img {
	position: absolute;
	bottom: 24vw;
	left: 0;
	width: 100%
  }
}

.p-aboutus__flow-link {
  color: #9a9a9a
}

.p-aboutus__flow-link .c-slide-btn--parent {
  display: flex;
  align-items: center;
  width: fit-content;
  padding-bottom: 1.5rem;
  border-bottom: 1px solid #ddd
}

@media screen and (max-width: 1080px) {
  .p-aboutus__flow-link .c-slide-btn--parent {
	justify-content: space-between;
	width: 85%;
	margin: 0 auto
  }
}

.p-aboutus__flow-link .c-slide-btn {
  margin-left: 3rem
}

.p-arbo {
  margin-top: 22rem
}

@media screen and (max-width: 1080px) {
  .p-arbo {
	margin-top: 10rem
  }
}

.p-arbo[data-flex=reverse] .c-page-sec-ttl {
  margin-left: 7.3vw;
  margin-right: auto
}

.p-arbo[data-flex=reverse] .p-arbo__info {
  order: 2
}

.p-arbo .c-page-sec-ttl {
  max-width: 114rem;
  margin-right: 7.3vw;
  margin-left: auto
}

.p-arbo .c-page-sec-ttl__wrp {
  gap: 12rem
}

@media screen and (max-width: 1080px) {
  .p-arbo .c-page-sec-ttl__wrp {
	display: block
  }
}

.p-arbo .c-page-sec-ttl__wrp .p-arbo__info {
  width: 35%
}

@media screen and (max-width: 1080px) {
  .p-arbo .c-page-sec-ttl__wrp .p-arbo__info {
	width: 100%
  }
}

.p-arbo .c-page-sec-ttl__wrp .p-arbo__info+div {
  position: relative
}

.p-arbo .c-page-sec-ttl__wrp .p-arbo__info+div .js-parallax>img {
  position: absolute;
  inset: auto auto 3.8rem 50%;
  transform: translateX(-50%) translateY(-81%)
}

.p-arbo .c-page-sec-ttl__wrp .p-arbo__info .js-parallax>img {
  position: absolute;
  inset: auto auto 3.2rem 50%;
  transform: translateX(-50%) translateY(-81%)
}

.p-arbo .c-page-sec-ttl__wrp .main-title {
  width: 100%
}

.p-arbo .c-page-sec-ttl__wrp .explan {
  width: 100%;
  font-weight: 300;
  line-height: 2.2;
  color: #2d2d2d
}

@media screen and (max-width: 1080px) {
  .p-arbo *[data-view=pc] {
	display: none
  }
}

.p-arbo *[data-view=sp] {
  display: none
}

@media screen and (max-width: 1080px) {
  .p-arbo *[data-view=sp] {
	display: block
  }
}

.p-arbo__info-detail {
  margin-top: 4.6rem;
  font-weight: 300;
  line-height: 1.4
}

.p-arbo__info-detail div {
  display: flex
}

.p-arbo__info-detail div+div {
  margin-top: 20px
}

.p-arbo__info-detail div dt {
  min-width: 70px;
  margin-right: 8px
}

.p-arbo__info-link {
  margin-top: 7.6rem
}

@media screen and (max-width: 1080px) {
  .p-arbo__info-link {
	margin: 3.5rem 0 4.5rem
  }
}

.p-arbo__info-link>.c-button__small {
  max-width: 360px;
  margin-top: 3.6rem
}

@media screen and (max-width: 767px) {
  .p-arbo__info-link>.c-button__small {
	max-width: 380px;
	width: 100%;
	margin-left: 0
  }
}

.p-arbo__info-link-wrap {
  display: flex;
  gap: 27px;
  max-width: 36rem
}

.p-arbo__info-link-wrap .c-button__small {
  width: 50%
}

.p-arbo__priviledge {
  padding: 18.8rem 0 16rem;
  background-color: #f0f0f0
}

@media screen and (max-width: 767px) {
  .p-arbo__priviledge {
	padding: 6.8rem 0 5rem
  }
}

.p-arbo__priviledge .c-page-sec-ttl {
  margin: 0 auto 11.5rem;
  text-align: center
}

@media screen and (max-width: 767px) {
  .p-arbo__priviledge .c-page-sec-ttl {
	margin: 0 auto 7.9rem;
	text-align: left
  }
}

.p-arbo__priviledge .c-page-sec-ttl .main-title {
  font-size: min(2.78vw, 4rem);
  font-weight: 300
}

@media screen and (max-width: 767px) {
  .p-arbo__priviledge .c-page-sec-ttl .main-title {
	font-size: 2.6rem
  }
}

.p-arbo__priviledge .c-page-sec-ttl .main-title span {
  line-height: 1.8
}

.p-arbo__priviledge .c-page-sec-ttl .explan {
  max-width: 87rem;
  margin: 5.7rem auto 0;
  font-weight: 300;
  line-height: 2.2;
  letter-spacing: .08em;
  text-align: left
}

@media screen and (max-width: 767px) {
  .p-arbo__priviledge .c-page-sec-ttl .explan {
	margin: 3rem auto 0
  }
}

.p-arbo__priviledge-wrap {
  max-width: 105rem;
  margin: 0 auto
}

@media screen and (max-width: 1080px) {
  .p-arbo__priviledge-wrap {
	padding: 0 3rem
  }
}

@media screen and (max-width: 767px) {
  .p-arbo__priviledge-wrap {
	padding: 0
  }
}

.p-arbo__priviledge-item {
  display: grid;
  grid-auto-columns: 1fr;
  grid-template-rows: 100px 1fr;
  grid-template-columns: 130px 1fr;
  grid-template-areas: "area1 area2""area3 area3";
  max-width: 87rem;
  margin-right: auto;
  margin-left: auto
}

@media screen and (max-width: 767px) {
  .p-arbo__priviledge-item {
	grid-template-rows: initial;
	grid-template-columns: 1fr;
	grid-template-areas: "area1""area2""area3";
	padding: 0 3.2rem
  }
}

.p-arbo__priviledge-item+.p-arbo__priviledge-item {
  margin-top: 8rem
}

.p-arbo__priviledge-item .p-arbo__priviledge-item-label {
  grid-area: area1;
  display: grid;
  place-content: center;
  width: 10rem;
  height: 10rem;
  margin: 0 0 3.9rem;
  text-align: center;
  background-color: #fff;
  border-radius: 50%
}

@media screen and (max-width: 767px) {
  .p-arbo__priviledge-item .p-arbo__priviledge-item-label {
	width: 9rem;
	height: 9rem;
	margin: 0 auto 2rem
  }
}

.p-arbo__priviledge-item .p-arbo__priviledge-item-label span {
  display: block;
  line-height: 1
}

.p-arbo__priviledge-item .p-arbo__priviledge-item-label span:first-child {
  margin-bottom: 6px;
  font-size: 1.3rem
}

.p-arbo__priviledge-item .p-arbo__priviledge-item-label span.font-en {
  font-size: min(2.09vw, 3rem)
}

@media screen and (max-width: 767px) {
  .p-arbo__priviledge-item .p-arbo__priviledge-item-label span.font-en {
	font-size: 3rem
  }
}

.p-arbo__priviledge-item .p-arbo__priviledge-item-heading {
  grid-area: area2;
  display: grid;
  place-items: center left;
  font-size: min(1.67vw, 2.4rem);
  line-height: 1.8
}

@media screen and (max-width: 767px) {
  .p-arbo__priviledge-item .p-arbo__priviledge-item-heading {
	place-items: center;
	font-size: 2.2rem
  }
}

.p-arbo__priviledge-item .p-arbo__priviledge-item-text {
  grid-area: area3;
  margin-top: 2.5rem;
  font-weight: 300;
  line-height: 2.2;
  letter-spacing: .057em
}

@media screen and (max-width: 767px) {
  .p-arbo__priviledge-item .p-arbo__priviledge-item-text {
	margin-top: 2rem
  }
}

.p-arbo__priviledge-item .p-arbo__priviledge-item-text p+p {
  margin-top: 20px
}

.p-arbo__priviledge-item .p-arbo__priviledge-item-text small {
  display: block;
  margin-top: 1.2rem;
  font-size: 1.4rem;
  line-height: 2.1
}

.p-arbo__priviledge-item .p-arbo__priviledge-item-inner {
  grid-area: area3;
  display: flex;
  align-items: flex-start;
  gap: 3rem;
  margin-top: 2.5rem
}

@media screen and (max-width: 767px) {
  .p-arbo__priviledge-item .p-arbo__priviledge-item-inner {
	display: block
  }
}

.p-arbo__priviledge-item .p-arbo__priviledge-item-inner>img {
  order: 2
}

@media screen and (max-width: 1080px) {
  .p-arbo__priviledge-item .p-arbo__priviledge-item-inner>img {
	display: block;
	width: 50%;
	height: auto;
	margin: 0 auto 20px
  }
}

@media screen and (max-width: 767px) {
  .p-arbo__priviledge-item .p-arbo__priviledge-item-inner>img {
	width: 100%
  }
}

.p-arbo__priviledge-item .p-arbo__priviledge-item-inner .p-arbo__priviledge-item-text {
  order: 1;
  margin-top: 0
}

.p-arbo__priviledge-item .p-arbo__priviledge-item-inner .p-arbo__priviledge-item-text p+p {
  margin-top: 0
}

.p-arbo__priviledge-box {
  margin-top: 10.8rem;
  padding: 7.9rem 10rem 9.6rem;
  border: 1px solid #8f8f8f
}

@media screen and (max-width: 1080px) {
  .p-arbo__priviledge-box {
	padding: 3.6rem 2.5rem 2.8rem
  }
}

@media screen and (max-width: 767px) {
  .p-arbo__priviledge-box {
	padding: 3.6rem 1.7rem;
	margin: 5.4rem 1.5rem 0
  }
}

.p-arbo__priviledge-box h3 {
  font-size: 2.4rem;
  line-height: 2.2
}

@media screen and (max-width: 767px) {
  .p-arbo__priviledge-box h3 {
	font-size: 2rem;
	text-align: center
  }
}

.p-arbo__priviledge-box>p {
  margin-top: 2.2rem;
  font-weight: 300;
  line-height: 2.2
}

.p-arbo__priviledge-box-item {
  display: flex;
  gap: 8rem;
  margin-top: 8rem
}

@media screen and (max-width: 767px) {
  .p-arbo__priviledge-box-item {
	display: block;
	width: calc(100% + 34px);
	margin-top: 4rem;
	padding-top: 3.7rem;
	border-top: 1px solid #8f8f8f;
	transform: translateX(-17px)
  }

  .p-arbo__priviledge-box-item>* {
	padding: 0 17px
  }
}

.p-arbo__priviledge-box-item+.p-arbo__priviledge-box-item {
  margin-top: 11rem
}

@media screen and (max-width: 767px) {
  .p-arbo__priviledge-box-item+.p-arbo__priviledge-box-item {
	margin-top: 4rem
  }
}

@media screen and (max-width: 767px) {
  .p-arbo__priviledge-box-item .p-arbo__priviledge-box-item-info>div {
	display: flex;
	align-items: center;
	gap: 15px;
	margin-bottom: 1.8rem
  }
}

.p-arbo__priviledge-box-item .p-arbo__priviledge-box-item-info h4 {
  display: inline-block;
  padding: 1rem;
  margin-bottom: 2.3rem;
  font-size: 1.8rem;
  line-height: 1;
  background-color: #fff
}

@media screen and (max-width: 767px) {
  .p-arbo__priviledge-box-item .p-arbo__priviledge-box-item-info h4 {
	margin-bottom: 0;
	font-size: 1.6rem
  }
}

.p-arbo__priviledge-box-item .p-arbo__priviledge-box-item-info p.period {
  margin-bottom: 2.7rem;
  font-size: 2.2rem;
  font-weight: 500
}

@media screen and (max-width: 767px) {
  .p-arbo__priviledge-box-item .p-arbo__priviledge-box-item-info p.period {
	margin-bottom: 0;
	font-size: 2rem
  }
}

.p-arbo__priviledge-box-item .p-arbo__priviledge-box-item-info p {
  font-weight: 300;
  line-height: 2.2
}

.p-arbo__priviledge-box-item .p-arbo__priviledge-box-item-image {
  flex: 0 0 auto
}

@media screen and (max-width: 767px) {
  .p-arbo__priviledge-box-item .p-arbo__priviledge-box-item-image img {
	width: 100%;
	height: auto;
	margin-top: 15px
  }
}

.p-company {
  margin-top: 22rem
}

@media screen and (max-width: 767px) {
  .p-company {
	margin-top: 10.8rem
  }
}

@media screen and (max-width: 767px) {
  .p-company .c-page-sec-ttl {
	margin: 0 3.2rem
  }
}

.p-company .c-page-sec-ttl .main-title {
  width: 100%
}

.p-company__info-detail {
  margin-top: 8.3rem
}

@media screen and (max-width: 767px) {
  .p-company__info-detail {
	margin-top: 4.5rem
  }
}

.p-company__info-detail>div {
  display: flex
}

@media screen and (max-width: 767px) {
  .p-company__info-detail>div {
	display: block
  }
}

.p-company__info-detail>div+div {
  margin-top: 5.5rem
}

@media screen and (max-width: 767px) {
  .p-company__info-detail>div+div {
	margin-top: 4.5rem
  }
}

.p-company__info-detail>div dt {
  min-width: 80px;
  margin-right: 40px
}

@media screen and (max-width: 767px) {
  .p-company__info-detail>div dt {
	margin: 0 0 1.2rem;
	line-height: 1
  }
}

.p-company__info-detail>div dd {
  font-weight: 300;
  line-height: 2
}

.p-company__info-detail>div dd a {
  position: relative;
  text-decoration: underline
}

.p-company__info-detail>div dd a:hover {
  text-decoration: none
}

.p-company__info-detail>div dd a[target=_blank]::after {
  content: url(../images/outlink-icon.09b6e48b8011c480c3df.svg);
  display: inline-block;
  margin-left: 5px;
  transform: translateY(1px)
}

.p-company__link {
  display: flex;
  gap: 10px;
  max-width: 115rem;
  margin: 15rem auto 14rem;
  padding: 0 3rem
}

@media screen and (max-width: 1080px) {
  .p-company__link {
	margin: 7.7rem 2.4rem 7rem;
	padding: 0
  }
}

@media screen and (max-width: 767px) {
  .p-company__link {
	display: block
  }
}

.p-company__link .p-company__link-item {
  position: relative;
  display: flex;
  align-items: center;
  width: 50%;
  height: 26rem;
  padding: 5rem;
  color: #fff;
  background-image: url(../images/company-link-01.d5c5a83d90d18993957b.jpg);
  background-size: cover;
  transition: filter .4s
}

.p-company__link .p-company__link-item:hover {
  filter: brightness(120%)
}

@media screen and (max-width: 1080px) {
  .p-company__link .p-company__link-item {
	padding: 2rem 6rem 2rem 2.4rem
  }
}

@media screen and (max-width: 767px) {
  .p-company__link .p-company__link-item {
	width: 100%;
	height: 17rem;
	padding: 2rem 2rem 2rem 2.4rem
  }
}

.p-company__link .p-company__link-item[data-link=interior] {
  background-image: url(../images/company-link-02.b77f15f7c61d29af40e0.jpg)
}

@media screen and (max-width: 767px) {
  .p-company__link .p-company__link-item[data-link=interior] {
	margin-top: 1rem
  }
}

.p-company__link .p-company__link-item * {
  position: relative;
  z-index: 2
}

.p-company__link .p-company__link-item span {
  display: block;
  margin-bottom: 1.6rem;
  font-size: 1.6rem;
  line-height: 1
}

@media screen and (max-width: 1080px) {
  .p-company__link .p-company__link-item span {
	margin-bottom: .7rem;
	line-height: 1.4
  }
}

@media screen and (max-width: 767px) {
  .p-company__link .p-company__link-item span {
	margin-top: .6rem;
	font-size: 1.2rem
  }
}

.p-company__link .p-company__link-item span.font-en {
  margin-bottom: 2.3rem;
  font-size: 1.3rem;
  line-height: 1
}

@media screen and (max-width: 767px) {
  .p-company__link .p-company__link-item span.font-en {
	margin-bottom: .7rem;
	font-size: 1.2rem
  }
}

.p-company__link .p-company__link-item p {
  font-size: 2.8rem;
  font-weight: 300;
  line-height: 1
}

@media screen and (max-width: 1080px) {
  .p-company__link .p-company__link-item p {
	font-size: 2.2rem;
	line-height: 1.4
  }
}

@media screen and (max-width: 767px) {
  .p-company__link .p-company__link-item p {
	font-size: 1.8rem;
	line-height: 1.8
  }
}

.p-company__link .p-company__link-item .c-slide-btn {
  position: absolute;
  right: 40px;
  top: 50%;
  transform: translateY(-50%)
}

@media screen and (max-width: 1080px) {
  .p-company__link .p-company__link-item .c-slide-btn {
	right: 20px
  }
}

.p-company__message {
  padding: 16rem 0 20rem;
  color: #fff;
  background-color: #5f5f65
}

@media screen and (max-width: 767px) {
  .p-company__message {
	padding: 6rem 0 6.8rem
  }
}

.p-company__message .c-page-sec-ttl {
  margin-bottom: 0
}

@media screen and (max-width: 767px) {
  .p-company__message .c-page-sec-ttl {
	width: 100%;
	padding: 0 3.2rem
  }
}

.p-company__message .c-page-sec-ttl .sub-title {
  color: #f0f0f0
}

.p-company__message .c-page-sec-ttl .main-title {
  font-size: 4rem;
  font-weight: 300;
  line-height: 1.8
}

@media screen and (max-width: 1080px) {
  .p-company__message .c-page-sec-ttl .main-title {
	font-size: 2.6rem
  }
}

.p-company__message-wrap {
  display: flex;
  gap: 7rem;
  margin-top: 6.5rem
}

@media screen and (max-width: 1080px) {
  .p-company__message-wrap {
	display: block
  }
}

@media screen and (max-width: 767px) {
  .p-company__message-wrap {
	margin-top: 3.7rem
  }
}

@media screen and (max-width: 767px) {
  .p-company__message-image {
	width: 87%;
	margin: 0 auto
  }
}

.p-company__message-text {
  flex: 1;
  font-weight: 300;
  line-height: 2.2;
  color: #f0f0f0
}

@media screen and (max-width: 1080px) {
  .p-company__message-text {
	margin-top: 5rem
  }
}

.p-company__message-text p+p {
  margin-top: 4.5rem
}

@media screen and (max-width: 767px) {
  .p-company__message-text p+p {
	margin-top: 3rem
  }
}

.p-company__message-name {
  margin-top: 6.4rem;
  font-size: 3.2rem;
  line-height: 1.8;
  text-align: right
}

@media screen and (max-width: 767px) {
  .p-company__message-name {
	margin-top: 5.3rem;
	font-size: 2.6rem
  }
}

.p-company__message-name p {
  display: flex;
  align-items: center;
  justify-content: flex-end
}

.p-company__message-name p span {
  display: inline-block;
  margin-right: 15px;
  font-size: 1.6rem;
  font-weight: 300
}

.p-company__lifestyle {
  padding: 18rem 0 20rem
}

@media screen and (max-width: 767px) {
  .p-company__lifestyle {
	padding: 7rem 0
  }
}

.p-company__lifestyle .c-page-sec-ttl {
  max-width: 71.4rem;
  margin-bottom: 0
}

@media screen and (max-width: 1080px) {
  .p-company__lifestyle .c-page-sec-ttl {
	width: 37%
  }
}

@media screen and (max-width: 767px) {
  .p-company__lifestyle .c-page-sec-ttl {
	width: 100%;
	padding: 0 3.2rem
  }
}

.p-company__lifestyle .c-page-sec-ttl .main-title {
  width: 100%;
  margin-bottom: 6.2rem;
  font-size: 3.2rem;
  font-weight: 300
}

@media screen and (max-width: 1080px) {
  .p-company__lifestyle .c-page-sec-ttl .main-title {
	margin-bottom: 4.3rem;
	font-size: 2.6rem
  }
}

@media screen and (max-width: 767px) {
  .p-company__lifestyle .c-button__small {
	width: 150px;
	margin: 0 auto
  }
}

.p-company__lifestyle *[data-view=sp] {
  display: none
}

@media screen and (max-width: 1080px) {
  .p-company__lifestyle *[data-view=sp] {
	display: block
  }
}

@media screen and (max-width: 1080px) {
  .p-company__lifestyle *[data-view=pc] {
	display: none
  }
}

@media screen and (max-width: 1080px) {
  .p-company__lifestyle-image {
	margin-bottom: 4rem
  }
}

@media screen and (max-width: 767px) {
  .p-company__lifestyle-image {
	width: 17rem;
	margin: 0 auto 4rem
  }
}

.p-company__partner {
  max-width: 134rem;
  margin: 0 auto 8rem
}

.p-company__partner .p-company__partner-inner {
  position: relative;
  display: block;
  padding: 19.4rem 0 12.7rem;
  color: #fff;
  background-size: cover;
  background-image: url(../images/partner.06d3b7f065afa29866ac.jpg);
  background-position: center;
  text-align: center;
  transition: filter .4s
}

@media screen and (max-width: 1080px) {
  .p-company__partner .p-company__partner-inner {
	padding: 7.1rem 0 5.3rem
  }
}

.p-company__partner .p-company__partner-inner:hover {
  filter: brightness(120%)
}

.p-company__partner .p-company__partner-inner>* {
  position: relative;
  z-index: 2
}

.p-company__partner .p-company__partner-inner .main-title {
  margin: 1.5rem 0 3.3rem;
  font-size: 4rem;
  font-weight: 300;
  line-height: 1.8
}

@media screen and (max-width: 1080px) {
  .p-company__partner .p-company__partner-inner .main-title {
	font-size: 2.6rem
  }
}

.p-company__partner .p-company__partner-inner p {
  font-weight: 300;
  line-height: 1.8
}

.p-company__partner .p-company__partner-inner .c-slide-btn {
  width: 7.2rem;
  height: 7.2rem;
  margin: 6.3rem auto 0
}

@media screen and (max-width: 767px) {
  .p-company__partner .p-company__partner-inner .c-slide-btn {
	width: 4.6rem;
	height: 4.6rem;
	margin: 2.3rem auto 0
  }
}

.p-company__partner .p-company__partner-inner .c-slide-btn::before {
  width: .9rem;
  height: .9rem
}

@media screen and (max-width: 767px) {
  .p-company__partner .p-company__partner-inner .c-slide-btn::before {
	width: .6rem;
	height: .6rem
  }
}

.p-contact__catalog {
  max-width: 1340px;
  padding-top: 10rem;
  margin-top: 8rem;
  margin-right: auto;
  margin-left: auto
}

@media screen and (max-width: 1080px) {
  .p-contact__catalog {
	padding-top: 8rem;
	margin-top: 0
  }
}

@media screen and (max-width: 767px) {
  .p-contact__catalog {
	padding-top: 6.3rem;
	padding-bottom: 5.3rem
  }
}

@media screen and (max-width: 767px) {
  .p-contact__catalog img {
	width: 88%;
	margin: 0 auto
  }
}

.p-contact__catalog .c-page-sec-ttl {
  margin: 0 auto
}

@media screen and (max-width: 767px) {
  .p-contact__catalog .c-page-sec-ttl :is(.main-title, .sub-title) {
	text-align: center
  }
}

.p-contact__catalog .c-page-sec-ttl__wrp {
  gap: 5.8rem;
  justify-content: center;
  margin-top: 3rem
}

@media screen and (max-width: 1080px) {
  .p-contact__catalog .c-page-sec-ttl__wrp {
	flex-direction: initial;
	margin-top: 5.8rem
  }

  .p-contact__catalog .c-page-sec-ttl__wrp img {
	width: 40%
  }
}

@media screen and (max-width: 767px) {
  .p-contact__catalog .c-page-sec-ttl__wrp {
	flex-direction: column;
	gap: 1rem;
	margin-top: 2.4rem
  }

  .p-contact__catalog .c-page-sec-ttl__wrp img {
	width: 80%
  }
}

.p-contact__catalog .explan {
  margin-top: 5rem;
  font-weight: 300
}

.p-contact__catalog .explan p {
  line-height: 2.2;
  letter-spacing: .09em
}

@media screen and (max-width: 767px) {
  .p-contact__catalog .explan p {
	font-size: 1.6rem;
	line-height: 2
  }
}

.p-contact__tel {
  margin-top: 19.6rem;
  margin-bottom: 16rem;
  font-weight: 300
}

@media screen and (max-width: 767px) {
  .p-contact__tel {
	margin-top: 11.2rem;
	margin-bottom: 5rem
  }
}

.p-contact__tel .explan {
  margin-top: 5rem;
  line-height: 2.2
}

.p-contact__tel .c-page-sec-ttl {
  margin: 0 auto 9rem
}

@media screen and (max-width: 767px) {
  .p-contact__tel .c-page-sec-ttl {
	margin: 0 auto 4.7rem
  }
}

.p-contact__box {
  width: 80%;
  max-width: 105rem;
  padding: 6rem 7.2rem 7.2rem;
  margin: 0 auto 3rem;
  color: #fff;
  background-color: #5f5f65
}

@media screen and (max-width: 1080px) {
  .p-contact__box {
	padding: 45px 45px 62px
  }
}

@media screen and (max-width: 767px) {
  .p-contact__box {
	width: calc(100% - 4rem);
	padding: 4.4rem 11vw 5.2rem
  }
}

@media screen and (width <=350px) {
  .p-contact__box {
	padding: 4.4rem 8vw 5.2rem
  }
}

.p-contact__box[data-color=white] {
  margin-top: 9.8rem;
  color: #5f5f65;
  background-color: #fff;
  border: 1px solid #a3a3a3
}

@media screen and (max-width: 767px) {
  .p-contact__box[data-color=white] {
	margin-top: 10.6rem
  }
}

.p-contact__box .p-contact__box-heading {
  display: flex;
  flex-wrap: wrap;
  gap: 9%
}

@media screen and (max-width: 767px) {
  .p-contact__box .p-contact__box-heading {
	justify-content: center
  }
}

.p-contact__box .p-contact__box-heading dl {
  display: flex;
  margin-top: 1.5rem
}

@media screen and (max-width: 767px) {
  .p-contact__box .p-contact__box-heading dl {
	display: block
  }
}

.p-contact__box .p-contact__box-heading dl div {
  display: flex;
  flex: 0 0 auto;
  line-height: 1
}

@media screen and (max-width: 1080px) {
  .p-contact__box .p-contact__box-heading dl div {
	justify-content: center;
	text-align: left
  }
}

.p-contact__box .p-contact__box-heading dl div dt {
  min-width: 70px;
  margin-right: 12px
}

@media screen and (max-width: 767px) {
  .p-contact__box .p-contact__box-heading dl div dt {
	min-width: 60px;
	margin-right: 8px
  }
}

.p-contact__box .p-contact__box-heading dl div+div {
  margin-left: 4.3vw
}

@media screen and (max-width: 767px) {
  .p-contact__box .p-contact__box-heading dl div+div {
	margin: 10px 0 0
  }
}

.p-contact__box .p-contact__box-heading h3 {
  font-size: 2.4rem;
  font-weight: 700;
  line-height: 1.8
}

@media screen and (max-width: 1080px) {
  .p-contact__box .p-contact__box-heading h3 {
	text-align: center
  }
}

.p-contact__box .p-contact__box-wrap {
  display: flex;
  flex-wrap: wrap;
  gap: 5rem 9rem;
  margin-top: 5.7rem
}

@media screen and (max-width: 1080px) {
  .p-contact__box .p-contact__box-wrap {
	display: block
  }
}

.p-contact__box .p-contact__box-wrap-list {
  flex-grow: 1;
  font-size: 1.8rem;
  line-height: 1
}

@media screen and (max-width: 1080px) {
  .p-contact__box .p-contact__box-wrap-list {
	padding-top: 4.8rem;
	margin-top: 3.7rem;
	border-top: 1px solid #a3a3a3
  }
}

.p-contact__box .p-contact__box-wrap-list ul {
  display: grid;
  grid-template-columns: 1fr 1fr 1fr;
  gap: 3rem 1rem
}

@media screen and (max-width: 1080px) {
  .p-contact__box .p-contact__box-wrap-list ul {
	grid-template-columns: 1fr 1fr
  }
}

@media screen and (max-width: 767px) {
  .p-contact__box .p-contact__box-wrap-list ul {
	grid-template-columns: 1fr
  }
}

@media screen and (max-width: 767px) {
  .p-contact__box .p-contact__box-wrap-list ul+ul {
	margin-top: 30px
  }
}

.p-contact__box .p-contact__box-wrap-list ul li {
  position: relative;
  padding-left: 20px
}

.p-contact__box .p-contact__box-wrap-list ul li::before {
  position: absolute;
  top: 46%;
  left: 0;
  width: 8px;
  height: 8px;
  content: "";
  background-color: #a3a3a3;
  border-radius: 50%;
  transform: translateY(-50%)
}

.p-contact__box .p-contact__box-wrap-list ul li span {
  display: inline-block;
  min-width: 72px;
  margin-right: 15px
}

.p-contact__box .p-contact__box-wrap-list ul li a {
  pointer-events: none
}

@media screen and (max-width: 767px) {
  .p-contact__box .p-contact__box-wrap-list ul li a {
	pointer-events: initial
  }
}

.p-contact__box .p-contact__box-wrap-arbo {
  display: flex;
  gap: 5rem 6vw
}

@media screen and (max-width: 1080px) {
  .p-contact__box .p-contact__box-wrap-arbo {
	display: block
  }
}

@media screen and (max-width: 1080px) {
  .p-contact__box .p-contact__box-wrap-arbo li {
	width: 245px;
	margin: 0 auto
  }
}

@media screen and (max-width: 1080px) {
  .p-contact__box .p-contact__box-wrap-arbo li+li {
	margin-top: 5.5rem
  }
}

.p-contact__box .p-contact__box-wrap-arbo li h4 {
  position: relative;
  padding-left: 20px;
  margin-bottom: 38px;
  font-size: 1.8rem;
  font-weight: 300;
  line-height: 1
}

@media screen and (max-width: 1080px) {
  .p-contact__box .p-contact__box-wrap-arbo li h4 {
	margin-bottom: 23px
  }
}

.p-contact__box .p-contact__box-wrap-arbo li h4::before {
  position: absolute;
  top: 46%;
  left: 0;
  width: 8px;
  height: 8px;
  content: "";
  background-color: #a3a3a3;
  border-radius: 50%;
  transform: translateY(-50%)
}

.p-contact__box .p-contact__box-wrap-arbo li dl div {
  display: flex;
  line-height: 1
}

@media screen and (max-width: 1080px) {
  .p-contact__box .p-contact__box-wrap-arbo li dl div {
	justify-content: flex-start;
	padding-left: 2rem
  }
}

.p-contact__box .p-contact__box-wrap-arbo li dl div dt {
  min-width: 64px;
  margin-right: 14px
}

.p-contact__box .p-contact__box-wrap-arbo li dl div+div {
  margin-top: 20px
}

@media screen and (max-width: 767px) {
  .p-contact__box .p-contact__box-wrap-arbo li dl div+div {
	margin-top: 1.2rem
  }
}

.p-contact__box .p-contact__box-wrap-arbo li dl div dd a {
  pointer-events: none
}

@media screen and (max-width: 767px) {
  .p-contact__box .p-contact__box-wrap-arbo li dl div dd a {
	pointer-events: initial
  }
}

.p-contact__button {
  width: 80%;
  max-width: 105rem;
  margin: 0 auto 3rem
}

.p-contact__button .c-button {
  margin-right: 0;
  margin-left: auto
}

@media screen and (max-width: 767px) {
  .p-contact__button .c-button {
	margin: 0 auto
  }
}

.p-contact__button .c-button p {
  font-weight: 500;
  color: #7b7b7b
}

.p-contact__button .c-button.line-hover::before {
  background-image: linear-gradient(to right, #505050 50%, #ddd 50%)
}

.p-contact__form {
  padding: 14.5rem 0 15rem;
  margin-top: 18rem;
  background-color: #f0f0f0
}

@media screen and (max-width: 767px) {
  .p-contact__form {
	padding: 5.5rem 0 5rem;
	margin-top: 5.5rem
  }
}

.p-contact__form .c-page-sec-ttl {
  margin: 0 auto 9rem
}

@media screen and (max-width: 767px) {
  .p-contact__form .c-page-sec-ttl {
	margin: 0 auto 4.5rem
  }
}

:is(.p-contact__catalog, .p-contact__tel, .p-contact__form) .main-title {
  font-size: min(3vw, 4rem);
  font-weight: 300;
  line-height: 1.2
}

@media screen and (max-width: 1080px) {
  :is(.p-contact__catalog, .p-contact__tel, .p-contact__form) .main-title {
	width: 100%;
	font-size: 2.6rem
  }
}

@media screen and (max-width: 767px) {
  :is(.p-contact__catalog, .p-contact__tel, .p-contact__form) .main-title .ttl-wrp span {
	line-height: 1.8
  }
}

.p-contact__customer {
  width: 80%;
  max-width: 105rem;
  padding: 7rem 3rem;
  margin: 5rem auto 0;
  text-align: center;
  background-color: #f0f0f0
}

@media screen and (max-width: 767px) {
  .p-contact__customer {
	width: calc(100% - 4rem);
	padding: 5rem 2.2rem;
	margin: 6rem auto 0
  }
}

.p-contact__customer h3 {
  font-size: 2.4rem;
  font-weight: 700;
  color: #9a9a9a
}

@media screen and (max-width: 767px) {
  .p-contact__customer h3 {
	font-size: 2.2rem
  }
}

.p-contact__customer-tel {
  margin-top: 5rem;
  font-size: 5rem;
  font-weight: 300;
  line-height: 1
}

@media screen and (max-width: 767px) {
  .p-contact__customer-tel {
	margin-top: 4rem
  }
}

.p-contact__customer-tel span {
  display: inline-block
}

@media screen and (max-width: 767px) {
  .p-contact__customer-tel span {
	display: block;
	margin-bottom: .5rem;
	font-size: 2.4rem
  }
}

@media screen and (max-width: 767px) {
  .p-contact__customer-tel span span {
	display: none
  }
}

.p-contact__customer-tel a {
  display: inline-block;
  line-height: 1;
  color: #505050;
  pointer-events: none
}

@media screen and (max-width: 767px) {
  .p-contact__customer-tel a {
	position: relative;
	font-size: 3.6rem;
	pointer-events: initial
  }
}

.p-contact__customer-tel a::before {
  position: absolute;
  bottom: .3rem;
  display: none;
  width: 100%;
  height: 1px;
  content: "";
  background-color: #a3a3a3
}

@media screen and (max-width: 767px) {
  .p-contact__customer-tel a::before {
	display: inline-block
  }
}

.p-contact__customer-tel-info {
  margin-top: 5rem;
  font-weight: 300;
  color: #505050
}

@media screen and (max-width: 767px) {
  .p-contact__customer-tel-info {
	display: grid;
	place-content: center;
	text-align: left
  }
}

.p-contact__customer-tel-info br {
  margin-right: 1em;
  content: ""
}

@media screen and (max-width: 767px) {
  .p-contact__customer-tel-info br {
	margin: 0;
	content: initial
  }
}

.p-contact__customer-tel-info span {
  display: inline-block
}

@media screen and (max-width: 767px) {
  .p-contact__customer-tel-info span {
	min-width: 8.4rem;
	margin-right: .5rem
  }
}

.p-contact__customer-tel-info.__after-support {
  width: fit-content;
  max-width: 620px;
  margin-inline: auto;
  text-align: left
}

@media screen and (max-width: 767px) {
  .p-contact__customer-tel-info.__after-support p:not(:first-child) {
	margin-top: 10px
  }
}

.p-cost__scale-merit {
  margin-top: 22rem;
  margin-bottom: 28rem
}

@media screen and (max-width: 1080px) {
  .p-cost__scale-merit {
	margin-top: 10rem;
	margin-bottom: 13rem
  }
}

.p-cost__scale-merit-imgWrp {
  display: flex
}

.p-cost__scale-merit-imgWrp>div {
  width: 80%;
  margin: 0 auto
}

.p-cost__scale-merit-imgWrp>div img {
  width: 100%
}

@media screen and (max-width: 1080px) {
  .p-cost__scale-merit-imgWrp {
	display: block
  }

  .p-cost__scale-merit-imgWrp>div {
	display: block;
	width: 100%
  }

  .p-cost__scale-merit-imgWrp>div:first-child {
	padding-right: 4rem;
	margin-bottom: 5rem
  }

  .p-cost__scale-merit-imgWrp>div:last-child {
	padding-left: 4rem
  }
}

@media screen and (max-width: 767px) {
  .p-cost__scale-merit-imgWrp>div {
	margin: 0
  }

  .p-cost__scale-merit-imgWrp>div:last-child {
	padding-left: 0
  }
}

.p-cost__margins {
  padding: 19rem 0 25rem;
  background-color: #5f5f65
}

.p-cost__margins .c-page-sec-ttl {
  color: #fff
}

@media screen and (max-width: 1080px) {
  .p-cost__margins {
	padding: 5rem 0 11rem
  }
}

.p-cost__margins-imgWrp {
  width: 72%;
  max-width: 105rem;
  margin: 0 auto
}

.p-cost__margins-imgWrp picture {
  display: block;
  clip-path: inset(0 100% 0 0);
  transition: clip-path 1s ease-in-out
}

.p-cost__margins-imgWrp picture img {
  width: 100%
}

.p-cost__margins-imgWrp picture.is-active {
  clip-path: inset(0)
}

.p-cost__margins-imgWrp picture:first-child {
  margin-bottom: 16rem
}

@media screen and (max-width: 1080px) {
  .p-cost__margins-imgWrp picture:first-child {
	margin-bottom: 8rem;
	clip-path: inset(0 0 100% 0)
  }

  .p-cost__margins-imgWrp picture:first-child.is-active {
	clip-path: inset(0)
  }
}

.p-cost__proposal {
  padding-top: 20rem
}

@media screen and (max-width: 1080px) {
  .p-cost__proposal {
	padding-top: 5rem
  }
}

.p-cost__proposal-image {
  display: block
}

.p-cost__proposal-image img {
  width: 100%
}

.p-design__fullOrder {
  padding-top: 45rem;
  padding-bottom: 26rem;
  margin-top: -20rem;
  color: #fff;
  background-color: #5f5f65
}

@media screen and (max-width: 1080px) {
  .p-design__fullOrder {
	padding-top: 8rem;
	padding-bottom: 9.5rem;
	margin-top: 8rem
  }
}

.p-design__fullOrder-imgWrp {
  margin-bottom: 31rem
}

@media screen and (max-width: 1080px) {
  .p-design__fullOrder-imgWrp {
	margin-bottom: 8.5rem
  }
}

.p-design__fullOrder-imgWrp-ul {
  width: 80%;
  max-width: 100rem;
  margin: 0 auto
}

@media screen and (max-width: 1080px) {
  .p-design__fullOrder-imgWrp-ul {
	display: block
  }
}

.p-design__fullOrder-imgWrp-list {
  display: flex;
  gap: 4rem;
  align-items: flex-end;
  justify-content: space-between;
  margin-bottom: 15rem
}

@media screen and (max-width: 1080px) {
  .p-design__fullOrder-imgWrp-list {
	flex-direction: column-reverse;
	gap: 2rem;
	align-items: flex-start;
	margin-bottom: 6rem
  }
}

.p-design__fullOrder-imgWrp-list .textWrp {
  margin-bottom: 3rem
}

@media screen and (max-width: 1080px) {
  .p-design__fullOrder-imgWrp-list .textWrp {
	display: flex;
	margin-bottom: 0
  }
}

.p-design__fullOrder-imgWrp-list .textWrp-number {
  position: relative;
  width: 36px;
  height: 36px;
  margin-bottom: 2rem;
  font-size: 1rem;
  font-weight: 300;
  line-height: 1em;
  color: #ddd;
  border: 1px solid #c5c5c5;
  border-radius: 50%
}

.p-design__fullOrder-imgWrp-list .textWrp-number p {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%)
}

@media screen and (max-width: 1080px) {
  .p-design__fullOrder-imgWrp-list .textWrp-number {
	flex-shrink: 0;
	margin-right: 1.6rem
  }
}

.p-design__fullOrder-imgWrp-list .textWrp-ttl h3 {
  margin-bottom: 1rem;
  font-size: 2rem;
  font-weight: 500;
  line-height: 1.6em;
  color: #ddd
}

.p-design__fullOrder-imgWrp-list .textWrp-ttl p {
  font-size: 1.6rem;
  font-weight: 300;
  line-height: 1.8em;
  color: #c5c5c5
}

@media screen and (max-width: 1080px) {
  .p-design__fullOrder-imgWrp-list .textWrp-ttl h3 {
	margin-bottom: 8px;
	font-size: 1.6rem
  }

  .p-design__fullOrder-imgWrp-list .textWrp-ttl p {
	font-size: 1.2rem;
	line-height: 1.6em
  }
}

.p-design__fullOrder-imgWrp-list .img-block {
  width: 66%
}

.p-design__fullOrder-imgWrp-list .img-block img {
  width: 100%;
  max-width: none
}

@media screen and (max-width: 1080px) {
  .p-design__fullOrder-imgWrp-list .img-block {
	width: 100%
  }
}

.p-design__fullOrder-imgWrp-list:nth-child(even) {
  flex-direction: row-reverse;
  justify-content: flex-end
}

@media screen and (max-width: 1080px) {
  .p-design__fullOrder-imgWrp-list:nth-child(even) {
	flex-direction: column-reverse;
	justify-content: flex-start
  }
}

.p-design__fullOrder-feature {
  width: 70%;
  max-width: 880px;
  margin: 0 auto
}

@media screen and (max-width: 1080px) {
  .p-design__fullOrder-feature {
	width: 80%
  }
}

.p-design__fullOrder-feature-list {
  display: flex;
  gap: 5.5rem;
  align-items: center;
  justify-content: space-between
}

@media screen and (max-width: 1080px) {
  .p-design__fullOrder-feature-list {
	position: relative;
	display: block
  }
}

.p-design__fullOrder-feature-list .img-wrp {
  position: relative;
  flex-shrink: 0;
  width: 36%;
  aspect-ratio: 1/1;
  background-color: #d3d3d4;
  border-radius: 50%
}

.p-design__fullOrder-feature-list .img-wrp img {
  position: absolute;
  top: 50%;
  left: 50%;
  width: 30%;
  transform: translate(-50%, -50%)
}

@media screen and (max-width: 1080px) {
  .p-design__fullOrder-feature-list .img-wrp {
	position: absolute;
	top: 0;
	left: 0;
	width: 4.5rem;
	background-color: rgba(0, 0, 0, 0)
  }

  .p-design__fullOrder-feature-list .img-wrp img {
	width: 100%
  }
}

.p-design__fullOrder-feature-list .text-wrp h3 {
  margin-bottom: 4.5rem;
  font-size: 2.6rem;
  font-weight: 500;
  line-height: 1.8em;
  color: #c5c5c5
}

@media screen and (max-width: 1080px) {
  .p-design__fullOrder-feature-list .text-wrp h3 {
	margin-bottom: 1.8rem;
	margin-left: 7rem;
	font-size: 2.2rem
  }
}

.p-design__fullOrder-feature-list .text-wrp p {
  font-size: 1.6rem;
  line-height: 2.2em;
  color: #c5c5c5;
  text-align: justify
}

@media screen and (max-width: 1080px) {
  .p-design__fullOrder-feature-list .text-wrp p {
	font-size: 1.4rem
  }
}

.p-design__fullOrder-feature-list:first-child {
  margin-bottom: 11rem
}

.p-design__furniture {
  padding-top: 23rem;
  padding-bottom: 29.5rem
}

@media screen and (max-width: 1080px) {
  .p-design__furniture {
	padding-top: 8rem;
	padding-bottom: 8rem
  }
}

.p-design__furniture-imgWrp {
  width: 64%;
  max-width: 95rem;
  margin: 0 auto
}

@media screen and (max-width: 1080px) {
  .p-design__furniture-imgWrp {
	width: 100%
  }
}

.p-design__furniture-imgWrp-ul {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between
}

.p-design__furniture-imgWrp-list {
  position: relative;
  width: 43.5%;
  margin-bottom: 13rem
}

@media screen and (max-width: 1080px) {
  .p-design__furniture-imgWrp-list {
	width: 100%;
	margin-bottom: 7rem
  }

  .p-design__furniture-imgWrp-list:last-child {
	margin-bottom: 0
  }
}

.p-design__furniture-imgWrp-list p {
  position: absolute;
  top: 0;
  right: -3.5rem;
  writing-mode: vertical-rl;
  font-feature-settings: normal
}

.p-design__furniture-imgWrp-list img {
  width: 100%
}

@media screen and (max-width: 1080px) {
  .p-design__furniture-imgWrp-list:nth-child(odd) {
	margin-right: 7.5rem
  }
}

.p-design__furniture-imgWrp-list:nth-child(even) {
  transform: translateY(12rem)
}

@media screen and (max-width: 1080px) {
  .p-design__furniture-imgWrp-list:nth-child(even) {
	margin-left: 7.5rem;
	transform: translateY(0)
  }

  .p-design__furniture-imgWrp-list:nth-child(even) p {
	right: auto;
	left: -3.5rem
  }
}

.p-design__parts {
  padding-top: 20rem;
  padding-bottom: 23rem;
  background-color: #f0f0f0
}

@media screen and (max-width: 1080px) {
  .p-design__parts {
	padding-top: 8rem;
	padding-bottom: 6rem
  }

  .p-design__parts .c-page-sec-ttl {
	width: 85%
  }
}

.p-design__parts-imgWrp {
  width: 98rem;
  margin: 0 auto;
  color: #2d2d2d
}

@media screen and (max-width: 1080px) {
  .p-design__parts-imgWrp {
	width: 100%
  }
}

.p-design__parts-ttl {
  margin-bottom: 6rem;
  font-size: 2.4rem;
  font-weight: 300;
  line-height: 1.8em;
  text-align: center
}

@media screen and (max-width: 1080px) {
  .p-design__parts-ttl {
	margin-bottom: 3.7rem;
	font-size: 1.8rem
  }
}

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

@media screen and (max-width: 1080px) {
  .p-design__parts-ul {
	width: 85%;
	margin: 0 auto
  }
}

.p-design__parts-list {
  width: 32.5%;
  margin-bottom: 4.8rem
}

.p-design__parts-list img {
  margin-bottom: 2.5rem
}

.p-design__parts-list p {
  font-size: 1.8rem;
  font-weight: 500;
  line-height: 1.8em
}

@media screen and (max-width: 1080px) {
  .p-design__parts-list {
	width: calc(50% - 3px);
	margin-bottom: 2.8rem
  }

  .p-design__parts-list img {
	margin-bottom: 6px
  }

  .p-design__parts-list p {
	font-size: 1.4rem
  }
}

.p-design__coordinate {
  display: flex;
  margin-bottom: 26rem
}

@media screen and (max-width: 1080px) {
  .p-design__coordinate {
	flex-direction: column-reverse;
	padding-top: 8rem;
	margin-bottom: 11rem
  }
}

.p-design__coordinate-bg {
  width: 50%
}

.p-design__coordinate-bg img {
  width: 100%;
  height: 100%;
  object-fit: cover
}

@media screen and (max-width: 1080px) {
  .p-design__coordinate-bg {
	width: 90%;
	aspect-ratio: 335/440
  }
}

.p-design__coordinate-textWrp {
  width: 50%
}

@media screen and (max-width: 1080px) {
  .p-design__coordinate-textWrp {
	width: 100%
  }
}

.p-design__coordinate-textWrp__inner {
  width: 60%;
  max-width: 40rem;
  padding: 21.5rem 0 12.5rem;
  margin: 0 auto
}

@media screen and (max-width: 1080px) {
  .p-design__coordinate-textWrp__inner {
	width: 100%;
	padding: 0 3rem;
	margin-bottom: 5.8rem
  }
}

.p-design__coordinate-textWrp__inner .sub-title {
  margin-bottom: 4.4rem;
  font-size: 1.6rem;
  line-height: 1em;
  color: #9a9a9a;
  letter-spacing: .02em
}

@media screen and (max-width: 1080px) {
  .p-design__coordinate-textWrp__inner .sub-title {
	margin-bottom: 2.8rem;
	font-size: 1.4rem
  }
}

.p-design__coordinate-textWrp__inner .title {
  margin-bottom: 7.8rem;
  font-size: min(3vw, 4rem);
  font-weight: 300;
  line-height: 1.8em
}

@media screen and (max-width: 1080px) {
  .p-design__coordinate-textWrp__inner .title {
	margin-bottom: 4rem;
	font-size: 2.6rem
  }
}

.p-design__coordinate-textWrp__inner .explan {
  font-size: 1.6rem;
  font-weight: 300;
  line-height: 2.2em;
  color: #505050;
  text-align: justify
}

.p-design__coordinate-textWrp__inner .explan p:first-child {
  margin-bottom: 2em
}

.p-design__works {
  padding-bottom: 35rem
}

@media screen and (max-width: 1080px) {
  .p-design__works {
	padding-bottom: 8rem
  }
}

.p-design__works-linkWrp {
  width: 80%;
  margin: 0 auto
}

@media screen and (max-width: 1080px) {
  .p-design__works-linkWrp {
	width: 87%
  }
}

.p-design__works-linkWrp-ul {
  display: flex;
  justify-content: space-between
}

@media screen and (max-width: 1080px) {
  .p-design__works-linkWrp-ul {
	display: block
  }
}

.p-design__works-linkWrp-li {
  width: 50%;
  background-repeat: no-repeat;
  background-size: cover
}

@media screen and (max-width: 1080px) {
  .p-design__works-linkWrp-li {
	width: 100%
  }
}

.p-design__works-linkWrp-li:first-child {
  margin-right: .5rem;
  background-image: url(../images/works-link-img-01.169b90251c9eb375db95.jpg)
}

@media screen and (max-width: 1080px) {
  .p-design__works-linkWrp-li:first-child {
	margin-right: 0;
	margin-bottom: 1rem
  }
}

.p-design__works-linkWrp-li:last-child {
  margin-left: .5rem;
  background-image: url(../images/works-link-img-02.1159450bd668734ab38d.jpg);
  transform: translateY(7rem)
}

@media screen and (max-width: 1080px) {
  .p-design__works-linkWrp-li:last-child {
	margin-left: 0;
	transform: translateY(0)
  }
}

.p-design__works-linkWrp-li a {
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding: 6.9vw 3.5vw
}

@media screen and (max-width: 1080px) {
  .p-design__works-linkWrp-li a {
	padding: 6rem 2.5rem
  }
}

.p-design__works-linkWrp-li .title-wrp p {
  margin-bottom: 2.3rem;
  font-size: 1.3rem;
  font-weight: 300;
  line-height: 1em;
  color: #ddd;
  letter-spacing: .02em
}

@media screen and (max-width: 1080px) {
  .p-design__works-linkWrp-li .title-wrp p {
	margin-bottom: .7rem;
	font-size: 1.2rem
  }
}

.p-design__works-linkWrp-li .title-wrp h3 {
  font-size: 2.8rem;
  font-weight: 300;
  line-height: 1em;
  color: #fff
}

@media screen and (max-width: 1080px) {
  .p-design__works-linkWrp-li .title-wrp h3 {
	font-size: 1.8rem
  }
}

.p-faq {
  --fv-margin: -19rem;
  padding-top: .5rem;
  background-color: #f0f0f0
}

@media screen and (max-width: 1080px) {
  .p-faq {
	--fv-margin: -18rem
  }
}

@media screen and (max-width: 767px) {
  .p-faq {
	padding-bottom: 30px;
	margin-top: 6.3rem;
	margin-bottom: 0;
	transform: translateY(0)
  }
}

.p-faq .c-page-fv__index-item {
  margin-bottom: 10rem
}

@media screen and (max-width: 1080px) {
  .p-faq .c-page-fv__index-item {
	margin-bottom: 6rem
  }
}

.p-faq__unit {
  width: 80%;
  max-width: 105rem;
  padding: 0 0 12rem;
  margin: 0 auto
}

@media screen and (max-width: 1080px) {
  .p-faq__unit {
	padding: 45px 0 62px
  }
}

@media screen and (max-width: 767px) {
  .p-faq__unit {
	width: 100%;
	padding: 4rem 2.4rem 5rem
  }
}

.p-faq__unit .main-title {
  margin-bottom: 5rem;
  font-size: 3.2rem
}

@media screen and (max-width: 767px) {
  .p-faq__unit .main-title {
	margin-bottom: 2.6rem;
	font-size: 1.8rem
  }
}

.p-faq__unit-item.c-toggle-wrp {
  max-width: 100%;
  width: 100%;
  margin: 0;
  background-color: #fff;
  border-bottom: none;
  border-radius: 5px;
  overflow: hidden
}

.p-faq__unit-item.c-toggle-wrp+.p-faq__unit-item {
  margin-top: 2.2rem
}

.p-faq__unit-item.c-toggle-wrp .p-faq__unit-item-panel.toggle-item {
  padding: 0;
  font-size: 1.6rem;
  color: #2d2d2d
}

@media screen and (max-width: 767px) {
  .p-faq__unit-item.c-toggle-wrp .p-faq__unit-item-panel.toggle-item {
	font-size: 1.4rem
  }
}

.p-faq__unit-item.c-toggle-wrp .p-faq__unit-item-panel.toggle-item a {
  text-decoration: underline
}

.p-faq__unit-item.c-toggle-wrp .p-faq__unit-item-panel.toggle-item a:hover {
  opacity: .8
}

.p-faq__unit-item.c-toggle-wrp .p-faq__unit-item-panel.toggle-item p:last-child {
  padding-bottom: 0
}

.p-faq__unit-item.c-toggle-wrp .p-faq__unit-item-trigger.toggle-btn,
.p-faq__unit-item.c-toggle-wrp .p-faq__unit-item-panel-inner {
  display: flex;
  align-items: flex-start;
  justify-content: flex-start;
  gap: 5.5rem;
  padding: 40px 80px 44px 60px
}

@media screen and (max-width: 1080px) {

  .p-faq__unit-item.c-toggle-wrp .p-faq__unit-item-trigger.toggle-btn,
  .p-faq__unit-item.c-toggle-wrp .p-faq__unit-item-panel-inner {
	gap: 3.5rem;
	padding: 40px 80px 44px 45px
  }
}

@media screen and (max-width: 767px) {

  .p-faq__unit-item.c-toggle-wrp .p-faq__unit-item-trigger.toggle-btn,
  .p-faq__unit-item.c-toggle-wrp .p-faq__unit-item-panel-inner {
	gap: 2rem;
	padding: 26px 60px 26px 22px
  }
}

.p-faq__unit-item-trigger {
  position: relative;
  width: 100%;
  text-align: left;
  transition: all .3s
}

.p-faq__unit-item-trigger[data-view=visibility],
.p-faq__unit-item-trigger:hover {
  color: #fff;
  background-color: #5f5f65
}

.p-faq__unit-item-trigger[data-view=visibility]::before,
.p-faq__unit-item-trigger[data-view=visibility]::after,
.p-faq__unit-item-trigger:hover::before,
.p-faq__unit-item-trigger:hover::after {
  background-color: #ddd
}

.p-faq__unit-item-trigger[data-view=visibility] .p-faq__unit-item-icon,
.p-faq__unit-item-trigger:hover .p-faq__unit-item-icon {
  color: #ddd
}

.p-faq__unit-item-trigger[data-view=visibility]::after {
  transform: rotate(180deg)
}

.p-faq__unit-item-trigger::before,
.p-faq__unit-item-trigger::after {
  content: "";
  position: absolute;
  top: 55px;
  right: 44px;
  display: inline-block;
  width: 20px;
  height: 2px;
  background-color: #a3a3a3
}

@media screen and (max-width: 767px) {

  .p-faq__unit-item-trigger::before,
  .p-faq__unit-item-trigger::after {
	top: 37px;
	right: 24px;
	width: 16px
  }
}

.p-faq__unit-item-trigger::after {
  transform: rotate(90deg);
  transition: transform .3s
}

.p-faq__unit-item-trigger span:not(.p-faq__unit-item-icon) {
  flex: 1;
  display: block;
  font-size: 1.8rem;
  line-height: 1.8
}

@media screen and (max-width: 767px) {
  .p-faq__unit-item-trigger span:not(.p-faq__unit-item-icon) {
	font-size: 1.4rem
  }
}

.p-faq__unit-item-icon {
  font-size: 3.2rem;
  color: #9a9a9a;
  font-weight: 300;
  line-height: 1;
  transition: color .3s
}

@media screen and (max-width: 767px) {
  .p-faq__unit-item-icon {
	font-size: 2.2rem
  }
}

.p-flow__schedule {
  position: relative;
  width: 80%;
  max-width: 105rem;
  margin: 0 auto 12rem
}

.p-flow__schedule-inner {
  display: flex;
  gap: 8rem;
  align-items: flex-end;
  justify-content: space-between;
  padding-top: 22rem
}

@media screen and (max-width: 1080px) {
  .p-flow__schedule-inner {
	display: block;
	padding-top: 10rem
  }
}

.p-flow__schedule-textWrp {
  width: 55%
}

@media screen and (max-width: 1080px) {
  .p-flow__schedule-textWrp {
	width: 100%
  }
}

.p-flow__schedule-subTtl {
  margin-bottom: 4.5rem;
  font-size: 1.6rem;
  font-weight: 500;
  line-height: 1em;
  color: #9a9a9a;
  letter-spacing: .02em
}

@media screen and (max-width: 1080px) {
  .p-flow__schedule-subTtl {
	margin-bottom: 2.8rem;
	font-size: 1.4rem
  }
}

.p-flow__schedule-title {
  margin-bottom: 10rem;
  font-size: 4rem;
  font-weight: 300;
  line-height: 1.8em;
  color: #2d2d2d
}

@media screen and (max-width: 1080px) {
  .p-flow__schedule-title {
	margin-bottom: 4rem;
	font-size: 2.6rem
  }
}

.p-flow__schedule-explan {
  margin-bottom: 5rem;
  font-size: 1.6rem;
  font-weight: 300;
  line-height: 2.1em;
  color: #505050;
  letter-spacing: -0.03em
}

@media screen and (max-width: 1080px) {
  .p-flow__schedule-explan {
	margin-bottom: 76rem;
	text-align: justify
  }
}

.p-flow__schedule-explan a {
  text-decoration: underline;
  text-underline-position: initial
}

.p-flow__schedule-explan a:hover {
  text-decoration: none
}

.p-flow__schedule-detail {
  margin-left: 15px
}

.p-flow__schedule-detail-li {
  display: flex;
  align-items: center;
  margin-bottom: 3rem
}

.p-flow__schedule-detail-li .title {
  width: 230px;
  padding-left: 10px;
  margin-right: 20px;
  font-size: 1.2rem;
  font-weight: 500;
  line-height: 1.8rem;
  color: #505050;
  border-left: 1px solid #a3a3a3
}

.p-flow__schedule-detail-li .explan {
  font-size: 1.4rem;
  font-weight: 300;
  line-height: 1.8rem;
  color: #505050
}

@media screen and (max-width: 1080px) {
  .p-flow__schedule-detail-li {
	display: block;
	margin-bottom: 23px
  }

  .p-flow__schedule-detail-li .title {
	margin-bottom: 12px
  }
}

.p-flow__schedule-index {
  margin-bottom: 2rem
}

@media screen and (max-width: 1080px) {
  .p-flow__schedule-index {
	position: absolute;
	bottom: 24rem;
	left: 0;
	width: 100%
  }
}

.p-flow__schedule-index-li {
  width: 33rem;
  padding-bottom: 2rem;
  margin-top: 2rem;
  border-bottom: 1px solid #ddd
}

@media screen and (max-width: 1080px) {
  .p-flow__schedule-index-li {
	width: 100%
  }
}

.p-flow__schedule-index-li a {
  display: flex;
  align-items: center
}

.p-flow__schedule-index-li .number {
  margin-right: 20px;
  font-size: 1.7rem;
  font-weight: 500;
  line-height: 1em;
  color: #a3a3a3
}

.p-flow__schedule-index-li .title {
  font-size: 1.8rem;
  font-weight: 500;
  line-height: 1em;
  color: #505050
}

.p-flow__schedule-index-li .arrow-mark {
  position: relative;
  width: 36px;
  height: 36px;
  margin-left: auto;
  border: 1px solid #ddd;
  border-radius: 50%
}

.p-flow__schedule-index-li .arrow-mark::before {
  position: absolute;
  top: 50%;
  left: 50%;
  width: 6px;
  height: 6px;
  content: "";
  border-right: 1px solid #505050;
  border-bottom: 1px solid #505050;
  transform: translate(-50%, -50%) rotate(45deg)
}

.p-flow__details {
  padding-top: 19rem;
  padding-bottom: 16rem;
  color: #f0f0f0;
  background-color: #5f5f65
}

@media screen and (max-width: 1080px) {
  .p-flow__details {
	padding-top: 8rem;
	padding-bottom: 3rem
  }
}

.p-flow__details-inner {
  width: 80%;
  max-width: 1000px;
  margin: 0 auto
}

.p-flow__details-subTtl {
  margin-bottom: 4.5rem;
  font-size: 1.6rem;
  font-weight: 500;
  line-height: 1em;
  color: #a3a3a3;
  letter-spacing: .02em
}

@media screen and (max-width: 1080px) {
  .p-flow__details-subTtl {
	margin-bottom: 2.8rem;
	font-size: 1.4rem
  }
}

.p-flow__details-title {
  margin-bottom: 10rem;
  font-size: 4rem;
  font-weight: 300;
  line-height: 1.8em
}

@media screen and (max-width: 1080px) {
  .p-flow__details-title {
	margin-bottom: 7rem;
	font-size: 2.6rem
  }
}

@media screen and (max-width: 1080px) {
  .p-flow__details-ul {
	margin-left: -5%
  }
}

.p-flow__details-li {
  position: relative;
  display: flex;
  margin-bottom: 12rem
}

@media screen and (max-width: 1080px) {
  .p-flow__details-li {
	margin-bottom: 7rem
  }
}

.p-flow__details-li:not(:last-child)::before {
  position: absolute;
  top: 2px;
  left: 4.86vw;
  width: 1px;
  height: 0;
  content: "";
  border-left: 1px solid #a3a3a3;
  transition: height 1.4s linear
}

@media screen and (max-width: 1080px) {
  .p-flow__details-li:not(:last-child)::before {
	left: 30px
  }
}

.p-flow__details-li.is-active:not(:last-child)::before {
  height: calc(100% + 12rem)
}

.p-flow__details-li-number {
  position: relative;
  flex-shrink: 0;
  width: 9.7vw;
  height: 9.7vw;
  margin-right: 6.25vw;
  background-color: #5f5f65;
  border: 1px solid #a3a3a3;
  border-radius: 50%
}

@media screen and (max-width: 1080px) {
  .p-flow__details-li-number {
	width: 60px;
	height: 60px
  }
}

.p-flow__details-li-number p {
  position: absolute;
  top: 50%;
  left: 50%;
  font-size: min(1.94vw, 2.8rem);
  line-height: 1em;
  letter-spacing: .02em;
  transform: translate(-50%, -50%)
}

@media screen and (max-width: 1080px) {
  .p-flow__details-li-number p {
	font-size: 1.4rem
  }
}

.p-flow__details-li-textWrp {
  margin-top: min(3.82vw, 5.5rem)
}

@media screen and (max-width: 1080px) {
  .p-flow__details-li-textWrp {
	margin-top: 22px
  }
}

.p-flow__details-li-textWrp .main-title {
  margin-bottom: 3.5rem;
  font-size: 2.6rem;
  font-weight: 500;
  line-height: 1.2
}

@media screen and (max-width: 1080px) {
  .p-flow__details-li-textWrp .main-title {
	margin-bottom: 3rem;
	font-size: 1.8rem
  }
}

.p-flow__details-li-textWrp .explan {
  margin-bottom: 6rem;
  font-size: 1.6rem;
  font-weight: 300;
  line-height: 2.2em;
  text-align: justify;
  letter-spacing: -0.03em
}

@media screen and (max-width: 1080px) {
  .p-flow__details-li-textWrp .explan {
	margin-bottom: 3.5rem;
	font-size: 1.4rem
  }
}

.p-flow__details-li-link {
  display: flex;
  align-items: center;
  justify-content: flex-end
}

.p-flow__details-li-link p {
  margin-right: 3rem;
  font-size: 1.8rem;
  font-weight: 500;
  line-height: 1em
}

@media screen and (max-width: 1080px) {
  .p-flow__details-li-link {
	justify-content: flex-start
  }

  .p-flow__details-li-link p {
	margin-right: 2.5rem;
	font-size: 1.4rem
  }
}

.p-flow__details-li-attention {
  padding: 7rem 5rem 5.5rem;
  background-color: #6f6f74
}

@media screen and (max-width: 1080px) {
  .p-flow__details-li-attention {
	position: relative;
	z-index: 0;
	padding: 5rem 2.5rem 3rem;
	margin-left: -28%
  }
}

.p-flow__details-li-attention h4 {
  margin-bottom: 5rem;
  font-size: 2.2rem;
  font-weight: 500;
  line-height: 1em;
  text-align: center
}

.p-flow__details-li-attention p {
  font-size: 1.6rem;
  font-weight: 300;
  line-height: 2.2em;
  text-align: justify;
  letter-spacing: -0.03em
}

.p-flow__details-li-04attention h4 {
  position: relative;
  padding-left: 2rem;
  margin-bottom: 2.5rem;
  font-size: 2rem;
  font-weight: 500;
  line-height: 1em
}

@media screen and (max-width: 1080px) {
  .p-flow__details-li-04attention h4 {
	margin-bottom: 16px;
	font-size: 1.4rem
  }
}

.p-flow__details-li-04attention h4::before {
  position: absolute;
  top: 50%;
  left: 0;
  width: 10px;
  height: 2px;
  content: "";
  background-color: #6f6f74;
  transform: translateY(-50%)
}

.p-flow__details-li-04attention ul {
  display: flex;
  gap: 5px
}

@media screen and (max-width: 1080px) {
  .p-flow__details-li-04attention ul {
	display: block
  }
}

.p-flow__details-li-04attention ul li {
  padding: 4.5rem 0;
  text-align: center;
  background-color: #6f6f74
}

@media screen and (max-width: 1080px) {
  .p-flow__details-li-04attention ul li {
	padding: 2.5rem 0;
	margin-bottom: 6px;
	font-size: 1.3rem
  }
}

.p-flow__details-li-04attention ul li:first-child {
  width: 32%
}

@media screen and (max-width: 1080px) {
  .p-flow__details-li-04attention ul li:first-child {
	width: 100%
  }
}

.p-flow__details-li-04attention ul li:nth-child(2) {
  width: 30%
}

@media screen and (max-width: 1080px) {
  .p-flow__details-li-04attention ul li:nth-child(2) {
	width: 100%
  }
}

.p-flow__details-li-04attention ul li:last-child {
  width: 36%
}

@media screen and (max-width: 1080px) {
  .p-flow__details-li-04attention ul li:last-child {
	width: 100%
  }
}

.p-maintenance__guarantee {
  padding-top: 22rem;
  padding-bottom: 15rem
}

@media screen and (max-width: 1080px) {
  .p-maintenance__guarantee {
	padding-top: 10rem;
	padding-bottom: 13rem
  }
}

.p-maintenance__guarantee-img {
  display: block;
  width: 72%;
  margin: 0 auto 17rem;
  clip-path: inset(0 100% 0 0);
  transition: clip-path 1s ease-in-out
}

.p-maintenance__guarantee-img.is-active {
  clip-path: inset(0)
}

@media screen and (max-width: 1080px) {
  .p-maintenance__guarantee-img {
	width: 75%;
	margin-bottom: 6.5rem;
	clip-path: inset(0 0 100% 0)
  }

  .p-maintenance__guarantee-img.is-active {
	clip-path: inset(0)
  }
}

.p-maintenance__ground {
  padding: 19rem 0;
  background-color: #5f5f65
}

@media screen and (max-width: 1080px) {
  .p-maintenance__ground {
	padding: 8rem 0 5rem
  }
}

.p-maintenance__ground-inner {
  width: 80%;
  max-width: 110rem;
  margin: 0 auto
}

.p-maintenance__ground-li {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  margin-bottom: 22rem
}

@media screen and (max-width: 1080px) {
  .p-maintenance__ground-li {
	position: relative;
	flex-direction: column-reverse;
	margin-bottom: 10rem
  }
}

.p-maintenance__ground-li:nth-child(even) {
  flex-direction: row-reverse
}

.p-maintenance__ground-li:last-child {
  margin-bottom: 0
}

.p-maintenance__ground-textWrp {
  width: 45%
}

@media screen and (max-width: 1080px) {
  .p-maintenance__ground-textWrp {
	width: 100%
  }
}

.p-maintenance__ground-textWrp .sub-title {
  margin-bottom: 4.5rem;
  font-size: 1.6rem;
  line-height: 1em;
  color: #c5c5c5;
  letter-spacing: .02em
}

@media screen and (max-width: 1080px) {
  .p-maintenance__ground-textWrp .sub-title {
	margin-bottom: 2.8rem;
	font-size: 1.4rem
  }
}

.p-maintenance__ground-textWrp .main-title {
  margin-bottom: 4.5rem;
  font-size: min(2.9vw, 4rem);
  font-weight: 300;
  line-height: 1.8em;
  color: #fff
}

@media screen and (max-width: 1080px) {
  .p-maintenance__ground-textWrp .main-title {
	margin-bottom: 4rem;
	font-size: 2.6rem
  }
}

.p-maintenance__ground-textWrp .main-title .mark {
  display: inline-block;
  height: min(2.9vw, 4rem);
  padding: 0 14px;
  margin-left: 18px;
  font-size: 1.8rem;
  font-weight: 300;
  line-height: min(2.9vw, 4rem);
  color: #fff;
  background-color: #7b7b7b;
  border-radius: 4px;
  transform: translateY(max(-0.55vw, -8px))
}

@media screen and (max-width: 1080px) {
  .p-maintenance__ground-textWrp .main-title .mark {
	height: 3rem;
	font-size: 1.4rem;
	line-height: 3rem
  }
}

.p-maintenance__ground-textWrp .explan p {
  font-size: 1.6rem;
  font-weight: 300;
  line-height: 2.1em;
  color: #f0f0f0;
  text-align: justify
}

.p-maintenance__ground-textWrp .explan p.attention {
  margin-top: 1em;
  font-size: 1.2rem
}

.p-maintenance__ground-textWrp .explan .__after-link {
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding-bottom: 12px;
  margin-top: 28px;
  font-size: 1.6rem;
  font-weight: 500;
  color: #f0f0f0;
  border-bottom: 1px solid #ddd
}

@media screen and (max-width: 767px) {
  .p-maintenance__ground-textWrp .explan .__after-link {
	padding-bottom: 11px;
	margin-top: 30px;
	font-size: 1.4rem
  }
}

.p-maintenance__ground-textWrp .explan .__after-link .__text {
  display: block
}

.p-maintenance__ground-textWrp .explan .__after-link .__icon {
  position: relative;
  display: block;
  width: 38px;
  height: 38px
}

.p-maintenance__ground-textWrp .explan .__after-link .__icon::before {
  position: absolute;
  top: 50%;
  right: 0;
  display: inline-block;
  width: 38px;
  height: 38px;
  content: "";
  border: 1px solid #ddd;
  border-radius: 50%;
  transition: all .5s ease;
  transform: translateY(-50%)
}

.p-maintenance__ground-textWrp .explan .__after-link .__icon::after {
  position: absolute;
  top: 50%;
  display: inline-block;
  width: 6px;
  height: 6px;
  content: "";
  border-right: 1px solid #f0f0f0;
  border-bottom: 1px solid #f0f0f0;
  transform: translateY(-50%) rotate(-45deg);
  animation: maintenanceArrowReverse .5s ease 0s 1 forwards
}

@media screen and (max-width: 767px) {
  .p-maintenance__ground-textWrp .explan .__after-link .__icon::after {
	animation: maintenanceArrowReverseSp .5s ease 0s 1 forwards
  }
}

@media screen and (max-width: 767px) {
  .p-maintenance__ground-textWrp .explan .__after-link .__icon {
	padding: 2.6rem 0
  }

  .p-maintenance__ground-textWrp .explan .__after-link .__icon::before {
	width: 3.8rem;
	height: 3.8rem
  }

  .p-maintenance__ground-textWrp .explan .__after-link .__icon::after {
	right: 17px;
	width: 5px;
	height: 5px
  }
}

.p-maintenance__ground-textWrp .explan .__after-link:hover .__icon::after {
  animation: maintenanceArrow .5s ease 0s 1 forwards
}

@media screen and (max-width: 767px) {
  .p-maintenance__ground-textWrp .explan .__after-link:hover .__icon::after {
	animation: maintenanceArrowSp .5s ease 0s 1 forwards
  }
}

.p-maintenance__ground-img.vpc {
  display: block;
  width: 48%
}

.p-maintenance__ground-img.vpc img {
  width: 100%
}

@media screen and (max-width: 1080px) {
  .p-maintenance__ground-img.vpc {
	display: none
  }
}

.p-maintenance__ground-img.vsp {
  width: 100%;
  margin-bottom: 4rem
}

.p-maintenance__ground-img.vsp img {
  width: 100%;
  height: 100%
}

.c-page-fv {
  position: relative;
  z-index: 1;
  margin-top: 8rem;
  overflow: hidden
}

.c-page-fv__scroll-line {
  position: fixed;
  bottom: 0;
  left: 4rem;
  z-index: 0;
  content: url(../images/page-index-line.1370172b705aece1513e.svg);
  animation: pageScrollLine 1.6s linear 0s infinite
}

@media screen and (max-width: 1080px) {
  .c-page-fv__scroll-line::before {
	display: none
  }
}

@keyframes pageScrollLine {
  0% {
	clip-path: inset(0 0 100% 0)
  }

  40% {
	clip-path: inset(0 0 0 0)
  }

  100% {
	clip-path: inset(0 0 0 0)
  }
}

.c-page-fv[data-page=privacy] .c-page-fv__index-img {
  width: 100%;
  max-width: 100%
}

.c-page-underlayer .c-page-fv {
  overflow: visible
}

.c-page-underlayer .c-page-fv::before {
  bottom: -35rem
}

.c-page-fv__title {
  margin-bottom: 9.5rem
}

.c-page-fv__title img {
  display: block;
  max-width: none;
  clip-path: inset(0 100% 0 0);
  animation: pageEnTitleAnime .8s linear .2s 1 forwards
}

.p-page-quality .c-page-fv__title img {
  width: 187rem
}

.c-page-fv__title h1 {
  margin-left: 11.5%;
  font-size: 5.6rem;
  font-weight: 500;
  line-height: 1.2;
  transform: translateY(-14px)
}

.c-page-fv__title h1 span {
  display: block;
  transform: translateY(1.2em)
}

.wf-active .c-page-fv__title h1 span {
  animation: pageTitleAnime .8s cubic-bezier(0.4, 0.46, 0.46, 0.98) .1s 1 forwards
}

.c-page-fv__title h1 .ttl-wrp {
  overflow: hidden
}

.p-aboutus .c-page-fv__title h1 .ttl-wrp,
.p-after-support .c-page-fv__title h1 .ttl-wrp,
.p-works-seo .c-page-fv__title h1 .ttl-wrp {
  display: inline-block
}

.p-aboutus .c-page-fv__title h1 .ttl-wrp:last-child,
.p-after-support .c-page-fv__title h1 .ttl-wrp:last-child,
.p-works-seo .c-page-fv__title h1 .ttl-wrp:last-child {
  margin-left: -0.3em
}

.p-after-support .c-page-fv__title h1 .ttl-wrp:last-child {
  margin-left: 0
}

.c-page-fv__title h1 .ttl-wrp[data-page=arbo] span>span {
  display: inline;
  font-family: aktiv-grotesk, "Helvetica Neue", helvetica, heisei-kaku-gothic-std, -apple-system, blinkmacsystemfont, "Helvetica Neue", "游ゴシック体", yugothic, "游ゴシック", "Yu Gothic", "ヒラギノ角ゴ ProN W3", hiragino kaku gothic pron, arial, "メイリオ", meiryo, sans-serif;
  font-weight: 400;
  transform: translateY(0);
  animation: none
}

.c-page-fv__title h1 .ttl-wrp[data-page=contact] br {
  display: none
}

@media screen and (max-width: 767px) {
  .c-page-fv__title h1 .ttl-wrp[data-page=contact] br {
	display: block
  }
}

@media screen and (max-width: 1080px) {
  .c-page-fv__title {
	margin-bottom: 1.5rem
  }

  .c-page-fv__title img {
	width: auto;
	height: 4.5rem
  }

  .c-page-fv__title h1 {
	margin-left: 3rem;
	font-size: 3rem
  }

  .c-page-fv__title h1 span {
	animation-duration: .6s
  }

  .p-aboutus .c-page-fv__title h1 .ttl-wrp,
  .p-after-support .c-page-fv__title h1 .ttl-wrp,
  .p-works-seo .c-page-fv__title h1 .ttl-wrp {
	display: block
  }

  .p-aboutus .c-page-fv__title h1 .ttl-wrp:last-child,
  .p-after-support .c-page-fv__title h1 .ttl-wrp:last-child,
  .p-works-seo .c-page-fv__title h1 .ttl-wrp:last-child {
	margin-top: .6em;
	margin-left: 0
  }
}

.c-page-fv__index-wrp {
  display: flex;
  gap: 3rem;
  justify-content: space-between
}

@media screen and (max-width: 1080px) {
  .c-page-fv__index-wrp {
	flex-direction: column-reverse;
	gap: 0
  }
}

.c-page-fv__index-item {
  width: 24.5%;
  padding-left: 8.5%;
  margin-top: 13.5rem
}

@media screen and (max-width: 1080px) {
  .c-page-fv__index-item {
	width: 100%;
	margin-top: 4.8rem
  }
}

.c-page-fv__index-item .title {
  margin-bottom: 2rem;
  font-size: 1.2rem;
  line-height: 1em;
  color: #b2b2b2
}

.c-page-fv__index-item .sub-title-for-series {
  margin-bottom: 20px;
  font-size: 13px;
  line-height: 1em;
  color: #9a9a9a
}

.c-page-fv__index-item .sub-title-for-series.secound-type {
  margin-top: 40px
}

@media screen and (max-width: 1080px) {
  .c-page-fv__index-item .sub-title-for-series {
	margin-bottom: 15px;
	font-size: 12px
  }
}

.c-page-fv__index-item .arrange-wrp {
  position: relative;
  padding-left: 1rem;
  line-height: 1.4em
}

.c-page-fv__index-item .arrange-wrp::before {
  position: absolute;
  top: 50%;
  left: 0;
  width: 4px;
  height: 4px;
  content: "";
  background-color: #d9d9d9;
  border-radius: 50%;
  transform: translateY(-50%)
}

@media screen and (max-width: 1080px) {
  .c-page-fv__index-item .arrange-wrp img {
	width: 100px
  }
}

.c-page-fv__index-item .list-item {
  font-size: 1.3rem;
  color: #9a9a9a
}

.c-page-fv__index-item .list-item li {
  position: relative;
  padding-left: 1rem;
  margin-bottom: 15px;
  line-height: 1.4em
}

@media screen and (max-width: 1080px) {
  .c-page-fv__index-item .list-item li br[data-view=pc] {
	display: none
  }
}

.c-page-fv__index-item .list-item li::before {
  position: absolute;
  top: 50%;
  left: 0;
  width: 4px;
  height: 4px;
  content: "";
  background-color: #d9d9d9;
  border-radius: 50%;
  transform: translateY(-50%)
}

@media screen and (max-width: 1080px) {
  .c-page-fv__index-item .list-item li:first-child img {
	width: 77px
  }

  .c-page-fv__index-item .list-item li:nth-child(2) img {
	width: 64px
  }

  .c-page-fv__index-item .list-item li:nth-child(3) img {
	width: 94px
  }
}

.c-page-fv__index-item .list-item li a {
  transition: color .3s
}

.c-page-fv__index-item .list-item li a:hover {
  color: #505050
}

.c-page-fv__index-img {
  width: 75.5%;
  max-width: 110rem
}

.c-page-fv__index-img img {
  width: 100%
}

@media screen and (max-width: 1080px) {
  .c-page-fv__index-img {
	width: 100%;
	padding-left: 3rem
  }
}

.c-page-fv__index-img-breadcrumb {
  display: flex;
  align-items: center;
  justify-content: flex-end;
  margin-right: 2.5rem;
  margin-bottom: 2rem
}

@media screen and (max-width: 1080px) {
  .c-page-fv__index-img-breadcrumb[data-page=faq] {
	padding-left: 3rem
  }
}

.c-page-fv__index-img-breadcrumb p {
  font-size: 1.3rem;
  font-weight: 500;
  line-height: 1em;
  color: #c5c5c5
}

.c-page-fv__index-img-breadcrumb p:first-child {
  letter-spacing: .03em
}

.c-page-fv__index-img-breadcrumb p[data-page=contact] br {
  display: none
}

@media screen and (max-width: 1080px) {
  .c-page-fv__index-img-breadcrumb {
	justify-content: flex-start;
	height: 3em;
	margin-right: 0;
	margin-bottom: 4.5rem;
	overflow-x: scroll;
	-ms-overflow-style: none;
	scrollbar-width: none
  }

  .c-page-fv__index-img-breadcrumb::-webkit-scrollbar {
	display: none
  }

  .c-page-fv__index-img-breadcrumb p {
	white-space: nowrap
  }
}

.c-page-fv__index-img-breadcrumb .main-text {
  color: #9a9a9a
}

.c-page-fv__index-img-breadcrumb .arrow {
  flex: 0 0 auto;
  margin: 0 1rem .4rem
}

.c-page-fv__index-img-breadcrumb .page-title {
  font-weight: 500;
  color: #9a9a9a
}

@media screen and (max-width: 767px) {
  .c-page-fv__index-img-breadcrumb .page-title {
	padding-right: 1.5rem
  }
}

.c-page-sec-ttl {
  width: 80%;
  max-width: 105rem;
  margin: 0 auto 16rem
}

@media screen and (max-width: 1080px) {
  .c-page-sec-ttl {
	width: 83%;
	margin-bottom: 7rem
  }
}

.c-page-sec-ttl .sub-title {
  margin-bottom: 4.6rem;
  font-size: 1.6rem;
  font-weight: 500;
  line-height: 1em;
  color: #9a9a9a;
  letter-spacing: .02em
}

@media screen and (max-width: 1080px) {
  .c-page-sec-ttl .sub-title {
	margin-bottom: 2.8rem;
	font-size: 1.4rem
  }
}

.p-design__works .c-page-sec-ttl {
  width: 80%
}

.c-page-sec-ttl[data-color=gray] .sub-title {
  color: #c5c5c5
}

.c-page-sec-ttl__wrp {
  display: flex;
  justify-content: space-between
}

@media screen and (max-width: 1080px) {
  .c-page-sec-ttl__wrp {
	flex-direction: column
  }
}

@media screen and (max-width: 1080px) {
  .c-page-sec-ttl__wrp[data-order=reverse] {
	flex-direction: column-reverse
  }
}

.c-page-sec-ttl__wrp[data-gap="30"] {
  gap: 30px
}

@media screen and (max-width: 1080px) {
  .c-page-sec-ttl__wrp[data-gap="30"] {
	gap: 0
  }
}

.c-page-sec-ttl__wrp .main-title {
  width: 40%;
  font-size: min(3vw, 4rem);
  font-weight: 300;
  line-height: 1.2
}

@media screen and (max-width: 1080px) {
  .c-page-sec-ttl__wrp .main-title {
	width: 100%;
	font-size: 2.6rem
  }
}

.p-series-c-sec.zeh-select .c-page-sec-ttl__wrp .main-title {
  width: 53%;
  margin-right: 3rem
}

@media screen and (max-width: 1080px) {
  .p-series-c-sec.zeh-select .c-page-sec-ttl__wrp .main-title {
	width: 100%;
	margin-right: 0;
	font-size: min(6.5vw, 2.6rem)
  }
}

.c-page-sec-ttl__wrp .explan {
  width: 56%;
  margin-top: 6.5rem;
  font-size: 1.6rem;
  line-height: 2.2em;
  color: #ddd;
  text-align: justify;
  letter-spacing: -0.02em
}

.c-page-sec-ttl__wrp .explan[data-color=black] {
  color: #505050
}

.c-page-sec-ttl__wrp .explan[data-color=gray] {
  color: #f0f0f0
}

@media screen and (max-width: 1080px) {
  .c-page-sec-ttl__wrp .explan {
	width: 100%;
	margin-top: 4rem;
	font-weight: 300
  }
}

.c-page-3series {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 10px;
  max-width: 105rem;
  margin: 2rem auto 8.5rem
}

@media screen and (max-width: 1080px) {
  .c-page-3series {
	grid-template-columns: repeat(1, 1fr);
	margin-top: 12px
  }
}

.c-page-3series__list {
  position: relative;
  height: 20rem;
  background-color: #fff
}

@media screen and (max-width: 1080px) {
  .c-page-3series__list {
	width: 100%;
	height: 15rem
  }
}

.c-page-3series__list a {
  display: block;
  width: 100%;
  height: 100%;
  transition: background-color .6s ease
}

.c-page-3series__list a:hover {
  background-color: rgba(240, 240, 240, .6)
}

.c-page-3series__list p {
  font-size: 1.4rem;
  line-height: 1em
}

.c-page-3series__list img {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%)
}

.c-page-3series__list:first-child img {
  width: 12.5rem
}

.c-page-3series__list:nth-child(2) img {
  width: 10.5rem;
  transform: translate(-50%, -55%)
}

@media screen and (max-width: 1080px) {
  .c-page-3series__list:nth-child(2) img {
	margin-top: 6px
  }
}

.c-page-3series__list:last-child img {
  width: 14.8rem
}

.c-page-3series-link {
  max-width: 105rem;
  margin: 0 auto;
  color: #9a9a9a
}

.c-page-3series-link .c-slide-btn--parent {
  display: flex;
  align-items: center;
  width: fit-content;
  padding-bottom: 1.5rem;
  margin: 0 auto;
  border-bottom: 1px solid #ddd
}

@media screen and (max-width: 1080px) {
  .c-page-3series-link .c-slide-btn--parent {
	justify-content: space-between;
	width: 85%
  }
}

.c-page-3series-link .c-slide-btn {
  margin-left: 3rem
}

.c-page-strength {
  padding: 5.9vw 9vw;
  background-color: #f0f0f0
}

@media screen and (max-width: 1080px) {
  .c-page-strength {
	padding: 5.7rem 2.5rem
  }
}

.c-page-strength__title {
  position: relative;
  padding-left: 13px;
  margin-bottom: 6.8rem;
  font-size: 1.6rem;
  font-weight: 500;
  line-height: 1em;
  color: #9a9a9a;
  letter-spacing: .02em
}

.c-page-strength__title::before {
  position: absolute;
  top: 50%;
  left: 0;
  width: 7px;
  height: 1px;
  content: "";
  background-color: #c5c5c5;
  transform: translateY(-50%)
}

@media screen and (max-width: 1080px) {
  .c-page-strength__title {
	margin-bottom: 3rem;
	font-size: 1.4rem
  }
}

.c-page-strength__ul {
  display: flex;
  column-gap: 10px
}

@media screen and (max-width: 1080px) {
  .c-page-strength__ul {
	display: block
  }
}

.c-page-strength__li {
  position: relative;
  width: 25%;
  background-color: #fff
}

@media screen and (max-width: 1080px) {
  .c-page-strength__li {
	width: 100%;
	margin-bottom: 1rem
  }
}

.c-page-strength__li .contents-wrp {
  display: block;
  padding: 2rem 2rem 3rem 3.5rem
}

@media screen and (max-width: 1080px) {
  .c-page-strength__li .contents-wrp {
	padding: 2.5rem 3rem
  }
}

.c-page-strength__li .contents-wrp img {
  height: 52px;
  margin-top: 4rem;
  margin-bottom: 4rem
}

@media screen and (max-width: 1080px) {
  .c-page-strength__li .contents-wrp img {
	width: 35px;
	margin-top: 0;
	margin-bottom: 2rem
  }
}

.c-page-strength__li .contents-wrp h3 {
  margin-bottom: 1.5rem;
  font-size: 2.2rem;
  font-weight: 300;
  line-height: 1em;
  color: #505050
}

@media screen and (max-width: 1080px) {
  .c-page-strength__li .contents-wrp h3 {
	font-size: 1.8rem
  }
}

.c-page-strength__li .contents-wrp p {
  font-family: aktiv-grotesk, "Helvetica Neue", helvetica, heisei-kaku-gothic-std, -apple-system, blinkmacsystemfont, "Helvetica Neue", "游ゴシック体", yugothic, "游ゴシック", "Yu Gothic", "ヒラギノ角ゴ ProN W3", hiragino kaku gothic pron, arial, "メイリオ", meiryo, sans-serif;
  font-size: 1.4rem;
  line-height: 1em;
  color: #a3a3a3;
  letter-spacing: .02em
}

@media screen and (max-width: 1080px) {
  .c-page-strength__li .contents-wrp p {
	font-size: 1.2rem
  }
}

.c-page-strength__li .contents-wrp .btn-wrp {
  position: absolute;
  top: 2rem;
  right: 2rem
}

@media screen and (max-width: 1080px) {
  .c-page-strength__li .contents-wrp .btn-wrp {
	top: auto;
	bottom: 2.5rem
  }
}

.c-page-strength__li.li-design .contents-wrp h3 {
  margin-bottom: .8rem;
  line-height: 1.3em
}

@media screen and (max-width: 1080px) {
  .c-page-strength__li.li-design .contents-wrp h3 {
	margin-bottom: 1.5rem;
	line-height: 1em
  }
}

.c-page-strength__li.li-design .contents-wrp img {
  margin-bottom: 2.5rem
}

@media screen and (max-width: 1080px) {
  .c-page-strength__li.li-design .contents-wrp img {
	margin-bottom: 2rem
  }
}

.c-page-imgSec {
  padding: 5.5vw 3.4vw
}

@media screen and (max-width: 1080px) {
  .c-page-imgSec {
	padding: 6rem 0 5rem
  }
}

.c-page-imgSec__link {
  display: block;
  padding: 13.2vw 1.4vw 8.6vw;
  color: #fff;
  text-align: center;
  background-repeat: no-repeat;
  background-position: center;
  background-size: cover
}

.p-professionals .c-page-imgSec__link {
  background-image: url(../images/staff-bg.314a03606cf4f574c375.jpg)
}

.c-page-imgSec__link .sub-title {
  margin-bottom: 1.5rem;
  font-size: 1.6rem;
  line-height: 1em;
  letter-spacing: .02em
}

.c-page-imgSec__link .title {
  margin-bottom: 3.3rem;
  font-size: 4rem;
  font-weight: 300;
  line-height: 180%
}

.c-page-imgSec__link .explan {
  margin-bottom: 6rem;
  font-size: 1.6rem;
  font-weight: 300;
  line-height: 180%
}

@media screen and (max-width: 1080px) {
  .c-page-imgSec__link {
	padding: 7rem 5rem 5rem
  }

  .p-professionals .c-page-imgSec__link {
	background-image: url(../images/staff-bg-sp.24d163b50167655741e3.jpg)
  }

  .c-page-imgSec__link .sub-title {
	margin-bottom: 1.1rem;
	font-size: 1.2rem
  }

  .c-page-imgSec__link .title {
	margin-bottom: 1.6rem;
	font-size: 2.4rem
  }

  .c-page-imgSec__link .explan {
	margin-bottom: 2.3rem;
	font-size: 1.4rem
  }
}

.c-toggle-wrp {
  width: 60%;
  max-width: 70rem;
  margin: 7.5rem auto 0;
  border-bottom: 1px solid #505050
}

@media screen and (max-width: 1080px) {
  .c-toggle-wrp {
	width: 80%
  }
}

.c-toggle-wrp .toggle-btn {
  display: flex;
  align-items: center;
  justify-content: space-between;
  width: 100%;
  padding: 0 1.2rem 1.2rem
}

.c-toggle-wrp .toggle-btn p {
  font-size: 1.4rem;
  font-weight: 300;
  line-height: 2.1em;
  color: #a3a3a3
}

.c-toggle-wrp .toggle-btn .arrow {
  width: 8px;
  height: 8px;
  border-right: 1px solid #9a9a9a;
  border-bottom: 1px solid #9a9a9a;
  transform: translateY(-35%) rotate(45deg)
}

.c-toggle-wrp .toggle-btn[data-view=visibility] .arrow {
  transform: translateY(24%) rotate(-135deg)
}

.c-toggle-wrp .toggle-item {
  padding-right: 1rem;
  padding-left: 1rem;
  font-size: 1.3rem;
  font-weight: 300;
  line-height: 2.1em;
  color: #a3a3a3;
  letter-spacing: -0.02em
}

.c-toggle-wrp .toggle-item p {
  text-align: justify
}

.c-toggle-wrp .toggle-item p:last-child {
  padding-bottom: 2rem
}

.c-toggle-wrp[data-color=black] {
  border-bottom: 1px solid #a3a3a3
}

.c-toggle-wrp[data-color=black] .toggle-btn p {
  color: #505050
}

.c-toggle-wrp[data-color=black] .toggle-btn .arrow {
  border-color: #505050
}

.c-toggle-wrp[data-color=black] .toggle-item {
  color: #505050
}

.c-page-secLink .c-slide-btn {
  margin: 0 auto
}

.c-page-secLink__inner {
  position: relative;
  display: block;
  margin: 5rem 5rem 8rem
}

@media screen and (max-width: 1080px) {
  .c-page-secLink__inner {
	margin: 5rem 0
  }
}

.c-page-secLink__inner-img {
  width: 100%;
  height: 100%;
  object-fit: cover
}

@media screen and (max-width: 1080px) {
  .c-page-secLink__inner-img {
	aspect-ratio: 375/320
  }
}

.c-page-secLink__textWrp {
  position: absolute;
  top: 50%;
  left: 50%;
  z-index: 1;
  padding-top: 4%;
  color: #f0f0f0;
  text-align: center;
  transform: translate(-50%, -50%)
}

@media screen and (max-width: 1080px) {
  .c-page-secLink__textWrp {
	width: 90%
  }
}

.c-page-secLink__textWrp .sub-title {
  margin-bottom: 15px;
  font-size: 1.6rem;
  font-weight: 500;
  line-height: 1em;
  letter-spacing: .02em
}

@media screen and (max-width: 1080px) {
  .c-page-secLink__textWrp .sub-title {
	margin-bottom: 12px;
	font-size: 1.2rem
  }
}

.c-page-secLink__textWrp .title {
  margin-bottom: 3rem;
  font-size: 4rem;
  font-weight: 300;
  line-height: 1.8em
}

@media screen and (max-width: 1080px) {
  .c-page-secLink__textWrp .title {
	margin-bottom: 16px;
	font-size: 2.4rem
  }
}

.c-page-secLink__textWrp .explan {
  margin-bottom: 5rem;
  font-size: 1.6rem;
  font-weight: 300;
  line-height: 1.8em
}

@media screen and (max-width: 1080px) {
  .c-page-secLink__textWrp .explan {
	margin-bottom: 2.3rem;
	font-size: 1.4rem
  }
}

.c-page-error {
  padding: 16.6rem 3rem 20rem;
  background-color: #f0f0f0
}

@media screen and (max-width: 1080px) {
  .c-page-error {
	padding: 8rem 3rem
  }
}

@media screen and (max-width: 767px) {
  .c-page-error {
	padding: 5rem 2.4rem
  }
}

.c-page-error>div {
  max-width: 105rem;
  padding: 16rem 3rem 11.6rem;
  margin: 0 auto;
  text-align: center;
  background-color: #fff
}

@media screen and (max-width: 767px) {
  .c-page-error>div {
	padding: 6.8rem 4.3rem 5.8rem
  }
}

.c-page-error>div>span {
  font-size: 5rem;
  font-weight: 300;
  line-height: 1.8
}

@media screen and (max-width: 767px) {
  .c-page-error>div>span {
	font-size: 3.6rem;
	line-height: 1.3
  }
}

.c-page-error>div h2 {
  font-size: 1.8rem;
  line-height: 1.4
}

@media screen and (max-width: 767px) {
  .c-page-error>div h2 {
	margin-top: 1rem;
	font-size: 1.4rem;
	line-height: 1.8
  }
}

.c-page-error>div>p {
  margin: 7.3rem 0 12.4rem;
  font-size: 2.2rem;
  font-weight: 300
}

@media screen and (max-width: 767px) {
  .c-page-error>div>p {
	margin: 4.1rem 0 5rem;
	font-size: 1.6rem
  }
}

.c-page-error>div .c-button__small {
  margin: 0 auto
}

.c-page-confirm {
  padding: 16.6rem 3rem 20rem;
  background-color: #f0f0f0
}

@media screen and (max-width: 1080px) {
  .c-page-confirm {
	padding: 8rem 3rem
  }
}

@media screen and (max-width: 767px) {
  .c-page-confirm {
	padding: 5rem 0
  }
}

.c-page-confirm .c-form__thanks {
  margin-bottom: 7.7rem;
  font-size: 3.4rem;
  font-weight: 300;
  line-height: 1.8;
  text-align: center
}

@media screen and (max-width: 1080px) {
  .c-page-confirm .c-form__thanks {
	font-size: 3rem
  }
}

@media screen and (max-width: 767px) {
  .c-page-confirm .c-form__thanks {
	margin-bottom: 2.3rem;
	font-size: 2.4rem
  }
}

.c-page-confirm .c-button__small {
  margin: 0 auto
}

.p-partner {
  margin: 22rem auto 14.6rem
}

@media screen and (max-width: 1080px) {
  .p-partner {
	margin: 10rem auto 7rem
  }
}

.p-partner__text {
  margin-top: 5.2rem;
  font-weight: 300;
  line-height: 2.1
}

@media screen and (max-width: 767px) {
  .p-partner__text {
	margin-top: 3rem
  }
}

.p-partner__info {
  margin-top: 6.7rem;
  padding: 7rem 3rem;
  border: 1px solid #505050
}

@media screen and (max-width: 1080px) {
  .p-partner__info {
	padding: 5rem 2rem
  }
}

@media screen and (max-width: 767px) {
  .p-partner__info {
	margin-top: 4.8rem;
	padding: 3.5rem 3.3rem
  }
}

.p-partner__info ul {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  gap: 6rem
}

@media screen and (max-width: 1080px) {
  .p-partner__info ul {
	gap: 4rem
  }
}

@media screen and (max-width: 767px) {
  .p-partner__info ul {
	flex-direction: column;
	gap: 2rem
  }
}

.p-partner__info ul+ul {
  margin-top: 3.3rem
}

@media screen and (max-width: 767px) {
  .p-partner__info ul+ul {
	margin-top: 2rem
  }
}

.p-partner__info li {
  font-size: 2.4rem;
  font-weight: 300;
  line-height: 1
}

@media screen and (max-width: 1080px) {
  .p-partner__info li {
	font-size: 1.8rem
  }
}

@media screen and (max-width: 767px) {
  .p-partner__info li::before {
	content: "";
	position: relative;
	top: 3px;
	left: 0px;
	display: inline-block;
	width: 1px;
	height: 20px;
	margin-right: 12px;
	background-color: #c5c5c5
  }
}

.p-partner__info li span {
  font-size: 1.6rem;
  margin-left: 5px
}

@media screen and (max-width: 767px) {
  .p-partner__info li span {
	font-size: 1.2rem
  }
}

.p-partner__info li+li {
  position: relative
}

.p-partner__info li+li::before {
  content: "";
  position: absolute;
  top: 3px;
  left: -30px;
  display: inline-block;
  width: 1px;
  height: 20px;
  background-color: #c5c5c5
}

@media screen and (max-width: 1080px) {
  .p-partner__info li+li::before {
	top: -1px;
	left: -20px
  }
}

@media screen and (max-width: 767px) {
  .p-partner__info li+li::before {
	position: relative;
	top: 3px;
	left: 0;
	margin-right: 12px
  }
}

.p-company__application {
  padding: 16.5rem 0 15rem;
  background-color: #f0f0f0
}

@media screen and (max-width: 767px) {
  .p-company__application {
	padding: 5.5rem 0
  }
}

.p-company__application .c-page-sec-ttl {
  margin-bottom: 0
}

@media screen and (max-width: 767px) {
  .p-company__application .c-page-sec-ttl {
	width: calc(100% - 40px)
  }
}

.p-company__application .c-page-sec-ttl>p {
  font-weight: 300
}

.p-company__application .c-page-sec-ttl .main-title {
  margin-bottom: 6rem;
  font-size: 4rem;
  font-weight: 300;
  line-height: 1.8
}

@media screen and (max-width: 1080px) {
  .p-company__application .c-page-sec-ttl .main-title {
	font-size: 2.6rem
  }
}

@media screen and (max-width: 767px) {
  .p-company__application .c-page-sec-ttl .main-title {
	margin-bottom: 4.7rem
  }
}

@media screen and (max-width: 767px) {

  .p-company__application .c-page-sec-ttl .main-title,
  .p-company__application .c-page-sec-ttl .sub-title,
  .p-company__application .c-page-sec-ttl>p {
	margin-left: 12px
  }
}

.p-company__application-form {
  margin: 4.8rem 0 4rem;
  padding: 5rem 3rem;
  text-align: center;
  background-color: #fff
}

@media screen and (max-width: 767px) {
  .p-company__application-form {
	margin: 5rem 0 2rem;
	padding: 3rem 1rem
  }
}

@media screen and (max-width: 1080px) {
  .p-company__application-form>iframe {
	width: 100%
  }
}

.p-company__application-tel {
  padding: 5.7rem 3rem 7.8rem;
  text-align: center;
  background-color: #fff
}

@media screen and (max-width: 767px) {
  .p-company__application-tel {
	padding: 2.4rem 3rem 3.2rem
  }
}

.p-company__application-tel h3 {
  margin-bottom: 8.4rem;
  font-size: 2.2rem
}

@media screen and (max-width: 767px) {
  .p-company__application-tel h3 {
	width: fit-content;
	margin: 0 auto 3.2rem;
	padding: 0 2rem 2rem;
	font-size: 1.6rem;
	border-bottom: 1px solid #ddd
  }
}

.p-company__application-tel .p-company__application-tel-number {
  margin-bottom: 3.5rem;
  font-size: 5rem;
  font-weight: 300;
  line-height: 1
}

@media screen and (max-width: 767px) {
  .p-company__application-tel .p-company__application-tel-number {
	margin-bottom: 2.5rem;
	font-size: 3.6rem;
	line-height: 1.3
  }
}

@media screen and (max-width: 767px) {
  .p-company__application-tel .p-company__application-tel-number span {
	font-size: 2.4rem
  }
}

@media screen and (max-width: 767px) {
  .p-company__application-tel .p-company__application-tel-number span span {
	display: block;
	font-size: 0
  }
}

.p-company__application-tel .p-company__application-tel-number a {
  position: relative;
  pointer-events: none
}

.p-company__application-tel .p-company__application-tel-number a::before {
  content: "";
  display: none;
  position: absolute;
  bottom: 2.1rem;
  width: 100%;
  height: 1px;
  background-color: #a3a3a3
}

@media screen and (max-width: 767px) {
  .p-company__application-tel .p-company__application-tel-number a::before {
	display: inline-block
  }
}

@media screen and (max-width: 767px) {
  .p-company__application-tel .p-company__application-tel-number a {
	pointer-events: initial
  }
}

.p-company__application-tel .p-company__application-tel-info {
  font-weight: 300;
  line-height: 2.2
}

@media screen and (max-width: 767px) {
  .p-company__application-tel .p-company__application-tel-info {
	width: 25rem;
	margin: 0 auto;
	text-align: left
  }
}

.p-privacy {
  max-width: 105rem;
  margin: 5rem auto 15rem
}

@media screen and (max-width: 767px) {
  .p-privacy {
	margin: 3rem auto 7rem
  }
}

.p-privacy p {
  padding: 0 3.2rem;
  font-size: 1.8rem;
  font-weight: 300;
  line-height: 2.2
}

@media screen and (max-width: 767px) {
  .p-privacy p {
	font-size: 1.6rem;
	line-height: 2
  }
}

.p-privacy p+p {
  margin-top: 4.5rem
}

.p-privacy p br:first-child {
  display: block;
  content: "";
  margin: 5px 0
}

.p-professionals__team {
  margin-top: 22rem
}

@media screen and (max-width: 1080px) {
  .p-professionals__team {
	margin-top: 10rem
  }
}

.p-professionals__team-img {
  width: 66%;
  max-width: 95rem;
  margin: 0 auto 21rem
}

.p-professionals__team-img img {
  width: 100%
}

@media screen and (max-width: 1080px) {
  .p-professionals__team-img {
	display: none
  }
}

.p-professionals__team-spImg {
  display: none
}

@media screen and (max-width: 1080px) {
  .p-professionals__team-spImg {
	display: block
  }
}

.p-professionals__team-spImg-ul {
  margin-left: 3rem
}

.p-professionals__team-spImg-li {
  position: relative;
  display: flex;
  align-items: flex-start;
  padding-bottom: 6rem
}

.p-professionals__team-spImg-li::before {
  position: absolute;
  top: 0;
  left: 0;
  width: 1px;
  height: 0%;
  content: "";
  background-color: #c5c5c5;
  transition: height .5s linear
}

.p-professionals__team-spImg-li.is-active::before {
  height: 100%
}

.p-professionals__team-spImg-li:first-child::before {
  top: 5px
}

.p-professionals__team-spImg-li:last-child::before {
  height: 10px
}

.p-professionals__team-spImg-li-number {
  position: relative;
  padding-left: 17px;
  margin-right: 2rem;
  font-size: 2rem;
  font-weight: 500;
  line-height: 1em;
  letter-spacing: .02em
}

.p-professionals__team-spImg-li-number::before {
  position: absolute;
  top: 50%;
  left: -6px;
  width: 12px;
  height: 12px;
  content: "";
  background-color: #505050;
  border-radius: 50%;
  transform: translateY(-50%)
}

.p-professionals__team-spImg-li-textWrp img {
  margin-bottom: 2rem
}

.p-professionals__team-spImg-li-textWrp h3 {
  margin-bottom: 12px;
  font-size: 1.8rem;
  font-weight: 500;
  line-height: 1.6em;
  color: #505050
}

.p-professionals__team-spImg-li-textWrp ul {
  font-size: 1.4rem;
  font-weight: 300;
  line-height: 1.8em;
  color: #505050
}

.p-professionals__commitment {
  padding-top: 15rem;
  padding-bottom: 15rem;
  color: #fff;
  background-color: #5f5f65
}

@media screen and (max-width: 1080px) {
  .p-professionals__commitment {
	padding: 8rem 0 5rem
  }
}

.p-professionals__commitment-wrp {
  width: 80%;
  max-width: 105rem;
  margin: 0 auto
}

.p-professionals__commitment-li {
  display: flex;
  padding: 6rem 3rem 4.2rem;
  border-top: 1px solid #9a9a9a
}

@media screen and (max-width: 1080px) {
  .p-professionals__commitment-li {
	display: block;
	padding: 4.8rem 0
  }
}

.p-professionals__commitment-li .number {
  position: relative;
  flex-shrink: 0;
  width: 14.8rem;
  height: 14.8rem;
  margin-right: 5rem;
  border: 1px solid #c5c5c5;
  border-radius: 50%
}

.p-professionals__commitment-li .number span {
  position: absolute;
  top: 50%;
  left: 50%;
  font-size: 2.2rem;
  line-height: 100%;
  letter-spacing: .02em;
  transform: translate(-50%, -50%)
}

@media screen and (max-width: 1080px) {
  .p-professionals__commitment-li .number {
	width: 77px;
	height: 77px
  }

  .p-professionals__commitment-li .number span {
	font-size: 1.4rem
  }
}

.p-professionals__commitment-li .text-wrp .title {
  margin-bottom: 2.2rem;
  font-size: 2.4rem;
  font-weight: 500;
  line-height: 180%;
  color: #ddd
}

.p-professionals__commitment-li .text-wrp .explan {
  font-size: 1.6rem;
  font-weight: 300;
  line-height: 200%;
  color: #c5c5c5
}

@media screen and (max-width: 1080px) {
  .p-professionals__commitment-li .text-wrp {
	margin-top: -64px
  }

  .p-professionals__commitment-li .text-wrp .title {
	height: 6rem;
	margin-bottom: 4rem;
	margin-left: 10rem;
	font-size: 1.6rem
  }

  .p-professionals__commitment-li .text-wrp .explan {
	font-size: 1.4rem
  }
}

.p-professionals__commitment-li:last-child {
  border-bottom: 1px solid #9a9a9a
}

@media screen and (max-width: 1080px) {

  .p-professionals__commitment-li:first-child .text-wrp .title,
  .p-professionals__commitment-li:nth-child(2) .text-wrp .title,
  .p-professionals__commitment-li:nth-child(3) .text-wrp .title,
  .p-professionals__commitment-li:nth-child(4) .text-wrp .title,
  .p-professionals__commitment-li:nth-child(5) .text-wrp .title {
	line-height: 53px
  }
}

@media screen and (max-width: 767px) {

  .p-professionals__commitment-li:first-child .text-wrp .title,
  .p-professionals__commitment-li:nth-child(2) .text-wrp .title {
	line-height: 180%
  }
}

.p-quality__long-term {
  padding-top: 45rem;
  padding-bottom: 9rem;
  margin-top: -20rem;
  color: #fff;
  background-color: #2d2d2d
}

@media screen and (max-width: 1080px) {
  .p-quality__long-term {
	padding-top: 8rem;
	margin-top: 8rem
  }
}

.p-quality__long-term-imgWrp.vpc {
  position: relative
}

.p-quality__long-term-imgWrp.vpc video {
  display: block;
  width: 100%;
  height: 100%
}

.p-quality__long-term-imgWrp.vpc img {
  position: absolute;
  top: 50%;
  left: 50%;
  z-index: 2;
  width: 50%;
  aspect-ratio: 759/726;
  content: "";
  transform: translate(-50%, -50%)
}

.p-quality__long-term-imgWrp.vpc::after {
  position: absolute;
  top: 0;
  left: 0;
  z-index: 1;
  width: 100%;
  height: 100%;
  content: "";
  background-color: rgba(0, 0, 0, .6)
}

.p-quality__long-term-spWrp-inner {
  width: 78%;
  max-width: 35rem;
  margin: 0 auto
}

.p-quality__long-term-spWrp-inner .list-item {
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding: 24px 48px;
  margin-bottom: 14px;
  color: #2d2d2d;
  background-color: #f0f0f0;
  border-radius: 10rem
}

.p-quality__long-term-spWrp-inner .list-item__left .sub-title {
  font-size: 1.2rem;
  font-weight: 300;
  line-height: 1.6em
}

.p-quality__long-term-spWrp-inner .list-item__left .main-title {
  font-size: 1.8rem;
  font-weight: 300;
  line-height: 1.2em
}

.p-quality__long-term-spWrp-inner .list-item__right {
  text-align: center
}

.p-quality__long-term-spWrp-inner .list-item__right .sub-item {
  font-size: 1.4rem;
  font-weight: 300;
  line-height: 1.3em
}

.p-quality__long-term-spWrp-inner .list-item__right .main-item {
  font-size: 4.2rem;
  font-weight: 500;
  line-height: 1em
}

.p-quality__long-term-spMovie {
  position: relative;
  margin-top: 56px
}

.p-quality__long-term-spMovie::after {
  position: absolute;
  top: 0;
  left: 0;
  z-index: 1;
  width: 100%;
  height: 100%;
  content: "";
  background-color: rgba(0, 0, 0, .2)
}

.p-quality__long-term-spMovie video {
  display: block;
  width: 100%;
  height: 100%
}

.p-quality__resistance {
  padding-top: 15rem;
  padding-bottom: 16rem
}

.p-quality__resistance .c-page-sec-ttl__wrp .explan {
  margin-top: 12rem
}

@media screen and (max-width: 1080px) {
  .p-quality__resistance .c-page-sec-ttl__wrp .explan {
	margin-top: 4rem
  }
}

.p-quality__resistance-graph {
  position: relative;
  width: 80%;
  max-width: 105rem;
  margin: 0 auto
}

.p-quality__resistance-graph img {
  width: 100%
}

@media screen and (max-width: 1080px) {
  .p-quality__resistance-graph .c-toggle-wrp {
	width: 95%
  }
}

.p-quality__resistance-graph-ul {
  display: flex;
  gap: 0 1rem;
  margin-right: 4rem
}

.p-quality__resistance-graph-li {
  width: 28.5%;
  padding: 6rem 3.5rem 4rem;
  color: #505050;
  background-color: #f0f0f0;
  border-radius: 5px
}

.p-quality__resistance-graph-li .top-wrp {
  margin-bottom: 5rem;
  text-align: center;
  border-bottom: 1px solid #c5c5c5
}

.p-quality__resistance-graph-li .top-wrp .label {
  margin-bottom: 1.7rem;
  font-size: 1.4rem;
  font-weight: 300;
  line-height: 1em
}

.p-quality__resistance-graph-li .top-wrp .number {
  margin-bottom: 6rem;
  font-size: 8rem;
  font-weight: 300;
  line-height: 1em
}

.p-quality__resistance-graph-li .bottom-wrp .main-text {
  margin-bottom: 3rem;
  font-size: 1.5rem;
  font-weight: 500
}

.p-quality__resistance-graph-li .bottom-wrp .sub-text {
  font-size: 1.4rem;
  font-weight: 300;
  color: #2d2d2d
}

.p-quality__resistance-graph-li.select-item {
  width: 43%;
  color: #fff;
  background-color: #9a9a9a
}

.p-quality__resistance-graph-li.select-item .bottom-wrp .sub-text {
  color: #fff
}

.p-quality__resistance-graph-logo {
  position: absolute;
  top: -4rem;
  right: 0;
  width: 17rem;
  height: 17rem
}

.p-quality__resistance-graph-attention {
  margin-top: 3rem;
  font-size: 1.3rem;
  font-weight: 300;
  line-height: 2.2em
}

.p-quality__structure {
  padding-top: 15rem;
  padding-bottom: 24rem;
  color: #fff;
  background-color: #5f5f65
}

.p-quality__structure h2 {
  margin-bottom: 15rem;
  font-size: 3rem;
  font-weight: 500;
  line-height: 1.8em;
  text-align: center
}

@media screen and (max-width: 1080px) {
  .p-quality__structure {
	padding-top: 6.5rem;
	padding-bottom: 8rem
  }

  .p-quality__structure h2 {
	margin-bottom: 4rem;
	font-size: 1.6rem
  }
}

.p-quality__structure-wrp {
  display: flex;
  align-items: center;
  width: 83%;
  max-width: 128rem;
  margin: 0 auto 15rem
}

@media screen and (max-width: 1080px) {
  .p-quality__structure-wrp {
	display: block;
	margin-bottom: 8rem
  }
}

.p-quality__structure-main-img {
  width: 58%;
  aspect-ratio: 131/100;
  background-image: url(../images/quality-structure.fdb466811746f6f8777a.png), url(../images/quality-structure-01.e42f7fb41be39feb2b6d.jpg), url(../images/quality-structure-02.4495fbe0ace5de22c48c.jpg), url(../images/quality-structure-03.b17de10c9c2f87350845.jpg), url(../images/quality-structure-04.7ebbc80720e055a73b15.jpg), url(../images/quality-structure-05.3e0b3439062ecb62bab8.jpg), url(../images/quality-structure-06.f0cf8a2683fb2d6f2c35.jpg);
  background-repeat: no-repeat;
  background-size: contain, 0, 0, 0, 0, 0, 0
}

@media screen and (max-width: 1080px) {
  .p-quality__structure-main-img {
	width: 100%;
	aspect-ratio: 295/226;
	margin-top: 3rem;
	margin-bottom: 3rem;
	background-size: cover, 0, 0, 0, 0, 0, 0
  }
}

.p-quality__structure-main-img.structure1 {
  background-image: url(../images/quality-structure-01.e42f7fb41be39feb2b6d.jpg)
}

.p-quality__structure-main-img.structure2 {
  background-image: url(../images/quality-structure-02.4495fbe0ace5de22c48c.jpg)
}

.p-quality__structure-main-img.structure3 {
  background-image: url(../images/quality-structure-03.b17de10c9c2f87350845.jpg)
}

.p-quality__structure-main-img.structure4 {
  background-image: url(../images/quality-structure-04.7ebbc80720e055a73b15.jpg)
}

.p-quality__structure-main-img.structure5 {
  background-image: url(../images/quality-structure-05.3e0b3439062ecb62bab8.jpg)
}

.p-quality__structure-main-img.structure6 {
  background-image: url(../images/quality-structure-06.f0cf8a2683fb2d6f2c35.jpg)
}

.p-quality__structure-ul {
  width: 42%;
  padding-left: 7rem
}

@media screen and (max-width: 1080px) {
  .p-quality__structure-ul {
	width: 100%;
	padding-left: 0
  }
}

.p-quality__structure-li {
  display: flex;
  align-items: center;
  padding-bottom: 4rem
}

.p-quality__structure-li:last-child {
  padding-bottom: 0
}

.p-quality__structure-li .number {
  position: relative;
  width: 5rem;
  height: 5rem;
  margin-right: 2.3rem;
  border: 1px solid #7b7b7b;
  border-radius: 50%
}

.p-quality__structure-li .number span {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%)
}

.p-quality__structure-li:hover .number {
  color: #5f5f65;
  background-color: #f0f0f0
}

.p-quality__structure-li .explan {
  font-size: 2rem;
  font-weight: 300;
  line-height: 1.8em
}

.p-quality__structure-li-sp {
  margin-bottom: 2rem
}

.p-quality__structure-li-sp .toggle-btn {
  display: flex;
  align-items: center
}

.p-quality__structure-li-sp .toggle-btn .number {
  position: relative;
  width: 4rem;
  height: 4rem;
  margin-right: 1rem;
  border: 1px solid #7b7b7b;
  border-radius: 50%
}

.p-quality__structure-li-sp .toggle-btn .number span {
  position: absolute;
  top: 50%;
  left: 50%;
  font-size: 1.2rem;
  transform: translate(-50%, -50%)
}

.p-quality__structure-li-sp .toggle-btn .explan {
  font-size: 1.4rem;
  font-weight: 300;
  line-height: 1.8em
}

.p-quality__structure-li-sp .toggle-btn .arrow {
  width: 8px;
  height: 8px;
  margin-left: 1rem;
  border-right: 1px solid #a3a3a3;
  border-bottom: 1px solid #a3a3a3;
  transform: translateY(-2px) rotate(45deg)
}

.p-quality__structure-li-sp[data-view=open] .number {
  background-color: #fff
}

.p-quality__structure-li-sp[data-view=open] .number span {
  color: #5f5f65
}

.p-quality__structure-li-sp[data-view=open] .arrow {
  transform: translateY(2px) rotate(-135deg)
}

.p-quality__structure-explan {
  width: 65%;
  max-width: 88rem;
  margin: 0 auto 10rem;
  font-size: 1.6rem;
  font-weight: 300;
  line-height: 2.1em
}

@media screen and (max-width: 1080px) {
  .p-quality__structure-explan {
	width: 80%;
	margin-bottom: 7rem
  }
}

.p-quality__structure-method {
  position: relative;
  width: 65%;
  max-width: 88rem;
  margin: 0 auto
}

.p-quality__structure-method>div {
  aspect-ratio: 16/9
}

.p-quality__structure-method>div iframe {
  width: 100%;
  height: 100%
}

.p-quality__structure-method .sub-title {
  position: absolute;
  top: 0;
  right: -4rem;
  font-size: 1.6rem;
  color: #c5c5c5;
  letter-spacing: .02em;
  writing-mode: vertical-rl
}

@media screen and (max-width: 1080px) {
  .p-quality__structure-method {
	width: 85%
  }

  .p-quality__structure-method .sub-title {
	position: relative;
	right: 0;
	margin-top: 1.8rem;
	line-height: 1em;
	text-align: center;
	writing-mode: horizontal-tb
  }
}

.p-quality__durability {
  padding-top: 13.5rem;
  padding-bottom: 27rem
}

@media screen and (max-width: 1080px) {
  .p-quality__durability {
	padding-top: 8rem;
	padding-bottom: 14rem
  }
}

.p-quality__durability-wrp {
  width: 80%;
  max-width: 105rem;
  margin: 0 auto
}

.p-quality__durability-li {
  display: flex;
  align-items: center;
  justify-content: space-between
}

@media screen and (max-width: 1080px) {
  .p-quality__durability-li {
	flex-direction: column-reverse
  }
}

.p-quality__durability-li>div:first-child {
  width: 42%
}

.p-quality__durability-li>div:last-child {
  width: 50%
}

@media screen and (max-width: 1080px) {
  .p-quality__durability-li>div:first-child {
	width: 100%
  }

  .p-quality__durability-li>div:last-child {
	width: 100%
  }
}

.p-quality__durability-li:last-child {
  flex-direction: row-reverse;
  margin-top: 16rem
}

.p-quality__durability-li:last-child>div:first-child {
  width: 42%;
  margin-top: 5rem
}

.p-quality__durability-li:last-child>div:last-child {
  width: 48%
}

@media screen and (max-width: 1080px) {
  .p-quality__durability-li:last-child>div:first-child {
	width: 100%;
	margin-top: 0
  }

  .p-quality__durability-li:last-child>div:last-child {
	width: 100%
  }
}

@media screen and (max-width: 1080px) {
  .p-quality__durability-li:last-child {
	flex-direction: column-reverse;
	margin-top: 7rem
  }
}

.p-quality__durability-li-text h3 {
  margin-bottom: 5.2rem
}

@media screen and (max-width: 1080px) {
  .p-quality__durability-li-text h3 {
	display: flex;
	align-items: center;
	margin-bottom: 2rem
  }
}

.p-quality__durability-li-text h3 .number {
  padding-right: max(2.5vw, 2rem);
  font-size: 1.8rem;
  line-height: 1em;
  color: #9a9a9a;
  letter-spacing: .02em
}

@media screen and (max-width: 1080px) {
  .p-quality__durability-li-text h3 .number {
	line-height: 3rem
  }
}

.p-quality__durability-li-text h3 .title {
  padding-left: max(2.7vw, 2.5rem);
  font-size: 2rem;
  font-weight: 500;
  line-height: 1.6em;
  color: #505050;
  border-left: 1px solid #c5c5c5
}

@media screen and (max-width: 1080px) {
  .p-quality__durability-li-text h3 .title {
	font-size: 1.8rem;
	line-height: 3rem
  }
}

.p-quality__durability-li-text .explan {
  font-size: 1.6rem;
  font-weight: 300;
  line-height: 2.1em;
  color: #505050;
  text-align: justify
}

@media screen and (max-width: 1080px) {
  .p-quality__durability-li-text .explan {
	font-size: 1.4rem
  }
}

.p-quality__durability-li-img img {
  width: 100%
}

@media screen and (max-width: 1080px) {
  .p-quality__durability-li-img {
	margin-bottom: 3rem
  }
}

.p-quality__comfort {
  padding-top: 19rem;
  padding-bottom: 14rem;
  background-color: #f0f0f0
}

@media screen and (max-width: 1080px) {
  .p-quality__comfort {
	padding-top: 7rem;
	padding-bottom: 5.8rem
  }
}

.p-quality__comfort-secition {
  width: 80%;
  max-width: 105rem;
  margin: 0 auto 16rem
}

.p-quality__comfort-secition--sp img {
  width: 100%
}

.p-quality__comfort-graph {
  width: 85%;
  max-width: 115rem;
  margin: 0 auto 10rem
}

.p-quality__comfort-graph.last-graph {
  margin-bottom: 4rem
}

@media screen and (max-width: 1080px) {
  .p-quality__comfort-graph {
	width: 92%;
	margin-bottom: 4rem
  }

  .p-quality__comfort-graph img {
	width: 100%
  }

  .p-quality__comfort-graph.last-graph {
	margin-bottom: 2rem
  }
}

.p-quality__comfort-attention {
  width: 85%;
  max-width: 115rem;
  margin: 0 auto;
  font-size: 1.2rem;
  font-weight: 300;
  line-height: 2.2em;
  color: #505050
}

.p-series .c-page-fv .list-item li {
  margin-bottom: 2.8rem
}

@media screen and (max-width: 1080px) {
  .p-series .c-page-fv .list-item li {
	margin-bottom: 1.6rem
  }
}

.p-series-c-sec {
  padding: 22rem 0
}

.p-series-c-sec[data-color=black] {
  color: #f0f0f0;
  background-color: #5f5f65
}

.p-series-c-sec[data-color=black] .c-page-sec-ttl .sub-title {
  color: #c5c5c5
}

.p-series-c-sec[data-color=black] .c-page-sec-ttl .explan {
  color: #ddd
}

@media screen and (max-width: 1080px) {
  .p-series-c-sec {
	padding: 10rem 0
  }
}

.p-series-c-sec__graph {
  display: flex;
  align-items: flex-start;
  width: 77%;
  max-width: 100rem;
  margin: 0 auto 16rem
}

@media screen and (max-width: 1080px) {
  .p-series-c-sec__graph {
	display: block;
	width: 80%;
	margin-bottom: 8.5rem
  }
}

.p-series-c-sec__graph-icon {
  position: relative;
  width: 43%;
  aspect-ratio: 1/1;
  margin-right: 6rem;
  background-color: #f0f0f0;
  border-radius: 50%
}

.p-series-c-sec__graph-icon h3 {
  position: absolute;
  top: 50%;
  left: 50%;
  opacity: 0;
  transition: opacity 1s linear;
  transform: translate(-50%, -50%)
}

.p-series-c-sec__graph-icon h3.is-active {
  opacity: 1
}

@media screen and (max-width: 1080px) {
  .p-series-c-sec__graph-icon {
	width: 100%;
	aspect-ratio: 31/16;
	border-radius: 5px
  }
}

@media screen and (max-width: 1080px) {
  .p-series-c-sec.clasia .p-series-c-sec__graph-icon img {
	width: 105px
  }
}

.p-series-c-sec.select .p-series-c-sec__graph-icon {
  background-color: #ddd
}

.p-series-c-sec.select .p-series-c-sec__graph-icon img {
  width: 140px
}

@media screen and (max-width: 1080px) {
  .p-series-c-sec.select .p-series-c-sec__graph-icon img {
	width: 88px
  }
}

@media screen and (max-width: 1080px) {
  .p-series-c-sec.zeh-select .p-series-c-sec__graph-icon img {
	width: 125px
  }
}

.p-series-c-sec__graph-ul {
  margin-top: min(8.3vw, 12rem)
}

@media screen and (max-width: 1080px) {
  .p-series-c-sec__graph-ul {
	padding-right: 3rem
  }
}

.p-series-c-sec__graph-li {
  position: relative;
  height: 7rem;
  padding-right: 20px;
  padding-left: 40px;
  font-size: 1.8rem;
  font-weight: 300;
  line-height: 7rem;
  border-bottom: 1px solid #e6e6e6
}

@media screen and (max-width: 1080px) {
  .p-series-c-sec__graph-li {
	height: auto;
	padding: 15px 5px 15px 35px;
	font-size: 1.4rem;
	line-height: 1.6em
  }
}

.p-series-c-sec__graph-li::before {
  position: absolute;
  top: 50%;
  left: 15px;
  width: 10px;
  height: 10px;
  content: "";
  background-color: #e6e6e6;
  border-radius: 50%;
  transform: translateY(-50%)
}

@media screen and (max-width: 1080px) {
  .p-series-c-sec__graph-li::before {
	left: 12px;
	width: 8px;
	height: 8px
  }
}

.p-series-c-sec__graph-li:last-child {
  border: none
}

.p-series-c-sec[data-color=black] .p-series-c-sec__graph-li {
  border-color: #77777c
}

.p-series-c-sec[data-color=black] .p-series-c-sec__graph-li::before {
  background-color: #77777c
}

.p-series-c-sec__feature {
  width: 75%;
  max-width: 950px;
  margin: 0 auto
}

@media screen and (max-width: 1080px) {
  .p-series-c-sec__feature {
	width: 100%
  }
}

.p-series-c-sec__feature-li {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  margin-bottom: 13rem
}

@media screen and (max-width: 1080px) {
  .p-series-c-sec__feature-li {
	display: block;
	margin-bottom: 9rem
  }
}

.p-series-c-sec__feature-li:last-child {
  margin-bottom: 0
}

.p-series-c-sec__feature-li .img-item {
  width: 55.7%
}

@media screen and (max-width: 1080px) {
  .p-series-c-sec__feature-li .img-item {
	position: relative;
	width: 100%;
	margin-bottom: 3.5rem
  }

  .p-series-c-sec__feature-li .img-item .sp-sub-title {
	position: absolute;
	top: 0;
	font-size: 2rem;
	line-height: 1em;
	color: #9a9a9a;
	letter-spacing: .02em
  }
}

.p-series-c-sec__feature-li .text-wrp {
  width: 35.8%
}

@media screen and (max-width: 1080px) {
  .p-series-c-sec__feature-li .text-wrp {
	width: 100%
  }
}

.p-series-c-sec__feature-li .sub-title {
  margin-bottom: 5rem;
  font-size: 2rem;
  font-weight: 500;
  line-height: 1em;
  color: #a3a3a3;
  letter-spacing: .02em
}

.p-series-c-sec__feature-li .title {
  margin-bottom: 5rem;
  font-size: 2.2rem;
  font-weight: 500;
  line-height: 1.6em
}

@media screen and (max-width: 1080px) {
  .p-series-c-sec__feature-li .title {
	margin-bottom: 2rem;
	font-size: 2rem
  }
}

.p-series-c-sec__feature-li .explan {
  font-size: 1.6rem;
  font-weight: 300;
  line-height: 2.2em;
  color: #505050;
  text-align: justify
}

.p-series-c-sec[data-color=black] .p-series-c-sec__feature-li .explan {
  color: #ddd
}

@media screen and (max-width: 1080px) {
  .p-series-c-sec__feature-li .explan {
	font-size: 1.4rem
  }
}

@media screen and (max-width: 1080px) {
  .p-series-c-sec__feature-li:nth-child(odd) {
	margin-right: 17%
  }

  .p-series-c-sec__feature-li:nth-child(odd) .text-wrp {
	padding-left: 2.4rem
  }

  .p-series-c-sec__feature-li:nth-child(odd) .img-item .sp-sub-title {
	right: -10.5%;
	transform: translateX(50%)
  }
}

@media screen and (max-width: 1080px) {
  .p-series-c-sec__feature-li:nth-child(even) {
	margin-left: 17%
  }

  .p-series-c-sec__feature-li:nth-child(even) .text-wrp {
	padding-right: 2.4rem
  }

  .p-series-c-sec__feature-li:nth-child(even) .img-item .sp-sub-title {
	left: -10.5%;
	transform: translateX(-50%)
  }
}

.p-series__zeh {
  margin-bottom: 16rem
}

@media screen and (max-width: 1080px) {
  .p-series__zeh {
	margin-bottom: 0
  }
}

.p-series__zeh-inner {
  width: 77%;
  padding: 5.9vw 5.55vw 4.8vw;
  margin: 0 auto;
  text-align: justify;
  border: 1px solid #c5c5c5;
  border-radius: 10px
}

@media screen and (max-width: 1080px) {
  .p-series__zeh-inner {
	width: 92%;
	padding: 4.5rem 2.5rem
  }
}

.p-series__zeh-about {
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding: 0 2.5rem 6.5rem;
  margin-bottom: 6.5rem;
  border-bottom: 1px solid #c5c5c5
}

@media screen and (max-width: 1080px) {
  .p-series__zeh-about {
	display: block;
	padding: 0 0 3.2rem
  }
}

.p-series__zeh-about .img-item {
  display: block;
  width: 20rem;
  margin-right: 6rem
}

@media screen and (max-width: 1080px) {
  .p-series__zeh-about .img-item {
	width: 15rem;
	margin: 0 auto 2.7rem
  }
}

.p-series__zeh-about .text-wrp .title {
  margin-bottom: 2rem;
  font-size: 2.2rem;
  font-weight: 500;
  line-height: 1.6em;
  color: #2d2d2d
}

@media screen and (max-width: 1080px) {
  .p-series__zeh-about .text-wrp .title {
	margin-bottom: 3.2rem;
	text-align: center
  }
}

.p-series__zeh-about .text-wrp .explan {
  font-size: 1.6rem;
  font-weight: 300;
  line-height: 2.2em;
  color: #505050
}

.p-series__zeh-attention {
  padding: 0 2.5rem;
  color: #505050
}

@media screen and (max-width: 1080px) {
  .p-series__zeh-attention {
	padding: 0
  }
}

.p-series__zeh-attention .title {
  margin-bottom: 3.5rem;
  font-size: 1.6rem;
  font-weight: 500;
  line-height: 2.2em
}

.p-series__zeh-attention .explan {
  font-size: 1.4rem;
  font-weight: 300;
  line-height: 2.1em
}

@media screen and (max-width: 1080px) {
  .p-series__zeh-attention .explan {
	font-size: 1.2rem
  }
}

.p-series__comfort {
  padding-top: 17rem;
  padding-bottom: 11.6rem;
  background-color: #f0f0f0
}

@media screen and (max-width: 1080px) {
  .p-series__comfort {
	padding-top: 5.6rem;
	padding-bottom: 4.6rem
  }

  .p-series__comfort .c-page-sec-ttl__wrp .main-title .ttl-wrp {
	display: inline
  }

  .p-series__comfort .c-page-sec-ttl__wrp .main-title .ttl-wrp span {
	display: inline;
	line-height: 1.8em
  }
}

.p-series__comfort-wrp {
  width: 85%;
  max-width: 1115px;
  padding: 10rem 6% 9.5rem 8%;
  margin: 0 auto;
  border: 1px solid #c5c5c5;
  border-radius: 1rem
}

@media screen and (max-width: 1080px) {
  .p-series__comfort-wrp {
	width: 90%;
	padding: 50px 20px 20px
  }
}

.p-series__comfort-wrp-ttl {
  width: fit-content;
  margin: 0 auto
}

.p-series__comfort-wrp-ttl span {
  display: block;
  font-size: 15px;
  font-weight: 500;
  line-height: 1em;
  color: #505050;
  text-align: center
}

.p-series__comfort-wrp-ttl img {
  display: block;
  width: 296px;
  margin-top: 20px
}

@media screen and (max-width: 1080px) {
  .p-series__comfort-wrp-ttl span {
	font-size: 14px
  }

  .p-series__comfort-wrp-ttl img {
	width: 67%;
	margin: 16px auto 0
  }
}

.p-series__comfort-wrp-contents1 {
  display: grid;
  grid-template-columns: 22fr 25fr;
  align-items: end;
  margin-top: 120px
}

.p-series__comfort-wrp-contents1 ul {
  margin-bottom: 5rem
}

.p-series__comfort-wrp-contents1 ul li {
  position: relative;
  padding-left: 25px;
  font-size: 20px;
  font-weight: 500;
  line-height: 2em
}

.p-series__comfort-wrp-contents1 ul li:not(:first-child) {
  margin-top: 25px
}

.p-series__comfort-wrp-contents1 ul li::before {
  position: absolute;
  top: 50%;
  left: 0;
  width: 10px;
  height: 10px;
  content: "";
  background-color: #a3a3a3;
  border-radius: 50%;
  transform: translate(0, -50%)
}

@media screen and (max-width: 1080px) {
  .p-series__comfort-wrp-contents1 {
	display: block;
	width: fit-content;
	max-width: 600px;
	margin: 60px auto 0
  }

  .p-series__comfort-wrp-contents1 ul {
	width: fit-content;
	margin: 0 auto 5rem
  }

  .p-series__comfort-wrp-contents1 ul li {
	padding-left: 14px;
	font-size: 14px
  }

  .p-series__comfort-wrp-contents1 ul li:not(:first-child) {
	margin-top: 8px
  }

  .p-series__comfort-wrp-contents1 ul li::before {
	width: 6px;
	height: 6px
  }

  .p-series__comfort-wrp-contents1 img {
	width: 100%
  }
}

.p-series__comfort-wrp-contents2 {
  display: grid;
  grid-template-columns: 9fr 8fr;
  column-gap: 7%;
  align-items: end;
  margin-top: 14rem
}

.p-series__comfort-wrp-contents2 .text-wrp {
  margin-bottom: 12px
}

.p-series__comfort-wrp-contents2 .text-wrp h3 {
  font-size: 22px;
  font-weight: 700;
  line-height: 2em
}

.p-series__comfort-wrp-contents2 .text-wrp p {
  margin-top: 32px;
  font-size: 18px;
  font-weight: 500;
  line-height: 2em
}

@media screen and (max-width: 1080px) {
  .p-series__comfort-wrp-contents2 {
	grid-template-columns: 1fr;
	width: fit-content;
	max-width: 600px;
	margin: 70px auto 0
  }

  .p-series__comfort-wrp-contents2 .img-wrp {
	order: 2;
	margin-top: 30px
  }

  .p-series__comfort-wrp-contents2 .text-wrp {
	order: 1
  }

  .p-series__comfort-wrp-contents2 .text-wrp h3 {
	font-size: 20px;
	line-height: 1.9em
  }

  .p-series__comfort-wrp-contents2 .text-wrp p {
	margin-top: 24px;
	font-size: 16px;
	line-height: 1.9em
  }

  .p-series__comfort-wrp-contents2 img {
	width: 100%
  }
}

.p-customer-wrp {
  margin-bottom: 14rem
}

@media screen and (max-width: 767px) {
  .p-customer-wrp {
	margin-bottom: 6rem
  }
}

.p-customer-text-wrp {
  width: 80%;
  max-width: 105rem;
  margin: 12.8rem auto 10rem;
  font-size: 1.6rem;
  font-weight: 300;
  line-height: 2.2em
}

@media screen and (max-width: 767px) {
  .p-customer-text-wrp {
	width: calc(100% - 6.4rem);
	margin: 2rem auto 0;
	line-height: 2em
  }
}

.p-customer-text-wrp a {
  text-decoration: underline
}

@media screen and (max-width: 767px) {
  .p-zeh .c-page-sec-ttl {
	width: 90%
  }
}

.p-zeh-about {
  display: grid;
  grid-template-columns: auto auto;
  column-gap: 77px;
  margin-top: 22rem;
  margin-bottom: 13rem
}

@media screen and (max-width: 1080px) {
  .p-zeh-about {
	margin-top: 12rem
  }
}

@media screen and (max-width: 767px) {
  .p-zeh-about {
	grid-template-columns: auto;
	row-gap: 30px;
	margin-top: 7.2rem;
	margin-bottom: 8rem
  }
}

.p-zeh-about .c-page-sec-ttl__wrp {
  display: block
}

.p-zeh-about__title .explan {
  width: 100%;
  margin-top: 5.2rem
}

.p-zeh-about__img {
  border-radius: 6px
}

.p-zeh-about__img img {
  width: 100%
}

.p-zeh-inner {
  padding: 100px 88px;
  margin-top: 11.5rem;
  border: 1px solid #c5c5c5;
  border-radius: 10px
}

@media screen and (max-width: 1080px) {
  .p-zeh-inner {
	padding: 80px 70px
  }
}

@media screen and (max-width: 767px) {
  .p-zeh-inner {
	padding: 40px 25px 60px;
	margin-top: 60px
  }
}

.p-zeh-inner.__zeh-goals {
  padding-bottom: 65px
}

@media screen and (max-width: 767px) {
  .p-zeh-inner.__zeh-goals {
	padding-bottom: 50px
  }
}

.p-zeh-inner-title {
  padding-bottom: 100px;
  text-align: center;
  border-bottom: 1px solid #c5c5c5
}

.p-zeh-inner-title h2 {
  font-size: 2.8rem;
  font-weight: 500;
  line-height: 1em
}

.p-zeh-inner-title p {
  margin-top: 11px;
  font-size: 1.6rem;
  font-weight: 300;
  line-height: 2.1em
}

@media screen and (max-width: 1080px) {
  .p-zeh-inner-title {
	padding-bottom: 70px
  }
}

@media screen and (max-width: 767px) {
  .p-zeh-inner-title {
	padding-bottom: 38px
  }

  .p-zeh-inner-title h2 {
	font-size: 2rem
  }
}

.p-zeh-inner.__zeh-goals .p-zeh-inner-title {
  padding-bottom: 70px
}

@media screen and (max-width: 767px) {
  .p-zeh-inner.__zeh-goals .p-zeh-inner-title {
	padding-bottom: 40px
  }

  .p-zeh-inner.__zeh-goals .p-zeh-inner-title h2 {
	line-height: 1.6em
  }

  .p-zeh-inner.__zeh-goals .p-zeh-inner-title p {
	margin-top: 10px;
	font-size: 1.4rem;
	line-height: 1.6em
  }
}

.p-zeh-inner__lists {
  margin-top: 100px
}

.p-zeh-inner__lists>li {
  display: grid;
  grid-template-columns: 27fr 58fr;
  column-gap: 50px
}

.p-zeh-inner__lists>li>img {
  width: 100%
}

.p-zeh-inner__lists>li+li {
  margin-top: 80px
}

@media screen and (max-width: 1080px) {
  .p-zeh-inner__lists {
	margin-top: 70px
  }

  .p-zeh-inner__lists>li {
	grid-template-columns: 35fr 50fr;
	column-gap: 40px
  }
}

@media screen and (max-width: 767px) {
  .p-zeh-inner__lists {
	margin-top: 40px
  }

  .p-zeh-inner__lists>li {
	grid-template-columns: auto;
	row-gap: 26px
  }

  .p-zeh-inner__lists>li img {
	order: 2
  }

  .p-zeh-inner__lists>li+li {
	padding-top: 40px;
	margin-top: 40px;
	border-top: 1px solid #c5c5c5
  }
}

.p-zeh-inner__item-explan h3 {
  margin-bottom: 2.4rem;
  font-size: 2.2rem;
  font-weight: 500;
  line-height: 1.6em
}

.p-zeh-inner__item-explan p {
  font-size: 1.6rem;
  font-weight: 300;
  line-height: 2.2em
}

@media screen and (max-width: 767px) {
  .p-zeh-inner__item-explan h3 {
	margin-bottom: 2.6rem;
	font-size: 1.8rem
  }

  .p-zeh-inner__item-explan p {
	line-height: 2em
  }
}

.p-zeh-inner-box {
  width: fit-content;
  margin-inline: auto
}

.p-zeh-inner__textLists {
  margin-top: 66px;
  font-size: 1.6rem;
  font-weight: 300;
  line-height: 1em
}

@media screen and (max-width: 767px) {
  .p-zeh-inner__textLists {
	margin-top: 54px;
	font-size: 1.4rem
  }
}

.p-zeh-inner__textList {
  display: flex;
  align-items: center
}

.p-zeh-inner__textList+li {
  margin-top: 26px
}

.p-zeh-inner__textList:last-of-type {
  margin-top: 50px
}

@media screen and (max-width: 767px) {
  .p-zeh-inner__textList:last-of-type {
	margin-top: 40px
  }
}

.p-zeh-inner__textList span {
  display: block
}

.p-zeh-inner__textList .__beside-line {
  width: 30px;
  height: 1px;
  margin-inline: 23px;
  border-top: 1px solid #c5c5c5
}

@media screen and (max-width: 767px) {
  .p-zeh-inner__textList .__beside-line {
	width: 16px;
	margin-inline: 8px
  }
}

.p-zeh-inner__textList .__vertical-line {
  width: 1px;
  height: 12px;
  margin-inline: 20px;
  border-left: 1px solid #c5c5c5
}

@media screen and (max-width: 767px) {
  .p-zeh-inner__textList .__vertical-line {
	margin-inline: 8px
  }
}

.p-zeh-goals-annotation {
  margin-top: 60px;
  font-size: 1.4rem;
  font-weight: 300;
  line-height: 2.1em
}

@media screen and (max-width: 767px) {
  .p-zeh-goals-annotation {
	margin-top: 40px;
	font-size: 1.2rem
  }
}

html {
  font-size: 62.5%
}

body {
  font-family: heisei-kaku-gothic-std, -apple-system, blinkmacsystemfont, "Helvetica Neue", "游ゴシック体", yugothic, "游ゴシック", "Yu Gothic", "ヒラギノ角ゴ ProN W3", hiragino kaku gothic pron, arial, "メイリオ", meiryo, sans-serif, sans-serif;
  font-size: clamp(1.4rem, 1.343rem + .29vw, 1.6rem);
  font-weight: 400;
  font-feature-settings: "palt";
  line-height: 1.75;
  color: #2d2d2d;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  text-size-adjust: 100%
}



body :is(h1, h2, h3, h4, h5, h6) {
  font-weight: 500
}

body a {
  color: inherit;
  text-decoration: none;
  text-underline-position: under;
  text-decoration-skip-ink: none
}

body ul,
body ol {
  list-style: none
}

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

body input,
body button,
body textarea,
body select {
  font-family: heisei-kaku-gothic-std, -apple-system, blinkmacsystemfont, "Helvetica Neue", "游ゴシック体", yugothic, "游ゴシック", "Yu Gothic", "ヒラギノ角ゴ ProN W3", hiragino kaku gothic pron, arial, "メイリオ", meiryo, sans-serif;
  font-size: inherit;
  color: inherit;
  appearance: none;
  background: none;
  border: none;
  border-radius: 0
}

body input [type=submit],
body button {
  cursor: pointer
}

body br[data-view=sp] {
  display: none
}

@media screen and (max-width: 767px) {
  body br[data-view=sp] {
	display: block
  }
}

/*! normalize.css v8.0.1 | MIT License | github.com/necolas/normalize.css */
html {
  line-height: 1.15;
  -webkit-text-size-adjust: 100%
}

body {
  margin: 0
}

main {
  display: block
}

h1 {
  font-size: 2em;
  margin: .67em 0
}

hr {
  box-sizing: content-box;
  height: 0;
  overflow: visible
}

pre {
  font-family: monospace, monospace;
  font-size: 1em
}

a {
  background-color: transparent
}

abbr[title] {
  border-bottom: none;
  text-decoration: underline;
  text-decoration: underline dotted
}

b,
strong {
  font-weight: bolder
}

code,
kbd,
samp {
  font-family: monospace, monospace;
  font-size: 1em
}

small {
  font-size: 80%
}

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

sub {
  bottom: -0.25em
}

sup {
  top: -0.5em
}

img {
  border-style: none
}

button,
input,
optgroup,
select,
textarea {
  font-family: inherit;
  font-size: 100%;
  line-height: 1.15;
  margin: 0
}

button,
input {
  overflow: visible
}

button,
select {
  text-transform: none
}

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

button::-moz-focus-inner,
[type=button]::-moz-focus-inner,
[type=reset]::-moz-focus-inner,
[type=submit]::-moz-focus-inner {
  border-style: none;
  padding: 0
}

button:-moz-focusring,
[type=button]:-moz-focusring,
[type=reset]:-moz-focusring,
[type=submit]:-moz-focusring {
  outline: 1px dotted ButtonText
}

fieldset {
  padding: .35em .75em .625em
}

legend {
  box-sizing: border-box;
  color: inherit;
  display: table;
  max-width: 100%;
  padding: 0;
  white-space: normal
}

progress {
  vertical-align: baseline
}

textarea {
  overflow: auto
}

[type=checkbox],
[type=radio] {
  box-sizing: border-box;
  padding: 0
}

[type=number]::-webkit-inner-spin-button,
[type=number]::-webkit-outer-spin-button {
  height: auto
}

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

[type=search]::-webkit-search-decoration {
  -webkit-appearance: none
}

::-webkit-file-upload-button {
  -webkit-appearance: button;
  font: inherit
}

details {
  display: block
}

summary {
  display: list-item
}

template {
  display: none
}

[hidden] {
  display: none
}

*:not(dialog),
*::before,
*::after {
  box-sizing: border-box;
  padding: 0;
  margin: 0
}

body main.e_c-main {
  padding-top: 0;
  margin-top: -58px
}

.e_p-front__bg-wrp {
  position: relative;
  width: 100%;
  height: 100vh
}

.e_p-front__bg-wrp video {
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: bottom;
  z-index: 0
}

.e_p-front__bg-wrp::after {
  content: "";
  position: absolute;
  inset: 0;
  opacity: .2;
  background-color: #3d3d3d;
  mix-blend-mode: multiply;
  pointer-events: none;
  z-index: 1
}

.e_p-front__first-copy {
  position: absolute;
  top: 58%;
  left: 50%;
  width: 90rem;
  max-width: 80%;
  transform: translate(-50%, -20%);
  overflow: visible;
  z-index: 2
}

.e_p-front__first-copy svg {
  width: 100%;
  overflow: visible
}

@media screen and (max-width: 1080px) {
  .e_p-front__first-copy {
	top: 52%;
	max-width: 73%
  }
}

@media screen and (max-width: 767px) {
  .e_p-front__first-copy {
	top: auto;
	bottom: 12%;
	left: 4rem;
	max-width: 70%;
	transform: translate(0, 0)
  }
}

.e_p-front__scroll-icon {
  position: absolute;
  bottom: 150px;
  left: 4rem;
  opacity: 0;
  z-index: 2
}

.e_p-front__scroll-icon.is-loaded {
  animation: fadeIn 1s ease .5s 1 forwards
}

.e_p-front__scroll-icon span {
  color: #f0f0f0;
  font-size: 1.1rem;
  font-weight: 300;
  letter-spacing: .1rem;
  writing-mode: vertical-rl
}

.e_p-front__scroll-icon span::before {
  content: "";
  position: absolute;
  top: 6rem;
  left: .7rem;
  width: 2px;
  height: 100px;
  opacity: .4;
  background: #aaa
}

.e_p-front__scroll-icon span::after {
  content: "";
  position: absolute;
  top: 6rem;
  left: .7rem;
  width: 2px;
  height: 100px;
  background: linear-gradient(180deg, rgba(240, 240, 240, 0.2) 0, rgba(240, 240, 240, 0.8) 80%, rgba(240, 240, 240, 0.8) 100%);
  animation: scrollDown 2s cubic-bezier(1, 0, 0, 1) 2s 7 forwards
}

@media screen and (max-width: 1080px) {
  .e_p-front__scroll-icon {
	bottom: 220px
  }
}

.e_p-front__areaNo1-notice {
  max-width: 1120px;
  margin: 2rem auto;
  text-align: center
}

.e_p-front__areaNo1-notice span {
  display: inline-block;
  margin: 0 auto;
  color: #606060;
  font-size: 1.3rem;
  text-align: left
}

@media screen and (max-width: 1080px) {
  .e_p-front__areaNo1-notice {
	max-width: 90%
  }
}

@media screen and (max-width: 767px) {
  .e_p-front__areaNo1-notice {
	max-width: 100%;
	margin: 2rem 2rem 5rem
  }

  .e_p-front__areaNo1-notice span {
	font-size: 1rem
  }
}

.e_p-front__pickup-slider {
  width: 100%;
  overflow: hidden;
  margin: 9rem auto 7rem
}

@media screen and (max-width: 1080px) {
  .e_p-front__pickup-slider {
	margin: 8rem auto 6rem
  }
}

@media screen and (max-width: 767px) {
  .e_p-front__pickup-slider {
	margin: 7rem auto 4rem
  }
}

.e_p-front__pickup-slider .swiper {
  overflow: visible
}

.e_p-front__pickup-slider .swiper-slide {
  aspect-ratio: 500/375;
  transition: opacity .5s ease
}

.e_p-front__pickup-slider .swiper-slide img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center
}

.e_p-front__pickup-slider .swiper-slide-active {
  opacity: 1
}

.e_p-front__pickup-slider .swiper-slide-active:hover {
  opacity: .82
}

.e_p-front__pickup-slider .swiper-slide:not(.swiper-slide-active) {
  opacity: .5
}

.swiper-nav-wrp {
  display: flex;
  flex-direction: row;
  justify-content: space-between;
  margin: 18px auto 0
}

.swiper-nav-pagination {
  width: initial !important;
  margin: 0 auto
}

.swiper-nav-pagination .swiper-pagination-bullet {
  background-color: #ddd;
  opacity: 1;
  width: 8px;
  height: 8px;
  margin: 0 5px !important
}

.swiper-nav-pagination .swiper-pagination-bullet-active {
  background-color: #7b7b7b
}

.e_p-front__not-slider-wrp {
  display: grid;
  grid-template-columns: repeat(auto-fit, 32%);
  grid-column-gap: 2%;
  justify-content: center
}

@media screen and (max-width: 767px) {
  .e_p-front__not-slider-wrp {
	grid-template-columns: 1fr;
	grid-row-gap: 3rem;
	width: 100%
  }
}

.p-front__feature {
  padding-bottom: 35rem
}

@media screen and (max-width: 1080px) {
  .p-front__feature {
	padding-bottom: 24rem
  }
}

@media screen and (max-width: 767px) {
  .p-front__feature {
	padding-bottom: 15rem
  }
}

.p-front__feature-content {
  position: relative;
  background-color: #0c0c0c
}

@media screen and (max-width: 1080px) {
  .p-front__feature-content {
	padding-bottom: 8rem
  }
}

.p-front__feature-content .c-vertical {
  color: #f0f0f0
}

.p-front__feature-content .p-front__feature-content-detail-en {
  color: #f0f0f0
}

@media screen and (max-width: 1400px) {
  .p-front__feature-content-figure-heading {
	top: 10px
  }
}

.e_p-front__feature-bg-img {
  position: absolute;
  inset: 0
}

.e_p-front__feature-bg-img img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  opacity: .17
}

.p-front__feature-content-figure .p-front__feature-content-figure-heading {
  color: #f0f0f0
}

.p-front__feature-content-figure .p-front__feature-content-circle--half circle,
.p-front__feature-content-figure .p-front__feature-content-circle circle {
  stroke: #c5c5c5
}

.p-front__feature-content-circle-text-wrp .title .img-wrp-2 {
  width: 75px;
  height: 39px
}

.p-front__feature-content-circle-text-wrp .title .img-wrp-2 img {
  width: auto;
  max-height: 100%
}

@media screen and (max-width: 1080px) {
  .p-front__feature-content-circle-text-wrp .title .img-wrp-2 {
	width: 50px;
	height: 28px
  }
}

.p-front__feature-content-circle-text-wrp h3.title span {
  color: #f0f0f0;
  font-size: 3rem
}

.p-front__feature-content-circle-text-wrp p {
  color: #f0f0f0;
  font-size: 1.6rem
}

.p-front__feature-content-circle-text-wrp title::before {
  border-color: #f0f0f0
}

@media screen and (max-width: 1400px) {
  .p-front__feature-content-circle-text-wrp h3.title span {
	font-size: 2rem
  }

  .p-front__feature-content-circle-text-wrp p {
	font-size: 1.6rem;
	white-space: nowrap
  }
}

@media screen and (max-width: 1080px) {
  .p-front__feature-content-circle-text-wrp h3.title span {
	font-size: 1.7rem
  }

  .p-front__feature-content-circle-text-wrp p {
	font-size: 1.4rem
  }
}

.p-front__feature-content-circle-wrp .title span,
.p-front__feature-content-circle-wrp .title .fill {
  will-change: filter;
  filter: drop-shadow(0px 0px 28px rgba(245, 186, 24, 0.45)) drop-shadow(0px 0px 20px rgba(255, 81, 0, 0.7)) drop-shadow(0px 0px 4px rgba(255, 255, 255, 0.7))
}

@media screen and (max-width: 1080px) {
  .p-front__feature-content-link {
	margin-right: 4rem
  }
}

@media screen and (max-width: 767px) {
  .p-front__feature-content-link {
	margin-right: auto
  }
}

.p-front__feature-image-top {
  width: 60%;
  opacity: .76
}

.p-front__feature-image-top img {
  max-width: 100%
}

@media screen and (max-width: 767px) {
  .p-front__feature-image-top {
	width: 75%
  }
}

.p-front__feature-image-bottom {
  bottom: -4rem;
  width: 60%;
  opacity: .76
}

@media screen and (max-width: 1080px) {
  .p-front__feature-image-bottom {
	bottom: 2rem
  }
}

@media screen and (max-width: 767px) {
  .p-front__feature-image-bottom {
	bottom: 2rem;
	width: 75%
  }
}

.e_p-front__works {
  position: relative;
  width: 100%;
  max-width: 100%;
  margin: 4rem 0 15rem 0;
  padding: 0
}

@media screen and (max-width: 1080px) {
  .e_p-front__works {
	margin: 2rem 0 15rem 0
  }
}

@media screen and (max-width: 767px) {
  .e_p-front__works {
	margin: 2rem 0 10rem 0
  }
}

.e_p-front__works .p-front__information-inner {
  padding-bottom: 0rem
}

.e_p-front__works .c-wrapper {
  width: 86.111vw;
  max-width: 86.111%;
  padding: 0;
  margin: 0 0 8rem auto
}

@media screen and (max-width: 767px) {
  .e_p-front__works .c-wrapper {
	width: 100%;
	max-width: 100%;
	margin: 0 0 6rem 0
  }
}

@media screen and (max-width: 767px) {
  .e_p-front__works .p-front__information-heading {
	margin-left: 4rem
  }
}

.e_p-front__works .p-front__information-heading .p-front-sec-ttl-2line .ttl-wrp:first-child {
  margin-bottom: 0
}

.e_p-front__works .c-vertical {
  margin-right: 0;
  right: 5%;
  left: auto
}

@media screen and (max-width: 767px) {
  .e_p-front__works .c-vertical {
	right: 2.5rem;
	left: auto
  }
}

.e_p-front__works .swiper {
  position: relative;
  width: 86.111vw;
  max-width: 86.111%;
  margin: 0 0 0 auto
}

@media screen and (max-width: 767px) {
  .e_p-front__works .swiper {
	width: 100%;
	max-width: 100%;
	margin-right: 0
  }
}

.e_p-front__works .swiper .slider-img-wrp {
  aspect-ratio: 1820/1200
}

.e_p-front__works .swiper .slider-img-wrp img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center
}

@media screen and (max-width: 767px) {
  .e_p-front__works .swiper .slider-img-wrp {
	aspect-ratio: 1080/1350
  }
}

.e_p-front__works .swiper .slider-text-wrp {
  position: absolute;
  bottom: 0;
  left: 0;
  display: flex;
  align-items: center;
  width: 100%;
  height: 10rem;
  padding: 0 0 0 5rem;
  z-index: 2
}

@media screen and (max-width: 1200px) {
  .e_p-front__works .swiper .slider-text-wrp {
	height: 7rem;
	padding: 0 3.5rem
  }
}

@media screen and (max-width: 1080px) {
  .e_p-front__works .swiper .slider-text-wrp {
	height: 6rem;
	padding: 0 2.5rem
  }
}

@media screen and (max-width: 767px) {
  .e_p-front__works .swiper .slider-text-wrp {
	height: 6rem;
	padding: 0 0 0 4rem
  }
}

.e_p-front__works .swiper .slider-text-wrp div {
  font-size: 2.2rem;
  line-height: 2.2rem;
  color: #fff;
  white-space: nowrap;
  margin-left: 0rem
}

@media screen and (max-width: 1200px) {
  .e_p-front__works .swiper .slider-text-wrp div {
	font-size: 1.8rem
  }
}

@media screen and (max-width: 767px) {
  .e_p-front__works .swiper .slider-text-wrp div.vtab {
	display: none
  }
}

.e_p-front__works .swiper .swiper-slide:not(.swiper-slide-active) .slider-text-wrp,
.e_p-front__works .swiper .swiper-slide:not(.swiper-slide-active) .slider-img-wrp span {
  opacity: 0
}

.e_p-front__works .swiper .swiper-slide:not(.swiper-slide-active) a {
  cursor: default;
  pointer-events: none
}

.e_p-front__works .swiper .swiper-slide-active .slider-text-wrp,
.e_p-front__works .swiper .swiper-slide-active .slider-img-wrp span {
  opacity: 1;
  transition: .5s
}

.e_p-front__works .swiper .swiper-nav-wrp .swiper-nav-pagination {
  margin-left: 36.111vw;
  margin-right: auto;
  transform: translateX(-50%)
}

@media screen and (max-width: 767px) {
  .e_p-front__works .swiper .swiper-nav-wrp .swiper-nav-pagination {
	margin-left: auto;
	transform: translateX(0)
  }
}

.e_p-front__works .swiper-slide-active {
  opacity: 1;
  transition: .5s
}

.e_p-front__works .swiper-slide-active:hover {
  opacity: .8
}

.e_p-front__works .c-page-3series-link {
  display: none;
  width: 30rem;
  margin: 4rem auto 0
}

.e_p-front__works .c-page-3series-link .c-slide-btn--parent {
  padding-left: 4px;
  padding-right: 4px
}

.e_p-front__works .c-page-3series-link p {
  white-space: nowrap
}

@media screen and (max-width: 1200px) {
  .e_p-front__works .c-page-3series-link {
	display: block
  }
}

@media screen and (max-width: 1080px) {
  .e_p-front__works .c-page-3series-link {
	margin: 6rem auto 0
  }
}

@media screen and (max-width: 767px) {
  .e_p-front__works .c-page-3series-link {
	margin: 6rem auto 0
  }
}

.e_p-front__works-circle-btn {
  position: relative;
  top: calc(-18px - 8.5rem - 3rem);
  margin: 0 8.5rem 0 auto;
  display: flex;
  justify-content: center;
  align-items: center;
  width: 17rem;
  height: 17rem;
  z-index: 3
}

@media screen and (max-width: 1200px) {
  .e_p-front__works-circle-btn {
	display: none
  }
}

.e_p-front__works-circle-btn p {
  position: relative;
  margin-top: -0.5rem;
  text-align: center;
  font-size: 1.6rem;
  line-height: 2.7rem;
  color: #606060;
  z-index: 5
}

.e_p-front__works-circle-btn::after {
  position: absolute;
  top: 0;
  left: 0;
  content: "";
  width: 17rem;
  height: 17rem;
  border-radius: 50%;
  background-color: #fff;
  z-index: 3
}

.e_p-front__works-circle-btn::before {
  position: absolute;
  top: 1rem;
  left: 1rem;
  content: "";
  width: 15rem;
  height: 15rem;
  border-radius: 50%;
  border: 1px solid #a3a3a3;
  transition: .5s;
  z-index: 4
}

.e_p-front__works-circle-btn:hover::before {
  background-color: rgba(45, 45, 45, .062745098)
}

.e_p-front__works .p-front__feature-image-bottom {
  left: 0;
  right: auto;
  bottom: -25%;
  width: 42%;
  opacity: .35
}

@media screen and (max-width: 1200px) {
  .e_p-front__works .p-front__feature-image-bottom {
	display: none
  }
}

.e_p-front__modelhouse {
  position: relative;
  padding: 0 30px;
  margin-bottom: 20rem
}

@media screen and (max-width: 767px) {
  .e_p-front__modelhouse {
	padding: 0;
	margin: 0 2rem 3rem
  }
}

.e_p-front__modelhouse-inner {
  position: relative;
  max-width: 1120px;
  padding: 165px 100px 107px;
  margin: 0 auto;
  background-color: #f0f0f0;
  border-radius: 20px
}

@media screen and (max-width: 1080px) {
  .e_p-front__modelhouse-inner .c-vertical {
	top: 90px;
	left: auto;
	right: 3rem
  }

  .e_p-front__modelhouse-inner .e_p-front__modelhouse-content {
	text-align: left
  }

  .e_p-front__modelhouse-inner .e_p-front__modelhouse-content h2 {
	display: block
  }
}

@media screen and (max-width: 767px) {
  .e_p-front__modelhouse-inner {
	padding: 7.6rem 3rem 4.8rem;
	border-radius: 10px
  }

  .e_p-front__modelhouse-inner .c-vertical {
	top: 40px;
	right: 1rem
  }
}

.e_p-front__modelhouse-grid-wrp {
  display: grid;
  grid-template-columns: 1fr 1fr 1fr;
  grid-column-gap: 2.7rem;
  grid-row-gap: 6rem;
  margin: 10rem auto 9rem
}

@media screen and (max-width: 1080px) {
  .e_p-front__modelhouse-grid-wrp {
	grid-template-columns: 1fr 1fr;
	grid-column-gap: 2.5rem;
	grid-row-gap: 4rem;
	margin: 7rem auto 5rem
  }
}

@media screen and (max-width: 767px) {
  .e_p-front__modelhouse-grid-wrp {
	grid-template-columns: 1fr;
	grid-column-gap: 2.5rem;
	grid-row-gap: 3rem;
	margin: 5rem auto 4rem
  }
}

.e_p-front__modelhouse-grid-wrp .img-wrp {
  position: relative;
  width: 100%;
  aspect-ratio: 12/7;
  opacity: 1;
  overflow: hidden;
  transition: 1s
}

@media screen and (max-width: 767px) {
  .e_p-front__modelhouse-grid-wrp .img-wrp::before {
	content: "";
	position: absolute;
	width: 100%;
	aspect-ratio: 12/7;
	background: rgba(45, 45, 45, .2509803922);
	z-index: 2
  }
}

.e_p-front__modelhouse-grid-wrp li a:hover .img-wrp {
  opacity: .55
}

.e_p-front__modelhouse-grid-wrp img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center;
  z-index: 1
}

.e_p-front__modelhouse-sub-ttl {
  font-size: 1.25rem;
  line-height: 1.2rem;
  letter-spacing: .06em;
  color: #9a9a9a;
  margin: 2.5rem auto 1.1rem
}

@media screen and (max-width: 1080px) {
  .e_p-front__modelhouse-sub-ttl {
	margin: 2rem auto .7rem
  }
}

.e_p-front__modelhouse-ttl {
  display: inline-block;
  font-size: 2rem;
  line-height: 2rem
}

@media screen and (max-width: 1080px) {
  .e_p-front__modelhouse-ttl {
	font-size: 1.6rem;
	line-height: 1.6rem
  }
}

.e_p-front__modelhouse-text-wrp {
  position: relative
}

.e_p-front__modelhouse-text-wrp .c-slide-btn {
  position: absolute;
  bottom: 2px;
  right: 5px
}

.e_p-front__modelhouse-text-wrp-sp {
  position: absolute;
  bottom: 1.5rem;
  left: 2.5rem;
  z-index: 3
}

.e_p-front__modelhouse-text-wrp-sp .e_p-front__modelhouse-sub-ttl {
  color: #f0f0f0;
  margin: 0;
  padding-bottom: .3rem
}

.e_p-front__modelhouse-text-wrp-sp .e_p-front__modelhouse-ttl {
  color: #f0f0f0;
  font-size: 1.8rem
}

.e_p-front__modelhouse-grid-wrp .img-wrp .c-slide-btn {
  display: none;
  position: absolute;
  top: 2.3rem;
  right: 2.5rem;
  z-index: 3
}

@media screen and (max-width: 767px) {
  .e_p-front__modelhouse-grid-wrp .img-wrp .c-slide-btn {
	display: block
  }
}

.e_p-front__modelhouse-link-btn {
  width: 100%;
  margin: 0 auto 4rem;
  opacity: 1;
  transition: .3s
}

@media screen and (max-width: 767px) {
  .e_p-front__modelhouse-link-btn {
	margin: 5rem auto
  }
}

.e_p-front__modelhouse-link-btn a:hover {
  opacity: .8
}

.e_p-front__modelhouse-grid-wrp li.new-model .e_p-front__modelhouse-ttl span {
  font-size: 1.4rem
}

.e_p-front__modelhouse-grid-wrp li.new-model div.img-wrp {
  position: relative
}

.e_p-front__modelhouse-grid-wrp li.new-model div.img-wrp::after {
  position: absolute;
  top: 0;
  left: 0;
  width: 9rem;
  height: 2.5rem;
  content: "オープン予定";
  font-size: 1.2rem;
  text-align: center;
  letter-spacing: .1rem;
  color: #fff;
  background-color: #e84417;
  padding: 2px;
  z-index: 3
}

.e_p-front__modelhouse-grid-wrp li.new-model.notice div.img-wrp::after {
  content: "出店決定";
  background-color: #7b7b7b
}

.p-front__arbo {
  overflow: hidden
}

.p-aboutus__arrange-serise-list {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 10px;
  max-width: 105rem;
  margin: 2rem auto 8.5rem
}

.p-aboutus__arrange-serise-list li {
  position: relative;
  height: 15rem;
  background-color: #fff
}

.p-aboutus__arrange-serise-list li:hover {
  opacity: .6;
  transition: 1s
}

.p-aboutus__arrange-serise-list img {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%)
}

@media screen and (max-width: 1080px) {
  .p-aboutus__arrange-serise-list {
	grid-template-columns: 1fr;
	grid-template-rows: 1fr 1fr
  }
}

.e_p-aboutus__strength-bgWrp {
  position: relative
}

.e_p-aboutus__strength-bg-img {
  position: absolute;
  inset: 0
}

.e_p-aboutus__strength-bg-img img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  opacity: .22
}

.p-aboutus__strength-img-inner .strength-text {
  z-index: 5
}

.p-aboutus__strength-img-inner .strength-text svg {
  overflow: visible
}

.p-aboutus__strength-img-inner .strength-text-01 .g-cons,
.p-aboutus__strength-img-inner .strength-text-01 .g-pros,
.p-aboutus__strength-img-inner .strength-text-01 .g-title {
  fill: #00a782
}

.p-aboutus__strength-img-inner .strength-text-02 .g-cons,
.p-aboutus__strength-img-inner .strength-text-02 .g-pros,
.p-aboutus__strength-img-inner .strength-text-02 .g-title {
  fill: #0f8ec2
}

.p-aboutus__strength-img-inner .strength-text-03 .g-cons,
.p-aboutus__strength-img-inner .strength-text-03 .g-pros,
.p-aboutus__strength-img-inner .strength-text-03 .g-title {
  fill: #e05952
}

.p-aboutus__strength-img-inner .line-circle.circle-0 circle {
  stroke: #00a782
}

.p-aboutus__strength-img-inner .line-circle.circle-1 circle {
  stroke: #0f8ec2
}

.p-aboutus__strength-img-inner .line-circle.circle-2 circle {
  stroke: #e05952
}

.p-aboutus__strength-img.is-active .strength-text-01 .g-cons,
.p-aboutus__strength-img.is-active .strength-text-01 .g-title,
.p-aboutus__strength-img.is-active .strength-text-02 .g-cons,
.p-aboutus__strength-img.is-active .strength-text-02 .g-title,
.p-aboutus__strength-img.is-active .strength-text-03 .g-cons,
.p-aboutus__strength-img.is-active .strength-text-03 .g-title {
  fill: #fff;
  transition: fill .5s ease 2s
}

.p-aboutus__strength-img.is-active .strength-text-01 .g-pros,
.p-aboutus__strength-img.is-active .strength-text-02 .g-pros,
.p-aboutus__strength-img.is-active .strength-text-03 .g-pros {
  fill: #fff;
  transition: fill .5s ease 1.8s;
  animation: changeFill 1.8s ease 2.5s forwards
}

.p-aboutus__strength-img.is-active .strength-text-logo {
  fill: #2d2d2d;
  transition: opacity 2s ease 2.6s
}

.p-aboutus__strength-img.is-active .line-circle.circle-0 circle,
.p-aboutus__strength-img.is-active .line-circle.circle-1 circle,
.p-aboutus__strength-img.is-active .line-circle.circle-2 circle {
  stroke: #fff;
  transition: stroke 1.5s ease 1.8s
}

.p-aboutus__strength-img.is-active .p-aboutus__strength-img-inner .clasis-circle {
  fill: #fff;
  opacity: .7;
  transition: stroke-dasharray 2.8s ease 1.8s, fill 3.2s ease 2.6s, opacity 4s ease-out 2.6s
}

div.p-aboutus__series-inner {
  padding-top: 17rem
}

@media screen and (max-width: 1080px) {
  div.p-aboutus__series-inner {
	margin: 0 auto
  }
}

@media screen and (max-width: 767px) {
  div.p-aboutus__series-inner {
	padding-top: 10rem
  }
}

.p-modelhouse-single__reservation .p-company__application-tel .p-company__application-tel-number a::before {
  bottom: .5rem
}

.e_p-modelhouse-single__banner {
  width: 75%;
  margin: 10rem auto 0
}

@media screen and (max-width: 1080px) {
  .e_p-modelhouse-single__banner {
	width: 85%;
	margin: 4rem auto
  }
}

@media screen and (max-width: 767px) {
  .e_p-modelhouse-single__banner {
	width: 100%;
	margin: 6rem auto
  }
}

div.p-modelhouse__wrap-item.new-model .p-modelhouse__wrap-item-heading .open-date {
  font-size: 1.8rem
}

div.p-modelhouse__wrap-item.new-model .p-modelhouse__wrap-item-info dd.address {
  font-size: 1.8rem;
  padding: 4.3px 0
}

@media screen and (max-width: 1080px) {
  .p-modelhouse__wrap-item .p-modelhouse__wrap-item-image {
	aspect-ratio: 340/370
  }
}

section.p-modelhouse-single__info.new-model {
  margin-top: 0
}

section.p-modelhouse-single__info.new-model #section01 {
  margin-bottom: 0
}

section.p-modelhouse-single__info.new-model .p-modelhouse-single__info-detail {
  margin: 7rem auto;
  border: none
}

@media screen and (max-width: 1080px) {
  section.p-modelhouse-single__info.new-model .p-modelhouse-single__info-detail {
	flex-direction: column;
	margin: 1.5rem auto 3rem
  }
}

@media screen and (max-width: 767px) {
  section.p-modelhouse-single__info.new-model .p-modelhouse-single__info-detail {
	margin: 0 auto 3rem
  }
}

section.p-modelhouse-single__info.new-model .p-modelhouse__wrap-item-info dt {
  min-width: 12rem
}

section.p-modelhouse-single__info.new-model .p-modelhouse__wrap-item-info dd.tel span {
  font-size: 1.4rem
}

@media screen and (max-width: 767px) {
  section.p-modelhouse-single__info.new-model .p-modelhouse__wrap-item-info dd.tel::before {
	display: none
  }

  section.p-modelhouse-single__info.new-model .p-modelhouse__wrap-item-info dd.tel a {
	position: relative
  }

  section.p-modelhouse-single__info.new-model .p-modelhouse__wrap-item-info dd.tel a::before {
	position: absolute;
	bottom: -0.3rem;
	width: 100%;
	height: 1px;
	content: "";
	background-color: #a3a3a3
  }
}

section.p-modelhouse-single__reservation.new-model {
  padding: 10rem 0 12rem
}

@media screen and (max-width: 1080px) {
  section.p-modelhouse-single__reservation.new-model {
	padding: 9rem 0 8rem
  }
}

@media screen and (max-width: 767px) {
  section.p-modelhouse-single__reservation.new-model {
	padding: 7rem 0 2rem
  }
}

section.p-modelhouse-single__reservation.new-model .c-page-sec-ttl .ttl-info {
  margin-top: 4rem;
  font-weight: 300
}

@media screen and (max-width: 767px) {
  section.p-modelhouse-single__reservation.new-model .c-page-sec-ttl .ttl-info {
	margin-top: 3.5rem;
	margin-bottom: 4.5rem
  }
}

section.p-modelhouse-single__reservation.new-model h3 {
  margin-bottom: 4rem
}

section.p-modelhouse-single__reservation.new-model .p-company__application-tel-number {
  line-height: 4.5rem;
  margin-bottom: 4rem
}

section.p-modelhouse-single__reservation.new-model .e_tel {
  font-size: 1.8rem
}

@media screen and (max-width: 767px) {
  section.p-modelhouse-single__reservation.new-model .e_tel {
	font-size: 1.6rem
  }
}

section.p-modelhouse-single__reservation.new-model .p-company__application-mail h3 {
  margin-bottom: 4rem
}

section.p-modelhouse-single__reservation.new-model .p-company__application-mail a {
  position: relative;
  font-size: 3.7rem;
  pointer-events: painted;
  top: -1rem
}

@media screen and (max-width: 767px) {
  section.p-modelhouse-single__reservation.new-model .p-company__application-mail a {
	font-size: 2.5rem
  }
}

section.p-modelhouse-single__reservation.new-model .p-company__application-mail a::before {
  display: none
}

section.p-modelhouse-single__reservation.new-model .p-company__application-mail a::after {
  position: absolute;
  bottom: -0.2rem;
  left: 0;
  width: 100%;
  height: 1px;
  content: "";
  background-color: #a3a3a3
}

section.p-modelhouse-single__reservation.new-model .p-company__application-mail .p-company__application-tel-info {
  display: inline-block;
  text-align: center;
  line-height: 3rem;
  margin-inline: auto
}

@media screen and (max-width: 767px) {
  section.p-modelhouse-single__reservation.new-model .p-company__application-mail .p-company__application-tel-info {
	text-align: justify
  }
}

.p-modelhouse__wrap .new-model .p-modelhouse__wrap-item-heading {
  position: relative
}

.p-modelhouse__wrap .new-model .p-modelhouse__wrap-item-heading::after {
  position: absolute;
  top: -2.7rem;
  left: 0;
  width: 8.5rem;
  height: 2.5rem;
  content: "オープン予定";
  font-size: 1.2rem;
  line-height: 1.2rem;
  text-align: left;
  white-space: nowrap;
  letter-spacing: .1rem;
  color: #fff;
  background-color: #e84417;
  padding: .65rem .55rem;
  z-index: 3
}

.p-modelhouse__wrap .new-model .p-modelhouse__wrap-item-heading-pin {
  display: none
}

.p-modelhouse__wrap .new-model.notice .p-modelhouse__wrap-item-heading::after {
  width: 6.3rem;
  content: "出店決定";
  background-color: #7b7b7b
}

.c-page-fv__index-item .list-item li.e_li-dot-none::before {
  background-color: rgba(255, 255, 255, 0)
}

.e_p-quality__wallstat {
  padding-top: 5rem;
  padding-bottom: 0
}

.e_p-quality__wallstat .c-page-sec-ttl {
  margin-bottom: 10rem
}

.e_p-quality__wallstat-movie {
  width: 80%;
  max-width: 810px;
  overflow: hidden;
  margin: 0 auto 8rem
}

.e_p-quality__wallstat-movie video {
  width: 103%;
  height: auto;
  margin: 0;
  border: 2px solid #fff
}

.e_p-quality__wallstat-contents {
  padding-top: 0;
  padding-bottom: 5rem
}

.e_quality__wallstat-flex-outer {
  background-color: #f0f0f0;
  max-width: 130rem;
  margin: 0 auto
}

.e_p-quality__wallstat-flex-containor,
.e_p-quality__wallstat-flex-containor--reverse {
  display: flex;
  flex-direction: row;
  justify-content: center;
  align-items: flex-start;
  gap: 5rem;
  width: 80%;
  max-width: 105rem;
  margin: 0 auto 5rem;
  padding: 15rem 0 10rem
}

.e_p-quality__wallstat-flex-text,
.e_p-quality__wallstat-flex-image {
  width: 50%
}

.e_p-quality__wallstat-chart {
  margin: -5rem 0 0 3rem
}

.e_p-quality__wallstat-flex-text h3 {
  font-size: 2rem;
  font-weight: 500;
  line-height: 1.6em;
  color: #505050;
  margin-bottom: 3rem
}

.e_p-quality__wallstat-flex-text h3 span {
  display: block;
  line-height: 4rem
}

.e_p-quality__wallstat-flex-text p {
  font-size: 1.6rem;
  font-weight: 300;
  line-height: 2.1em;
  text-align: justify;
  color: #505050;
  letter-spacing: -0.02em
}

.e_p-quality__wallstat-youtube {
  position: relative;
  width: 65%;
  height: 0;
  padding-bottom: 36.56%;
  max-width: 88rem;
  margin: 0 auto 15rem
}

.e_p-quality__wallstat-youtube iframe {
  width: 100%;
  box-shadow: 1px 1px 10px rgba(0, 0, 0, .2)
}

.e_p-quality__wallstat-youtube p {
  position: absolute;
  top: 0;
  right: -4rem;
  font-size: 1.6rem;
  color: #5f5f65;
  letter-spacing: .02em;
  writing-mode: vertical-rl
}

.e_p-quality__wallstat-faq {
  background-color: #f0f0f0;
  width: 100%;
  padding-top: 13rem;
  padding-bottom: 5rem
}

.e_p-quality__wallstat-faq .p-faq__unit h3 {
  font-size: 3rem;
  font-weight: 500;
  line-height: 1.8em;
  text-align: center;
  margin-bottom: 9rem
}

.e_p-quality__wallstat-faq .p-faq__unit-item button span {
  max-width: 85%
}

.e_p-quality__wallstat-faq .p-faq__unit-item-panel-text span {
  font-weight: 600;
  color: #192f60
}

.e_p-quality__wallstat-faq .c-toggle-wrp {
  margin-top: 5rem
}

.e_toggle-item--margin-top {
  margin-top: 1.3rem
}

.e_p-quality__wallstat-faq .c-toggle-wrp a {
  border-bottom: 1px solid #7d7d81
}

@media screen and (max-width: 1080px) {

  .e_p-quality__wallstat-flex-containor,
  .e_p-quality__wallstat-flex-containor--reverse {
	flex-direction: column
  }

  .e_p-quality__wallstat-flex-containor--reverse {
	padding-bottom: 5rem
  }

  .e_p-quality__wallstat-flex-text,
  .e_p-quality__wallstat-flex-image {
	width: 100%
  }

  .e_p-quality__wallstat-flex-image img {
	width: 70%;
	height: auto
  }

  .e_p-quality__wallstat-chart {
	margin: auto
  }

  .e_p-quality__wallstat-youtube {
	width: 85%;
	padding-bottom: 47.81%;
	max-width: 85%
  }

  .e_p-quality__wallstat-youtube iframe {
	max-width: 85vw;
	max-height: 47.25vw
  }

  .e_p-quality__wallstat-youtube p {
	position: absolute;
	top: calc(100% + 1rem);
	right: calc(50vw - 14rem);
	writing-mode: horizontal-tb
  }

  .e_p-quality__wallstat-faq {
	padding-top: 5rem
  }

  .e_p-quality__wallstat-faq .c-toggle-wrp {
	margin-top: 8rem
  }

  .e_p-quality__wallstat-faq .p-faq__unit-item button span {
	max-width: 95%
  }

  .e_p-quality__wallstat-faq .p-faq__unit h3 {
	font-size: 2.2rem;
	margin-bottom: 3rem
  }
}

@media screen and (max-width: 767px) {
  .e_p-quality__wallstat {
	padding-top: 0
  }

  .e_p-quality__wallstat-flex-containor {
	padding: 8rem 0 8rem
  }

  .e_p-quality__wallstat-flex-containor--reverse {
	padding: 3rem 0 0;
	margin-bottom: 2rem
  }

  .e_p-quality__wallstat-flex-image img {
	width: 100%;
	height: auto
  }

  .e_p-quality__wallstat-youtube {
	margin: 0 auto 10rem
  }

  .e_p-quality__wallstat-youtube iframe {
	width: 85vw;
	height: 47.25vw
  }

  .e_p-quality__wallstat-youtube p {
	position: absolute;
	top: calc(100% + 1rem);
	right: calc(50vw - 10rem);
	writing-mode: horizontal-tb
  }

  .e_p-quality__wallstat-faq {
	padding-top: 2rem
  }

  .e_p-quality__wallstat-faq .c-toggle-wrp {
	margin-top: 5rem
  }

  .e_p-quality__wallstat-faq .p-faq__unit h3 {
	font-size: 1.6rem;
	margin-bottom: 3rem
  }
}

.arrange-serise-ul li {
  margin-bottom: 2.8rem
}

.p-series__nomainte {
  background-color: #fff
}

.p-series__nomainte .p-series__comfort-wrp .p-series__comfort-wrp-ttl img {
  width: 350px
}

.p-series__nomainte .c-page-sec-ttl__wrp .explan {
  margin-top: 2rem
}

.p-series__nomainte .p-series__comfort-wrp .p-series__comfort-wrp-contents2 {
  align-items: start
}

.p-series__guarantee-wrp {
  margin: 8rem auto 5rem
}

.p-series__guarantee-img {
  display: block;
  clip-path: inset(0 100% 0 0);
  transition: clip-path 1s ease-in-out
}

.p-series__guarantee-img.is-active {
  clip-path: inset(0)
}

.p-series__guarantee-wrp .c-toggle-wrp {
  width: 90%
}

.p-series__guarantee-wrp .toggle-btn p,
.p-series__toggle-item--nomaintenance span {
  font-weight: 700
}

.p-series__toggle-item--nomaintenance p:nth-child(1) {
  margin-bottom: 2rem
}

@media screen and (max-width: 1080px) {
  .c-page-fv__index-item .arrange-wrp--nomentainance img {
	width: 120px
  }

  .arrange-serise-ul li {
	margin-bottom: 1.6rem
  }

  .p-series__nomainte .c-page-sec-ttl__wrp .explan {
	margin-top: 4rem
  }

  .p-series__nomainte .p-series__comfort-wrp .p-series__comfort-wrp-ttl img {
	width: 280px
  }
}

@media screen and (max-width: 767px) {
  section#secNomainte {
	margin-top: 3rem
  }

  .p-series__guarantee-img {
	clip-path: inset(0 0 100% 0)
  }
}

.e_compatible-font {
  font-family: "Helvetica Neue", "游ゴシック体", yugothic, "游ゴシック", "Yu Gothic", "ヒラギノ角ゴ ProN W3", hiragino kaku gothic pron, arial, "メイリオ", meiryo, sans-serif
}

.p-staff__list-item .e_compatible-font .p-staff__list-item-info-job,
.p-staff__list-item .e_compatible-font span[data-text=ja] {
  font-weight: 700
}

.p-staff-single__content-heading .job,
.p-staff-single__content-heading h1,
.p-staff-single__content-heading span.en,
.p-staff-single__content-heading dl {
  font-weight: 500
}

.c-article__other-heading h2.e_compatible-font {
  font-weight: 500
}

.e_compatible-font p.c-article__prev-next-name {
  font-weight: 500
}

p.e_p-after-support__strong-text {
  color: #e05952;
  margin-bottom: 1rem
}

p.e_p-after-support__strong-text a {
  border-bottom: 1px solid #e05952
}

.p-partner__info .heading {
  border-bottom: 1px solid #9a9a9a;
  padding-bottom: 7px;
  margin-bottom: 10px
}

.p-partner__info .heading::before {
  display: none
}

@media screen and (max-width: 767px) {
  .p-partner__info .heading {
	border-bottom: none;
	padding-bottom: 0;
	margin-bottom: 0
  }
}

header .c-header__search button::after {
  content: url("data:image/svg+xml;utf8,<svg width=\"14\" height=\"15\" viewBox=\"0 0 14 15\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\"><path d=\"M10.435 5.76356C10.435 8.43862 8.2981 10.5859 5.6881 10.5859C3.0781 10.5859 0.941176 8.43862 0.941176 5.76356C0.941176 3.0885 3.0781 0.941176 5.6881 0.941176C8.2981 0.941176 10.435 3.0885 10.435 5.76356Z\" stroke=\"%239A9A9A\" stroke-width=\"1.88235\"/><path d=\"M8.93701 9.8833L12.9999 14.0001\" stroke=\"%239A9A9A\" stroke-width=\"1.88235\"/></svg>")
}

header .c-header__logo img.e_logo-wh {
  display: none
}

header.c-header.home-header {
  animation: fadeIn .6s ease-in .6s 1 forwards
}

header.e_change-white .c-header__logo img.e_logo-bk {
  display: none
}

header.e_change-white .c-header__logo img.e_logo-wh {
  display: inline
}

header.e_change-white .c-header__search button {
  border: 1px solid #f0f0f0
}

header.e_change-white .c-header__search span {
  color: #f0f0f0
}

header.e_change-white .c-header__search button::after {
  content: url("data:image/svg+xml;utf8,<svg width=\"14\" height=\"15\" viewBox=\"0 0 14 15\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\"><path d=\"M10.435 5.76356C10.435 8.43862 8.2981 10.5859 5.6881 10.5859C3.0781 10.5859 0.941176 8.43862 0.941176 5.76356C0.941176 3.0885 3.0781 0.941176 5.6881 0.941176C8.2981 0.941176 10.435 3.0885 10.435 5.76356Z\" stroke=\"%23F0F0F0\" stroke-width=\"1.88235\"/><path d=\"M8.93701 9.8833L12.9999 14.0001\" stroke=\"%23F0F0F0\" stroke-width=\"1.88235\"/></svg>")
}

header.e_change-white .c-header__menu button {
  color: #fff
}

header.e_change-white .c-header__menu button::before,
header.e_change-white .c-header__menu button::after {
  background-color: #fff
}

header.e_change-white .c-header__menu button[aria-expanded=true] {
  color: #2d2d2d
}

div.c-header__cv-btn.home-header {
  opacity: 0
}

div.c-header__cv-btn.home-header.is-loaded {
  animation: fadeIn 1s ease-in 1s 1 forwards
}

h1.c-header__logo {
  line-height: 0
}

.cta-btn-wrap a {
  font-size: 1.6rem;
  font-weight: 400;
  line-height: 1.5;
  position: relative;
  display: inline-block;
  padding: 1rem 4rem;
  -webkit-transition: all .3s;
  transition: all .3s;
  text-align: center;
  vertical-align: middle;
  text-decoration: none;
  letter-spacing: .1em;
  color: #212529;
  border-radius: .5rem
}

.cta-btn-wrap {
  margin: 10rem 0;
  text-align: left
}

a.cta-btn {
  width: 100%;
  max-width: 40rem;
  position: relative;
  padding: .25rem 2rem .5rem 2.1rem;
  color: #fff;
  background: #2d2d2d;
  box-shadow: 0 5px 0 #5d5d5d
}

a.cta-btn span {
  font-size: 1.4rem;
  font-weight: 400;
  position: absolute;
  top: -10px;
  left: calc(50% - 150px);
  display: block;
  width: 300px;
  padding: .2rem 0;
  color: #2d2d2d;
  border: 2px solid #2d2d2d;
  border-radius: .5rem;
  background: #fff;
  box-shadow: 0 3px 3px rgba(0, 0, 0, .2)
}

a.cta-btn:hover {
  -webkit-transform: translate(0, 3px);
  transform: translate(0, 3px);
  color: #fff;
  background: #4d4d4d;
  box-shadow: 0 2px 0 gray
}

a.cta-btn:hover:before {
  left: 2rem
}

.cta-btn-wrap a::after {
  display: none
}

.e_c-article__thumbnail-movie {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover
}

.e_p-modelhouse-single__youtube iframe {
  display: block;
  width: 100%;
  aspect-ratio: 16/9;
  object-fit: cover;
  margin: 7rem auto 3rem
}


.news-swiper-section {
  width: 100%;
  padding: 40px 0;
}

.news-card {
}

.contents_eyecatch img {
  width: 100%;
  height: auto;
  display: block;
}
.eventnews_title {
  font-weight: bold;
  margin-top: 10px;
}
.eventdate {
  color: #999;
  font-size: 0.9em;
}


element.style {
}


button.js-menu-button:hover{
  border-color: transparent;
  background-color: transparent;
}