@charset "utf-8";

/* =============================================
   Reset & Base
   ============================================= */
*, *::before, *::after { box-sizing: border-box; }

html {
  height: 100%;
  touch-action: manipulation;
  /* scroll-behavior は style.css の scroll-snap-type と合わせて smooth */
}

body {
  margin: 0;
  font-family: "Noto Sans JP", sans-serif;
  font-weight: 400;
  color: #766662;
  line-height: 1.8;
  font-size: 84.5%;
  overflow-x: hidden;
  -webkit-text-size-adjust: 100%;
  letter-spacing: 0.05em;
  text-align: justify;
  text-justify: inter-ideograph;
  -webkit-font-smoothing: antialiased;
  background-color: #fff;
  word-wrap: break-word;
  min-height: 100vh;
}

img {
  margin: 0;
  padding: 0;
  vertical-align: bottom;
  line-height: 0;
  max-width: 100%;
  height: auto;
  backface-visibility: hidden;
  image-rendering: -webkit-optimize-contrast;
}

video {
  max-width: 100%;
  height: auto;
  line-height: 0;
  vertical-align: bottom;
}

a {
  text-decoration: none;
  color: inherit;
}

/* =============================================
   Fade-in animation
   ============================================= */
.ef { opacity: 0; }
.ef.play { animation: fadeEffect 1.5s ease forwards; }

@keyframes fadeEffect {
  0%   { opacity: 0; filter: blur(0.3rem); transform: translateY(2rem); }
  100% { opacity: 1; filter: blur(0); transform: translateY(0); }
}

/* =============================================
   Footer Nav
   ============================================= */
#foot-nav {
  background-color: #F8F6F3;
  text-align: center;
  position: relative;
  z-index: 10;
  padding: 4em 0;
}
#foot-nav ul { margin: 0 auto; }
#foot-nav ul li { width: 22em; margin: 0 auto; }
#foot-nav ul a {
  background-color: #fff;
  border: 1px solid #2B2927;
  display: block;
  padding: 1.3em;
  font-size: 130%;
  letter-spacing: 0.1em;
  margin-bottom: 1em;
  position: relative;
  color: #2B2927;
  transition: .4s;
  overflow: hidden;
  font-weight: 400;
}
#foot-nav ul a span { position: relative; z-index: 2; }
#foot-nav ul a::before {
  content: "";
  position: absolute;
  right: .5em;
  top: calc(50% - .5em);
  width: 1em;
  height: 1em;
  background: url(../../過去案件html/img/arr.svg) no-repeat center center;
  background-size: contain;
}
#foot-nav ul a:hover { background-color: #2B2927; color: #fff; }

/* =============================================
   Footer
   ============================================= */
footer {
  padding: 6em 0;
  position: relative;
  z-index: 10;
  text-align: center;
  font-size: 10px;
  background-color: #F8F6F3;
}

footer .fSns {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 200px;
  margin: 0 auto 3em;
}
footer .fSns li {
  display: inline-block;
  padding: 0 8%;
}
footer .fSns li a {
  transition: .5s;
  width: 1.3rem;
  height: 1.3rem;
  display: block;
  background-size: cover;
  opacity: .4;
}
footer .fSns li a:hover { opacity: 1; }

