@charset "UTF-8";

/* デスクトップファーストで作成 */
/************************************************************/
/* PC *******************************************************/
/************************************************************/

.tb {
  /* 要素を非表示にする */
  display: none;
}

.sp {
  /* 要素を非表示にする */
  display: none;
}

.flex {
  display: flex;
  flex-wrap: wrap;
  margin: 0 auto;
  align-items: center
}

/* html {
  overflow-y: scroll;
} */

.flex-nowrap {
  display: flex;
  flex-wrap: nowrap;
  margin: 0 auto;
  align-items: center;
  max-width: 1200px;
  min-width: 200px;
  justify-content: space-between;
  padding: 20px;
  align-items: stretch;
}

.content {
  margin: 0 auto;
}

.wrapper {
  overflow: hidden;
  font-family: 'Yu Gothic UI','Hiragino Kaku Gothic ProN','ヒラギノ角ゴ ProN W3',sans-serif;
}

* {
  /* スムーススクロール（2021/04/12現在ではSafariは未対応） */
  scroll-behavior: smooth;
}

/* 画面のチラつきをなくす */

html {
  visibility: visible;
}

html.wf-active,
html.loading-delay {
  visibility: visible;
}
/* ここまで　画面のチラつきをなくす */

.see-more{
  font-family: fot-tsukuardgothic-std;
  font-style: normal;
  font-weight: 700;
  font-size: 17px;
  text-decoration: none;
  padding: 15px;
  border: solid 1.8px #ed9124;
  margin: 15px 0 0 0;
  display: inline-block;
  color: #ed9124;
  border-radius: 5px;
  background: #fff;
}

.see-more:hover {
  background: #FFE9CE;
}

.designworks h2,
.typography h2,
.movie h2 {
  font-size: 22px;
  font-family: fot-tsukuardgothic-std;
  font-style: normal;
  line-height: 1.5em;
  margin: 0 0 .5em;
}

.designworks h2 span,
.typography h2 span{
  display: inline-block;
}

h3 {
  font-family: fot-tsukuardgothic-std;
  font-style: normal;
}

/* プロフィール */

.profire {
  background: #f1eee6;
  padding: 30px;
  border-radius: 5px;
  width: 500px;
  margin: 0 0 0 20px;
}

.profire i{
  margin: 0 0 0 .5em;
}

.profire img {
  border-radius: 50%;
  margin: auto;
  max-width: 150px;
  width: 100%;
  padding: 10px;
}

.profire ul{
  margin: 0 auto;
  padding: .5em 2em;
  border-radius: 5px;
  line-height: 1.8em;
  background: #fff;
  font-size: 14px;
}

.profire div div{
  margin: auto;
}

.profire > div{
  margin: 20px 0;
}

.profire > h3{
  border-bottom: solid 2px #d0cec2;
  text-align: center;
  display: inline-block;
  line-height: 1;
  padding-bottom: 5px;
  font-size: 20px;
  margin: 0 auto 10px;
}

.profire div div p{
  margin: 15px 0 0;
  line-height: 1;
}

.profire div div h3{
  line-height: 1;
  margin: 0 auto 15px;
  font-size: 20px;
}

.profire > a{
  display: block;
  background: #d0cec2;
  padding: 10px 15px;
  border-radius: 30px;
  margin: 30px auto 0;
  max-width: 200px;
  min-width: 150px;
  text-decoration: none;
  font-family: fot-tsukuardgothic-std;
  font-weight: 700;
  font-size: 15px;
  color: #000;
}

.profire > a:hover{
  background: #ed9124;
}

.arrow{
  position: relative;
  display: inline-block;
  padding: 0 0 0 16px;
  color: #000;
  vertical-align: middle;
  text-decoration: none;
  font-size: 15px;
  margin: 0 0 5px 8px;
}

.arrow::before,
.arrow::after{
  position: absolute;
  top: 0;
  bottom: 0;
  left: 0;
  margin: auto;
  content: "";
  vertical-align: middle;
}

.arrow::before{
  box-sizing: border-box;
  width: 25px;
  height: 25px;
  /* border: 2px solid #928f7e; */
  -webkit-border-radius: 50%;
  border-radius: 50%;
  background: #f9f9f9;
}

.arrow::after{
  left: 6px;
  width: 8px;
  height: 8px;
  border-top: 2px solid #928f7e;
  border-right: 2px solid #928f7e;
  -webkit-transform: rotate(45deg);
  transform: rotate(45deg);
}

