@charset "UTF-8";
/*定数定義*/
* {
  font-family: Archivo, sans-serif;
  box-sizing: border-box; }

a {
  text-decoration: none; }

body {
  margin: 0;
  width: 100%; }

/*トップページ（第１段階）*/
.first-view {
  position: relative; }
  .first-view img {
    width: 100%; }

.first-view-sp img {
  width: 100%; }

.first-view-tab img {
  width: 100%; }

.first-view-message {
  color: #fff;
  position: absolute;
  /*絶対配置*/
  display: none; }

.wrapper {
  display: none; }

/*トップページ（第１段階）- スマホ*/
/*トップページ（第２段階）*/
.title {
  text-align: center;
  color: #707070; }
  .title h1 {
    font-size: 80px;
    margin: 100px 0;
    font-weight: normal; }

.top-page-menu {
  box-sizing: content-box;
  text-align: center;
  width: 100%; }
  .top-page-menu a {
    color: #707070; }

/*メニュー(ヘッダー）*/
header {
  height: 65px;
  margin-top: 50px; }
  header a {
    color: #707070; }

.header-left {
  float: left; }

.header-right {
  float: right; }
  .header-right a {
    display: block;
    float: left;
    transition: all 0.5s; }

/*メニュー(フッター）*/
footer {
  padding-top: 80px;
  margin-top: 50px;
  border-top: solid 1px #707070;
  text-align: center;
  box-sizing: content-box; }
  footer .ft-list {
    display: inline-box; }
    footer .ft-list a {
      color: #707070;
      height: 50px;
      width: 100px;
      font-size: 30px; }
  footer .ft-top {
    font-size: 35px;
    padding-top: 40px; }
    footer .ft-top a {
      color: #707070; }
  footer .ft-copyright {
    padding-top: 40px;
    font-size: 15px;
    margin-bottom: 50px; }
    footer .ft-copyright a {
      color: #707070; }

/*子ページ共通*/
.contents-name {
  text-align: center;
  color: #707070; }
  .contents-name h2 {
    margin-top: 50px;
    margin-bottom: 0;
    font-size: 45px; }
  .contents-name h3 {
    font-size: 30px;
    margin-top: 0; }

/*Aboutページ*/
.about-content {
  text-align: center; }
  .about-content img {
    padding-top: 30px; }

.about-text {
  font-size: 30px;
  box-sizing: content-box; }
  .about-text .profile {
    font-size: 20px;
    padding-top: 30px; }
  .about-text .prof-link a {
    color: #000;
    text-decoration: underline; }

/*About終わり*/
/*Worksページ*/
.works-contents {
  margin-top: 120px;
  text-align: center; }

.works-content {
  position: relative;
  display: inline-block; }
  .works-content img {
    height: auto; }
  .works-content a {
    color: #000; }
  .works-content h4 {
    position: absolute;
    top: 50%;
    left: 50%;
    margin: 0;
    padding: 0;
    -webkit-transform: translate(-50%, -50%);
    -moz-transform: translate(-50%, -50%);
    -ms-transform: translate(-50%, -50%);
    -o-transform: translate(-50%, -50%);
    transform: translate(-50%, -50%);
    display: none; }

.works-content img:hover {
  opacity: 0.3; }

#text-tb {
  position: absolute;
  left: 50%;
  padding: 0;
  -webkit-transform: translate(-50%, -50%);
  -moz-transform: translate(-50%, -50%);
  -ms-transform: translate(-50%, -50%);
  -o-transform: translate(-50%, -50%);
  transform: translate(-50%, -50%); }
  #text-tb span {
    color: #707070; }

/*Works終わり*/
/*Streetページ*/
.photo-gallery {
  text-align: center;
  margin-top: 15px;
  padding-bottom: 50px; }

#nav-drawer {
  position: relative; }

/*チェックボックス等は非表示に*/
.nav-unshown {
  display: none; }

/*アイコンのスペース*/
#nav-open {
  display: inline-block;
  width: 30px;
  height: 22px;
  vertical-align: middle;
  float: right; }

/*ハンバーガーアイコンをCSSだけで表現*/
#nav-open span, #nav-open span:before, #nav-open span:after {
  position: absolute;
  height: 3px;
  /*線の太さ*/
  width: 25px;
  /*長さ*/
  border-radius: 3px;
  background: #555;
  display: block;
  content: '';
  cursor: pointer; }

#nav-open span:before {
  bottom: -8px; }

#nav-open span:after {
  bottom: -16px; }

/*閉じる用の薄黒カバー*/
#nav-close {
  display: none;
  /*はじめは隠しておく*/
  position: fixed;
  z-index: 99;
  top: 0;
  /*全体に広がるように*/
  left: 0;
  width: 100%;
  height: 100%;
  background: black;
  opacity: 0;
  transition: .3s ease-in-out; }

/*中身*/
#nav-content {
  overflow: auto;
  position: fixed;
  top: 0px;
  left: 0;
  z-index: 9999;
  /*最前面に*/
  width: 90%;
  /*右側に隙間を作る（閉じるカバーを表示）*/
  max-width: 330px;
  /*最大幅（調整してください）*/
  height: 100%;
  background: #fff;
  /*背景色*/
  transition: .3s ease-in-out;
  /*滑らかに表示*/
  -webkit-transform: translateX(-105%);
  transform: translateX(-105%);
  /*左に隠しておく*/ }
  #nav-content a {
    font-size: 40px;
    padding-left: 0.5em; }
  #nav-content ul {
    list-style: none;
    margin: 0 auto; }
  #nav-content .sp-sub-menu a {
    font-size: 30px; }

/*チェックが入ったらもろもろ表示*/
#nav-input:checked ~ #nav-close {
  display: block;
  /*カバーを表示*/
  opacity: .5; }

#nav-input:checked ~ #nav-content {
  -webkit-transform: translateX(0%);
  transform: translateX(0%);
  /*中身を表示（右へスライド）*/
  box-shadow: 6px 0 25px rgba(0, 0, 0, 0.15); }

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