/*
Theme Name: shiroto-kensetsu
Theme URI: https://example.com/
Author: Your Name
Description: Custom theme based on Angular site design
Version: 1.0
*/
.side-menu {
  position: fixed;
  top: 0;
  z-index: 50;
  height: 100%;
  width: 100%;
  flex: none;
  overflow: hidden
}

/*# sourceMappingURL=app.css.map */.aside-linecontact a span {
  writing-mode: vertical-rl;
}

/*# sourceMappingURL=request.css.map */.triangle {
  width: 0;
  height: 0;
  border-style: solid;
  border-right: 10px solid transparent;
  border-left: 10px solid transparent;
  border-bottom: 15px solid #fff;
  border-top: 0;
}

/*# sourceMappingURL=back-top.css.map */p {
  line-height: 2rem;
}

.container {
  max-width: 1024px !important;
  padding-left: 1rem;
  padding-right: 1rem;
}

@media (min-width: 1024px) {
  .container {
    padding-left: 0px;
    padding-right: 0px;
  }
}

header {
  position: relative;
  z-index: 10;
}

.page-top {
  position: relative;
  display: flex;
  height: 80vh;
  width: 100%;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  background-size: cover;
  background-position: center;
  background-repeat: no-repeat;
  padding-left: 1rem;
  padding-right: 1rem;
  font-family: Shippori Mincho, serif;
  --tw-text-opacity: 1;
  color: rgb(255 255 255 / var(--tw-text-opacity, 1));
}

@media (min-width: 640px) {
  .page-top {
    height: 70vh;
  }
}

.page-top h2, .page-top h1, .page-top p {
  position: relative;
  z-index: 10;
}

.page-top h2 {
  font-size: 2.25rem;
  line-height: 2.5rem;
}

@media (min-width: 640px) {
  .page-top h2 {
    font-size: 4.5rem;
    line-height: 1;
  }
}

.page-top h1 {
  margin-bottom: 5rem;
  margin-top: 1rem;
  font-size: 1.875rem;
  line-height: 2.25rem;
}

.page-top .scroll {
  position: absolute;
  bottom: 2.5rem;
  z-index: 10;
  display: flex;
  flex-direction: column;
  align-items: center;
  row-gap: 1.5rem;
}

.page-top .scroll img {
  animation: scroll 3.5s infinite;
  content: "";
  display: inline-block;
  margin: auto;
  top: 0;
  right: 0;
  left: 0;
}

.page-top::before {
  content: "";
  position: absolute;
  top: 0px;
  left: 0px;
  height: 100%;
  width: 100%;
  background-image: linear-gradient(to bottom, var(--tw-gradient-stops));
  --tw-gradient-from: rgb(81 69 56 / 0.1) var(--tw-gradient-from-position);
  --tw-gradient-to: rgb(81 69 56 / 0) var(--tw-gradient-to-position);
  --tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to);
  --tw-gradient-to: rgb(81 69 56 / 0.9) var(--tw-gradient-to-position);
}

@keyframes scroll {
  0% {
    transform: translate(0, 0);
  }

  80% {
    transform: translate(0px, 30px);
  }

  0%, 80%, 100% {
    opacity: 0;
  }

  40% {
    opacity: 1;
  }
}

.contents-title {
  margin-bottom: 1rem;
  font-family: Shippori Mincho, serif;
}

.contents-title h3 {
  font-size: 1.875rem;
  line-height: 2.25rem;
}

.button {
  position: relative;
  display: flex;
  width: 18rem;
  align-items: center;
  justify-content: center;
  --tw-bg-opacity: 1;
  background-color: rgb(81 69 56 / var(--tw-bg-opacity, 1));
  padding-top: 1rem;
  padding-bottom: 1rem;
  --tw-text-opacity: 1;
  color: rgb(255 255 255 / var(--tw-text-opacity, 1));
  transition-property: all;
  transition-duration: 75ms;
  transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
}