/* トップページ */

h1 {
  margin: 0 auto 20px;
  text-align: center;
  font-size: 22px;
  font-family: fot-tsukuardgothic-std;
  font-style: normal;
  border-bottom: solid 1.8px #d0cec2;
  display: inline-block;
  padding: 0 15px 10px;
}

h1 span{
  display: inline-block;
}

.topimg img {
  width: 100%;
  vertical-align: bottom;
}

li {
  list-style: none;
}

/* ナビゲーション */

header {
  background: #f9f9f9;
  align-items: center;
  line-height: 30px;
  position: fixed;
  width: 100%;
  z-index: 1000;
  box-shadow: 0 5px 15px 0 rgb(0 0 0 / 5%);
}

.wrapper main {
  margin-top: 90px;
}

header nav {
  margin: auto 0 auto auto;
}

header nav ul{
  line-height: 1.5em;
  align-items: center;
  text-align: right;
}

header nav li{
  font-size: 13px;
}

header nav a{
  text-decoration: none;
  color: #000;
  margin: 0 0 0 2em;
  position: relative;
}

.headerin {
  max-width: 1200px;
  min-width: 200px;
  align-items: center;
  padding: 20px;
}

header nav a::after {
	content: '';
	position: absolute;
	bottom: -.5em;
	left: 0;
	width: 100%;
	height: 2px;
	background-color: #d0cec2;
	transform: scaleX(0);
	transition: transform 0.2s;
}

header nav a:hover::after {
  transform: scaleX(1);
}

.logo img {
  vertical-align: middle;
}

.twitter-icon a {
  color: #2facff;
  font-size: 1.3em;
}

/* フッター */

footer {
  background: #f1eee6;
}

.footerend {
  position: absolute;/* ←絶対位置 */
  bottom: 0;
  width: 100vw;
}

footer div {
  max-width: 1000px;
  min-width: 200px;
  padding: 30px;
  margin: 0 auto;
}

footer p {
  text-align: center;
  font-size: 13px;
}

.footerFixed{
  min-height: 100vh; /* ←コンテンツの高さの最小値＝ブラウザの高さに指定 */
  position: relative;/* ←相対位置 */
  padding-bottom: 60px; /* ←フッターの高さを指定 */
  box-sizing: border-box;
  /* ↑ヘッダーやフッターを含むすべての要素の高さ＝min-height:100vhになるように指定 */
}


/* 説明 */

.work div{
  text-align: center;
}

.backcolor {
  width: 160px;
  height: 65px; 
  justify-content: center;
  border-radius: 5px;
  border: solid 1px #d0cec2;
  border-radius: 50px;
  background: #fff;
  margin: 5px;
}

.work div div section h2 {
  font-size: 18px;
  font-family: fot-tsukuardgothic-std;
  line-height: 1.5em;
  color: #928f7e;
}

.work div div section p {
  max-width: 650px;
  margin: 15px auto 25px;
}

.work section p {
  text-align: center;
}

.contact-botton a {
  padding: 20px;
  background:#ed9124;
  margin: 0 auto;
  display: inline-block;
  text-decoration: none;
  color: #fff;
  border-radius: 5px;
  font-family: fot-tsukuardgothic-std;
  font-weight: 700;
  font-size: 17px;
}

.contact-botton a:hover{
  background: #f0571b;
}

.work section div {
  text-align: center;
  justify-content: center;
}

.work > div:first-of-type{
  align-items: center;
  margin: 0 auto;
  background: #f9f9f9;
}

/* グラフィックデザイン・キャラクター制作例 */

.designworks {
  text-align: center;
  margin: 0 auto;
  max-width: 1200px;
  min-width: 600px;
  padding: 40px 0;
}

.designworks p:nth-child( 2 ) {
  max-width: 520px;
  min-width: 200px;
  margin: 1em auto 1.5em;
  text-align: justify;
}

.designworks ul {
  /* display: inline-block; */
  text-align: center;
  font-size:0;
  padding: 0 20px;
  z-index: 100;
}

.designworks ul li{
  display: inline-block;
  width: 25%;
  vertical-align: top;
}

/* タイポグラフィ制作例 */

.typography {
  text-align: center;
  margin: 0 auto;
  max-width: 1200px;
  min-width: 600px;
  padding: 40px 0;
}

#back-color{
  background: #f9f9f9;
  padding: 40px 0;
}

#back-color .typography ul div{
  margin: 0;
}

