@charset "UTF-8";

html, body {
  font-family: -apple-system, BlinkMacSystemFont, Roboto, "Segoe UI", "Helvetica Neue", HelveticaNeue, "游ゴシック体", YuGothic, "游ゴシック Medium", "Yu Gothic Medium", "游ゴシック", "Yu Gothic", Verdana, "メイリオ", Meiryo, sans-serif;
  height: 100%;
  background-color: #f4f4f4;
  color: #000;
}

*::selection {
background: #ccc;
}
*::-moz-selection {
background: #ccc;
}

a {
  color: #000;
}
a:hover {
  text-decoration: none;
}

#content a img {
  transition: all .2s;
}
#content a img:hover {
  opacity: 0.7;
}

input[type="submit"], input[type="text"] ,input[type="tel"], input[type="email"], select, textarea, button {
  -moz-appearance: none;
  -webkit-appearance: none;
  -webkit-box-shadow: none;
  box-shadow: none;
  outline: none;
  border: none;
}

ul, ol {
  padding-left: 0;
}


/* ---------------------------------------------------------------
  header
  --------------------------------------------------------------- */
header {
  position: fixed;
  z-index: 200;
  width: 100%;
}
header .header-content {
  display: flex;
  align-items: center;
  justify-content: flex-start;
  height: 280px;
}

header h1 {
  width: 280px;
}
header h1　img {
  width: 100%;
}
header nav ul {
  padding-left: 100px;
  font-size: 0;
}
header nav ul li {
  display: inline-block;
  font-size: 16px;
}
header nav ul li:not(:first-of-type) {
  margin-left: 40px;
}
header nav ul li a {
  position: relative;
  font-family: Cormorant Garamond, serif;
  font-size: 22px;
  text-decoration: none;
  line-height: 1;
  letter-spacing: 0.08em;
}
header nav ul li a:before {
  display: block;
  position: absolute;
  top: 50%;
  left: 0;
  transform: translateY(-0.3em);
  transition: all 0.4s;
  content: '[';
  font-size: 14px;
  opacity: 0;
}
header nav ul li a:after {
  display: block;
  position: absolute;
  top: 50%;
  right: 0;
  transform: translateY(-0.3em);
  transition: all 0.4s;
  content: ']';
  font-size: 14px;
  opacity: 0;
}
header nav ul li a:hover:before, header nav ul li a.cr:before {
  left: -1em;
  opacity: 1;
}
header nav ul li a:hover:after, header nav ul li a.cr:after {
  right: -1em;
  opacity: 1;
}


/* ---------------------------------------------------------------
  content
  --------------------------------------------------------------- */
#content {
  position: relative;
  z-index: 100;
  padding-top: 280px;
}
.inner {
  margin: 0 300px 0 100px;
  width: auto;
}
#content section {
  margin-top: 60px;
}
#content h2 {
  position: fixed;
  top: 0;
  right: 0;
  margin-bottom: 30px;
  color: #ccc;
  font-family: Cormorant Garamond, serif;
  font-size: 200px;
  font-weight: lighter;
  letter-spacing: 0.06em;
  line-height: 0;
  transform-origin: left top;
}
#content h2 .head-jp {
  display: none;
}
#content h3 {
  font-family: Cormorant Garamond, serif;
  font-size: 32px;
  font-weight: 500;
  letter-spacing: 0.1em;
}
#content h3 .head-jp {
  display: inline-block;
  margin-left: 2em;
  font-size: 14px;
  font-family: sans-serif;
}
#content p {
  line-height: 3;
}
#content .itemized {
  display: inline-block;
  margin: 15px 0 0 0;
  padding: 0;
  text-align: left;
  list-style: none;
}
#content .itemized li {
  position: relative;
  padding-left: 1em;
}
#content .itemized li:not(:last-of-type) {
  margin-bottom: 1em;
}
#content .itemized li:after {
  display: block;
  content: '-';
  position: absolute;
  top: 0;
  left: 0;
}
#content .content-description {
  position: fixed;
  top: 20px;
  right: 0;
  transform-origin: left top;
  transform: translateX(530px) rotateZ(90deg);
  color: #999;
  font-family: Cormorant Garamond, serif;
  font-size: 12px;
  letter-spacing: 0.15em;
  line-height: 1.8;
  white-space: nowrap;
}