.button:hover {
  --tw-shadow: 0 25px 50px -12px rgb(0 0 0 / 0.25);
  --tw-shadow-colored: 0 25px 50px -12px var(--tw-shadow-color);
  box-shadow: var(--tw-ring-offset-shadow, 0 0 #0000), var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow);
}

.button::before {
  content: "";
  background-image: url("/wp-content/themes/shiroto-kensetsu/assets/icon/arrow-w.svg");
  background-repeat: no-repeat;
  background-size: contain;
  position: absolute;
  right: 0.5rem;
  top: 50%;
  height: 1rem;
  width: 1rem;
  --tw-translate-y: -50%;
  transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));
}

.button:hover::before {
  --tw-translate-x: 0.25rem;
  transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));
  transition-property: all;
  transition-duration: 75ms;
  transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
}

.button-w {
  --tw-bg-opacity: 1;
  background-color: rgb(255 255 255 / var(--tw-bg-opacity, 1));
  --tw-text-opacity: 1;
  color: rgb(255 166 0 / var(--tw-text-opacity, 1));
}

.button-w::before {
  background-image: url("/wp-content/themes/shiroto-kensetsu/assets/icon/arrow-o.svg");
}

.page-numbers.current {
  --tw-bg-opacity: 1;
  background-color: rgb(81 69 56 / var(--tw-bg-opacity, 1));
  --tw-text-opacity: 1;
  color: rgb(255 255 255 / var(--tw-text-opacity, 1));
  width: 1.5rem;
  height: 1.5rem;
  display: flex;
  justify-content: center;
  align-items: center;
}

.feature {
  display: flex;
  justify-content: center;
  background-color: rgb(255 166 0 / 0.1);
  padding-top: 8rem;
  padding-bottom: 8rem;
}

.feature__tag {
  border-radius: 0.5rem;
  border-width: 1px;
  --tw-border-opacity: 1;
  border-color: rgb(255 166 0 / var(--tw-border-opacity, 1));
  padding: 0.5rem;
  --tw-text-opacity: 1;
  color: rgb(255 166 0 / var(--tw-text-opacity, 1));
}

.feature h3 {
  margin-top: 1rem;
  margin-bottom: 1rem;
  width: 100%;
  border-bottom-width: 1px;
  border-color: rgb(0 0 0 / 0.2);
  padding-bottom: 1rem;
  text-align: center;
  font-size: 1.875rem;
  line-height: 2.25rem;
  font-weight: 700;
}

.feature__item {
  position: relative;
  margin-top: 2.5rem;
  margin-bottom: 2.5rem;
  display: flex;
  width: 100%;
  flex-direction: column;
  align-items: center;
}

@media (min-width: 768px) {
  .feature__item {
    margin-top: 7rem;
    margin-bottom: 7rem;
    flex-direction: row;
    justify-content: flex-end;
  }
}