#back-color figcaption{
  background: #f9f9f9;
}

.typography p:nth-child( 2 ) {
  max-width: 520px;
  min-width: 200px;
  margin: 1em auto 1.5em;
  text-align: justify;
}

.typography ul {
  display: inline-block;
  text-align: center;
  font-size:0;
  padding: 0 20px;
  z-index: 100;
}

.typography ul li{
  display: inline-block;
  width: 25%;
  vertical-align: top;
}

/* 作品一覧 */

/* img{
  vertical-align: bottom;
} */

figure {
  margin: 5px;
  background-color: #fff;
  position: relative;
}

figure img {
  width: 100%;
}

figure img:hover{
  opacity: .5;
}

figcaption {
  font-size: 12px;
  text-align: center;
  position: relative;
  line-height: 2;
}

.typography figcaption{
  background: #fff;
}

.work-icon{
  position: absolute;
  top: 5px;
  left: 5px;
  font-family: fot-tsukuardgothic-std;
  font-weight: bold;
  color: #ed9124;
  background: #fff;
  border:solid 1px #ed9124;
  border-radius: 3px;
  font-size: 12px;
  padding: 0 .5em;
  line-height: 1.5;
}

.new-icon{
  position: absolute;
  top: 5px;
  left: 60px;
  font-family: fot-tsukuardgothic-std;
  font-weight: bold;
  color: #fff;
  background: #dd3d95;
  border:solid 1px #dd3d95;
  border-radius: 3px;
  font-size: 12px;
  padding: 0 .5em;
  line-height: 1.5;
}

.original-icon {
  position: absolute;
  top: 5px;
  left: 5px;
  font-family: fot-tsukuardgothic-std;
  font-weight: bold;
  color: #928f7e;
  background: #fff;
  border:solid 1px #928f7e;
  border-radius: 3px;
  font-size: 12px;
  padding: 0 .5em;
  line-height: 1.5;
}

.movie{
  text-align: center;
  padding: 40px 0;
}

.movie video{
  max-width: 500px;
  max-height: 420px;
  padding: 0 20px;
}

.movie p:nth-child( 2 ) {
  max-width: 520px;
  min-width: 200px;
  margin: 1em auto 1.5em;
  /* text-align: justify; */
}

.movie .flex{
  justify-content: center;
  align-items: flex-end;
}


/* ページTOPに戻る */
.pagetop{
  position: fixed;
  right: 20px;
  bottom: 30px;
}

.pagetop a{
  display: block;
  font-size: 0;
  width: 60px;
  height: 60px;
  text-align: center;
  background: #d0cec2;
  border-radius: 50%;
  line-height: 60px;
}

.pagetop a i{
  font-size: 30px;
  color:#fff;
  line-height: 60px;
}

/**********プロフィールページ**********/
/***********************************/


.profire-page {
  margin: 130px auto;
  max-width: 1000px;
  padding: 0 100px;
}

.profire-page h3{
  text-align: center;
  padding: 0 0 20px;
  line-height: 1.5;
}

.profire-page h3 span{
  display: inline-block;
}

.profire-page h2{
  font-family: fot-tsukuardgothic-std;
  font-size: 26px;
  margin: 0 auto 10px;
}

.profire-page section{
  margin: 70px auto;
}

.profire-page section p:nth-of-type( 2 ){
  text-align: justify;
}

.profire-photo ul:first-of-type{
  background: #f1eee6;
  padding: 20px 60px;
  display: block;
  border-radius: 5px;
  line-height: 2em;
  margin: 1.5em;
  max-width: 400px;
  min-width: 200px;
  margin: 30px auto 20px;
}

.profire-page section p:nth-child( 2 ){
  text-align: justify;
}

.profire-page ul:nth-of-type( 2 ){
  padding: 20px;
  display: block;
  border-radius: 5px;
  border: solid 3px #f1eee6;
  line-height: 2em;
  max-width: 400px;
  min-width: 200px;
  margin: 0 auto;
}

.profire-page ul a{
  color: #000;
}

.profire-page i{
  color: #928f7e;
}

.profire-photo {
  text-align: center;
  margin: 50px auto;
}

.profire-photo img{
  border-radius: 50%;
  margin: 20px;
  vertical-align: bottom;
}

/* 英語文章 */
.english {
  font-size: 13px;
  margin: 20px 0;
  text-align: justify;
}

.environment div{
  justify-content: space-between;
  align-items: stretch;
}