.content-pager {
  position: relative;
  overflow: hidden;
  margin-top: 80px;
  padding: 0 15px;
  width: 100%;
  min-height: 2em;
  font-family: Cormorant Garamond, serif;
}
.content-pager a {
  padding: 10px;
  text-decoration: none;
  font-size: 18px;
  letter-spacing: 0.06em;
  line-height: 1;
}
.content-pager-prev {
  position: relative;
  z-index: 1;
  float: left;
}
.content-pager-prev a {
  position: relative;
  padding-left: 90px;
  display: block;
}
.content-pager-prev a:after {
  position: absolute;
  top: 60%;
  left: 0;
  content: '';
  width: 80px;
  height: 1px;
  background-color: #000;
  transform-origin: right top;
  transition: all 0.2s;
}
.content-pager-prev a:before {
  position: absolute;
  top: 60%;
  left: 0;
  content: '';
  width: 10px;
  height: 1px;
  background-color: #000;
  transform-origin: left top;
  transform: rotateZ(-45deg);
  transition: all 0.2s;
}
.content-pager-prev a:hover:before {
  left: -15px;
}
.content-pager-prev a:hover:after {
  width: 95px;
  transform: translateX(-15px);
}
.content-pager-top {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  text-align: center;
  line-height: 0;
}
.content-pager-top a {
  display: inline-block;
  transition: all 0.2s;
}
.content-pager-top a:hover {
  transform: translateY(-5px);
}
.content-pager-next {
  position: relative;
  z-index: 1;
  float: right;
}
.content-pager-next a {
  padding-right: 90px;
  display: block;
}
.content-pager-next a:after {
  position: absolute;
  top: 60%;
  right: 0;
  content: '';
  width: 80px;
  height: 1px;
  background-color: #000;
  transition: all 0.2s;
}
.content-pager-next a:before {
  position: absolute;
  top: 60%;
  right: 0;
  content: '';
  width: 10px;
  height: 1px;
  background-color: #000;
  transform-origin: right top;
  transform: rotateZ(45deg);
  transition: all 0.2s;
}
.content-pager-next a:hover:before {
  right: -15px;
}
.content-pager-next a:hover:after {
  width: 95px;
  transform: translateX(15px);
}


/* ---------------------------------------------------------------
  about us
  --------------------------------------------------------------- */
#about h2 {
  transform-origin: left center;
  transform: translateX(430px) rotateZ(90deg);
}
.abut-detail {
  position: relative;
  z-index: 100;
}

/* ---------------------------------------------------------------
  works
  --------------------------------------------------------------- */
#works h2 {
  transform-origin: left center;
  transform: translateX(450px) rotateZ(90deg);
}
.works-masonry {
  padding: 0;
  list-style: none;
}
.works-list {
  width: auto;
}
.works-list .works-list-item {
  position: relative;
  opacity: 0;
  margin: 0 36px 36px 0;
  width: 213px;
  background-color: #fff;
}
.works-list .works-list-item a {
  position: absolute;
  display: block;
  width: 100%;
  height: 100%;
  z-index: 100;
}
.works-list .works-list-item img {
  transition: all 0.2s;
}
.works-list .works-list-item:hover img {
  opacity: 0.7;
}
.works-list .works-list-item img:before {
  display: block;
  content: '';
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}


/* ---------------------------------------------------------------
  works詳細ページ
  --------------------------------------------------------------- */