.feature__item__text {
  left: 0px;
  z-index: 0;
  background-color: rgb(255 255 255 / 0.8);
  padding: 4rem;
  --tw-shadow: 0 10px 15px -3px rgb(0 0 0 / 0.1), 0 4px 6px -4px rgb(0 0 0 / 0.1);
  --tw-shadow-colored: 0 10px 15px -3px var(--tw-shadow-color), 0 4px 6px -4px var(--tw-shadow-color);
  box-shadow: var(--tw-ring-offset-shadow, 0 0 #0000), var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow);
}

@media (min-width: 768px) {
  .feature__item__text {
    position: absolute;
    width: 66.666667%;
    padding-right: 5rem;
  }
}

.feature__item__text h4 {
  font-size: 1.25rem;
  line-height: 1.75rem;
  font-weight: 700;
}

.feature__item__text__detail {
  margin-top: 1.5rem;
}

.feature__item__num {
  position: absolute;
  top: -1rem;
  left: 0px;
  font-family: Shippori Mincho, serif;
  font-size: 2.25rem;
  line-height: 2.5rem;
}

.feature__item__sub {
  font-weight: 700;
  color: rgb(81 69 56 / 0.4);
}

.feature__item__image {
  z-index: 10;
  margin-top: -2.5rem;
  aspect-ratio: 16 / 9;
  height: 100%;
  width: 90%;
}

@media (min-width: 768px) {
  .feature__item__image {
    width: 40%;
  }
}

.feature__item__image img {
  height: 100%;
  width: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}

.feature__item-reverse {
  justify-content: flex-start;
}

.feature__item-reverse .feature__item__text {
  left: auto;
  right: 0px;
  padding-right: 2.5rem;
}

@media (min-width: 768px) {
  .feature__item-reverse .feature__item__text {
    padding-left: 7rem;
  }

  .feature__item-reverse .feature__item__text span {
    left: 5rem;
  }
}

.contents__description > div {
  display: grid;
  grid-template-columns: repeat(1, minmax(0, 1fr));
  align-items: center;
  gap: 5rem;
}

@media (min-width: 768px) {
  .contents__description > div {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

.contents__description h3 {
  margin-bottom: 0.5rem;
  font-family: Shippori Mincho, serif;
  font-size: 1.875rem;
  line-height: 2.25rem;
}

.contents__description .contents__description__sub {
  color: rgb(81 69 56 / 0.4);
}

.contents__description p {
  margin-top: 1.5rem;
}

.footer .top-title {
  font-family: Shippori Mincho, serif;
  font-size: 3rem;
  line-height: 1;
}

@media (min-width: 640px) {
  .footer .top-title {
    font-size: 3.75rem;
    line-height: 1;
  }
}

.footer .contact {
  background-image: url("/wp-content/themes/shiroto-kensetsu/assets/img/contact-bg.png");
  background-repeat: no-repeat;
  background-size: cover;
  background-position: center;
}

.footer .sns-link ul li a:hover {
  opacity: 0.7;
}

.footer .page-link ul li a {
  position: relative;
  display: inline-block;
}

.footer .page-link ul li a::after {
  position: absolute;
  left: 0px;
  bottom: 0px;
  height: 1px;
  width: 100%;
  transform-origin: left;
  --tw-scale-x: 0;
  transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));
  --tw-bg-opacity: 1;
  background-color: rgb(0 0 0 / var(--tw-bg-opacity, 1));
  transition-property: transform;
  transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
  content: var(--tw-content);
  transition-duration: 300ms;
}

.footer .page-link ul li a:hover::after {
  content: var(--tw-content);
  --tw-scale-x: 1;
  transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));
}

.footer .privacy a {
  position: relative;
  display: inline-block;
}

.footer .privacy a::after {
  position: absolute;
  left: 0px;
  bottom: 0px;
  height: 1px;
  width: 100%;
  transform-origin: left;
  --tw-scale-x: 0;
  transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));
  --tw-bg-opacity: 1;
  background-color: rgb(0 0 0 / var(--tw-bg-opacity, 1));
  transition-property: transform;
  transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
  content: var(--tw-content);
  transition-duration: 300ms;
}

.footer .privacy a:hover::after {
  content: var(--tw-content);
  --tw-scale-x: 1;
  transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));
}

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

.keen-slider:not([data-keen-slider-disabled]){
  -webkit-touch-callout:none;
  -webkit-tap-highlight-color:transparent;
  align-content:flex-start;
  display:flex;
  overflow:hidden;
  position:relative;
  touch-action:pan-y;
  -webkit-user-select:none;
  -moz-user-select:none;
  user-select:none;
  -khtml-user-select:none;
  width:100%
}

.keen-slider:not([data-keen-slider-disabled]) .keen-slider__slide{
  min-height:100%;
  overflow:hidden;
  position:relative;
  width:100%
}

.keen-slider:not([data-keen-slider-disabled])[data-keen-slider-reverse]{
  flex-direction:row-reverse
}

.keen-slider:not([data-keen-slider-disabled])[data-keen-slider-v]{
  flex-wrap:wrap
}

p{
  line-height:2rem
}

.container{
  max-width:1024px;
  padding-left:1rem;
  padding-right:1rem
}

@media (min-width: 1024px){
  .container{
    padding-left:0px;
    padding-right:0px
  }
}

