@charset "UTF-8";
/* ======================================
   Variables & Functions
   ====================================== */
/* ======================================
   Root Variables & Fonts
   ====================================== */
:root {
  --basefont: "Zen Kaku Gothic New", sans-serif;
  --titlefont: "Darumadrop One", sans-serif;
  --tusunagifont: "TsunagiGothic", sans-serif;
  --fontbold: 700;
  --fontnormal: 500;
  --fontsmart: 400;
  --linecolor: #06C755;
}

@font-face {
  font-family: "TsunagiGothic";
  src: url("../../fonts/TsunagiGothic.woff2") format("woff2"), url("../../fonts/TsunagiGothic.woff") format("woff");
  font-style: normal;
  font-display: swap;
}
/* ======================================
   Reset / Normalize
   ====================================== */
html,
body {
  scrollbar-width: none;
  -ms-overflow-style: none;
}

html::-webkit-scrollbar,
body::-webkit-scrollbar {
  display: none;
}

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

* {
  margin: 0;
  padding: 0;
}

html {
  -webkit-text-size-adjust: 100%;
  font-size: 62.5%;
  scroll-behavior: smooth;
}

body {
  font-family: var(--basefont);
  font-size: 1rem;
  color: black;
  background-color: #fff;
  text-rendering: optimizeLegibility;
  overflow-x: hidden;
}

a {
  color: inherit;
  text-decoration: none;
}
a:hover, a:active {
  text-decoration: none;
}

*:focus {
  outline: none;
}

img, picture, video, canvas, svg {
  display: block;
  max-width: 100%;
  height: auto;
}

ul, ol {
  list-style: none;
}

button, input, textarea, select {
  font: inherit;
  color: inherit;
  background: transparent;
  border: none;
  outline: none;
  appearance: none;
}

button {
  cursor: pointer;
}

table {
  border-collapse: collapse;
  border-spacing: 0;
}

h1, h2, h3, h4, h5, h6 {
  font-size: inherit;
  font-weight: inherit;
}

strong, b {
  font-weight: 600;
}

em {
  font-style: normal;
}

blockquote {
  quotes: none;
}
blockquote::before, blockquote::after {
  content: "";
}

@media (max-width: 768px) {
  .pc-only {
    display: none;
  }
}

/* ======================================
   Layout Utility
   ====================================== */
.inner {
  margin-inline: auto;
  position: relative;
  padding-inline: 2.4rem;
}
@media (max-width: 768px) {
  .inner {
    margin-inline: initial;
    padding-inline: initial;
  }
}
.inner--1200 {
  max-width: clamp(1248px, 1000px + (1248 - 1000) * (100vw - 768px) / (1920 - 768), 1000px);
}
.inner--360 {
  max-width: clamp(1248px, 1200px + (1248 - 1200) * (100vw - 768px) / (1920 - 768), 1200px);
}
.inner--420 {
  max-width: clamp(1048px, 1000px + (1048 - 1000) * (100vw - 768px) / (1920 - 768), 1000px);
}
.inner--560 {
  max-width: clamp(848px, 1000px + (848 - 1000) * (100vw - 768px) / (1920 - 768), 1000px);
}
.inner--160 {
  max-width: clamp(1648px, 1200px + (1648 - 1200) * (100vw - 768px) / (1920 - 768), 1200px);
}
.inner--260 {
  max-width: clamp(1448px, 1200px + (1448 - 1200) * (100vw - 768px) / (1920 - 768), 1200px);
}

.itemfont {
  font-family: var(--tusunagifont);
}

.anchor-txt {
  position: absolute;
  inset: 0;
  z-index: 100;
}

.text-fluorescent {
  background: linear-gradient(transparent 60%, #FFD4B9 60%);
}

/* ======================================
   Components
   ====================================== */
.bordertitle {
  position: relative;
}
.bordertitle:before {
  content: "";
  position: absolute;
  left: 0;
  top: 50%;
  transform: translateY(-50%);
  width: 100%;
  height: 0.4rem;
  background: url(../../dist/images/common/bordertitle.svg) repeat-x center center/contain;
}
.bordertitle--title {
  text-align: center;
}
.bordertitle--title .text {
  background-color: white;
  display: inline-block;
  position: relative;
  z-index: 2;
  padding: 0 clamp(0.8rem, 2.34375vw, 2.4rem);
  font-size: clamp(1.8rem, 2.734375vw, 2.8rem);
  font-family: var(--titlefont);
  line-height: 1;
}

body.my-theme .btn {
  display: block;
  font-weight: initial;
  text-align: initial;
  -webkit-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none;
  background-color: transparent;
  border: none;
  padding: initial;
  font-size: initial;
  line-height: initial;
  border-radius: initial;
  transition: initial;
}
body.my-theme .btn--box {
  display: flex;
  align-items: center;
  justify-content: center;
  background-color: #000;
  height: clamp(5.6rem, 6.25vw, 6.4rem);
  border-radius: clamp(2.8rem, 3.125vw, 3.2rem);
  color: #fff;
  gap: 1rem;
  padding: 0;
  text-decoration: none;
  font-family: var(--titlefont);
  font-weight: var(--fontbold);
  font-size: clamp(1.5rem, 1.7578125vw, 1.8rem);
  letter-spacing: 0.1em;
  white-space: nowrap;
  transition: background-color 0.3s ease, color 0.3s ease;
}
body.my-theme .btn--box .arrow {
  transition: transform 0.5s ease;
  display: inline-block;
  width: clamp(1.5rem, 1.85546875vw, 1.9rem);
}
body.my-theme .btn--box:hover {
  background-color: #222;
  color: #fff;
}
body.my-theme .btn--box:hover .arrow {
  transform: translateX(clamp(0.65rem, 0.5208333333vw, 1rem));
}
body.my-theme .btn--white .box {
  background-color: #fff;
  color: #000;
  border: 2px solid #000;
}
body.my-theme .btn--white .box:hover {
  background-color: #000;
  color: #fff;
}
body.my-theme .btn--white .box:hover .arrow rect, body.my-theme .btn--white .box:hover .arrow path {
  fill: white;
}

.telcontents .tel {
  display: flex;
  align-items: flex-end;
  gap: clamp(0.52rem, 0.4166666667vw, 0.8rem);
  font-family: var(--titlefont);
  flex-wrap: wrap;
}
.telcontents .tel .text {
  font-size: clamp(2rem, 2.34375vw, 2.4rem);
  line-height: 1;
}
.telcontents .tel .txt {
  font-size: clamp(3rem, 4.39453125vw, 4.5rem);
  line-height: 1;
  font-weight: 700;
}
.telcontents .tel .txt a {
  line-height: 1;
}

.pageheader {
  margin-bottom: clamp(3.2rem, 9.375vw, 9.6rem);
  padding-top: clamp(10.1rem, 13.671875vw, 14rem);
}
@media (max-width: 768px) {
  .pageheader {
    padding-inline: 2.4rem;
  }
}
.pageheader .title {
  padding-bottom: clamp(4rem, 13.671875vw, 14rem);
  margin-bottom: clamp(1.6rem, 2.34375vw, 2.4rem);
  text-align: center;
  background: url(../../dist/images/common/borderpagetitle.svg) repeat-x left bottom/contain;
}
.pageheader .title .text, .pageheader .title .txt {
  display: block;
}
.pageheader .title .text {
  font-family: var(--titlefont);
  font-size: clamp(4rem, 9.765625vw, 10rem);
  line-height: 1;
  margin-bottom: 1.6rem;
}
.pageheader .title .txt {
  font-size: clamp(1.2rem, 1.46484375vw, 1.5rem);
  line-height: 1;
  font-weight: var(--fontnormal);
}
.pageheader--homebuilding {
  margin-bottom: clamp(4.8rem, 11.71875vw, 12rem);
}
@media (max-width: 768px) {
  .pageheader--homebuilding {
    padding-inline: inherit;
    padding-top: 8.5rem;
  }
  .pageheader--homebuilding .pankuzu {
    padding-left: 2.4rem;
  }
}
.pageheader--homebuilding .title {
  position: relative;
  padding-bottom: 0;
  margin-bottom: 2.4rem;
  width: 100%;
  height: clamp(30rem, 53.7109375vw, 55rem);
  background-size: cover;
  background-repeat: no-repeat;
  display: flex;
  justify-content: center;
  align-items: center;
  background-image: var(--pc-bg);
}
@media (max-width: 768px) {
  .pageheader--homebuilding .title {
    background-image: var(--sp-bg);
  }
}
.pageheader--homebuilding .title .text {
  font-size: clamp(3.4rem, 5.2734375vw, 5.4rem);
  color: white;
  margin-bottom: 0;
  position: relative;
  z-index: 2;
  letter-spacing: 0.02em;
}
.pageheader--homebuilding .title:before {
  content: "";
  position: absolute;
  left: 0;
  top: 0;
  background: rgba(0, 0, 0, 0.2);
  width: 100%;
  height: 100%;
  backface-visibility: hidden;
  transform: translateZ(0);
  will-change: opacity, transform;
}

.pankuzu ul {
  display: flex;
  justify-content: flex-end;
  gap: clamp(0.52rem, 0.4166666667vw, 0.8rem);
  font-size: clamp(1.1rem, 1.171875vw, 1.2rem);
}
@media (max-width: 768px) {
  .pankuzu ul {
    justify-content: flex-start;
  }
}
.pankuzu ul a.txt {
  color: black;
  text-decoration: underline;
  white-space: nowrap;
}
.pankuzu ul a.txt:after {
  content: url(../../dist/images/common/arrow.svg);
  padding-left: clamp(0.52rem, 0.4166666667vw, 0.8rem);
}

.bannersbox {
  display: flex;
  flex-wrap: wrap;
  position: relative;
}
@media (max-width: 768px) {
  .bannersbox {
    display: block;
  }
}
.bannersbox .banner {
  position: relative;
  flex: 1 1 50%;
  overflow: hidden;
}
.bannersbox .banner .bg {
  overflow: hidden;
}
.bannersbox .banner .bg img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  transition: transform 0.6s ease;
}
@media (max-width: 768px) {
  .bannersbox .banner .bg img {
    aspect-ratio: 375/250;
  }
}
.bannersbox .banner .text {
  color: #fff;
  z-index: 2;
  font-family: var(--titlefont);
  line-height: 1.2;
  word-break: keep-all;
}
.bannersbox .banner.box1 .text {
  left: clamp(3.64rem, 2.9166666667vw, 5.6rem);
  top: 50%;
  transform: translateY(-50%);
  font-size: clamp(1.8rem, 2.9296875vw, 3rem);
  position: absolute;
  line-height: 1.8;
}
@media (max-width: 768px) {
  .bannersbox .banner.box1 .text {
    left: 2.4rem;
    line-height: 1.5;
  }
}
.bannersbox .banner.box2 .titles {
  position: absolute;
  z-index: 2;
  left: clamp(2.4rem, 5.859375vw, 6rem);
  top: clamp(3.2rem, 5.859375vw, 6rem);
}
.bannersbox .banner.box2 .titles .text {
  font-size: clamp(2.8rem, 4.8828125vw, 5rem);
  line-height: 1.5;
}
@media (max-width: 768px) {
  .bannersbox .banner.box2 .titles .text {
    line-height: 1.5;
  }
}
.bannersbox .banner:hover .bg img {
  transform: scale(1.08);
}
.bannersbox .arrowtext {
  position: absolute;
  display: flex;
  align-items: center;
  gap: clamp(0.8rem, 1.5625vw, 1.6rem);
  right: clamp(2.4rem, 5.46875vw, 5.6rem);
  bottom: clamp(2.4rem, 5.37109375vw, 5.5rem);
  color: #fff;
  z-index: 2;
  font-size: 1.6rem;
  font-family: var(--tusunagifont);
  letter-spacing: 0.05em;
  text-transform: uppercase;
}

.iconarrow.arrow--white rect, .iconarrow.arrow--white path {
  fill: #fff;
}
.iconarrow.arrow--black rect, .iconarrow.arrow--black path {
  fill: #000;
}

.sp-only {
  display: none;
}
@media (max-width: 768px) {
  .sp-only {
    display: block;
  }
}

main {
  margin-bottom: clamp(11.5rem, 15.625vw, 16rem);
}

/* ======================================
   Section Title
   ====================================== */
.headertitle {
  margin-bottom: clamp(4.16rem, 3.3333333333vw, 6.4rem);
}
.headertitle .title .text,
.headertitle .title .txt {
  display: block;
  text-align: center;
}
.headertitle .title .text {
  margin-bottom: clamp(1.6rem, 2.34375vw, 2.4rem);
  font-family: var(--titlefont);
  font-size: clamp(4rem, 6.8359375vw, 7rem);
  line-height: 1;
}
.headertitle .title .txt {
  font-size: clamp(1.2rem, 1.4691478942vw, 1.5rem);
  font-weight: var(--fontbold);
}

.followbox {
  position: fixed;
  right: clamp(4.42rem, 3.5416666667vw, 6.8rem);
  bottom: 3.4444444444rem;
  z-index: 100;
}
@media (max-width: 768px) {
  .followbox {
    display: none;
  }
}
.followbox .copytitle {
  margin-bottom: clamp(12rem, 21.484375vw, 22rem);
}
.followbox .copytitle path {
  fill: black;
}
.followbox .snsbtn {
  display: flex;
  flex-direction: column;
  gap: clamp(1.04rem, 0.8333333333vw, 1.6rem);
  align-items: center;
  justify-content: center;
}
.followbox .snsbtn g {
  stroke: black;
}
.followbox .snsbtn path {
  fill: black;
}

/* ======================================
#gmenubox
   ====================================== */
#gmenubox {
  position: fixed;
  width: 64rem;
  background-color: #EDEDED;
  z-index: 999;
  right: -100%;
  top: 0;
  height: 100vh;
  transition: right 0.8s ease;
  overflow-y: auto;
  overscroll-behavior: contain;
  -webkit-overflow-scrolling: touch;
}
#gmenubox::-webkit-scrollbar {
  display: none;
}
#gmenubox {
  scrollbar-width: none;
  -ms-overflow-style: none;
}
@media (max-width: 768px) {
  #gmenubox {
    width: 100%;
  }
  #gmenubox .is-case-menu .icon-cross {
    width: 1rem;
    height: 1rem;
    background: url(../../dist/images/common/icon-cross-sp.svg) no-repeat center center/contain;
    transform: rotate(45deg);
    margin-right: 0.3rem;
  }
  #gmenubox .is-case-menu .icon-cross:before, #gmenubox .is-case-menu .icon-cross:after {
    content: none;
  }
  #gmenubox .icon-cross {
    width: 1.5rem;
    height: 1.5rem;
    position: relative;
  }
  #gmenubox .icon-cross::before, #gmenubox .icon-cross::after {
    content: "";
    position: absolute;
    inset: 0;
    background-repeat: no-repeat;
    background-position: center;
    background-size: contain;
    transition: opacity 0.2s ease;
  }
  #gmenubox .icon-cross::before {
    background-image: url(../../dist/images/common/icon-cross.svg);
    opacity: 1;
  }
  #gmenubox .icon-cross::after {
    background-image: url(../../dist/images/common/icon-cross-open.svg);
    opacity: 0;
  }
  #gmenubox .icon-cross.active::before {
    opacity: 0;
  }
  #gmenubox .icon-cross.active::after {
    opacity: 1;
  }
  #gmenubox .btns {
    display: flex;
    gap: 0.8rem;
    margin-bottom: 3.2rem;
  }
}
#gmenubox.active {
  right: 0;
}
#gmenubox .contents {
  padding: 12rem 8rem 7.96rem;
}
@media (max-width: 768px) {
  #gmenubox .contents {
    padding: 9.3rem 2.4rem 5.6rem;
  }
}
#gmenubox .contents .btn--top {
  width: 32.7rem;
  margin-bottom: clamp(3.2rem, 3.90625vw, 4rem);
}
@media (max-width: 768px) {
  #gmenubox .contents .btn--top {
    width: auto;
  }
}
#gmenubox .contents .btn--bottom {
  width: 32rem;
  margin-bottom: 1.6rem;
}
@media (max-width: 768px) {
  #gmenubox .contents .btn--bottom {
    width: auto;
    margin-bottom: 0;
    flex: 0 0 calc((100% - 0.8rem) / 2);
  }
}
#gmenubox .contents .btn--white {
  width: 32rem;
  margin-bottom: 4rem;
}
@media (max-width: 768px) {
  #gmenubox .contents .btn--white {
    width: auto;
    margin-bottom: 0;
    flex: 0 0 calc((100% - 0.8rem) / 2);
    text-align: center;
  }
}
#gmenubox .contents .btn--white .box {
  background-color: var(--linecolor);
  border-color: var(--linecolor);
  color: white;
}
#gmenubox .contents .banner .cap {
  width: 32.7rem;
}
#gmenubox .contents .banner .cap:not(:last-of-type) {
  margin-bottom: 0.8rem;
}
#gmenubox .contents .banner .cap a {
  display: block;
}
#gmenubox .contents .snsbtn {
  display: flex;
  align-items: center;
  gap: 1.95rem;
  margin-bottom: clamp(3.2rem, 3.90625vw, 4rem);
}
@media (max-width: 768px) {
  #gmenubox .contents .snsbtn {
    justify-content: center;
    gap: 1.6rem;
  }
}
#gmenubox .contents .snsbtn path {
  fill: #000000;
}
#gmenubox .contents .snsbtn g {
  stroke: #000000;
}
#gmenubox .contents .navbox {
  margin-bottom: clamp(3.2rem, 3.90625vw, 4rem);
}
#gmenubox .contents .navbox .menu {
  border-bottom: 1px dashed black;
  padding-bottom: clamp(1.6rem, 2.34375vw, 2.4rem);
}
@media (max-width: 768px) {
  #gmenubox .contents .navbox .menu {
    border-bottom: 1px solid #CCCCCC;
  }
}
#gmenubox .contents .navbox .menu:not(:last-of-type) {
  margin-bottom: clamp(1.6rem, 2.34375vw, 2.4rem);
}
#gmenubox .contents .navbox .menu--list {
  padding-top: 1.6rem;
}
@media (max-width: 768px) {
  #gmenubox .contents .navbox .menu--list {
    padding-top: 0;
  }
}
#gmenubox .contents .navbox div.box {
  display: block;
}
@media (min-width: 768px) {
  #gmenubox .toggletitle {
    display: none;
  }
}

/* ======================================
#headbox
   ====================================== */
#headbox {
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
}
#headbox #headlogo {
  position: absolute;
  left: clamp(2.652rem, 2.125vw, 4.08rem);
  top: clamp(2.1125rem, 1.6927083333vw, 3.25rem);
  z-index: 1000;
}
@media (max-width: 768px) {
  #headbox #headlogo {
    width: 13.8rem;
  }
}
#headbox #headlogo:after {
  content: "";
  position: absolute;
  width: clamp(4.6rem, 5.8765915769vw, 6rem);
  height: 3.256rem;
  background: url(../../dist/images/common/50th.svg) no-repeat center center/contain;
  top: 0.6rem;
  right: -7rem;
}
@media (max-width: 768px) {
  #headbox #headlogo:after {
    right: -3.5rem;
    top: 1.2rem;
    width: 3.241rem;
    height: 1.77rem;
  }
}
@media (max-width: 768px) {
  #headbox #headlogo {
    left: 1.8rem;
    top: 1.6rem;
  }
}
#headbox rect, #headbox path {
  fill: #402210;
  transition: 0.5s;
}
@media (max-width: 768px) {
  #headbox {
    align-items: center;
  }
}
#headbox .gmenu {
  display: flex;
  align-items: center;
  gap: clamp(1.6rem, 1.4583333333vw, 2.8rem);
  position: fixed;
  right: clamp(1.6rem, 2.5208333333vw, 4.83rem);
  top: clamp(2.7rem, 2.5vw, 4.8rem);
  z-index: 1000;
}
#headbox .gmenu path {
  fill: black;
}
#headbox .gmenu .entxt {
  font-family: var(--titlefont);
  font-size: clamp(1.8rem, 1.09375vw, 2.1rem);
  line-height: 1.4285714286;
  transition: 0.5s;
}

#gbtn {
  width: clamp(4rem, 3.3713541667vw, 6.473rem);
  position: relative;
  height: clamp(1.4rem, 1.0416666667vw, 2rem);
  cursor: pointer;
  transition: 0.5s all ease;
}
#gbtn .item {
  position: absolute;
  left: 0;
  transition: 0.5s all ease;
}
#gbtn .item--top {
  top: 0;
}
#gbtn .item--bottom {
  bottom: 0;
}
#gbtn.active {
  display: flex;
  align-items: center;
  justify-content: center;
}
#gbtn.active .item {
  width: 4.5rem;
  margin: auto;
}
#gbtn.active .item--top {
  transform: rotate(45deg) translateY(-50%);
  top: 50%;
}
#gbtn.active .item--bottom {
  transform: rotate(-45deg) translateY(-50%);
  top: 50%;
  bottom: auto;
}

.topslidebtn {
  width: 32rem;
  position: absolute;
  right: clamp(2.4rem, 12.4902419984vw, 16rem);
  margin-top: clamp(-15rem, -11.7096018735vw, -2.8rem);
  z-index: 2;
}
@media (max-width: 768px) {
  .topslidebtn {
    right: 0;
    left: 0;
    width: 32.7rem;
    margin-inline: auto;
    margin-top: -2.4rem;
  }
}

.slider {
  position: relative;
}
.slider--inbox {
  display: flex;
  width: 300%; /* スライド数 × 100vw */
  height: 100vh;
  transition: transform 1s ease;
  padding-top: clamp(15.6rem, 15.328125vw, 29.43rem);
}
.slider .btn {
  position: absolute;
  z-index: 2;
  right: clamp(10.4rem, 8.3333333333vw, 16rem);
  bottom: clamp(5.2rem, 4.1666666667vw, 8rem);
  width: 32rem;
}
@media (max-width: 768px) {
  .slider .btn {
    right: 0;
    left: 0;
    margin: auto;
    bottom: 0;
  }
}
.slider .btn .box {
  letter-spacing: 0.1em;
}

.slider {
  position: relative;
  overflow: hidden;
}
.slider--inbox {
  display: flex;
  width: 300vw;
  height: 100vh;
  transition: transform 1s ease;
}

.slide {
  flex-shrink: 0;
  width: 100vw;
  height: 100vh;
  position: relative;
  overflow: hidden;
}

.slide img, .slide iframe, .slide video {
  width: 100%;
  height: 100%;
  aspect-ratio: 1920/1280;
  object-fit: cover;
  display: block;
}

.video-wrap {
  width: 100%;
  aspect-ratio: 16/9;
  overflow: hidden;
  margin-top: clamp(15.6rem, 22.9742388759vw, 29.43rem);
}
@media (max-width: 768px) {
  .video-wrap {
    aspect-ratio: 9/12.5;
  }
}
.video-wrap .video {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.visualmainbox {
  position: absolute;
  z-index: 3;
  top: 5.6770833333vw;
  padding-bottom: 0;
  width: clamp(32.3rem, 62.4512099922vw, 80rem);
  left: 0;
  right: 0;
  margin: auto;
  animation: bouncePop 1.2s cubic-bezier(0.25, 0.75, 0.5, 1.2) forwards;
}
@media (max-width: 768px) {
  .visualmainbox {
    width: 32.3rem;
    top: 8.5rem;
  }
}

@keyframes bouncePop {
  0% {
    opacity: 0;
    transform: scale(0.85);
  }
  30% {
    opacity: 1;
    transform: scale(1.12);
  }
  55% {
    transform: scale(0.94);
  }
  75% {
    transform: scale(1.06);
  }
  90% {
    transform: scale(0.98);
  }
  100% {
    opacity: 1;
    transform: scale(1);
  }
}
/* ======================================
   Footer
   ====================================== */
#footerbox {
  position: relative;
  padding-top: clamp(14rem, 25.390625vw, 26rem);
  padding-bottom: clamp(3.2rem, 11.71875vw, 12rem);
}
#footerbox.is-show::after {
  transform: translateY(0);
  opacity: 1;
}
@media (max-width: 768px) {
  #footerbox {
    padding-inline: 2.4rem;
  }
}
#footerbox .snsbtn {
  display: none;
}
#footerbox .snsbtn path {
  fill: #000000;
}
#footerbox .snsbtn g {
  stroke: #000000;
}
@media (max-width: 768px) {
  #footerbox .snsbtn {
    display: flex;
    justify-content: center;
    align-items: center;
    gap: 1.6rem;
    margin-bottom: 3.2rem;
  }
}
#footerbox .copyright {
  display: flex;
  align-items: center;
  gap: clamp(1.04rem, 0.8333333333vw, 1.6rem);
  font-size: 1.2rem;
}
@media (max-width: 768px) {
  #footerbox .copyright {
    justify-content: center;
    gap: 1.6rem;
  }
}
#footerbox .copyright .icon {
  width: clamp(10rem, 6.25vw, 12rem);
}
#footerbox .navbox {
  margin-bottom: clamp(1.56rem, 1.25vw, 2.4rem);
}
@media (max-width: 768px) {
  #footerbox .navbox {
    margin-bottom: 3.2rem;
  }
  #footerbox .navbox .menu.is-case-menu .title {
    margin-bottom: 0;
  }
  #footerbox .navbox .title {
    margin-bottom: 1.6rem;
  }
  #footerbox .navbox .menu--list {
    max-height: none;
  }
}
#footerbox .inner {
  position: relative;
  z-index: 10;
}
#footerbox::after {
  content: "";
  position: absolute;
  top: 0.4rem;
  left: 0;
  width: 100%;
  height: 100%;
  background: url(../images/common/footer-bg2.svg) no-repeat center top/contain;
  z-index: 2;
  transform: translateY(100%);
  opacity: 0;
  transition: transform 0.8s ease, opacity 0.8s ease;
}
@media (max-width: 768px) {
  #footerbox::after {
    background: url(../images/common/footer-bg2_sp.svg) no-repeat center top/contain;
  }
}
#footerbox:before {
  content: "";
  position: absolute;
  left: 0;
  bottom: 0;
  width: 100%;
  height: calc(100% - 24.4270833333vw);
  background-color: #ededed;
}
#footerbox .boxtitle {
  position: absolute;
  left: clamp(2rem, 4.0593286495vw, 5.2rem);
  top: -27rem;
  width: clamp(9.6rem, 16.081186573vw, 20.6rem);
}
@media (max-width: 768px) {
  #footerbox .boxtitle {
    top: -20rem;
  }
}
#footerbox .boxtitle img {
  width: 100%;
}
@media (max-width: 768px) {
  #footerbox .boxtitle {
    left: 50%;
    transform: translateX(-50%);
  }
}
#footerbox .footertitle {
  text-align: center;
  margin-bottom: clamp(2.4rem, 5.46875vw, 5.6rem);
}
#footerbox .footertitle .lead {
  font-size: clamp(1.2rem, 1.4691478942vw, 1.5rem);
  line-height: 1.4;
  font-weight: var(--fontnormal);
}
#footerbox .footertitle .title {
  font-size: clamp(2.4rem, 2.0833333333vw, 4rem);
  line-height: 1.45;
  font-family: var(--titlefont);
  margin-bottom: clamp(0.8rem, 1.5625vw, 1.6rem);
}
@media (max-width: 768px) {
  #footerbox .footertitle .title {
    line-height: 1.4;
  }
}
#footerbox .footertitle .title .itemfont {
  letter-spacing: calc(clamp(6.5rem, 5.2083333333vw, 10rem) / 100);
}
#footerbox .btns {
  margin-bottom: clamp(1.6rem, 5.46875vw, 5.6rem);
}
#footerbox .btns .list {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: clamp(1.04rem, 0.8333333333vw, 1.6rem);
}
@media (max-width: 768px) {
  #footerbox .btns .list {
    flex-wrap: wrap;
  }
}
@media (max-width: 768px) {
  #footerbox .btns .list .btn {
    width: 100%;
  }
}
#footerbox .btns .list .btn .btn--box {
  padding-left: 4rem;
  padding-right: 4rem;
}
#footerbox .noticecontents {
  display: flex;
  align-items: center;
  justify-content: center;
  flex-direction: row-reverse;
  gap: clamp(3.64rem, 2.9166666667vw, 5.6rem);
  margin-bottom: clamp(4.8rem, 10.15625vw, 10.4rem);
  padding-bottom: clamp(4.68rem, 3.75vw, 7.2rem);
  border-bottom: 1px dashed #000;
}
@media (max-width: 768px) {
  #footerbox .noticecontents {
    padding-bottom: 0;
    border-bottom: none;
    display: block;
    text-align: center;
  }
}
#footerbox .noticecontents .telcontents .tel {
  margin-bottom: clamp(0.8rem, 1.26953125vw, 1.3rem);
}
@media (max-width: 768px) {
  #footerbox .noticecontents .telcontents .tel {
    justify-content: center;
  }
}
#footerbox .noticecontents .telcontents .hourstext {
  text-align: center;
  font-size: 1.3rem;
  line-height: 1;
  letter-spacing: calc(clamp(1.95rem, 1.5625vw, 3rem) / 100);
}
#footerbox .noticecontents .btn--box {
  font-size: clamp(1.5rem, 1.7578125vw, 1.8rem);
  background-color: var(--linecolor);
  width: 23rem;
  border: none;
  color: white;
}
@media (max-width: 768px) {
  #footerbox .noticecontents .btn--box {
    width: auto;
    margin-bottom: 2.4rem;
  }
}
#footerbox .noticecontents .btn--box .txt {
  font-family: var(--basefont);
  font-weight: 700;
  letter-spacing: 0.05em;
}
#footerbox .noticecontents .btn--box .arrow rect, #footerbox .noticecontents .btn--box .arrow path {
  fill: white;
}

/* ======================================
   Navbox
   ====================================== */
@media (max-width: 768px) {
  .navbox .itemtitle {
    padding-bottom: 1.6rem;
    border-bottom: 1px solid #CCCCCC;
    margin-bottom: 1.6rem;
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding-inline: 0.8rem 1.1rem;
    font-weight: var(--fontbold);
    line-height: 1.5;
    font-size: clamp(1.5rem, 0.8333333333vw, 1.6rem);
  }
  .navbox .itemtitle .arrow {
    width: 0.721rem;
    height: 0.7rem;
    display: block;
    position: relative;
    border-top: 1.5px solid #000000;
    border-right: 1.5px solid #000000;
    transform: rotate(45deg);
  }
}
@media (max-width: 768px) {
  .navbox .title {
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding-inline: 0.8rem;
  }
}
.navbox .title .txt {
  font-weight: var(--fontbold);
  line-height: 1.5;
  font-size: clamp(1.5rem, 1.5670910872vw, 1.6rem);
}
.navbox .title.title--top {
  margin-bottom: clamp(1.625rem, 1.3020833333vw, 2.5rem);
}
.navbox .box {
  display: flex;
  justify-content: flex-start;
  align-items: flex-start;
  gap: clamp(3.64rem, 2.9166666667vw, 5.6rem);
}
.navbox .box .title {
  margin-bottom: clamp(1.04rem, 0.8333333333vw, 1.6rem);
  font-size: clamp(1.5rem, 0.8333333333vw, 1.6rem);
}
@media (max-width: 768px) {
  .navbox .menu {
    padding-bottom: 1.6rem;
    border-bottom: 1px solid #CCCCCC;
  }
  .navbox .menu:not(:last-of-type) {
    margin-bottom: 1.6rem;
  }
}
.navbox .menu.item ul:not(:last-of-type) {
  margin-bottom: clamp(1.5rem, 2.34375vw, 2.4rem);
}
.navbox .menu--minlist {
  font-size: clamp(0.78rem, 0.625vw, 1.2rem);
  line-height: 1.5;
}
.navbox .menu--list {
  font-size: 1.4rem;
  line-height: 1.5;
}
@media (max-width: 768px) {
  .navbox .menu--list {
    max-height: 0;
    overflow: hidden;
    transition: all 0.4s ease;
  }
  .navbox .menu--list.is-open {
    max-height: 50rem;
    padding-top: 1.6rem;
  }
}
.navbox .menu--list li:not(:last-child) {
  margin-bottom: 0.8rem;
}
.navbox .menu--list .txt a {
  font-weight: var(--fontsmart);
  position: relative;
  font-size: clamp(1.2rem, 1.1570247934vw, 1.4rem);
}
.navbox .menu--list .txt a::before {
  content: "-";
  padding-right: clamp(0.195rem, 0.15625vw, 0.3rem);
}

.icon-cross {
  width: 1.5rem;
  height: 1.5rem;
  display: block;
  position: relative;
}
.icon-cross .item {
  transition: 0.5s ease;
}
.icon-cross.active .item {
  opacity: 0;
}

/* ======================================
   Line Index Box
   ====================================== */
.lineindexbox {
  padding-top: clamp(4.8rem, 7.8125vw, 15rem);
  padding-bottom: clamp(5.6rem, 8.3333333333vw, 16rem);
}
@media (max-width: 768px) {
  .lineindexbox {
    padding-inline: 2.4rem;
  }
}
.lineindexbox ul {
  display: flex;
  flex-wrap: wrap;
}
@media (max-width: 768px) {
  .lineindexbox ul {
    display: block;
  }
}
.lineindexbox .listbox {
  position: relative;
  padding: clamp(2.6rem, 2.0833333333vw, 4rem);
  width: 50%;
  background: url(../images/common/line.png) repeat-x left bottom/clamp(9.945rem, 7.96875vw, 15.3rem);
}
@media (max-width: 768px) {
  .lineindexbox .listbox {
    width: 100%;
    padding: 2.4rem 0;
  }
}
.lineindexbox .listbox .lead {
  font-size: clamp(1.2rem, 1.5670910872vw, 1.6rem);
  font-weight: var(--fontnormal);
  line-height: 1.8;
}
@media (max-width: 768px) {
  .lineindexbox .listbox .lead {
    line-height: 1.6;
  }
}
.lineindexbox .listbox .cap {
  width: 10rem;
  height: 10rem;
  flex-shrink: 0;
  overflow: hidden;
  aspect-ratio: 1;
}
.lineindexbox .listbox .cap img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  transition: all 0.5s ease;
}
.lineindexbox .listbox:hover .cap img {
  transform: scale(1.2);
}
.lineindexbox .listbox .textbox {
  width: calc(100% - clamp(6.5rem, 5.2083333333vw, 10rem) - clamp(2.08rem, 1.6666666667vw, 3.2rem));
}
@media (max-width: 768px) {
  .lineindexbox .listbox .textbox {
    width: calc(100% - 10rem - 1.6rem);
  }
}
.lineindexbox .listbox h3 {
  font-family: var(--titlefont);
  font-size: clamp(1.8rem, 1.25vw, 2.4rem);
  line-height: 1.5;
  display: flex;
  align-items: center;
  justify-content: space-between;
  margin-bottom: 1.6rem;
}
.lineindexbox .listbox h3 .arrow--black rect, .lineindexbox .listbox h3 .arrow--black path {
  fill: black;
}
.lineindexbox .listbox .box {
  display: flex;
  gap: clamp(1.6rem, 1.6666666667vw, 3.2rem);
}
.lineindexbox .listbox:nth-child(even) {
  position: relative;
}
.lineindexbox .listbox:nth-child(even):after {
  content: "";
  position: absolute;
  right: 0;
  top: 0;
  height: 100%;
  background: url(../images/common/line-vertical.svg) repeat-y center top;
  width: clamp(0.325rem, 0.2604166667vw, 0.5rem);
}
@media (max-width: 768px) {
  .lineindexbox .listbox:nth-child(even):after {
    content: none;
  }
}
.lineindexbox .listbox:first-child {
  width: 100%;
  padding-top: clamp(3.64rem, 2.9166666667vw, 5.6rem);
  padding-bottom: clamp(3.64rem, 2.9166666667vw, 5.6rem);
  background-image: url(../images/common/line.png), url(../images/common/line.png);
  background-repeat: repeat-x, repeat-x;
  background-position: top left, bottom left;
  background-size: clamp(9.945rem, 7.96875vw, 15.3rem), clamp(9.945rem, 7.96875vw, 15.3rem);
}
.lineindexbox .listbox:first-child .box {
  gap: clamp(1.6rem, 3.3333333333vw, 6.4rem);
}
.lineindexbox .listbox:first-child .titles {
  font-size: clamp(1.8rem, 2.0833333333vw, 4rem);
  line-height: 1.5;
  margin-bottom: clamp(1.56rem, 1.25vw, 2.4rem);
}
.lineindexbox .listbox:first-child .textbox {
  width: calc(50% - clamp(4.16rem, 3.3333333333vw, 6.4rem));
}
@media (max-width: 768px) {
  .lineindexbox .listbox:first-child .textbox {
    width: auto;
  }
}
.lineindexbox .listbox:first-child .cap {
  width: 50%;
  height: clamp(10rem, 36.1328125vw, 37rem);
}
@media (max-width: 768px) {
  .lineindexbox .listbox:first-child .cap {
    width: 10rem;
    height: 10rem;
  }
}
.lineindexbox .listbox:first-child .cap img {
  aspect-ratio: 560/370;
}
@media (max-width: 768px) {
  .lineindexbox .listbox:first-child .cap img {
    aspect-ratio: 1;
  }
}

.ourworksindexbox {
  padding: clamp(4.81rem, 9.375vw, 18rem) 0 clamp(5.6rem, 6.25vw, 12rem);
}
@media (max-width: 768px) {
  .ourworksindexbox {
    padding-inline: 0.8rem;
  }
}
.ourworksindexbox ul.list {
  display: flex;
  gap: clamp(1.56rem, 1.25vw, 2.4rem);
  margin-bottom: clamp(3.2rem, 7.8125vw, 8rem);
}
@media (max-width: 768px) {
  .ourworksindexbox ul.list {
    flex-wrap: wrap;
    gap: 2.4rem 0.8rem;
  }
}
.ourworksindexbox .listbox {
  flex: 0 0 calc((100% - clamp(1.56rem, 1.25vw, 2.4rem) * 3) / 4);
  position: relative;
  font-size: clamp(1.2rem, 1.3712047013vw, 1.4rem);
  line-height: 1.8;
}
@media (max-width: 768px) {
  .ourworksindexbox .listbox {
    max-width: none;
    flex: 0 0 calc((100% - 0.8rem) / 2);
  }
}
.ourworksindexbox .listbox .arrow {
  position: absolute;
  right: 0;
  bottom: 0;
}
.ourworksindexbox .listbox .arrow--black rect, .ourworksindexbox .listbox .arrow--black path {
  fill: black;
}
.ourworksindexbox .listbox .cap {
  margin-bottom: 1.6rem;
  overflow: hidden;
}
.ourworksindexbox .listbox .cap img {
  aspect-ratio: 1;
  object-fit: cover;
  transition: all 0.5s ease;
}
.ourworksindexbox .listbox:hover .cap img {
  transform: scale(1.2);
}
.ourworksindexbox .listbox .lead {
  margin-bottom: clamp(1.04rem, 0.8333333333vw, 1.6rem);
  font-weight: var(--fontnormal);
}
@media (max-width: 768px) {
  .ourworksindexbox .listbox .lead {
    line-height: 1.6;
  }
}
.ourworksindexbox .listbox h3.titles {
  margin-bottom: clamp(0.8rem, 1.5625vw, 1.6rem);
  line-height: 1;
}
.ourworksindexbox .listbox h3.titles .text {
  font-size: clamp(1.6rem, 1.25vw, 2.4rem);
  line-height: 1.5;
  font-weight: var(--fontbold);
  font-family: var(--titlefont);
}
@media (max-width: 768px) {
  .ourworksindexbox .listbox h3.titles .text {
    line-height: 1;
  }
}
.ourworksindexbox .tabsbox {
  justify-content: center;
  display: flex;
  align-items: center;
  gap: clamp(2.08rem, 1.6666666667vw, 3.2rem);
}
@media (max-width: 768px) {
  .ourworksindexbox .tabsbox {
    display: block;
    margin-inline: 1.6rem;
  }
}
@media (max-width: 768px) {
  .ourworksindexbox .tabsbox .menutitle {
    margin-bottom: 2.5rem;
  }
}
.ourworksindexbox .tabsbox .menutitle .text {
  font-size: clamp(1.8rem, 1.0416666667vw, 2rem);
  white-space: nowrap;
  font-family: var(--titlefont);
  padding-bottom: clamp(0.325rem, 0.2604166667vw, 0.5rem);
  background: url(../../dist/images/common/line.png) repeat-x left bottom/clamp(9.945rem, 7.96875vw, 15.3rem);
}
@media (max-width: 768px) {
  .ourworksindexbox .tabsbox .menutitle .text {
    padding-bottom: 0.8rem;
  }
}

.tabsbox--menu {
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  gap: 0.5rem;
}
.tabsbox--menu .box {
  display: flex;
  align-items: center;
  min-height: clamp(2.8rem, 3.41796875vw, 3.5rem);
  border: 1px solid black;
  border-radius: 999.9rem;
  font-size: clamp(1.1rem, 1.26953125vw, 1.3rem);
  line-height: 1;
  padding: 0 clamp(1.2rem, 1.5625vw, 1.6rem);
  gap: clamp(0.52rem, 0.4166666667vw, 0.8rem);
  font-weight: var(--fontnormal);
  transition: 0.5s all ease;
  background-color: white;
  cursor: pointer;
}
.tabsbox--menu .box .arrow {
  width: clamp(0.65rem, 0.5208333333vw, 1rem);
}
.tabsbox--menu .box .arrow path, .tabsbox--menu .box .arrow rect {
  fill: black;
}
.tabsbox--menu .box:hover {
  background-color: #D0D0D0;
}

.pickupbox {
  padding: clamp(4.8rem, 7.2916666667vw, 14rem) clamp(0.8rem, 8.3333333333vw, 16rem) clamp(5.6rem, 6.25vw, 12rem);
}
@media (max-width: 768px) {
  .pickupbox {
    padding: 4.8rem 0 5.6rem;
    padding-inline: 0.8rem;
  }
}
.pickupbox {
  position: relative;
}
.pickupbox--box01 {
  background-color: #EDEDED;
}
.pickupbox--box01 .headbox .number {
  color: #D0D0D0;
}
.pickupbox--box01 .headbox .number:before {
  color: #D0D0D0;
}
.pickupbox--box02 {
  background: url(../../dist/images/common/bgcolor.jpg);
  background-size: 10rem;
}
.pickupbox--box02 .headbox .number {
  color: #DECDBC;
}
.pickupbox--box02 .headbox .number:before {
  color: #DECDBC;
}
.pickupbox .headbox {
  margin-bottom: clamp(3.64rem, 2.9166666667vw, 5.6rem);
  font-size: clamp(1.04rem, 0.8333333333vw, 1.6rem);
  line-height: 2;
  display: flex;
  justify-content: space-between;
  align-items: flex-end;
}
@media (max-width: 768px) {
  .pickupbox .headbox {
    display: block;
  }
}
.pickupbox .headbox .lead {
  font-weight: var(--fontnormal);
  font-size: clamp(1.2rem, 1.5670910872vw, 1.6rem);
}
@media (max-width: 768px) {
  .pickupbox .headbox .lead {
    line-height: 1.7;
    margin-bottom: 2.4rem;
  }
}
.pickupbox .headbox .tabsbox {
  display: flex;
  justify-content: flex-end;
}
@media (max-width: 768px) {
  .pickupbox .headbox .tabsbox {
    justify-content: center;
  }
}
.pickupbox .headbox .number {
  position: absolute;
  left: clamp(10.4rem, 8.3333333333vw, 16rem);
  font-family: var(--titlefont);
  font-size: clamp(5.7rem, 7.8125vw, 15rem);
  top: clamp(-5.85rem, -4.6875vw, -9rem);
  line-height: 1;
}
@media (max-width: 768px) {
  .pickupbox .headbox .number {
    left: auto;
    right: 1.6rem;
    top: -3.5rem;
  }
}
.pickupbox .headbox .number:before {
  content: "#";
  position: absolute;
  left: clamp(-2.795rem, -2.2395833333vw, -4.3rem);
  font-family: var(--titlefont);
  font-size: clamp(3rem, 4.1666666667vw, 8rem);
  top: 0;
  line-height: 1;
}
@media (max-width: 768px) {
  .pickupbox .headbox .number:before {
    left: -2rem;
  }
}
.pickupbox .headbox .title {
  margin-bottom: clamp(1.6rem, 3.90625vw, 4rem);
}
.pickupbox .headbox .title .text {
  font-size: clamp(1.8rem, 2.8125vw, 5.4rem);
  font-family: var(--titlefont);
  line-height: 1.1111111111;
  white-space: nowrap;
}
@media (max-width: 768px) {
  .pickupbox .headbox .title .text {
    line-height: 1.5;
  }
}
.pickupbox .headbox .title .txt {
  display: block;
  margin-bottom: clamp(2.6rem, 2.0833333333vw, 4rem);
}
.pickupbox .headbox .title .txt b {
  font-family: var(--titlefont);
  font-size: clamp(1.56rem, 1.25vw, 2.4rem);
  background: url(../../dist/images/common/line.png) repeat-x left bottom/clamp(9.945rem, 7.96875vw, 15.3rem);
  padding-bottom: clamp(0.325rem, 0.2604166667vw, 0.5rem);
}
.pickupbox .btn {
  max-width: 32rem;
  margin: auto;
}
@media (max-width: 768px) {
  .pickupbox .btn {
    max-width: none;
    margin-inline: 1.6rem;
  }
}
.pickupbox .btn--box {
  font-family: var(--titlefont);
}
.pickupbox .capsbox {
  display: grid;
  gap: clamp(0.52rem, 0.4166666667vw, 0.8rem);
  grid-template-columns: 1.2fr 1fr 1fr;
  grid-template-rows: repeat(2, auto);
  margin-bottom: clamp(2.4rem, 6.25vw, 6.4rem);
  grid-template-areas: "item1 item2 item3" "item1 item4 item5";
}
@media (max-width: 768px) {
  .pickupbox .capsbox {
    gap: 0.8rem;
    grid-template-columns: 1fr 1fr;
    grid-template-areas: "item1 item1" "item2 item3" "item4 item5";
  }
}
.pickupbox .capsbox .item {
  overflow: hidden;
}
.pickupbox .capsbox .item img {
  width: 100%;
  aspect-ratio: 420/291;
  display: block;
}
@media (max-width: 768px) {
  .pickupbox .capsbox .item img {
    aspect-ratio: 175.5/120;
  }
}
.pickupbox .capsbox .item1 {
  grid-area: item1;
  display: flex;
}
@media (max-width: 768px) {
  .pickupbox .capsbox .item1 {
    width: 100%;
  }
}
.pickupbox .capsbox .item1 img {
  aspect-ratio: inherit;
  object-fit: cover;
}
@media (max-width: 768px) {
  .pickupbox .capsbox .item1 img {
    aspect-ratio: 359/246;
  }
}
.pickupbox .capsbox .item2 {
  grid-area: item2;
}
.pickupbox .capsbox .item3 {
  grid-area: item3;
}
.pickupbox .capsbox .item4 {
  grid-area: item4;
}
.pickupbox .capsbox .item5 {
  grid-area: item5;
}

.otherbox {
  display: flex;
  align-items: flex-start;
  gap: clamp(6.24rem, 5vw, 9.6rem);
  padding-top: clamp(4.8rem, 7.2916666667vw, 14rem);
  padding-bottom: clamp(11.5rem, 15.625vw, 16rem);
}
@media (max-width: 768px) {
  .otherbox {
    display: block;
  }
}
.otherbox h3 {
  text-align: center;
  font-family: var(--titlefont);
  font-size: clamp(2.4rem, 2.0833333333vw, 4rem);
  line-height: 1;
  margin-bottom: clamp(2.6rem, 2.0833333333vw, 4rem);
}
@media (max-width: 768px) {
  .otherbox .instagram {
    padding-inline: 0.8rem;
    margin-bottom: 4rem;
  }
  .otherbox .instagram h3 {
    margin-bottom: 2.4rem;
  }
}
.otherbox .instagram .caps {
  display: flex;
  flex-wrap: wrap;
  gap: 0.8rem;
}
.otherbox .instagram .caps .cap {
  width: 100%;
  max-width: calc(33.3333333333% - 0.666666rem);
}
.otherbox .instagram .caps .cap img {
  aspect-ratio: 1;
}
.otherbox--contents {
  width: 50%;
}
@media (max-width: 768px) {
  .otherbox--contents {
    width: auto;
  }
}
@media (max-width: 768px) {
  .otherbox .youtube {
    padding-inline: 2.4rem;
  }
}
.otherbox .youtube h3 {
  display: flex;
  justify-content: center;
  align-items: center;
  gap: clamp(1.95rem, 1.5625vw, 3rem);
}
@media (max-width: 768px) {
  .otherbox .youtube h3 {
    gap: 1.6rem;
    align-items: unset;
  }
  .otherbox .youtube h3 img {
    width: 2rem;
  }
}
.otherbox .youtube .movie {
  position: relative;
  aspect-ratio: 751/422.87;
  margin-bottom: clamp(3.2rem, 5.859375vw, 6rem);
}
@media (max-width: 768px) {
  .otherbox .youtube .movie {
    aspect-ratio: 327/184.13;
  }
}
.otherbox .youtube .movie iframe {
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.otherbox .youtube .btn {
  max-width: 28rem;
  margin: auto;
}
@media (max-width: 768px) {
  .otherbox .youtube .btn {
    max-width: none;
  }
}

.scheduleindexbox {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: clamp(7.8rem, 6.25vw, 12rem);
}
@media (max-width: 768px) {
  .scheduleindexbox {
    margin-bottom: 3.2rem;
    display: block;
  }
}
.scheduleindexbox h2 {
  line-height: 1;
  position: relative;
  padding-bottom: clamp(8.45rem, 6.7708333333vw, 13rem);
}
@media (max-width: 768px) {
  .scheduleindexbox h2 {
    padding-bottom: 3.2rem;
  }
}
.scheduleindexbox h2 .text {
  font-family: var(--titlefont);
  font-size: clamp(2.8rem, 2.8125vw, 5.4rem);
  line-height: 1.2962962963;
}
@media (max-width: 768px) {
  .scheduleindexbox h2 .text {
    line-height: 1;
    position: relative;
    display: flex;
    align-items: center;
    gap: 3rem;
  }
  .scheduleindexbox h2 .text:after {
    content: "";
    position: absolute;
    background: url(../../dist/images/top/schedule-icon_sp.png) no-repeat center center/contain;
    width: 17.404rem;
    height: 9.447rem;
    right: 0;
  }
}
.scheduleindexbox h2:after {
  content: "";
  position: absolute;
  width: clamp(13.25675rem, 10.6223958333vw, 20.395rem);
  height: clamp(7.34435rem, 5.8848958333vw, 11.299rem);
  background: url(../../dist/images/top/schedule-icon.svg) no-repeat center center/contain;
  right: 0;
  bottom: 0;
}
@media (max-width: 768px) {
  .scheduleindexbox h2:after {
    content: none;
  }
}
.scheduleindexbox ul {
  width: clamp(37.5rem, 64.7931303669vw, 83rem);
}
@media (max-width: 768px) {
  .scheduleindexbox ul {
    width: auto;
  }
}
.scheduleindexbox.newsbox {
  padding-top: clamp(5rem, 9.7943192948vw, 10rem);
}
.scheduleindexbox.newsbox h2 {
  padding-bottom: 0;
  transform: translateY(-1.1rem);
}
@media (max-width: 768px) {
  .scheduleindexbox.newsbox h2 {
    transform: translateY(0);
    padding-bottom: 3.2rem;
  }
}
.scheduleindexbox.newsbox h2 .text {
  line-height: 1;
}
@media (max-width: 768px) {
  .scheduleindexbox.newsbox h2 .text:after {
    content: none;
  }
}
.scheduleindexbox.newsbox h2:after {
  content: none;
}
.scheduleindexbox.newsbox .textbox .timebox {
  border: none;
  padding: 0;
  font-family: var(--titlefont);
  font-size: clamp(1.3rem, 7292.8571428571vw, 1.4rem);
}
.scheduleindexbox.newsbox .titles {
  font-family: var(--titlefont);
  font-size: clamp(1.6rem, 1.7629774731vw, 1.8rem);
  text-decoration: underline;
}

.eventlist {
  flex: 0 0 calc((100% - clamp(1.56rem, 1.25vw, 2.4rem)) / 2);
}

.schedulelist {
  position: relative;
  border-bottom: 1px dashed black;
  padding-bottom: clamp(1.6rem, 1.25vw, 2.4rem);
}
.schedulelist .textbox {
  display: flex;
  align-items: center;
  gap: clamp(0.8rem, 1.5670910872vw, 1.6rem);
  font-size: clamp(1.4rem, 1.5670910872vw, 1.6rem);
  line-height: 1.6;
}
@media (max-width: 768px) {
  .schedulelist .textbox {
    line-height: 1.5;
    flex-wrap: wrap;
  }
  .schedulelist .textbox .text {
    width: 100%;
  }
}
.schedulelist .textbox .timebox {
  font-size: clamp(1.1rem, 0.6770833333vw, 1.3rem);
  padding: clamp(0.39rem, 0.3125vw, 0.6rem) clamp(0.65rem, 0.5208333333vw, 1rem);
  border: 1px solid black;
  white-space: nowrap;
}
@media (max-width: 768px) {
  .schedulelist .textbox .timebox {
    padding: 0.6rem 1rem;
  }
}
.schedulelist:not(:last-child) {
  margin-bottom: clamp(1.6rem, 2.34375vw, 2.4rem);
}

.eventindexbox {
  position: relative;
  padding: clamp(4.8rem, 7.2916666667vw, 14rem) 0 clamp(5.03rem, 8.3333333333vw, 16rem);
}
@media (max-width: 768px) {
  .eventindexbox {
    overflow-x: hidden;
  }
  .eventindexbox .scheduleindexbox {
    padding-inline: 2.4rem;
  }
}
.eventindexbox .btn {
  position: absolute;
  right: 2.4rem;
  top: 0;
  width: clamp(15.6rem, 12.5vw, 24rem);
}
@media (max-width: 768px) {
  .eventindexbox .btn {
    position: initial;
    right: auto;
    top: auto;
    width: auto;
    margin-inline: 2.4rem;
  }
}
.eventindexbox .eventbox {
  display: flex;
  justify-content: space-between;
  gap: clamp(3.12rem, 2.5vw, 4.8rem);
  margin-bottom: clamp(6.5rem, 5.2083333333vw, 10rem);
}
@media (max-width: 768px) {
  .eventindexbox .eventbox {
    display: block;
  }
  .eventindexbox .eventbox.slick-dotted.slick-slider {
    margin-bottom: 9.6rem;
  }
}

@media (max-width: 768px) {
  .spslider {
    padding-left: 2.4rem;
  }
  .spslider .slick-list {
    overflow: visible;
    padding: 0 6rem 0 0;
  }
  .spslider .slick-list .slick-slide {
    margin-right: 1.6rem;
  }
}
.spslider .slick-dots {
  width: auto;
  gap: 0.8rem;
  left: 0;
  right: 0;
  margin: auto;
}
.spslider .slick-dots li {
  width: 0.8rem;
  height: 0.8rem;
}

.eventlist--borderlist {
  flex: 0 0 calc((100% - clamp(3.12rem, 2.5vw, 4.8rem)) / 2);
  padding: clamp(3.12rem, 2.5vw, 4.8rem);
  background: url(../../dist/images/common/line.png) repeat-x left bottom/clamp(9.945rem, 7.96875vw, 15.3rem), url(../../dist/images/common/line.png) repeat-x left top/clamp(9.945rem, 7.96875vw, 15.3rem);
}
@media (max-width: 768px) {
  .eventlist--borderlist {
    padding: 3.3rem 0 0;
    background: none;
  }
}
.eventlist--borderlist:before, .eventlist--borderlist:after {
  content: "";
  position: absolute;
  top: 0;
  width: clamp(0.26rem, 0.2083333333vw, 0.4rem);
  height: 100%;
  background: url(../../dist/images/common/lineleft.png) repeat-y left top/contain;
}
@media (max-width: 768px) {
  .eventlist--borderlist:before, .eventlist--borderlist:after {
    content: none;
  }
}
.eventlist--borderlist:before {
  left: 0;
}
.eventlist--borderlist:after {
  right: 0;
}
.eventlist {
  position: relative;
  width: 100%;
  display: flex;
  flex-direction: column;
}
.eventlist .itemtitle {
  position: absolute;
  left: 0;
  top: -1.9rem;
  width: 100%;
  text-align: center;
}
@media (max-width: 768px) {
  .eventlist .itemtitle {
    top: 0;
  }
}
.eventlist .itemtitle .text {
  background-color: white;
  padding: 0 1.6rem;
  font-family: var(--titlefont);
  font-size: clamp(2rem, 1.5625vw, 3rem);
  line-height: 1;
}
.eventlist.firelist .itemtitle .text:before, .eventlist.firelist .itemtitle .text:after {
  display: inline-block;
}
.eventlist.firelist .itemtitle .text:before {
  content: url(../images/common/icon-fire-line-left.svg);
  transform: translateY(clamp(0.195rem, 0.15625vw, 0.3rem)) translateX(clamp(-0.52rem, -0.4166666667vw, -0.8rem));
}
.eventlist.firelist .itemtitle .text:after {
  content: url(../images/common/icon-fire-line-right.svg);
  transform: translateY(clamp(0.195rem, 0.15625vw, 0.3rem)) translateX(clamp(0.52rem, 0.4166666667vw, 0.8rem));
}
.eventlist.firelist .itemtitle b {
  position: relative;
}
.eventlist.firelist .itemtitle b:before {
  content: url(../images/common/icon-fire.svg);
  transform: rotate(-90deg) translateY(clamp(-0.195rem, -0.15625vw, -0.3rem));
  display: inline-block;
}
.eventlist .detailsbtn {
  margin-top: auto;
}
.eventlist .box--bottom {
  margin-top: auto;
}
.eventlist .title {
  margin: 0 0 clamp(1.6rem, 1.25vw, 2.4rem);
  padding-bottom: 1.6rem;
  border-bottom: 1px dashed black;
}
.eventlist .title .txt, .eventlist .title .titles {
  display: block;
}
.eventlist .title .txt {
  font-size: clamp(1.2rem, 0.6770833333vw, 1.3rem);
  font-weight: var(--fontnormal);
  line-height: 1.6;
  margin-bottom: clamp(1.04rem, 0.8333333333vw, 1.6rem);
}
.eventlist .title .titles .text {
  font-size: clamp(1.82rem, 1.4583333333vw, 2.8rem);
  font-family: var(--titlefont);
  line-height: 0.6666666667;
}
.eventlist .cap {
  overflow: hidden;
  margin-bottom: clamp(1.6rem, 2.34375vw, 2.4rem);
}
.eventlist .cap img {
  aspect-ratio: 480/315;
  object-fit: cover;
  transition: 0.5s all ease;
}
@media (max-width: 768px) {
  .eventlist .cap img {
    aspect-ratio: 275/180.47;
  }
}
.eventlist:hover .cap img {
  transform: scale(1.1);
}
.eventlist .funlist {
  background-color: #EDEDED;
  display: flex;
  align-items: center;
  padding: clamp(2rem, 1.0416666667vw, 2rem);
  gap: clamp(1.04rem, 0.8333333333vw, 1.6rem);
  margin-bottom: clamp(1.56rem, 1.25vw, 2.4rem);
}
@media (max-width: 768px) {
  .eventlist .funlist {
    margin-bottom: 3.2rem;
    display: block;
  }
}
.eventlist .funlist h4 {
  font-family: var(--titlefont);
  font-size: clamp(2rem, 1.6666666667vw, 3.2rem);
  line-height: 1.4375;
}
@media (max-width: 768px) {
  .eventlist .funlist h4 {
    line-height: 1;
    margin-bottom: 1rem;
  }
}
.eventlist .funlist li {
  font-size: clamp(1.3rem, 0.8333333333vw, 1.6rem);
  font-weight: var(--fontnormal);
  line-height: 1.5;
  position: relative;
  display: flex;
  align-items: flex-start;
}
.eventlist .funlist li:not(:last-child) {
  margin-bottom: clamp(0.52rem, 0.4166666667vw, 0.8rem);
}
.eventlist .funlist li:before {
  content: "・";
}
.eventlist .detailslist {
  margin: 0 0 clamp(1.6rem, 2.34375vw, 2.4rem);
  font-weight: var(--fontnormal);
}
.eventlist .detailslist li:not(:last-child) {
  margin-bottom: 0.8rem;
}
.eventlist .detailslist dl {
  display: flex;
  align-items: center;
  gap: 0.8rem;
}
.eventlist .detailslist dl dt {
  min-width: 5.3rem;
  border: 1px solid black;
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 1.1rem;
  height: 2.8rem;
}
.eventlist .detailslist dl dd {
  font-size: clamp(1.3rem, 1.5625vw, 1.6rem);
  line-height: 1.6;
}

.home .scroll-container:before {
  content: "";
  position: absolute;
  left: 0;
  bottom: 0;
  z-index: 2;
  width: 100%;
  height: clamp(1.04rem, 0.8333333333vw, 1.6rem);
  background: url(../../dist/images/top/loopline.png) repeat-x left bottom/contain;
}

.scroll-container {
  width: 100%;
  overflow: hidden;
  position: relative;
}

.scroll-content {
  display: flex;
  width: max-content;
  animation: scroll 50s linear infinite;
}

.scroll-content img {
  width: 100%;
  max-width: clamp(26rem, 20.8333333333vw, 40rem);
  aspect-ratio: 400/300;
  height: auto;
  flex-shrink: 0;
  object-fit: cover;
}
@media (max-width: 768px) {
  .scroll-content img {
    max-width: 20rem;
    aspect-ratio: 200/150;
  }
}

/* アニメーション */
@keyframes scroll {
  0% {
    transform: translateX(0);
  }
  100% {
    transform: translateX(-50%);
  }
}
.detailsbtn {
  display: flex;
  width: fit-content;
  margin-left: auto;
  font-size: clamp(1.5rem, 1.7578125vw, 1.8rem);
  font-family: var(--titlefont);
  line-height: 1;
  background: url(../../dist/images/common/line.png) repeat-x left bottom/clamp(9.945rem, 7.96875vw, 15.3rem);
  padding-bottom: clamp(0.8rem, 0.5208333333vw, 1rem);
  justify-content: flex-end;
  align-items: center;
  gap: clamp(0.8rem, 0.9765625vw, 1rem);
}
.detailsbtn--box {
  display: flex;
  width: fit-content;
  align-items: center;
  gap: clamp(0.8rem, 0.9765625vw, 1rem);
}
.detailsbtn .arrow {
  width: clamp(1.5rem, 1.953125vw, 2rem);
}

.recruitindexbox {
  background-color: black;
  position: relative;
  height: clamp(26rem, 20.8333333333vw, 40rem);
  display: flex;
  align-items: center;
  justify-content: center;
  color: white;
  font-size: clamp(1.2rem, 1.25vw, 2.4rem);
  line-height: 2.2;
  font-weight: var(--fontbold);
}
@media (max-width: 768px) {
  .recruitindexbox {
    height: 26.6rem;
    padding-inline: 2.4rem;
    flex-direction: column;
    align-items: inherit;
  }
  .recruitindexbox .lead {
    font-size: 1.2rem;
    line-height: 1.7;
    margin-bottom: 1.6rem;
  }
}
.recruitindexbox:hover .arrow {
  transform: translateX(clamp(0.65rem, 0.5208333333vw, 1rem));
}
.recruitindexbox .arrow {
  transition: 0.5s all ease;
}
@media (max-width: 768px) {
  .recruitindexbox .arrow {
    display: flex;
    justify-content: flex-end;
  }
}
.recruitindexbox .arrow svg {
  width: clamp(3.055rem, 2.4479166667vw, 4.7rem);
}
@media (max-width: 768px) {
  .recruitindexbox .arrow svg {
    width: 1.755rem;
  }
}
.recruitindexbox h2 {
  font-size: clamp(3.51rem, 2.8125vw, 5.4rem);
  line-height: 1.2962962963;
  font-family: var(--titlefont);
  position: relative;
  padding: clamp(1.04rem, 0.8333333333vw, 1.6rem) 0 clamp(1.95rem, 1.5625vw, 3rem) clamp(1.17rem, 0.9375vw, 1.8rem);
}
@media (max-width: 768px) {
  .recruitindexbox h2 {
    width: 16rem;
    font-size: 3rem;
    line-height: 1;
    margin-inline: auto;
    padding: 1.6rem 0 1.9rem;
    margin-bottom: 2.4rem;
    text-align: center;
  }
}
.recruitindexbox h2:before, .recruitindexbox h2:after {
  content: "";
  position: absolute;
  left: 0;
  width: clamp(9.75rem, 7.8125vw, 15rem);
  height: clamp(0.325rem, 0.2604166667vw, 0.5rem);
  background: url(../../dist/images/top/recruit-line.svg) repeat-x center center/contain;
}
@media (max-width: 768px) {
  .recruitindexbox h2:before, .recruitindexbox h2:after {
    height: 0.4rem;
    left: 50%;
    width: 100%;
  }
}
.recruitindexbox h2:before {
  top: 0;
  transform: rotate(-13deg);
}
@media (max-width: 768px) {
  .recruitindexbox h2:before {
    transform: translateX(-50%);
  }
}
.recruitindexbox h2:after {
  bottom: 0;
  transform: rotate(13deg);
}
@media (max-width: 768px) {
  .recruitindexbox h2:after {
    transform: translateX(-50%);
  }
}
.recruitindexbox .box {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: clamp(7.8rem, 6.25vw, 12rem);
}
@media (max-width: 768px) {
  .recruitindexbox .box {
    display: block;
    width: auto;
  }
}
.recruitindexbox:before {
  content: "";
  position: absolute;
  left: 0;
  bottom: clamp(-1.04rem, -0.8333333333vw, -1.6rem);
  z-index: 1;
  width: 100%;
  height: clamp(1.04rem, 0.8333333333vw, 1.6rem);
  background: url(../../dist/images/top/loopline-bottom.png) repeat-x left top/contain;
}

.fukidashitext {
  text-align: center;
  display: block;
}
.fukidashitext .text {
  position: relative;
}
.fukidashitext .text:before, .fukidashitext .text:after {
  content: url(../../dist/images/top/itemline.svg);
  display: inline-block;
  vertical-align: clamp(-0.065rem, -0.0520833333vw, -0.1rem);
}
.fukidashitext .text:before {
  padding-right: clamp(0.65rem, 0.5208333333vw, 1rem);
}
.fukidashitext .text:after {
  content: url(../../dist/images/top/itemline-right.svg);
  padding-right: clamp(0.65rem, 0.5208333333vw, 1rem);
  transform: rotate(180deg);
}

.indexcontents {
  padding-inline: clamp(10.4rem, 8.3333333333vw, 16rem);
  padding-top: clamp(9.1rem, 7.2916666667vw, 14rem);
  padding-bottom: clamp(5.6rem, 8.3333333333vw, 16rem);
}
@media (max-width: 768px) {
  .indexcontents {
    padding-inline: initial;
    padding-top: 0;
    display: block;
    margin-top: 8.4rem;
    position: relative;
  }
}
.indexcontents div.box {
  position: relative;
  flex: 1;
  text-align: center;
}
@media (max-width: 768px) {
  .indexcontents div.box {
    width: auto;
    position: initial;
  }
}
@media (max-width: 768px) {
  .indexcontents div.box--textbox {
    margin-inline: 2.4rem;
  }
}
.indexcontents div.box--textbox .btn {
  width: 38rem;
  margin: auto;
}
@media (max-width: 768px) {
  .indexcontents div.box--textbox .btn {
    width: auto;
    margin-left: auto;
  }
}
.indexcontents div.box--textbox .btn .fukidashitext {
  margin-bottom: 2.4rem;
}
.indexcontents div.box--textbox .btn .fukidashitext .text {
  font-size: clamp(1.5rem, 0.9375vw, 1.8rem);
}
.indexcontents div.box--textbox h2.titles {
  margin-bottom: clamp(3.64rem, 2.9166666667vw, 5.6rem);
  padding-left: clamp(3.25rem, 2.6041666667vw, 5rem);
}
.indexcontents div.box--textbox h2.titles .text {
  font-family: var(--titlefont);
  font-size: clamp(2.8rem, 4.2154566745vw, 5.4rem);
  line-height: 1.5;
}
.indexcontents div.box--textbox div.text {
  font-size: clamp(1.4rem, 1.0416666667vw, 2rem);
  line-height: 2.2;
  margin-bottom: clamp(4.16rem, 3.3333333333vw, 6.4rem);
  padding-left: clamp(3.25rem, 2.6041666667vw, 5rem);
  font-weight: var(--fontnormal);
}
@media (max-width: 768px) {
  .indexcontents div.box--textbox div.text {
    padding-left: 0;
    line-height: 2.2;
  }
}
.indexcontents div.box--textbox div.text b {
  font-size: clamp(1.6rem, 1.1458333333vw, 2.2rem);
}
@media (max-width: 768px) {
  .indexcontents div.box--textbox div.text b {
    line-height: 1.925;
  }
}
.indexcontents div.box--textbox div.text p:not(:last-of-type) {
  margin-bottom: clamp(2.4rem, 3.125vw, 3.2rem);
}
.indexcontents div.box--textbox .fukidashi {
  display: grid;
  grid-template-columns: 1fr 1fr; /* 2列 */
  grid-template-rows: auto auto; /* 2行 */
  width: clamp(34.32rem, 27.5vw, 52.8rem);
  justify-items: center;
  align-items: center;
  position: relative;
  gap: 0;
}
@media (max-width: 768px) {
  .indexcontents div.box--textbox .fukidashi {
    width: auto;
    margin-inline: 1.9rem;
  }
}
.indexcontents div.box--textbox .fukidashi .item {
  opacity: 0;
  transform: translateY(clamp(2.6rem, 2.0833333333vw, 4rem));
}
.indexcontents div.box--textbox .fukidashi .item.show {
  animation: bounceInUp 0.8s cubic-bezier(0.215, 0.61, 0.355, 1) forwards;
}
.indexcontents div.box--textbox .fukidashi .item--01 {
  grid-column: 1; /* 左上 */
  grid-row: 1;
}
.indexcontents div.box--textbox .fukidashi .item--02 {
  grid-column: 2; /* 右上 */
  grid-row: 1;
}
.indexcontents div.box--textbox .fukidashi .item--03 {
  grid-column: 1/3; /* 1〜2列目をまたぐ（中央） */
  grid-row: 2; /* 下段 */
  justify-self: center;
}
.indexcontents div.box--textbox .fukidashi {
  display: grid;
  grid-template-columns: 1fr 1fr;
  grid-template-rows: auto auto;
  width: clamp(34.32rem, 27.5vw, 52.8rem);
  justify-items: center;
  align-items: center;
  position: relative;
  gap: 0;
  margin-bottom: clamp(2.6rem, 2.0833333333vw, 4rem);
  margin-left: clamp(3.9rem, 3.125vw, 6rem);
}
@media (max-width: 768px) {
  .indexcontents div.box--textbox .fukidashi {
    width: auto;
    margin-left: 1.9rem;
  }
}
.indexcontents div.box--textbox .fukidashi .item {
  opacity: 0;
  transform: translateY(clamp(2.6rem, 2.0833333333vw, 4rem));
}
.indexcontents div.box--textbox .fukidashi .item.show {
  animation: bounceInUp 0.8s cubic-bezier(0.215, 0.61, 0.355, 1) forwards;
}
.indexcontents div.box--textbox .fukidashi .item--01 {
  grid-column: 1;
  grid-row: 1;
}
.indexcontents div.box--textbox .fukidashi .item--02 {
  grid-column: 2;
  grid-row: 1;
}
.indexcontents div.box--textbox .fukidashi .item--03 {
  grid-column: 1/3;
  grid-row: 2;
  justify-self: center;
}
.indexcontents div.box--cap .cap {
  width: 100%;
}
.indexcontents div.box--cap .cap.cap01 {
  padding-right: clamp(5.5rem, 5.7291666667vw, 11rem);
}
.indexcontents div.box--cap .cap.cap02 {
  width: clamp(17rem, 18.1770833333vw, 34.9rem);
  margin-left: clamp(7.085rem, 5.6770833333vw, 10.9rem);
  margin-top: clamp(-4.16rem, -3.3333333333vw, -6.4rem);
}
@media (max-width: 768px) {
  .indexcontents div.box--cap .cap.cap02 {
    width: auto;
    margin-left: 20.5rem;
  }
}
.indexcontents div.box--cap .cap.cap03 {
  width: clamp(10rem, 12.5vw, 24rem);
  margin-left: auto;
  margin-right: clamp(2.665rem, 2.1354166667vw, 4.1rem);
  transform: translateY(clamp(-3.835rem, -3.0729166667vw, -5.9rem));
}
@media (max-width: 768px) {
  .indexcontents div.box--cap .cap.cap03 {
    width: auto;
    margin-inline: 8.03rem 19.47rem;
  }
}

@keyframes bounceInUp {
  0% {
    opacity: 0;
    transform: translateY(clamp(3.9rem, 3.125vw, 6rem));
  }
  60% {
    opacity: 1;
    transform: translateY(clamp(-0.65rem, -0.5208333333vw, -1rem));
  }
  80% {
    transform: translateY(clamp(0.325rem, 0.2604166667vw, 0.5rem));
  }
  100% {
    transform: translateY(0);
    opacity: 1;
  }
}
.post-type-archive-event .endeventtext {
  text-align: center;
  font-size: clamp(1.2rem, 1.5670910872vw, 1.6rem);
}
.post-type-archive-event .eventbox--archive {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  margin-bottom: clamp(6.24rem, 5vw, 9.6rem);
}
@media (max-width: 768px) {
  .post-type-archive-event .eventbox--archive {
    display: block;
  }
}
.post-type-archive-event .eventbox .eventlist.eventended {
  max-width: calc(33.3333333333% - clamp(2.08rem, 1.6666666667vw, 3.2rem));
}
@media (max-width: 768px) {
  .post-type-archive-event .eventbox .eventlist.eventended {
    max-width: calc(50% - 0.7rem);
  }
}
.post-type-archive-event .bordertitle {
  margin-bottom: clamp(2.4rem, 6.2683643487vw, 6.4rem);
}
.post-type-archive-event .topbox {
  margin-bottom: clamp(5.6rem, 15.625vw, 16rem);
}
@media (max-width: 768px) {
  .post-type-archive-event .topbox {
    overflow-x: hidden;
  }
  .post-type-archive-event .topbox .scheduleindexbox {
    margin-inline: 2.4rem 2.35rem;
  }
}

.archivemenu {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
}
@media (max-width: 768px) {
  .archivemenu {
    margin-inline: 2.4rem;
    display: block;
  }
}
.archivemenu div.box {
  display: flex;
  align-items: center;
  gap: clamp(1.04rem, 0.8333333333vw, 1.6rem);
}
@media (max-width: 768px) {
  .archivemenu div.box {
    display: block;
  }
}
.archivemenu div.box:last-of-type p.title {
  line-height: 3.125;
}
.archivemenu div.box p.title {
  font-size: 1.6rem;
  font-family: var(--titlefont);
  white-space: nowrap;
  line-height: 2.375;
}
.archivemenu div.box p.title--item.title {
  line-height: 2.375;
}
.archivemenu--arrowbottom .arrow {
  transform: rotate(90deg);
}

.archivefaq .archivemenu {
  margin-bottom: clamp(2.4rem, 7.03125vw, 7.2rem);
}

.selectbox {
  border: 1px solid #000000;
  width: 100%;
  max-width: clamp(13rem, 10.4166666667vw, 20rem);
  padding: clamp(0.78rem, 0.625vw, 1.2rem) clamp(1.04rem, 0.8333333333vw, 1.6rem);
  font-size: clamp(1.04rem, 0.8333333333vw, 1.6rem);
  position: relative;
}
.selectbox select {
  padding-right: clamp(1.95rem, 1.5625vw, 3rem);
}
.selectbox:after {
  content: "";
  position: absolute;
  width: clamp(0.65rem, 0.5208333333vw, 1rem);
  height: clamp(0.325rem, 0.2604166667vw, 0.5rem);
  background: url(../../dist/images/common/arrow-bottom.svg) no-repeat center top/contain;
  top: 50%;
  transform: translateY(-50%);
  right: clamp(1.04rem, 0.8333333333vw, 1.6rem);
}

.archivenews .archivemenu {
  margin-bottom: clamp(2.4rem, 7.03125vw, 7.2rem);
}
.archivenews .list {
  margin-bottom: clamp(5.2rem, 4.1666666667vw, 8rem);
}
@media (max-width: 768px) {
  .archivenews .list {
    margin-inline: 2.4rem;
  }
}
.archivenews .newslist {
  padding-bottom: clamp(2rem, 3.90625vw, 4rem);
  border-bottom: 1px dashed black;
}
.archivenews .newslist:not(:last-child) {
  margin-bottom: clamp(2rem, 3.90625vw, 4rem);
}

.newslist {
  display: flex;
  flex: 1;
}
.newslist div.box {
  position: relative;
  display: flex;
  align-items: flex-start;
  gap: clamp(3.12rem, 2.5vw, 4.8rem);
  width: 100%;
  align-items: stretch;
}
.newslist div.box .archivemenu {
  margin-bottom: 0;
  margin-inline: initial;
}
.newslist div.box .textbox {
  width: calc(100% - clamp(17.55rem, 14.0625vw, 27rem) - clamp(3.12rem, 2.5vw, 4.8rem));
  display: flex;
  flex-direction: column;
  justify-content: space-between;
}
@media (max-width: 768px) {
  .newslist div.box .textbox {
    width: calc(100% - 8rem - 1.6rem);
  }
}
.newslist div.box h3.title {
  font-size: clamp(1.3rem, 1.5625vw, 2rem);
  font-weight: var(--fontbold);
  margin-bottom: clamp(0.8rem, 3.515625vw, 3.6rem);
  line-height: 1.3846153846;
}
@media (max-width: 768px) {
  .newslist div.box h3.title {
    line-height: 1.5;
    margin-bottom: 0.8rem;
  }
}
.newslist div.box .cap {
  width: clamp(8rem, 26.444662096vw, 27rem);
  display: flex;
  align-items: flex-start;
  justify-content: center;
}
@media (max-width: 768px) {
  .newslist div.box .cap {
    width: 8rem;
  }
}
.newslist div.box .cap img {
  width: 100%;
  aspect-ratio: 270/180;
  object-fit: cover;
  object-position: center top;
}
@media (max-width: 768px) {
  .newslist div.box .cap img {
    aspect-ratio: 1;
  }
}
.newslist div.box .cap--nocap {
  align-items: center;
}
.newslist div.box .cap--nocap img {
  object-position: center center;
  width: auto;
  object-fit: contain;
}

.databox {
  display: flex;
  align-items: center;
  gap: clamp(0.65rem, 0.5208333333vw, 1rem);
  margin-bottom: clamp(1.04rem, 0.8333333333vw, 1.6rem);
}
.databox .timebox {
  font-family: var(--titlefont);
  font-size: clamp(1.3rem, 1.3712047013vw, 1.4rem);
}

.authorbox {
  display: flex;
  align-items: center;
  gap: clamp(0.8rem, 0.78125vw, 1rem);
}
.authorbox dt {
  width: 3.5rem;
}
.authorbox dt img {
  aspect-ratio: 1;
  border-radius: 50%;
}
.authorbox dd {
  font-size: clamp(1.1rem, 1.09375vw, 1.4rem);
  color: #909090;
}

.pagination {
  text-align: center;
}
.pagination__list {
  display: flex;
  justify-content: center;
  align-items: baseline;
  gap: clamp(2.08rem, 1.6666666667vw, 3.2rem);
  font-size: clamp(1.56rem, 1.25vw, 2.4rem);
  font-family: var(--titlefont);
}
.pagination__list .is-current {
  color: #BABABA;
}

.article-header {
  margin-bottom: clamp(2.4rem, 6.25vw, 6.4rem);
}
@media (max-width: 768px) {
  .article-header {
    padding-inline: 2.4rem;
  }
}
.article-header .title {
  font-size: clamp(2.2rem, 2.3419203747vw, 3rem);
  line-height: 1.5;
  font-weight: var(--fontbold);
  margin-bottom: clamp(1.6rem, 3.125vw, 3.2rem);
}
@media (max-width: 768px) {
  .article-header .title {
    line-height: 1.5;
  }
}
.article-header .cap {
  display: flex;
  justify-content: center;
}

.article-content {
  font-size: clamp(1.4rem, 1.2490241998vw, 1.6rem);
  line-height: 2;
  font-weight: var(--fontnormal);
}
.article-content .mb48 {
  margin-bottom: clamp(2.4rem, 4.6875vw, 4.8rem);
}
.article-content .mb80 {
  margin-bottom: clamp(4.8rem, 7.8125vw, 8rem);
}
@media (max-width: 768px) {
  .article-content {
    padding-inline: 2.4rem;
    line-height: 1.8;
  }
}
.article-content + .btn {
  max-width: 28rem;
  margin: auto;
  padding-top: clamp(4rem, 3.3333333333vw, 6.4rem);
  padding-bottom: clamp(5.6rem, 7.8125vw, 15rem);
}
@media (max-width: 768px) {
  .article-content + .btn {
    padding-bottom: 11.5rem;
    max-width: none;
    margin-inline: 2.4rem;
  }
}
.article-content p {
  margin: 2.4rem 0;
}
.article-content h2 {
  background: #EDEDED;
  font-size: clamp(1.8rem, 1.7174082748vw, 2.2rem);
  font-weight: var(--fontbold);
  padding: 1rem clamp(1.6rem, 1.5612802498vw, 2rem);
  line-height: 1.5;
  margin: clamp(4.8rem, 6.2451209992vw, 8rem) 0 clamp(2.4rem, 2.4980483997vw, 3.2rem);
}
@media (max-width: 768px) {
  .article-content h2 {
    line-height: 1.5;
  }
}
.article-content h3 {
  margin: clamp(4rem, 4.9960967994vw, 6.4rem) 0 clamp(1.6rem, 1.8735362998vw, 2.4rem);
  font-size: clamp(1.6rem, 1.4051522248vw, 1.8rem);
  font-weight: var(--fontbold);
  padding-left: clamp(1.6rem, 1.5612802498vw, 2rem);
  border-left: 0.5rem solid black;
  line-height: 1.6666666667;
}
.article-content ul li {
  position: relative;
  padding-left: 2rem;
  line-height: 1.8;
}
.article-content ul li::before {
  content: "";
  position: absolute;
  left: 0;
  top: clamp(0.715rem, 0.5729166667vw, 1.1rem);
  width: 0.7rem;
  height: 0.7rem;
  border-radius: 999.9rem;
  background-color: black;
}
.article-content ol {
  counter-reset: list-counter;
  list-style: none;
}
.article-content ol li {
  position: relative;
  padding-left: 2rem;
  line-height: 1.8;
  counter-increment: list-counter;
}
.article-content ol li::before {
  content: counter(list-counter) ".";
  position: absolute;
  left: 0;
  top: 0;
  font-weight: var(--fontbold);
}
.article-content .alignleft {
  float: left;
  margin: 0 1.5em 1em 0;
}
.article-content .alignright {
  float: right;
  margin: 0 0 1em 1.5em;
}
.article-content .aligncenter {
  display: block;
  margin-left: auto;
  margin-right: auto;
  text-align: center;
}
.article-content .wp-caption {
  max-width: 100%;
  text-align: center;
  margin: 1em auto;
}
.article-content .wp-caption img {
  display: block;
  margin: 0 auto;
  height: auto;
}
.article-content table {
  width: 100%;
  border-bottom: 1px solid #BABABA;
  line-height: 1.5;
}
.article-content table td {
  padding: clamp(1rem, 1.5625vw, 1.6rem) clamp(1rem, 1.953125vw, 2rem);
  font-size: clamp(1.4rem, 1.5779092702vw, 1.6rem);
}
.article-content table tr {
  border-top: 1px solid #BABABA;
}
.article-content table th {
  background-color: #F2F2F2;
  white-space: nowrap;
  padding: clamp(1rem, 1.5625vw, 1.6rem) clamp(1rem, 1.953125vw, 2rem);
  font-size: clamp(1.4rem, 1.5779092702vw, 1.6rem);
}

body.is-menu-open {
  overflow: hidden;
}
body.is-menu-open.single-event #headbox .gmenu .entxt a, body.is-menu-open.page-template-template-lineup #headbox .gmenu .entxt a {
  color: black;
  transition-delay: 0.5s;
}
body.is-menu-open.single-event #headbox .gmenu path, body.is-menu-open.page-template-template-lineup #headbox .gmenu path {
  fill: black;
  transition-delay: 0.4s;
}
body.page-id-3018 #headbox rect, body.page-id-3018 #headbox path, body.single-event #headbox rect, body.single-event #headbox path {
  fill: white;
}
@media (max-width: 768px) {
  body.page-id-3018 #headbox rect, body.page-id-3018 #headbox path, body.single-event #headbox rect, body.single-event #headbox path {
    fill: #000000;
  }
}
body.page-id-3018 #headbox .gmenu .entxt, body.single-event #headbox .gmenu .entxt {
  color: white;
}
@media (max-width: 768px) {
  body.page-id-3018 #headbox .gmenu .entxt, body.single-event #headbox .gmenu .entxt {
    color: #000000;
  }
}
body.page-id-3018 .followbox .copytitle path, body.single-event .followbox .copytitle path {
  fill: white;
}
body.page-id-3018 .snsbtn g, body.single-event .snsbtn g {
  stroke: white;
}
body.page-id-3018 .snsbtn path, body.single-event .snsbtn path {
  fill: white;
}

.single-eventbox {
  position: relative;
}
.single-eventbox--thanks {
  padding-top: clamp(2rem, 18.0215475024vw, 18.4rem);
}
.single-eventbox--thanks .single-eventbox--contents {
  padding: clamp(1rem, 3.9177277179vw, 4rem) clamp(1rem, 7.0519098923vw, 7.2rem) clamp(1rem, 7.0519098923vw, 7.2rem);
}
@media (max-width: 768px) {
  .single-eventbox {
    padding-top: 8.5rem;
  }
  .single-eventbox .formcontents {
    margin-inline: initial;
  }
}
.single-eventbox:before, .single-eventbox:after {
  content: "";
  position: fixed;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
}
.single-eventbox:before {
  background: url(../../dist/images/common/bg-singleevent.jpg) no-repeat center top/cover;
}
@media (max-width: 768px) {
  .single-eventbox:before {
    background: none;
  }
}
.single-eventbox:after {
  background-color: rgba(0, 0, 0, 0.3);
}
@media (max-width: 768px) {
  .single-eventbox:after {
    background: none;
  }
}
.single-eventbox--contents {
  width: 100%;
  position: relative;
  z-index: 2;
  background-color: white;
  max-width: 75rem;
  margin: auto;
  padding: clamp(2.6rem, 2.0833333333vw, 4rem);
}
.single-eventbox--contents .eventlist .funlist {
  margin-bottom: 0;
}
@media (max-width: 768px) {
  .single-eventbox--contents {
    padding: 0;
    max-width: none;
    padding-inline: 2.4rem;
  }
}
.single-eventbox--contents .headbox {
  margin-bottom: clamp(4rem, 7.8125vw, 8rem);
}
.single-eventbox--contents .headbox .btns {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 1.6rem;
  margin-top: clamp(3.2rem, 3.90625vw, 4rem);
}
@media (max-width: 768px) {
  .single-eventbox--contents .headbox .btns {
    display: block;
  }
}
@media (max-width: 768px) {
  .single-eventbox--contents .headbox .btns .btn:not(:last-of-type) {
    margin-bottom: 1.6rem;
  }
}
.single-eventbox--contents .headbox .btns .btn--black .arrow {
  transform: rotate(90deg);
}
.single-eventbox--contents .headbox .btns .btn--white .box {
  background-color: var(--linecolor);
  border-color: var(--linecolor);
  color: white;
}
.single-eventbox--contents .headbox .btns .btn--box {
  width: 28rem;
}
@media (max-width: 768px) {
  .single-eventbox--contents .headbox .btns .btn--box {
    width: auto;
  }
}
.single-eventbox--contents .headbox .cap {
  margin-bottom: clamp(2.6rem, 2.0833333333vw, 4rem);
}
.single-eventbox--contents .eventlist {
  max-width: none;
}
.single-eventbox--contents .contents {
  background-image: url(../../dist/images/common/bordertitle.svg), url(../../dist/images/common/bordertitle.svg);
  background-position: left top, left bottom;
  background-repeat: repeat-x;
  padding-top: clamp(4.8rem, 7.03125vw, 7.2rem);
  margin-top: clamp(5.6rem, 7.8125vw, 8rem);
  padding-bottom: clamp(5.6rem, 7.8125vw, 8rem);
  margin-bottom: clamp(4.8rem, 7.03125vw, 7.2rem);
}
.single-eventbox--contents .event-info .headertitle {
  margin-bottom: clamp(2.08rem, 1.6666666667vw, 3.2rem);
}

.modal-overlay {
  position: fixed;
  inset: 0;
  background: rgba(0, 0, 0, 0.6);
  opacity: 0;
  visibility: hidden;
  transition: 0.3s;
  z-index: 90;
}

.modalbox {
  position: fixed;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%) scale(0.9);
  background: #fff;
  width: 70rem;
  padding: clamp(2.4rem, 2.5vw, 4.8rem) clamp(2.4rem, 3.3333333333vw, 6.4rem) clamp(2.4rem, 3.3333333333vw, 6.4rem);
  opacity: 0;
  visibility: hidden;
  transition: 0.3s;
  z-index: 1100;
  max-height: 60rem;
  overflow-y: auto;
}
@media (max-width: 768px) {
  .modalbox {
    width: calc(100% - 1.55rem - 1.6rem);
  }
  .modalbox .article-content {
    padding-inline: initial;
  }
}
.modalbox .article-content h3:first-of-type {
  margin: 0 0 1.6rem;
}
.modalbox .closebtn {
  position: absolute;
  cursor: pointer;
  top: 2.7rem;
  right: 2.73rem;
  z-index: 102;
}
@media (max-width: 768px) {
  .modalbox .closebtn {
    width: 1.643rem;
    top: 1.6rem;
    right: 1.61rem;
  }
}
.modalbox .titlebox {
  margin-bottom: clamp(3.2rem, 3.90625vw, 4rem);
  border-bottom: 1px dashed black;
  padding-bottom: 1.6rem;
}
.modalbox .titlebox .job {
  font-size: clamp(1.2rem, 1.26953125vw, 1.3rem);
  line-height: 1;
  padding-bottom: 0.8rem;
  font-weight: var(--fontnormal);
}
.modalbox .titlebox .text {
  display: flex;
  align-items: center;
  justify-content: space-between;
  font-family: var(--titlefont);
  font-size: 2rem;
  font-weight: var(--fontbold);
}
.modalbox .titlebox .text .hira {
  font-family: var(--basefont);
  font-size: clamp(1.1rem, 1.26953125vw, 1.3rem);
  line-height: 1;
  font-weight: var(--fontnormal);
  color: #909090;
}
.modalbox .capbox {
  display: flex;
  align-items: center;
  gap: 3.2rem;
  margin-bottom: 2.4rem;
}
@media (max-width: 768px) {
  .modalbox .capbox {
    display: block;
  }
}
.modalbox .capbox .titles {
  line-height: 1;
}
@media (max-width: 768px) {
  .modalbox .capbox .titles {
    text-align: center;
  }
}
.modalbox .capbox .titles .text {
  font-family: var(--titlefont);
  font-weight: var(--fontbold);
  font-size: clamp(2.2rem, 2.9296875vw, 3rem);
  line-height: 1.5;
}
@media (max-width: 768px) {
  .modalbox .capbox .titles .text {
    line-height: 1.3636363636;
  }
}
.modalbox .capbox .mincap {
  width: 10rem;
  height: 10rem;
  aspect-ratio: 1;
  border-radius: 50%;
  overflow: hidden;
}
@media (max-width: 768px) {
  .modalbox .capbox .mincap {
    margin: 0 auto 1.6rem;
  }
}
.modalbox .capbox .mincap img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.modalbox .btn {
  width: clamp(20rem, 23.4375vw, 24rem);
  margin: auto;
  z-index: 102;
  padding: 0;
  padding-top: clamp(3.2rem, 3.90625vw, 4rem);
}
.modalbox .btn .icon {
  transform: rotate(45deg);
}

.modal-prev,
.modal-next {
  position: fixed;
  top: 50%;
  transform: translateY(-50%);
  border: none;
  cursor: pointer;
  z-index: 110;
  font-size: clamp(2.4rem, 2.0833333333vw, 4rem);
  color: white;
  font-weight: var(--fontbold);
}

.modal-prev {
  left: 10px;
}

.modal-next {
  right: 10px;
}

.modalbox.is-active,
.modal-open .modal-overlay {
  opacity: 1;
  visibility: visible;
}

.modalbox.is-active {
  transform: translate(-50%, -50%) scale(1);
}

.staff--list {
  display: flex;
  flex-wrap: wrap;
  gap: clamp(2.08rem, 1.6666666667vw, 3.2rem);
  margin-bottom: clamp(5.6rem, 15.625vw, 16rem);
}
@media (max-width: 768px) {
  .staff--list {
    display: block;
  }
}
.staff--list .stafflist {
  flex: 0 0 calc((100% - clamp(2.08rem, 1.6666666667vw, 3.2rem) * 3) / 4);
}
@media (max-width: 1024px) {
  .staff--list .stafflist {
    flex: 0 0 calc((100% - clamp(2.08rem, 1.6666666667vw, 3.2rem) * 2) / 3);
  }
}
@media (max-width: 768px) {
  .staff--list .stafflist {
    flex: initial;
    margin-inline: 2.4rem;
  }
  .staff--list .stafflist:not(:last-of-type) {
    margin-bottom: 2.4rem;
  }
}

.stafflist {
  padding: clamp(3.2rem, 2.44140625vw, 2.5rem) clamp(2.4rem, 2.44140625vw, 2.5rem) clamp(3.2rem, 4.6875vw, 4.8rem);
  position: relative;
  cursor: pointer;
}
.stafflist:hover .cap img {
  transform: scale(1.2);
}
.stafflist .itemblood {
  width: clamp(3.9rem, 3.125vw, 6rem);
  background-color: black;
  aspect-ratio: 1;
  display: flex;
  align-items: center;
  justify-content: center;
  color: white;
  font-size: clamp(1.95rem, 1.5625vw, 3rem);
  font-family: var(--titlefont);
  font-weight: var(--fontbold);
  border-radius: 50%;
  line-height: 0.8333333333;
  position: absolute;
  left: clamp(1.04rem, 0.8333333333vw, 1.6rem);
  top: clamp(1.04rem, 0.8333333333vw, 1.6rem);
  z-index: 2;
}
.stafflist .itemblood .txt {
  transform: translateY(-0.4rem);
}
.stafflist {
  background: url(../../dist/images/common/line.png) repeat-x left bottom/clamp(9.945rem, 7.96875vw, 15.3rem), url(../../dist/images/common/line.png) repeat-x left top/clamp(9.945rem, 7.96875vw, 15.3rem);
}
.stafflist:before, .stafflist:after {
  content: "";
  position: absolute;
  top: 0;
  width: clamp(0.26rem, 0.2083333333vw, 0.4rem);
  height: 100%;
  background: url(../../dist/images/common/lineleft.png) repeat-y left top/contain;
}
.stafflist:before {
  left: 0;
}
.stafflist:after {
  right: 0;
}
.stafflist .itembox:after {
  content: "";
  position: absolute;
  width: 2.577rem;
  height: 2.849rem;
  background: url(../../dist/images/common/icon-glass.svg) no-repeat center center/contain;
  right: 2rem;
  bottom: 2rem;
}
.stafflist .itembox:before {
  content: "TSUCHIYA KENSETSU";
  font-size: clamp(1rem, 1vw, 1.1rem);
  color: #909090;
  position: absolute;
  left: 50%;
  transform: translateX(-50%);
  bottom: clamp(0.5rem, 1vw, 1rem);
}
.stafflist .cap {
  margin-bottom: clamp(0.52rem, 0.4166666667vw, 0.8rem);
  position: relative;
  overflow: hidden;
  aspect-ratio: 1;
}
.stafflist .cap img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center;
  display: block;
  transition: transform 0.5s;
  will-change: transform;
}
.stafflist .titlebox {
  border-bottom: 1px dashed black;
  padding-bottom: 1.6rem;
  margin-bottom: 2.4rem;
}
.stafflist .titlebox .job {
  font-size: clamp(1.2rem, 1.26953125vw, 1.3rem);
  line-height: 1;
  padding-bottom: 0.8rem;
  font-weight: var(--fontnormal);
}
.stafflist .titlebox .text {
  display: flex;
  align-items: center;
  justify-content: space-between;
  font-family: var(--titlefont);
  font-size: 2rem;
  font-weight: var(--fontbold);
}
.stafflist .titlebox .text .hira {
  font-family: var(--basefont);
  font-size: clamp(1.1rem, 1.26953125vw, 1.3rem);
  line-height: 1;
  font-weight: var(--fontnormal);
  color: #909090;
}
.stafflist .textlist {
  padding-bottom: clamp(1.56rem, 1.25vw, 2.4rem);
}
.stafflist .textlist li:not(:last-child) {
  margin-bottom: clamp(0.52rem, 0.4166666667vw, 0.8rem);
}
.stafflist .textlist dl {
  display: flex;
  align-items: flex-start;
  gap: clamp(0.65rem, 0.5208333333vw, 1rem);
}
.stafflist .textlist dl dt {
  width: clamp(5.4rem, 6.25vw, 6.4rem);
  background-color: #EDEDED;
  border: 1px solid black;
  display: flex;
  justify-content: center;
  align-items: center;
  min-height: clamp(2.6rem, 2.734375vw, 2.8rem);
  font-size: 1.1rem;
  font-weight: var(--fontbold);
}
.stafflist .textlist dl dd {
  width: calc(100% - clamp(5.4rem, 6.25vw, 6.4rem) - clamp(0.65rem, 0.5208333333vw, 1rem));
  font-size: clamp(1.2rem, 1.3671875vw, 1.4rem);
  line-height: 1.6;
}
@media (max-width: 768px) {
  .stafflist .textlist dl dd {
    line-height: 1.5;
  }
}

.staff-toptext {
  display: flex;
  align-items: flex-start;
  justify-content: center;
  gap: 8rem;
  margin-bottom: clamp(4.8rem, 11.71875vw, 12rem);
  font-size: clamp(1.4rem, 1.2490241998vw, 1.6rem);
  font-weight: var(--fontnormal);
  padding-inline: 2.4rem;
}
@media (max-width: 768px) {
  .staff-toptext {
    display: block;
  }
}
.staff-toptext b {
  font-size: clamp(1.6rem, 0.9375vw, 1.8rem);
}
.staff-toptext .textbox p {
  line-height: 2.2;
}
@media (max-width: 768px) {
  .staff-toptext .textbox p {
    line-height: 2.2;
  }
}
.staff-toptext .textbox p:not(:last-of-type) {
  margin-bottom: 2.4rem;
}
@media (max-width: 768px) {
  .staff-toptext .titles {
    margin-bottom: 2.4rem;
  }
}
.staff-toptext .titles .text {
  font-size: clamp(2.8rem, 2.0833333333vw, 4rem);
  font-weight: var(--fontbold);
  font-family: var(--titlefont);
  line-height: 1.6;
  white-space: nowrap;
}
@media (max-width: 768px) {
  .staff-toptext .titles .text {
    line-height: 1.5;
  }
}

@media (max-width: 768px) {
  .faqbox {
    margin-inline: 2.4rem;
  }
}
.faqbox:not(:last-of-type) {
  margin-bottom: clamp(4.8rem, 7.8125vw, 8rem);
}
.faqbox--title {
  font-size: clamp(1.8rem, 1.7174082748vw, 2.2rem);
  line-height: 1.5;
  background: #EDEDED;
  font-weight: var(--fontbold);
  padding: clamp(0.65rem, 0.5208333333vw, 1rem) clamp(1.3rem, 1.0416666667vw, 2rem);
  margin-bottom: clamp(2.4rem, 3.125vw, 3.2rem);
}
@media (max-width: 768px) {
  .faqbox--title {
    padding: 1rem 1.6rem;
  }
}
.faqbox--list {
  border-bottom: 1px dashed #000000;
  padding-bottom: clamp(2.4rem, 1.6666666667vw, 3.2rem);
  padding-left: 1.7rem;
  padding-right: 1.7rem;
}
.faqbox--list:not(:last-child) {
  margin-bottom: clamp(2.4rem, 3.125vw, 3.2rem);
}
.faqbox .icon {
  width: 3rem;
  aspect-ratio: 1;
  display: flex;
  justify-content: center;
  align-items: center;
  border-radius: 50%;
  position: relative;
}
.faqbox .icon .txt {
  position: absolute;
  left: 0.7rem;
  font-size: 1.8rem;
  font-family: var(--titlefont);
  font-weight: var(--fontbold);
  line-height: 1;
}
.faqbox .icon .txt b {
  margin-left: -0.1rem;
  display: block;
  margin-top: -0.1rem;
}
.faqbox .icon--q {
  background-color: black;
  color: white;
}
.faqbox .icon--q .txt {
  top: 0.4rem;
}
.faqbox .icon--a {
  border: 1px solid black;
  color: black;
}
.faqbox .icon--a .txt {
  top: 0.3rem;
}
.faqbox .textbox .text {
  padding-top: clamp(1.04rem, 0.8333333333vw, 1.6rem);
  align-items: flex-start;
}
.faqbox .textbox .text .box {
  width: calc(100% - 3rem);
}
@media (max-width: 768px) {
  .faqbox .textbox .text .box {
    padding-inline: initial;
  }
}
.faqbox .textbox p {
  font-size: clamp(1.3rem, 1.2490241998vw, 1.6rem);
  line-height: 1.8;
  font-weight: var(--fontnormal);
}
@media (max-width: 768px) {
  .faqbox .textbox p {
    max-width: none;
  }
}
.faqbox .textbox p:first-of-type {
  margin-top: 0;
}
.faqbox--text {
  display: flex;
  align-items: center;
  gap: 1.6rem;
}
.faqbox--text.titlebox {
  cursor: pointer;
}
.faqbox--text.titlebox p {
  font-size: clamp(1.4rem, 1.4051522248vw, 1.8rem);
  line-height: 1.6;
  font-weight: var(--fontbold);
}
.faqbox--text p {
  width: 100%;
  max-width: calc(100% - 1.6rem - 3rem);
  font-weight: var(--fontnormal);
}

.accordion-content {
  max-height: 0;
  overflow: hidden;
  transition: max-height 0.3s ease;
}
.accordion-content.active {
  max-height: 1000rem;
}

/* ======================================
page-contact
====================================== */
#page-contact .headbox {
  text-align: center;
  margin-bottom: clamp(2.4rem, 4.6875vw, 4.8rem);
}
@media (max-width: 768px) {
  #page-contact .headbox {
    padding-inline: 2.4rem;
  }
}
#page-contact .headbox .cap {
  margin-bottom: clamp(2.4rem, 3.125vw, 3.2rem);
}
#page-contact .headbox .titles {
  margin-bottom: 2.4rem;
}
#page-contact .headbox .titles .text {
  font-family: var(--titlefont);
  font-size: clamp(2.8rem, 3.5128805621vw, 4.5rem);
}
#page-contact .headbox .lead {
  font-size: clamp(1.4rem, 1.2490241998vw, 1.6rem);
  line-height: 2.2;
  font-weight: var(--fontnormal);
}
#page-contact .contactlist {
  position: relative;
  background: url(../../dist/images/contact/bg-list.svg) no-repeat center center/contain;
  padding-top: 10.5rem;
  padding-bottom: 13.7rem;
  text-align: center;
  font-size: clamp(1.4rem, 1.2490241998vw, 1.6rem);
  font-weight: var(--fontnormal);
  line-height: 1.875;
  margin-bottom: clamp(2.38rem, 6.2451209992vw, 8rem);
}
@media (max-width: 768px) {
  #page-contact .contactlist {
    background: url(../../dist/images/contact/bg-list_sp.svg) no-repeat center top/cover;
  }
}
#page-contact .contactlist:before {
  content: "";
  position: absolute;
  width: clamp(9rem, 11.7096018735vw, 15rem);
  height: clamp(7.518rem, 9.7580015613vw, 12.5rem);
  background: url(../../dist/images/contact/list-item.svg) no-repeat center center/contain;
  right: clamp(0rem, 7.5722092116vw, 9.7rem);
  bottom: clamp(0rem, 9.1334894614vw, 11.7rem);
}
@media (max-width: 768px) {
  #page-contact .contactlist:before {
    right: 0;
    bottom: auto;
    left: 0;
    margin-left: auto;
    margin-right: auto;
    top: 0;
  }
}
#page-contact .contactlist ul {
  margin-bottom: 2.4rem;
}
#page-contact .contactlist ul li {
  font-size: clamp(1.6rem, 1.4051522248vw, 1.8rem);
  line-height: 1.6;
  font-weight: var(--fontbold);
}
#page-contact .contactlist ul li:not(:last-child) {
  margin-bottom: 2rem;
}
#page-contact .contactlist ul li .text {
  background: linear-gradient(transparent 60%, #FFD4B9 60%);
  position: relative;
}
#page-contact .contactlist ul li .text:before {
  content: url(../../dist/images/contact/item-check.svg);
  position: absolute;
  left: -2.2rem;
}
#page-contact .faqbox {
  margin-bottom: 16rem;
}
#page-contact .faqbox h3.title {
  text-align: center;
  font-size: 2rem;
  font-weight: var(--fontbold);
  margin-bottom: 4.8rem;
}
#page-contact .faqbox h3.title .text {
  padding: 0 1.6rem;
  position: relative;
}
#page-contact .faqbox h3.title .text:before, #page-contact .faqbox h3.title .text:after {
  width: 2px;
  height: 2.2rem;
  background-color: #000000;
  position: absolute;
  content: "";
  bottom: 0.3rem;
}
#page-contact .faqbox h3.title .text:before {
  left: 0;
  transform: rotate(-35deg);
}
#page-contact .faqbox h3.title .text:after {
  right: 0;
  transform: rotate(35deg);
}
#page-contact .faqbox--list {
  padding-bottom: 2.4rem;
}
#page-contact .faqbox--list:not(:last-child) {
  margin-bottom: 2.4rem;
}

.boxlist {
  display: flex;
  flex-wrap: wrap;
  justify-content: flex-start;
}
.boxlist .listbox {
  width: 100%;
}
.boxlist--three {
  gap: 5.6rem 4rem;
}
.boxlist--three .listbox {
  flex: 0 0 calc((100% - 8rem) / 3);
}
@media (max-width: 1021px) {
  .boxlist--three .listbox {
    flex: 0 0 calc((100% - 4rem) / 2);
  }
}
@media (max-width: 768px) {
  .boxlist--three .listbox {
    flex: none;
  }
}
.boxlist--five {
  gap: 1.6rem;
}
@media (max-width: 768px) {
  .boxlist--five {
    gap: 0.8rem;
  }
}
.boxlist--five .listbox {
  flex: 0 0 calc((100% - 6.4rem) / 5);
}
@media (max-width: 1021px) {
  .boxlist--five .listbox {
    flex: 0 0 calc((100% - 4.8rem) / 4);
  }
}
@media (max-width: 768px) {
  .boxlist--five .listbox {
    flex: 0 0 calc((100% - 1.6rem) / 3);
  }
}

/* ======================================
.caplistbox
====================================== */
.caplistbox {
  cursor: pointer;
  position: relative;
}
.caplistbox:after {
  content: "";
  position: absolute;
  width: clamp(1.6rem, 2.7424094025vw, 2.8rem);
  height: clamp(1.7rem, 2.7424094025vw, 2.8rem);
  background: url(../../dist/images/common/icon-glass.svg) no-repeat center center/contain;
  right: clamp(0.6rem, 1.0773751224vw, 1.1rem);
  bottom: clamp(0.5rem, 0.9794319295vw, 1rem);
}
.caplistbox img {
  aspect-ratio: 1;
  object-fit: cover;
  width: 100%;
  height: 100%;
  object-position: center;
}

/* ======================================
caselist
====================================== */
.caselist {
  position: relative;
  font-size: clamp(1.2rem, 1.0148321624vw, 1.3rem);
  font-weight: var(--fontnormal);
}
@media (max-width: 768px) {
  .caselist {
    font-size: 1.3rem;
  }
}
.caselist:hover .cap img {
  transform: scale(1.2);
}
.caselist .cap {
  overflow: hidden;
  margin-bottom: 1.6rem;
}
.caselist .cap img {
  aspect-ratio: 373/250;
  object-fit: cover;
  transition: 0.5s ease;
}
@media (max-width: 768px) {
  .caselist .cap img {
    aspect-ratio: 327/219;
  }
}
.caselist h3.titles {
  margin-bottom: 1.3rem;
}
.caselist h3.titles .text {
  font-family: var(--titlefont);
  font-weight: var(--fontbold);
  font-size: clamp(1.6rem, 1.4051522248vw, 1.8rem);
  line-height: 1.5;
}
@media (max-width: 768px) {
  .caselist h3.titles .text {
    font-size: 1.8rem;
  }
}
.caselist .lead {
  line-height: 1.6;
  margin-bottom: 1.6rem;
}
.caselist .menu {
  margin-bottom: 1.6rem;
}
@media (max-width: 768px) {
  .caselist .menu {
    justify-content: center;
  }
}

/* ======================================
page-thanks
====================================== */
.page-thanks .btn {
  max-width: 28rem;
  margin: auto;
}
.page-thanks .textbox {
  margin-bottom: clamp(4rem, 4.7012732615vw, 4.8rem);
  font-size: clamp(1.4rem, 1.2490241998vw, 1.6rem);
  line-height: 2;
  font-weight: var(--fontnormal);
}
.page-thanks .textbox p:not(:last-of-type) {
  margin-bottom: 2.4rem;
}
.page-thanks .headbox {
  margin-bottom: 3.2rem;
  text-align: center;
  position: relative;
}
.page-thanks .headbox:before {
  content: "";
  width: clamp(8rem, 9.7943192948vw, 10rem);
  height: clamp(6.29rem, 7.7012732615vw, 7.863rem);
  background: url(../../dist/images/contact/thanks-item.svg) no-repeat center top/contain;
  display: block;
  margin: 0 auto 3.2rem;
}
.page-thanks .headbox .lead {
  font-size: 1.5rem;
  line-height: 1;
  font-weight: var(--fontnormal);
}
.page-thanks .headbox h2 {
  font-family: var(--titlefont);
  font-weight: var(--fontbold);
  margin-bottom: 1.6rem;
  font-size: 4rem;
  line-height: 1;
}

/* ======================================
.archivecase
====================================== */
@media (max-width: 768px) {
  .archivecase {
    margin-inline: 2.4rem;
  }
}
.archivecase.--point .archivemenu {
  margin-inline: initial;
  margin-bottom: clamp(2.4rem, 4.6875vw, 4.8rem);
}
@media (max-width: 768px) {
  .archivecase.--point .archivemenu div.box:last-of-type p.title {
    line-height: 1;
    margin-bottom: 1.6rem;
  }
}
.archivecase.--point .boxlist {
  margin-bottom: 5.7rem;
}
.archivecase.--point .btn {
  max-width: 28rem;
  margin: auto;
}
@media (max-width: 768px) {
  .archivecase.--point .btn {
    max-width: none;
    margin-inline: 2.4rem;
  }
}

.archive-casebtns {
  display: flex;
  align-items: flex-start;
  justify-content: center;
  gap: 1.6rem;
  margin-bottom: clamp(3.2rem, 6.25vw, 6.4rem);
}
@media (max-width: 768px) {
  .archive-casebtns {
    padding-bottom: 2.4rem;
    border-bottom: 1px dashed black;
    display: block;
  }
}
.archive-casebtns .btn {
  width: 32rem;
  cursor: pointer;
}
@media (max-width: 768px) {
  .archive-casebtns .btn {
    width: auto;
  }
  .archive-casebtns .btn:not(:last-of-type) {
    margin-bottom: 1.6rem;
  }
}
.archive-casebtns .btn--box {
  letter-spacing: 0;
}
.archive-casebtns .point .itemtxt {
  padding-top: 1rem;
  font-size: 1.1rem;
  font-weight: var(--fontnormal);
  display: flex;
  align-items: flex-start;
  gap: 0.5rem;
}
.archive-casebtns .point .itemtxt .item {
  transform: translateY(0.5rem);
}

/* ======================================
.singlecase
====================================== */
.singlecase .btn {
  max-width: 28rem;
  margin: auto;
}
@media (max-width: 768px) {
  .singlecase .btn {
    max-width: none;
    margin-inline: 2.4rem;
  }
}
.singlecase .contents th {
  text-align: left;
  width: 20rem;
}
.singlecase .capcolumsbox {
  display: flex;
  flex-wrap: wrap;
  gap: 0.8rem;
  margin-bottom: clamp(3.2rem, 7.8125vw, 8rem);
}
@media (max-width: 768px) {
  .singlecase .capcolumsbox {
    margin-inline: 2rem;
  }
}
.singlecase .capcolumsbox .cap {
  width: 100%;
}
.singlecase .capcolumsbox .cap img {
  object-fit: cover;
  width: 100%;
}
.singlecase .capcolumsbox .cap:not(:first-of-type) {
  max-width: calc(50% - 0.4rem);
}
.singlecase .capcolumsbox .cap:not(:first-of-type) img {
  aspect-ratio: 396.23/274.53;
}
.singlecase .headbox {
  margin-bottom: clamp(3.2rem, 4.6875vw, 4.8rem);
}
@media (max-width: 768px) {
  .singlecase .headbox {
    margin-inline: 2.4rem;
  }
}
.singlecase .headbox .lead {
  font-size: clamp(1.2rem, 1.5670910872vw, 1.6rem);
  line-height: 2;
  margin-bottom: clamp(2.4rem, 1.6666666667vw, 3.2rem);
  font-weight: var(--fontnormal);
}
@media (max-width: 768px) {
  .singlecase .headbox .lead {
    line-height: 1.8;
  }
}
.singlecase .headbox .title {
  font-size: clamp(2.2rem, 2.34375vw, 4.5rem);
  font-family: var(--titlefont);
  font-weight: var(--fontbold);
  margin-bottom: clamp(1.6rem, 3.125vw, 3.2rem);
  line-height: 1.5;
}
@media (max-width: 768px) {
  .singlecase .headbox .title {
    line-height: 1.5;
  }
}

.pagecontents {
  font-size: clamp(1.4rem, 1.2490241998vw, 1.6rem);
}

/* ======================================
#page-company
====================================== */
@media (max-width: 768px) {
  #page-company .pagecontents .inner {
    margin-inline: 2.4rem;
  }
  #page-company .pagecontents .inner .sppagenavi {
    margin-inline: initial;
  }
}
@media (max-width: 768px) {
  #page-company .contents .article-content {
    padding-inline: initial;
  }
}
#page-company .contents:not(:last-of-type) {
  margin-bottom: clamp(5.6rem, 11.71875vw, 12rem);
}
#page-company .contents h3 {
  text-align: center;
  font-size: clamp(2.4rem, 2.0833333333vw, 4rem);
  font-family: var(--titlefont);
  font-weight: var(--fontbold);
  margin-bottom: clamp(2.4rem, 5.46875vw, 5.6rem);
  line-height: 1;
}
#page-company .contents table th {
  text-align: left;
  width: clamp(7.2rem, 10.4166666667vw, 20rem);
}
#page-company .map {
  width: 100%;
  position: relative;
  aspect-ratio: 800/500;
  margin-bottom: clamp(3.2rem, 4.6875vw, 4.8rem);
}
@media (max-width: 768px) {
  #page-company .map {
    aspect-ratio: 327/234;
  }
}
#page-company .map iframe {
  width: 100%;
  height: 100%;
}
#page-company .btn {
  max-width: 28rem;
  margin: 0 auto clamp(3.2rem, 3.3333333333vw, 6.4rem);
}
@media (max-width: 768px) {
  #page-company .btn {
    max-width: none;
  }
}
#page-company .caps {
  display: flex;
  justify-content: space-between;
  flex-wrap: wrap;
  gap: clamp(0.8rem, 1.6666666667vw, 3.2rem);
}
#page-company .caps .cap {
  flex: 0 0 calc((100% - clamp(0.8rem, 1.6666666667vw, 3.2rem)) / 2);
}
#page-company .caps .cap img {
  aspect-ratio: 384/280;
}
@media (max-width: 768px) {
  #page-company .caps .cap img {
    aspect-ratio: 159.5/119;
  }
}
#page-company .lead {
  text-align: center;
  line-height: 2;
  margin-bottom: clamp(2.4rem, 5.46875vw, 5.6rem);
  font-weight: var(--fontnormal);
}
@media (max-width: 768px) {
  #page-company .lead {
    text-align: left;
    line-height: 1.8;
  }
}

/* ======================================
seemorebox
====================================== */
.seemorebox {
  padding-top: clamp(5.6rem, 8.3333333333vw, 16rem);
}
@media (max-width: 768px) {
  .seemorebox {
    padding-inline: 2.4rem;
  }
}
.seemorebox h2 {
  text-align: center;
  font-family: var(--titlefont);
  font-size: clamp(2.5rem, 2.9296875vw, 3rem);
  margin-bottom: clamp(2.4rem, 4.6875vw, 4.8rem);
  position: relative;
  background: url(../../dist/images/common/line.png) repeat-x left center/15.3rem;
  line-height: 1;
}
.seemorebox h2 .text {
  display: inline-block;
  background-color: white;
  padding: 0 1.6rem 0 2.6rem;
}
.seemorebox h2 .text:before {
  content: url(../../dist/images/common/icon-homebuilding.svg);
  transform: rotate(90deg) translateY(1rem);
  display: inline-block;
  vertical-align: -0.4rem;
}
.seemorebox .itembox {
  background: url(../../dist/images/common/line.png) repeat-x left bottom/15.3rem;
  padding-bottom: clamp(2.4rem, 4.6875vw, 4.8rem);
}
.seemorebox .lead {
  text-align: center;
  font-weight: var(--fontbold);
  font-size: clamp(1.3rem, 1.5625vw, 1.6rem);
  margin-bottom: 2.4rem;
}
.seemorebox .menu {
  justify-content: center;
  gap: clamp(0.5rem, 0.4166666667vw, 0.8rem);
}
@media (max-width: 768px) {
  .seemorebox .menu {
    padding-inline: 0.8rem;
  }
}
.seemorebox .menu .current .box {
  border-color: #666666;
  background-color: #D0D0D0;
  cursor: auto;
}
.seemorebox .menu .current .box rect {
  fill: #666666;
}
.seemorebox .menu .current .box path {
  fill: #666666;
}
.seemorebox .menu .current .box {
  color: #666666;
}

body.page-id-2298 .seemorebox .menu li:nth-child(2) .box {
  border-color: #666666;
  background-color: #D0D0D0;
  cursor: auto;
}
body.page-id-2298 .seemorebox .menu li:nth-child(2) .box rect {
  fill: #666666;
}
body.page-id-2298 .seemorebox .menu li:nth-child(2) .box path {
  fill: #666666;
}
body.page-id-2298 .seemorebox .menu li:nth-child(2) .box {
  color: #666666;
}

/* ======================================
.homebuilding
====================================== */
.homebuilding .header {
  margin-bottom: clamp(4.8rem, 7.8125vw, 8rem);
}
@media (max-width: 768px) {
  .homebuilding .header {
    margin-inline: 2.4rem;
  }
}
.homebuilding .header h2 {
  text-align: center;
  margin-bottom: clamp(2.4rem, 3.125vw, 3.2rem);
}
.homebuilding .header h2 .text {
  font-size: clamp(2.8rem, 2.0833333333vw, 4rem);
  font-family: var(--titlefont);
  font-weight: var(--fontbold);
}
.homebuilding .header .lead {
  font-size: clamp(1.4rem, 1.2490241998vw, 1.6rem);
  line-height: 2;
  font-weight: var(--fontnormal);
}
@media (max-width: 768px) {
  .homebuilding .header .lead {
    line-height: 1.8;
  }
}

/* ======================================
page-warranty
====================================== */
#page-warranty .box a {
  text-decoration: underline;
  margin-left: 1.6rem;
}
#page-warranty .box a:after {
  content: url(../../dist/images/common/icon-link.svg);
  margin-left: 0.8rem;
}
#page-warranty .box:not(:last-of-type) {
  margin-bottom: clamp(4.8rem, 7.8125vw, 8rem);
}

/* ======================================
page-maintenance
====================================== */
#page-maintenance div.box {
  display: flex;
  align-items: center;
  gap: clamp(2rem, 4.1666666667vw, 8rem);
  font-size: clamp(1.4rem, 1.2490241998vw, 1.6rem);
  line-height: 2;
}
@media (max-width: 768px) {
  #page-maintenance div.box {
    display: block;
    margin-inline: 2.4rem;
  }
  #page-maintenance div.box .article-content {
    padding-inline: inherit;
  }
}
#page-maintenance div.box:not(:last-of-type) {
  margin-bottom: clamp(4.8rem, 11.71875vw, 12rem);
}
#page-maintenance div.box .capbox {
  width: calc(100% - 57rem - 8rem);
}
@media (max-width: 768px) {
  #page-maintenance div.box .capbox {
    width: auto;
    margin-inline: calc(7.7rem - 2.4rem) calc(7.8rem - 2.4rem);
    margin-bottom: 2.4rem;
  }
}
#page-maintenance div.box .capbox .cap {
  position: relative;
}
#page-maintenance div.box h3 {
  margin-bottom: clamp(1.6rem, 1.25vw, 2.4rem);
  font-size: clamp(2rem, 1.25vw, 2.4rem);
  font-weight: var(--fontbold);
}
@media (max-width: 768px) {
  #page-maintenance div.box h3 {
    text-align: center;
    line-height: 1;
  }
}
#page-maintenance div.box h3 .text {
  position: relative;
}
@media (max-width: 768px) {
  #page-maintenance div.box h3 .text {
    line-height: 1.5;
  }
}
#page-maintenance div.box .text-fluorescent {
  font-weight: var(--fontbold);
}
#page-maintenance div.box .textbox {
  width: 100%;
  max-width: 57rem;
}
#page-maintenance div.box--01 h3 .text:after {
  content: "";
  position: absolute;
  right: -2.4rem;
  top: -1.2rem;
  width: clamp(1.8rem, 1.3020833333vw, 2.5rem);
  height: clamp(1.836rem, 1.3729166667vw, 2.636rem);
  background: url(../../dist/images/maintenance/cap01-icon.png) no-repeat center center/contain;
}
#page-maintenance div.box--02 {
  flex-direction: row-reverse;
}
#page-maintenance div.box--02 .capbox .cap:after {
  content: "";
  position: absolute;
  z-index: 2;
  width: clamp(6.1rem, 4.1666666667vw, 8rem);
  height: clamp(2.874rem, 1.965625vw, 3.774rem);
  background: url(../../dist/images/maintenance/cap02-icon.png) no-repeat center center/contain;
  transform: rotate(62deg);
  right: 3rem;
  bottom: -2rem;
}
@media (max-width: 768px) {
  #page-maintenance div.box--02 .capbox .cap:after {
    right: -2.08rem;
    bottom: 2.32rem;
  }
}
#page-maintenance div.box--03 .cap:before, #page-maintenance div.box--03 .cap:after {
  content: "";
  position: absolute;
}
#page-maintenance div.box--03 .cap:before {
  width: clamp(6.521rem, 4.1666666667vw, 8rem);
  height: clamp(6.219rem, 3.9583333333vw, 7.6rem);
  background: url(../../dist/images/maintenance/cap03-icon01.png) no-repeat center center/contain;
  left: -4rem;
  top: -0.4rem;
}
#page-maintenance div.box--03 .cap:after {
  width: clamp(6.929rem, 4.4270833333vw, 8.5rem);
  height: clamp(6.145rem, 3.90625vw, 7.5rem);
  background: url(../../dist/images/maintenance/cap03-icon02.png) no-repeat center center/contain;
  right: -1.6rem;
  bottom: -5rem;
}
@media (max-width: 768px) {
  #page-maintenance div.box--03 .cap:after {
    bottom: 0.95rem;
    right: -5.3rem;
  }
}
#page-maintenance div.box--03 .caps {
  display: flex;
  gap: 1rem;
  padding-top: 2.5rem;
}
@media (max-width: 768px) {
  #page-maintenance div.box--03 .caps .mincap:nth-of-type(3) {
    display: none;
  }
}

/* ======================================
page-wood
====================================== */
@media (max-width: 768px) {
  #page-wood .pagecontents {
    overflow-x: hidden;
  }
}
#page-wood .header {
  text-align: center;
}
@media (max-width: 768px) {
  #page-wood .header {
    margin-bottom: 4rem;
  }
  #page-wood .header .text {
    font-size: 3rem;
    line-height: 1.4;
  }
  #page-wood .header .lead {
    text-align: left;
    display: flex;
    justify-content: center;
  }
}
#page-wood .homebuilding {
  margin-bottom: clamp(4.87rem, 7.2916666667vw, 14rem);
}
#page-wood .contents h2 {
  text-align: center;
  font-family: var(--titlefont);
  font-weight: var(--fontbold);
  font-size: clamp(2.4rem, 2.0833333333vw, 4rem);
  margin-bottom: clamp(2.4rem, 5vw, 9.6rem);
}
#page-wood .contents h2 .number {
  width: clamp(9.865rem, 14.94140625vw, 16.3rem);
  display: block;
  margin: 0 auto 1.6rem;
}
#page-wood .contents .leadtext {
  text-align: center;
  line-height: 2.2;
  margin-bottom: clamp(2.4rem, 5vw, 9.6rem);
  font-weight: var(--fontnormal);
}
#page-wood .contents .leadtext p:not(:last-of-type) {
  margin-bottom: clamp(1.6rem, 1.6666666667vw, 3.2rem);
}
#page-wood .contents--box04 .eventbox {
  display: flex;
  justify-content: space-between;
  margin-bottom: clamp(5.6rem, 3.3333333333vw, 6.4rem);
}
@media (max-width: 768px) {
  #page-wood .contents--box04 .eventbox {
    display: block;
  }
}
#page-wood .contents--box04 .btn {
  max-width: 28rem;
  margin: auto;
}
#page-wood .contents--box03 {
  margin-bottom: clamp(4.8rem, 5vw, 9.6rem);
}
#page-wood .contents--box03 h2 {
  margin-bottom: clamp(1.6rem, 2.0833333333vw, 4rem);
}
#page-wood .contents--box03 .banner {
  width: 60rem;
  margin: 0 auto clamp(5.6rem, 8.3333333333vw, 16rem);
  position: relative;
}
@media (max-width: 768px) {
  #page-wood .contents--box03 .banner {
    width: auto;
    margin-inline: 2.4rem;
  }
}
#page-wood .contents--box03 .banner .cap:after {
  content: "";
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  background: rgba(123, 83, 42, 0.38);
}
#page-wood .contents--box03 .banner .text {
  position: absolute;
  left: 50%;
  top: 50%;
  transform: translate(-50%, -50%);
}
#page-wood .contents--box03 .list {
  margin-bottom: clamp(3.2rem, 4.1666666667vw, 8rem);
}
@media (max-width: 768px) {
  #page-wood .contents--box03 .list {
    padding-inline: 2.4rem;
  }
}
#page-wood .contents--box03 .list--box {
  background: url(../images/common/line.png) repeat-x left bottom/clamp(9.945rem, 7.96875vw, 15.3rem);
  padding-bottom: clamp(3.2rem, 4.1666666667vw, 8rem);
  display: flex;
  justify-content: space-between;
  flex-direction: row-reverse;
  gap: clamp(1rem, 6.2451209992vw, 8rem);
}
@media (max-width: 768px) {
  #page-wood .contents--box03 .list--box {
    display: block;
  }
}
#page-wood .contents--box03 .list--box .itembox {
  background-color: #EDEDED;
  padding: clamp(2.4rem, 1.6666666667vw, 3.2rem);
}
#page-wood .contents--box03 .list--box .itembox p.txt {
  line-height: 1.6;
  font-size: clamp(1.3rem, 0.78125vw, 1.5rem);
  font-weight: var(--fontnormal);
  width: clamp(27.7rem, 24.375vw, 46.8rem);
}
@media (max-width: 768px) {
  #page-wood .contents--box03 .list--box .itembox p.txt {
    width: 100%;
  }
}
#page-wood .contents--box03 .list--box .itembox .text {
  display: flex;
  align-items: flex-start;
  gap: clamp(1.04rem, 0.8333333333vw, 1.6rem);
}
@media (max-width: 768px) {
  #page-wood .contents--box03 .list--box .itembox .text {
    display: block;
  }
}
#page-wood .contents--box03 .list--box .itembox .text:not(:last-of-type) {
  margin-bottom: 1.6rem;
}
#page-wood .contents--box03 .list--box .itembox .text .titlebox {
  font-size: 1.7rem;
  font-family: var(--titlefont);
  position: relative;
  display: flex;
  align-items: flex-start;
}
#page-wood .contents--box03 .list--box .itembox .text .titlebox:before {
  padding-right: 0.5rem;
}
#page-wood .contents--box03 .list--box .itembox .text .titlebox--point:before {
  content: url(../../dist/images/wood/icon-point.svg);
  vertical-align: sub;
}
#page-wood .contents--box03 .list--box .itembox .text .titlebox--voice:before {
  content: url(../../dist/images/wood/icon-voice.svg);
  vertical-align: sub;
}
#page-wood .contents--box03 .list--box h3.title {
  display: flex;
  align-items: center;
  font-family: var(--titlefont);
  gap: 1.6rem;
  margin-bottom: clamp(1.6rem, 1.25vw, 2.4rem);
}
#page-wood .contents--box03 .list--box h3.title .titles .text {
  font-size: clamp(2.4rem, 2.0833333333vw, 4rem);
}
#page-wood .contents--box03 .list--box h3.title .itemtxt {
  position: relative;
  width: clamp(8rem, 4.8958333333vw, 9.4rem);
  height: clamp(5.329rem, 3.2291666667vw, 6.2rem);
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: clamp(1.6rem, 1.0416666667vw, 2rem);
}
#page-wood .contents--box03 .list--box h3.title .itemtxt b {
  transform: translateY(-0.4rem);
}
#page-wood .contents--box03 .list--box h3.title .itemtxt:before {
  content: "";
  position: absolute;
  background: url(../../dist/images/wood/merit-item.svg) no-repeat center center/contain;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
}
#page-wood .contents--box03 .list--box .subtext {
  font-size: clamp(1.6rem, 1.1458333333vw, 2.2rem);
  line-height: 1.5;
  font-weight: var(--fontbold);
  margin-bottom: clamp(1.6rem, 1.25vw, 2.4rem);
}
#page-wood .contents--box03 .list--box .article-content {
  margin-bottom: clamp(2.4rem, 1.6666666667vw, 3.2rem);
}
#page-wood .contents--box03 .list--box .cap {
  width: calc(100% - clamp(1rem, 6.2451209992vw, 8rem) - clamp(37.5rem, 48.3606557377vw, 61.95rem));
}
@media (max-width: 768px) {
  #page-wood .contents--box03 .list--box .cap {
    margin-bottom: 1.6rem;
    width: auto;
  }
}
#page-wood .contents--box03 .list--box .textbox {
  width: calc(100% - clamp(1rem, 6.2451209992vw, 8rem) - clamp(37.5rem, 39.0320062451vw, 50rem));
}
@media (max-width: 768px) {
  #page-wood .contents--box03 .list--box .textbox {
    width: auto;
  }
}
#page-wood .contents--box03 .list--box:not(:last-child) {
  margin-bottom: clamp(3.2rem, 4.1666666667vw, 8rem);
}
#page-wood .contents--box02 {
  background: url(../../dist/images/common/bgcolor.jpg);
  background-size: 10rem;
  padding: clamp(4.8rem, 7.2916666667vw, 14rem) 0 clamp(5.6rem, 8.3333333333vw, 16rem);
  margin-bottom: clamp(4.89rem, 7.2916666667vw, 14rem);
}
@media (max-width: 768px) {
  #page-wood .contents--box02 {
    padding-inline: 2.4rem;
  }
}
#page-wood .contents--box02 .leadtext {
  text-align: center;
  padding-bottom: clamp(4rem, 5vw, 9.6rem);
}
@media (max-width: 768px) {
  #page-wood .contents--box02 .leadtext {
    text-align: left;
    margin-bottom: 0;
  }
}
#page-wood .contents--box02 .leadtext div {
  display: inline-block;
  position: relative;
}
@media (max-width: 768px) {
  #page-wood .contents--box02 .leadtext div {
    display: block;
  }
}
#page-wood .contents--box02 .leadtext div:before {
  content: "";
  width: clamp(15.1rem, 22.0703125vw, 22.6rem);
  height: clamp(14.1rem, 10.4766633565vw, 21.1rem);
  background: url(../../dist/images/wood/icon-question.svg) no-repeat center center/contain;
  position: absolute;
  right: -7.5rem;
  bottom: -9rem;
  transform: rotate(22deg);
}
@media (max-width: 768px) {
  #page-wood .contents--box02 .leadtext div:before {
    right: 0;
    bottom: -5rem;
  }
}
#page-wood .contents--box02 .leadtext p {
  font-size: clamp(1.4rem, 1.2490241998vw, 1.6rem);
  line-height: 2.2;
  font-weight: var(--fontnormal);
  position: relative;
  z-index: 2;
}
@media (max-width: 768px) {
  #page-wood .contents--box02 .leadtext p {
    line-height: 1.8;
  }
}
#page-wood .contents--box02 .leadtext p .text-fluorescent {
  font-weight: var(--fontbold);
}
#page-wood .contents--box02 .leadtext p:not(:last-of-type) {
  margin-bottom: clamp(2.4rem, 1.6666666667vw, 3.2rem);
}
#page-wood .contents--box02 .faqbox {
  display: flex;
  flex-wrap: wrap;
  justify-content: flex-start;
  align-items: flex-start;
  gap: clamp(2.08rem, 1.6666666667vw, 3.2rem);
}
@media (max-width: 768px) {
  #page-wood .contents--box02 .faqbox {
    display: block;
    margin-inline: initial;
  }
}
#page-wood .contents--box02 .faqbox .morebtn {
  text-align: center;
  margin-top: clamp(2rem, 1.25vw, 2.4rem);
  max-width: clamp(12.2rem, 6.71875vw, 12.9rem);
  margin-left: auto;
  margin-right: auto;
  border: 1px solid #000000;
  display: flex;
  align-items: center;
  justify-content: center;
  cursor: pointer;
  height: 3.3rem;
  border-radius: 1.8rem;
  font-size: clamp(1.1rem, 0.625vw, 1.2rem);
  font-weight: var(--fontnormal);
}
#page-wood .contents--box02 .faqbox .morebtn .item {
  width: 1.2rem;
  height: 1.2rem;
  position: relative;
}
#page-wood .contents--box02 .faqbox .morebtn .item:before, #page-wood .contents--box02 .faqbox .morebtn .item:after {
  content: "";
  background-color: #000000;
  position: absolute;
}
#page-wood .contents--box02 .faqbox .morebtn .item:before {
  top: 0.5rem;
  left: 0;
  width: 100%;
  height: 0.1rem;
}
#page-wood .contents--box02 .faqbox .morebtn .item:after {
  height: 100%;
  width: 0.1rem;
  left: 0.5rem;
}
#page-wood .contents--box02 .faqbox--list {
  background-color: white;
  border: none;
  padding: clamp(2.4rem, 1.6666666667vw, 3.2rem) 2.4rem;
  margin: 0;
  width: 100%;
  flex: 0 0 calc((100% - clamp(2.08rem, 1.6666666667vw, 3.2rem) * 3) / 4);
}
@media (max-width: 1021px) {
  #page-wood .contents--box02 .faqbox--list {
    flex: 0 0 calc((100% - clamp(2.08rem, 1.6666666667vw, 3.2rem) * 2) / 3);
  }
}
#page-wood .contents--box02 .faqbox--list:nth-child(1), #page-wood .contents--box02 .faqbox--list:nth-child(6) {
  transform: rotate(5deg);
}
@media (max-width: 768px) {
  #page-wood .contents--box02 .faqbox--list:nth-child(1), #page-wood .contents--box02 .faqbox--list:nth-child(6) {
    transform: initial;
  }
}
#page-wood .contents--box02 .faqbox--list:nth-child(3), #page-wood .contents--box02 .faqbox--list:nth-child(8) {
  transform: rotate(-5deg);
}
@media (max-width: 768px) {
  #page-wood .contents--box02 .faqbox--list:nth-child(3), #page-wood .contents--box02 .faqbox--list:nth-child(8) {
    transform: initial;
  }
}
@media (max-width: 1021px) {
  #page-wood .contents--box02 .faqbox--list {
    flex: 0 0 calc((100% - clamp(2.08rem, 1.6666666667vw, 3.2rem) * 2) / 3);
  }
}
@media (max-width: 768px) {
  #page-wood .contents--box02 .faqbox--list:not(:last-child) {
    margin-bottom: 1.67rem;
  }
}
#page-wood .contents--box02 .faqbox--text {
  gap: clamp(1rem, 0.625vw, 1.2rem);
}
#page-wood .contents--box02 .faqbox--text p {
  font-size: clamp(1.4rem, 1.2490241998vw, 1.6rem);
}
#page-wood .contents--box02 .faqbox .titlebox {
  align-items: flex-start;
}
#page-wood .contents--box02 .faqbox .textbox p {
  font-size: clamp(1.2rem, 1.3712047013vw, 1.4rem);
}
#page-wood .contents--box01 {
  margin-bottom: clamp(5.6rem, 8.3333333333vw, 16rem);
}
#page-wood .contents--box01 .btn {
  max-width: 48rem;
  margin: auto;
  text-align: center;
}
@media (max-width: 768px) {
  #page-wood .contents--box01 .btn {
    max-width: none;
    margin-inline: 2rem;
  }
}
#page-wood .contents--box01 .btn--box {
  height: 9rem;
  border-radius: 4.5rem;
}
@media (max-width: 768px) {
  #page-wood .contents--box01 .btn--box {
    height: 10.9rem;
    border-radius: 999.9rem;
  }
}
#page-wood .contents--box01 .btn .text {
  font-family: var(--titlefont);
}
#page-wood .contents--box01 .textbox {
  display: flex;
  justify-content: center;
  line-height: 2.2;
  font-weight: var(--fontnormal);
}
@media (max-width: 768px) {
  #page-wood .contents--box01 .textbox {
    line-height: 1.8;
    display: block;
    margin-inline: 2rem;
  }
}
#page-wood .contents--box01 .textbox h3 {
  font-size: clamp(1.8rem, 1.25vw, 2.4rem);
  line-height: 1.8;
  font-weight: var(--fontbold);
  margin-bottom: clamp(1.6rem, 1.6666666667vw, 3.2rem);
}
#page-wood .contents--box01 .textbox p:not(:last-of-type) {
  margin-bottom: clamp(2.4rem, 1.6666666667vw, 3.2rem);
}
#page-wood .contents--box01 .textbox .capbox {
  width: 100%;
}
#page-wood .contents--box01 .textbox--01 {
  flex-direction: row-reverse;
  margin-bottom: clamp(4rem, 5vw, 9.6rem);
}
#page-wood .contents--box01 .textbox--01 .capbox {
  max-width: clamp(32.7rem, 31.25vw, 60rem);
  padding-top: clamp(2.6rem, 2.0833333333vw, 4rem);
  padding-left: clamp(4.095rem, 3.28125vw, 6.3rem);
}
@media (max-width: 768px) {
  #page-wood .contents--box01 .textbox--01 .capbox {
    max-width: none;
    padding: 0;
    margin-bottom: 2.4rem;
  }
}
#page-wood .contents--box01 .textbox--01 .capbox .cap {
  display: block;
  max-width: clamp(26.195rem, 20.9895833333vw, 40.3rem);
}
@media (max-width: 768px) {
  #page-wood .contents--box01 .textbox--01 .capbox .cap {
    max-width: none;
  }
}
#page-wood .contents--box01 .textbox--01 .text {
  max-width: clamp(39rem, 31.25vw, 60rem);
  display: flex;
  justify-content: flex-end;
  padding-right: clamp(2.145rem, 1.71875vw, 3.3rem);
}
@media (max-width: 768px) {
  #page-wood .contents--box01 .textbox--01 .text {
    max-width: none;
    padding-right: 0;
    display: block;
  }
}
#page-wood .contents--box01 .textbox--02 {
  margin-bottom: clamp(4rem, 5vw, 9.6rem);
  position: relative;
}
#page-wood .contents--box01 .textbox--02 .capbox {
  position: absolute;
  top: clamp(-4.16rem, -3.3333333333vw, -6.4rem);
}
@media (max-width: 768px) {
  #page-wood .contents--box01 .textbox--02 .capbox {
    position: initial;
    top: auto;
  }
}
#page-wood .contents--box01 .textbox--02 .capbox--01 {
  max-width: clamp(26.65rem, 21.3541666667vw, 41rem);
  left: 0;
}
@media (max-width: 768px) {
  #page-wood .contents--box01 .textbox--02 .capbox--01 {
    max-width: none;
    left: auto;
    margin-left: calc(50% - 50vw);
    padding-right: 8.4rem;
    margin-bottom: 9.9rem;
  }
}
#page-wood .contents--box01 .textbox--02 .capbox--02 {
  max-width: clamp(14.365rem, 11.5104166667vw, 22.1rem);
  right: 0;
}
@media (max-width: 768px) {
  #page-wood .contents--box01 .textbox--02 .capbox--02 {
    max-width: 12rem;
    position: absolute;
    top: 4.3rem;
  }
}
#page-wood .contents--box01 .textbox--03 {
  flex-direction: row-reverse;
  margin-bottom: clamp(4rem, 5vw, 9.6rem);
}
#page-wood .contents--box01 .textbox--03 .text {
  max-width: clamp(39rem, 31.25vw, 60rem);
  width: 100%;
  display: flex;
  justify-content: flex-end;
  transform: translateX(clamp(2.015rem, 1.6145833333vw, 3.1rem));
}
@media (max-width: 768px) {
  #page-wood .contents--box01 .textbox--03 .text {
    max-width: none;
    transform: translateX(0);
    width: auto;
    display: block;
  }
}
#page-wood .contents--box01 .textbox--03 .capbox {
  max-width: clamp(39rem, 31.25vw, 60rem);
  display: flex;
  justify-content: flex-end;
  transform: translateX(clamp(11.245rem, 9.0104166667vw, 17.3rem));
}
@media (max-width: 768px) {
  #page-wood .contents--box01 .textbox--03 .capbox {
    max-width: none;
    transform: translateX(0);
    margin-bottom: 4rem;
  }
}
#page-wood .contents--box01 .textbox--03 .capbox .cap {
  display: block;
  max-width: clamp(26rem, 20.8333333333vw, 40rem);
}
@media (max-width: 768px) {
  #page-wood .contents--box01 .textbox--03 .capbox .cap {
    max-width: none;
  }
}
#page-wood .comparison {
  margin-bottom: clamp(4rem, 4.1666666667vw, 8rem);
}
#page-wood .comparison h3 {
  margin-bottom: clamp(1.6rem, 1.25vw, 2.4rem);
}
#page-wood .comparison h3 .text {
  font-family: var(--titlefont);
  font-size: clamp(2rem, 1.5625vw, 3rem);
}
#page-wood .comparison .box {
  background-color: white;
  border: #EDEDED clamp(1.6rem, 1.25vw, 2.4rem) solid;
  display: flex;
  justify-content: center;
  align-items: flex-start;
  gap: clamp(2.6rem, 2.0833333333vw, 4rem);
  padding: clamp(2.4rem, 2.0833333333vw, 4rem) clamp(3.2rem, 3.9583333333vw, 7.6rem) clamp(2.4rem, 3.6458333333vw, 7rem);
}
@media (max-width: 768px) {
  #page-wood .comparison .box {
    display: block;
  }
}
#page-wood .comparison .box .caps {
  width: 50%;
  text-align: center;
}
@media (max-width: 768px) {
  #page-wood .comparison .box .caps {
    width: auto;
  }
  #page-wood .comparison .box .caps:not(:last-of-type) {
    margin-bottom: 2.4rem;
  }
}
#page-wood .comparison .box .caps h4 {
  font-size: clamp(1.8rem, 1.25vw, 2.4rem);
  margin-bottom: clamp(1rem, 0.8333333333vw, 1.6rem);
  font-weight: var(--fontbold);
}

.mokuji {
  background-color: #F4EDE6;
  position: relative;
  padding: clamp(2.4rem, 2.5vw, 4.8rem) clamp(2.4rem, 5vw, 9.6rem) clamp(4rem, 3.3333333333vw, 6.4rem);
}
.mokuji:before {
  content: "";
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  background: url(../../dist/images/wood/bg-mokuji.png);
  background-size: contain;
}
.mokuji:after {
  content: "";
  width: clamp(0.8rem, 1.0773751224vw, 1.1rem);
  height: clamp(0.8rem, 1.0773751224vw, 1.1rem);
  position: absolute;
  background: url(../../dist/images/common/mokuji-item.svg) no-repeat center center/contain;
  left: clamp(1.3rem, 1.958863859vw, 2rem);
  top: clamp(1.3rem, 1.958863859vw, 2rem);
}
.mokuji .box:after {
  content: "";
  width: clamp(0.8rem, 1.0773751224vw, 1.1rem);
  height: clamp(0.8rem, 1.0773751224vw, 1.1rem);
  position: absolute;
  background: url(../../dist/images/common/mokuji-item.svg) no-repeat center center/contain;
  left: clamp(1.3rem, 1.958863859vw, 2rem);
  bottom: clamp(1.3rem, 1.958863859vw, 2rem);
}
.mokuji .box:before {
  content: "";
  width: clamp(0.8rem, 1.0773751224vw, 1.1rem);
  height: clamp(0.8rem, 1.0773751224vw, 1.1rem);
  position: absolute;
  background: url(../../dist/images/common/mokuji-item.svg) no-repeat center center/contain;
  right: clamp(1.3rem, 1.958863859vw, 2rem);
  top: clamp(1.3rem, 1.958863859vw, 2rem);
}
.mokuji .box .fukidashitext {
  margin-bottom: clamp(0.8rem, 0.6245120999vw, 1.6rem);
}
.mokuji .box .fukidashitext .text {
  font-size: clamp(1.4rem, 1.5612802498vw, 2rem);
  font-family: var(--titlefont);
}
.mokuji--title {
  text-align: center;
  margin-bottom: clamp(1.6rem, 2.0833333333vw, 4rem);
  position: relative;
  z-index: 2;
}
.mokuji--title .txt {
  font-size: clamp(2rem, 2.6541764247vw, 3.4rem);
  font-family: var(--titlefont);
}
.mokuji ol.list {
  counter-reset: list-counter;
  list-style: none;
}
.mokuji ol.list:before {
  content: "";
  width: clamp(0.8rem, 1.0773751224vw, 1.1rem);
  height: clamp(0.8rem, 1.0773751224vw, 1.1rem);
  position: absolute;
  background: url(../../dist/images/common/mokuji-item.svg) no-repeat center center/contain;
  right: clamp(1.3rem, 1.958863859vw, 2rem);
  bottom: clamp(1.3rem, 1.958863859vw, 2rem);
}
.mokuji ol.list li {
  position: relative;
  z-index: 2;
  padding-left: clamp(1rem, 3.1225604996vw, 4rem);
  padding-right: clamp(0.5rem, 1.1709601874vw, 1.5rem);
  line-height: 1.8;
  counter-increment: list-counter;
  padding-bottom: clamp(1rem, 1.2490241998vw, 1.6rem);
  border-bottom: 1px dashed #000000;
  display: flex;
  align-items: center;
  justify-content: flex-start;
  gap: 1rem;
}
@media (max-width: 768px) {
  .mokuji ol.list li {
    align-items: flex-start;
  }
}
.mokuji ol.list li .arrow {
  transform: rotate(90deg);
}
@media (max-width: 768px) {
  .mokuji ol.list li .arrow {
    margin-top: 0.5rem;
  }
}
.mokuji ol.list li .txt {
  width: calc(100% - 1rem);
  font-size: clamp(1.2rem, 1.5670910872vw, 1.6rem);
  font-weight: var(--fontnormal);
}
.mokuji ol.list li:not(:last-child) {
  margin-bottom: clamp(1rem, 1.2490241998vw, 1.6rem);
}
.mokuji ol.list li::before {
  content: counter(list-counter) ".";
  font-weight: var(--fontbold);
}

/* ======================================
page-homebuilding
====================================== */
#page-homebuilding .fixeditem {
  position: fixed;
  width: clamp(17.9rem, 20.763956905vw, 21.2rem);
  left: clamp(10.4rem, 8.3333333333vw, 16rem);
  bottom: 1rem;
  z-index: 888;
}
#page-homebuilding .fixeditem--btn {
  position: absolute;
  right: 0;
  top: 0;
  cursor: pointer;
  width: clamp(2rem, 2.9382957884vw, 3rem);
}
#page-homebuilding .fixeditem {
  opacity: 1;
  transition: opacity 0.4s ease;
}
#page-homebuilding .fixeditem.is-hide {
  opacity: 0;
  pointer-events: none;
}
@media (max-width: 768px) {
  #page-homebuilding .fixeditem {
    left: 2.39rem;
    bottom: 1.27rem;
    top: auto;
  }
}
#page-homebuilding .pageheader--homebuilding .title {
  height: clamp(50rem, 41.6666666667vw, 80rem);
}
#page-homebuilding .concept {
  margin-bottom: clamp(5.6rem, 8.3333333333vw, 16rem);
}
#page-homebuilding .concept .box {
  line-height: 2.2;
  display: flex;
}
@media (max-width: 768px) {
  #page-homebuilding .concept .box {
    display: block;
  }
}
#page-homebuilding .concept .box .textbox {
  width: 100%;
  font-weight: var(--fontnormal);
}
@media (max-width: 768px) {
  #page-homebuilding .concept .box .textbox {
    width: auto;
  }
}
#page-homebuilding .concept .box .textbox p:not(:last-of-type) {
  margin-bottom: clamp(2.4rem, 1.6666666667vw, 3.2rem);
}
#page-homebuilding .concept .box .text-fluorescent {
  font-weight: var(--fontbold);
}
#page-homebuilding .concept .box--box01 {
  overflow: visible;
  flex-direction: row-reverse;
  margin-bottom: clamp(5.6rem, 7.2916666667vw, 14rem);
  gap: clamp(5.2rem, 4.1666666667vw, 8rem);
}
#page-homebuilding .concept .box--box01 .textbox {
  max-width: clamp(32.7rem, 53.0835284934vw, 68rem);
  flex-shrink: 0;
}
@media (max-width: 768px) {
  #page-homebuilding .concept .box--box01 .textbox {
    max-width: none;
    margin-inline: 2.4rem;
  }
}
#page-homebuilding .concept .box--box01 .cap {
  position: relative;
  margin-right: calc(50% - 50vw);
  flex: 1;
}
@media (max-width: 768px) {
  #page-homebuilding .concept .box--box01 .cap {
    margin-right: 0;
    padding-left: 2.4rem;
    margin-bottom: 2.4rem;
  }
}
#page-homebuilding .concept .box--box01 .titles {
  margin-bottom: clamp(1.56rem, 1.25vw, 2.4rem);
}
#page-homebuilding .concept .box--box01 .titles .text {
  font-family: var(--titlefont);
  font-size: clamp(2.8rem, 2.34375vw, 4.5rem);
  line-height: 1.5;
}
#page-homebuilding .concept .box--box02 {
  gap: clamp(5.2rem, 4.1666666667vw, 8rem);
  margin-bottom: clamp(5.6rem, 7.2916666667vw, 14rem);
  align-items: center;
}
#page-homebuilding .concept .box--box02 .textbox {
  max-width: clamp(32.7rem, 44.9648711944vw, 57.6rem);
}
@media (max-width: 768px) {
  #page-homebuilding .concept .box--box02 .textbox {
    max-width: none;
    margin-inline: 2.4rem;
  }
}
#page-homebuilding .concept .box--box02 .cap {
  max-width: 50rem;
  position: relative;
}
@media (max-width: 768px) {
  #page-homebuilding .concept .box--box02 .cap {
    max-width: none;
    padding-left: 5rem;
    margin-bottom: 7.3rem;
  }
}
#page-homebuilding .concept .box--box02 .cap:after {
  content: "";
  position: absolute;
  width: clamp(13rem, 11.4583333333vw, 22rem);
  height: clamp(16.3rem, 14.3229166667vw, 27.5rem);
  left: clamp(-9.1rem, -7.2916666667vw, -14rem);
  bottom: clamp(-5.2rem, -4.1666666667vw, -8rem);
  background: url(../../dist/images/homebuilding/concept-ca03.jpg) no-repeat center center/contain;
  opacity: 0;
  transform: translateY(5rem);
  transition: opacity 3.2s ease-out, transform 4.6s ease-out;
}
@media (max-width: 768px) {
  #page-homebuilding .concept .box--box02 .cap:after {
    left: 0;
    bottom: -4rem;
  }
}
#page-homebuilding .concept .box--box02 .cap.fade.active:after {
  opacity: 1;
  transform: translateY(0);
}
#page-homebuilding .concept .box--box03 {
  flex-direction: row-reverse;
  justify-content: flex-end;
  gap: clamp(5.2rem, 4.1666666667vw, 8rem);
}
#page-homebuilding .concept .box--box03 .textbox {
  max-width: clamp(32.7rem, 37.4707259953vw, 48rem);
}
@media (max-width: 768px) {
  #page-homebuilding .concept .box--box03 .textbox {
    max-width: none;
    margin-inline: 2.4rem;
  }
}
#page-homebuilding .concept .box--box03 .cap {
  width: 100%;
  max-width: 60rem;
}
@media (max-width: 768px) {
  #page-homebuilding .concept .box--box03 .cap {
    max-width: none;
    margin-bottom: 3.2rem;
  }
}
@media (max-width: 768px) {
  #page-homebuilding .bottomcontents {
    padding-inline: 2.4rem;
  }
  #page-homebuilding .bottomcontents .boxlist {
    gap: inherit;
  }
}
#page-homebuilding .bottomcontents--title {
  text-align: center;
  margin-bottom: clamp(1.6rem, 2.0833333333vw, 4rem);
}
#page-homebuilding .bottomcontents--title .txt {
  font-size: clamp(2rem, 1.7708333333vw, 3.4rem);
  font-family: var(--titlefont);
  line-height: 1;
}
#page-homebuilding .bottomcontents--title .itemtext {
  margin-bottom: 1.6rem;
}
#page-homebuilding .bottomcontents .listbox {
  font-size: clamp(1.4rem, 1.1709601874vw, 1.5rem);
  line-height: 1.6;
  font-weight: var(--fontnormal);
  display: flex;
  flex-direction: column;
  position: relative;
}
@media (max-width: 768px) {
  #page-homebuilding .bottomcontents .listbox {
    display: block;
  }
  #page-homebuilding .bottomcontents .listbox:not(:last-of-type) {
    margin-bottom: 4rem;
  }
}
#page-homebuilding .bottomcontents .listbox .titlebox {
  margin-bottom: 2.4rem;
}
@media (max-width: 768px) {
  #page-homebuilding .bottomcontents .listbox .titlebox {
    margin-bottom: 4.1rem;
  }
}
#page-homebuilding .bottomcontents .listbox .textbox {
  margin-top: auto;
}
#page-homebuilding .bottomcontents .listbox h3 {
  font-size: clamp(1.6rem, 1.0416666667vw, 2rem);
  line-height: 1.5;
  border-left: 0.5rem solid #000000;
  padding-left: clamp(1.1rem, 1.0416666667vw, 2rem);
  margin-bottom: clamp(1.6rem, 1.25vw, 2.4rem);
  font-weight: var(--fontbold);
}
#page-homebuilding .bottomcontents .listbox .cap {
  position: relative;
  margin-bottom: 1.6rem;
}
#page-homebuilding .bottomcontents .listbox .cap:after {
  content: "";
  position: absolute;
  left: -2.6rem;
  top: 0.3rem;
  width: clamp(5rem, 4.0625vw, 7.8rem);
  height: clamp(3.541rem, 2.8645833333vw, 5.5rem);
  background: url(../../dist/images/homebuilding/icon-case.png) no-repeat center center/contain;
}
@media (max-width: 768px) {
  #page-homebuilding .bottomcontents .listbox .cap:after {
    left: 1.14rem;
    top: -1.7rem;
  }
}
#page-homebuilding .features {
  background: url(../../dist/images/common/bgcolor-glay.jpg);
  background-size: 10rem;
  padding: clamp(4.8rem, 6.25vw, 12rem) 0 clamp(5.64rem, 8.3333333333vw, 16rem);
  margin-bottom: clamp(4.8rem, 7.2916666667vw, 14rem);
}
#page-homebuilding .features--title {
  text-align: center;
  line-height: 2.2;
  margin-bottom: clamp(7.4rem, 4.1666666667vw, 8rem);
}
#page-homebuilding .features--title .title .en_txt {
  font-family: var(--titlefont);
  display: block;
  color: #DBDBDB;
  font-size: clamp(6.4rem, 7.2916666667vw, 14rem);
  line-height: 1;
  letter-spacing: 0.01em;
}
#page-homebuilding .features--title .title .text {
  font-size: clamp(2.8rem, 2.34375vw, 4.5rem);
  line-height: 1;
  font-family: var(--titlefont);
  transform: translateY(-3.5rem);
  display: block;
}
@media (max-width: 768px) {
  #page-homebuilding .features--title .leadtext {
    margin-inline: 2.4rem;
    text-align: left;
  }
}
#page-homebuilding .features--title .leadtext p {
  font-weight: var(--fontnormal);
}
@media (max-width: 768px) {
  #page-homebuilding .features--title .leadtext p {
    line-height: 1.8;
  }
}
#page-homebuilding .features--title .leadtext p:not(:last-of-type) {
  margin-bottom: clamp(2.4rem, 1.6666666667vw, 3.2rem);
}
#page-homebuilding .features .textnumber {
  position: absolute;
  z-index: 2;
}
#page-homebuilding .features .textnumber b {
  font-family: var(--titlefont);
  display: block;
  position: relative;
}
#page-homebuilding .features .textnumber b:before {
  content: "#";
  font-family: var(--titlefont);
  position: absolute;
  left: -2rem;
  top: 0;
}
#page-homebuilding .features--navbox {
  display: flex;
  width: 100%;
  margin-bottom: clamp(7.5rem, 7.2916666667vw, 14rem);
}
@media (max-width: 768px) {
  #page-homebuilding .features--navbox {
    display: block;
  }
}
#page-homebuilding .features--navbox .list {
  width: 33.3333333333%;
  position: relative;
}
@media (max-width: 768px) {
  #page-homebuilding .features--navbox .list {
    width: auto;
  }
  #page-homebuilding .features--navbox .list:not(:last-child) {
    margin-bottom: 7.5rem;
  }
}
#page-homebuilding .features--navbox .list:hover .cap img {
  transform: scale(1.2);
}
#page-homebuilding .features--navbox .list:hover .arrow {
  bottom: -2.3rem;
}
#page-homebuilding .features--navbox .list .textnumber {
  top: clamp(2rem, 1.6666666667vw, 3.2rem);
  left: clamp(3.5rem, 2.7083333333vw, 5.2rem);
}
#page-homebuilding .features--navbox .list .textnumber b {
  font-size: clamp(3.5rem, 2.34375vw, 4.5rem);
  color: white;
}
#page-homebuilding .features--navbox .list .textnumber b:before {
  content: "#";
  font-family: var(--titlefont);
  font-size: clamp(2rem, 1.5625vw, 3rem);
  color: white;
  left: -1.6rem;
  top: -0.7rem;
}
#page-homebuilding .features--navbox .list .titlebox {
  position: absolute;
  z-index: 2;
  top: clamp(-3rem, -5vw + 10px, 5.6rem);
  left: 50%;
  transform: translateX(-50%);
  color: white;
  display: flex;
  align-items: flex-start;
  flex-direction: row-reverse;
  gap: clamp(0.8rem, 0.5208333333vw, 1rem);
}
@media (max-width: 768px) {
  #page-homebuilding .features--navbox .list .titlebox {
    top: -3rem;
  }
}
#page-homebuilding .features--navbox .list .titlebox .title {
  writing-mode: vertical-rl;
  -webkit-writing-mode: vertical-rl;
  text-orientation: upright;
  display: inline-block;
}
#page-homebuilding .features--navbox .list .titlebox .text {
  font-weight: var(--fontbold);
  font-size: clamp(1.8rem, 1.8735362998vw, 2.4rem);
  background-color: white;
  color: #000000;
  padding: 1rem;
  display: block;
  letter-spacing: 0.2em;
}
#page-homebuilding .features--navbox .cap {
  position: relative;
  overflow: hidden;
}
#page-homebuilding .features--navbox .cap img {
  transition: 0.5s all ease-in;
}
#page-homebuilding .features--navbox .cap:before {
  content: "";
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  background: rgba(0, 0, 0, 0.25);
  z-index: 2;
}
#page-homebuilding .features--navbox .textbox {
  background-color: white;
  margin-inline: clamp(2.4rem, 2.9166666667vw, 5.6rem);
  margin-top: clamp(-1.5rem, -4.3715846995vw, -5.6rem);
  position: relative;
  z-index: 2;
  padding: clamp(2.4rem, 1.6666666667vw, 3.2rem) clamp(2.4rem, 2.0833333333vw, 4rem) clamp(2.4rem, 2.0833333333vw, 4rem);
  line-height: 1.6;
  font-weight: var(--fontnormal);
  font-size: clamp(1.2rem, 1.1709601874vw, 1.5rem);
}
@media (max-width: 768px) {
  #page-homebuilding .features--navbox .textbox {
    margin-top: -5.4rem;
  }
}
#page-homebuilding .features--navbox .textbox .lead {
  margin-bottom: clamp(0.8rem, 0.8333333333vw, 1.6rem);
  font-size: clamp(1.4rem, 1.4051522248vw, 1.8rem);
  font-weight: var(--fontbold);
}
#page-homebuilding .features--navbox .textbox .arrow {
  transform: rotate(90deg);
  position: absolute;
  left: 50%;
  transform: translateX(-50%);
  bottom: clamp(-0.845rem, -0.6770833333vw, -1.3rem);
  transition: 0.5s all ease;
}
#page-homebuilding .features--navbox .textbox .arrow svg {
  transform: rotate(90deg);
}
#page-homebuilding .contentsbox {
  display: flex;
  align-items: flex-start;
  gap: 8rem;
  position: relative;
}
@media (max-width: 768px) {
  #page-homebuilding .contentsbox {
    display: block;
    padding-inline: 2.4rem;
  }
}
#page-homebuilding .contentsbox:not(:last-of-type) {
  margin-bottom: clamp(5.6rem, 7.2916666667vw, 14rem);
}
#page-homebuilding .contentsbox .text-fluorescent {
  font-weight: var(--fontbold);
}
#page-homebuilding .contentsbox .textbox {
  line-height: 2;
  font-size: clamp(1.4rem, 1.2490241998vw, 1.6rem);
  width: clamp(32.7rem, 49.9609679938vw, 64rem);
  font-weight: var(--fontnormal);
  position: relative;
  z-index: 2;
}
@media (max-width: 768px) {
  #page-homebuilding .contentsbox .textbox {
    width: auto;
    line-height: 1.8;
    position: initial;
  }
}
#page-homebuilding .contentsbox .textbox h3.titles {
  margin-bottom: clamp(2.4rem, 1.7708333333vw, 3.4rem);
  position: relative;
}
@media (max-width: 768px) {
  #page-homebuilding .contentsbox .textbox h3.titles {
    position: initial;
    text-align: center;
  }
}
#page-homebuilding .contentsbox .textbox h3.titles .text {
  font-family: var(--titlefont);
  font-size: clamp(2.4rem, 2.0833333333vw, 4rem);
  line-height: 1.5;
  position: relative;
  z-index: 2;
}
@media (max-width: 768px) {
  #page-homebuilding .contentsbox .textbox h3.titles .text {
    position: initial;
  }
}
#page-homebuilding .contentsbox .textbox h3.titles .text .txt {
  position: relative;
  z-index: 3;
}
#page-homebuilding .contentsbox .textbox p:not(:last-of-type) {
  margin-bottom: 2.4rem;
}
#page-homebuilding .contentsbox .cap {
  width: clamp(32.7rem, 25vw, 48rem);
  position: relative;
}
@media (max-width: 768px) {
  #page-homebuilding .contentsbox .cap {
    width: auto;
    margin-bottom: 2.4rem;
  }
}
#page-homebuilding .contentsbox .btn {
  width: 100%;
  max-width: 32rem;
  margin-left: auto;
  margin-right: auto;
  padding-top: clamp(3.2rem, 2.9166666667vw, 5.6rem);
}
#page-homebuilding .contentsbox .btn .mintext {
  text-align: center;
  font-size: 1.2rem;
  margin-bottom: 1.6rem;
}
#page-homebuilding .contentsbox .textnumber {
  top: clamp(-4.095rem, -3.28125vw, -6.3rem);
  z-index: 1;
}
@media (max-width: 768px) {
  #page-homebuilding .contentsbox .textnumber {
    top: -3rem;
    transform: translateX(-50%);
    left: 50%;
  }
}
#page-homebuilding .contentsbox .textnumber b {
  color: #D0D0D0;
  font-size: clamp(4rem, 4.1666666667vw, 8rem);
  line-height: 1;
  position: relative;
  z-index: 1;
}
@media (max-width: 768px) {
  #page-homebuilding .contentsbox .textnumber b {
    color: #000000;
  }
}
#page-homebuilding .contentsbox .textnumber b:before {
  color: #D0D0D0;
  font-size: clamp(2.5rem, 2.0833333333vw, 4rem);
}
@media (max-width: 768px) {
  #page-homebuilding .contentsbox .textnumber b:before {
    color: #000000;
    position: absolute;
    left: -1.7rem;
    top: 0;
  }
}
#page-homebuilding .contentsbox--01 {
  flex-direction: row-reverse;
}
#page-homebuilding .contentsbox--01 .textnumber {
  left: -6.6rem;
}
@media (max-width: 768px) {
  #page-homebuilding .contentsbox--01 .textnumber {
    left: 50%;
  }
}
#page-homebuilding .contentsbox--01 .cap:after {
  content: "";
  position: absolute;
  width: clamp(8rem, 9.375vw, 18rem);
  height: clamp(6.1rem, 7.1875vw, 13.8rem);
  right: clamp(-4.355rem, -3.4895833333vw, -6.7rem);
  bottom: clamp(-3.835rem, -3.0729166667vw, -5.9rem);
  background: url(../../dist/images/homebuilding/features-cap01-item.png) no-repeat center center/contain;
}
@media (max-width: 768px) {
  #page-homebuilding .contentsbox--01 .cap:after {
    right: 3.9rem;
    bottom: -1.35rem;
  }
}

/* ======================================
  page-recruit
====================================== */
#page-recruit .topcontents {
  display: flex;
  margin-bottom: clamp(5.6rem, 7.8125vw, 15rem);
}
@media (max-width: 768px) {
  #page-recruit .topcontents {
    display: block;
  }
}
#page-recruit .topcontents .capbox {
  width: 50%;
  position: relative;
}
@media (max-width: 768px) {
  #page-recruit .topcontents .capbox {
    width: auto;
    margin-bottom: 19rem;
  }
}
#page-recruit .topcontents .capbox .cap--01 {
  padding-right: clamp(5.5rem, 5.7291666667vw, 11rem);
}
#page-recruit .topcontents .capbox .cap--01 img {
  aspect-ratio: 690/800;
}
@media (max-width: 768px) {
  #page-recruit .topcontents .capbox .cap--01 img {
    aspect-ratio: 320/280;
    object-fit: cover;
  }
}
#page-recruit .topcontents .capbox .cap--02 {
  width: clamp(17rem, 18.2291666667vw, 35rem);
  position: absolute;
  left: clamp(7.085rem, 5.6770833333vw, 10.9rem);
  top: clamp(47.84rem, 38.3333333333vw, 73.6rem);
}
@media (max-width: 768px) {
  #page-recruit .topcontents .capbox .cap--02 {
    left: auto;
    right: 0;
    top: 24.1rem;
  }
}
#page-recruit .topcontents .capbox .cap--03 {
  width: clamp(8.8rem, 12.5vw, 24rem);
  position: absolute;
  top: clamp(70.2rem, 56.25vw, 108rem);
  right: clamp(12.22rem, 9.7916666667vw, 18.8rem);
}
@media (max-width: 768px) {
  #page-recruit .topcontents .capbox .cap--03 {
    right: 0;
    left: 8.8rem;
    top: calc(28rem + 2.4rem);
  }
}
#page-recruit .topcontents .capbox .cap--03 img {
  aspect-ratio: 240/300;
}
@media (max-width: 768px) {
  #page-recruit .topcontents .capbox .cap--03 img {
    aspect-ratio: 100/125;
    object-fit: cover;
  }
}
#page-recruit .topcontents .textbox {
  width: 50%;
  padding-inline: clamp(3.25rem, 2.6041666667vw, 5rem) clamp(13rem, 10.4166666667vw, 20rem);
  font-size: clamp(1.4rem, 1.2490241998vw, 1.6rem);
  line-height: 2.2;
  font-weight: var(--fontnormal);
}
@media (max-width: 768px) {
  #page-recruit .topcontents .textbox {
    width: auto;
    padding-inline: 2.4rem;
    line-height: 1.8;
  }
}
#page-recruit .topcontents .textbox--contents .btn {
  max-width: 32rem;
  padding-top: clamp(4rem, 2.9166666667vw, 5.6rem);
}
@media (max-width: 768px) {
  #page-recruit .topcontents .textbox--contents .btn {
    max-width: none;
  }
}
#page-recruit .topcontents .textbox--contents .text-fluorescent {
  font-weight: var(--fontbold);
}
#page-recruit .topcontents .textbox--contents h3 {
  font-size: clamp(1.8rem, 1.25vw, 2.4rem);
  font-weight: var(--fontbold);
  margin-bottom: clamp(1.6rem, 1.6666666667vw, 3.2rem);
  line-height: 1.5;
}
#page-recruit .topcontents .textbox--contents p:not(:last-of-type) {
  margin-bottom: clamp(2.4rem, 1.6666666667vw, 3.2rem);
}
#page-recruit .topcontents .textbox--contents:not(:last-of-type) {
  margin-bottom: clamp(4rem, 4.1666666667vw, 8rem);
}
#page-recruit .topcontents .textbox h2.titles {
  margin-bottom: clamp(2.4rem, 1.6666666667vw, 3.2rem);
}
#page-recruit .topcontents .textbox h2.titles .text {
  font-family: var(--titlefont);
  font-size: clamp(3rem, 2.8125vw, 5.4rem);
  line-height: 1.5;
}
#page-recruit .topcontents .textbox .menu {
  margin-bottom: clamp(3.2rem, 2.9166666667vw, 5.6rem);
}
@media (max-width: 768px) {
  #page-recruit .topcontents .textbox .menu {
    justify-content: center;
  }
}
#page-recruit .topcontents .textbox .menu .arrow {
  transform: rotate(90deg);
}
#page-recruit .recruitment {
  padding-inline: clamp(0rem, 10.4166666667vw, 20rem);
}
@media (max-width: 768px) {
  #page-recruit .recruitment {
    padding-inline: 2.4rem;
  }
}
#page-recruit .recruitment--title {
  text-align: center;
  font-family: var(--tusunagifont);
  font-size: clamp(2.4rem, 2.0833333333vw, 4rem);
  margin-bottom: clamp(3.2rem, 3.3333333333vw, 6.4rem);
}
#page-recruit .recruitment--contents {
  display: flex;
  flex-wrap: wrap;
  background: url(../images/common/line.png) repeat-x left top/clamp(9.945rem, 7.96875vw, 15.3rem);
}
@media (max-width: 768px) {
  #page-recruit .recruitment--contents {
    display: block;
  }
}
#page-recruit .recruitment--contents--itembox {
  background: none;
}
#page-recruit .recruitment--contents--itembox li.recruitment--list {
  background: url(../images/common/line.png) repeat-x left top/clamp(9.945rem, 7.96875vw, 15.3rem), url(../images/common/line.png) repeat-x left bottom/clamp(9.945rem, 7.96875vw, 15.3rem);
}
#page-recruit .recruitment--list {
  width: 50%;
  position: relative;
  padding-top: clamp(2.4rem, 2.0833333333vw, 4rem);
  padding-bottom: clamp(2.4rem, 2.0833333333vw, 4rem);
  padding-inline: clamp(2.6rem, 2.0833333333vw, 4rem);
  display: grid;
  grid-template-columns: 1fr auto;
  column-gap: clamp(1.6rem, 1.6666666667vw, 3.2rem);
  align-items: start;
  background: url(../images/common/line.png) repeat-x left bottom/clamp(9.945rem, 7.96875vw, 15.3rem);
}
@media (max-width: 768px) {
  #page-recruit .recruitment--list {
    width: auto;
    padding-inline: initial;
  }
  #page-recruit .recruitment--list .recruitment-data {
    margin-left: calc(-7rem + -1.6rem);
  }
}
#page-recruit .recruitment--list:nth-child(odd):after {
  content: "";
  position: absolute;
  top: 0;
  width: 0.4rem;
  height: 100%;
  background: url(../../dist/images/common/lineleft.png) repeat-y left top/cover;
  right: 0;
}
@media (max-width: 768px) {
  #page-recruit .recruitment--list:nth-child(odd):after {
    content: none;
  }
}
#page-recruit .recruitment--list .titles {
  display: flex;
  justify-content: space-between;
  align-items: center;
  margin-bottom: 1.6rem;
}
#page-recruit .recruitment--list .titles .text {
  font-size: clamp(1.8rem, 1.25vw, 2.4rem);
}
#page-recruit .recruitment--list .lead {
  font-size: clamp(1.2rem, 1.3712047013vw, 1.4rem);
  font-weight: var(--fontnormal);
  line-height: 1.6;
  margin-bottom: 1.6rem;
}
#page-recruit .recruitment--list .cap {
  width: clamp(7rem, 7.2916666667vw, 14rem);
}
#page-recruit .recruitment--list .cap img {
  aspect-ratio: 1;
}

/* ======================================
  .recruitment-data
====================================== */
.recruitment-data {
  width: 100%;
  display: flex;
  flex-wrap: wrap;
  gap: 0.5rem;
}
.recruitment-data li {
  display: inline-block;
  font-size: clamp(1rem, 0.8587041374vw, 1.1rem);
  line-height: 1;
  padding: clamp(0.5rem, 0.3125vw, 0.6rem) clamp(0.8rem, 0.5208333333vw, 1rem);
  border: 1px solid #000000;
  font-weight: var(--fontnormal);
}

/* ======================================
  pagenavibox
====================================== */
.pagenavi {
  position: relative;
}
.pagenavi--box {
  position: absolute;
  z-index: 100;
  top: 0;
  left: clamp(16px, 8.33vw, 160px);
  transition: transform 0.3s ease, box-shadow 0.3s ease;
}
.pagenavi--box li {
  font-size: 1.4rem;
  line-height: 1.5;
  font-weight: var(--fontnormal);
  position: relative;
  gap: 0.8rem;
  display: flex;
  align-items: center;
}
.pagenavi--box li:before {
  content: "";
  width: 0.8rem;
  height: 0.8rem;
  border-radius: 999.9rem;
  background-color: #D0D0D0;
  display: block;
}
.pagenavi--box li.is-active:before {
  background-color: #000000;
}
.pagenavi--box li:not(:last-child) {
  margin-bottom: 1.6rem;
}
.pagenavi--box.is-fixed {
  position: fixed;
}

@media (max-width: 768px) {
  .sppagenavi {
    margin-inline: 2.4rem;
    margin-bottom: 4.8rem;
    display: flex;
    flex-wrap: wrap;
    gap: 0.8rem 0.5rem;
  }
  .sppagenavi li a {
    border: 1px solid black;
    border-radius: 999.9rem;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 1.1rem;
    padding: 0.6rem 1.1rem;
    font-weight: var(--fontnormal);
  }
}

/* ======================================
  page-about
====================================== */
#page-about .looptext {
  font-family: var(--titlefont);
  font-size: clamp(6rem, 8.3333333333vw, 16rem);
  color: #EDEDED;
  margin-bottom: clamp(3.2rem, 7.2916666667vw, 14rem);
  display: flex;
  overflow: hidden;
  white-space: nowrap;
}
#page-about .looptext .text {
  display: inline-block;
  padding-right: 1em;
  animation: loopText 50s linear infinite;
}
@keyframes loopText {
  0% {
    transform: translateX(0);
  }
  100% {
    transform: translateX(-100%);
  }
}
#page-about .scroll-container {
  margin-bottom: clamp(0rem, 8.3333333333vw, 16rem);
}
#page-about .headbox {
  font-size: clamp(1.4rem, 0.9375vw, 1.8rem);
  line-height: 2.2;
  margin-bottom: clamp(4rem, 6.25vw, 12rem);
}
@media (max-width: 768px) {
  #page-about .headbox {
    padding-inline: 2.4rem;
  }
}
#page-about .headbox h2 {
  font-family: var(--titlefont);
  font-size: clamp(2.8rem, 2.8125vw, 5.4rem);
  margin-bottom: clamp(2.4rem, 2.0833333333vw, 4rem);
  line-height: 1;
  text-align: center;
}
#page-about .headbox p {
  text-align: center;
  font-weight: var(--fontnormal);
}
@media (max-width: 768px) {
  #page-about .headbox p {
    text-align: left;
  }
}
#page-about .headbox p:not(:last-of-type) {
  margin-bottom: clamp(2.4rem, 1.6666666667vw, 3.2rem);
}
#page-about .contents {
  font-size: clamp(1.4rem, 1.2490241998vw, 1.6rem);
  line-height: 2.2;
  font-weight: var(--fontnormal);
}
#page-about .contents p {
  font-weight: var(--fontnormal);
}
#page-about .contents p:not(:last-of-type) {
  margin-bottom: clamp(2.4rem, 1.6666666667vw, 3.2rem);
}
#page-about .contents .subtext {
  font-size: clamp(1.8rem, 1.25vw, 2.4rem);
  line-height: 1.4583333333;
  font-weight: var(--fontbold);
  margin-bottom: clamp(1.6rem, 1.25vw, 2.4rem);
}
#page-about .contents h3 {
  font-size: clamp(2.8rem, 2.8125vw, 5.4rem);
  font-family: var(--titlefont);
  line-height: 1;
  margin-bottom: clamp(2.4rem, 1.6666666667vw, 3.2rem);
}
#page-about .contents h3 .text {
  line-height: 1.5;
}
#page-about .contents .box {
  margin-bottom: clamp(5.6rem, 7.2916666667vw, 14rem);
}
#page-about .contents .box--02 {
  display: flex;
  align-items: flex-start;
  gap: clamp(7.8rem, 6.25vw, 12rem);
}
@media (max-width: 768px) {
  #page-about .contents .box--02 {
    padding-inline: 2.4rem;
    display: block;
  }
  #page-about .contents .box--02 .cap {
    margin-bottom: 2.4rem;
    padding-inline: calc(8.8rem - 2.4rem);
  }
}
#page-about .contents--top .box--01 .cap {
  position: relative;
  margin-right: calc(50% - 50vw);
  padding-left: clamp(2.4rem, 8.3333333333vw, 16rem);
  margin-bottom: clamp(2.4rem, 3.3333333333vw, 6.4rem);
}
@media (max-width: 768px) {
  #page-about .contents--top .box--01 .cap {
    margin-right: 0;
    padding-left: 2.4rem;
  }
}
#page-about .contents--top .box--01 .cap img {
  position: relative;
  z-index: 2;
}
#page-about .contents--top .box--01 .titles, #page-about .contents--top .box--01 .subtext, #page-about .contents--top .box--01 p {
  position: relative;
  z-index: 2;
}
#page-about .contents--top .box--01 .textbox {
  padding-inline: clamp(14.95rem, 11.9791666667vw, 23rem) clamp(11.18rem, 8.9583333333vw, 17.2rem);
  position: relative;
}
#page-about .contents--top .box--01 .textbox:before {
  content: "";
  position: absolute;
  width: clamp(37.5rem, 79.375vw, 101.6rem);
  height: clamp(27rem, 32.734375vw, 41.9rem);
  background: url(../../dist/images/about/bgcap.svg) no-repeat center center/contain;
  left: -7rem;
  top: -22rem;
}
@media (max-width: 768px) {
  #page-about .contents--top .box--01 .textbox:before {
    background: url(../../dist/images/about/bgcap_sp.svg) no-repeat center center/contain;
    left: 0;
    right: 0;
    margin: auto;
    top: -16rem;
  }
}
@media (max-width: 768px) {
  #page-about .contents--top .box--01 .textbox {
    padding-inline: 2.4rem;
  }
}
#page-about .contents--bottom .box--01 {
  display: flex;
  flex-direction: row-reverse;
  position: relative;
}
@media (max-width: 768px) {
  #page-about .contents--bottom .box--01 {
    padding-inline: 2.4rem;
    display: block;
  }
}
#page-about .contents--bottom .box--01 .cap {
  margin-right: calc(50% - 50vw);
  position: relative;
  flex: 1;
  padding-left: clamp(10.4rem, 8.3333333333vw, 16rem);
}
@media (max-width: 768px) {
  #page-about .contents--bottom .box--01 .cap {
    padding: 0;
    margin-right: 0;
    margin-bottom: 2.4rem;
  }
}
#page-about .contents--bottom .box--01 .textbox {
  flex-shrink: 0;
  width: clamp(39rem, 31.25vw, 60rem);
}
@media (max-width: 768px) {
  #page-about .contents--bottom .box--01 .textbox {
    width: 100%;
  }
}
@media (max-width: 768px) {
  #page-about .contents--bottom .box--02 {
    padding-inline: inherit;
  }
}
#page-about .contents--bottom .box--02 .cap {
  width: clamp(32.5rem, 26.0416666667vw, 50rem);
  position: relative;
}
@media (max-width: 768px) {
  #page-about .contents--bottom .box--02 .cap {
    width: calc(100% - 10.91rem);
    display: block;
    padding-inline: inherit;
    margin-left: auto;
    margin-bottom: 6.78rem;
  }
}
#page-about .contents--bottom .box--02 .cap:after {
  content: "";
  position: absolute;
  width: clamp(10.6rem, 10.4166666667vw, 20rem);
  height: clamp(13.2rem, 13.0208333333vw, 25rem);
  transform: rotate(-15deg);
  background: url(../../dist/images/about/contents-bottom-cap02-01.jpg) no-repeat center center/contain;
  left: clamp(-7rem, -6.8229166667vw, -13.1rem);
  top: clamp(10.7rem, 10.5208333333vw, 20.2rem);
}
@media (max-width: 768px) {
  #page-about .contents--bottom .box--02 .cap:after {
    top: auto;
    bottom: -5.375rem;
  }
}
#page-about .contents--bottom .box--02 .textbox {
  width: clamp(39rem, 31.25vw, 60rem);
  flex-shrink: 0;
}
@media (max-width: 768px) {
  #page-about .contents--bottom .box--02 .textbox {
    width: 100%;
    padding-inline: 2.4rem;
  }
}
#page-about .contents--bottom .box--03 .cap {
  margin-bottom: clamp(2.4rem, 3.3333333333vw, 6.4rem);
}
#page-about .contents--bottom .box--03 .textbox {
  padding-inline: clamp(2.4rem, 9.1145833333vw, 17.5rem);
}
@media (max-width: 768px) {
  #page-about .contents--bottom .box--03 .textbox {
    padding-inline: 2.4rem;
  }
}
#page-about .contents--bottom .box--03 .textbox .itemtext {
  padding-top: clamp(2.4rem, 2.0833333333vw, 4rem);
}
#page-about .greeting .box {
  background-color: white;
  border: clamp(1.6rem, 1.25vw, 2.4rem) solid #F4EDE6;
  padding: clamp(4rem, 4.1666666667vw, 8rem) clamp(2.4rem, 9.1666666667vw, 17.6rem) clamp(3.49rem, 4.1666666667vw, 8rem);
}
@media (max-width: 768px) {
  #page-about .greeting .box {
    padding: 4rem 2.4rem 3.49rem;
  }
}
#page-about .greeting .box h2 {
  font-size: clamp(2.4rem, 2.34375vw, 4.5rem);
  text-align: center;
  margin-bottom: clamp(2.4rem, 2.9166666667vw, 5.6rem);
}
#page-about .greeting .box .cap {
  margin-bottom: clamp(2.4rem, 2.0833333333vw, 4rem);
}
#page-about .greeting h3 {
  font-family: var(--titlefont);
  text-align: center;
  font-size: clamp(2.8rem, 2.0833333333vw, 4rem);
  line-height: 1;
  margin-bottom: clamp(2.4rem, 1.6666666667vw, 3.2rem);
}
#page-about .greeting .textbox {
  line-height: 2;
  font-size: clamp(1.4rem, 1.2490241998vw, 1.6rem);
  font-weight: var(--fontnormal);
  margin-bottom: clamp(2.4rem, 2.0833333333vw, 4rem);
}
#page-about .greeting .textbox p:not(:last-of-type) {
  margin-bottom: 2.4rem;
}
#page-about dl.itemtext {
  text-align: right;
  font-weight: var(--fontsmart);
}
#page-about dl.itemtext dt {
  margin-bottom: 0.5rem;
}
#page-about dl.itemtext b {
  font-size: 1.8rem;
  padding-left: 0.5rem;
}

/* ======================================
#page-404
====================================== */
#page-404 .textbox {
  font-size: clamp(1.4rem, 1.2490241998vw, 1.6rem);
  line-height: 2;
  text-align: center;
}
#page-404 .textbox .btn {
  max-width: 28rem;
  margin-inline: auto;
  padding-top: clamp(4rem, 3.3854166667vw, 6.5rem);
}

/* ======================================
.searchbox
====================================== */
.searchbox-overlay {
  display: none;
  position: fixed;
  inset: 0;
  background: rgba(0, 0, 0, 0.5);
  z-index: 9998;
  opacity: 0;
  transition: opacity 0.3s ease;
}
.searchbox-overlay.is-active {
  display: block;
  opacity: 1;
}

.searchbox {
  background-color: white;
  padding: clamp(2.4rem, 4.7012732615vw, 4.8rem) clamp(2.4rem, 6.2683643487vw, 6.4rem) clamp(4rem, 6.2683643487vw, 6.4rem);
  display: none;
  position: fixed;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  z-index: 9999;
  max-width: 90%;
  width: 79.95rem;
  transition: opacity 0.3s ease, transform 0.3s ease;
  opacity: 0;
}
.searchbox .closebtn {
  position: absolute;
  top: 3.2rem;
  right: 3.38rem;
  cursor: pointer;
}
.searchbox.is-open {
  display: block;
  opacity: 1;
  transform: translate(-50%, -50%);
}
.searchbox .titles {
  line-height: 1;
  margin-bottom: clamp(2.92rem, 2.3958333333vw, 4.6rem);
}
.searchbox .titles .text {
  font-family: var(--titlefont);
  font-size: clamp(2rem, 1.25vw, 2.4rem);
  line-height: 1;
  background: url(../../dist/images/common/line.png) repeat-x left bottom/clamp(9.945rem, 7.96875vw, 15.3rem);
  padding-bottom: clamp(1rem, 0.8333333333vw, 1.6rem);
}
.searchbox .btns {
  display: flex;
  justify-content: center;
  gap: 1rem;
}
.searchbox .btns .btn {
  width: 28rem;
  cursor: pointer;
}
.searchbox .btns .btn.is-disabled .btn--box {
  background-color: #D0D0D0;
  pointer-events: none;
}
.searchbox .list {
  margin-bottom: clamp(2rem, 3.1341821743vw, 3.2rem);
}
.searchbox--list {
  border-bottom: 1px dashed #000000;
  padding-bottom: clamp(2rem, 3.1341821743vw, 3.2rem);
  display: flex;
  align-items: flex-start;
  gap: 3.2rem;
}
.searchbox--list p.title {
  font-size: clamp(1.4rem, 1.2490241998vw, 1.6rem);
  font-weight: var(--fontbold);
  width: 7rem;
}
.searchbox--list:not(:last-child) {
  margin-bottom: clamp(2rem, 3.1341821743vw, 3.2rem);
}
.searchbox--list .checkboxwrap {
  display: flex;
  flex-wrap: wrap;
  gap: clamp(0.8rem, 1.5670910872vw, 1.6rem) clamp(1.6rem, 2.3506366308vw, 2.4rem);
  width: calc(100% - 7rem);
}
.searchbox .checkitem {
  display: inline-flex;
  align-items: center;
  gap: 0.8rem;
  cursor: pointer;
  font-size: clamp(1.3rem, 0.7291666667vw, 1.4rem);
  font-weight: var(--fontnormal);
}
.searchbox .checkitem input[type=checkbox] {
  appearance: none;
  width: 1.6rem;
  height: 1.6rem;
  border: 1px solid #000000;
  position: relative;
}
.searchbox .checkitem input[type=checkbox]:checked::after {
  content: "";
  position: absolute;
  width: 6px;
  height: 10px;
  border-right: 2px solid black;
  border-bottom: 2px solid black;
  transform: rotate(45deg);
  left: 0.4rem;
  top: 0;
}
.searchbox .labeltext {
  font-size: clamp(1.3rem, 0.7291666667vw, 1.4rem);
}

/* ======================================
.formbox
====================================== */
::placeholder {
  color: #CCCCCC;
}

::-moz-placeholder {
  color: #CCCCCC;
}

:-ms-input-placeholder {
  color: #CCCCCC;
}

::-ms-input-placeholder {
  color: #CCCCCC;
}

.formbox {
  font-size: clamp(1.4rem, 1.2490241998vw, 1.6rem);
  font-weight: var(--fontnormal);
}
.formbox .mintext {
  text-align: center;
  font-weight: var(--fontsmart);
  font-size: 1.2rem;
  line-height: 1.6;
}
@media (max-width: 768px) {
  .formbox .mintext {
    text-align: left;
  }
}
.formbox .mintext a {
  text-decoration: underline;
}
.formbox .btn {
  text-align: center;
}
.formbox .btn--box {
  width: 28rem;
  margin: auto;
  cursor: pointer;
}
@media (max-width: 768px) {
  .formbox .btn--box {
    width: 100%;
  }
}
.formbox .item {
  color: #FF2700;
}
.formbox .itemtxt {
  margin-bottom: clamp(1.6rem, 2.34375vw, 2.4rem);
}
.formbox .list {
  margin-bottom: clamp(3.2rem, 4.6875vw, 4.8rem);
}
.formbox .list--first {
  border-bottom: 1px dashed black;
  padding-bottom: clamp(2.5rem, 4.7012732615vw, 4.8rem);
  margin-bottom: clamp(2.5rem, 3.1341821743vw, 3.2rem);
}
.formbox--list:not(:last-child) {
  margin-bottom: clamp(2.4rem, 3.90625vw, 4rem);
}
.formbox--list .title {
  margin-bottom: clamp(0.8rem, 1.5625vw, 1.6rem);
}
.formbox--list .title--item p {
  display: flex;
  align-items: center;
  gap: 1rem;
}
.formbox--list .title--item span {
  font-size: clamp(1.1rem, 1.1753183154vw, 1.2rem);
  font-weight: var(--fontsmart);
  padding-left: 1rem;
}
.formbox .textbox {
  width: 100%;
}
.formbox .textbox--select {
  position: relative;
}
.formbox .textbox--select:after {
  content: "";
  width: 1rem;
  height: 0.5rem;
  position: absolute;
  background: url(../../dist/images/common/form-icon.svg) no-repeat center center/contain;
  right: 1.7rem;
  top: 50%;
  transform: translateY(-50%);
}
.formbox .textbox--select .wpcf7-select {
  width: 100%;
  padding: clamp(1.4rem, 1.5670910872vw, 1.6rem);
  border: 1px solid black;
  background-color: #fff;
  color: black;
  font-size: clamp(1.4rem, 1.5670910872vw, 1.6rem);
  box-sizing: border-box;
}
@media (max-width: 768px) {
  .formbox .textbox--select .wpcf7-select {
    max-width: none;
  }
}
.formbox .textbox textarea,
.formbox .textbox input {
  width: 100%;
  padding: 1.6rem;
  border: 1px solid #000000;
  resize: none;
}
.formbox .textbox--item {
  width: 30rem;
}
@media (max-width: 768px) {
  .formbox .textbox--item {
    width: 100%;
  }
}
.formbox .radiobox input[type=radio] {
  opacity: 0;
  visibility: hidden;
  position: absolute;
}
.formbox .radiobox .wpcf7-radio {
  display: flex;
  gap: 2.4rem;
}
@media (max-width: 768px) {
  .formbox .radiobox .wpcf7-radio {
    display: block;
  }
}
.formbox .radiobox .wpcf7-list-item,
.formbox .radiobox .wpcf7-list-item.first {
  margin-left: 0;
  display: block;
}
.formbox .radiobox .wpcf7-list-item:not(:last-of-type),
.formbox .radiobox .wpcf7-list-item.first:not(:last-of-type) {
  margin-bottom: 0.8rem;
}
.formbox .radiobox span.wpcf7-list-item-label {
  position: relative;
  display: flex;
  align-items: center;
  cursor: pointer;
  letter-spacing: 0.05em;
}
.formbox .radiobox span.wpcf7-list-item-label::before {
  display: block;
  content: "";
  border-radius: 50%;
  width: 2rem;
  height: 2rem;
  margin-right: 0.8rem;
  background-color: white;
  border: 1px solid #000000;
}
.formbox .radiobox span.wpcf7-list-item-label::after {
  display: block;
  position: absolute;
  content: "";
  border-radius: 50%;
  width: 1.2rem;
  height: 1.2rem;
  background-color: #000000;
  left: 0.4rem;
  top: 50%;
  transform: translateY(-50%);
  display: none;
}
.formbox .radiobox input[type=radio]:checked + span.wpcf7-list-item-label::after {
  display: block;
}
.formbox .checkbox {
  margin-bottom: 2.4rem;
  display: block;
}
.formbox .checkbox .wpcf7-form-control {
  display: flex;
  flex-wrap: wrap;
  gap: 1rem;
}
.formbox .checkbox .checkbox-input {
  display: flex;
  align-items: center;
  gap: 2.4rem;
}
@media (max-width: 768px) {
  .formbox .checkbox .checkbox-input {
    display: block;
  }
}
.formbox .checkbox .checkbox-input input {
  display: none;
}
.formbox .checkbox .wpcf7-list-item-label {
  padding-left: 3rem;
  position: relative;
}
.formbox .checkbox span.wpcf7-list-item {
  margin: 0;
  display: block;
}
@media (max-width: 768px) {
  .formbox .checkbox span.wpcf7-list-item:not(:last-of-type) {
    margin-bottom: 0.8rem;
  }
}
.formbox .checkbox .wpcf7-list-item-label::before {
  content: "";
  display: block;
  position: absolute;
  top: 0.3rem;
  left: 0;
  width: 2rem;
  height: 2rem;
  border: 1px solid black;
  background-color: #fff;
}
@media (max-width: 768px) {
  .formbox .checkbox .wpcf7-list-item-label::before {
    top: 0;
  }
}
.formbox .checkbox .checkbox-input input:checked + .wpcf7-list-item-label::after {
  content: "";
  display: block;
  position: absolute;
  top: 0.5rem;
  left: 0.7rem;
  width: 0.7rem;
  height: 1.4rem;
  transform: rotate(40deg);
  border-bottom: 3px solid black;
  border-right: 3px solid black;
}
@media (max-width: 768px) {
  .formbox .checkbox .checkbox-input input:checked + .wpcf7-list-item-label::after {
    top: 0.2rem;
  }
}

/* ======================================
.formcontents
====================================== */
@media (max-width: 768px) {
  .formcontents {
    margin-inline: 2.4rem;
  }
}
.formcontents h2.title {
  text-align: center;
  margin-bottom: clamp(3.2rem, 3.3333333333vw, 6.4rem);
}
.formcontents h2.title .txt,
.formcontents h2.title .text {
  display: block;
}
.formcontents h2.title .text {
  font-size: clamp(4rem, 3.6458333333vw, 7rem);
  font-family: var(--titlefont);
  line-height: 1;
  margin-bottom: clamp(1.6rem, 2.34375vw, 2.4rem);
}
.formcontents h2.title .txt {
  font-weight: var(--fontnormal);
  font-size: clamp(1.2rem, 1.4691478942vw, 1.5rem);
}
.formcontents .notelist {
  margin-bottom: 1.6rem;
}
.formcontents .notelist li {
  font-size: clamp(1.3rem, 1.5625vw, 1.6rem);
  line-height: 1.5;
  font-weight: var(--fontnormal);
  position: relative;
  display: flex;
  align-items: flex-start;
}
@media (max-width: 768px) {
  .formcontents .notelist li {
    display: flex;
    align-items: flex-start;
  }
}
.formcontents .notelist li:before {
  content: "※";
}
.formcontents .notelist li:not(:last-child) {
  margin-bottom: 0.8rem;
}
.formcontents .teltext {
  margin-bottom: clamp(4rem, 6.25vw, 6.4rem);
}
@media (max-width: 768px) {
  .formcontents .teltext {
    text-align: center;
  }
}
.formcontents .teltext .txt {
  text-decoration: underline;
  font-size: clamp(1.5rem, 0.8333333333vw, 1.6rem);
  font-weight: var(--fontnormal);
}
.formcontents .teltext .txt:before {
  content: url(../../dist/images/common/icon-tel.svg);
  transform: translateY(0.5rem);
  display: inline-block;
  padding-right: 0.5rem;
}
.formcontents .teltext .txt:after {
  content: url(../../dist/images/common/icon-arrow.svg);
  padding-left: 0.8rem;
}
.formcontents .teltext--line {
  margin-bottom: 0;
}
.formcontents .teltext--line .txt:before {
  content: url(../../dist/images/common/btn-line.svg);
  transform: translateY(0.7rem);
}
.formcontents .snsbox {
  display: flex;
  align-items: center;
  gap: clamp(1rem, 3.125vw, 3.2rem);
  margin-bottom: 4rem;
}
@media (max-width: 768px) {
  .formcontents .snsbox {
    display: block;
  }
}
.formcontents .snsbox .teltext {
  margin-bottom: 0;
}
.formcontents .snsbox .teltext--line {
  margin-bottom: 1.6rem;
}

/* ======================================
.singlerecruit
====================================== */
.singlerecruit .headbox {
  margin-bottom: clamp(3.2rem, 7.8125vw, 8rem);
}
@media (max-width: 768px) {
  .singlerecruit .headbox {
    margin-inline: 2.4rem;
  }
}
.singlerecruit .headbox .titles {
  margin-bottom: clamp(1.6rem, 2.34375vw, 2.4rem);
  text-align: center;
}
@media (max-width: 768px) {
  .singlerecruit .headbox .titles {
    text-align: left;
  }
}
.singlerecruit .headbox .titles .text {
  font-size: clamp(2.4rem, 3.90625vw, 4rem);
  line-height: 1;
  font-family: var(--titlefont);
}
.singlerecruit .headbox .lead {
  font-weight: var(--fontnormal);
  font-size: clamp(1.4rem, 1.5625vw, 1.6rem);
  margin-bottom: clamp(1.6rem, 3.125vw, 3.2rem);
  text-align: center;
}
@media (max-width: 768px) {
  .singlerecruit .headbox .lead {
    text-align: left;
  }
}
.singlerecruit .headbox .data {
  justify-content: center;
}
@media (max-width: 768px) {
  .singlerecruit .headbox .data {
    justify-content: flex-start;
  }
}
.singlerecruit .article-content {
  margin-bottom: clamp(5.6rem, 15.625vw, 16rem);
}
.singlerecruit .article-content .recruit-table {
  line-height: 1.8;
  font-weight: var(--fontnormal);
}
.singlerecruit .article-content .recruit-table th {
  width: clamp(7.2rem, 19.53125vw, 20rem);
}
.singlerecruit .staff {
  margin-bottom: clamp(8.8rem, 15.625vw, 16rem);
}
.singlerecruit .staff h2.titles {
  text-align: center;
  margin-bottom: clamp(2.4rem, 6.25vw, 6.4rem);
}
.singlerecruit .staff h2.titles .text {
  font-size: clamp(2.4rem, 3.90625vw, 4rem);
  font-family: var(--titlefont);
}
.singlerecruit .staff--list {
  justify-content: center;
}
.singlerecruit .staff--list .stafflist {
  margin: 0 1.6rem;
}
.singlerecruit .formcontents .headbox {
  margin-bottom: clamp(2.4rem, 3.90625vw, 4rem);
}
@media (max-width: 768px) {
  .singlerecruit .formcontents .headbox {
    margin-inline: initial;
  }
}
.singlerecruit .formcontents .headbox .lead {
  text-align: left;
  margin-bottom: clamp(1.6rem, 2.34375vw, 2.4rem);
  line-height: 2;
}
.singlerecruit .formcontents .headbox .lead a {
  text-decoration: underline;
}
.singlerecruit .formcontents .headbox .notelist {
  background-color: #EDEDED;
  padding: 2.4rem;
}

/* ======================================
page-flow
====================================== */
#page-flow .flowbox--headbox {
  text-align: center;
  margin-bottom: clamp(4rem, 4.1666666667vw, 8rem);
  line-height: 2.2;
  position: relative;
}
#page-flow .flowbox--headbox:before {
  content: "";
  position: absolute;
  width: clamp(7.635rem, 8.2341920375vw, 10.548rem);
  height: clamp(10.474rem, 11.4551131928vw, 14.674rem);
  background: url(../../dist/images/flow/head-item.svg) no-repeat center center/contain;
  left: clamp(1rem, 10.1483216237vw, 13rem);
  top: 5rem;
}
@media (max-width: 768px) {
  #page-flow .flowbox--headbox:before {
    top: auto;
    left: auto;
    right: 0;
    bottom: -12rem;
    z-index: 10;
  }
}
@media (max-width: 768px) {
  #page-flow .flowbox--headbox {
    line-height: 1.8;
    margin-inline: 2.4rem;
  }
  #page-flow .flowbox--headbox .lead {
    text-align: left;
  }
}
#page-flow .flowbox--headbox .title {
  margin-bottom: clamp(2.4rem, 1.6666666667vw, 3.2rem);
  display: inline-block;
  position: relative;
}
@media (max-width: 768px) {
  #page-flow .flowbox--headbox .title {
    display: block;
  }
}
#page-flow .flowbox--headbox .title:before {
  content: "";
  width: clamp(5rem, 6.2451209992vw, 8rem);
  height: clamp(4.7rem, 5.9328649493vw, 7.6rem);
  position: absolute;
  background: url(../../dist/images/flow/head-itemleft.svg) no-repeat center center/contain;
  left: -6.7708333333vw;
  top: -1.5625vw;
}
@media (max-width: 768px) {
  #page-flow .flowbox--headbox .title:before {
    left: -0.5rem;
    top: 0;
  }
}
#page-flow .flowbox--headbox .title:after {
  content: "";
  width: clamp(5.5rem, 6.6354410617vw, 8.5rem);
  height: clamp(4.8rem, 5.8548009368vw, 7.5rem);
  position: absolute;
  background: url(../../dist/images/flow/head-itemright.svg) no-repeat center center/contain;
  right: -6.7708333333vw;
  top: 2.0833333333vw;
}
@media (max-width: 768px) {
  #page-flow .flowbox--headbox .title:after {
    right: 0;
    top: auto;
    bottom: -0.5rem;
  }
}
#page-flow .flowbox--headbox .title .titles {
  display: block;
}
#page-flow .flowbox--headbox .title .titles--top {
  margin-bottom: 0;
}
@media (max-width: 768px) {
  #page-flow .flowbox--headbox .title .titles--top {
    margin-bottom: 1rem;
  }
}
#page-flow .flowbox--headbox .title .titles--top .text {
  line-height: 1;
}
@media (max-width: 768px) {
  #page-flow .flowbox--headbox .title .titles--top .text {
    font-size: 2.4rem;
  }
}
#page-flow .flowbox--headbox .title .titles--bottom {
  margin-bottom: 0;
}
#page-flow .flowbox--headbox .title .titles--bottom .text {
  font-size: clamp(3rem, 2.8125vw, 5.4rem);
}
#page-flow .flowbox--contents {
  position: relative;
  margin-bottom: 3.2rem;
}
@media (max-width: 768px) {
  #page-flow .flowbox--contents {
    margin-inline: 2.4rem;
    margin-bottom: 4rem;
  }
}
#page-flow .flowbox--contents:nth-of-type(odd) .box {
  flex-direction: row-reverse;
}
#page-flow .flowbox--contents:nth-of-type(odd) .box .textbox {
  padding-right: clamp(5.2rem, 4.1666666667vw, 8rem);
  padding-left: 0;
}
@media (max-width: 768px) {
  #page-flow .flowbox--contents:nth-of-type(odd) .box .textbox {
    padding-right: 0;
  }
}
#page-flow .flowbox--contents:nth-of-type(odd) .box .cap {
  padding-left: clamp(5.2rem, 4.1666666667vw, 8rem);
  padding-right: 0;
}
@media (max-width: 768px) {
  #page-flow .flowbox--contents:nth-of-type(odd) .box .cap {
    padding-left: 0;
  }
}
#page-flow .flowbox--contents.box1 .btnbox {
  background: url(../../dist/images/common/line.png) repeat-x left bottom/15.3rem, url(../../dist/images/common/line.png) repeat-x left top/15.3rem;
  position: relative;
  margin: clamp(2.4rem, 1.6666666667vw, 3.2rem) 0;
  padding: 3.2rem 4rem;
  max-width: 45rem;
}
@media (max-width: 768px) {
  #page-flow .flowbox--contents.box1 .btnbox {
    padding: 3.2rem;
    max-width: none;
  }
}
#page-flow .flowbox--contents.box1 .btnbox li {
  display: flex;
  gap: 0.8rem;
}
@media (max-width: 768px) {
  #page-flow .flowbox--contents.box1 .btnbox li {
    display: block;
    text-align: center;
  }
  #page-flow .flowbox--contents.box1 .btnbox li:not(:last-child) {
    margin-bottom: 1.6rem;
  }
}
#page-flow .flowbox--contents.box1 .btnbox li .arrow {
  width: 1.2rem;
}
#page-flow .flowbox--contents.box1 .btnbox li:not(:last-child) {
  margin-bottom: 1.6rem;
}
#page-flow .flowbox--contents.box1 .btnbox li p.txt {
  width: 18rem;
}
@media (max-width: 768px) {
  #page-flow .flowbox--contents.box1 .btnbox li p.txt {
    width: auto;
    text-align: center;
    margin-bottom: 0.8rem;
  }
}
#page-flow .flowbox--contents.box1 .btnbox li .btn {
  display: flex;
  justify-content: center;
  align-items: center;
  width: 18rem;
  border: 1px solid black;
  font-size: 1.3rem;
  height: 3.5rem;
  gap: 0.8rem;
  border-radius: 2.5rem;
}
@media (max-width: 768px) {
  #page-flow .flowbox--contents.box1 .btnbox li .btn {
    width: auto;
    font-size: 1.4rem;
    height: 3.6rem;
    border-radius: 1.8rem;
  }
}
#page-flow .flowbox--contents.box1 .btnbox:before, #page-flow .flowbox--contents.box1 .btnbox:after {
  content: "";
  position: absolute;
  top: 0;
  width: clamp(0.26rem, 0.2083333333vw, 0.4rem);
  height: 100%;
  background: url(../../dist/images/common/lineleft.png) repeat-y left top/cover;
}
#page-flow .flowbox--contents.box1 .btnbox:before {
  left: 0;
}
#page-flow .flowbox--contents.box1 .btnbox:after {
  right: 0;
}
#page-flow .flowbox--contents.box1 .box .cap {
  position: relative;
}
@media (max-width: 768px) {
  #page-flow .flowbox--contents.box1 .box .cap {
    padding-bottom: 6.27rem;
    padding-right: 5.7rem;
  }
}
#page-flow .flowbox--contents.box1 .box .cap:after {
  content: none;
  position: absolute;
  width: clamp(16rem, 33.986287953vw, 34.7rem);
  height: clamp(11.5rem, 24.485798237vw, 25rem);
  background: url(../../dist/images/flow/box01-cap02.jpg) no-repeat center center/contain;
  right: clamp(-6.5rem, -5.2083333333vw, -10rem);
  top: clamp(25rem, 29.4809010774vw, 30.1rem);
}
@media (max-width: 768px) {
  #page-flow .flowbox--contents.box1 .box .cap:after {
    right: -2.4rem;
    bottom: 0;
  }
}
#page-flow .flowbox--contents.box2 .cap {
  position: relative;
  padding-top: clamp(7rem, 7.7604166667vw, 14.9rem);
}
#page-flow .flowbox--contents.box2 .cap:after {
  content: "";
  position: absolute;
  width: clamp(21.2rem, 17.9166666667vw, 34.4rem);
  height: clamp(12.1rem, 10.2083333333vw, 19.6rem);
  background: url(../../dist/images/flow/box02-item.png) no-repeat center center/contain;
  left: clamp(3.4rem, 7.96875vw, 15.3rem);
  top: 0;
}
#page-flow .flowbox--contents.box3 h2.title:after {
  content: "";
  position: absolute;
  width: clamp(5.7rem, 7.0257611241vw, 9rem);
  height: clamp(8.7rem, 10.7728337237vw, 13.8rem);
  background: url(../../dist/images/flow/box03-item.svg) no-repeat center center/contain;
  left: 50%;
  transform: translateX(-50%);
  top: clamp(1rem, 14.0515222482vw, 18rem);
}
@media (max-width: 768px) {
  #page-flow .flowbox--contents.box3 h2.title:after {
    left: 3.4rem;
    transform: translateX(0);
  }
}
#page-flow .flowbox--contents.box3 .cap {
  position: relative;
  padding-top: clamp(6.86rem, 8.75vw, 16.8rem);
}
#page-flow .flowbox--contents.box3 .cap:after {
  content: "";
  position: absolute;
  width: clamp(20.8rem, 15.4796875vw, 29.721rem);
  height: clamp(11.4rem, 10.4098958333vw, 19.987rem);
  background: url(../../dist/images/flow/box03-item.png) no-repeat center center/contain;
  transform: rotate(10deg);
  right: clamp(5.3rem, 6.5625vw, 12.6rem);
  top: 0;
}
#page-flow .flowbox--contents.box5 .cap {
  position: relative;
  padding-top: clamp(3.6rem, 7.8125vw, 15rem);
}
#page-flow .flowbox--contents.box5 .cap:after {
  content: "";
  position: absolute;
  width: clamp(19.3rem, 17.9166666667vw, 34.4rem);
  height: clamp(11rem, 10.2083333333vw, 19.6rem);
  background: url(../../dist/images/flow/box05-item.png) no-repeat center center/contain;
  left: clamp(0rem, 8.75vw, 16.8rem);
  top: 0;
}
@media (max-width: 768px) {
  #page-flow .flowbox--contents.box5 .cap:after {
    left: 0;
  }
}
#page-flow .flowbox--contents.box10 .cap {
  position: relative;
}
#page-flow .flowbox--contents.box10 .cap:after {
  content: "";
  position: absolute;
  width: clamp(6.343rem, 6.0843091335vw, 7.794rem);
  height: clamp(11.118rem, 10.7704918033vw, 13.797rem);
  background: url(../../dist/images/flow/box10-item.svg) no-repeat center center/contain;
  top: clamp(-11.7rem, -9.375vw, -18rem);
  right: clamp(9.75rem, 7.8125vw, 15rem);
  z-index: 3;
}
@media (max-width: 768px) {
  #page-flow .flowbox--contents.box10 .cap:after {
    right: auto;
    left: 1.6rem;
    top: -10rem;
  }
}
#page-flow .flowbox--contents h2.title {
  text-align: center;
  font-size: clamp(1.2rem, 1.0928961749vw, 1.4rem);
  font-weight: var(--fontbold);
  margin-bottom: 2.39rem;
  background-color: white;
  position: relative;
  z-index: 2;
}
@media (max-width: 768px) {
  #page-flow .flowbox--contents h2.title {
    margin-bottom: 2.4rem;
  }
}
#page-flow .flowbox--contents h2.title .text {
  display: block;
  margin-bottom: clamp(0.8rem, 0.9375vw, 1.8rem);
}
#page-flow .flowbox--contents h2.title .icon {
  display: block;
  width: clamp(10.8rem, 8.4895833333vw, 16.3rem);
  margin: auto;
}
#page-flow .flowbox--contents .box {
  display: flex;
  align-items: flex-start;
  position: relative;
  padding-top: 3rem;
  padding-bottom: 8.8rem;
}
@media (max-width: 768px) {
  #page-flow .flowbox--contents .box {
    padding: 0;
    display: block;
  }
}
#page-flow .flowbox--contents .box:before {
  content: "";
  left: 50%;
  width: 1px;
  height: 100%;
  border-left: 2px dashed #BFBDBD;
  position: absolute;
  top: 0;
}
@media (max-width: 768px) {
  #page-flow .flowbox--contents .box:before {
    content: none;
  }
}
#page-flow .flowbox--contents .box .cap, #page-flow .flowbox--contents .box .textbox {
  width: 50%;
}
@media (max-width: 768px) {
  #page-flow .flowbox--contents .box .cap, #page-flow .flowbox--contents .box .textbox {
    width: auto;
  }
}
#page-flow .flowbox--contents .box .cap {
  padding-right: clamp(5.2rem, 4.1666666667vw, 8rem);
}
@media (max-width: 768px) {
  #page-flow .flowbox--contents .box .cap {
    padding-right: 0;
    margin-bottom: 2.4rem;
  }
}
#page-flow .flowbox--contents .box .cap img {
  aspect-ratio: 520/352;
  object-fit: cover;
}
@media (max-width: 768px) {
  #page-flow .flowbox--contents .box .cap img {
    aspect-ratio: 327/221.35;
  }
}
#page-flow .flowbox--contents .box .textbox {
  padding-left: clamp(5.2rem, 4.1666666667vw, 8rem);
}
#page-flow .flowbox--contents .box .textbox a {
  text-decoration: underline;
}
#page-flow .flowbox--contents .box .textbox a:hover {
  text-decoration: none;
}
#page-flow .flowbox--contents .box .textbox .subtext {
  font-size: clamp(1.6rem, 1.0416666667vw, 2rem);
  font-weight: var(--fontbold);
  line-height: 1.8;
  margin-bottom: clamp(1.6rem, 1.25vw, 2.4rem);
}
#page-flow .flowbox--contents .box .textbox .pointbox {
  padding-top: clamp(2rem, 2.9382957884vw, 3rem);
}
#page-flow .flowbox--contents .box .textbox .pointbox h3 {
  font-family: var(--titlefont);
  font-size: clamp(1.6rem, 1.0416666667vw, 2rem);
}
@media (max-width: 768px) {
  #page-flow .flowbox--contents .box .textbox {
    padding-left: 0;
  }
}
#page-flow .contents {
  font-size: clamp(1.4rem, 1.2490241998vw, 1.6rem);
  line-height: 2;
  font-weight: var(--fontnormal);
}
@media (max-width: 768px) {
  #page-flow .contents {
    line-height: 1.8;
  }
}
#page-flow .contents .textbox p:not(:last-of-type) {
  margin-bottom: clamp(1.6rem, 1.25vw, 2.4rem);
}
#page-flow .contents .titles {
  line-height: 1;
  margin-bottom: clamp(1.6rem, 1.6666666667vw, 3.2rem);
}
@media (max-width: 768px) {
  #page-flow .contents .titles {
    line-height: initial;
  }
}
#page-flow .contents .titles .text {
  font-family: var(--titlefont);
  font-weight: var(--fontbold);
  font-size: clamp(2.4rem, 2.0833333333vw, 4rem);
  line-height: 1.5;
}
@media (max-width: 768px) {
  #page-flow .contents .titles .text {
    line-height: 0.6666666667;
  }
}
#page-flow .bottombox {
  text-align: center;
}
#page-flow .bottombox .titles:before {
  content: "";
  display: block;
  width: clamp(11.7rem, 14.4418423107vw, 18.5rem);
  height: clamp(10.4rem, 12.8024980484vw, 16.4rem);
  background: url(../../dist/images/flow/bottom-item.svg) no-repeat center center/contain;
  margin-inline: auto;
  margin-bottom: clamp(1.6rem, 2.4980483997vw, 3.2rem);
}
@media (max-width: 768px) {
  #page-flow .bottombox {
    margin-inline: 2.4rem;
  }
}
#page-flow .bottombox .textbox {
  margin-bottom: clamp(3.2rem, 2.9166666667vw, 5.6rem);
}
@media (max-width: 768px) {
  #page-flow .bottombox .textbox {
    text-align: left;
  }
}
#page-flow .bottombox .btns {
  display: flex;
  justify-content: center;
  gap: 1.6rem;
}
@media (max-width: 768px) {
  #page-flow .bottombox .btns {
    display: block;
  }
}
#page-flow .bottombox .btns .btn {
  width: 28rem;
}
@media (max-width: 768px) {
  #page-flow .bottombox .btns .btn {
    width: auto;
  }
  #page-flow .bottombox .btns .btn:not(:last-of-type) {
    margin-bottom: 1.6rem;
  }
}

/* ======================================
page-performance
====================================== */
.homebuilding-contents .headbox {
  text-align: center;
  margin-bottom: clamp(3.2rem, 3.3333333333vw, 6.4rem);
}
.homebuilding-contents .headbox .titles {
  margin-bottom: clamp(2.4rem, 3.3333333333vw, 6.4rem);
}
.homebuilding-contents .headbox .titles .text {
  font-family: var(--titlefont);
  font-weight: var(--fontbold);
  font-size: clamp(2.4rem, 2.0833333333vw, 4rem);
  line-height: 1.5;
}
@media (max-width: 768px) {
  .homebuilding-contents .headbox .titles .text {
    line-height: 1.5;
  }
}
@media (max-width: 768px) {
  .homebuilding-contents .headbox .tabsbox {
    margin-inline: 2.4rem;
  }
}
.homebuilding-contents .headbox .tabsbox .box {
  display: flex;
  justify-content: center;
  align-items: center;
  gap: 0.8rem;
}
@media (max-width: 768px) {
  .homebuilding-contents .headbox .tabsbox .box {
    justify-content: flex-start;
    align-items: flex-start;
  }
}
.homebuilding-contents .headbox .tabsbox .box:not(:last-of-type) {
  margin-bottom: 1.6rem;
}
.homebuilding-contents .headbox .tabsbox .box .title {
  font-size: clamp(1.1rem, 0.8333333333vw, 1.6rem);
  font-weight: var(--fontbold);
  white-space: nowrap;
}
@media (max-width: 768px) {
  .homebuilding-contents .headbox .tabsbox .box .title {
    margin-top: 0.6rem;
  }
}
.homebuilding-contents .headbox .tabsbox .box .title:after {
  content: ":";
}
.homebuilding-contents .headbox .tabsbox .box ul {
  display: flex;
  align-items: center;
  gap: 0.5rem;
  flex-wrap: wrap;
}
.homebuilding-contents .headbox .tabsbox .box ul .txt {
  display: flex;
  align-items: center;
  background-color: white;
  border: 1px solid black;
  height: clamp(3.2rem, 1.8229166667vw, 3.5rem);
  border-radius: 2.5rem;
  gap: 0.8rem;
  padding-inline: 1.6rem;
  font-size: clamp(1.1rem, 0.6770833333vw, 1.3rem);
  font-weight: var(--fontnormal);
  transition: 0.5s all ease;
}
@media (max-width: 768px) {
  .homebuilding-contents .headbox .tabsbox .box ul .txt {
    height: 3.2rem;
  }
}
.homebuilding-contents .headbox .tabsbox .box ul .txt .arrow {
  transform: rotate(90deg);
  width: 1.2rem;
}
.homebuilding-contents .headbox .tabsbox .box ul .txt:hover {
  background-color: #D0D0D0;
}
.homebuilding-contents .contents .textbox {
  font-weight: var(--fontnormal);
  line-height: 2;
}
@media (max-width: 768px) {
  .homebuilding-contents .contents .textbox {
    line-height: 1.8;
  }
}
.homebuilding-contents .contents .textbox p:not(:last-of-type) {
  margin-bottom: clamp(1.6rem, 1.25vw, 2.4rem);
}
.homebuilding-contents .contents h2.titles {
  margin-bottom: clamp(1.6rem, 1.6666666667vw, 3.2rem);
  text-align: center;
}
.homebuilding-contents .contents h2.titles .text {
  font-size: clamp(2rem, 1.7708333333vw, 3.4rem);
  line-height: 1;
}
.homebuilding-contents .contents h3.title {
  font-size: clamp(1.8rem, 2.1484375vw, 2.2rem);
  font-weight: var(--fontbold);
  background-color: #EDEDED;
  padding: 1rem clamp(1.6rem, 1.0416666667vw, 2rem);
  margin-bottom: clamp(2.4rem, 3.125vw, 3.2rem);
}
.homebuilding-contents .contents .subtitle {
  font-size: clamp(1.8rem, 1.0416666667vw, 2rem);
  line-height: 1.8;
  font-weight: var(--fontbold);
  padding-left: clamp(1.6rem, 1.0416666667vw, 2rem);
  border-left: 0.5rem solid black;
  margin-bottom: clamp(1.6rem, 1.25vw, 2.4rem);
}
@media (max-width: 768px) {
  .homebuilding-contents .contents .subtitle {
    line-height: 1.6;
  }
}
.homebuilding-contents .contents .itemlist li {
  position: relative;
  font-size: 1.4rem;
  line-height: 1.6;
  padding-left: 1.5rem;
}
.homebuilding-contents .contents .itemlist li:before {
  position: absolute;
  left: 0;
  top: 0.8rem;
  content: "";
  width: 0.7rem;
  height: 0.7rem;
  border-radius: 50%;
  background-color: black;
  display: block;
}
.homebuilding-contents .contents table.colortable {
  width: 100%;
  margin-bottom: clamp(3.2rem, 6.25vw, 6.4rem);
}
.homebuilding-contents .contents table.colortable .item-th01, .homebuilding-contents .contents table.colortable .item-th02 {
  width: 41.6rem;
  padding: 2.3rem 0 2.2rem;
  text-align: center;
  font-weight: var(--fontbold);
  font-size: clamp(1.4rem, 0.8333333333vw, 1.6rem);
  border-top: 1px solid #BABABA;
  border-right: 1px solid #BABABA;
  border-bottom: 1px solid #BABABA;
}
@media (max-width: 768px) {
  .homebuilding-contents .contents table.colortable .item-th01, .homebuilding-contents .contents table.colortable .item-th02 {
    padding: 1rem 0;
  }
}
.homebuilding-contents .contents table.colortable .item-th01 {
  background-color: #FFD4B9;
}
.homebuilding-contents .contents table.colortable .item-th02 {
  background-color: #C3DAE0;
}
.homebuilding-contents .contents table.colortable .none {
  width: 17rem;
  border-right: 1px solid #BABABA;
  border-bottom: 1px solid #BABABA;
}
.homebuilding-contents .contents table.colortable .item-th03 {
  font-size: 1.5rem;
  text-align: left;
  padding: 2.4rem 2.4rem 2.4rem 2.3rem;
  border-right: 1px solid #BABABA;
  border-bottom: 1px solid #BABABA;
}
@media (max-width: 768px) {
  .homebuilding-contents .contents table.colortable .item-th03 {
    font-size: 1.4rem;
    line-height: 1.6;
    padding: 1rem;
  }
}
.homebuilding-contents .contents table.colortable .item-td01, .homebuilding-contents .contents table.colortable .item-td02 {
  font-size: 1.5rem;
  padding: 2.4rem 2.4rem 2.4rem 2.3rem;
  border-right: 1px solid #BABABA;
  border-bottom: 1px solid #BABABA;
}
@media (max-width: 768px) {
  .homebuilding-contents .contents table.colortable .item-td01, .homebuilding-contents .contents table.colortable .item-td02 {
    font-size: 1.3rem;
    line-height: 1.6;
    padding: 1rem;
  }
}
.homebuilding-contents .contents table.colortable .item-td01 {
  background-color: #FFEEE3;
}
.homebuilding-contents .contents table.colortable .item-td02 {
  background-color: #EAF2F2;
}
.homebuilding-contents .contents .box {
  margin-bottom: clamp(4.8rem, 9.375vw, 9.6rem);
}
.homebuilding-contents .contents .box--contents:not(:last-of-type) {
  margin-bottom: clamp(4rem, 6.25vw, 6.4rem);
}
.homebuilding-contents .contents .box--04 .caps {
  margin-bottom: clamp(2.4rem, 6.25vw, 6.4rem);
}
@media (max-width: 768px) {
  .homebuilding-contents .contents .box--04 .caps {
    display: block;
  }
  .homebuilding-contents .contents .box--04 .caps .cap {
    width: auto;
  }
  .homebuilding-contents .contents .box--04 .caps .cap:not(:last-of-type) {
    margin-bottom: 0.8rem;
  }
}
.homebuilding-contents .contents .box--04 .listbox {
  display: flex;
  justify-content: space-between;
}
@media (max-width: 768px) {
  .homebuilding-contents .contents .box--04 .listbox {
    display: block;
  }
}
.homebuilding-contents .contents .box--04 .listbox li {
  flex: 0 0 calc((100% - clamp(2.08rem, 1.6666666667vw, 3.2rem) * 2) / 3);
  font-size: 1.4rem;
  line-height: 1.7;
  font-weight: var(--fontnormal);
}
@media (max-width: 768px) {
  .homebuilding-contents .contents .box--04 .listbox li {
    flex: none;
  }
  .homebuilding-contents .contents .box--04 .listbox li:not(:last-child) {
    border-bottom: 1px dashed black;
    padding-bottom: 2.4rem;
    margin-bottom: 2.4rem;
  }
}
.homebuilding-contents .contents .box--04 .listbox li h4 {
  text-align: center;
  font-size: 1.8rem;
  margin-bottom: 1.6rem;
}
.homebuilding-contents .contents .box--04 .listbox li .itemtitle {
  text-align: center;
  font-weight: var(--fontbold);
  font-size: clamp(1.6rem, 1.0416666667vw, 2rem);
  line-height: 1.5;
  margin-bottom: clamp(0.5rem, 0.78125vw, 0.8rem);
}
@media (max-width: 768px) {
  .homebuilding-contents .contents .box--04 .listbox li .itemtitle {
    line-height: 1.875;
  }
}
.homebuilding-contents .contents .box--04 .listbox li .itemtitle b {
  font-family: var(--titlefont);
  font-size: clamp(3.5rem, 2.34375vw, 4.5rem);
  line-height: 0.6666666667;
}
@media (max-width: 768px) {
  .homebuilding-contents .contents .box--04 .listbox li .itemtitle b {
    line-height: 0.8571428571;
  }
}
.homebuilding-contents .contents .box--04 .listbox li .arrow svg {
  transform: rotate(90deg);
  width: clamp(1.5rem, 1.0416666667vw, 2rem);
  margin: 0 auto 0.8rem;
}
.homebuilding-contents .contents .box--05 .textbox {
  margin-bottom: clamp(2.4rem, 3.90625vw, 4rem);
}
.homebuilding-contents .contents .box--05 .caps {
  margin-bottom: clamp(3.2rem, 6.25vw, 6.4rem);
}
@media (max-width: 768px) {
  .homebuilding-contents .contents .box--05 .caps {
    display: block;
  }
}
@media (max-width: 768px) {
  .homebuilding-contents .contents .box--05 .caps .cap {
    width: auto;
  }
  .homebuilding-contents .contents .box--05 .caps .cap:not(:last-of-type) {
    margin-bottom: 0.8rem;
  }
}
.homebuilding-contents .contents .box--05 .caps .cap p {
  font-size: 1.3rem;
  font-weight: var(--fontnormal);
  padding-top: 1rem;
}
.homebuilding-contents .contents .box--06 .cap {
  width: 100%;
  max-width: 63.3rem;
  margin: auto;
  padding: 1.6rem 0 6.4rem;
}
@media (max-width: 768px) {
  .homebuilding-contents .contents .box--06 .cap {
    padding: 0;
    max-width: none;
    margin-bottom: 3.2rem;
  }
}
.homebuilding-contents .contents .box--06 .point {
  margin-bottom: clamp(3.2rem, 4.1666666667vw, 8rem);
}
.homebuilding-contents .contents .box--06 .btns {
  display: flex;
  gap: 2.4rem;
  font-size: 1.2rem;
  line-height: 1.7;
  font-weight: var(--fontnormal);
}
@media (max-width: 768px) {
  .homebuilding-contents .contents .box--06 .btns {
    display: block;
  }
}
.homebuilding-contents .contents .box--06 .btns--box {
  flex: 0 0 calc((100% - clamp(1.56rem, 1.25vw, 2.4rem) * 2) / 3);
}
@media (max-width: 768px) {
  .homebuilding-contents .contents .box--06 .btns--box {
    flex-direction: column-reverse;
    display: flex;
  }
  .homebuilding-contents .contents .box--06 .btns--box:not(:last-of-type) {
    margin-bottom: 2.4rem;
  }
  .homebuilding-contents .contents .box--06 .btns--box p {
    margin-bottom: 1.6rem;
  }
}
.homebuilding-contents .contents .box--06 .btns--box .box {
  margin-bottom: 1.6rem;
}
@media (max-width: 768px) {
  .homebuilding-contents .contents .box--06 .btns--box .box {
    margin-bottom: 0;
  }
}
.homebuilding-contents .contents .box--07 .capsbox {
  margin-bottom: 6.4rem;
}
.homebuilding-contents .contents .box--07 .itemtext {
  text-align: center;
  font-size: clamp(1.6rem, 1.0416666667vw, 2rem);
  line-height: 1.8;
  font-weight: var(--fontbold);
  margin-bottom: clamp(3.2rem, 3.3333333333vw, 6.4rem);
}
@media (max-width: 768px) {
  .homebuilding-contents .contents .box--07 .itemtext {
    text-align: left;
    line-height: 1.8;
  }
}
.homebuilding-contents .contents .box--07 .btns {
  display: flex;
  justify-content: center;
  gap: 2.4rem;
  font-size: 1.2rem;
  line-height: 1.7;
  font-weight: var(--fontnormal);
}
@media (max-width: 768px) {
  .homebuilding-contents .contents .box--07 .btns {
    display: block;
  }
}
.homebuilding-contents .contents .box--07 .btns--box {
  flex: 0 0 calc((100% - clamp(1.56rem, 1.25vw, 2.4rem) * 2) / 3);
}
.homebuilding-contents .contents .box--07 .btns--box .box {
  margin-bottom: 1.6rem;
}
.homebuilding-contents .contents .box--08 {
  margin-bottom: 0;
}
.homebuilding-contents .contents .box--08 .cap {
  margin-inline: auto;
  width: clamp(32.7rem, 77.5710088149vw, 79.2rem);
}
.homebuilding-contents .contents .box--08 .itemtext {
  text-align: center;
  font-size: clamp(1.6rem, 1.0416666667vw, 2rem);
  line-height: 1.8;
  font-weight: var(--fontbold);
}
.homebuilding-contents .contents .box--08 .caps {
  padding: clamp(2.4rem, 3.3333333333vw, 6.4rem) 0;
}
@media (max-width: 768px) {
  .homebuilding-contents .contents .box--08 .caps {
    gap: 0.8rem;
  }
}
.homebuilding-contents .contents .point {
  background: url(../../dist/images/common/line.png) repeat-x left bottom/15.3rem, url(../../dist/images/common/line.png) repeat-x left top/15.3rem;
  position: relative;
  padding: clamp(2.4rem, 2.0833333333vw, 4rem) clamp(2.4rem, 2.0833333333vw, 4rem) clamp(3.2rem, 2.5vw, 4.8rem);
}
.homebuilding-contents .contents .point:before, .homebuilding-contents .contents .point:after {
  content: "";
  position: absolute;
  top: 0;
  width: clamp(0.26rem, 0.2083333333vw, 0.4rem);
  height: 100%;
  background: url(../../dist/images/common/lineleft.png) repeat-y left top/cover;
}
.homebuilding-contents .contents .point:before {
  left: 0;
}
.homebuilding-contents .contents .point:after {
  right: 0;
}
.homebuilding-contents .contents .point--title {
  font-size: 2rem;
  font-weight: var(--fontbold);
  font-family: var(--titlefont);
  margin-bottom: clamp(1.6rem, 1.25vw, 2.4rem);
}
.homebuilding-contents .contents .point--title:before {
  content: url(../../dist/images/wood/icon-point.svg);
  vertical-align: sub;
  padding-right: 0.8rem;
}
.homebuilding-contents .contents .point--list {
  font-weight: var(--fontnormal);
  line-height: 1.8;
}
.homebuilding-contents .contents .point--list .checktitle {
  margin-bottom: 0.8rem;
  font-size: clamp(1.6rem, 0.9375vw, 1.8rem);
  line-height: 1.3333333333;
  font-weight: var(--fontbold);
}
@media (max-width: 768px) {
  .homebuilding-contents .contents .point--list .checktitle {
    line-height: 1.5;
  }
}
.homebuilding-contents .contents .point--list .checktitle:before {
  content: url(../../dist/images/performance/icon-check.svg);
  padding-right: 0.4rem;
}
@media (max-width: 768px) {
  .homebuilding-contents .contents .point--list .checktitle:before {
    padding-right: 0.8rem;
  }
}
.homebuilding-contents .contents .point--list:not(:last-child) {
  padding-bottom: clamp(1.6rem, 1.25vw, 2.4rem);
  margin-bottom: clamp(1.6rem, 1.25vw, 2.4rem);
  border-bottom: 1px dashed black;
}
.homebuilding-contents .contents .caps {
  display: flex;
  gap: 3.2rem;
}
.homebuilding-contents .contents .caps .cap {
  width: 50%;
}
.homebuilding-contents .contents .capsbox {
  display: flex;
  align-items: flex-start;
  flex-direction: row-reverse;
  justify-content: space-between;
  gap: clamp(4.16rem, 3.3333333333vw, 6.4rem);
}
@media (max-width: 768px) {
  .homebuilding-contents .contents .capsbox {
    display: block;
  }
}
.homebuilding-contents .contents .capsbox--item {
  flex-direction: row;
}
@media (max-width: 768px) {
  .homebuilding-contents .contents .capsbox--item .textbox {
    margin-bottom: 2.4rem;
  }
}
.homebuilding-contents .contents .capsbox .textbox {
  width: calc(100% - clamp(26rem, 20.8333333333vw, 40rem));
}
@media (max-width: 768px) {
  .homebuilding-contents .contents .capsbox .textbox {
    width: auto;
  }
}
.homebuilding-contents .contents .capsbox .textbox .item-dl {
  margin-bottom: clamp(1.6rem, 1.3020833333vw, 2.5rem);
}
.homebuilding-contents .contents .capsbox .capbox {
  width: calc(100% - clamp(34.84rem, 27.9166666667vw, 53.6rem));
  font-size: 1.3rem;
  font-weight: var(--fontnormal);
}
@media (max-width: 768px) {
  .homebuilding-contents .contents .capsbox .capbox {
    width: auto;
  }
}
.homebuilding-contents .contents .capsbox .capbox .cap {
  margin-bottom: 1rem;
}
.homebuilding-contents .contents .capsbox .capbox .text {
  text-align: center;
  font-size: clamp(1.2rem, 0.78125vw, 1.5rem);
  line-height: 1.7333333333;
  font-weight: var(--fontbold);
  margin-bottom: clamp(1.7rem, 1.0416666667vw, 2rem);
}
@media (max-width: 768px) {
  .homebuilding-contents .contents .capsbox .capbox .text {
    line-height: 1.75;
  }
}
.homebuilding-contents .contents .item-dl {
  display: flex;
  align-items: center;
  gap: 0.8rem;
}
.homebuilding-contents .contents .item-dl dd {
  font-size: 2rem;
  line-height: 1.5;
  font-weight: var(--fontbold);
}
.homebuilding-contents .contents .item-dl dt {
  padding-inline: 1.2rem;
  display: flex;
  align-items: center;
  justify-content: center;
  height: 2.8rem;
  border: 1px solid black;
  font-size: 1.1rem;
}
@media (max-width: 768px) {
  .homebuilding-contents .contents--specification {
    margin-inline: 2.4rem;
  }
}
@media (max-width: 768px) {
  .homebuilding-contents .contents--performance {
    margin-inline: 2.4rem;
  }
}
.homebuilding-contents .contents--performance .itembox {
  display: flex;
  gap: 3.2rem;
  padding-top: clamp(3.2rem, 2.0833333333vw, 4rem);
  position: relative;
}
@media (max-width: 768px) {
  .homebuilding-contents .contents--performance .itembox {
    display: grid;
    grid-template-rows: auto auto auto;
    gap: initial;
  }
}
.homebuilding-contents .contents--performance .itembox:after {
  content: "";
  width: clamp(5rem, 6.3663075416vw, 6.5rem);
  height: clamp(5rem, 6.3663075416vw, 6.5rem);
  position: absolute;
  background: url(../../dist/images/performance/icon-cross.png) no-repeat center center/contain;
  left: 0;
  right: 0;
  margin: auto;
  top: 50%;
  transform: translateY(-50%);
  margin-top: 3.2rem;
}
@media (max-width: 768px) {
  .homebuilding-contents .contents--performance .itembox:after {
    position: static;
    transform: none;
    margin: -1.5rem auto;
    grid-row: 2;
  }
}
.homebuilding-contents .contents--performance .itembox--contents {
  width: calc(50% - 1.6rem);
  padding: clamp(2.4rem, 2.0833333333vw, 4rem) clamp(2.4rem, 2.0833333333vw, 4rem) clamp(3.46rem, 2.0833333333vw, 4rem);
  background: url(../../dist/images/common/line.png) repeat-x left bottom/15.3rem, url(../../dist/images/common/line.png) repeat-x left top/15.3rem;
  position: relative;
  font-weight: var(--fontnormal);
}
@media (max-width: 768px) {
  .homebuilding-contents .contents--performance .itembox--contents {
    width: auto;
  }
  .homebuilding-contents .contents--performance .itembox--contents:nth-of-type(1) {
    grid-row: 1;
  }
  .homebuilding-contents .contents--performance .itembox--contents:nth-of-type(2) {
    grid-row: 3;
  }
}
.homebuilding-contents .contents--performance .itembox--contents:before, .homebuilding-contents .contents--performance .itembox--contents:after {
  content: "";
  position: absolute;
  top: 0;
  width: clamp(0.26rem, 0.2083333333vw, 0.4rem);
  height: 100%;
  background: url(../../dist/images/common/lineleft.png) repeat-y left top/cover;
}
.homebuilding-contents .contents--performance .itembox--contents:before {
  left: 0;
}
.homebuilding-contents .contents--performance .itembox--contents:after {
  right: 0;
}
.homebuilding-contents .contents--performance .itembox--contents .cap {
  margin-bottom: clamp(1.6rem, 1.25vw, 2.4rem);
}
.homebuilding-contents .contents--performance .itembox--contents h3 {
  font-size: clamp(1.6rem, 1.0416666667vw, 2rem);
  line-height: 1.5;
  font-weight: var(--fontbold);
  margin-bottom: clamp(0.8rem, 0.8333333333vw, 1.6rem);
}
@media (max-width: 768px) {
  .homebuilding-contents .contents--performance .itembox--contents h3 {
    line-height: 1.6;
  }
}
.homebuilding-contents .contents--performance .itembox--contents p.txt {
  font-size: clamp(1.3rem, 0.78125vw, 1.5rem);
  line-height: 1.7;
  margin-bottom: 2.4rem;
}
@media (max-width: 768px) {
  .homebuilding-contents .contents--performance .itembox--contents p.txt {
    line-height: 1.6;
  }
}
.homebuilding-contents .contents--performance .itembox--contents ul li:not(:last-child) {
  margin-bottom: 0.8rem;
}
.homebuilding-contents .contents--performance .itembox--contents ul li dl {
  display: flex;
  align-items: flex-start;
  gap: 0.8rem;
}
.homebuilding-contents .contents--performance .itembox--contents ul li dl dt {
  width: clamp(5.3rem, 5.582761998vw, 5.7rem);
  border: 1px solid black;
  min-height: 2.8rem;
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 1.1rem;
}
.homebuilding-contents .contents--performance .itembox--contents ul li dl dd {
  width: calc(100% - clamp(5.3rem, 2.96875vw, 5.7rem) - 0.8rem);
  font-size: clamp(1.3rem, 1.3671875vw, 1.4rem);
}
@media (max-width: 768px) {
  .homebuilding-contents .contents--performance .itembox--contents ul li dl dd {
    font-size: 1.3rem;
    line-height: 1.6;
    margin-top: 0.4rem;
  }
}

@media (max-width: 768px) {
  .scrolltable {
    max-width: 100%;
    white-space: nowrap;
    overflow-x: scroll;
  }
  .scrolltable table {
    width: 70rem;
  }
}

/* ======================================
page-structure
====================================== */
@media (max-width: 768px) {
  #page-structure .contents {
    margin-inline: 2.4rem;
  }
}
@media (max-width: 768px) {
  #page-structure .homebuilding-contents .headbox {
    margin-inline: 2.4rem;
  }
}
@media (max-width: 768px) and (max-width: 768px) {
  #page-structure .homebuilding-contents .headbox .tabsbox {
    margin-inline: initial;
  }
}
@media (max-width: 768px) {
  #page-structure .homebuilding-contents .headbox .tabsbox .box {
    justify-content: center;
  }
}
#page-structure .homebuilding-contents .headbox .titles {
  margin-bottom: 1.6rem;
}
@media (max-width: 768px) {
  #page-structure .homebuilding-contents .headbox .titles .text {
    font-size: 2.4rem;
  }
}
#page-structure .homebuilding-contents .headbox .lead {
  font-size: clamp(1.2rem, 0.7291666667vw, 1.4rem);
  line-height: 1.8;
  margin-bottom: clamp(2.4rem, 2.0833333333vw, 4rem);
  font-weight: var(--fontnormal);
}
@media (max-width: 768px) {
  #page-structure .homebuilding-contents .headbox .lead {
    line-height: 0.6666666667;
  }
}
#page-structure .homebuilding-contents .headbox .textbox {
  text-align: left;
  font-weight: var(--fontnormal);
  line-height: 2;
  margin-bottom: clamp(2.4rem, 3.3333333333vw, 6.4rem);
}
@media (max-width: 768px) {
  #page-structure .homebuilding-contents .headbox .textbox {
    line-height: 1.8;
  }
}
#page-structure .homebuilding-contents .box--02 .textbox {
  margin-bottom: clamp(2.4rem, 2.0833333333vw, 4rem);
}
#page-structure .homebuilding-contents .box--02 .caps {
  margin-bottom: clamp(3.2rem, 3.3333333333vw, 6.4rem);
}
@media (max-width: 768px) {
  #page-structure .homebuilding-contents .box--02 .caps {
    display: block;
  }
  #page-structure .homebuilding-contents .box--02 .caps .cap {
    width: auto;
  }
  #page-structure .homebuilding-contents .box--02 .caps .cap:not(:last-of-type) {
    margin-bottom: 3.2rem;
  }
}
#page-structure .homebuilding-contents .box--02 .caps p {
  font-size: clamp(1.4rem, 0.78125vw, 1.5rem);
  line-height: 1.8;
  font-weight: var(--fontnormal);
}
@media (max-width: 768px) {
  #page-structure .homebuilding-contents .box--02 .caps p {
    line-height: 1.8;
  }
}
#page-structure .homebuilding-contents .box--02 .caps .item-dl {
  margin-bottom: 1.6rem;
}
#page-structure .homebuilding-contents .box--02 .caps .item-dl small {
  font-size: clamp(1.1rem, 0.625vw, 1.2rem);
}
#page-structure .homebuilding-contents .box--02 .caps .item {
  margin-bottom: clamp(1.6rem, 1.25vw, 2.4rem);
}
#page-structure .homebuilding-contents .box--02 .moviebox h3 {
  text-align: center;
  font-size: clamp(1.4rem, 1.5612802498vw, 2rem);
  font-weight: var(--fontbold);
  line-height: 1.5;
  margin-bottom: clamp(0.8rem, 0.8333333333vw, 1.6rem);
}
@media (max-width: 768px) {
  #page-structure .homebuilding-contents .box--02 .moviebox h3 {
    line-height: 1.5;
  }
}
#page-structure .homebuilding-contents .box--02 .moviebox .movie {
  width: clamp(37.5rem, 62.4512099922vw, 80rem);
  margin: 0 auto clamp(4.8rem, 5vw, 9.6rem);
  position: relative;
  padding-top: 49.262rem;
}
@media (max-width: 768px) {
  #page-structure .homebuilding-contents .box--02 .moviebox .movie {
    width: auto;
    padding-top: 20rem;
  }
}
#page-structure .homebuilding-contents .box--02 .moviebox .movie iframe {
  position: absolute;
  left: 0;
  right: 0;
  top: 0;
  bottom: 0;
  width: 100%;
  height: 100%;
}
#page-structure .homebuilding-contents .box--02 .mokuji {
  margin-bottom: clamp(3.2rem, 2.9166666667vw, 5.6rem);
}
@media (max-width: 768px) {
  #page-structure .homebuilding-contents .box--02 .mokuji {
    width: 100vw;
    margin-left: -2.4rem;
  }
}
#page-structure .homebuilding-contents .box--02 .mokuji .box {
  margin-bottom: 0;
}
#page-structure .homebuilding-contents .box--02 .mokuji--title {
  font-size: clamp(1.8rem, 1.1458333333vw, 2.2rem);
  font-weight: var(--fontbold);
  line-height: 1.8;
}
@media (max-width: 768px) {
  #page-structure .homebuilding-contents .box--02 .mokuji--title {
    line-height: 1.6;
  }
}
#page-structure .homebuilding-contents .box--02 .mokuji li {
  border-bottom: 1px dashed #000000;
  padding-bottom: 1.6rem;
  position: relative;
  z-index: 2;
}
#page-structure .homebuilding-contents .box--02 .mokuji li:not(:last-child) {
  margin-bottom: 1.6rem;
}
#page-structure .homebuilding-contents .box--02 .mokuji li dl {
  display: flex;
  align-items: center;
  font-size: clamp(1.3rem, 1.5625vw, 1.6rem);
  font-weight: var(--fontnormal);
  line-height: 1.8;
  gap: clamp(0.8rem, 1.5625vw, 1.6rem);
}
@media (max-width: 768px) {
  #page-structure .homebuilding-contents .box--02 .mokuji li dl {
    line-height: 1.6;
  }
}
#page-structure .homebuilding-contents .box--02 .mokuji li dl dt {
  width: clamp(8rem, 13.5294117647vw, 11.5rem);
  border: 1px solid black;
  display: flex;
  align-items: center;
  justify-content: center;
  height: clamp(2.8rem, 3.02734375vw, 3.1rem);
  background-color: white;
  font-size: clamp(1.1rem, 1.26953125vw, 1.3rem);
  line-height: 1;
}
@media (max-width: 768px) {
  #page-structure .homebuilding-contents .box--02 .mokuji li dl dt {
    height: auto;
    text-align: center;
    padding: 0.6rem 1rem;
    line-height: 1.2;
  }
}
#page-structure .homebuilding-contents .box--02 .mokuji li dl dd {
  width: calc(100% - clamp(8rem, 13.5294117647vw, 11.5rem) - clamp(0.8rem, 1.5625vw, 1.6rem));
}
#page-structure .homebuilding-contents .box--02 .bottombox {
  display: flex;
  justify-content: center;
  align-items: center;
  gap: 6.4rem;
}
@media (max-width: 768px) {
  #page-structure .homebuilding-contents .box--02 .bottombox {
    display: block;
  }
}
#page-structure .homebuilding-contents .box--02 .bottombox .btn {
  width: 28rem;
}
@media (max-width: 768px) {
  #page-structure .homebuilding-contents .box--02 .bottombox .btn {
    width: auto;
  }
}
#page-structure .homebuilding-contents .box--02 .bottombox .btn--box {
  margin-bottom: 0;
}
#page-structure .homebuilding-contents .box--02 .bottombox .textbopx {
  width: 50rem;
  font-weight: var(--fontnormal);
}
@media (max-width: 768px) {
  #page-structure .homebuilding-contents .box--02 .bottombox .textbopx {
    width: auto;
    margin-bottom: 2.4rem;
  }
}
#page-structure .homebuilding-contents .box--02 .bottombox .textbopx h4 {
  font-size: 2rem;
  margin-bottom: 1.6rem;
  font-family: var(--titlefont);
}
#page-structure .homebuilding-contents .box--02 .bottombox .textbopx p {
  font-size: clamp(1.4rem, 0.8333333333vw, 1.6rem);
  line-height: 2;
}
@media (max-width: 768px) {
  #page-structure .homebuilding-contents .box--02 .bottombox .textbopx p {
    line-height: 1.8;
  }
}
#page-structure .homebuilding-contents .box--03 .capsbox {
  margin-bottom: clamp(2.4rem, 6.25vw, 6.4rem);
}
#page-structure .homebuilding-contents .box--03 .caps--top {
  margin-bottom: clamp(2.4rem, 3.3333333333vw, 6.4rem);
}
@media (max-width: 768px) {
  #page-structure .homebuilding-contents .box--03 .caps--top {
    display: block;
  }
  #page-structure .homebuilding-contents .box--03 .caps--top .cap {
    width: auto;
  }
  #page-structure .homebuilding-contents .box--03 .caps--top .cap:not(:last-of-type) {
    margin-bottom: 3.2rem;
  }
}
#page-structure .homebuilding-contents .box--03 .caps--top .item {
  margin-bottom: 2.4rem;
}
#page-structure .homebuilding-contents .box--03 .caps--top small {
  font-size: 1.3rem;
  line-height: 1.5;
}
@media (max-width: 768px) {
  #page-structure .homebuilding-contents .box--03 .caps--bottom {
    gap: 0.1rem;
  }
}
#page-structure .homebuilding-contents .box--03 .caps--bottom .item {
  margin-bottom: clamp(0.5rem, 0.5208333333vw, 1rem);
}
#page-structure .homebuilding-contents .box--03 .caps {
  font-size: clamp(1.4rem, 0.78125vw, 1.5rem);
  line-height: 1.8;
  font-weight: var(--fontnormal);
}
@media (max-width: 768px) {
  #page-structure .homebuilding-contents .box--03 .caps {
    line-height: 1.6;
  }
}
#page-structure .homebuilding-contents .box--03 .caps .itemtxt {
  font-size: clamp(1.5rem, 0.9375vw, 1.8rem);
  line-height: 1.5;
  margin-bottom: clamp(0.8rem, 0.8333333333vw, 1.6rem);
}
@media (max-width: 768px) {
  #page-structure .homebuilding-contents .box--03 .caps .itemtxt {
    line-height: 1.5;
  }
}
#page-structure .homebuilding-contents .box--04 {
  margin-bottom: 0;
}
#page-structure .homebuilding-contents .box--04 .capsbox {
  margin-bottom: 0;
}
#page-structure .homebuilding-contents .box--04 .colortable {
  margin-bottom: clamp(4rem, 3.3333333333vw, 6.4rem);
}
@media (max-width: 768px) {
  #page-structure .homebuilding-contents .box--04 .colortable {
    table-layout: fixed;
    width: 70rem;
  }
}
#page-structure .homebuilding-contents .box--04 .colortable .item-th01, #page-structure .homebuilding-contents .box--04 .colortable .item-th02 {
  width: 27.3rem;
}
@media (max-width: 768px) {
  #page-structure .homebuilding-contents .box--04 .colortable .item-th01, #page-structure .homebuilding-contents .box--04 .colortable .item-th02 {
    width: 33.3333333333%;
  }
}
#page-structure .homebuilding-contents .box--04 .colortable .none {
  width: 18.3rem;
}
#page-structure .homebuilding-contents .box--04 .colortable .cap {
  padding: 2.4rem;
  vertical-align: top;
}
@media (max-width: 768px) {
  #page-structure .homebuilding-contents .box--04 .colortable .cap {
    text-align: center;
  }
}
#page-structure .homebuilding-contents .box--04 .colortable .cap img {
  display: block;
  margin: auto;
  width: clamp(10rem, 11.71875vw, 22.5rem);
}
#page-structure .homebuilding-contents .box--04 .colortable .icon, #page-structure .homebuilding-contents .box--04 .colortable .txt {
  text-align: center;
  font-weight: var(--fontnormal);
}
#page-structure .homebuilding-contents .box--04 .colortable .icon {
  font-size: clamp(1.3rem, 1.5625vw, 3rem);
  line-height: 0.95;
}
#page-structure .homebuilding-contents .box--04 .colortable .txt {
  font-size: clamp(1.3rem, 0.78125vw, 1.5rem);
  line-height: 1.9;
  white-space: normal;
  word-break: break-word;
}

/* ======================================
#page-lineup
====================================== */
#page-lineup .lineindexbox {
  padding: 0;
}
@media (max-width: 768px) {
  #page-lineup .lineindexbox {
    margin-inline: 2.4rem;
  }
}
#page-lineup .lineindexbox .listbox:first-child {
  padding-top: 0;
  padding-bottom: clamp(3.64rem, 2.9166666667vw, 5.6rem);
  background-image: url(../images/common/line.png);
  background-repeat: repeat-x;
  background-position: bottom left;
  background-size: clamp(9.945rem, 7.96875vw, 15.3rem);
}

/* ======================================
.captureheader
====================================== */
body.page-template-template-lineup .pankuzu {
  margin-bottom: clamp(4.8rem, 6.25vw, 12rem);
}
@media (max-width: 768px) {
  body.page-template-template-lineup .pankuzu {
    margin-inline: 2.4rem;
  }
}
body.page-template-template-lineup .followbox .copytitle path {
  fill: white;
  transition: 0.5s;
}
body.page-template-template-lineup .followbox .snsbtn g {
  stroke: white;
  transition: 0.5s;
}
body.page-template-template-lineup .followbox .snsbtn path {
  fill: white;
  transition: 0.5s;
}
body.page-template-template-lineup .followbox.is-passed .copytitle path {
  fill: black;
}
body.page-template-template-lineup .followbox.is-passed .snsbtn g {
  stroke: black;
}
body.page-template-template-lineup .followbox.is-passed .snsbtn path {
  fill: black;
}
body.page-template-template-lineup #headbox .gmenu .entxt {
  color: white;
}
body.page-template-template-lineup #headbox rect, body.page-template-template-lineup #headbox path {
  fill: white;
}
body.page-template-template-lineup #headbox.is-passed .gmenu .entxt {
  color: black;
}
body.page-template-template-lineup #headbox.is-passed rect, body.page-template-template-lineup #headbox.is-passed path {
  fill: black;
}

.captureheader {
  position: relative;
  margin-bottom: 2.4rem;
  height: 100vh;
}
.captureheader .box {
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  z-index: 2;
  text-align: center;
  left: 0;
  right: 0;
  margin: auto;
  color: white;
}
@media (max-width: 768px) {
  .captureheader .box {
    padding-inline: 2.4rem;
  }
}
.captureheader .box .txt, .captureheader .box .titles {
  display: block;
}
.captureheader .box .txt {
  font-size: clamp(1.4rem, 1.5612802498vw, 2rem);
  line-height: 2;
  font-weight: var(--fontbold);
  margin-bottom: clamp(1.6rem, 1.6666666667vw, 3.2rem);
}
@media (max-width: 768px) {
  .captureheader .box .txt {
    line-height: 1.5;
  }
}
.captureheader .box .titles {
  line-height: 1;
}
.captureheader .box .titles .text {
  font-size: clamp(3rem, 4.9960967994vw, 6.4rem);
  line-height: 1.5;
  letter-spacing: 0.05em;
  font-family: var(--titlefont);
}
@media (max-width: 768px) {
  .captureheader .box .titles .text {
    line-height: 1.5;
  }
}
.captureheader .box .lead {
  font-size: clamp(1.4rem, 1.0416666667vw, 2rem);
  line-height: 2;
  padding-top: clamp(1.6rem, 1.6666666667vw, 3.2rem);
  position: relative;
  z-index: 2;
}
@media (max-width: 768px) {
  .captureheader .box .lead {
    line-height: 1.8;
    text-align: left;
    display: flex;
    justify-content: center;
  }
}
.captureheader .bg {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  z-index: -1;
  clip-path: inset(0);
}
.captureheader .bg .item {
  position: fixed;
  top: 0;
  width: 100%;
  height: 100%;
  background-size: cover;
  background-position: center;
  background-image: var(--pc-lineupbg);
}
@media (max-width: 768px) {
  .captureheader .bg .item {
    background-image: var(--sp-lineupbg);
  }
}
.captureheader.special-page {
  height: auto;
}
.captureheader.special-page .box.itembox {
  position: initial;
  left: auto;
  right: auto;
  top: auto;
  transform: translate(0);
  text-align: initial;
  height: 100vh;
  display: flex;
  align-items: center;
  justify-content: center;
  transition: max-height 1.2s ease, opacity 1.2s ease;
}
.captureheader.special-page .box.itembox.box--intro {
  max-height: 100vh;
  opacity: 1;
  transition: max-height 15.2s ease, opacity 0.8s ease;
}
.captureheader.special-page .box.itembox.box--intro.is-close {
  opacity: 0;
}
.captureheader.special-page .box.itembox.box--next {
  opacity: 0;
}
.captureheader.special-page .box.itembox.box--next.is-show {
  opacity: 1;
  height: 250vh;
}
.captureheader.special-page .fadetitle {
  color: white;
  opacity: 0;
  transition: opacity 3s;
  text-align: center;
  z-index: 2;
}
.captureheader.special-page .next-section {
  color: white;
  font-size: clamp(1.5rem, 1.958863859vw, 2rem);
  line-height: 2.4;
  font-weight: var(--fontbold);
}
.captureheader.special-page .next-section p:not(:last-of-type) {
  margin-bottom: clamp(3.2rem, 7.8354554358vw, 8rem);
}

body.is-scroll-ready {
  -webkit-overflow-scrolling: touch;
}
body.is-scroll-lock {
  overflow: hidden;
}

/* ======================================
.bgcolor
====================================== */
.bgcolor .inner {
  background: url(../../dist/images/exterior/bg.jpg);
  background-size: 1.9rem;
  padding: 2.4rem 2.4rem 2.37rem 2.4rem;
}
.bgcolor .inner div.box {
  background-color: white;
  padding: 3.3rem 8.9rem 3.44rem 4.9rem;
}

.bgcolorglay {
  background: url(../../dist/images/exterior/construction-bg.jpg);
  background-size: 5rem;
}

/* ======================================
.informationbox
====================================== */
.informationbox {
  margin-inline: 2.4rem;
}
@media (max-width: 768px) {
  .informationbox .inner {
    padding: 1.41rem 1.4rem 1.39rem;
  }
}
.informationbox .inner div.box {
  display: flex;
  align-items: center;
  gap: clamp(1.6rem, 3.3333333333vw, 6.4rem);
  justify-content: center;
  padding-inline: initial;
}
@media (max-width: 1021px) {
  .informationbox .inner div.box {
    display: block;
  }
}
@media (max-width: 768px) {
  .informationbox .inner div.box {
    padding: 1.99rem 2.79rem 2.38rem;
    display: block;
  }
}
.informationbox .inner div.box .cap {
  width: clamp(24.329rem, 28.6458333333vw, 55rem);
  margin: auto;
}
.informationbox .inner div.box .textbox {
  width: 40rem;
  margin: auto;
}
@media (max-width: 768px) {
  .informationbox .inner div.box .textbox {
    width: auto;
  }
  .informationbox .inner div.box .textbox .btn {
    width: auto;
  }
  .informationbox .inner div.box .textbox .btn--box {
    height: 6.5rem;
    border-radius: 999.9rem;
    text-align: center;
  }
}
.informationbox .inner div.box .textbox h3.titles {
  text-align: center;
  margin-bottom: clamp(1.6rem, 1.6666666667vw, 3.2rem);
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 1rem;
  white-space: nowrap;
}
.informationbox .inner div.box .textbox h3.titles:before {
  content: url(../../dist/images/common/information-itemleft.svg);
}
.informationbox .inner div.box .textbox h3.titles:after {
  content: url(../../dist/images/common/information-itemright.svg);
}
.informationbox .inner div.box .textbox h3.titles .text {
  font-family: var(--titlefont);
  font-size: clamp(1.8rem, 1.6666666667vw, 3.2rem);
  line-height: 1.39375;
  font-weight: var(--fontbold);
  position: relative;
}
@media (max-width: 768px) {
  .informationbox .inner div.box .textbox h3.titles .text {
    line-height: 1.3888888889;
  }
}

/* ======================================
page-exterior
====================================== */
#page-exterior .pagecontents .headbox {
  margin-bottom: clamp(4.8rem, 5vw, 9.6rem);
}
@media (max-width: 768px) {
  #page-exterior .pagecontents .headbox {
    margin-inline: 2.4rem;
  }
}
#page-exterior .pagecontents .headbox .textbox {
  text-align: left;
  font-weight: var(--fontnormal);
  line-height: 2;
}
@media (max-width: 768px) {
  #page-exterior .pagecontents .headbox .textbox {
    line-height: 1.8;
  }
}
#page-exterior .pagecontents .headbox .textbox p:not(:last-of-type) {
  margin-bottom: clamp(1.6rem, 1.25vw, 2.4rem);
}
#page-exterior .contents {
  margin-bottom: clamp(5.6rem, 8.3333333333vw, 16rem);
}
@media (max-width: 768px) {
  #page-exterior .contents {
    margin-inline: 2.4rem;
  }
}
#page-exterior .contents .box:not(:last-of-type) {
  margin-bottom: clamp(4.8rem, 4.9479166667vw, 9.5rem);
}
#page-exterior .contents .box--01 .capsbox {
  margin-bottom: clamp(3.2rem, 3.3333333333vw, 6.4rem);
}
#page-exterior .contents .box--01 .cap {
  margin-bottom: 0;
}
@media (max-width: 768px) {
  #page-exterior .contents .box--01 .cap {
    margin-bottom: 2.4rem;
  }
}
#page-exterior .contents .box--01 .colortable .item-th01, #page-exterior .contents .box--01 .colortable .item-td01 {
  border-right: 0;
}
#page-exterior .contents .box--01 .colortable td {
  font-weight: var(--fontnormal);
}
#page-exterior .contents .box--01 .itemlist {
  margin-bottom: clamp(1.6rem, 1.25vw, 2.4rem);
}
#page-exterior .contents .box .caplist {
  display: flex;
  align-items: flex-start;
  flex-wrap: wrap;
  gap: 4rem 2.4rem;
}
@media (max-width: 768px) {
  #page-exterior .contents .box .caplist {
    display: block;
  }
}
#page-exterior .contents .box .caplist li {
  flex: 0 0 calc((100% - 4.8rem) / 3);
  font-size: 1.4rem;
  line-height: 1.6;
  font-weight: var(--fontnormal);
}
@media (max-width: 768px) {
  #page-exterior .contents .box .caplist li {
    flex: none;
  }
  #page-exterior .contents .box .caplist li:not(:last-child) {
    margin-bottom: 4rem;
  }
}
#page-exterior .contents .box .caplist li .cap {
  margin-bottom: 1.6rem;
}
#page-exterior .contents .box .caplist li .cap img {
  width: 100%;
}
#page-exterior .contents .box .caplist li h4 {
  font-size: 1.8rem;
  line-height: 1.5;
  font-weight: var(--fontbold);
  margin-bottom: 1rem;
}
#page-exterior .bottombox {
  text-align: center;
  margin-bottom: clamp(11.62rem, 8.3333333333vw, 16rem);
  position: relative;
}
@media (max-width: 768px) {
  #page-exterior .bottombox {
    margin-inline: 2.4rem;
  }
}
#page-exterior .bottombox .cap {
  position: absolute;
}
@media (max-width: 768px) {
  #page-exterior .bottombox .cap {
    position: initial;
  }
}
#page-exterior .bottombox .cap--01 {
  left: clamp(0rem, 8.3333333333vw, 16rem);
  width: clamp(0rem, 18.2291666667vw, 35rem);
}
@media (max-width: 768px) {
  #page-exterior .bottombox .cap--01 {
    left: auto;
    width: auto;
    margin-bottom: 2.4rem;
  }
}
#page-exterior .bottombox .cap--02 {
  right: 0;
  width: clamp(26rem, 20.8333333333vw, 40rem);
  top: 0;
}
@media (max-width: 768px) {
  #page-exterior .bottombox .cap--02 {
    right: auto;
    width: auto;
    position: relative;
    padding-left: 10.9rem;
  }
}
#page-exterior .bottombox .cap--02:after {
  content: "";
  position: absolute;
  width: clamp(17.4rem, 15.625vw, 30rem);
  display: block;
  height: clamp(11.6rem, 10.4166666667vw, 20rem);
  background: url(../../dist/images/exterior/bottom-cap03.jpg) no-repeat center center/contain;
  left: clamp(-11.115rem, -8.90625vw, -17.1rem);
  top: clamp(14.82rem, 11.875vw, 22.8rem);
}
@media (max-width: 768px) {
  #page-exterior .bottombox .cap--02:after {
    left: 2.4rem;
    top: 10.4rem;
  }
}
#page-exterior .bottombox .btn {
  width: 32rem;
  margin: auto;
}
@media (max-width: 768px) {
  #page-exterior .bottombox .btn {
    width: auto;
    margin-bottom: 4rem;
  }
}
#page-exterior .bottombox .itemtext {
  font-size: 1.8rem;
  margin-bottom: 2.42rem;
}
#page-exterior .bottombox h3.titles {
  font-size: clamp(2.4rem, 2.0833333333vw, 4rem);
  font-family: var(--titlefont);
  line-height: 1;
  margin-bottom: clamp(2.4rem, 1.6666666667vw, 3.2rem);
}
#page-exterior .bottombox h3.titles .text {
  line-height: 1.5;
}
@media (max-width: 768px) {
  #page-exterior .bottombox h3.titles .text {
    line-height: 1.5;
  }
}
#page-exterior .bottombox .textbox {
  margin-bottom: clamp(2.4rem, 2.5vw, 4.8rem);
  font-size: clamp(1.4rem, 0.8333333333vw, 1.6rem);
  line-height: 2;
  font-weight: var(--fontnormal);
}
@media (max-width: 768px) {
  #page-exterior .bottombox .textbox {
    line-height: 1.8;
    text-align: left;
  }
}
#page-exterior .bottombox .textbox p:not(:last-of-type) {
  margin-bottom: clamp(1.6rem, 1.25vw, 2.4rem);
}
#page-exterior .construction {
  padding: clamp(4.8rem, 7.2916666667vw, 14rem) 0 clamp(5.56rem, 8.3333333333vw, 16rem);
  margin-bottom: clamp(4.8rem, 7.2916666667vw, 14rem);
}
@media (max-width: 768px) {
  #page-exterior .construction {
    padding-inline: 1.6rem;
  }
}
#page-exterior .construction h2.title {
  text-align: center;
  font-family: var(--tusunagifont);
  font-size: clamp(2.4rem, 2.0833333333vw, 4rem);
  line-height: 1;
  margin-bottom: clamp(3.2rem, 4.1666666667vw, 8rem);
  font-weight: var(--fontbold);
}
#page-exterior .construction .box:not(:last-of-type) {
  margin-bottom: clamp(4rem, 5vw, 9.6rem);
}
#page-exterior .construction .box .textbox {
  margin-bottom: clamp(3.2rem, 2.0833333333vw, 4rem);
  font-size: clamp(1.4rem, 0.8333333333vw, 1.6rem);
  line-height: 2;
  font-weight: var(--fontnormal);
}
@media (max-width: 768px) {
  #page-exterior .construction .box .textbox {
    line-height: 1.8;
  }
}
#page-exterior .construction .box .textbox .title {
  background: url(../../dist/images/common/line.png) repeat-x left bottom/15.9rem;
  padding-bottom: clamp(1rem, 0.8333333333vw, 1.6rem);
  margin-bottom: clamp(2.4rem, 1.6666666667vw, 3.2rem);
  display: flex;
  align-items: flex-start;
  flex-shrink: 1;
  gap: clamp(1rem, 1.0416666667vw, 2rem);
  font-size: clamp(1.8rem, 1.1458333333vw, 2.2rem);
  font-weight: var(--fontbold);
  line-height: 1.5;
}
@media (max-width: 768px) {
  #page-exterior .construction .box .textbox .title {
    line-height: 1.5;
  }
}
#page-exterior .construction .box .textbox .title .text {
  width: clamp(5.6rem, 4.21875vw, 8.1rem);
  height: clamp(2.7rem, 1.9791666667vw, 3.8rem);
  display: flex;
  align-items: center;
  justify-content: center;
  color: white;
  background-color: #000000;
  font-family: var(--titlefont);
  line-height: 1;
  font-size: clamp(1.4rem, 1.0416666667vw, 2rem);
}
#page-exterior .construction .box .textbox .title .text b {
  margin-top: -0.4rem;
}
@media (max-width: 768px) {
  #page-exterior .construction .box .textbox .title .text b {
    margin-top: -0.3rem;
  }
}
#page-exterior .construction .box .sliderArea {
  width: clamp(30.9rem, 64.012490242vw, 82rem);
  margin: auto;
}
#page-exterior .construction .box .sliderArea .slick-prev, #page-exterior .construction .box .sliderArea .slick-next {
  width: clamp(0.773rem, 1.0416666667vw, 2rem);
  height: clamp(1.471rem, 2.015625vw, 3.87rem);
}
#page-exterior .construction .box .sliderArea .slick-prev:before, #page-exterior .construction .box .sliderArea .slick-next:before {
  content: none;
}
#page-exterior .construction .box .sliderArea .slick-prev {
  left: -2.5rem;
}
@media (max-width: 768px) {
  #page-exterior .construction .box .sliderArea .slick-prev {
    left: -1rem;
  }
}
#page-exterior .construction .box .sliderArea .slick-next {
  right: -3.5rem;
}
@media (max-width: 768px) {
  #page-exterior .construction .box .sliderArea .slick-next {
    right: -1rem;
  }
}
#page-exterior .construction .box .sliderArea .slick-prev {
  background: url(../../dist/images/common/arrow-left.svg) no-repeat center center/contain;
}
#page-exterior .construction .box .sliderArea .slick-next {
  background: url(../../dist/images/common/arrow-right.svg) no-repeat center center/contain;
}
#page-exterior .construction .box .sliderArea .thumb_slider {
  margin-bottom: clamp(1.6rem, 1.25vw, 2.4rem);
}
#page-exterior .construction .box .sliderArea .thumb_slider div {
  margin-inline: 0.5rem;
  height: clamp(20.471rem, 41.3739266198vw, 53rem);
}
#page-exterior .construction .box .sliderArea .thumb_slider div img {
  width: 100%;
  height: 100%;
  object-fit: contain;
}
#page-exterior .construction .box .sliderArea .thumb div {
  margin-inline: 0.5rem;
  height: clamp(5.292rem, 7.0257611241vw, 9rem);
}
#page-exterior .construction .box .sliderArea .thumb div img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

/* ======================================
page-fireplace
====================================== */
#page-fireplace .contents .moviebox .movie {
  width: clamp(32.7rem, 41.6666666667vw, 80rem);
  margin: auto;
  padding-top: 34rem;
  position: relative;
  z-index: 2;
}
@media (max-width: 768px) {
  #page-fireplace .contents .moviebox .movie {
    aspect-ratio: 328/184;
    max-width: none;
    padding-top: inherit;
    margin-inline: 2.4rem;
  }
}
#page-fireplace .contents .moviebox .movie iframe {
  position: absolute;
  left: 0;
  right: 0;
  top: 0;
  bottom: 0;
  margin: auto;
  width: 100%;
  height: 100%;
}
#page-fireplace .contents .capsbox {
  display: flex;
  align-items: flex-start;
  gap: 9.6rem;
}
#page-fireplace .contents .capsbox .cap {
  max-width: 60rem;
}
@media (max-width: 768px) {
  #page-fireplace .contents .capsbox .cap {
    max-width: none;
    padding-right: calc(12.1rem + 2.4rem);
  }
}
#page-fireplace .contents .capsbox .textbox {
  width: 40.4rem;
  font-weight: var(--fontnormal);
  line-height: 2.4;
}
@media (max-width: 768px) {
  #page-fireplace .contents .capsbox .textbox {
    width: auto;
    padding-left: 9.1rem;
  }
}
#page-fireplace .contents .capsbox .textbox h3.titles {
  line-height: 1;
  margin-bottom: clamp(2.4rem, 1.6666666667vw, 3.2rem);
}
#page-fireplace .contents .capsbox .textbox h3.titles .text {
  line-height: 1.5;
  font-family: var(--titlefont);
  font-weight: var(--fontbold);
  font-size: clamp(2.8rem, 2.5vw, 4.8rem);
}
@media (max-width: 768px) {
  #page-fireplace .contents .capsbox .textbox h3.titles .text {
    line-height: 1.5;
  }
}
#page-fireplace .contents .capsbox .textbox p:not(:last-of-type) {
  margin-bottom: 2.4rem;
}
#page-fireplace .contents .textcontents h3.titles {
  line-height: 1;
  margin-bottom: clamp(2.4rem, 1.6666666667vw, 3.2rem);
}
#page-fireplace .contents .textcontents h3.titles .text {
  font-size: clamp(2.8rem, 2.5vw, 4.8rem);
  line-height: 1.5;
  font-family: var(--titlefont);
}
@media (max-width: 768px) {
  #page-fireplace .contents .textcontents h3.titles .text {
    line-height: 1.5;
  }
}
#page-fireplace .contents .textcontents .textbox {
  line-height: 2;
  font-weight: var(--fontnormal);
}
#page-fireplace .contents .textcontents .textbox p:not(:last-of-type) {
  margin-bottom: 2.4rem;
}
#page-fireplace .contents .textcontents {
  margin-inline: clamp(2.4rem, 5.2083333333vw, 10rem);
}
@media (max-width: 768px) {
  #page-fireplace .contents .textcontents {
    margin-inline: 2.4rem;
  }
}
#page-fireplace .contents--top .moviebox {
  margin-bottom: clamp(8rem, 10.4166666667vw, 20rem);
  position: relative;
}
#page-fireplace .contents--top .moviebox:after {
  content: "";
  width: clamp(66.04rem, 52.9166666667vw, 101.6rem);
  height: clamp(27.235rem, 21.8229166667vw, 41.9rem);
  position: absolute;
  background: url(../../dist/images/fireplace/bg.svg) no-repeat center center/contain;
  top: clamp(13.325rem, 10.6770833333vw, 20.5rem);
  left: 0;
  right: 0;
  margin: auto;
  transform: translateX(clamp(17.94rem, 14.375vw, 27.6rem));
}
@media (max-width: 768px) {
  #page-fireplace .contents--top .moviebox:after {
    content: none;
  }
}
#page-fireplace .contents--top .capsbox {
  align-items: flex-end;
  margin-bottom: clamp(4rem, 4.1666666667vw, 8rem);
}
@media (max-width: 768px) {
  #page-fireplace .contents--top .capsbox {
    margin-right: 2.4rem;
    display: block;
  }
}
#page-fireplace .contents--top .capsbox .cap {
  padding-bottom: clamp(3.2rem, 3.125vw, 6rem);
}
#page-fireplace .contents--top .textcontents {
  margin-bottom: clamp(4rem, 4.1666666667vw, 8rem);
}
#page-fireplace .contents--bottom {
  margin-bottom: clamp(5.6rem, 8.3333333333vw, 16rem);
}
#page-fireplace .contents--bottom .moviebox {
  margin-bottom: clamp(2.4rem, 2.9166666667vw, 5.6rem);
}
#page-fireplace .contents--bottom .textcontents--top {
  display: flex;
  align-items: flex-start;
  gap: 8rem;
  margin-bottom: clamp(5.6rem, 7.2916666667vw, 14rem);
}
@media (max-width: 768px) {
  #page-fireplace .contents--bottom .textcontents--top {
    display: block;
  }
}
#page-fireplace .contents--bottom .textcontents--top h3.titles {
  margin-bottom: 0;
}
#page-fireplace .contents--bottom .textcontents--top h3.titles .text {
  white-space: nowrap;
}
#page-fireplace .contents--bottom .textcontents--top .textbox {
  padding-top: clamp(2.4rem, 3.3333333333vw, 6.4rem);
}
#page-fireplace .contents--bottom .capsbox {
  margin-bottom: clamp(4rem, 7.2916666667vw, 14rem);
}
@media (max-width: 768px) {
  #page-fireplace .contents--bottom .capsbox {
    display: block;
    margin-inline: 2.4rem;
  }
  #page-fireplace .contents--bottom .capsbox .cap {
    padding: 0;
    margin-bottom: 2.4rem;
  }
}
#page-fireplace .contents--bottom .capsbox .textbox {
  width: 50.4rem;
}
@media (max-width: 768px) {
  #page-fireplace .contents--bottom .capsbox .textbox {
    width: auto;
    padding: 0;
  }
}
#page-fireplace .scroll-content img {
  max-width: clamp(41.6rem, 33.3333333333vw, 64rem);
  aspect-ratio: 640/425;
}
#page-fireplace .btncontents {
  padding: clamp(2.4rem, 2.9166666667vw, 5.6rem) 0 clamp(5.6rem, 7.2916666667vw, 14rem);
}
@media (max-width: 768px) {
  #page-fireplace .btncontents {
    padding-inline: 2.4rem;
  }
}
#page-fireplace .btncontents .itemtext {
  font-size: 1.8rem;
  margin-bottom: clamp(1.6rem, 1.2604166667vw, 2.42rem);
}
#page-fireplace .btncontents .btn {
  width: 32rem;
  margin: auto;
}
@media (max-width: 768px) {
  #page-fireplace .btncontents .btn {
    width: auto;
  }
}
#page-fireplace .faqbox {
  padding: clamp(4.8rem, 7.2916666667vw, 14rem) 0 clamp(5.6rem, 8.3333333333vw, 16rem);
  margin-bottom: clamp(4rem, 7.2916666667vw, 14rem);
}
@media (max-width: 768px) {
  #page-fireplace .faqbox {
    padding-inline: 2.4rem;
    margin-inline: inherit;
  }
}
#page-fireplace .faqbox h2.titles {
  text-align: center;
  font-size: clamp(2.4rem, 2.0833333333vw, 4rem);
  line-height: 1;
  margin-bottom: clamp(2.4rem, 2.9166666667vw, 5.6rem);
}
#page-fireplace .faqbox h2.titles .text {
  font-family: var(--titlefont);
  line-height: 1.5;
}
@media (max-width: 768px) {
  #page-fireplace .faqbox h2.titles .text {
    line-height: 1.5;
  }
}
#page-fireplace .bottombox {
  margin-bottom: clamp(9.57rem, 6.1458333333vw, 11.8rem);
  max-width: 104.8rem;
  margin-inline: auto;
  padding-inline: 2.4rem;
}
#page-fireplace .bottombox .box {
  position: relative;
  padding: clamp(2.4rem, 2.0833333333vw, 4rem) 0 clamp(4.3rem, 5.3645833333vw, 10.3rem);
}
#page-fireplace .bottombox .box:after {
  content: "";
  position: absolute;
  width: clamp(20rem, 12.890625vw, 24.75rem);
  height: clamp(8.889rem, 5.7291666667vw, 11rem);
  background: url(../../dist/images/fireplace/bottom-item.svg) no-repeat center center/contain;
  left: 0;
  right: 0;
  margin: auto;
  bottom: -4.5rem;
}
@media (max-width: 768px) {
  #page-fireplace .bottombox .box:after {
    bottom: -5.57rem;
  }
}
#page-fireplace .bottombox h3.titles {
  text-align: center;
  font-size: clamp(2.2rem, 2.0833333333vw, 4rem);
  font-weight: var(--fontbold);
  font-family: var(--titlefont);
  line-height: 1;
  margin-bottom: clamp(1.6rem, 1.6666666667vw, 3.2rem);
}
@media (max-width: 768px) {
  #page-fireplace .bottombox h3.titles .text {
    line-height: 1.5;
  }
}
#page-fireplace .bottombox .textbox {
  text-align: center;
  line-height: 2;
  position: relative;
}
@media (max-width: 768px) {
  #page-fireplace .bottombox .textbox {
    text-align: left;
    padding-inline: 2.4rem;
    font-size: 1.2rem;
    line-height: 1.8;
    display: flex;
    justify-content: center;
  }
}
#page-fireplace .bottombox .textbox:before {
  content: "";
  width: 6.9rem;
  height: 10.7rem;
  background: url(../../dist/images/fireplace/bottom-left.svg) no-repeat center center/contain;
  position: absolute;
  left: 11.1rem;
  top: -3.2rem;
}
@media (max-width: 768px) {
  #page-fireplace .bottombox .textbox:before {
    content: none;
  }
}
#page-fireplace .bottombox .textbox:after {
  content: "";
  width: 5.7rem;
  height: 9.1rem;
  background: url(../../dist/images/fireplace/bottom-right.svg) no-repeat center center/contain;
  position: absolute;
  right: 14.9rem;
  bottom: 1.5rem;
}
@media (max-width: 768px) {
  #page-fireplace .bottombox .textbox:after {
    content: none;
  }
}
@media (max-width: 768px) {
  #page-fireplace .columnsbox {
    margin-inline: 2.4rem;
  }
}
#page-fireplace .columnsbox h3.titles {
  font-size: 2.8rem;
  font-family: var(--titlefont);
  line-height: 1;
  margin-bottom: 4rem;
  background: url(../images/common/line.png) repeat-x left bottom/clamp(9.945rem, 7.96875vw, 15.3rem);
  padding-bottom: 1.6rem;
}
#page-fireplace .columnsbox h3.titles .text {
  line-height: 1.5;
}
#page-fireplace .columnsbox .list {
  display: flex;
  gap: 4rem;
}
@media (max-width: 768px) {
  #page-fireplace .columnsbox .list {
    display: block;
  }
}
#page-fireplace .columnsbox .list .newslist .box {
  justify-content: space-between;
  gap: clamp(1.6rem, 1.25vw, 2.4rem);
}
#page-fireplace .columnsbox .list .newslist .textbox {
  width: calc(100% - clamp(8rem, 8.3333333333vw, 16rem) - clamp(1.6rem, 1.25vw, 2.4rem));
}
#page-fireplace .columnsbox .list .newslist .textbox h3.title {
  margin-bottom: 0.8rem;
}
#page-fireplace .columnsbox .list .newslist .cap {
  max-width: clamp(8rem, 8.3333333333vw, 16rem);
}
#page-fireplace .columnsbox .list .newslist .cap img {
  aspect-ratio: 160/120;
  object-fit: cover;
}
@media (max-width: 768px) {
  #page-fireplace .columnsbox .list .newslist .cap img {
    aspect-ratio: 1;
  }
}

/* ======================================
page-standard-housing
====================================== */
#page-standard-housing .plancontents .btn {
  display: none;
}
@media (max-width: 768px) {
  #page-standard-housing .plancontents .btn {
    display: block;
    margin-inline: 5.2rem;
  }
}
#page-standard-housing .plancontents {
  background: url(../../dist/images/common/bgcolor-glay.jpg);
  background-size: 10rem;
  padding: clamp(4.8rem, 7.2916666667vw, 14rem) 0 clamp(5.63rem, 8.3333333333vw, 16rem);
  margin-bottom: clamp(4.8rem, 7.2916666667vw, 14rem);
}
@media (max-width: 768px) {
  #page-standard-housing .plancontents {
    padding-inline: 1.6rem;
  }
}
#page-standard-housing .plancontents h2.titles {
  font-family: var(--titlefont);
  font-size: clamp(2.8rem, 2.5vw, 4.8rem);
  text-align: center;
  margin-bottom: clamp(2.4rem, 2.0833333333vw, 4rem);
}
#page-standard-housing .plancontents h3.title {
  text-align: center;
  font-weight: var(--fontbold);
  font-size: clamp(1.5rem, 2.3506366308vw, 2.4rem);
  margin-bottom: clamp(0.8rem, 1.5670910872vw, 1.6rem);
}
#page-standard-housing .plancontents .lead {
  text-align: center;
  font-weight: var(--fontnormal);
  font-size: clamp(1.4rem, 1.2490241998vw, 1.6rem);
  margin-bottom: clamp(2.4rem, 3.1341821743vw, 3.2rem);
}
#page-standard-housing .plancontents .topcap {
  width: clamp(32.7rem, 52.0833333333vw, 100rem);
  margin-inline: auto;
  margin-bottom: clamp(2.4rem, 4.1666666667vw, 8rem);
  position: relative;
}
#page-standard-housing .plancontents .topcap:after {
  content: "";
  position: absolute;
}
#page-standard-housing .plancontents .box--01 {
  margin-bottom: clamp(4rem, 6.25vw, 12rem);
}
@media (max-width: 768px) {
  #page-standard-housing .plancontents .box--01 .topcap {
    margin-bottom: 8.38rem;
  }
}
#page-standard-housing .plancontents .box--01 .topcap:after {
  background: url(../../dist/images/standard-housing/plan-box01-cap-fukidashi.png) no-repeat center center/contain;
  width: clamp(18.4rem, 16.1979166667vw, 31.1rem);
  height: clamp(11rem, 9.6875vw, 18.6rem);
  left: 0;
  top: 50%;
  transform: translateY(-50%);
}
@media (max-width: 768px) {
  #page-standard-housing .plancontents .box--01 .topcap:after {
    background: url(../../dist/images/standard-housing/plan-box01-cap-fukidashi.png) no-repeat center center/contain;
    width: 18.4rem;
    height: 11rem;
    top: auto;
    transform: translateY(0);
    bottom: -5.98rem;
  }
}
#page-standard-housing .plancontents .box--01 .planlist > li:nth-child(1) {
  grid-area: 1/1/3/2;
}
#page-standard-housing .plancontents .box--01 .planlist > li:nth-child(2) {
  grid-area: 1/2/2/3;
}
#page-standard-housing .plancontents .box--01 .planlist > li:nth-child(3) {
  grid-area: 1/3/2/4;
}
#page-standard-housing .plancontents .box--01 .planlist > li:nth-child(4) {
  grid-area: 2/2/3/4;
}
#page-standard-housing .plancontents .box--01 .planlist > li:nth-child(5) {
  grid-area: 3/1/4/2;
}
#page-standard-housing .plancontents .box--01 .planlist > li:nth-child(6) {
  grid-area: 3/2/4/3;
}
#page-standard-housing .plancontents .box--01 .planlist > li:nth-child(7) {
  grid-area: 3/3/4/4;
}
#page-standard-housing .plancontents .box--02 {
  margin-bottom: clamp(4rem, 6.25vw, 12rem);
}
@media (max-width: 768px) {
  #page-standard-housing .plancontents .box--02 .topcap {
    margin-bottom: 6.76rem;
  }
}
#page-standard-housing .plancontents .box--02 .topcap:after {
  background: url(../../dist/images/standard-housing/plan-box02-cap-fukidashi.png) no-repeat center center/contain;
  width: 27.9rem;
  height: 16.6rem;
  left: 0;
  bottom: 0;
  width: clamp(17.6rem, 14.53125vw, 27.9rem);
  height: clamp(10.4rem, 8.6458333333vw, 16.6rem);
  left: 50%;
  transform: translateX(-50%);
  top: 14rem;
  margin-left: -2.8rem;
}
@media (max-width: 768px) {
  #page-standard-housing .plancontents .box--02 .topcap:after {
    background: url(../../dist/images/standard-housing/plan-box02-cap-fukidashi_sp.png) no-repeat center center/contain;
    width: 17.6rem;
    height: 10.4rem;
    top: auto;
    transform: translate(0);
    left: 3rem;
    bottom: -4.4rem;
  }
}
#page-standard-housing .plancontents .box--02 .planlist > li:nth-child(1) {
  grid-area: 1/3/2/4;
}
#page-standard-housing .plancontents .box--02 .planlist > li:nth-child(2) {
  grid-area: 3/1/4/2;
}
#page-standard-housing .plancontents .box--02 .planlist > li:nth-child(3) {
  grid-area: 2/2/3/4;
}
#page-standard-housing .plancontents .box--02 .planlist > li:nth-child(4) {
  grid-area: 1/1/3/2;
}
#page-standard-housing .plancontents .box--02 .planlist > li:nth-child(5) {
  grid-area: 1/2/2/3;
}
#page-standard-housing .plancontents .box--02 .planlist > li:nth-child(6) {
  grid-area: 3/2/4/3;
}
#page-standard-housing .plancontents .box--02 .planlist > li:nth-child(7) {
  grid-area: 3/3/4/4;
}
#page-standard-housing .plancontents .box--03 h3.title {
  margin-bottom: clamp(2.4rem, 3.1341821743vw, 3.2rem);
}
#page-standard-housing .plancontents .box--03 .topcap {
  margin-bottom: 0;
}
#page-standard-housing .plancontents .box--03 .topcap:after {
  background: url(../../dist/images/standard-housing/plan-box03-cap-fukidashi.png) no-repeat center center/contain;
  width: clamp(14.8rem, 14.53125vw, 27.9rem);
  height: clamp(8.8rem, 8.6458333333vw, 16.6rem);
  left: 50%;
  transform: translateX(-50%);
  top: 14rem;
  margin-left: -2.8rem;
}
@media (max-width: 768px) {
  #page-standard-housing .plancontents .box--03 .topcap:after {
    background: url(../../dist/images/standard-housing/plan-box03-cap-fukidashi_sp.png) no-repeat center center/contain;
    width: 14.8rem;
    height: 8.8rem;
    top: 7rem;
    margin-left: -2rem;
  }
}
#page-standard-housing .plancontents .planlist {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  grid-template-rows: repeat(3, 1fr);
  grid-row-gap: 0.8rem;
  grid-column-gap: 0.8rem;
}
@media (max-width: 768px) {
  #page-standard-housing .plancontents .planlist {
    display: block;
    margin-bottom: 2.4rem;
  }
  #page-standard-housing .plancontents .planlist.is-open li {
    display: block;
  }
}
#page-standard-housing .plancontents .planlist li {
  position: relative;
}
@media (max-width: 768px) {
  #page-standard-housing .plancontents .planlist li {
    display: none;
  }
  #page-standard-housing .plancontents .planlist li:nth-child(-n+3) {
    display: block;
  }
  #page-standard-housing .plancontents .planlist li:not(:last-child) {
    margin-bottom: 1.6rem;
  }
}
#page-standard-housing .plancontents .planlist li:before {
  content: "";
  width: 100%;
  height: 20rem;
  background: linear-gradient(rgba(0, 0, 0, 0) 0%, #000 100%);
  opacity: 0.5;
  position: absolute;
  left: 0;
  bottom: 0;
}
#page-standard-housing .plancontents .planlist li .cap,
#page-standard-housing .plancontents .planlist li figure, #page-standard-housing .plancontents .planlist li picture {
  width: 100%;
  height: 100%;
}
#page-standard-housing .plancontents .planlist li .txt {
  font-size: clamp(1.4rem, 1.2490241998vw, 1.6rem);
  font-weight: var(--fontbold);
  color: white;
  position: absolute;
  left: 2.4rem;
  bottom: 2.4rem;
}
#page-standard-housing .plancontents .planlist li .number {
  position: absolute;
  left: 0;
  top: 0;
  width: 4rem;
  height: 4rem;
  display: flex;
  align-items: center;
  justify-content: center;
  background-color: black;
  color: white;
  font-family: var(--titlefont);
  font-weight: var(--fontbold);
  font-size: 2.3rem;
}
@media (max-width: 768px) {
  #page-standard-housing .plancontents .planlist li .number {
    width: 3.5rem;
    height: 3.5rem;
    font-size: 2rem;
  }
}
#page-standard-housing .plancontents .planlist li img {
  object-fit: cover;
  width: 100%;
  height: 100%;
  display: block;
}
#page-standard-housing .moviebox .movie {
  width: clamp(32.7rem, 62.4512099922vw, 80rem);
  margin: auto;
  padding-top: clamp(18.4rem, 35.1288056206vw, 45rem);
  position: relative;
  z-index: 2;
}
#page-standard-housing .moviebox .movie iframe {
  position: absolute;
  left: 0;
  right: 0;
  top: 0;
  bottom: 0;
  margin: auto;
  width: 100%;
  height: 100%;
}
#page-standard-housing .contents {
  margin-bottom: clamp(5.6rem, 8.3333333333vw, 16rem);
}
@media (max-width: 768px) {
  #page-standard-housing .contents {
    margin-inline: 2.4rem;
  }
}
#page-standard-housing .contents .box .textbox {
  line-height: 2;
  font-weight: var(--fontnormal);
}
@media (max-width: 768px) {
  #page-standard-housing .contents .box .textbox {
    line-height: 1.8;
  }
}
#page-standard-housing .contents .box .textbox p:not(:last-of-type) {
  margin-bottom: clamp(1.6rem, 1.25vw, 2.4rem);
}
#page-standard-housing .contents .box--01 {
  margin-bottom: clamp(4.8rem, 7.2916666667vw, 14rem);
}
#page-standard-housing .contents .box--01 .capbox {
  display: flex;
  align-items: center;
  gap: clamp(1rem, 8.3333333333vw, 16rem);
}
@media (max-width: 768px) {
  #page-standard-housing .contents .box--01 .capbox {
    display: block;
  }
}
#page-standard-housing .contents .box--01 .capbox .cap {
  width: clamp(32.7rem, 35.9375vw, 69rem);
}
@media (max-width: 768px) {
  #page-standard-housing .contents .box--01 .capbox .cap {
    width: auto;
    margin-bottom: 2.4rem;
  }
}
#page-standard-housing .contents .box--01 h2 {
  margin-bottom: clamp(2.4rem, 1.6666666667vw, 3.2rem);
  font-family: var(--titlefont);
  font-weight: var(--fontbold);
  font-size: clamp(2.4rem, 2.0833333333vw, 4rem);
  line-height: 1.8;
}
@media (max-width: 768px) {
  #page-standard-housing .contents .box--01 h2 {
    line-height: 1.8;
  }
}
#page-standard-housing .contents .box--01 h2 .item {
  color: #FF741D;
}
#page-standard-housing .contents .box--01 .lead {
  margin-bottom: clamp(2.4rem, 1.6666666667vw, 3.2rem);
  font-family: var(--titlefont);
  font-weight: var(--fontbold);
  font-size: clamp(2.4rem, 2.0833333333vw, 4rem);
  line-height: 1.5;
}
@media (max-width: 768px) {
  #page-standard-housing .contents .box--01 .lead {
    line-height: 1.5;
  }
}
#page-standard-housing .contents .box--01 .lead b {
  display: block;
  line-height: 1.5;
}
@media (max-width: 768px) {
  #page-standard-housing .contents .box--01 .lead b {
    line-height: 1.5;
  }
}
#page-standard-housing .contents .box--01 .lead small {
  font-size: 2rem;
}
@media (max-width: 768px) {
  #page-standard-housing .contents .box--01 .lead small {
    font-size: 2.4rem;
  }
}
#page-standard-housing .contents .box--01 .pricebox {
  margin-bottom: clamp(3.2rem, 2.0833333333vw, 4rem);
}
#page-standard-housing .contents .box--02 {
  margin-bottom: clamp(4.8rem, 7.2916666667vw, 14rem);
}
#page-standard-housing .contents .box--02 .capbox {
  display: flex;
  align-items: center;
  flex-direction: row-reverse;
  gap: clamp(1rem, 6.25vw, 12rem);
}
@media (max-width: 768px) {
  #page-standard-housing .contents .box--02 .capbox {
    display: block;
  }
}
#page-standard-housing .contents .box--02 .capbox .cap {
  margin-right: calc(50% - 50vw);
  flex: 1;
  position: relative;
}
#page-standard-housing .contents .box--02 .capbox .textbox {
  width: clamp(32.7rem, 35.2083333333vw, 67.6rem);
  line-height: 2.2;
}
@media (max-width: 768px) {
  #page-standard-housing .contents .box--02 .capbox .textbox {
    line-height: 1.8;
    padding-top: 2.4rem;
  }
}
#page-standard-housing .contents .box--03 {
  margin-bottom: clamp(4.8rem, 7.2916666667vw, 14rem);
}
#page-standard-housing .contents .box--03 h2.title {
  display: flex;
  justify-content: center;
  margin-bottom: clamp(2.4rem, 3.3333333333vw, 6.4rem);
}
@media (max-width: 768px) {
  #page-standard-housing .contents .box--03 h2.title {
    text-align: center;
  }
}
#page-standard-housing .contents .box--03 h2.title .text {
  font-family: var(--titlefont);
  font-weight: var(--fontbold);
  display: block;
}
#page-standard-housing .contents .box--03 h2.title .text--top {
  font-size: clamp(2rem, 1.7708333333vw, 3.4rem);
}
#page-standard-housing .contents .box--03 h2.title .text--bottom {
  font-size: clamp(2.8rem, 2.5vw, 4.8rem);
}
#page-standard-housing .contents .box--03 .capbox {
  display: flex;
  align-items: center;
  gap: clamp(1rem, 4.1666666667vw, 8rem);
}
@media (max-width: 768px) {
  #page-standard-housing .contents .box--03 .capbox {
    display: block;
  }
}
#page-standard-housing .contents .box--03 .capbox .cap {
  width: clamp(35.1rem, 25vw, 48rem);
}
@media (max-width: 768px) {
  #page-standard-housing .contents .box--03 .capbox .cap {
    margin-bottom: 2.4rem;
    width: auto;
    margin-left: -2.4rem;
  }
}
#page-standard-housing .contents .box--03 .capbox .textbox {
  width: clamp(32.7rem, 49.9609679938vw, 64rem);
}
#page-standard-housing .pricebox {
  display: flex;
  align-items: center;
  border: 1px solid black;
}
@media (max-width: 768px) {
  #page-standard-housing .pricebox {
    align-items: initial;
  }
}
#page-standard-housing .pricebox .txt {
  width: clamp(6.4rem, 6.4583333333vw, 12.4rem);
  background-color: black;
  color: white;
  height: 5.3rem;
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: clamp(1.1rem, 0.7291666667vw, 1.4rem);
  font-weight: var(--fontbold);
  line-height: 1.4285714286;
}
@media (max-width: 768px) {
  #page-standard-housing .pricebox .txt {
    text-align: center;
    height: auto;
    line-height: 1.5;
  }
}
#page-standard-housing .pricebox .price {
  font-size: clamp(1.1rem, 0.7291666667vw, 1.4rem);
  font-weight: var(--fontbold);
  display: flex;
  align-items: center;
  justify-content: center;
  width: calc(100% - clamp(6.4rem, 6.4583333333vw, 12.4rem));
}
@media (max-width: 768px) {
  #page-standard-housing .pricebox .price {
    display: block;
    text-align: center;
    padding: 1rem 0;
  }
}
#page-standard-housing .pricebox .price b {
  font-size: 2rem;
}
#page-standard-housing .customization {
  margin-bottom: clamp(4rem, 5vw, 9.6rem);
  margin-inline: 2.4rem;
}
#page-standard-housing .customization h2.title {
  line-height: 1;
  text-align: center;
  margin-bottom: clamp(2.4rem, 3.3333333333vw, 6.4rem);
}
#page-standard-housing .customization h2.title .text {
  font-size: clamp(2.8rem, 2.5vw, 4.8rem);
  line-height: 1.5;
  font-family: var(--titlefont);
  font-weight: var(--fontbold);
}
@media (max-width: 768px) {
  #page-standard-housing .customization h2.title .text {
    line-height: 1.5;
  }
}
#page-standard-housing .customization .itembox {
  display: flex;
  align-items: flex-start;
}
@media (max-width: 768px) {
  #page-standard-housing .customization .itembox {
    display: block;
  }
}
#page-standard-housing .customization .itembox .textbox {
  width: 68.8rem;
  margin-left: 4.8rem;
  font-weight: var(--fontnormal);
  line-height: 2;
}
@media (max-width: 768px) {
  #page-standard-housing .customization .itembox .textbox {
    width: auto;
    line-height: 1.8;
    margin-left: 0;
  }
}
#page-standard-housing .customization .itembox .titlebox .title {
  font-size: clamp(2rem, 1.6666666667vw, 3.2rem);
  font-weight: var(--fontbold);
  line-height: 1.5;
  margin-bottom: clamp(1.6rem, 1.25vw, 2.4rem);
}
@media (max-width: 768px) {
  #page-standard-housing .customization .itembox .titlebox .title {
    line-height: 1.5;
  }
}
#page-standard-housing .customization .box--01 .itembox {
  margin-bottom: clamp(3.2rem, 3.3333333333vw, 6.4rem);
  justify-content: space-between;
}
#page-standard-housing .customization .box--01 .itembox .titlebox {
  border-right: 1px dashed black;
  padding-right: 4.8rem;
}
@media (max-width: 768px) {
  #page-standard-housing .customization .box--01 .itembox .titlebox {
    border-right: none;
    padding-right: 0;
    margin-bottom: 2.4rem;
  }
}
#page-standard-housing .customization .box--01 .itembox .pricebox {
  width: 41.6rem;
}
@media (max-width: 768px) {
  #page-standard-housing .customization .box--01 .itembox .pricebox {
    width: auto;
  }
}
#page-standard-housing .customization .box--03 .lead {
  margin-bottom: 3.2rem;
}
#page-standard-housing .customization .box:not(:last-of-type) {
  margin-bottom: clamp(4rem, 3.3333333333vw, 6.4rem);
}
#page-standard-housing .customization .box h3 {
  font-size: clamp(1.8rem, 1.0416666667vw, 2rem);
  font-weight: var(--fontbold);
  line-height: 1;
  height: 3rem;
  display: flex;
  align-items: center;
  padding-left: clamp(1.6rem, 1.0416666667vw, 2rem);
  border-left: 0.5rem solid black;
  margin-bottom: clamp(1.6rem, 1.25vw, 2.4rem);
}
@media (max-width: 768px) {
  #page-standard-housing .customization .box h3 {
    height: auto;
    line-height: 1.6;
  }
}
#page-standard-housing .customization .box .lead {
  line-height: 1.6;
  font-weight: var(--fontnormal);
}
#page-standard-housing .customization .box .list {
  display: flex;
  gap: clamp(0.8rem, 1.25vw, 2.4rem);
  flex-wrap: wrap;
}
@media (max-width: 768px) {
  #page-standard-housing .customization .box .list {
    gap: 2.4rem 0.8rem;
  }
}
#page-standard-housing .customization .box .list li {
  flex: 0 0 calc((100% - clamp(0.8rem, 1.25vw, 2.4rem) * 3) / 4);
  font-size: clamp(1.2rem, 0.78125vw, 1.5rem);
  line-height: 1.6;
  font-weight: var(--fontnormal);
}
@media (max-width: 768px) {
  #page-standard-housing .customization .box .list li {
    flex: 0 0 calc((100% - 0.8rem) / 2);
    line-height: 1.6;
  }
}
#page-standard-housing .customization .box .list li small {
  font-size: 1.2rem;
  line-height: 1.5;
}
#page-standard-housing .customization .box .list li h4 {
  font-size: clamp(1.4rem, 0.9375vw, 1.8rem);
  line-height: 1.5;
  font-weight: var(--fontbold);
  margin-bottom: 0.8rem;
}
@media (max-width: 768px) {
  #page-standard-housing .customization .box .list li h4 {
    line-height: 1.5;
  }
}
#page-standard-housing .customization .box .list li .cap {
  margin-bottom: clamp(0.8rem, 0.8333333333vw, 1.6rem);
}
#page-standard-housing .customization .bottomtext {
  text-align: center;
  line-height: 2;
  font-weight: var(--fontnormal);
}
#page-standard-housing .customization .bottomtext p:not(:last-of-type) {
  margin-bottom: 2.4rem;
}

/* ======================================
page-full-order
====================================== */
#page-full-order .captureheader {
  margin-bottom: 0;
}
#page-full-order .topcapbox {
  position: relative;
  width: 100%;
  overflow: hidden;
  margin-bottom: 2.4rem;
}
#page-full-order .topcapbox .hero__img {
  width: 100%;
  height: auto;
  display: block;
}
#page-full-order .topcapbox .hero__img--blur {
  position: absolute;
  inset: 0;
  filter: blur(10px);
  -webkit-mask-image: linear-gradient(to right, transparent 0%, transparent 30%, black 70%, black 100%);
  mask-image: linear-gradient(to right, transparent 0%, transparent 30%, black 70%, black 100%);
}
#page-full-order .topcapbox .topcapbox--text {
  position: absolute;
  top: 50%;
  right: 5vw;
  transform: translateY(-50%);
  width: 40%;
  color: #fff;
  line-height: 1.7;
  text-align: left;
  font-size: clamp(1.4rem, 0.9375vw, 1.8rem);
  line-height: 2.2;
}
@media (max-width: 768px) {
  #page-full-order .topcapbox .topcapbox--text {
    line-height: 2;
    width: auto;
    right: 0;
    left: 0;
    transform: translateY(0);
    margin: auto;
    top: 4.8rem;
    margin-inline: 2.4rem;
  }
}
#page-full-order .topcapbox .topcapbox--text p {
  font-weight: var(--fontbold);
}
#page-full-order .topcapbox .topcapbox--text p:not(:last-of-type) {
  margin-bottom: clamp(1.6rem, 1.25vw, 2.4rem);
}
#page-full-order .topcapbox .topcapbox--text h3 {
  font-size: clamp(2.8rem, 2.8125vw, 5.4rem);
  font-family: var(--titlefont);
  font-weight: var(--fontbold);
  line-height: 1;
  margin-bottom: clamp(2.4rem, 1.6666666667vw, 3.2rem);
}
#page-full-order .topcapbox .topcapbox--text h3 .text {
  line-height: 1.5;
}
@media (max-width: 768px) {
  #page-full-order .topcapbox .topcapbox--text h3 .text {
    line-height: 2.8928571429;
  }
}
#page-full-order .contents {
  margin-bottom: clamp(14rem, 10.4166666667vw, 20rem);
}
#page-full-order .contents h2.titles {
  text-align: center;
  margin-bottom: clamp(2.4rem, 5vw, 9.6rem);
}
#page-full-order .contents h2.titles .text {
  font-family: var(--titlefont);
  font-size: clamp(2.4rem, 2.34375vw, 4.5rem);
  line-height: 1;
}
#page-full-order .contents .box h3.title {
  font-size: clamp(2.2rem, 1.7708333333vw, 3.4rem);
  font-family: var(--titlefont);
  margin-bottom: clamp(2.4rem, 1.6666666667vw, 3.2rem);
  line-height: 1.6176470588;
}
@media (max-width: 768px) {
  #page-full-order .contents .box h3.title {
    line-height: 1.6363636364;
  }
}
#page-full-order .contents .box h3.title .txt {
  display: block;
}
@media (max-width: 768px) {
  #page-full-order .contents .box h3.title .txt {
    display: inline;
  }
}
#page-full-order .contents .box h3.title .item {
  font-size: clamp(3rem, 2.5vw, 4.8rem);
  line-height: 1.1458333333;
}
@media (max-width: 768px) {
  #page-full-order .contents .box h3.title .item {
    line-height: 1.2;
  }
}
#page-full-order .contents .box .capbox {
  display: flex;
  gap: clamp(1rem, 9.3676814988vw, 12rem);
}
@media (max-width: 768px) {
  #page-full-order .contents .box .capbox {
    display: block;
  }
}
#page-full-order .contents .box .textbox {
  width: clamp(32.7rem, 49.9609679938vw, 64rem);
  font-weight: var(--fontnormal);
  line-height: 2.2;
}
@media (max-width: 768px) {
  #page-full-order .contents .box .textbox {
    line-height: 1.8;
    width: auto;
  }
}
#page-full-order .contents .box .textbox p:not(:last-of-type) {
  margin-bottom: clamp(1.6rem, 1.25vw, 2.4rem);
}
#page-full-order .contents .box .textbox p:last-of-type {
  margin-bottom: clamp(2.4rem, 2.0833333333vw, 4rem);
}
#page-full-order .contents .box .detailsbtn {
  position: relative;
  justify-content: space-between;
}
#page-full-order .contents .box .detailsbtn .titles {
  font-size: 1.8rem;
}
#page-full-order .contents .box--01 {
  margin-bottom: clamp(5.6rem, 9.375vw, 18rem);
}
@media (max-width: 768px) {
  #page-full-order .contents .box--01 {
    margin-inline: 2.4rem;
  }
}
#page-full-order .contents .box--01 .capbox {
  flex-direction: row-reverse;
}
#page-full-order .contents .box--01 .capbox .cap {
  margin-right: calc(50% - 50vw);
  flex: 1;
  position: relative;
}
@media (max-width: 768px) {
  #page-full-order .contents .box--01 .capbox .cap {
    margin-bottom: 2.4rem;
  }
}
#page-full-order .contents .box--02 {
  margin-bottom: clamp(5.6rem, 9.375vw, 18rem);
}
@media (max-width: 768px) {
  #page-full-order .contents .box--02 .textbox {
    margin-inline: 2.4rem;
  }
}
#page-full-order .contents .box--02 .btns {
  display: flex;
  justify-content: flex-end;
  gap: 1.6rem;
}
@media (max-width: 768px) {
  #page-full-order .contents .box--02 .btns {
    display: block;
  }
}
#page-full-order .contents .box--02 .btns .detailsbtn {
  margin: 0;
}
@media (max-width: 768px) {
  #page-full-order .contents .box--02 .btns .detailsbtn:not(:last-of-type) {
    margin-bottom: 1.5rem;
  }
}
#page-full-order .contents .box--02 .capbox .cap {
  margin-left: calc(50% - 50vw);
  flex: 1;
  position: relative;
}
@media (max-width: 768px) {
  #page-full-order .contents .box--02 .capbox .cap {
    padding-right: 2.4rem;
    margin-bottom: 2.4rem;
  }
}
#page-full-order .contents .box--03 {
  margin-bottom: clamp(5.6rem, 9.375vw, 18rem);
}
@media (max-width: 768px) {
  #page-full-order .contents .box--03 {
    margin-inline: 2.4rem;
  }
}
#page-full-order .contents .box--03 .capbox {
  flex-direction: row-reverse;
}
#page-full-order .contents .box--03 .capbox .cap {
  margin-right: calc(50% - 34.331vw);
  flex: 1;
  position: relative;
}
@media (max-width: 768px) {
  #page-full-order .contents .box--03 .capbox .cap {
    margin-right: 0;
    padding-right: 10rem;
    padding-bottom: 7.11rem;
    margin-bottom: 2.4rem;
  }
  #page-full-order .contents .box--03 .capbox .cap:after {
    content: "";
    width: 14rem;
    height: 9.739rem;
    position: absolute;
    bottom: 0;
    right: 0;
    background: url(../../dist/images/full-order/box03-cap02.jpg) no-repeat center center/contain;
  }
}
#page-full-order .contents .box--03 .detailsbtn {
  margin-bottom: 8rem;
}
#page-full-order .contents .box--03 .textbox .cap {
  width: clamp(18rem, 20.8333333333vw, 40rem);
  transform: translateX(-4rem);
}
@media (max-width: 768px) {
  #page-full-order .contents .box--03 .textbox .cap {
    display: none;
  }
}
#page-full-order .contents .box--04 {
  margin-bottom: clamp(5.6rem, 10.4166666667vw, 20rem);
}
@media (max-width: 768px) {
  #page-full-order .contents .box--04 .textbox {
    margin-inline: 2.4rem;
  }
}
#page-full-order .contents .box--04 .btns {
  display: flex;
  justify-content: flex-end;
  gap: 1.6rem;
}
#page-full-order .contents .box--04 .capbox .cap {
  margin-left: calc(50% - 50vw);
  flex: 1;
  position: relative;
}
@media (max-width: 768px) {
  #page-full-order .contents .box--04 .capbox .cap {
    padding-right: 2.4rem;
    margin-bottom: 2.4rem;
  }
}
#page-full-order .contents .box--05 {
  margin-bottom: clamp(5.6rem, 9.375vw, 18rem);
}
@media (max-width: 768px) {
  #page-full-order .contents .box--05 .textbox {
    margin-inline: 2.4rem;
  }
}
#page-full-order .contents .box--05 .btns {
  display: flex;
  justify-content: flex-end;
  gap: 1.6rem;
}
#page-full-order .contents .box--05 .capbox {
  flex-direction: row-reverse;
}
#page-full-order .contents .box--05 .capbox .cap {
  margin-right: calc(50% - 50vw);
  flex: 1;
  position: relative;
}
@media (max-width: 768px) {
  #page-full-order .contents .box--05 .capbox .cap {
    padding-left: 2.4rem;
    margin-bottom: 2.4rem;
  }
}
#page-full-order .contents .box--05 .capbox ul {
  margin-bottom: clamp(1.6rem, 1.25vw, 2.4rem);
}
#page-full-order .contents .box--05 .capbox ul li {
  position: relative;
}
#page-full-order .contents .box--05 .capbox ul li:before {
  content: "・";
}
#page-full-order .contents .box--06 {
  text-align: center;
}
#page-full-order .contents .box--06 .inner {
  padding-top: 6.3rem;
  padding-bottom: 16.6rem;
}
@media (max-width: 768px) {
  #page-full-order .contents .box--06 .inner {
    padding-bottom: 0;
  }
}
#page-full-order .contents .box--06 .cap {
  position: absolute;
}
@media (max-width: 768px) {
  #page-full-order .contents .box--06 .cap {
    position: inherit;
  }
}
#page-full-order .contents .box--06 .cap--left {
  width: clamp(37.5rem, 26.0416666667vw, 50rem);
  left: 0;
  top: 0;
}
@media (max-width: 768px) {
  #page-full-order .contents .box--06 .cap--left {
    width: auto;
    left: auto;
    top: auto;
    margin-bottom: 3.2rem;
  }
}
#page-full-order .contents .box--06 .cap--right {
  width: clamp(19.701rem, 20.8333333333vw, 40rem);
  right: clamp(1.95rem, 1.5625vw, 3rem);
  bottom: 0;
}
@media (max-width: 768px) {
  #page-full-order .contents .box--06 .cap--right {
    right: auto;
    bottom: auto;
    width: auto;
    margin-right: 2.4rem;
    padding-left: 15.4rem;
  }
}
#page-full-order .contents .box--06 .cap--left02 {
  width: clamp(11rem, 10.4166666667vw, 20rem);
  transform: rotate(-15deg);
  bottom: clamp(0.975rem, 0.78125vw, 1.5rem);
  left: clamp(13rem, 10.4166666667vw, 20rem);
}
@media (max-width: 768px) {
  #page-full-order .contents .box--06 .cap--left02 {
    left: 4rem;
    bottom: 3.3rem;
    position: absolute;
    margin-left: 0;
  }
}
#page-full-order .contents .box--06 .textbox {
  width: auto;
}
@media (max-width: 768px) {
  #page-full-order .contents .box--06 .textbox {
    margin-bottom: 6.5rem;
  }
}
#page-full-order .contents .box--06 .textbox .titles {
  margin-bottom: 0.8rem;
  line-height: 1;
}
@media (max-width: 768px) {
  #page-full-order .contents .box--06 .textbox .titles {
    margin-bottom: 1.5rem;
  }
}
#page-full-order .contents .box--06 .textbox .titles .text {
  font-family: var(--titlefont);
  font-size: clamp(3rem, 4.7012732615vw, 4.8rem);
  line-height: 0.9583333333;
}
@media (max-width: 768px) {
  #page-full-order .contents .box--06 .textbox .titles .text {
    line-height: 1.5;
  }
}
#page-full-order .contents .box--06 .textbox .lead {
  font-size: clamp(1.2rem, 1.0928961749vw, 1.4rem);
  line-height: 1.1428571429;
  margin-bottom: clamp(2.4rem, 1.6666666667vw, 3.2rem);
}
@media (max-width: 768px) {
  #page-full-order .contents .box--06 .textbox .lead {
    line-height: 0.6666666667;
  }
}
#page-full-order .contents .box--06 .textbox p {
  line-height: 3;
  font-size: clamp(1.5rem, 0.8333333333vw, 1.6rem);
}
@media (max-width: 768px) {
  #page-full-order .contents .box--06 .textbox p {
    line-height: 2.2;
  }
}
#page-full-order .contents .box--06 .textbox p:last-of-type {
  margin-bottom: 0;
}
#page-full-order .seemorebox {
  margin-bottom: clamp(4rem, 6.25vw, 12rem);
}
#page-full-order .bottombox {
  text-align: center;
  line-height: 2.4;
  font-weight: var(--fontnormal);
  display: flex;
  justify-content: center;
}
@media (max-width: 768px) {
  #page-full-order .bottombox {
    margin-inline: 2.4rem;
    line-height: 1.8;
  }
}
#page-full-order .bottombox .box {
  position: relative;
}
#page-full-order .bottombox .box:before, #page-full-order .bottombox .box:after {
  position: absolute;
  display: block;
  content: "";
  top: 50%;
  transform: translateY(-50%);
}
@media (max-width: 768px) {
  #page-full-order .bottombox .box:before, #page-full-order .bottombox .box:after {
    top: auto;
    transform: translateY(0);
    bottom: -2.5rem;
  }
}
#page-full-order .bottombox .box:before {
  width: clamp(6.7rem, 5.5208333333vw, 10.6rem);
  height: clamp(8.949rem, 7.4479166667vw, 14.3rem);
  background: url(../../dist/images/full-order/bottom-item-left.png) no-repeat center center/contain;
  left: -9.3rem;
}
@media (max-width: 768px) {
  #page-full-order .bottombox .box:before {
    left: 0;
  }
}
#page-full-order .bottombox .box:after {
  width: clamp(5.7rem, 4.53125vw, 8.7rem);
  height: clamp(10.4rem, 8.1770833333vw, 15.7rem);
  background: url(../../dist/images/full-order/bottom-item-right.png) no-repeat center center/contain;
  right: -10.3rem;
}
@media (max-width: 768px) {
  #page-full-order .bottombox .box:after {
    right: -0.5rem;
  }
}
#page-full-order .bottombox p {
  margin-bottom: clamp(3.2rem, 2.9166666667vw, 5.6rem);
}
#page-full-order .bottombox .logo {
  width: clamp(18.1rem, 20.8333333333vw, 40rem);
  margin: auto;
}
#page-full-order .magiccontents {
  margin-bottom: clamp(4rem, 11.7531831538vw, 12rem);
  padding: clamp(4.69rem, 15.6709108717vw, 16rem) 0 clamp(5.6rem, 15.6709108717vw, 16rem);
}
#page-full-order .magiccontents .box .btn {
  width: clamp(28rem, 31.3418217434vw, 32rem);
  margin: auto;
}
#page-full-order .magiccontents .box--top {
  margin-bottom: clamp(5.6rem, 11.7531831538vw, 12rem);
}
@media (max-width: 768px) {
  #page-full-order .magiccontents .box--top .title {
    margin-bottom: 4rem;
  }
}
#page-full-order .magiccontents .box--top .title:before {
  content: "";
  width: clamp(23.3rem, 35.1616062684vw, 35.9rem);
  height: clamp(13.4rem, 20.1762977473vw, 20.6rem);
  left: 0;
  right: 0;
  background: url(../../dist/images/full-order/magic-title.png) no-repeat center center/contain;
  margin: auto;
  position: absolute;
  top: clamp(-23.79rem, -19.0625vw, -36.6rem);
}
@media (max-width: 768px) {
  #page-full-order .magiccontents .box--top .title:before {
    top: -15rem;
    background: url(../../dist/images/full-order/magic-title_sp.png) no-repeat center center/contain;
  }
}
#page-full-order .magiccontents .box--top .title .box:before {
  width: clamp(4.9rem, 6.0724779628vw, 6.2rem);
  height: clamp(3.1rem, 3.819784525vw, 3.9rem);
  background: url(../../dist/images/full-order/magic-box01-subtitle-item-left.svg) no-repeat center center/contain;
  left: -5rem;
  top: -3rem;
}
@media (max-width: 768px) {
  #page-full-order .magiccontents .box--top .title .box:before {
    left: -3rem;
    top: -1rem;
  }
}
#page-full-order .magiccontents .box--top .title .box:after {
  width: clamp(4.9rem, 6.0724779628vw, 6.2rem);
  height: clamp(3.1rem, 3.819784525vw, 3.9rem);
  background: url(../../dist/images/full-order/magic-box01-subtitle-item-right.svg) no-repeat center center/contain;
  right: -5rem;
  bottom: -3rem;
}
@media (max-width: 768px) {
  #page-full-order .magiccontents .box--top .title .box:after {
    right: -3rem;
    bottom: -2rem;
  }
}
#page-full-order .magiccontents .box--top .list {
  align-items: flex-end;
  margin-bottom: clamp(3rem, 5.8765915769vw, 6rem);
}
@media (max-width: 768px) {
  #page-full-order .magiccontents .box--top .list {
    margin-bottom: 0;
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    grid-template-rows: repeat(3, 1fr);
    grid-column-gap: 0px;
    grid-row-gap: 0px;
    align-items: flex-start;
  }
}
@media (max-width: 768px) {
  #page-full-order .magiccontents .box--top .list li {
    width: 100%;
  }
}
@media (max-width: 768px) {
  #page-full-order .magiccontents .box--top .list li:nth-child(1) {
    grid-area: 1/1/2/2;
    margin-bottom: 2rem;
  }
}
#page-full-order .magiccontents .box--top .list li:nth-child(1) .cap {
  width: clamp(11.219rem, 24.277179236vw, 24.787rem);
}
#page-full-order .magiccontents .box--top .list li:nth-child(2) {
  margin-top: auto;
}
@media (max-width: 768px) {
  #page-full-order .magiccontents .box--top .list li:nth-child(2) {
    margin-bottom: 2rem;
    grid-area: 2/1/3/3;
  }
}
#page-full-order .magiccontents .box--top .list li:nth-child(2) .cap {
  width: clamp(19.99rem, 31.5866797258vw, 32.25rem);
}
@media (max-width: 768px) {
  #page-full-order .magiccontents .box--top .list li:nth-child(3) {
    margin-bottom: 2rem;
    grid-area: 1/2/2/3;
    margin-top: 1.5rem;
  }
}
#page-full-order .magiccontents .box--top .list li:nth-child(3) .cap {
  width: clamp(13.177rem, 28.514201763vw, 29.113rem);
}
@media (max-width: 768px) {
  #page-full-order .magiccontents .box--top .list li:nth-child(4) {
    grid-area: 3/1/4/2;
  }
}
#page-full-order .magiccontents .box--top .list li:nth-child(4) .cap {
  width: clamp(14.957rem, 32.3663075416vw, 33.046rem);
}
@media (max-width: 768px) {
  #page-full-order .magiccontents .box--top .list li:nth-child(5) {
    grid-area: 3/2/4/3;
    margin-top: 2.7rem;
  }
}
#page-full-order .magiccontents .box--top .list li:nth-child(5) .cap {
  width: clamp(15.675rem, 37.1498530852vw, 37.935rem);
}
@media (max-width: 768px) {
  #page-full-order .magiccontents .box--bottom .title {
    margin-bottom: 4rem;
  }
}
#page-full-order .magiccontents .box--bottom .title .box:before {
  width: clamp(6rem, 4.1666666667vw, 8rem);
  height: clamp(5.7rem, 3.6458333333vw, 7rem);
  background: url(../../dist/images/full-order/magic-box02-subtitle-item-left.svg) no-repeat center center/contain;
  left: -10rem;
  top: 5.5rem;
}
@media (max-width: 768px) {
  #page-full-order .magiccontents .box--bottom .title .box:before {
    top: 1.5rem;
    left: -7rem;
  }
}
#page-full-order .magiccontents .box--bottom .title .box:after {
  width: clamp(6rem, 4.4270833333vw, 8.5rem);
  height: clamp(5.3rem, 3.90625vw, 7.5rem);
  background: url(../../dist/images/full-order/magic-box02-subtitle-item-right.svg) no-repeat center center/contain;
  right: -13rem;
  top: -1rem;
}
@media (max-width: 768px) {
  #page-full-order .magiccontents .box--bottom .title .box:after {
    top: 5rem;
    right: -9rem;
  }
}
#page-full-order .magiccontents .box--bottom .list {
  gap: 8rem 4rem;
  margin-bottom: clamp(4rem, 5.8765915769vw, 6rem);
}
@media (max-width: 768px) {
  #page-full-order .magiccontents .box--bottom .list {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    grid-template-rows: repeat(3, 1fr);
    grid-column-gap: 0px;
    grid-row-gap: 0px;
  }
}
@media (max-width: 768px) {
  #page-full-order .magiccontents .box--bottom .list li {
    width: 100%;
  }
}
@media (max-width: 768px) {
  #page-full-order .magiccontents .box--bottom .list li:nth-child(1) {
    grid-area: 1/1/2/2;
  }
}
#page-full-order .magiccontents .box--bottom .list li:nth-child(1) .cap {
  width: clamp(13.107rem, 15.1630208333vw, 29.113rem);
}
#page-full-order .magiccontents .box--bottom .list li:nth-child(2) {
  margin-top: 7rem;
  margin-bottom: 2rem;
}
@media (max-width: 768px) {
  #page-full-order .magiccontents .box--bottom .list li:nth-child(2) {
    grid-area: 1/2/2/3;
  }
}
#page-full-order .magiccontents .box--bottom .list li:nth-child(2) .cap {
  width: clamp(14.609rem, 17.2114583333vw, 33.046rem);
}
@media (max-width: 768px) {
  #page-full-order .magiccontents .box--bottom .list li:nth-child(3) {
    grid-area: 2/2/3/3;
    margin-top: 3rem;
  }
}
#page-full-order .magiccontents .box--bottom .list li:nth-child(3) .cap {
  width: clamp(11.05rem, 12.9098958333vw, 24.787rem);
}
@media (max-width: 768px) {
  #page-full-order .magiccontents .box--bottom .list li:nth-child(4) {
    grid-area: 2/1/3/2;
  }
}
#page-full-order .magiccontents .box--bottom .list li:nth-child(4) .cap {
  width: clamp(14.377rem, 16.796875vw, 32.25rem);
}
@media (max-width: 768px) {
  #page-full-order .magiccontents .box--bottom .list li:nth-child(5) {
    grid-area: 3/1/4/2;
    margin-top: -2.5rem;
  }
}
#page-full-order .magiccontents .box--bottom .list li:nth-child(5) .cap {
  width: clamp(11.05rem, 12.9098958333vw, 24.787rem);
}
@media (max-width: 768px) {
  #page-full-order .magiccontents .box--bottom .list li:nth-child(6) {
    grid-area: 3/2/4/3;
    margin-top: auto;
  }
}
#page-full-order .magiccontents .box--bottom .list li:nth-child(6) .cap {
  width: clamp(16.912rem, 19.7578125vw, 37.935rem);
}
#page-full-order .magiccontents .title {
  display: flex;
  justify-content: center;
  position: relative;
}
#page-full-order .magiccontents .title .box {
  position: relative;
}
#page-full-order .magiccontents .title .box:before, #page-full-order .magiccontents .title .box:after {
  content: "";
  position: absolute;
}
#page-full-order .magiccontents .title h2 {
  position: relative;
}
#page-full-order .magiccontents .title h2:before {
  content: "";
  width: clamp(20.151rem, 14.7395833333vw, 28.3rem);
  height: clamp(8.423rem, 6.1458333333vw, 11.8rem);
  background: url(../../dist/images/full-order/magic-subtitle-bg.svg) no-repeat center center/contain;
  position: absolute;
  left: 0;
  right: 0;
  margin: auto;
  top: 3.5rem;
}
#page-full-order .magiccontents .title h2 .txt, #page-full-order .magiccontents .title h2 .text {
  display: block;
  text-align: center;
  font-family: var(--titlefont);
  font-weight: var(--fontbold);
  position: relative;
  z-index: 2;
}
#page-full-order .magiccontents .title h2 .txt {
  font-size: clamp(2rem, 1.5625vw, 3rem);
  line-height: 1;
}
@media (max-width: 768px) {
  #page-full-order .magiccontents .title h2 .txt {
    line-height: 2.15;
  }
}
#page-full-order .magiccontents .title h2 .text {
  font-size: clamp(3rem, 2.8125vw, 5.4rem);
  line-height: 1.3333333333;
}
@media (max-width: 768px) {
  #page-full-order .magiccontents .title h2 .text {
    line-height: 1.4333333333;
  }
}
#page-full-order .magiccontents .list {
  display: flex;
  justify-content: center;
  flex-wrap: wrap;
  font-weight: var(--fontnormal);
  line-height: 1.5;
  text-align: center;
  max-width: clamp(1248px, 1000px + (1248 - 1000) * (100vw - 768px) / (1920 - 768), 1000px);
  padding-inline: 2.4rem;
  margin-inline: auto;
  gap: 4rem;
}
#page-full-order .magiccontents .list li {
  width: calc(33.3333333333% - 4rem);
  text-align: center;
  display: flex;
  flex-direction: column;
}
@media (max-width: 768px) {
  #page-full-order .magiccontents .list li {
    font-size: 1.2rem;
  }
}
#page-full-order .magiccontents .list li .cap {
  margin-inline: auto;
  margin-bottom: 1.6rem;
}

/* ======================================
page-renovation
====================================== */
#page-renovation .contents {
  margin-bottom: clamp(5.6rem, 8.3333333333vw, 16rem);
}
#page-renovation .contents h2.titles {
  margin-bottom: clamp(2.4rem, 3.3333333333vw, 6.4rem);
  text-align: center;
}
#page-renovation .contents h2.titles .text {
  font-weight: var(--fontbold);
  font-family: var(--titlefont);
  font-size: clamp(2.8rem, 2.5vw, 4.8rem);
}
#page-renovation .contents .beforeafterbox {
  padding-inline: clamp(2.4rem, 5.2083333333vw, 10rem);
  margin-bottom: clamp(4rem, 7.2916666667vw, 14rem);
  display: flex;
  flex-direction: row-reverse;
  gap: clamp(5.2rem, 4.1666666667vw, 8rem);
}
@media (max-width: 768px) {
  #page-renovation .contents .beforeafterbox {
    display: block;
  }
}
#page-renovation .contents .beforeafterbox .textbox {
  width: 64rem;
  line-height: 2;
  font-weight: var(--fontnormal);
}
@media (max-width: 768px) {
  #page-renovation .contents .beforeafterbox .textbox {
    width: auto;
    line-height: 1.8;
    margin-bottom: 2.4rem;
  }
}
#page-renovation .contents .beforeafterbox .textbox h3.title {
  font-size: clamp(1.6rem, 1.25vw, 2.4rem);
  font-weight: var(--fontbold);
  line-height: 1.8;
  margin-bottom: clamp(1.6rem, 1.25vw, 2.4rem);
}
@media (max-width: 768px) {
  #page-renovation .contents .beforeafterbox .textbox h3.title {
    line-height: 1.6;
  }
}
#page-renovation .contents .beforeafterbox .textbox h3.title .item {
  display: block;
  width: clamp(10.111rem, 8.49375vw, 16.308rem);
  margin-bottom: 1.6rem;
}
@media (max-width: 768px) {
  #page-renovation .contents .beforeafterbox .textbox h3.title .item {
    margin-left: auto;
    margin-right: auto;
  }
}
#page-renovation .contents .beforeafterbox .textbox p:not(:last-of-type) {
  margin-bottom: clamp(1.6rem, 1.25vw, 2.4rem);
}
#page-renovation .contents .beforeafterbox .capsbox {
  width: clamp(32.7rem, 25vw, 48rem);
}
@media (max-width: 768px) {
  #page-renovation .contents .beforeafterbox .capsbox {
    width: auto;
  }
}
#page-renovation .contents .beforeafterbox .capsbox .cap {
  position: relative;
}
#page-renovation .contents .beforeafterbox .capsbox .cap .txt {
  font-size: 1.4rem;
  background-color: black;
  color: white;
  display: flex;
  align-items: center;
  height: 3rem;
  position: absolute;
  left: 0;
  top: 0;
  padding-inline: 1rem;
  font-weight: var(--fontbold);
}
#page-renovation .contents .beforeafterbox .capsbox .cap:not(:last-of-type) {
  margin-bottom: 1.6rem;
}
#page-renovation .contents .guidebox {
  padding-inline: clamp(2.4rem, 5.2083333333vw, 10rem);
}
#page-renovation .contents .guidebox .article-content {
  padding-inline: initial;
}
@media (max-width: 768px) {
  #page-renovation .contents .guidebox .article-content {
    margin-right: calc(50% - 50vw);
  }
}
#page-renovation .contents .guidebox h2.titles {
  margin-bottom: clamp(2.4rem, 2.9166666667vw, 5.6rem);
}
#page-renovation .contents .guidebox h2.titles .text {
  display: block;
}
#page-renovation .contents .guidebox h2.titles .text--top {
  font-size: clamp(2rem, 1.25vw, 2.4rem);
  line-height: 1.5;
  margin-bottom: clamp(0.8rem, 0.8333333333vw, 1.6rem);
}
@media (max-width: 768px) {
  #page-renovation .contents .guidebox h2.titles .text--top {
    line-height: 1.5;
  }
}
#page-renovation .contents .guidebox h2.titles .text--bottom {
  font-size: clamp(2.4rem, 1.7708333333vw, 3.4rem);
  line-height: 1.3235294118;
}
@media (max-width: 768px) {
  #page-renovation .contents .guidebox h2.titles .text--bottom {
    line-height: 1.5;
  }
}
#page-renovation .contents .guidebox .itemtable {
  border-bottom: none;
  font-size: 1.5rem;
  line-height: 1.5;
  font-weight: var(--fontnormal);
}
#page-renovation .contents .guidebox .itemtable tr {
  border-top: none;
}
#page-renovation .contents .guidebox .itemtable tr:not(:last-child) th, #page-renovation .contents .guidebox .itemtable tr:not(:last-child) td {
  border-bottom: 1px solid #BABABA;
}
@media (max-width: 768px) {
  #page-renovation .contents .guidebox .itemtable tr th {
    font-size: 1.4rem;
  }
}
#page-renovation .contents .guidebox .itemtable tr th:not(:last-child) {
  border-right: 1px solid #BABABA;
}
@media (max-width: 768px) {
  #page-renovation .contents .guidebox .itemtable tr td {
    font-size: 1.3rem;
  }
}
#page-renovation .contents .guidebox .itemtable tr td {
  vertical-align: middle;
}
#page-renovation .contents .guidebox .itemtable tr td:not(:last-child) {
  border-right: 1px solid #BABABA;
}
#page-renovation .contents .guidebox .itemtable tr td.item {
  padding: 2.4rem 2.4rem 0;
}
@media (max-width: 768px) {
  #page-renovation .contents .guidebox .itemtable tr td.item {
    padding: 1rem 1rem 0;
  }
}
#page-renovation .contents .guidebox .itemtable .none {
  background: none;
  width: 16.8rem;
  border-right: 1px solid #BABABA;
}
#page-renovation .contents .guidebox .itemtable .head-th {
  font-size: 1.6rem;
  padding: 2.3rem 0 2.2rem;
  width: 51.5rem;
}
@media (max-width: 768px) {
  #page-renovation .contents .guidebox .itemtable .head-th {
    font-size: 1.4rem;
    padding: 1rem;
  }
}
#page-renovation .contents .guidebox .itemtable .item-th {
  background: none;
  text-align: left;
  padding: 2.4rem;
  font-size: 1.5rem;
}
@media (max-width: 768px) {
  #page-renovation .contents .guidebox .itemtable .item-th {
    font-size: 1.4rem;
    padding: 1rem;
  }
}
#page-renovation .contents .meritbox {
  margin-bottom: clamp(5.6rem, 7.2916666667vw, 14rem);
}
@media (max-width: 768px) {
  #page-renovation .contents .meritbox {
    margin-inline: 2.4rem;
  }
}
#page-renovation .contents .meritbox ul.list {
  display: flex;
  gap: 6.4rem;
}
@media (max-width: 768px) {
  #page-renovation .contents .meritbox ul.list {
    display: block;
  }
}
#page-renovation .contents .meritbox--list {
  flex: 0 0 calc((100% - 12.8rem) / 3);
  font-size: clamp(1.4rem, 0.78125vw, 1.5rem);
  font-weight: var(--fontnormal);
  line-height: 1.8;
}
@media (max-width: 768px) {
  #page-renovation .contents .meritbox--list {
    flex: none;
    line-height: 1.8;
  }
  #page-renovation .contents .meritbox--list:not(:last-child) {
    margin-bottom: 4.8rem;
  }
}
#page-renovation .contents .meritbox--list h3.title {
  width: 22rem;
  margin: 0 auto clamp(1.6rem, 1.25vw, 2.4rem);
}
#page-renovation .contents .meritbox--list .lead {
  font-size: 2rem;
  font-weight: var(--fontbold);
  line-height: 1.5;
  margin-bottom: clamp(1.6rem, 1.25vw, 2.4rem);
}
#page-renovation .contents .meritbox--list .minbox:not(:last-of-type) {
  margin-bottom: 3.2rem;
}
#page-renovation .contents .meritbox--list h4 {
  font-size: 1.6rem;
  font-weight: var(--fontbold);
  display: flex;
  height: 2.4rem;
  align-items: center;
  padding-left: 1.6rem;
  border-left: 5px solid black;
  margin-bottom: 1.6rem;
}
@media (max-width: 768px) {
  #page-renovation .contents .meritbox--list h4 {
    height: auto;
    font-size: 1.8rem;
  }
}
#page-renovation .contents .meritbox--list ul {
  font-size: 1.3rem;
  line-height: 1.6;
}
@media (max-width: 768px) {
  #page-renovation .contents .meritbox--list ul {
    font-size: 1.4rem;
    line-height: 1.6;
  }
}
#page-renovation .contents .meritbox--list ul li:not(:last-child) {
  margin-bottom: 0.5rem;
}
@media (max-width: 768px) {
  #page-renovation .contents .meritbox--list ul li:not(:last-child) {
    margin-bottom: 0.8rem;
  }
}
#page-renovation .contents .meritbox--list .checkbox {
  font-size: 1.3rem;
  line-height: 1.6;
}
#page-renovation .contents .meritbox--list .checkbox li {
  position: relative;
  display: flex;
  align-items: flex-start;
  gap: 0.8rem;
}
#page-renovation .contents .meritbox--list .checkbox li:before {
  content: url(../../dist/images/renovation/icon-check.svg);
  display: block;
}
#page-renovation .contents .meritbox--list .item li {
  position: relative;
  padding-left: 1.5rem;
}
#page-renovation .contents .meritbox--list .item li:before {
  content: "◎";
  display: inline-block;
  position: absolute;
  left: 0;
  top: 0;
}
#page-renovation .contents .meritbox--list .datalist {
  border-bottom: 1px dashed black;
  padding: 0 0 1.6rem;
  margin: 2.4rem 0 3.2rem;
}
#page-renovation .contents .meritbox--list .datalist .title {
  position: relative;
}
#page-renovation .contents .meritbox--list .datalist .title:before {
  content: "";
  width: 100%;
  height: 1px;
  border-top: 1px dashed black;
  position: absolute;
  left: 0;
  top: 50%;
  transform: translateY(-50%);
}
#page-renovation .contents .meritbox--list .datalist .title .text {
  background-color: white;
  position: relative;
  z-index: 2;
  padding-right: 1rem;
}
@keyframes floatUp {
  0% {
    opacity: 0;
    transform: translateY(30px);
  }
  60% {
    opacity: 1;
    transform: translateY(-4px);
  }
  100% {
    opacity: 1;
    transform: translateY(0);
  }
}
#page-renovation .contents .talkbox {
  margin-bottom: clamp(2.4rem, 2.8125vw, 5.4rem);
}
@media (max-width: 768px) {
  #page-renovation .contents .talkbox {
    margin-inline: 2.4rem;
  }
}
#page-renovation .contents .talkbox .item {
  width: clamp(13.4rem, 13.0729166667vw, 25.1rem);
  margin: auto;
}
#page-renovation .contents .talkbox ul {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  justify-items: center;
  align-items: flex-start;
}
@media (max-width: 768px) {
  #page-renovation .contents .talkbox ul {
    display: block;
  }
}
#page-renovation .contents .talkbox--list {
  display: flex;
  font-size: clamp(1.2rem, 1.1709601874vw, 1.5rem);
  line-height: 1.8;
  font-weight: var(--fontnormal);
  position: relative;
  opacity: 0;
  transform: translateY(24px);
  will-change: transform, opacity;
}
#page-renovation .contents .talkbox--list.is-show {
  animation: floatUp 0.8s ease-out forwards;
}
@media (max-width: 768px) {
  #page-renovation .contents .talkbox--list {
    line-height: 1.6;
    margin-bottom: 2.8rem;
  }
  #page-renovation .contents .talkbox--list:not(:last-child) {
    margin-bottom: 3.5rem;
  }
}
#page-renovation .contents .talkbox--list:after {
  content: "";
  width: 3.5rem;
  height: 2rem;
  background-color: #EDEDED;
  position: absolute;
  right: 14rem;
  bottom: -2rem;
}
#page-renovation .contents .talkbox--list:nth-child(odd) {
  margin-left: auto;
  margin-right: 3.6rem;
}
@media (max-width: 768px) {
  #page-renovation .contents .talkbox--list:nth-child(odd) {
    margin-left: 0;
    margin-right: auto;
  }
}
#page-renovation .contents .talkbox--list:nth-child(odd):after {
  clip-path: polygon(0 0, 100% 100%, 100% 0);
}
#page-renovation .contents .talkbox--list:nth-child(1) {
  animation-delay: 0.1s;
}
#page-renovation .contents .talkbox--list:nth-child(2) {
  animation-delay: 0.25s;
}
#page-renovation .contents .talkbox--list:nth-child(3) {
  animation-delay: 0.4s;
}
#page-renovation .contents .talkbox--list:nth-child(4) {
  animation-delay: 0.55s;
}
#page-renovation .contents .talkbox--list:nth-child(even) {
  margin-right: auto;
}
@media (max-width: 768px) {
  #page-renovation .contents .talkbox--list:nth-child(even) {
    margin-right: 0;
    margin-left: auto;
  }
}
#page-renovation .contents .talkbox--list:nth-child(even):after {
  clip-path: polygon(0 0, 0 100%, 100% 0);
}
#page-renovation .contents .talkbox--list:nth-child(1) {
  margin-top: 5.2rem;
  margin-bottom: 5.5rem;
}
@media (max-width: 768px) {
  #page-renovation .contents .talkbox--list:nth-child(1) {
    margin-top: 0;
  }
}
#page-renovation .contents .talkbox--list:nth-child(4) {
  margin-left: 2.4rem;
}
#page-renovation .contents .talkbox--list:nth-child(3) p, #page-renovation .contents .talkbox--list:nth-child(4) p {
  text-align: center;
}
@media (max-width: 768px) {
  #page-renovation .contents .talkbox--list:nth-child(3) p, #page-renovation .contents .talkbox--list:nth-child(4) p {
    text-align: left;
  }
}
#page-renovation .contents .talkbox--list h3 {
  text-align: center;
  font-size: clamp(1.3rem, 1.4051522248vw, 1.8rem);
  font-weight: var(--fontbold);
  line-height: 1.6;
  margin-bottom: clamp(0.8rem, 0.8333333333vw, 1.6rem);
}
@media (max-width: 768px) {
  #page-renovation .contents .talkbox--list h3 {
    line-height: 1.6;
  }
}
#page-renovation .contents .talkbox--list .itembox {
  background-color: #EDEDED;
  padding: clamp(2.4rem, 1.6666666667vw, 3.2rem) clamp(3.2rem, 3.3333333333vw, 6.4rem) clamp(2.4rem, 2.0833333333vw, 4rem);
  border-radius: 999.9rem;
}
#page-renovation .contents .textcontents {
  text-align: center;
  margin-bottom: clamp(4rem, 4.1666666667vw, 8rem);
  line-height: 2;
  font-weight: var(--fontnormal);
}
@media (max-width: 768px) {
  #page-renovation .contents .textcontents {
    line-height: 1.8;
    margin-inline: 2.4rem;
    text-align: left;
  }
}
#page-renovation .contents .textcontents h3 {
  font-size: clamp(1.8rem, 1.25vw, 2.4rem);
  font-weight: var(--fontbold);
  margin-bottom: clamp(1.6rem, 1.25vw, 2.4rem);
  text-align: center;
}
@media (max-width: 768px) {
  #page-renovation .contents .achievementsbox {
    margin-inline: 2.4rem;
  }
}
#page-renovation .contents .achievementsbox .title {
  text-align: center;
  font-size: clamp(1.6rem, 1.5612802498vw, 2rem);
  font-weight: var(--fontbold);
  margin-bottom: clamp(2rem, 2.0833333333vw, 4rem);
}
#page-renovation .contents .achievementsbox .title .text {
  position: relative;
  display: flex;
  justify-content: center;
  align-items: center;
  gap: 1rem;
}
#page-renovation .contents .achievementsbox .title .text:before, #page-renovation .contents .achievementsbox .title .text:after {
  content: "";
  width: 2px;
  height: clamp(2rem, 1.1979166667vw, 2.3rem);
  background-color: black;
  display: block;
}
#page-renovation .contents .achievementsbox .title .text:before {
  transform: rotate(-40deg);
}
#page-renovation .contents .achievementsbox .title .text:after {
  transform: rotate(40deg);
}
#page-renovation .contents .achievementsbox .capbox {
  display: flex;
  flex-wrap: wrap;
  gap: clamp(0.8rem, 1.25vw, 2.4rem);
  margin-bottom: clamp(2.4rem, 3.3333333333vw, 6.4rem);
}
#page-renovation .contents .achievementsbox .capbox li {
  flex: 0 0 calc((100% - clamp(0.8rem, 1.25vw, 2.4rem) * 1) / 2);
  display: none;
}
#page-renovation .contents .achievementsbox .capbox li img {
  aspect-ratio: 588/385;
  object-fit: cover;
  width: 100%;
  height: 100%;
}
@media (max-width: 768px) {
  #page-renovation .contents .achievementsbox .capbox li img {
    aspect-ratio: 175.5/115;
  }
}
#page-renovation .contents .achievementsbox .capbox li:nth-child(-n+6) {
  display: block;
}
#page-renovation .contents .achievementsbox .btn {
  width: clamp(24rem, 16.6666666667vw, 32rem);
  margin: auto;
  cursor: pointer;
}
#page-renovation .contents .achievementsbox .btn .icon {
  transition: transform 0.3s ease;
}
#page-renovation .contents .achievementsbox .btn.is-open .icon rect:first-of-type {
  display: none;
}
#page-renovation .press {
  padding: clamp(4.8rem, 7.2916666667vw, 14rem) 0 clamp(5.63rem, 8.3333333333vw, 16rem);
  margin-bottom: clamp(4.8rem, 7.2916666667vw, 14rem);
}
@media (max-width: 768px) {
  #page-renovation .press {
    padding-inline: 2.4rem;
  }
}
#page-renovation .press h2.title {
  text-align: center;
  font-size: clamp(1.8rem, 1.25vw, 2.4rem);
  font-weight: var(--fontbold);
  margin-bottom: clamp(3.2rem, 3.3333333333vw, 6.4rem);
}
#page-renovation .press ul {
  display: flex;
  gap: clamp(0.8rem, 1.25vw, 2.4rem);
}
@media (max-width: 768px) {
  #page-renovation .press ul {
    gap: 2.4rem 0.8rem;
    flex-wrap: wrap;
  }
}
#page-renovation .press ul li {
  flex: 0 0 calc((100% - clamp(0.8rem, 1.25vw, 2.4rem) * 3) / 4);
  font-size: clamp(1.3rem, 1.4051522248vw, 1.8rem);
  line-height: 1.5;
  font-weight: var(--fontbold);
}
@media (max-width: 768px) {
  #page-renovation .press ul li {
    flex: 0 0 calc((100% - 0.8rem) / 2);
  }
}
#page-renovation .press ul li small {
  display: block;
  font-size: clamp(1.1rem, 0.9367681499vw, 1.2rem);
  line-height: 1.5;
  font-weight: var(--fontnormal);
  margin-bottom: clamp(0.5rem, 0.4166666667vw, 0.8rem);
}
@media (max-width: 768px) {
  #page-renovation .press ul li small {
    line-height: 0.6666666667;
  }
}
#page-renovation .press ul li .cap {
  margin-bottom: 1.6rem;
}
#page-renovation .voicebox {
  padding: clamp(4.84rem, 7.2916666667vw, 14rem) 0 clamp(5.62rem, 8.3177083333vw, 15.97rem);
  background: url(../../dist/images/exterior/bg.jpg);
  background-size: 1.9rem;
}
@media (max-width: 768px) {
  #page-renovation .voicebox {
    padding-inline: 2.4rem;
  }
}
#page-renovation .voicebox h2.titles {
  margin-bottom: clamp(2.4rem, 1.6666666667vw, 3.2rem);
}
#page-renovation .voicebox h2.titles .text {
  display: block;
  font-weight: var(--fontbold);
  font-family: var(--titlefont);
  text-align: center;
}
#page-renovation .voicebox h2.titles .text--top {
  font-size: clamp(2rem, 1.25vw, 2.4rem);
  line-height: 1.5;
  margin-bottom: clamp(0.8rem, 0.8333333333vw, 1.6rem);
}
@media (max-width: 768px) {
  #page-renovation .voicebox h2.titles .text--top {
    line-height: 1.5;
  }
}
#page-renovation .voicebox h2.titles .text--bottom {
  font-size: clamp(2.8rem, 2.5vw, 4.8rem);
  line-height: 1;
}
#page-renovation .voicebox .lead {
  text-align: center;
  line-height: 2;
  font-weight: var(--fontnormal);
  margin-bottom: clamp(2.4rem, 2.9166666667vw, 5.6rem);
}
@media (max-width: 768px) {
  #page-renovation .voicebox .lead {
    text-align: left;
    line-height: 1.8;
  }
}
#page-renovation .voicebox .headbox {
  margin-bottom: clamp(4rem, 6.25vw, 12rem);
}
#page-renovation .voicebox .headbox .itembox {
  background-color: white;
  width: clamp(32.715rem, 64.84375vw, 66.4rem);
  background-image: url(../images/common/line.png), url(../images/common/line.png);
  background-repeat: repeat-x, repeat-x;
  background-position: top left, bottom left;
  background-size: clamp(9.945rem, 7.96875vw, 15.3rem), clamp(9.945rem, 7.96875vw, 15.3rem);
  margin: auto;
}
#page-renovation .voicebox .headbox .itembox .box {
  position: relative;
  padding: clamp(2.4rem, 1.6666666667vw, 3.2rem) 0 clamp(2.4rem, 2.0833333333vw, 4rem);
  padding-inline: clamp(2.4rem, 3.3333333333vw, 6.4rem);
  display: flex;
  align-items: flex-start;
  gap: 4rem;
  line-height: 2;
  font-weight: var(--fontnormal);
}
@media (max-width: 768px) {
  #page-renovation .voicebox .headbox .itembox .box {
    display: block;
    line-height: 1.6;
  }
  #page-renovation .voicebox .headbox .itembox .box .item:not(:last-of-type) {
    margin-bottom: 1.6rem;
  }
}
#page-renovation .voicebox .headbox .itembox .box li:not(:last-child) {
  margin-bottom: 0.5rem;
}
#page-renovation .voicebox .headbox .itembox .box .list li {
  position: relative;
}
#page-renovation .voicebox .headbox .itembox .box .list li:before {
  content: "・";
}
#page-renovation .voicebox .headbox .itembox .box h4 {
  font-weight: var(--fontbold);
  font-family: var(--titlefont);
  font-size: clamp(2rem, 1.25vw, 2.4rem);
  line-height: 1.5;
  margin-bottom: 0.8rem;
}
@media (max-width: 768px) {
  #page-renovation .voicebox .headbox .itembox .box h4 {
    line-height: 1.5;
  }
}
#page-renovation .voicebox .headbox .itembox .box:before, #page-renovation .voicebox .headbox .itembox .box:after {
  content: "";
  position: absolute;
  top: 0;
  width: clamp(0.26rem, 0.2083333333vw, 0.4rem);
  height: 100%;
  background: url(../../dist/images/common/lineleft.png) repeat-y left top/cover;
}
#page-renovation .voicebox .headbox .itembox .box:before {
  left: 0;
}
#page-renovation .voicebox .headbox .itembox .box:after {
  right: 0;
}
#page-renovation .voicebox .fukidashilist {
  display: flex;
  flex-wrap: wrap;
  gap: 6.4rem 4rem;
}
@media (max-width: 768px) {
  #page-renovation .voicebox .fukidashilist {
    display: block;
  }
}
#page-renovation .voicebox .fukidashilist .box {
  flex: 0 0 calc((100% - 8rem) / 3);
}
@media (max-width: 1021px) {
  #page-renovation .voicebox .fukidashilist .box {
    flex: 0 0 calc((100% - 4rem) / 2);
  }
}
@media (max-width: 768px) {
  #page-renovation .voicebox .fukidashilist .box {
    flex: none;
  }
  #page-renovation .voicebox .fukidashilist .box:not(:last-child) {
    margin-bottom: 3.2rem;
  }
}
#page-renovation .voicebox .fukidashilist .box .detailsbtn {
  padding-top: 0.8rem;
  cursor: pointer;
}
#page-renovation .voicebox .fukidashilist .box .detailsbtn.open {
  width: clamp(5rem, 3.6458333333vw, 7rem);
}
#page-renovation .voicebox .fukidashilist .box .cap {
  margin-bottom: 1.6rem;
}
#page-renovation .voicebox .fukidashilist .box h4 {
  font-size: 1.8rem;
  font-weight: var(--fontbold);
  line-height: 1.5;
  margin-bottom: 0.8rem;
}
#page-renovation .voicebox .fukidashilist .fukidashi {
  padding: 0.8rem 0;
  overflow: hidden;
  transition: max-height 0.4s ease, opacity 0.3s ease;
  max-height: 100rem;
  opacity: 1;
}
#page-renovation .voicebox .fukidashilist .fukidashi.hidden {
  max-height: 0;
  padding: 0;
  opacity: 0;
}
#page-renovation .voicebox .fukidashilist .fukidashi .itembox {
  display: flex;
  gap: clamp(1.8rem, 1.3541666667vw, 2.6rem);
}
#page-renovation .voicebox .fukidashilist .fukidashi:nth-of-type(even) .itembox {
  flex-direction: row-reverse;
}
#page-renovation .voicebox .fukidashilist .fukidashi .item {
  width: clamp(4rem, 2.6041666667vw, 5rem);
  margin-top: 0.7rem;
}
#page-renovation .voicebox .fukidashilist .fukidashi .item img {
  aspect-ratio: 1;
  border-radius: 50%;
}
#page-renovation .voicebox .fukidashilist .fukidashi .text {
  width: calc(100% - clamp(1.8rem, 1.3541666667vw, 2.6rem) - clamp(4rem, 2.6041666667vw, 5rem));
  background-color: white;
  padding: 1.2rem 1.6rem;
  font-size: 1.3rem;
  line-height: 1.6;
  font-weight: var(--fontnormal);
  border-radius: 0.8rem;
}
#page-renovation .voicebox .capsbox {
  display: flex;
  gap: clamp(1rem, 4.1666666667vw, 8rem);
}
@media (max-width: 768px) {
  #page-renovation .voicebox .capsbox {
    display: block;
  }
}
#page-renovation .voicebox .capsbox--top {
  margin-bottom: clamp(3.2rem, 4.1666666667vw, 8rem);
}
@media (max-width: 768px) {
  #page-renovation .voicebox .capsbox--top {
    border-bottom: 1px dashed black;
    padding-bottom: 3.2rem;
  }
}
#page-renovation .voicebox .capsbox--bottom {
  margin-bottom: clamp(3.2rem, 6.25vw, 12rem);
}
@media (max-width: 768px) {
  #page-renovation .voicebox .capsbox--bottom {
    border-bottom: 1px dashed black;
    padding-bottom: 3.2rem;
  }
}
#page-renovation .voicebox .capsbox .textbox {
  width: calc(100% - clamp(1rem, 4.1666666667vw, 8rem) - 48rem);
  line-height: 2;
  font-weight: var(--fontnormal);
}
@media (max-width: 768px) {
  #page-renovation .voicebox .capsbox .textbox {
    width: auto;
    line-height: 1.8;
  }
}
#page-renovation .voicebox .capsbox .textbox .fukidashi {
  display: inline-block;
  margin-bottom: clamp(3.6rem, 2.2916666667vw, 4.4rem);
  position: relative;
}
@media (max-width: 768px) {
  #page-renovation .voicebox .capsbox .textbox .fukidashi {
    text-align: center;
  }
}
#page-renovation .voicebox .capsbox .textbox .fukidashi:after {
  content: "";
  width: clamp(2.4rem, 3.819784525vw, 3.9rem);
  height: clamp(1.2rem, 1.958863859vw, 2rem);
  background-color: #ffffff;
  clip-path: polygon(50% clamp(1.2rem, 1.958863859vw, 2rem), 0% 0%, clamp(2.4rem, 3.819784525vw, 3.9rem) 0%);
  position: absolute;
  left: 0;
  right: 0;
  bottom: clamp(-1.2rem, -1.958863859vw, -2rem);
  margin: auto;
}
@media (max-width: 768px) {
  #page-renovation .voicebox .capsbox .textbox .fukidashi:after {
    bottom: -1.2rem;
  }
}
#page-renovation .voicebox .capsbox .textbox .fukidashi .text {
  font-size: clamp(1.6rem, 1.0416666667vw, 2rem);
  font-weight: var(--fontbold);
  display: flex;
  justify-content: center;
  align-items: center;
  height: clamp(5.6rem, 3.1770833333vw, 6.1rem);
  background-color: white;
  padding-inline: clamp(2rem, 1.6666666667vw, 3.2rem);
  border-radius: 999.9rem;
}
@media (max-width: 768px) {
  #page-renovation .voicebox .capsbox .textbox .fukidashi .text {
    height: auto;
    padding-top: 1.6rem;
    padding-bottom: 1.6rem;
  }
}
#page-renovation .voicebox .capsbox .textbox ul {
  margin-bottom: clamp(1.6rem, 1.25vw, 2.4rem);
}
#page-renovation .voicebox .capsbox .textbox ul li {
  position: relative;
}
#page-renovation .voicebox .capsbox .textbox ul li:before {
  content: "・";
}
#page-renovation .voicebox .capsbox .cap {
  width: calc(100% - clamp(1rem, 4.1666666667vw, 8rem) - clamp(32.7rem, 49.9609679938vw, 64rem));
  position: relative;
}
@media (max-width: 768px) {
  #page-renovation .voicebox .capsbox .cap {
    width: auto;
    margin-bottom: 3.2rem;
  }
}
#page-renovation .voicebox .capsbox .cap .txt {
  font-size: 1.4rem;
  background-color: black;
  color: white;
  display: flex;
  align-items: center;
  height: 3rem;
  position: absolute;
  left: 0;
  top: 0;
  padding-inline: 1rem;
  font-weight: var(--fontbold);
}
#page-renovation .reason {
  padding: clamp(4.8rem, 7.2916666667vw, 14rem) 0 clamp(4rem, 7.2916666667vw, 14rem);
}
@media (max-width: 768px) {
  #page-renovation .reason {
    margin-inline: 2.4rem;
  }
}
#page-renovation .reason h2.titles {
  text-align: center;
  margin-bottom: clamp(2.4rem, 3.3333333333vw, 6.4rem);
}
#page-renovation .reason h2.titles .text {
  font-family: var(--titlefont);
  font-size: clamp(2.8rem, 2.0833333333vw, 4rem);
  line-height: 1.5;
}
@media (max-width: 768px) {
  #page-renovation .reason h2.titles .text {
    line-height: 1.5;
  }
}
#page-renovation .reason h3.titles {
  line-height: 1;
  margin-bottom: 2.4rem;
}
#page-renovation .reason h3.titles .text {
  font-family: var(--titlefont);
  font-weight: var(--fontbold);
  font-size: clamp(2.4rem, 1.7708333333vw, 3.4rem);
  line-height: 1.5;
}
@media (max-width: 768px) {
  #page-renovation .reason h3.titles .text {
    line-height: 1.5;
  }
}
#page-renovation .reason .capbox {
  display: flex;
  justify-content: space-between;
  gap: clamp(1rem, 4.1666666667vw, 8rem);
}
@media (max-width: 768px) {
  #page-renovation .reason .capbox {
    display: block;
  }
}
#page-renovation .reason .capbox .cap {
  width: calc(100% - clamp(1rem, 4.1666666667vw, 8rem) - clamp(32.7rem, 49.9609679938vw, 64rem));
}
@media (max-width: 768px) {
  #page-renovation .reason .capbox .cap {
    width: auto;
    margin-bottom: 2.4rem;
  }
}
#page-renovation .reason .capbox .textbox {
  line-height: 2;
  font-weight: var(--fontnormal);
  width: calc(100% - clamp(1rem, 4.1666666667vw, 8rem) - clamp(32.7rem, 37.4707259953vw, 48rem));
}
@media (max-width: 768px) {
  #page-renovation .reason .capbox .textbox {
    width: auto;
    line-height: 1.8;
  }
}
#page-renovation .reason .capbox .textbox p:not(:last-of-type) {
  margin-bottom: clamp(1.6rem, 1.25vw, 2.4rem);
}
#page-renovation .reason .box--01 {
  margin-bottom: clamp(4rem, 5vw, 9.6rem);
}
#page-renovation .reason .box--01 .capbox {
  flex-direction: row-reverse;
}
#page-renovation .reason .box--02 {
  margin-bottom: clamp(5.6rem, 6.25vw, 12rem);
}
#page-renovation .reason .box--03 {
  margin-bottom: clamp(2.4rem, 5vw, 9.6rem);
}
#page-renovation .reason .box--03 h3.titles {
  text-align: center;
  margin-bottom: 5.6rem;
}
#page-renovation .reason .box--03 ul {
  display: flex;
  gap: 4rem;
}
@media (max-width: 768px) {
  #page-renovation .reason .box--03 ul {
    display: block;
  }
}
#page-renovation .reason .box--03 ul li {
  flex: 0 0 calc((100% - 8rem) / 3);
  font-size: clamp(1.4rem, 0.78125vw, 1.5rem);
  line-height: 1.7;
}
@media (max-width: 768px) {
  #page-renovation .reason .box--03 ul li {
    flex: none;
    width: auto;
    line-height: 1.8;
  }
  #page-renovation .reason .box--03 ul li:not(:last-child) {
    margin-bottom: 3.2rem;
  }
}
#page-renovation .reason .box--03 ul li:nth-child(1) {
  padding-top: 1.1rem;
}
#page-renovation .reason .box--03 ul li h4 {
  margin-bottom: 1.6rem;
  font-size: 1.8rem;
  line-height: 1.8;
  font-weight: var(--fontbold);
}
#page-renovation .reason .box--03 ul li h4 .number {
  width: clamp(9.865rem, 11.6552399608vw, 11.9rem);
  margin: 0 auto 1.6rem;
  display: block;
}
#page-renovation .reason .bottombox {
  display: flex;
  justify-content: center;
  gap: 6.4rem;
}
@media (max-width: 768px) {
  #page-renovation .reason .bottombox {
    display: block;
  }
}
#page-renovation .reason .bottombox .btns {
  width: 32rem;
}
@media (max-width: 768px) {
  #page-renovation .reason .bottombox .btns {
    width: auto;
  }
}
#page-renovation .reason .bottombox .btns .itemtext {
  margin-bottom: clamp(1.66rem, 1.2604166667vw, 2.42rem);
  font-size: 1.8rem;
  font-family: var(--titlefont);
}
#page-renovation .reason .bottombox .textbopx {
  width: 40rem;
  line-height: 2;
  font-weight: var(--fontnormal);
}
@media (max-width: 768px) {
  #page-renovation .reason .bottombox .textbopx {
    width: auto;
    line-height: 1.8;
    margin-bottom: 2.4rem;
  }
}

.mb32 {
  margin-bottom: 3.2rem;
}

.mb24 {
  margin-bottom: clamp(1.6rem, 2.34375vw, 2.4rem);
}

.mb16 {
  margin-bottom: 1.6rem;
}

/* =====================================================
  Lightbox
===================================================== */
.lightbox {
  position: fixed;
  inset: 0;
  background: rgba(0, 0, 0, 0.85);
  display: flex;
  align-items: center;
  justify-content: center;
  opacity: 0;
  pointer-events: none;
  transition: opacity 0.4s ease;
  z-index: 9999;
}

.lightbox.is-open {
  opacity: 1;
  pointer-events: auto;
}

.lightbox__img {
  max-width: 90vw;
  max-height: 90vh;
  opacity: 0;
  transform: scale(0.95);
  transition: opacity 0.4s ease, transform 0.4s cubic-bezier(0.22, 1, 0.36, 1);
}

.lightbox.is-open .lightbox__img {
  opacity: 1;
  transform: scale(1);
}

.lightbox__img.fade-out {
  opacity: 0;
  transform: scale(0.98);
}

.lightbox__close {
  position: absolute;
  top: 16px;
  right: 20px;
  font-size: 32px;
  color: #fff;
  background: none;
  border: none;
  cursor: pointer;
}

.lightbox__arrow {
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  font-size: 48px;
  color: #fff;
  background: none;
  border: none;
  cursor: pointer;
  padding: 10px;
}

.lightbox__arrow--prev {
  left: 20px;
}

.lightbox__arrow--next {
  right: 20px;
}

@media (max-width: 768px) {
  .lightbox__arrow {
    font-size: 36px;
  }
}
.bouncetext {
  visibility: hidden;
}
.bouncetext .char {
  display: inline-block;
  opacity: 0;
}
.bouncetext .char.is-active {
  animation: bounceIn 0.9s cubic-bezier(0.25, 0.46, 0.45, 0.94) forwards;
  will-change: transform, opacity;
  transform: translateY(20px);
}

@keyframes bounceIn {
  0% {
    opacity: 0;
    transform: translateY(20px) scale(0.98);
  }
  40% {
    opacity: 1;
    transform: translateY(-8px) scale(1.03);
  }
  65% {
    transform: translateY(4px) scale(0.99);
  }
  85% {
    transform: translateY(-2px) scale(1.01);
  }
  100% {
    opacity: 1;
    transform: translateY(0) scale(1);
  }
}
.fade {
  opacity: 0;
  transform: translateY(5rem);
  transition: opacity 3.2s ease-out, transform 2.6s ease-out;
}
.fade.active {
  opacity: 1;
  transform: translateY(0);
}

#case-loading {
  display: block;
  text-align: center;
  padding: 60px 0;
  font-size: 14px;
  color: #999;
  min-height: 1px;
}

.case-result-count {
  display: none;
  margin-bottom: clamp(0.8rem, 1.5670910872vw, 1.6rem);
  font-size: clamp(1.4rem, 1.5670910872vw, 1.6rem);
  color: #909090;
  font-weight: var(--fontnormal);
}
.case-result-count.is-show {
  display: block;
}

@media (max-width: 768px) {
  #page-sitemap .pagecontents .inner {
    padding-inline: 2.4rem;
  }
  #page-sitemap .pagecontents .navbox .is-case-menu .title {
    margin-bottom: 0;
  }
  #page-sitemap .pagecontents .navbox .title {
    margin-bottom: 1.5rem;
  }
  #page-sitemap .pagecontents .navbox .menu--list {
    max-height: initial;
  }
}

.newsreleasebox {
  display: flex;
  justify-content: center;
  align-items: center;
  padding-top: clamp(5rem, 7.806401249vw, 10rem);
  font-size: clamp(1.4rem, 1.5670910872vw, 1.6rem);
  gap: clamp(2rem, 7.806401249vw, 10rem);
  flex-shrink: 1;
}
@media (max-width: 768px) {
  .newsreleasebox {
    padding-inline: 2.4rem;
    align-items: flex-start;
  }
}
.newsreleasebox h2.title {
  font-family: var(--titlefont);
  font-weight: var(--fontbold);
  font-size: clamp(1.8rem, 1.9516003123vw, 2.5rem);
  line-height: 1;
}
.newsreleasebox h3.titles {
  text-decoration: underline;
}
.newsreleasebox h3.titles .text {
  font-size: clamp(1.3rem, 1.5625vw, 2rem);
  font-weight: var(--fontbold);
  line-height: 1.3846153846;
}
@media (max-width: 768px) {
  .newsreleasebox h3.titles .text {
    line-height: 1.5;
  }
}
.newsreleasebox .timebox {
  font-family: var(--titlefont);
  font-size: clamp(1.3rem, 1.3712047013vw, 1.4rem);
}
.newsreleasebox .box {
  display: flex;
  align-items: center;
  justify-content: center;
  flex-shrink: 1;
  gap: 1rem;
}
@media (max-width: 768px) {
  .newsreleasebox .box {
    align-items: flex-start;
  }
}

.stt-lang-select.tr {
  top: clamp(2.7rem, 2.9382957884vw, 3rem) !important;
  right: clamp(11rem, 14.6914789422vw, 15rem) !important;
  right: 150px;
}
@media (max-width: 768px) {
  .stt-lang-select.tr {
    right: 10rem !important;
    top: 2.2rem !important;
  }
}

@media (max-width: 768px) {
  .stt-lang-select .stt-text {
    padding: 10px 20px 10px 3px !important;
  }
  .stt-lang-select .stt-text:after {
    top: 11px !important;
    right: 6px !important;
  }
}

.cf7-submit {
  -webkit-appearance: none;
  appearance: none;
}

body.home #loading {
  position: fixed;
  inset: 0;
  background: #fff;
  z-index: 9999;
  display: flex;
  align-items: center;
  justify-content: center;
  opacity: 1;
  transition: opacity 1.2s ease;
}
body.home #wrapper {
  opacity: 0;
  transition: opacity 1.2s ease;
}
body.home.loaded #wrapper {
  opacity: 1;
}
body.home.loaded #loading {
  opacity: 0;
  pointer-events: none;
}

/*# sourceMappingURL=main.css.map */