.works-detail {
  position: relative;
  z-index: 100;
}
.works-detail-head {
  margin-bottom: 18px
}
.works-detail-head time {
  display: block;
  margin-bottom: 10px;
  font-family: Cormorant Garamond, serif;
  font-size: 20px;
  line-height: 1;
  letter-spacing: 0.07em;
}
#works .works-detail-head h3 {
  margin-bottom: 8px;
  font-size: 24px;
  font-family: -apple-system, BlinkMacSystemFont, Roboto, "Segoe UI", "Helvetica Neue", HelveticaNeue, "游ゴシック体", YuGothic, "游ゴシック Medium", "Yu Gothic Medium", "游ゴシック", "Yu Gothic", Verdana, "メイリオ", Meiryo, sans-serif;
  font-feature-settings: "palt";
  font-weight: 700;
  text-align: justify;
  text-justify: inter-ideograph;
  letter-spacing: 0.1em;
}
#works .works-detail-head .works-detail-client {
  font-size: 14px;
  letter-spacing: 0.07em;
  line-height: 1;
}
#works .works-detail-body　.works-detail-list {
}
.works-detail-list .works-detail-item {
  position: relative;
  margin: 0 10px 10px 0;
}
.works-detail-list .works-detail-item img {
  max-width: none;
}
.works-detail-list .works-detail-item:after {
  display: block;
  content: '';
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}

.works-other {
  position: relative;
  z-index: 100;
  margin-top: 100px;
}
.works-other h4 {
  margin-bottom: 10px;
  font-family: Cormorant Garamond, serif;
  font-size: 34px;
  font-weight: lighter;
  letter-spacing: 0.06em;
}
.works-other-list {
  display: flex;
  justify-content: space-between;
  align-items: flex-start;
  font-size: 0;
}
.works-other-item {
  position: relative;
  margin: 0;
  width: 150px;
  transition: all 0.2s;
}
.works-other-item:not(:last-of-type) {
  margin-right: 10px;
}
.works-other-list .works-other-item:hover {
  opacity: 0.7;
}
.works-other-list .works-other-item a {
  display: block;
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}
.works-other-item img {
  width: 100%;
  height: auto;
}

.hidden-fields-container {
  opacity: 0;
}


/* ---------------------------------------------------------------
  order
  --------------------------------------------------------------- */
#order h2 {
  transform-origin: left center;
  transform: translateX(400px) rotateZ(90deg);
}


/* ---------------------------------------------------------------
  contact
  --------------------------------------------------------------- */
#contact h2 {
  transform-origin: left center;
  transform: translateX(590px) rotateZ(90deg);
}


/* ---------------------------------------------------------------
  contact form
  --------------------------------------------------------------- */
.contact-form {
  margin-top: 60px;
}
.contact-form dl {
  margin-bottom: 40px;
  display: flex;
  justify-content: flex-start;
  align-items: center;
}
.contact-form dl:last-of-type {
 align-items: flex-start;
}
.contact-form dl dt {
  flex-basis: 250px;
  letter-spacing: 0.1em;
  text-align: left;
}
.contact-form dl dd {
  position: relative;
  width: 100%;
  text-align: left;
}
.contact-form dl dd input[type="text"], .contact-form dl dd input[type="tel"], .contact-form dl dd input[type="email"] {
  padding: 10px;
  width: 100%;
  background: transparent;
  border: none;
  border-right: 1px solid #cdcdcd;
  border-bottom: 1px solid #cdcdcd;
  height: 50px;
  outline: none;
}

.contact-form dl dd select {
  padding: 0 10px;
  width: 100%;
  height: 50px;
  background: transparent;
  outline: 1px solid #cdcdcd;
  outline-offset: -1px;
}
.contact-form .select-form:after {
  display: block;
  content: '▼';
  position: absolute;
  top: 50%;
  right: 10px;
  transform: translateY(-50%);
}
.contact-form dl dd textarea {
  padding: 10px;
  width: 100%;
  background: transparent;
  border: none;
  border-right: 1px solid #cdcdcd;
  border-bottom: 1px solid #cdcdcd;
  height: 200px;
  outline: none;
}