.page-top{
  position:relative;
  display:flex;
  height:80vh;
  width:100%;
  flex-direction:column;
  align-items:center;
  justify-content:center;
  background-size:cover;
  background-position:center;
  background-repeat:no-repeat;
  padding-left:1rem;
  padding-right:1rem;
  font-family:Shippori Mincho, serif;
  --tw-text-opacity:1;
  color:rgb(255 255 255 / var(--tw-text-opacity, 1))
}

@media (min-width: 640px){
  .page-top{
    height:70vh
  }
}

.page-top h2, .page-top h1, .page-top p{
  position:relative;
  z-index:10
}

.page-top h2{
  font-size:2.25rem;
  line-height:2.5rem
}

@media (min-width: 640px){
  .page-top h2{
    font-size:4.5rem;
    line-height:1
  }
}

.page-top h1{
  margin-bottom:5rem;
  margin-top:1rem;
  font-size:1.875rem;
  line-height:2.25rem
}

.page-top .scroll{
  position:absolute;
  bottom:2.5rem;
  z-index:10;
  display:flex;
  flex-direction:column;
  align-items:center;
  row-gap:1.5rem
}

.page-top .scroll img {
  animation: scroll 3.5s infinite;
  content: "";
  display: inline-block;
  margin: auto;
  top: 0;
  right: 0;
  left: 0;
}

.page-top::before {
  content: "";
  position:absolute;
  top:0px;
  left:0px;
  height:100%;
  width:100%;
  background-image:linear-gradient(to bottom, var(--tw-gradient-stops));
  --tw-gradient-from:rgb(81 69 56 / 0.1) var(--tw-gradient-from-position);
  --tw-gradient-to:rgb(81 69 56 / 0) var(--tw-gradient-to-position);
  --tw-gradient-stops:var(--tw-gradient-from), var(--tw-gradient-to);
  --tw-gradient-to:rgb(81 69 56 / 0.9) var(--tw-gradient-to-position);
}

@keyframes scroll {
  0% {
    transform: translate(0, 0);
  }

  80% {
    transform: translate(0px, 30px);
  }

  0%, 80%, 100% {
    opacity: 0;
  }

  40% {
    opacity: 1;
  }
}

.contents-title{
  margin-bottom:1rem;
  font-family:Shippori Mincho, serif
}

.contents-title h3{
  font-size:1.875rem;
  line-height:2.25rem
}

.button{
  position:relative;
  display:flex;
  width:18rem;
  align-items:center;
  justify-content:center;
  --tw-bg-opacity:1;
  background-color:rgb(81 69 56 / var(--tw-bg-opacity, 1));
  padding-top:1rem;
  padding-bottom:1rem;
  --tw-text-opacity:1;
  color:rgb(255 255 255 / var(--tw-text-opacity, 1));
  transition-property:all;
  transition-duration:75ms;
  transition-timing-function:cubic-bezier(0.4, 0, 0.2, 1)
}

.button:hover{
  --tw-shadow:0 25px 50px -12px rgb(0 0 0 / 0.25);
  --tw-shadow-colored:0 25px 50px -12px var(--tw-shadow-color);
  box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000), var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow)
}

.button::before {
  content: "";
  background-image: url("/wp-content/themes/shiroto-kensetsu/assets/icon/arrow-w.svg");
  background-repeat: no-repeat;
  background-size: contain;
  position:absolute;
  right:0.5rem;
  top:50%;
  height:1rem;
  width:1rem;
  --tw-translate-y:-50%;
  transform:translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));
}

.button:hover::before{
  --tw-translate-x:0.25rem;
  transform:translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));
  transition-property:all;
  transition-duration:75ms;
  transition-timing-function:cubic-bezier(0.4, 0, 0.2, 1)
}

.button-w{
  --tw-bg-opacity:1;
  background-color:rgb(255 255 255 / var(--tw-bg-opacity, 1));
  --tw-text-opacity:1;
  color:rgb(255 166 0 / var(--tw-text-opacity, 1))
}