.environment dl{
  border-radius: 5px;
  border: solid 3px #f1eee6;
  line-height: 2em;
}

.environment dl:first-of-type{
  width: 48%;
  text-align: center;
  padding: 10px;
}

.environment dl:nth-of-type( 2 ){
  width: 48%;
  text-align: center;
  padding: 10px;
}

.environment dl dt{
  margin: 0 auto 15px;
  border-bottom: solid 3px #f1eee6;
  display: inline-block;
}

/* 実績クライアント */

.client li{
  display: inline-block;
  margin: 0 1.5em 0 0;
}

.client ul{
  text-align: center;
}

.client h3 span{
  display: inline-block;
}

/* 受賞歴 */

.grand-prize{
  border: solid 1px #ed9124;
  border-radius: 3px;
  color: #ed9124;
  padding: 0 .5em;
  display: inline-block;
  margin: 0 5px;
  font-size: 14px;
}

.grand-prize-2{
  border: solid 1px #ed9124;
  border-radius: 3px;
  color: #ed9124;
  display: inline-block;
  margin: 0 5px;
  font-size: 14px;
}

.award-history li{
  margin: 15px 0;
}

.award-history {
  margin: 0 auto;
}

.award-history ul{
  margin: 0 auto;
  display: inline-block;
}

.award-history ul > p{
  text-align: right;
}

/**********ご依頼の流れページ**********/
/***********************************/

.workflow-page {
  max-width: 1000px;
  min-width: 200px;
  padding: 0 20px;
  text-align: justify;
  margin: 130px auto 50px;
}

.workflow-page h3{
  font-size: 26px;
  line-height: 1.5;
  margin: 0 0 10px;
}

.workflow-page h2{
  text-align: center;
  margin: 0 0 50px;
  font-family: fot-tsukuardgothic-std;
  font-size: 26px;
}

.step p:first-child{
  margin: 0 60px 0 0;
  font-size: 26px;
  width: 10%;
  font-family: 'Arial';
  color: #928f7e;
}

.step{
  padding: 35px 35px 45px;
  justify-content: space-between;
}

.step:nth-child( even ){
  background: #f1eee6;
}

.step div{
  width: 80%;
  padding: 5px 0 0;
}

.number {
  font-size: 60px;
  margin: 0 0 0 3px;
}

.contact-form{
  text-align: center;
  border: solid 2px #d0cec2;
  border-radius: 10px;
  padding: 40px;
}

.contact-form p{
  font-weight: bold;
  font-size: 23px;
  font-family: fot-tsukuardgothic-std;
}

.workflow-page a {
  padding: 20px;
  background:#ed9124;
  margin: 20px 0 0 0;
  display: inline-block;
  text-decoration: none;
  color: #fff;
  border-radius: 5px;
  font-weight: bold;
  font-size: 18px;
}

.workflow-page a:hover{
  background:#f0571b;
}

/************作品一覧ページ**********/
/***********************************/

.works-list{
  margin: 130px auto 0;
}

.works-list,
.typography-list{
  text-align: center;
  padding: 40px;
}

.designworks h2,
.typography-list h2{
  font-size: 22px;
  font-family: fot-tsukuardgothic-std;
}

.works-list > h2{
  font-family: fot-tsukuardgothic-std;
  font-size: 26px;
}

.works-page .description{
  margin: 0 auto 30px;
  max-width: 1000px;
  padding: 20px;
}

/***************ご連絡ページ**********/
/***********************************/

.contact-page {
  max-width: 1000px;
  min-width: 200px;
  padding: 20px;
  margin: 110px auto 50px;
}

.contact-page h2{
  margin: 0 auto 40px;
  font-family: fot-tsukuardgothic-std;
  font-size: 26px;
  text-align: center;
}

.contact-page p {
  text-align: center;
  margin: 0 auto 50px;
}

.contact-page > p > span{
  margin: 25px 0 0;
  display: inline-block;
}

.contact-page > p > span:last-child{
  font-weight: bold;
}

.contact-page iframe{
  width: 100%;
  height: 1200px;
}

#formWrap {
	width:700px;
	margin:0 auto;
	color:#555;
	line-height:120%;
	font-size:90%;
}

table.formTable{
	width:100%;
	margin:0 auto;
	border-collapse:collapse;
}

table.formTable td,
table.formTable th{
	border:1px solid #ccc;
	padding:10px;
}

table.formTable th{
	width:30%;
	font-weight:normal;
	background:#f9f9f9;
	text-align:left;
}