.cotact-acceptance label {
  display: flex;
  justify-content: center;
  align-items: center;
  letter-spacing: 0.1em;
}
.cotact-acceptance input[type="checkbox"] {
  border: 1px solid #cdcdcd;
  background: none;
}

.cotact-submit {
  text-align: center;
}
.cotact-submit span {
  position: relative;
}
.cotact-submit span:after {
  display: block;
  content: '';
  position: absolute;
  top: 50%;
  right: 30px;
  width: 50px;
  height: 1px;
  background-color: #fff;
  transition: all .2s;
}
.cotact-submit span:before {
  display: block;
  content: '';
  position: absolute;
  top: 50%;
  right: 30px;
  width: 10px;
  height: 1px;
  background-color: #fff;
  transform-origin: right top;
  transform: rotateZ(45deg);
  transition: all .2s;
}
.cotact-submit span:hover:before {
  right: 15px;
}
.cotact-submit span:hover:after {
  width: 65px;
  transform:translateX(15px);
}
.cotact-submit input[type="submit"] {
  margin-top: 60px;
  padding: 0 30px;
  width: 260px;
  height: 50px;
  background-color: #000;
  color: #fff;
  text-align: left;
  letter-spacing: 0.1em;
  cursor: pointer;
}
.contact-form dl dd input[type="text"] ,.contact-form dl dd input[type="tel"] ,.contact-form dl dd input[type="email"] ,.contact-form dl dd textarea {
  transition: all .5s;
}
.contact-form dl dd input[type="text"]:focus ,.contact-form dl dd input[type="tel"]:focus ,.contact-form dl dd input[type="email"]:focus ,.contact-form dl dd textarea:focus {
  background-color: #eee;
}

.screen-reader-response, .wpcf7-validation-errors {
  margin-top: 1em;
  color: #ed4e4e;
}
.screen-reader-response ul {
  display: none !important;
}
.wpcf7-not-valid-tip {
  display: block;
  margin-top: 0.5em;
  color: #ed4e4e;
}


/* ---------------------------------------------------------------
  footer
  --------------------------------------------------------------- */
footer {
  padding: 100px 0 30px 0;
  text-align: center;
}
footer .footer-share {
  display: flex;
  align-items: center;
  justify-content: center;
  margin-bottom: 20px;
}
footer .footer-share li {
  width: 30px;
}
footer .footer-share li:not(:last-of-type) {
  margin-right: 20px;
}
footer .footer-share li a {
  display: block;
}

footer small {
  font-family: Cormorant Garamond, serif;
  font-size: 16px;
  letter-spacing: 0.05em;
}


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

  ここからタブレット

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