.button-w::before {
  background-image: url("/wp-content/themes/shiroto-kensetsu/assets/icon/arrow-o.svg");
}

.feature{
  display:flex;
  justify-content:center;
  background-color:rgb(255 166 0 / 0.1);
  padding-top:8rem;
  padding-bottom:8rem
}

.feature__tag{
  border-radius:0.5rem;
  border-width:1px;
  --tw-border-opacity:1;
  border-color:rgb(255 166 0 / var(--tw-border-opacity, 1));
  padding:0.5rem;
  --tw-text-opacity:1;
  color:rgb(255 166 0 / var(--tw-text-opacity, 1))
}

.feature h3{
  margin-top:1rem;
  margin-bottom:1rem;
  width:100%;
  border-bottom-width:1px;
  border-color:rgb(0 0 0 / 0.2);
  padding-bottom:1rem;
  text-align:center;
  font-size:1.875rem;
  line-height:2.25rem;
  font-weight:700
}

.feature__item{
  position:relative;
  margin-top:2.5rem;
  margin-bottom:2.5rem;
  display:flex;
  width:100%;
  flex-direction:column;
  align-items:center
}

@media (min-width: 768px){
  .feature__item{
    margin-top:7rem;
    margin-bottom:7rem;
    flex-direction:row;
    justify-content:flex-end
  }
}

.feature__item__text{
  left:0px;
  z-index:0;
  background-color:rgb(255 255 255 / 0.8);
  padding:4rem;
  --tw-shadow:0 10px 15px -3px rgb(0 0 0 / 0.1), 0 4px 6px -4px rgb(0 0 0 / 0.1);
  --tw-shadow-colored:0 10px 15px -3px var(--tw-shadow-color), 0 4px 6px -4px var(--tw-shadow-color);
  box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000), var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow)
}

@media (min-width: 768px){
  .feature__item__text{
    position:absolute;
    width:66.666667%;
    padding-right:5rem
  }
}

.feature__item__text h4{
  font-size:1.25rem;
  line-height:1.75rem;
  font-weight:700
}

.feature__item__text__detail{
  margin-top:1.5rem
}

.feature__item__num{
  position:absolute;
  top:-1rem;
  left:0px;
  font-family:Shippori Mincho, serif;
  font-size:2.25rem;
  line-height:2.5rem
}

.feature__item__sub{
  font-weight:700;
  color:rgb(81 69 56 / 0.4)
}

.feature__item__image{
  z-index:10;
  margin-top:-2.5rem;
  aspect-ratio:16 / 9;
  height:100%;
  width:90%
}

@media (min-width: 768px){
  .feature__item__image{
    width:40%
  }
}

.feature__item__image img{
  height:100%;
  width:100%;
  -o-object-fit:cover;
     object-fit:cover
}

.feature__item-reverse{
  justify-content:flex-start
}

.feature__item-reverse .feature__item__text{
  left:auto;
  right:0px;
  padding-right:2.5rem
}

@media (min-width: 768px){
  .feature__item-reverse .feature__item__text{
    padding-left:7rem
  }

  .feature__item-reverse .feature__item__text span{
    left:5rem
  }
}

.contents__description > div{
  display:grid;
  grid-template-columns:repeat(1, minmax(0, 1fr));
  align-items:center;
  gap:5rem
}

@media (min-width: 768px){
  .contents__description > div{
    grid-template-columns:repeat(2, minmax(0, 1fr))
  }
}

.contents__description h3{
  margin-bottom:0.5rem;
  font-family:Shippori Mincho, serif;
  font-size:1.875rem;
  line-height:2.25rem
}

.contents__description .contents__description__sub{
  color:rgb(81 69 56 / 0.4)
}

.contents__description p{
  margin-top:1.5rem
}

.top-title{
  margin-bottom:0.5rem;
  font-family:Shippori Mincho, serif;
  font-size:3rem;
  line-height:1
}

@media (min-width: 640px){
  .top-title{
    font-size:3.75rem;
    line-height:1
  }
}