button,
input,
select,
textarea{
  border: solid 1px #928f7e;
  padding: 5px;
}

button,
html [type="button"],
[type="submit"]{
  margin: 30px 0 0;
  width: 6em;
  background: #f1eee6;
  border-radius: 5px;
}

.req{
  font-size: 12px;
  color: #f0571b;
  padding: 0 0 0 .5em;
}

/**********作品一覧ページ**********/
/***********************************/



.works-list{
  max-width: 1200px;
  padding: 20px 0;
  margin: 130px auto 0;
}

.works-page h2{
  font-family: fot-tsukuardgothic-std;
  font-size: 22px;
  margin: 0 auto 20px;
}

.works-page .works-list,
.works-page .typography-list {
  padding: 0;
}

.works-page .works-list div:nth-of-type( 2 ){
  margin: 20px 0 10px;
  padding: 20px;
  display: inline-block;
  border-radius: 10px;
  background: #f1eee6;
  display: inline-block;
  line-height: 2;
}

.works-page .bold{
  font-weight: bold;
}

#bold-back-orange{
  background: #f1eee6;
  padding: 0 15px;
  border-radius: 5px;
  line-height: 2.5;
  display: inline-block;
  margin: 0 0 15px;
}

.works-page .contact-botton{
  margin: 10px auto 0;
}

.works-page .designworks{
  margin: 0 auto0;
  padding: 40px 0;
}

.works-page .typography-list p{
  max-width: 700px;
  margin: 0 auto;
}

.works-page #bold-back-orange{
  margin: 0 0 15px;
}

.works-page .movie{
  padding: 40px 0 50px;
}

.works-page #back-color{
  padding: 0;
  vertical-align: bottom;
}

.works-page .typography-list {
  padding: 50px 0 40px;
}

.works-page .typography-list > p{
  margin: 0 auto 40px;
}

/**********作品個別ページ**********/
/***********************************/

.individual-page{
  margin: 70px auto;
  max-width: 800px;
  min-width: 200px;
  /* padding: 0 20px; */
}

.individual-page h2{
  font-weight: normal;
  margin: 15px;
  text-align: center;
  font-weight: bold;
}

.individual-page img{
  max-width: 800px;
  padding: 0 20px;
  width: 100%;
  margin: 20px auto;
}

.individual-page .workimg{
  text-align: center;
}

.individual-page section:first-of-type{
  margin: 50px 0;
  padding: 40px 0 0;
}

.individual-page div:first-of-type p{
  margin: 20px;
  text-align: justify;
}

.individual-page .work-tag p{
  font-size: 13px;
  text-align: center;
}

.individual-page a{
  text-decoration: none;
  color: rgb(168, 168, 168);
}

.works-back{
  background: #f1eee6;
  border-radius: 50px;
  margin :50px auto 0;
  text-align: center;
  width: 10em;
}

.works-back a{
  text-decoration: none;
  color: #000;
  font-size: 14px;
  padding: 10px;
  display: block;
}

.works-back a:hover{
  background: #d0cec2;
  border-radius: 50px;
}



/************************************************************/
/* tablet （800px以下） **************************************/
/************************************************************/