@media screen and (max-width: 1199px) {
  body {
    font-size: 1.333333vw;
  }
  /* ---------------------------------------------------------------
    header
    --------------------------------------------------------------- */
  header {
  }
  header .header-content {
    align-items: center;
    flex-wrap: wrap;
    height: 23.333333vw;
  }
  header h1 {
    width: 23.333333vw;
    font-size: 1px;
    line-height: 1;
  }
  header nav {
    margin: -8.333333vw 0 0 0;
    width: 100%;
  }
  header nav ul {
    padding-left: 0;
    font-size: 0;
  }
  header nav ul li {
    font-size: 0.083333vw;
  }
  header nav ul li:not(:first-of-type) {
    margin-left: 3.333333vw;
  }
  header nav ul li a {
    font-size: 1.833333vw;
  }
  header nav ul li a:before {
    font-size: 1.166666vw;
  }
  header nav ul li a:after {
    font-size: 1.166666vw;
  }
  header nav ul li a:hover:before, header nav ul li a.cr:before {
  }
  header nav ul li a:hover:after, header nav ul li a.cr:after {
  }
  
  
  /* ---------------------------------------------------------------
    section
    --------------------------------------------------------------- */
  #content {
    padding-top: 23.333333vw;;
  }
  .inner {
    margin: 0 20.833333vw 0 8.333333vw;
    width: auto;
  }
  #content section {
    margin-top: 5vw;
  }
  #content h2 {
    font-size: 16.666666vw;
  }
  #content h3 {
    font-size: 2.666666vw;
  }
  #content h3 .head-jp {
    font-size: 1.166666vw;
  }
  #content p {
    line-height: 3;
  }
  #content .itemized {
    margin: 1.25vw 0 0 0;
  }
  #content .itemized li {
  }
  #content .itemized li:not(:last-of-type) {
  }
  #content .itemized li:after {
  }
  #content .content-description {
    top: 1.666666vw;
    transform: translateX(78%) rotateZ(90deg);
    font-size: 1vw;
  }
  .content-pager {
    margin-top: 6.666666vw;
    padding: 0 1.25vw;
  }
  .content-pager a {
    padding: 0.833333vw;
    font-size: 1.5vw;
  }
  .content-pager-prev {

  }
  .content-pager-prev a {
    padding-left: 7.5vw;
  }
  .content-pager-prev a:after {
    width: 6.666666vw;
  }
  .content-pager-prev a:before {
    width: 0.833333vw;
  }
  .content-pager-prev a:hover:before {
    left: -1.25vw;
  }
  .content-pager-prev a:hover:after {
    width: 7.916666vw;
    transform: translateX(-1.25vw);
  }

  .content-pager-top {
  }
  .content-pager-top a {
  }
  .content-pager-top a:hover {
    transform: translateY(-0.416666vw);
  }
  .content-pager-next {
  }
  .content-pager-next a {
    padding-right: 7.5vw;
  }
  .content-pager-next a:after {
    width: 6.666666vw;
  }
  .content-pager-next a:before {
    width: 0.833333vw;
  }
  .content-pager-next a:hover:before {
    right: -1.25vw;
  }
  .content-pager-next a:hover:after {
    width: 7.916666vw;
    transform: translateX(1.25vw);
  }

  /* ---------------------------------------------------------------
    about us
    --------------------------------------------------------------- */
  #about h2 {
    transform: translateX(35.833333vw) rotateZ(90deg);
  }

  /* ---------------------------------------------------------------
    works
    --------------------------------------------------------------- */
  #works h2 {
    transform: translateX(37.5vw) rotateZ(90deg);
  }
  .works-masonry {
  }
  .works-list {
  }
  .works-list .works-list-item {
    margin: 0 36px 36px 0;
    width: 213px;
  }
  
  
  /* ---------------------------------------------------------------
    order
    --------------------------------------------------------------- */
  #order h2 {
    transform: translateX(33.333333vw) rotateZ(90deg);
  }


  /* ---------------------------------------------------------------
    contact
    --------------------------------------------------------------- */
  #contact h2 {
    transform: translateX(49.166666vw) rotateZ(90deg);
  }


  /* ---------------------------------------------------------------
    contact form
    --------------------------------------------------------------- */
  .contact-form {
    margin-top: 6.25vw;
  }
  .contact-form dl {
    margin-bottom: 4.166666vw;
  }
  .contact-form dl dt {
  }
  .contact-form dl dd {
  }
  .contact-form dl dd input[type="text"] {
    height: 5.208333vw;
  }

  .contact-form dl dd select {
    height: 4.166666vw;
  }
  .contact-form .select-form:after {
    right: 1.041666vw;
  }
  .contact-form dl dd textarea {
    height: 20.833333vw;
  }
  .cotact-submit span {
  }
  .cotact-submit span:after {
    right: 3.125vw;
    width: 5.208333vw;
  }
  .cotact-submit span:before {
    right: 3.125vw;
    width: 1.041666vw;
  }
  .cotact-submit span:hover:before {
    right: 1.5625vw;
  }
  .cotact-submit span:hover:after {
    width: 6.770833vw;
    transform:translateX(1.5625vw);
  }
  .cotact-submit input[type="submit"] {
    margin-top: 6.25vw;
    padding: 0 3.125vw;
    width: 27.083333vw;
    height: 5.208333vw;
  }

  /* ---------------------------------------------------------------
    footer
    --------------------------------------------------------------- */
  footer {
    padding: 3.125vw 0;
  }
  footer .footer-share {
    margin-bottom: 2.083333vw;
  }
  footer .footer-share li {
    width: 3.125vw;
  }
  footer .footer-share li:not(:last-of-type) {
    margin-right: 2.083333vw;
  }
}



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

  ここからスマートフォン

  ------------------------------------------------------------------------------------------------------------------------------ */