.top {
  background-image: url("/wp-content/themes/shiroto-kensetsu/assets/img/top/overlay.jpg");
  background-position: center;
  background-repeat: no-repeat;
  background-size: cover;
}

.top h1{
  position:relative;
  z-index:0
}

.top h1::before {
  content: "";
  position:absolute;
  top:50%;
  left:50%;
  z-index:-10;
  height:100%;
  width:100%;
  --tw-translate-y:-50%;
  --tw-translate-x:-50%;
  transform:translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));
  background-color:rgb(255 255 255 / 0.6);
  --tw-blur:blur(16px);
  filter:var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow);
}

.top-link ul li a{
  position:relative;
  display:inline-block;
  cursor:pointer
}

.top-link ul li a::after{
  position:absolute;
  left:0px;
  bottom:0px;
  height:1px;
  width:100%;
  transform-origin:left;
  --tw-scale-x:0;
  transform:translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));
  --tw-bg-opacity:1;
  background-color:rgb(255 255 255 / var(--tw-bg-opacity, 1));
  transition-property:transform;
  transition-timing-function:cubic-bezier(0.4, 0, 0.2, 1);
  content:var(--tw-content);
  transition-duration:300ms
}

.top-link ul li a:hover::after{
  content:var(--tw-content);
  --tw-scale-x:1;
  transform:translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))
}

.concept{
  position:relative;
  z-index:10;
  overflow:hidden
}

.concept .catchcopy{
  display:inline-block;
  width:-moz-fit-content;
  width:fit-content;
  --tw-bg-opacity:1;
  background-color:rgb(255 255 255 / var(--tw-bg-opacity, 1));
  padding-left:1rem;
  padding-right:1rem;
  padding-top:0.25rem;
  padding-bottom:0.25rem;
  font-size:1.25rem;
  line-height:2.5rem;
  letter-spacing:0.025em;
  --tw-text-opacity:1;
  color:rgb(0 0 0 / var(--tw-text-opacity, 1))
}

@media (min-width: 768px){
  .concept .catchcopy{
    font-size:1.875rem;
    line-height:2.25rem
  }
}

.concept::before {
  content: "";
  position:absolute;
  top:-20%;
  left:-10%;
  z-index:-10;
  aspect-ratio:1 / 1;
  height:auto;
  width:40%;
  border-radius:9999px;
  --tw-bg-opacity:1;
  background-color:rgb(255 127 59 / var(--tw-bg-opacity, 1));
  --tw-blur:blur(64px);
  filter:var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow);
}

@media (min-width: 640px){
  .concept::before{
    width:30%
  }
}

.concept::before {
  background-repeat: no-repeat;
  background-size: contain;
}

.concept::after {
  content: "";
  position:absolute;
  bottom:50%;
  right:-10%;
  z-index:-10;
  aspect-ratio:1 / 1;
  height:auto;
  width:40%;
  border-radius:9999px;
  --tw-bg-opacity:1;
  background-color:rgb(255 127 59 / var(--tw-bg-opacity, 1));
  --tw-blur:blur(64px);
  filter:var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow);
}

@media (min-width: 640px){
  .concept::after{
    bottom:-10%
  }
}

.concept::after {
  background-repeat: no-repeat;
  background-size: contain;
}

.business__list ul{
  display:grid;
  grid-template-columns:repeat(1, minmax(0, 1fr));
  -moz-column-gap:1.5rem;
       column-gap:1.5rem
}

@media (min-width: 640px){
  .business__list ul{
    grid-template-columns:repeat(3, minmax(0, 1fr))
  }
}

.business__list ul li{
  display:flex;
  flex-direction:column
}

.business__list__num{
  position:relative;
  bottom:-0.5rem;
  font-family:Shippori Mincho, serif;
  font-size:2.25rem;
  line-height:2.5rem;
  font-weight:700;
  --tw-text-opacity:1;
  color:rgb(255 127 59 / var(--tw-text-opacity, 1))
}

.business__list__img{
  aspect-ratio:16 / 9;
  width:100%;
  overflow:hidden
}