@media screen and ( max-width: 800px ) {
  /* .pcを非表示に */
  .pc {
    display: none;
  }

  /* .tbをブロックレベル要素として再表示させる */
  .tb {
    display: block;
  }

  header > div {
    text-align: center;
  }

  header > div nav {
    background: #f9f9f9;
    padding: 5px 0 0;
  }

  header > div nav a{
    margin: 0 1em;
    line-height: 1.5em;
  }

  header nav ul{
    padding: 10px 0;
    height: 80px;
  }

  .topimg{
    margin: 37px 0 0;
  }

  .headerin{
    padding: 20px 20px 0;
  }

  .flex{
    justify-content: center;
  }

  .wrapper main{
    margin: 0;
  }

  .work section:first-of-type{
    padding: 20px 0 30px;
  }

  .work div div section p,
  .designworks p:nth-child( 2 ),
  .typography p:nth-child( 2 ),
  .movie p:nth-child( 2 ) {
    font-size: 14px;
    padding: 0 20px;
  }

  .designworks h2,
  .typography h2 {
    margin: 1em 0 1em;
  }

  .back-color {
    padding: 0;
  }

  .profire {
    margin: 0 auto;
    width: 100vw;
    padding: 30px;
  }

  .profire div div{
    margin: 10px;
  }

  .profire img{
    margin: 0;
  }

  .profire > a{
    margin: 0 auto;
  }

  .designworks ul li{
    width: 33%;
    vertical-align: top;
  }

  .designworks {
    max-width: 800px;
    min-width: 500px;
  }

  .typography ul li{
    width: 33%;
    vertical-align: top;
  }

  .typography {
    max-width: 800px;
    min-width: 500px;
  }

  figcaption{
    font-size: 10px;
    padding: 2px;
  }

  footer p{
    font-size: 12px;
  }

  footer div p span{
    display: inline-block;
  }

  .designworks ul,
  .typography ul{
    padding: 0;
  }

  header {
    position: fixed;
    width: 100%;
    text-align: center;
  }

  main{
    padding: 117px 0 0;
  }

  .profire-page{
  margin: -25px 0;
  padding: 0 60px;
  }

  .profire-page h2{
    margin: 0;
    font-size: 22px;
  }

  .award-history ul li{
    flex-wrap: nowrap;
    justify-content: flex-start;
    align-items: flex-start
  }

  .grand-prize{
    max-width: 5.2em;
    width: 100%;
  }

  .profire-page .award-history p:first-child{
    max-width: 55px;
    width: 100%;
    font-size: 14px;
  }

  header {
    z-index: 1000;
  }

  .profire-page p,
  .profire-page li,
  dl{
    font-size: 14px;
  }

  .profire-page section{
    margin: 60px auto;
  }

  .profire-page section:first-child{
    margin: 90px auto 0;
  }

  .works-page .bold{
    padding: 5px 10px;
  }

  .works-page section:first-child{
    margin: 65px auto 0;
  }

  .works-page .typography-list{
  padding: 35px 0;
  text-align: center;
  }

  figcaption{
    font-size: 10px;
  }

  .works-page p{
    font-size: 14px;
    line-height: 1.5;
  }

  .works-page .works-list div:nth-of-type( 2 ){
    margin: 20px 20px 0;
  }

  .works-list div:first-child p:nth-of-type( 2 ){
    padding: 0 20px;
  }

  .works-list{
    margin: 65px auto 0;
  }

  .works-page h2{
    margin: 0 auto 20px;
    font-size: 22px;
  }

  .works-page .typography-list .tb p:nth-child( 2 ){
    padding: 0 20px;
  }

  .workflow-page h2{
    font-size: 22px;
    margin: 0 0 20px;
  }

  .workflow-page h3{
    font-size: 22px;
  }

  .workflow-page section{
    flex-direction: column;
    padding: 10px 30px 40px;
  }

  .workflow-page section div{
    padding: 0;
    font-size: 14px;
  }

  .workflow-page section div h3{
    margin: 20px 0;
    font-size: 22px;
    text-align: center;
  }

  .workflow-page div div p,
  .workflow-page div div ul{
    font-size: 14px;
  } 

  .number{
    font-size: 50px;
  }

  .workflow-page section p:first-child{
    font-size: 20px;
    margin: 10px 0 0;
  }

  .contact-form{
    margin: 20px;
  }

  .contact-form p{
    font-size: 22px;
  }

  .workflow-page section div{
    width: 100%;
    padding: 0;
  }

  .contact-botton2{
    text-align: center;
    margin: 0 0 0 10px;
  }

  .contact-page h2{
    margin: 65px 0 20px;
    font-size: 22px;
  }

  .designworks ul,
  .typography ul{
    padding: 0 10px;
  }

  .contact-page{
    padding: 0 60px;
    margin: 0 auto 50px;
  }

  .contact-page p{
    font-size: 14px;
  }

  .formTable{
    font-size: 14px;
  }

  figcaption{
    line-height: 1.5;
  }

  .individual-page{
    margin: 0 auto;
  }

  .individual-page div p{
    font-size: 14px;
  }

  .individual-page section:first-of-type{
    margin: 0;
    padding: 60px 20px 15px;
  }

  .individual-page section:nth-of-type( 2 ){
    font-size: 14px;
  }

  .work-tag h2{
    font-size: 20px;
    margin: 10px;
  }

  .works-back{
    margin: 10px auto 40px;
  }

  h1{
    padding: 0 0 20px;
  }

  .workflow-page{
    margin: 65px auto 50px;
  }

  .profire-page section p:nth-of-type( 2 ){
    margin: 0;
  }

  #back-color {
    padding: 0;
  }

  /*　メールフォーム簡易版レスポンシブ用CSS（必要最低限のみとしています。ブレークポイントも含め自由に設定下さい）　*/
  #formWrap {
    width:95%;
    margin:0 auto;
  }
  
  table.formTable th,
  table.formTable td {
    width:auto;
    display:block;
  }
  
  table.formTable th {
    margin-top:5px;
    border-bottom:0;
  }
  
  input[type="text"],
  textarea {
    width:100%;
    padding:5px;
    font-size:110%;
    display:block;
  }
  
  input[type="submit"],
  input[type="reset"],
  input[type="button"] {
    display:block;
    width:100%;
    height:40px;
  }

  .award-history ul li{
    margin: 10px auto;
  }

  .step div{
    width: 95%;
  }

  .workflow-page{
    padding: 0;
  }


}