@media screen and (max-width: 767px) {
  body {
    font-size: 4.266666vw;
  }
  
  header {
    position: relative;
  }
  header .header-content {
    height: auto;
  }
  header h1 {
    margin: 0 auto;
    padding: 8vw 0;
    width: 52vw;
    font-size: 1px;
    line-height: 1;
  }
  header h1 img {
    width: 100%;
    height: auto;
  }
  header nav {
    margin: 0;
  }
  header nav ul {
    padding-left: 0;
    font-size: 0;
    text-align: center;
  }
  header nav ul li {
    font-size: 0.083333vw;
  }
  header nav ul li:not(:first-of-type) {
    margin-left: 6.666666vw;
  }
  header nav ul li a {
    font-size: 5.066666vw;
  }
  header nav ul li a:before {
    font-size: 3.733333vw;
  }
  header nav ul li a:after {
    font-size: 3.733333vw;
  }
  header nav ul li a:hover:before {
    opacity: 0;
  }
  header nav ul li a:hover:after {
    opacity: 0;
  }
  header nav ul li a.cr:before {
    opacity: 1;
  }
  header nav ul li a.cr:after {
    opacity: 1;
  }
  
  
  /* ---------------------------------------------------------------
    section
    --------------------------------------------------------------- */
  #content {
    padding-top: 10.333333vw;
  }
  .inner {
    margin: 0 5.333333vw;
  }
  #content section {
    margin-top: 13.333333vw;
  }
  #content h2 {
    position: relative;
    margin: 13vw 0 10.333333vw;
    font-size: 12.333333vw;
    color: #000;
    text-align: center;
  }
  #content h2 .head-jp {
    display: block;
    margin-top: 2.8em;
    font-family: -apple-system, BlinkMacSystemFont, Roboto, "Segoe UI", "Helvetica Neue", HelveticaNeue, "游ゴシック体", YuGothic, "游ゴシック Medium", "Yu Gothic Medium", "游ゴシック", "Yu Gothic", Verdana, "メイリオ", Meiryo, sans-serif;
    font-size: 3.2vw;
    line-height: 1px;
  }
  #content h3 {
    font-size: 8vw;
    text-align: center;
  }
  #content h3 .head-jp {
    display: block;
    margin-left: 0;
    margin-bottom: 5.333333vw;
    font-size: 2.666666vw;
  }
  #content p {
    line-height: 2.5;
  }
  #content .itemized {
    margin: 1.25vw 0 0 0;
  }
  #content .itemized li {
  }
  #content .itemized li:not(:last-of-type) {
  }
  #content .itemized li:after {
  }
  #content .content-description {
    display: none;
  }
  .content-pager {
    margin-top: 16vw;
    padding: 0;
  }
  .content-pager a {
    padding: 0.833333vw;
    font-size: 4.266666vw;
  }
  .content-pager-prev {

  }
  .content-pager-prev a {
    padding-left: 7.5vw;
  }
  .content-pager-prev a:after {
    width: 6vw;
  }
  .content-pager-prev a:before {
    width: 2vw;
  }
  .content-pager-prev a:hover:before {
    left: 0;
  }
  .content-pager-prev a:hover:after {
    width: 6vw;
    transform: translateX(0);
  }

  .content-pager-top {
  }
  .content-pager-top a {
  }
  .content-pager-top a:hover {
    transform: translateY(0);
  }
  .content-pager-next {
  }
  .content-pager-next a {
    padding-right: 7.5vw;
  }
  .content-pager-next a:after {
   width: 6vw;
  }
  .content-pager-next a:before {
    width: 2vw;
  }
  .content-pager-next a:hover:before {
    right: 0;
  }
  .content-pager-next a:hover:after {
    width: 6vw;
    transform: translateX(0);
  }
  
  .works-other {
    margin: 13.333333vw 0 -2.666666vw 0;
  }
  .works-other h4 {
    margin-bottom: 1.333333vw;
    font-size: 6.933333vw;
  }
  .works-other-list {
    display: flex;
    flex-wrap: wrap;
    font-size: 0;
  }
  .works-other-item {
    margin-bottom: 2.666666vw;
    width: 22%;
  }
  .works-other-item:not(:last-of-type) {
    margin-right: 0;
  }

  /* ---------------------------------------------------------------
    about us
    --------------------------------------------------------------- */
  #about h2 {
    transform: translateX(0) rotateZ(0);
  }

  /* ---------------------------------------------------------------
    works
    --------------------------------------------------------------- */
  #works h2 {
    transform: translateX(0) rotateZ(0);
  }
  .works-detail-head time {
    font-size: 5vw;
  }
  #works .works-detail-head h3 {
    font-size: 5.6vw;
    text-align:left;
    text-justify: none;
  }
  .works-detail-client {
     font-size: 3.2vw;
  }
  .works-masonry img {
    width: 100%;
    height: auto;
  }
  .works-list {
  }
  .works-list .works-list-item {
    margin: 0 0 5.333333vw 0;
    width: 47%;
  }
  .works-list .works-list-item:not(:nth-of-type(even)) {
    margin-right: 6%;
  }
  
  .works-detail-list .works-detail-item {
    margin: 0 0 5.333333vw 0;
  }
  
  
  /* ---------------------------------------------------------------
    order
    --------------------------------------------------------------- */
  #order h2 {
    transform: translateX(0) rotateZ(0);
  }


  /* ---------------------------------------------------------------
    contact
    --------------------------------------------------------------- */
  #contact h2 {
    transform: translateX(0) rotateZ(0);
  }


  /* ---------------------------------------------------------------
    contact form
    --------------------------------------------------------------- */
  .contact-form {
    margin-top: 8vw;
  }
  .contact-form dl {
    display: block;
    margin-bottom: 6.666666vw;
  }
  .contact-form dl dt {
    width: auto;
  }
  .contact-form dl dd {
    margin-top: 2.666666vw;
    width: auto;
  }
  .contact-form dl dd input[type="text"] {
    height: 10.666666vw;
  }

  .contact-form dl dd select {
    padding: 2.666666vw;
    height: 10.666666vw;
  }
  .contact-form .select-form:after {
    right: 1.041666vw;
  }
  .contact-form dl dd textarea {
    height: 26.666666vw;
  }
  .cotact-submit span {
  }
  .cotact-submit span:after {
    right: 5.333333vw;
    width: 13.333333vw;
  }
  .cotact-submit span:before {
    right: 5.333333vw;
    width: 2.666666vw;
  }
  .cotact-submit span:hover:before {
    right: 5.333333vw;
    
  }
  .cotact-submit span:hover:after {
    width: 13.333333vw;
    transform:translateX(0);
  }
  .cotact-submit input[type="submit"] {
    margin-top: 6.25vw;
    padding: 0 5.333333vw;
    width: 100%;
    height: 13.333333vw;
    font-size: 4.266666vw;
    text-align: center;
  }

  /* ---------------------------------------------------------------
    footer
    --------------------------------------------------------------- */
  footer {
    padding: 20vw 0 8vw;
  }
  footer .footer-share {
    margin-bottom: 4vw;
  }
  footer .footer-share li {
    width: 8vw;
  }
  footer .footer-share li:not(:last-of-type) {
    margin-right: 5.333333vw;
  }
}