.business__list__img img{
  height:100%;
  width:100%;
  -o-object-fit:cover;
     object-fit:cover;
  -o-object-position:center;
     object-position:center
}

.business__list__text{
  flex:1 1 0%;
  background-image:linear-gradient(to bottom, var(--tw-gradient-stops));
  --tw-gradient-from:#FF7F3B var(--tw-gradient-from-position);
  --tw-gradient-to:rgb(255 127 59 / 0) var(--tw-gradient-to-position);
  --tw-gradient-stops:var(--tw-gradient-from), var(--tw-gradient-to);
  --tw-gradient-to:#FFA600 var(--tw-gradient-to-position);
  padding:1rem;
  --tw-text-opacity:1;
  color:rgb(255 255 255 / var(--tw-text-opacity, 1))
}

.business__list__text h4{
  margin-top:1rem;
  margin-bottom:0.5rem;
  font-size:1.25rem;
  line-height:1.75rem;
  font-weight:700
}

.business__list__text p{
  font-size:1rem;
  line-height:1.5rem
}

.strength {
  background-image: url("/wp-content/themes/shiroto-kensetsu/assets/img/top/strength-bg.png");
  background-repeat: no-repeat;
  background-position: center;
  background-size: cover;
}

.strength__button{
  display:flex;
  height:5rem;
  width:5rem;
  align-items:center;
  justify-content:center;
  border-radius:9999px;
  border-width:1px;
  border-color:rgb(0 0 0 / 0.1);
  --tw-bg-opacity:1;
  background-color:rgb(255 255 255 / var(--tw-bg-opacity, 1));
  transition-property:opacity;
  transition-timing-function:cubic-bezier(0.4, 0, 0.2, 1);
  transition-duration:500ms;
  transition-timing-function:cubic-bezier(0, 0, 0.2, 1)
}

.strength__button:hover{
  --tw-shadow:0 10px 15px -3px rgb(0 0 0 / 0.1), 0 4px 6px -4px rgb(0 0 0 / 0.1);
  --tw-shadow-colored:0 10px 15px -3px var(--tw-shadow-color), 0 4px 6px -4px var(--tw-shadow-color);
  box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000), var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow)
}

.construction-pagination ul {
  margin-top: 3rem;
  display: flex;
  justify-content: center;
  gap: 1rem;
}

.construction-title {
  margin: 1rem 0;
}

.construction-grid {
  display:grid;
  grid-template-columns:repeat(2, minmax(0, 1fr));
  -moz-column-gap:1.5rem;
       column-gap:1.5rem
}

@media (min-width: 640px){
  .construction-grid{
    grid-template-columns:repeat(3, minmax(0, 1fr))
  }
}

.construction-grid .construction-item a{
  display:flex;
  cursor:pointer;
  flex-direction:column;
  row-gap:0.5rem
}

.case__list {
  margin-top: 3rem;
}

.case__list .construction-grid .construction-item a span{
  font-weight:700;
  color:rgb(81 69 56 / 0.4)
}

.case__list .construction-grid .construction-item a img {
  transition: transform 0.4s ease;
}

.case__list .construction-grid .construction-item a:hover img {
  transform: scale(1.1);
}

.news__list .post-grid{
  display:flex;
  width:100%;
  flex-direction:column;
  row-gap:2rem
}

.news__list .post-grid .post-item{
  position:relative;
  padding-bottom:1.5rem
}

.news__list .post-grid .post-item::after{
  position:absolute;
  left:0px;
  bottom:0px;
  height:1px;
  width:100%;
  transform-origin:right;
  --tw-bg-opacity:1;
  background-color:rgb(0 0 0 / var(--tw-bg-opacity, 1));
  transition-property:transform;
  transition-timing-function:cubic-bezier(0.4, 0, 0.2, 1);
  content:var(--tw-content);
  transition-duration:300ms
}

.news__list .post-grid .post-item:hover::after{
  content:var(--tw-content);
  --tw-scale-x:0;
  transform:translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))
}