/************************************************************/
/* mobile （500px以下） **************************************/
/************************************************************/

@media screen and ( max-width: 500px ) {
  /* .pcを非表示に */
  .pc {
    display: none;
  }

  /* .tbをブロックレベル要素として再表示させる */
  .tb {
    display: none;
  }

  /* .spをブロックレベル要素として再表示させる */
  .sp {
    display: block;
  }

  .topimg{
    margin: 0;
  }

  .movie video{
    width: 100%;
  }

  .work div div section h2 {
    line-height: 1.7;
  }

  .works-page h2{
    margin: 0 auto 30px;
  }
  
  .works-list div:first-child{
    padding: 0 20px 15px;
    width: 100vw;
  }

  .works-list div:nth-of-type( 2 ){
    padding: 0 20px;
    width: 100vw;
  }

  .contact-botton{
    margin: 0 auto;
    padding: 0;
  }

  .designworks ul li,
  .typography ul li{
    width: 100%;
  }

  header {
    position: fixed;
    width: 100%;
    text-align: center;
    z-index: 1000;
  }

  .logo img {
    width: 150px;
  }

  .logo {
    margin: 1em 0 1em;
  }

  .designworks,
  .typography,
  .works-list{
    min-width: 200px;
  }

  .works-list{
    margin: 25px 0 0;
  }

  .work .sp .backcolor h2{
    font-size: 16px;
    line-height: 1.5;
  }

  .designworks h2,
  .typography-list h2{
    font-size: 20px;
  }

  .designworks ul,
  .typography ul{
    padding: 0;
  }

  main{
    padding: 74px 0 0;
  }

  h1{
    font-size: 20px;
    margin: 0 0 10px;
    line-height: 1.8;
    padding: 0 15px 20px;
  }

  .backcolor h2,
  #bold-back-orange,
  .works-list div p{
    font-size: 14px;
  }

  /* #back-color{
    background: #fff;
  } */

  .work section:first-of-type{
    padding: 15px 0 30px;
  }

  .work section div{
    margin: 5px;
  }
  .work div div section p{
    margin: 15px 0;
  }

  .profire{
    padding: 20px;
  }

  .profire a{
    margin: 10px auto 0;
  }

  footer div{
    padding: 20px;
    max-width: 500px;
    min-width: 200px;
    font-size: 10px;
  }

  .profire h3{
    font-size: 17px;
  }

  .works-page .typography-list div:nth-of-type( 3 ) p{
    font-size: 14px;
    text-align: justify;
    display: inline-block;
    margin: 0 15px 15px;
  }

  .typography-list h2{
    margin: 0 0 10px;
  }

  .works-page .typography-list{
    padding: 35px 0;
    text-align: center;
  }

  .work div div section p,
  .designworks p:nth-child( 2 ),
  .typography p:nth-child( 2 ){
    padding: 0 20px;
  }

  .works-page .designworks{
    width: 100vw;
    margin: 0;
  }

  figure{
    margin: 0;
  }

  figcaption{
    padding: 0 0 10px;
  }

  .original-icon{
    font-size: 9px;
    margin: 3px;
  }

  .works-page section:first-child{
    margin: 0 auto;
    padding: 25px 0 0;
  }

  #bold-back-orange, .works-list div p{
    margin: 0 0 15px;
  }

  .works-page .works-list div:nth-of-type( 2 ){
    margin: 0;
    border-radius: 0;
    background: #f9f9f9;
  }

  .works-page h2{
    margin: 0 auto 15px;
  }

  .designworks h2,
  .typography h2,
  .designworks h2,
  .typography-list h2,
  .works-page h2,
  .movie h2{
    font-size: 20px;
    padding: 0 15px;
  }

  .profire-page h2,
  .workflow-page h2,
  .contact-page h2{
    font-size: 20px;
  }

  .profire-page section{
    margin: 30px auto 0;
  }

  .pagetop{
    display: none;
  }

  .profire-page,
  .workflow-page,
  .contact-page{
    margin: 0;
  }

  .workflow-page,
  .contact-page{
    padding: 25px 0 0;
  }

  .workflow-page p,
  .contact-page p,
  .workflow-page li{
    font-size: 14px;
  }

  .workflow-page h2,
  .contact-page h2{
    margin: 0 0 25px;
  }

  .workflow-page h3{
    font-size: 20px;
    text-align: center;
    margin: 15px 15px 25px;
  }

  h3 span{
    display: inline-block;
  }

  .workflow-page section{
    flex-direction: column;
    padding: 20px 30px 45px;
  }

  .workflow-page section div{
    width: 100%;
    padding: 0;
  }

  .contact-form{
    padding: 20px;
    margin: 0 20px 20px;
  }

  .contact-form p{
    font-size: 16px;
  }

  .contact-page {
    padding: 20px;
  }

  .contact-page p{
    margin: 0 0 20px;
  }

  .profire-page{
    padding: 0 20px 20px;
  }

  .award-history ul li p,
  .award-history ul p,
  .grand-prize{
    font-size: 12px;
  }

  .profire-page h3{
    padding: 0;
    margin: 0 auto 10px;
  }

  .profire-page section:first-child{
    margin: 25px 0 0;
  }

  header nav a::after{
    content: none;
  }

  .individual-page{
    padding: 0;
  }

  .individual-page section:nth-of-type( 2 ) p{
    margin: 0 20px 20px;
  }

  .individual-page section:first-of-type{
    margin: 20px 0;
    padding: 15px 20px;
  }

  .individual-page img{
    padding: 0;
    margin: 10px 0;
  }

  .step{
    padding: 20px 20px 30px;
  }

  .step div{
    width: 100%;
  }

  .contact-botton2{
    margin: 0;
  }