footer .fSns li a.instagram { background-image: url(data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHZpZXdCb3g9IjAgMCA1MTIgNTEyIj48cGF0aCBkPSJNMzcwLjkgNkgxNDEuMUM2Ni42IDYgNiA2Ni42IDYgMTQxLjF2MjI5LjhDNiA0NDUuNCA2Ni42IDUwNiAxNDEuMSA1MDZoMjI5LjhjNzQuNSAwIDEzNS4xLTYwLjYgMTM1LjEtMTM1LjFWMTQxLjFDNTA2IDY2LjYgNDQ1LjQgNiAzNzAuOSA2em05NC43IDM2NC45YzAgNTIuMi00Mi41IDk0LjctOTQuNyA5NC43SDE0MS4xYy01Mi4yIDAtOTQuNy00Mi41LTk0LjctOTQuN1YxNDEuMWMwLTUyLjIgNDIuNS05NC43IDk0LjctOTQuN2gyMjkuOGM1Mi4yIDAgOTQuNyA0Mi41IDk0LjcgOTQuN3YyMjkuOHoiLz48cGF0aCBkPSJNMzY3LjkgMjM4LjZjLTMuNi0yNC0xNC41LTQ1LjctMzEuNi02Mi44LTE3LjEtMTcuMS0zOC45LTI4LjEtNjIuOC0zMS42LTEwLjktMS42LTIyLTEuNi0zMi45IDAtMjkuNiA0LjQtNTUuOCAyMC4xLTczLjYgNDQuMXMtMjUuMiA1My42LTIwLjkgODMuMmM0LjQgMjkuNiAyMC4xIDU1LjggNDQuMSA3My42IDE5LjUgMTQuNSA0Mi43IDIyLjEgNjYuNiAyMi4xIDUuNSAwIDExLjEtLjQgMTYuNy0xLjIgMjkuNi00LjQgNTUuOC0yMC4xIDczLjYtNDQuMSAxNy44LTI0LjIgMjUuMi01My43IDIwLjgtODMuM3pNMjY3LjUgMzI2Yy0xOSAyLjgtMzcuOS0xLjktNTMuMi0xMy4zLTE1LjQtMTEuNC0yNS40LTI4LjEtMjguMi00Ny4xLTIuOC0xOSAxLjktMzcuOSAxMy4zLTUzLjIgMTEuNC0xNS40IDI4LjEtMjUuNCA0Ny4xLTI4LjIgMy41LS41IDctLjggMTAuNS0uOHM3IC4zIDEwLjUuOGMzMS41IDQuNyA1NS44IDI5IDYwLjQgNjAuNCA1LjggMzktMjEuMyA3NS42LTYwLjQgODEuNHpNMzk2LjcgMTE1LjNjLTMuOC0zLjgtOS01LjktMTQuMy01LjktNS4zIDAtMTAuNSAyLjItMTQuMyA1LjktMy44IDMuOC01LjkgOS01LjkgMTQuM3MyLjIgMTAuNSA1LjkgMTQuM2MzLjggMy44IDkgNS45IDE0LjMgNS45IDUuMyAwIDEwLjUtMi4yIDE0LjMtNS45IDMuOC0zLjggNS45LTkgNS45LTE0LjMgMC01LjMtMi4yLTEwLjUtNS45LTE0LjN6Ii8+PC9zdmc+); }
footer .fSns li a.facebook { background-image: url(data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHZpZXdCb3g9IjAgMCA2MTIgNjEyIj48cGF0aCBkPSJNMzI1LjcgNjA0LjVWMzA1LjhoOTguNWwxNS42LTk5SDMyNS43di00OS42YzAtMjUuOCA4LjUtNTAuNSA0NS41LTUwLjVoNzQuMVY4SDM0MC4yYy04OC40IDAtMTEyLjYgNTguMi0xMTIuNiAxMzguOXY1OS45aC02MC43djk5aDYwLjd2Mjk4LjZoOTguMXYuMXoiLz48L3N2Zz4=); }
footer .fSns li a.line { background-image: url(data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHZpZXdCb3g9IjAgMCA0NTUuNyA0NTUuNyI+PHBhdGggZD0iTTQ0OC42IDE4Ni40QzQ0My4zIDkzIDM0Ni41IDE4LjcgMjI3LjggMTguNyAxMDUuNyAxOC43IDYuNyA5Ny40IDYuNyAxOTQuNWMwIDg5LjMgODMuNiAxNjMgMTkxLjkgMTc0LjMgNi42LjcgMTEuNCA2LjcgMTAuNyAxMy4zbC00LjYgNDEuNWMtMSA5LjQgOC43IDE2LjMgMTcuMiAxMi4yIDkxLjUtNDQuMiAxNDYuMy04OS42IDE3OC45LTEyOSA1LjktNy4yIDI1LjMtMzQuMyAyOS4zLTQxLjUgOC40LTE1LjEgMTQuMi0zMS40IDE2LjktNDguNCAxLTUuMyAxLjUtOS44IDEuNy0xMy40LjUtNS44LjEtMTQuNC0uMS0xNy4xem0tMzA4LjQgNjYuNEg5NC45Yy02LjIgMC0xMS4zLTUuMS0xMS4zLTExLjN2LTg1LjRjMC02LjIgNS4xLTExLjMgMTEuMy0xMS4zczExLjMgNS4xIDExLjMgMTEuM3Y3NC4xaDMzLjljNi4yIDAgMTEuMyA1LjEgMTEuMyAxMS4zLjEgNi4yLTUgMTEuMy0xMS4yIDExLjN6bTQ0LjYtOC45YzAgNC45LTQgOC44LTguOCA4LjhoLTQuOWMtNC45IDAtOC44LTQtOC44LTguOHYtOTAuM2MwLTQuOSA0LTguOCA4LjgtOC44aDQuOWM0LjkgMCA4LjggNCA4LjggOC44djkwLjN6TTI5MCAyNDFjMCA2LjMtNS4xIDExLjgtMTEuNCAxMS44LTMgMC01LjctMS4yLTcuNy0zLjEtLjctLjYtNDYuNS02MC4xLTQ2LjUtNjAuMXY1MS44YzAgNi4yLTUuMSAxMS4zLTExLjMgMTEuMy02LjIgMC0xMS4zLTUuMS0xMS4zLTExLjN2LTg0LjljMC02LjIgNC43LTExLjUgMTAuOS0xMS44IDMuNS0uMSA2LjcgMS40IDguOSAzLjguNy44IDQ1LjkgNTkuNyA0NS45IDU5LjdWMTU2YzAtNi4yIDUuMS0xMS4zIDExLjMtMTEuMyA2LjIgMCAxMS4zIDUuMSAxMS4zIDExLjN2ODV6bTczLjUtMTAuOWM2LjIgMCAxMS4zIDUuMSAxMS4zIDExLjMgMCA2LjItNS4xIDExLjMtMTEuMyAxMS4zaC00NS4yYy02LjIgMC0xMS4zLTUuMS0xMS4zLTExLjNWMTU2YzAtNi4yIDUuMS0xMS4zIDExLjMtMTEuM2g0NS4yYzYuMiAwIDExLjMgNS4xIDExLjMgMTEuMyAwIDYuMi01LjEgMTEuMy0xMS4zIDExLjNoLTMzLjl2MjAuMWgzMy45YzYuMiAwIDExLjMgNS4xIDExLjMgMTEuMyAwIDYuMi01LjEgMTEuMy0xMS4zIDExLjNoLTMzLjl2MjAuMWgzMy45eiIvPjwvc3ZnPg==); }
footer .fSns li a.tiktok { background-image: url(data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iODAwIiBoZWlnaHQ9IjgwMCIgdmlld0JveD0iMCAwIDUxMiA1MTIiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+PHBhdGggZD0iTTQxMi4xOSAxMTguNjZhMTA5LjI3IDEwOS4yNyAwIDAgMS05LjQ1LTUuNSAxMzIuODcgMTMyLjg3IDAgMCAxLTI0LjI3LTIwLjYyYy0xOC4xLTIwLjcxLTI0Ljg2LTQxLjcyLTI3LjM1LTU2LjQzaC4xQzM0OS4xNCAyMy45IDM1MCAxNiAzNTAuMTMgMTZoLTgyLjQ0djMxOC43OGMwIDQuMjggMCA4LjUxLS4xOCAxMi42OSAwIC41Mi0uMDUgMS0uMDggMS41NiAwIC4yMyAwIC40Ny0uMDUuNzF2LjE4YTcwIDcwIDAgMCAxLTM1LjIyIDU1LjU2IDY4LjggNjguOCAwIDAgMS0zNC4xMSA5Yy0zOC40MSAwLTY5LjU0LTMxLjMyLTY5LjU0LTcwczMxLjEzLTcwIDY5LjU0LTcwYTY4LjkgNjguOSAwIDAgMSAyMS40MSAzLjM5bC4xLTgzLjk0YTE1My4xNCAxNTMuMTQgMCAwIDAtMTE4IDM0LjUyIDE2MS43OSAxNjEuNzkgMCAwIDAtMzUuMyA0My41M2MtMy40OCA2LTE2LjYxIDMwLjExLTE4LjIgNjkuMjQtMSAyMi4yMSA1LjY3IDQ1LjIyIDguODUgNTQuNzN2LjJjMiA1LjYgOS43NSAyNC43MSAyMi4zOCA0MC44MkExNjcuNTMgMTY3LjUzIDAgMCAwIDExNSA0NzAuNjZ2LS4ybC4yLjJjMzkuOTEgMjcuMTIgODQuMTYgMjUuMzQgODQuMTYgMjUuMzQgNy42Ni0uMzEgMzMuMzIgMCA2Mi40Ni0xMy44MSAzMi4zMi0xNS4zMSA1MC43Mi0zOC4xMiA1MC43Mi0zOC4xMmExNTguNDYgMTU4LjQ2IDAgMCAwIDI3LjY0LTQ1LjkzYzcuNDYtMTkuNjEgOS45NS00My4xMyA5Ljk1LTUyLjUzVjE3Ni40OWMxIC42IDE0LjMyIDkuNDEgMTQuMzIgOS40MXMxOS4xOSAxMi4zIDQ5LjEzIDIwLjMxYzIxLjQ4IDUuNyA1MC40MiA2LjkgNTAuNDIgNi45di04MS44NGMtMTAuMTQgMS4xLTMwLjczLTIuMS01MS44MS0xMi42MXoiLz48L3N2Zz4=); }
footer .fSns li a.pinterest { background-image: url(data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHZpZXdCb3g9IjAgMCA2MTIgNjEyIj48cGF0aCBkPSJNNTQ1LjIgMjE0LjZDNTQ1LjIgMTA3LjEgNDU2IDcgMzIwLjUgNyAxNTEuOCA3IDY2LjggMTMwLjQgNjYuOCAyMzMuNGMwIDYyLjMgMjMuMSAxMTcuOCA3Mi43IDEzOC40IDguMSAzLjQgMTUuNCAxIDE3LjgtOSAxLjYtNi40IDUuNS0yMi40IDcuMi0yOS4xIDIuNC05LjEgMS41LTEyLjMtNS4xLTIwLjItMTQuMy0xNy4zLTIzLjQtMzkuNS0yMy40LTcxLjEgMC05MS41IDY3LjEtMTczLjUgMTc0LjctMTczLjUgOTUuMyAwIDE0Ny43IDU5LjUgMTQ3LjcgMTM4LjggMCAxMDQuNS00NS4zIDE5Mi43LTExMi42IDE5Mi43LTM3LjIgMC02NC45LTMxLjMtNTYtNjkuOCAxMC42LTQ1LjkgMzEuMy05NS41IDMxLjMtMTI4LjYgMC0yOS42LTE1LjYtNTQuNC00Ny45LTU0LjQtMzggMC02OC41IDQwLjEtNjguNSA5My44IDAgMzQuMiAxMS40IDU3LjMgMTEuNCA1Ny4zcy0zOC45IDE2OC4xLTQ1LjcgMTk3LjVjLTYuMiAyNi44LTcuMSA1Ni4zLTYuMyA4MS4xIDIuNiAyMi4zIDI0LjIgNDAuNSA0MyAxNiAxMy4yLTIxLjUgMjcuNC00OC43IDM0LjctNzUuOSA0LjQtMTYuMSAyNS05OS42IDI1LTk5LjYgMTIuMyAyNCA0OC40IDQ1LjIgODYuNyA0NS4yIDExNC4zLS4xIDE5MS43LTEwNi4zIDE5MS43LTI0OC40eiIvPjwvc3ZnPg==); }
footer .fSns li a.youtube{ background-image: url("data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0iVVRGLTgiPz48c3ZnIGlkPSJMYXllcl8xIiBkYXRhLW5hbWU9IkxheWVyIDEiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIgdmlld0JveD0iMCAwIDYwMi4xODcgNTE1Ljg2OCI+IDxkZWZzPiA8c3R5bGU+IC5jbHMtMSB7IGZpbGw6ICNmZmY7IH0gPC9zdHlsZT4gPC9kZWZzPiA8cGF0aCBkPSJNNjcuNDg2LDQ1NC44M2MtMjUuNzg4LTYuOTkzLTQ1Ljg5Mi0yNy41MzUtNTMuMzIyLTUyLjg4NEMxLjkyNywzNTUuMTgsMS45MjcsMjU3LjcxNiwxLjkyNywyNTcuNzE2YzAsMCwwLTk3LjQ2NCwxMi4yMzctMTQzLjc5Miw3LjQzLTI1Ljc4NiwyNy41MzUtNDUuODkyLDUzLjMyMi01Mi44ODUsNDYuMzI4LTEyLjY3NCwyMzMuMzg5LTEyLjY3NCwyMzMuMzg5LTEyLjY3NCwwLDAsMTg3LjQ5OCwwLDIzMy44MjgsMTIuNjc0LDI2LjIyMyw2Ljk5Myw0NS44OTEsMjcuMDk5LDUyLjg4NSw1Mi44ODUsMTIuNjczLDQ2LjMyOCwxMi42NzMsMTQzLjc5MiwxMi42NzMsMTQzLjc5MiwwLDAsMCw5Ny40NjQtMTIuNjczLDE0NC4yMzEtNi45OTQsMjUuMzQ5LTI2LjY2Miw0NS44OTEtNTIuODg1LDUyLjg4NC00Ni4zMjksMTIuNjc0LTIzMy44MjgsMTIuNjc0LTIzMy44MjgsMTIuNjc0LDAsMC0xODcuMDYxLDAtMjMzLjM4OS0xMi42NzRaTTI0MS40MzQsMzQ3Ljc1bDE1NS4xNTgtOTAuMDM0LTE1NS4xNTgtODkuNTk3djE3OS42MzFaIi8+IDxwb2x5Z29uIGNsYXNzPSJjbHMtMSIgcG9pbnRzPSIyNDEuNDM0IDM0Ny43NSAzOTYuNTkyIDI1Ny43MTYgMjQxLjQzNCAxNjguMTE5IDI0MS40MzQgMzQ3Ljc1Ii8+PC9zdmc+"); width: 1.5rem; }

#copy { color: #999; }

/* =============================================
   Responsive
   ============================================= */
.sp { display: none; }
.ssp { display: none; }

@media screen and (max-width: 810px) {
  body { font-size: 1.8vw; }
  .sp { display: block; }
  .pc { display: none; }
}
@media screen and (max-width: 600px) {
  body { font-size: 3vw; letter-spacing: 0.01em; }
  .ssp { display: block; }
  footer { padding: 5em 0; }
}