.news__list .post-item a{
  display:flex;
  cursor:pointer;
  align-items:center;
  -moz-column-gap:1rem;
       column-gap:1rem
}

.news__list ul li a .category{
  padding-top:0.5rem;
  padding-bottom:0.5rem;
  padding-left:1rem;
  padding-right:1rem;
  font-size:0.875rem;
  line-height:1.25rem;
  --tw-text-opacity:1;
  color:rgb(255 255 255 / var(--tw-text-opacity, 1))
}

.news__button::before {
  content: "";
  position:absolute;
  right:0.5rem;
  top:50%;
  height:1rem;
  width:1rem;
  --tw-translate-y:-50%;
  transform:translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));
  background-image: url("/wp-content/themes/shiroto-kensetsu/assets/icon/arrow-b.svg");
  background-position: center;
  background-repeat: no-repeat;
  background-size: contain;
}

.news__button:hover::before{
  --tw-translate-x:0.25rem;
  transform:translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));
  transition-property:all;
  transition-duration:150ms;
  transition-timing-function:cubic-bezier(0.4, 0, 0.2, 1)
}

.single-post {
  display: flex;
  flex-direction: column;
  align-items: center;
}

.single-post article {
  margin: 5rem 0;
  max-width: 1024px;
  width: 100%;
}

.single-post article p {
  margin-bottom: 1rem;
}

.single-post article figure {
  margin-bottom: 1rem;
  display: flex;
  justify-content: center;
}

.single-post article figure img {
  width: 80%;
}

@media (max-width: 640px) {
  .single-post article figure img {
    width: 100%;
  }
}

.post-image-grid {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 10px;
}

.post-image-grid figure {
    margin: 0;
}
z
.post-image-grid img {
    width: 100%;
    height: auto;
    border-radius: 8px;
}

.single-post article figure img {
  width: 100%;
}

@media (max-width: 640px) {
  .post-image-grid {
    grid-template-columns: repeat(2, 1fr);
  }
}

.single-construction {
  display: flex;
  flex-direction: column;
  align-items: center;
}

.single-construction article {
  margin: 5rem 0;
  max-width: 1024px;
  width: 100%;
}

.single-construction article p {
  margin-bottom: 1rem;
}

.works-back__button {
  padding: 1rem 3rem;
}

html {
  scroll-behavior: smooth;
}

.breadcrumb a {
  text-decoration: underline;
}

.breadcrumb a:hover {
  text-decoration: none;
}

.fbc-page {
  width: 100%;
  margin: .5rem .5rem .5rem 0;
}

.fbc-page a {
  text-decoration: underline;
}

.fbc-page a:hover {
  text-decoration: none;
}

.fbc-page .fbc-wrap .fbc-items li:first-child {
  padding-left: 0;
}

.single-works {
  width: 100%;
  display: flex;
  flex-direction: column;
  align-items: center;
  font-family: Shippori Mincho,serif;
  padding-bottom: 5rem;
}

.single-works h2 {
  font-size: 3.75rem;
  margin-bottom: .5rem;
}

.single-works span {
  font-weight: 700;
  font-size: 1.5rem;
  line-height: 2rem;
}

.single-news {
  width: 100%;
  display: flex;
  flex-direction: column;
  align-items: center;
  font-family: Shippori Mincho,serif;
  padding-bottom: 5rem;
}

.single-news h2 {
  font-size: 3.75rem;
  margin-bottom: .5rem;
}

.single-news span {
  font-weight: 700;
  font-size: 1.5rem;
  line-height: 2rem;
}
/*# sourceMappingURL=top.css.map */

.navigation {
  width: 100%;
  height: 100%;
}

.navigation nav a {
  font-size: 1.1rem;
  cursor: pointer;
  --tw-text-opacity: 1;
  color: rgb(81 69 56 / var(--tw-text-opacity, 1));
}

.navigation nav a:hover {
  opacity: 0.7;
}

.logo img {
  max-width: 100%;
}

/*# sourceMappingURL=side-menu.css.map */
