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

	Main Visual │ メインビジュアル

--------------------------------------------------*/
#mv {align-items: center;flex-direction: row-reverse;position: relative;padding-bottom: 6%;overflow: hidden;}
#mv.mv_navy {background: var(--navy) url(../img/page/common/mv_bg-navy.webp) no-repeat top center / cover;}
#mv.mv_blue {background: #14347C url(../img/page/common/mv_bg-blue.webp) no-repeat bottom left / 70%;}
#mv.mv_green {background: #003E2D url(../img/page/common/mv_bg-green.webp) no-repeat top center / 72%;}
#mv.works {background: #000 url(../img/page/works/mv_bg.webp) no-repeat center / cover;}
#mv.avent_lusso_gaikan {background: #000 url(../img/page/avent-lusso/mv_bg.webp) no-repeat top center / cover;}
#mv.avent_lusso_naisou {background: #3A2E25 url(../img/page/avent-lusso/mv_bg.webp) no-repeat top center / cover;}
#mv.latest_updates {background: #3A2E25 url(../img/page/latest_updates/mv_bg.webp) no-repeat top center / cover;}
#mv figure {position: relative;width: 58.5%;overflow: hidden;}
#mv.mv_black figure {width: 100%;}
#mv figure::before {
  content: '';
  position: absolute;
  top: 0;
  left: 0;
  z-index: 2;
  width: 115%;
  height: 100%;
  background: var(--navy);
  clip-path: polygon(0 0, 82% 0, 100% 100%, 0 100%);
  animation: mv-curtain .9s cubic-bezier(.76, 0, .24, 1) .2s both;
  pointer-events: none;
}
#mv .wrap {position: absolute;top: 25%;left: 4%;color: #fff;animation: mv-title-in .8s cubic-bezier(.16, .84, .44, 1) .5s both;}
#mv .wrap h1 {margin-bottom: 1%;font-size: 5.2vw;letter-spacing: 0;}
#mv.big .wrap h1 {font-size: 7.2vw;}
#mv .wrap p {font-weight: 500;font-size: 1.3vw;line-height: 1;}
@keyframes mv-curtain {
  from {transform: translateX(0);}
  to {transform: translateX(-115%);}
}
@keyframes mv-title-in {
  from {opacity: 0;transform: translateY(30px);}
  to {opacity: 1;transform: translateY(0);}
}
@media ( prefers-reduced-motion : reduce ) {
  #mv figure::before {animation: none;display: none;}
  #mv .wrap {animation: none;opacity: 1;transform: none;}
}
@media only screen and ( max-width : 767px ) {
  #mv {flex-direction: inherit;padding: 100px 0 9%;}
  #mv.mv_navy {background-image: url(../img/page/common/mv_bg-navy-sp.webp);}
  #mv.mv_blue {background: #14347C url(../img/page/common/mv_bg-blue-sp.webp) no-repeat bottom center / 110%;}
  #mv.avent_lusso_gaikan {background-image: url(../img/page/avent-lusso/mv_bg-sp.webp);}
  #mv.avent_lusso_naisou {background-image: url(../img/page/common/mv_bg-navy-sp.webp);}
  #mv.privacy_policy {padding-top: 60px;}
  #mv figure {position: relative;width: 100%;margin-bottom: 9%;}
  #mv .wrap {position: initial;padding-left: 3%;}
  #mv .wrap h1 {font-size: 10.5vw;}
  #mv.big .wrap h1 {margin-bottom: 0;font-size: 18vw;}
  #mv .wrap p {font-size: 3.4vw;}
}
/*--------------------------------------------------

	Page Section Common │ ページ共通

--------------------------------------------------*/
.watermark {
  position: relative;
  margin: 0 calc(50% - 50vw) -9%;
  z-index: -1;
  color: #F2F2F2;
  font-size: clamp(70px, calc(70px + 260 * ((100vw - 375px) / 1545)), 330px);
  line-height: 1;
  letter-spacing: 0;
  white-space: nowrap;
  pointer-events: none;
  user-select: none;
}
.watermark_sub {position: relative;margin: -10% 0 var(--size20-70);color: var(--blue);font-size: var(--font26);letter-spacing: 0;}
.title_common {margin-bottom: var(--size40);}
.title_common p {color: var(--blue);font-size: var(--font26);letter-spacing: 0;}
.title_common h2 {font-weight: 700;font-size: var(--font32);line-height: 1.4;letter-spacing: .027em;}
.title_common small {display: block;margin-top: 10px;font-size: var(--font15);letter-spacing: .027em;}
.page_section {overflow: hidden;}
.page_section1::before {
  content: '';
  position: absolute;
  top: 10%;
  left: 0;
  z-index: 0;
  width: 100%;
  height: 100%;
  background: url(../img/page/common/bg_cube.webp) repeat-y top left / 100%;
}
.page_section2 .block:nth-child(odd)::before {
  content: '';
  position: absolute;
  top: 0;
  left: 0;
  z-index: -2;
  width: 100%;
  height: 100%;
  background: url(../img/page/common/bg_cubeL.webp) no-repeat top left / 20%;
}
.page_section3 {background: url(../img/page/common/bg_cube02.webp) repeat-y top center / 100%;}
.page_section .block:not(:last-child) {margin-bottom: var(--size150);}
.page_section .sub_title {position: relative;margin-bottom: var(--size40);overflow: hidden;font-weight: 700;font-size: var(--font36);}
.page_section .sub_title span {position: relative;padding-right: 1em;}
.page_section .sub_title span::before {content: '';position: absolute;top: 50%;left: 101%;transform: translateY(-50%);width: 100vw;height: 1px;background: #707070;}
.page_section .sub_title_suquare {position: relative;margin-bottom: var(--size20-50);overflow: hidden;font-weight: 700;font-size: var(--font36);}
.page_section .sub_title_suquare::before {content: '';position: absolute;top: 42%;left: 0;transform: translateY(-50%);width: .7em;height: .7em;background: #000;}
.page_section .sub_title_suquare span {display: inline-block;position: relative;padding: 0 1em 0 1.4em;}
.page_section .sub_title_suquare span::before {content: '';position: absolute;top: 50%;left: 101%;transform: translateY(-50%);width: 100vw;height: 1px;background: #707070;}
.page_section .intro {
  align-items: flex-start;
  gap: var(--size20-100);
  position: relative;
  margin-bottom: clamp(120px, calc(120px + 100 * ((100vw - 375px) / 1545)), 220px);
}
.page_section .intro:last-child {margin-bottom: 0;}
.page_section .intro .content_bg {position: absolute;top: -3em;right: calc(51% - 50vw);z-index: -2;width: 67%;}
.page_section .content_bg2 {position: absolute;top: 9vw;left: 0;z-index: -2;width: 65%;}
.page_section .content_bg3 {position: absolute;top: -3em;left: calc(50% - 50vw);z-index: -2;width: 67%;}
.page_section .intro figure {position: relative;z-index: -2;width: 44.4%;box-shadow: 0 3px 6px rgba(0, 0, 0, 18%);}
.page_section .intro h3 {margin-bottom: var(--size20-40);color: var(--blue);font-weight: 700;font-size: var(--font26);letter-spacing: .060em;}
.page_section .intro ul {width: 80%;margin: 0 auto;}
.page_section .intro ul li:not(:last-child) {margin-bottom: var(--size50);}
.page_section .intro .wrap {flex: 1;}
.page_section .intro .wrap .content p {margin-bottom: var(--size30);color: var(--navy);letter-spacing: .025em;}
.page_section .intro .wrap .content p.lead {margin-bottom: var(--size20);color: var(--blue);font-weight: 700;font-size: var(--font30);}
.page_section .intro .wrap .content p:last-child {margin-bottom: 0;}
.page_section .intro .wrap .content p span {display: block;margin-bottom: 10px;font-weight: 600;line-height: 1.7;}
/* 構造体ラインナップ */
ul.feature_list {margin: 0 auto var(--size180);}
ul.feature_list:last-child {margin-bottom: 0;}
ul.feature_list li {flex-direction: row-reverse;gap: var(--size20);position: relative;margin-bottom: var(--size180);}
ul.feature_list li:last-child {margin-bottom: 0;}
ul.feature_list li::before {content: '';position: absolute;top: 0;left: 0;z-index: -1;width: 60%;height: 50%;border-radius: 0;background: linear-gradient(55deg, transparent 20%, #B4DEF7, transparent 80%);}
ul.feature_list li figure {width: 40%;}
ul.feature_list li figure img {border-radius: 0;overflow: hidden;box-shadow: 7px 6px 6px rgba(0, 0, 0, 16%);}
ul.feature_list li figure figcaption {margin-top: var(--size20);color: var(--navy);letter-spacing: .025em;text-align: center;}
ul.feature_list li .wrap {width: 55%;padding-top: var(--size30);}
ul.feature_list li .wrap h3 {display: flex;align-items: center;gap: var(--size20);margin-bottom: var(--size30);font-weight: 600;font-size: var(--font26);}
ul.feature_list li .wrap h3 span {flex: none;color: var(--blue);font-size: 4em;letter-spacing: .027em;}
ul.feature_list li .wrap p {margin-bottom: var(--size30);color: var(--navy);letter-spacing: .025em;}
ul.feature_list li .wrap p:last-child {margin-bottom: 0;}
/* number */
.brown_title {display: flex;align-items: flex-start;gap: 6em;position: relative;margin-bottom: var(--size20-50);}
.brown_title p {position: relative;padding: 0 1em 1.5em 0;font-weight: 500;font-size: var(--font20);line-height: 1;letter-spacing: .025em;text-align: right;}
.brown_title p::before {
  content: '';
  position: absolute;
  bottom: 0;
  left: calc(50% - 14.5vw);
  z-index: -1;
  width: 24vw;
  height: 75%;
  background: url(../img/page/common/bg-brown.webp) no-repeat bottom right / cover;
}
.brown_title p span {display: block;color: var(--navy);font-size: 7em;line-height: .8;letter-spacing: 0;text-align: right;}
.brown_title h2 {flex: 1;padding-top: 1em;font-weight: 700;font-size: var(--font36);letter-spacing: .027em;}
.brown_title h2 span {display: block;margin-top: var(--size20);color: var(--navy);font-weight: 400;font-size: var(--font18);line-height: 1.7;letter-spacing: .025em;}
@media only screen and ( max-width : 1024px ) {
  .brown_title {flex-direction: column;gap: 20px;}
  .brown_title h2 {padding-top: 0;}
}
@media only screen and ( max-width : 767px ) {
  .watermark {display: none;}
  .watermark_sub {margin-top: 0;}
  .watermark_sub::before {top: .5em;}
  .page_section1::before {top: 0;}
  .page_section2 .block:nth-child(odd)::before {background-size: 40%;}
  .page_section .block:first-child {padding-top: 30px;}
  .page_section .sub_title span {padding-right: 0;}
  .page_section .sub_title span::before {display: none;}
  .page_section .sub_title_suquare span {padding-bottom: 10px;}
  .page_section .sub_title_suquare span::before {top: 100%;left: 0;}
  .page_section .content_bg2 {top: -1.5em;}
  .page_section .content_bg3 {top: -1.5em;width: 97%;}
  .page_section .intro {flex-direction: column-reverse;gap: 20px;}
  .page_section .intro:not(:last-child) {margin-bottom: var(--size100);}
  .page_section .intro .content_bg {display: none;}
  .page_section .intro figure {width: 100%;box-shadow: 4px 3px 3px rgba(0, 0, 0, 16%);}
  .page_section .intro ul {width: 100%;}
  .page_section .intro .wrap .content p {margin-bottom: 0;}
  .page_section .intro .wrap .content p.lead {font-weight: 600;}
  ul.feature_list li {flex-direction: column-reverse;margin-bottom: var(--size100);}
  ul.feature_list li::before {display: none;}
  ul.feature_list li figure {width: 100%;}
  ul.feature_list li figure img {box-shadow: 4px 3px 3px rgba(0, 0, 0, 16%);}
  ul.feature_list li .wrap {width: 100%;margin-bottom: 10px;padding-top: 0;}
  ul.feature_list li .wrap h3 {position: relative;padding: 20px 0;}
  ul.feature_list li .wrap h3::before {
    content: '';
    position: absolute;
    top: 0;
    left: calc(50% - 50vw);
    z-index: -1;
    width: 100vw;
    height: 100%;
    border-radius: 0;
    background: linear-gradient(55deg, transparent 5%, #B4DEF7, transparent 95%);
  }
  ul.feature_list li .wrap h3 span {font-size: 3em;}
  ul.feature_list li .wrap p {margin-bottom: 0;}
  .brown_title {flex-direction: column;gap: 20px;}
  .brown_title p {font-size: 10px;}
  .brown_title p::before {left: calc(50% - 8em);width: 16em;height: 82%;}
}
@media only screen and ( max-width : 500px ) {
  .page_section .intro h3 {font-size: 22px;letter-spacing: 0;}
}
/*--------------------------------------------------

	Latest Updates │ 新着情報 一覧

--------------------------------------------------*/
#latest_updates_list {scroll-margin-top: 100px;}
#latest_updates .container {margin: var(--size130) 0;}
#latest_updates .container ul.category {margin-top: var(--size40);}
#latest_updates .container ul.category li {margin-bottom: 16px;}
#latest_updates .container ul.category li a {display: block;padding: .75em 1.5em;border-radius: 0;background: #DFE8F1;color: #8D9FAA;font-size: clamp(10px, calc(10px + 6 * ((100vw - 375px) / 1545)), 16px);letter-spacing: .06em;text-align: center;}
#latest_updates .container ul.category a.is-current {background: var(--blue);color: #fff;}
#latest_updates .container ul.list {display: flex;flex-direction: column;gap: var(--size20);width: 82%;}
#latest_updates .container ul.list li.item {position: relative;padding: 10px;border: 1px solid #8D9FAA;transition: .3s;}
#latest_updates .container ul.list li.item:hover {transform: scale(1.03);}
#latest_updates .container ul.list li.item dl {display: flex;align-items: center;gap: var(--size20-100);width: 100%;}
#latest_updates .container ul.list li.item dl dt {width: clamp(130px, 12vw, 300px);aspect-ratio: 6 / 4;overflow: hidden;}
#latest_updates .container ul.list li.item dl dt img {width: 100%;height: 100%;object-fit: cover;}
#latest_updates .container ul.list li.item dl dd {flex: 1;}
#latest_updates .container ul.list li.item dl dd h3 {margin-bottom: 10px;color: var(--blue);font-weight: 700;font-size: var(--font24);letter-spacing: .023em;}
#latest_updates .container ul.list li.item dl dd .wrap {display: flex;align-items: center;gap: 10px;}
#latest_updates .container ul.list li.item dl dd .wrap ul {display: flex;flex-wrap: wrap;align-items: center;gap: .6em;}
#latest_updates .container ul.list li.item dl dd .wrap ul li {
  display: inline-block;
  padding: .5em 1em;
  border-radius: 0;
  background: rgba(7, 25, 58, .08);
  font-weight: 700;
  font-size: var(--font14);
  line-height: 1;
  letter-spacing: .05em;
  color: var(--blue);
}
#latest_updates .container ul.list li.item dl dd .wrap time {color: var(--blue);font-weight: 700;font-size: var(--font14);letter-spacing: .03em;}
#latest_updates .pager {display: flex;align-items: center;justify-content: center;}
#latest_updates .pager p {margin-right: var(--size50);color: #C7C7C7;font-weight: 700;font-size: var(--font24);letter-spacing: .025em;}
#latest_updates .pager p span {color: var(--blue);}
#latest_updates .pager ul {display: flex;align-items: center;gap: var(--size20);}
#latest_updates .pager ul li a {display: flex;align-items: center;justify-content: center;gap: var(--size20);width: 2.6em;height: 2.6em;border: 1px solid #C7C7C7;border-radius: 0;}
#latest_updates .pager ul li a img {width: 50%;}
@media only screen and ( max-width : 767px ) {
  #latest_updates .container ul.category {display: flex;flex-wrap: wrap;gap: 10px;margin: 0 0 20px;}
  #latest_updates .container ul.category li {margin-bottom: 0;}
  #latest_updates .container ul.list {width: 100%;}
  #latest_updates .container ul.list li.item dl {gap: 5px;}
  #latest_updates .container ul.list li.item dl dd h3 {margin-bottom: 5px;font-size: var(--font18);}
  #latest_updates .container ul.list li.item dl dd .wrap {display: block;}
  #latest_updates .container ul.list li.item dl dd .wrap ul {margin-bottom: 5px;}
}
/*--------------------------------------------------

	Latest Updates │ 新着情報 詳細

--------------------------------------------------*/
#latest_updates_single {
  background:
    url(../img/page/common/bg_cubeR02.webp) no-repeat 100% -6% / 25%,
    url(../img/page/common/bg_cubeL.webp) no-repeat bottom left / 25%;
}
#latest_updates_single article {margin-bottom: var(--size60);padding-bottom: var(--size60);border-bottom: 1px solid #8D9FAA;}
#latest_updates_single article .title_wrap {margin-bottom: var(--size100);}
#latest_updates_single article .title_wrap h1 {position: relative;margin-bottom: 20px;color: var(--blue);font-weight: 700;font-size: var(--font24)}
#latest_updates_single article .title_wrap h1::after {content: '';position: absolute;top: 50%;left: 0;transform: translateY(-50%);width: 100%;height: 1px;background: #8D9FAA;}
#latest_updates_single article .title_wrap h1 span {position: relative;z-index: 1;padding-right: 1em;background: #fff;}
#latest_updates_single article .title_wrap .meta {display: flex;flex-wrap: wrap;align-items: center;gap: .8em;margin-bottom: var(--size50);}
#latest_updates_single article .title_wrap .meta .date-text {color: var(--blue);font-weight: 700;letter-spacing: .03em;}
#latest_updates_single article .title_wrap .meta .cate-pill {
  display: inline-block;
  padding: .35em 1.1em;
  background: rgba(7, 25, 58, .08);
  font-weight: 700;
  font-size: .85em;
  letter-spacing: .05em;
  color: var(--blue);
}
#latest_updates_single article .title_wrap p {letter-spacing: .042em;}
#latest_updates_single article .container {max-width: 894px;margin: 0 auto;}
#latest_updates_single article .container p {letter-spacing: .042em;}
#latest_updates_single article .container a {color: var(--blue);}
#latest_updates_single ul.pager {display: flex;justify-content: center;position: relative;max-width: 635px;margin: 0 auto;}
#latest_updates_single ul.pager li a {display: flex;align-items: center;gap: 10px;color: #001183;font-weight: 500;font-size: 15px;letter-spacing: .1em;}
#latest_updates_single ul.pager li.prev {position: absolute;top: 50%;transform: translateY(-50%);left: 0;}
#latest_updates_single ul.pager li.next {position: absolute;top: 50%;transform: translateY(-50%);right: 0;}
#latest_updates_single ul.pager li.back a {padding: 1.2em 4em;border-radius: 0;background: #EDEDED;}
#latest_updates_single ul.pager li a img {width: 1.2em;}
@media only screen and ( max-width : 767px ) {
  #latest_updates_single {padding-top: 100px;}
}
/*--------------------------------------------------

	Works │ 建築事例について 一覧

--------------------------------------------------*/
#works {padding-top: var(--size80);background: #000 url(../img/page/avent-lusso/gaikan/block2/bg.webp) no-repeat top center / cover;}
#works .inner {max-width: 1100px;}
#works ul.pagination li a {color: #fff;}
#works ul.pagination li.is-current a {color: #fff;}
#works ul.filter_tabs {display: flex;flex-wrap: wrap;justify-content: center;gap: 12px;margin-bottom: var(--size100);}
#works ul.filter_tabs li a {
  display: flex;
  justify-content: center;
  align-items: center;
  height: clamp(48px, calc(48px + 20 * ((100vw - 375px) / 1545)), 60px);
  padding: 0 1.6em;
  border: 1px solid #D6D6D6;
  background: #fff;
  color: var(--navy);
  font-weight: 500;
  font-size: var(--font18);
  letter-spacing: .025em;
  text-align: center;
  white-space: nowrap;
  transition: background .25s, border-color .25s, color .25s, transform .25s, box-shadow .25s;
}
#works ul.filter_tabs li a:hover {border-color: var(--blue);color: var(--blue);transform: translateY(-2px);box-shadow: 0 6px 14px rgba(7, 25, 58, .12);}
#works ul.filter_tabs a.is-current {border-color: var(--blue);background: var(--blue);color: #fff;box-shadow: 0 6px 14px rgba(7, 25, 58, .18);}
#works ul.filter_tabs a.is-current:hover {transform: none;}
#works ul.works_list {display: grid;grid-template-columns: repeat(3, 1fr);gap: var(--size20-60) var(--size20-50);margin-bottom: var(--size80);}
#works ul.works_list li {position: relative;padding: var(--size20) var(--size20) var(--size70);background: #fff;box-shadow: 0 6px 20px rgba(0, 0, 0, .16);transition: box-shadow .35s ease, transform .35s ease;}
#works ul.works_list li:hover {box-shadow: 0 20px 40px rgba(0, 0, 0, .28);transform: translateY(-6px);}
#works ul.works_list li figure {position: relative;margin-bottom: var(--size20);aspect-ratio: 671 / 455;overflow: hidden;}
#works ul.works_list li figure img {width: 100%;height: 100%;object-fit: cover;transition: transform .5s ease;}
#works ul.works_list li:hover figure img {transform: scale(1.08);}
#works ul.works_list li p.pref {
  display: inline-block;
  margin-bottom: var(--size20);
  padding: .5em 1.2em;
  border: 1px solid var(--navy);
  color: var(--navy);
  font-weight: 500;
  font-size: var(--font15);
  letter-spacing: .025em;
  transition: background .35s ease, color .35s ease;
}
#works ul.works_list li:hover p.pref {background: var(--navy);color: #fff;}
#works ul.works_list li h3 {font-weight: 600;font-size: var(--font18);line-height: 1.5;letter-spacing: .025em;transition: color .35s ease;}
#works ul.works_list li:hover h3 {color: var(--blue);}
#works ul.works_list li p.floor {
  position: absolute;
  right: var(--size20);
  bottom: var(--size20);
  padding: .3em 1.4em;
  border: 1px solid #C45937;
  color: #C45937;
  font-weight: 600;
  font-size: var(--font15);
  letter-spacing: .025em;
  transition: .3s;
}
#works ul.works_list li:hover p.floor {background: #C45937;color: #fff;}
#works ul.pagination {display: flex;justify-content: center;align-items: center;gap: var(--size20);}
#works ul.pagination li a {display: flex;justify-content: center;align-items: center;width: 2.2em;height: 2.2em;font-weight: 500;letter-spacing: 0;}
#works ul.pagination li.is-current a {border-bottom: 2px solid var(--blue);color: var(--blue);}
#works ul.pagination li.dots {padding: 0 .3em;}
#works ul.pagination li.next a {width: 1.2em;}
#works ul.pagination li.next img {width: 100%;}
@media only screen and ( max-width : 1024px ) {
  #works ul.works_list {grid-template-columns: repeat(2, 1fr);}
}
@media only screen and ( max-width : 767px ) {
  #works ul.filter_tabs {justify-content: flex-start;gap: 8px;flex-wrap: nowrap;overflow-x: auto;margin: 0 calc(50% - 50vw) var(--size60);padding: 0 20px 4px;}
  #works ul.filter_tabs li a {height: 44px;padding: 0 1.2em;font-size: 13px;}
}
@media only screen and ( max-width : 500px ) {
  #works ul.works_list {grid-template-columns: 1fr;}
}
/*--------------------------------------------------

	Works │ 建築事例について 詳細

--------------------------------------------------*/
#works_detail {padding: 0 0 var(--size180);}
#works_detail .watermark {margin-bottom: -10%;font-size: clamp(80px, calc(80px + 120 * ((100vw - 375px) / 1545)), 200px);text-align: right;}
#works_detail .brown_title {position: relative;margin-bottom: 20px;padding: 20px 0;}
#works_detail .brown_title::before {
  content: '';
  position: absolute;
  top: 50%;
  left: calc(50% - 55vw);
  transform: translateY(-50%);
  z-index: -1;
  width: clamp(190px, calc(190px + 170 * ((100vw - 375px) / 1545)), 360px);
  height: 100%;
  background: url(../img/page/works/single/bg-brown.webp) no-repeat center left / 100%;
}
#works_detail .brown_title h1 {font-weight: 700;font-size: var(--font32);line-height: 1.5;letter-spacing: .062em;}
#works_detail .slider {position: relative;width: 42%;max-width: 1028px;margin: 0 auto;}
#works_detail .slider::before {
  content: '';
  position: absolute;
  top: 0;
  left: calc(50% - 50vw);
  width: 100vw;
  height: 100%;
  background: #fff url(../img/page/works/single/bg-slide.webp) no-repeat top center / cover;
}
#works_detail .slider_viewport {position: relative;width: 100%;aspect-ratio: 1028 / 1027;overflow: hidden;}
#works_detail .slider_track li {position: absolute;inset: 0;opacity: 0;transition: opacity .6s ease;text-align: center;}
#works_detail .slider_track li.is-current {z-index: 1;opacity: 1;}
#works_detail .slider_track li img {width: 100%;height: 100%;object-fit: contain;object-position: center;user-select: none;}
#works_detail button {
  display: flex;
  position: absolute;
  top: 50%;
  z-index: 2;
  transform: translateY(-50%);
  width: clamp(5px, calc(5px + 15 * ((100vw - 375px) / 1545)), 20px);
  border: none;
  background: transparent;
  transition: opacity .3s;
}
#works_detail .slider_wrap button.slider_nav--prev {left: -16%;transform: translateY(-50%) scaleX(-1);}
#works_detail .slider_wrap button.slider_nav--next {right: -16%;}
#works_detail .slider_wrap button.slider_nav:hover {opacity: .6;}
#works_detail .slider_wrap .slider_dots {position: absolute;top: 100%;left: 0;z-index: 1;width: 100%;margin-top: 30px;display: flex;justify-content: center;gap: var(--size20-50);}
#works_detail .slider_wrap .slider_dots li button {
  width: clamp(6px, calc(6px + 14 * ((100vw - 375px) / 1545)), 20px);
  height: clamp(6px, calc(6px + 14 * ((100vw - 375px) / 1545)), 20px);
  border: none;
  background: #8C959A;
  transition: .3s;
}
#works_detail .slider_wrap .slider_dots li.is-current button {background: var(--blue);}
#works_detail .container {position: relative;max-width: 940px;margin: 0 auto var(--size130);padding: var(--size180) 0 var(--size130);}
#works_detail .container::before,
#works_detail .container::after {content: '';position: absolute;left: calc(50% - 50vw);z-index: -1;width: 100vw;height: 100%;}
#works_detail .container::before {
  top: 0;
  height: calc(100% + 80px);
  background-image: url(../img/page/works/single/bgL.webp), url(../img/page/works/single/bgR.webp);
  background-repeat: no-repeat, no-repeat;
  background-position: left top, right bottom;
  background-size: 40%, 40%;
}
#works_detail .container::after {bottom: 0;height: 1px;background: #D9D9D9;}
#works_detail .container ul.spec_list {display: grid;grid-template-columns: repeat(3, 1fr);gap: 2px;margin-bottom: var(--size130);}
#works_detail .container ul.spec_list li {
  padding: 10px;
  background: #F2F2F2;
  font-weight: 500;
  font-size: clamp(10px, calc(10px + 9 * ((100vw - 375px) / 1545)), 19px);
  text-align: center;
}
#works_detail .container ul.detail_list li {margin-bottom: var(--size90);}
#works_detail .container ul.detail_list li h2 {position: relative;margin-bottom: var(--size30);padding-bottom: var(--size20);color: var(--navy);font-weight: 700;font-size: var(--font30);letter-spacing: .027em;}
#works_detail .container ul.detail_list li h2::after {content: '';position: absolute;bottom: 0;left: 0;width: 100%;height: 2px;background-image: linear-gradient(to right, var(--blue) 4px, transparent 4px);background-size: 10px 2px;background-repeat: repeat-x;}
#works_detail .container ul.detail_list li p {font: var(--font18);line-height: 2;letter-spacing: .025em;}
#works_detail .container .view {margin: 0 auto;border: 1px solid #707070;}
#works_detail .owner_banner {position: relative;max-width: 1206px;margin: 0 auto;padding: var(--size20-50) var(--size20-70);border-radius: 0;background: #F2F2F2;transition: .3s;}
#works_detail .owner_banner::before {content: '';position: absolute;top: 1em;left: 1em;width: 100%;height: 100%;border-radius: 0;transition: .3s;}
#works_detail .owner_banner:hover::before {background: rgba(255, 255, 255, 0.18);box-shadow: 0 0 0 2px var(--blue) inset;}
#works_detail .owner_banner dl {align-items: center;}
#works_detail .owner_banner dl dt {width: 40%;}
#works_detail .owner_banner dl dd {
  display: flex;
  justify-content: center;
  align-items: center;
  gap: var(--size20-80);
  width: 50%;
  padding-bottom: var(--size20);
  font-weight: 600;
  font-size: var(--font24);
  letter-spacing: .025em;
  background: repeat-x linear-gradient(to right, var(--blue) 4px, transparent 4px) bottom / 10px 2px;
}
#works_detail .owner_banner dl dd {
  font-weight: 600;
  font-size: clamp(12px, calc(12px + 17 * ((100vw - 375px) / 1545)), 29px);
  letter-spacing: .057em;
  text-align: center;
}
#works_detail .owner_banner dl dd img {width: 1em;}
@media only screen and ( max-width : 767px ) {
  #works_detail {padding-top: 90px;}
  #works_detail .slider {width: 90%;padding-bottom: var(--size40);}
  #works_detail .slider_viewport {margin-bottom: var(--size40);}
  #works_detail .slider_wrap {display: flex;justify-content: center;align-items: center;gap: 20px;}
  #works_detail .slider_wrap button {position: initial;transform: none;}
  #works_detail .slider_wrap button.slider_nav--prev {transform: scaleX(-1);}
  #works_detail .slider_wrap .slider_dots {position: initial;width: auto;gap: 10px;margin-top: 0;}
  #works_detail .container {margin-bottom: 0;}
  #works_detail .container::before,
  #works_detail .container::after {display: none;}
  #works_detail .container ul.spec_list li {padding: 10px;}
  #works_detail .owner_banner {flex-direction: column;gap: var(--size30);}
}
/*--------------------------------------------------

	Privacy Policy │ プライバシーポリシー

--------------------------------------------------*/
#privacy_policy {max-width: 1200px;margin: -27% auto 0;}
#privacy_policy .container {
  padding: var(--size80) var(--size20-100) var(--size130);
  box-shadow: 0 3px 6px rgba(0, 0, 0, 16%);
  border-radius: 0;
  background: #fff;
}
#privacy_policy .container .title_common {margin-bottom: var(--size40);}
#privacy_policy .container .title_common h2 {color: var(--blue);font-size: clamp(50px, calc(50px + 50 * ((100vw - 375px) / 1545)), 100px);}
#privacy_policy .container .title_common p {position: relative;padding-left: 1.5em;color: var(--blue);font-weight: 500;font-size: clamp(12px, calc(12px + 10 * ((100vw - 375px) / 1545)), 22px);}
#privacy_policy .container .title_common p::before {content: '';position: absolute;top: 50%;left: 0;transform: translateY(-50%);width: .7em;height: .7em;background: var(--blue);}
#privacy_policy .container table tr {display: block;padding: var(--size100) 0;border-bottom: 1px solid #000;}
#privacy_policy .container table tr:last-child {padding-bottom: 0;border-bottom: none;}
#privacy_policy .container table tr th {
  display: block;
  width: auto;
  margin-bottom: 12px;
  padding-right: 0;
  font-weight: 600;
  font-size: var(--font24);
  letter-spacing: .060em;
  vertical-align: top;
}
#privacy_policy .container table tr td {display: block;font-size: var(--font18);letter-spacing: .025em;}
#privacy_policy .container table tr td ol {margin-left: 1.2em;}
#privacy_policy .container table tr td ol li {list-style-type: decimal;}
#privacy_policy .container table tr td ol li ul {margin-left: -1.2em;}
#privacy_policy .container table tr td ol li ul li {position: relative;padding-left: 1.2em;list-style: none;}
#privacy_policy .container table tr td ol li ul li::before {content: '・';position: absolute;top: .1em;left: 0;}
@media only screen and ( max-width : 767px ) {

}