/*　ハンバーガーボタン　*/
.NavMenu a{
  text-decoration: none;
  color: #333333;
  }
  
  /*ナビのスタイル*/
  nav.NavMenu{
  position: fixed;
  z-index: 12;
  top: 0;
  left: 0;
  background: #f9f9f9;
  text-align: center;
  width: 100%;
  height: 100%;
  display: none;
  }
  
  nav.NavMenu ul{
  width: 100%;
  margin: 0 auto;
  padding: 0;
  position: absolute;
  top: 10%;
  text-align: center;
  /* left: 50%; */
  /* transform: translateY(-50%) translateX(-50%); */
  }
  
  nav.NavMenu ul li{
  font-size: 26px;
  list-style-type: none;
  width: 100%;
  padding-bottom: 0px;
  }
  
  nav.NavMenu ul li:last-child{
  padding-bottom: 0;
  }
  
  nav.NavMenu ul li a{
  display: block;
  color: #333;
  /* padding: 15px 0; */
  font-weight: bold;
  font-size: 20px;
  margin: 20px;
  font-family: fot-tsukuardgothic-std, sans-serif;
  }
  
  /*ボタンのスタイル*/
  .Toggle {
  position: fixed;
  right:18px;
  top: 15px;
  width: 45px;
  height: 45px;
  cursor: pointer;
  z-index: 13;
  display: block;
  }
  
  .Toggle span {
  display: block;
  position: absolute;
  width: 35px;
  border-bottom: solid 4px #a09d8c;
  -webkit-transition: .35s ease-in-out;
  -moz-transition: .35s ease-in-out;
  transition: .35s ease-in-out;
  left: 6px;
  }
  
  .Toggle span:nth-child(1) {
  top: 9px;
  }
  
  .Toggle span:nth-child(2) {
  top: 20px;
  }
  
  .Toggle span:nth-child(3) {
  top: 31px;
  }
  
  .Toggle.active span:nth-child(1) {
  top: 18px;
  left: 6px;
  -webkit-transform: rotate(-45deg);
  -moz-transform: rotate(-45deg);
  transform: rotate(-45deg);
  border-bottom: solid 3px #a09d8c;
  }
  .Toggle.active span:nth-child(2),
  .Toggle.active span:nth-child(3) {
  top: 18px;
  -webkit-transform: rotate(45deg);
  -moz-transform: rotate(45deg);
  transform: rotate(45deg);
  border-bottom: solid 3px #a09d8c;
  }

}