@charset "UTF-8";
/**
 * Foundation for Sites by ZURB
 * Version 6.3.1
 * foundation.zurb.com
 * Licensed under MIT Open Source
 */
/*! normalize-scss | MIT/GPLv2 License | bit.ly/normalize-scss */
/* Document
========================================================================== */
@import url("https://fonts.googleapis.com/css2?family=Montserrat:wght@400;700;800&family=Noto+Sans+JP&family=Yellowtail&display=swap");
html {
  font-family: sans-serif;
  line-height: 1.15;
  -ms-text-size-adjust: 100%;
  -webkit-text-size-adjust: 100%; }

/* Sections
========================================================================== */
body {
  margin: 0; }

article, aside, footer, header, nav, section {
  display: block; }

/**
* Correct the font size and margin on `h1` elements within `section` and
* `article` contexts in Chrome, Firefox, and Safari.
*/
h1 {
  font-size: 2em;
  margin: 0.67em 0; }

/* Grouping content
========================================================================== */
figcaption, figure {
  display: block; }

figure {
  margin: 1em 40px; }

hr {
  -webkit-box-sizing: content-box;
          box-sizing: content-box;
  height: 0;
  overflow: visible; }

main {
  display: block; }

pre {
  font-family: monospace, monospace;
  font-size: 1em; }

/* Links
========================================================================== */
a {
  background-color: transparent;
  -webkit-text-decoration-skip: objects; }

a:active, a:hover {
  outline-width: 0; }

/* Text-level semantics
========================================================================== */
abbr[title] {
  border-bottom: none;
  text-decoration: underline;
  -webkit-text-decoration: underline dotted;
          text-decoration: underline dotted; }

b, strong {
  font-weight: inherit; }

b, strong {
  font-weight: bolder; }

code, kbd, samp {
  font-family: monospace, monospace;
  font-size: 1em; }

dfn {
  font-style: italic; }

mark {
  background-color: #ff0;
  color: #000; }

small {
  font-size: 80%; }

sub, sup {
  font-size: 75%;
  line-height: 0;
  position: relative;
  vertical-align: baseline; }

sub {
  bottom: -0.25em; }

sup {
  top: -0.5em; }

ul, li, ol, dt, dd {
  list-style: none; }

/* Embedded content
========================================================================== */
audio, video {
  display: inline-block; }

audio:not([controls]) {
  display: none;
  height: 0; }

img {
  border-style: none; }

svg:not(:root) {
  overflow: hidden; }

/* Forms
========================================================================== */
button, input, optgroup, select, textarea {
  font-family: sans-serif;
  font-size: 100%;
  line-height: 1.15;
  margin: 0; }

button {
  overflow: visible; }

button, select {
  text-transform: none; }

button, html [type="button"], [type="reset"], [type="submit"] {
  -webkit-appearance: button; }

button::-moz-focus-inner, [type="button"]::-moz-focus-inner, [type="reset"]::-moz-focus-inner, [type="submit"]::-moz-focus-inner {
  border-style: none;
  padding: 0; }

button:-moz-focusring, [type="button"]:-moz-focusring, [type="reset"]:-moz-focusring, [type="submit"]:-moz-focusring {
  outline: 1px dotted ButtonText; }

input {
  overflow: visible; }

[type="checkbox"], [type="radio"] {
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  padding: 0; }

[type="number"]::-webkit-inner-spin-button, [type="number"]::-webkit-outer-spin-button {
  height: auto; }

[type="search"] {
  -webkit-appearance: textfield;
  outline-offset: -2px; }

[type="search"]::-webkit-search-cancel-button, [type="search"]::-webkit-search-decoration {
  -webkit-appearance: none; }

::-webkit-file-upload-button {
  -webkit-appearance: button;
  font: inherit; }

fieldset {
  border: 1px solid #c0c0c0;
  margin: 0 2px;
  padding: 0.35em 0.625em 0.75em; }

legend {
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  display: table;
  max-width: 100%;
  padding: 0;
  color: inherit;
  white-space: normal; }

progress {
  display: inline-block;
  vertical-align: baseline; }

textarea {
  overflow: auto; }

/* Interactive
========================================================================== */
details {
  display: block; }

summary {
  display: list-item; }

menu {
  display: block; }

/* Scripting
========================================================================== */
canvas {
  display: inline-block; }

template {
  display: none; }

/* Hidden
========================================================================== */
[hidden] {
  display: none; }

.foundation-mq {
  font-family: "small=0em&medium=40em&large=64em&xlarge=75em&xxlarge=90em"; }

html {
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  font-size: 100%; }

*, *::before, *::after {
  -webkit-box-sizing: inherit;
          box-sizing: inherit; }

body {
  margin: 0;
  padding: 0;
  background: #fefefe;
  font-family: "Helvetica Neue", Helvetica, Roboto, Arial, sans-serif;
  font-weight: normal;
  line-height: 1.5;
  color: #0a0a0a;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale; }

img {
  display: inline-block;
  vertical-align: middle;
  max-width: 100%;
  height: auto;
  -ms-interpolation-mode: bicubic; }

textarea {
  height: auto;
  min-height: 50px;
  border-radius: 0; }

select {
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  width: 100%;
  border-radius: 0; }

.map_canvas img, .map_canvas embed, .map_canvas object, .mqa-display img, .mqa-display embed, .mqa-display object {
  max-width: none !important; }

button {
  padding: 0;
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  border: 0;
  border-radius: 0;
  background: transparent;
  line-height: 1; }

[data-whatinput='mouse'] button {
  outline: 0; }

pre {
  overflow: auto; }

/* http://meyerweb.com/eric/tools/css/reset/ 
   v2.0 | 20110126
   License: none (public domain)
*/
html, body, div, span, applet, object, iframe,
h1, h2, h3, h4, h5, h6, p, blockquote, pre,
a, abbr, acronym, address, big, cite, code,
del, dfn, em, img, ins, kbd, q, s, samp,
small, strike, strong, sub, sup, tt, var,
b, u, i, center,
dl, dt, dd, ol, ul, li,
fieldset, form, label, legend,
table, caption, tbody, tfoot, thead, tr, th, td,
article, aside, canvas, details, embed,
figure, figcaption, footer, header, hgroup,
menu, nav, output, ruby, section, summary,
time, mark, audio, video {
  margin: 0;
  padding: 0;
  border: 0;
  font-size: 100%;
  font: inherit;
  vertical-align: baseline; }

/* HTML5 display-role reset for older browsers */
article, aside, details, figcaption, figure,
footer, header, hgroup, menu, nav, section {
  display: block; }

body {
  line-height: 1; }

ol, ul {
  list-style: none; }

blockquote, q {
  quotes: none; }

blockquote:before, blockquote:after,
q:before, q:after {
  content: '';
  content: none; }

table {
  border-collapse: collapse;
  border-spacing: 0; }

/* clearfix */
/* HEADER */
/* BEM用のテスト構成
header__logo
header__btn
header__menu
header__ornament
*/
/* ** TYPE01 **
<li><a href=""><span class="date"></span><span class="category"></span><h* class="title"></h*></a></li>
*/
/* HEADER */
/* INFO */
/* [TYPE01-FORMAT]
<li class="item"><p>
<span class="item-date"></span>
<span class="item-category"></span>
<span class="item-title"></span>
</p></li><!-- /.item -->
*/
/* [TYPE02-FORMAT]
<li class="item"><a href="">
<div class="item-thumbnail"><img src="/common/images/noimage.png"></div>
<div class="item-info"><p class="item-title"></p></div>
</a></li><!-- /.item -->
*/
/* CONTACT FORM 7 */
/* MAILFORMPRO */
/* MW WP FORM */
/* 基本タグのフォントサイズを指定（12px -> 120% or 1.2em ） */
html {
  line-height: 1.6; }
  @media screen and (min-width: 960px) {
    html {
      font-size: 16px; } }
  @media screen and (max-width: 959px) {
    html {
      font-size: 14px; } }

h1, h2, h3, h4, h5, h6, input, button, textarea, select, p, th, td, address, li, dt, dd {
  font-weight: 400;
  -webkit-font-feature-settings: "palt";
          font-feature-settings: "palt";
  letter-spacing: 1px; }

/* =========================================================
	element style
========================================================= */
html, body {
  height: 100%; }

body {
  color: #212121;
  font-family: YakuHanJP, "Noto Sans JP", "游明朝", YuMincho, "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif; }

input, textarea, button {
  font-family: YakuHanJP, "Noto Sans JP", "游明朝", YuMincho, "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif; }

a {
  color: #000; }

img {
  max-width: 100%;
  height: auto; }

@media screen and (min-width: 960px) {
  .media-PC {
    display: block; } }
@media screen and (max-width: 959px) {
  .media-PC {
    display: none; } }

@media screen and (min-width: 960px) {
  .media-Tablet {
    display: none; } }
@media screen and (max-width: 959px) {
  .media-Tablet {
    display: block; } }

@media screen and (min-width: 768px) {
  .media-NoSP {
    display: block; } }
@media screen and (max-width: 767px) {
  .media-NoSP {
    display: none; } }

@media screen and (min-width: 768px) {
  .media-SP {
    display: none; } }
@media screen and (max-width: 767px) {
  .media-SP {
    display: block; } }

.fr {
  float: right; }

.fl {
  float: left; }

.imgC, .tC {
  text-align: center; }

.imgC {
  display: block;
  margin-left: auto;
  margin-right: auto; }

.tR {
  text-align: right; }

.map {
  position: relative;
  width: 100%;
  height: 0;
  padding-bottom: 56.25%;
  overflow: hidden; }
  .map iframe {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%; }

.mt0 {
  margin-top: 0px !important; }

.mb0 {
  margin-bottom: 0px !important; }

.pt0 {
  padding-top: 0px !important; }

.pb0 {
  padding-bottom: 0px !important; }

.mt5 {
  margin-top: 5px !important; }

.mb5 {
  margin-bottom: 5px !important; }

.pt5 {
  padding-top: 5px !important; }

.pb5 {
  padding-bottom: 5px !important; }

.mt10 {
  margin-top: 10px !important; }

.mb10 {
  margin-bottom: 10px !important; }

.pt10 {
  padding-top: 10px !important; }

.pb10 {
  padding-bottom: 10px !important; }

.mt15 {
  margin-top: 15px !important; }

.mb15 {
  margin-bottom: 15px !important; }

.pt15 {
  padding-top: 15px !important; }

.pb15 {
  padding-bottom: 15px !important; }

.mt20 {
  margin-top: 20px !important; }

.mb20 {
  margin-bottom: 20px !important; }

.pt20 {
  padding-top: 20px !important; }

.pb20 {
  padding-bottom: 20px !important; }

.mt25 {
  margin-top: 25px !important; }

.mb25 {
  margin-bottom: 25px !important; }

.pt25 {
  padding-top: 25px !important; }

.pb25 {
  padding-bottom: 25px !important; }

.mt30 {
  margin-top: 30px !important; }

.mb30 {
  margin-bottom: 30px !important; }

.pt30 {
  padding-top: 30px !important; }

.pb30 {
  padding-bottom: 30px !important; }

.mt35 {
  margin-top: 35px !important; }

.mb35 {
  margin-bottom: 35px !important; }

.pt35 {
  padding-top: 35px !important; }

.pb35 {
  padding-bottom: 35px !important; }

.mt40 {
  margin-top: 40px !important; }

.mb40 {
  margin-bottom: 40px !important; }

.pt40 {
  padding-top: 40px !important; }

.pb40 {
  padding-bottom: 40px !important; }

.mt45 {
  margin-top: 45px !important; }

.mb45 {
  margin-bottom: 45px !important; }

.pt45 {
  padding-top: 45px !important; }

.pb45 {
  padding-bottom: 45px !important; }

.mt50 {
  margin-top: 50px !important; }

.mb50 {
  margin-bottom: 50px !important; }

.pt50 {
  padding-top: 50px !important; }

.pb50 {
  padding-bottom: 50px !important; }

.mr0 {
  margin-right: 0 !important; }

.pr0 {
  padding-right: 0 !important; }

.clear {
  clear: both; }

.clear-fix {
  zoom: 1; }
  .clear-fix:before, .clear-fix:after {
    content: "";
    display: table;
    height: 0;
    visibility: hidden; }
  .clear-fix:after {
    clear: both; }

/* =========================================================
	general
========================================================= */
/* text */
span.bold {
  font-weight: bold; }
span.accent {
  color: #FFBB00; }
span.underline {
  text-decoration: underline; }

p.left {
  text-align: left; }
p.right {
  text-align: right; }
p.center {
  text-align: center; }

/* =========================================================
	common comprnent
========================================================= */
/* =========================================================
	#wrapper
========================================================= */
#wrapper {
  width: 100%;
  height: 100%;
  margin: 0 auto; }

/* =========================================================
 underpage
========================================================= */
/* =========================================================
	pagetitle
========================================================= */
/* =========================================================
	header
========================================================= */
.header {
  position: relative;
  z-index: 99; }
  @media screen and (min-width: 960px) {
    .header {
      position: fixed;
      width: 50vw;
      height: 100vh; } }
  .header__logo {
    position: absolute; }
    @media screen and (max-width: 959px) {
      .header__logo {
        top: calc(60px - 0.5em);
        left: 11.1111111111%; } }
    @media screen and (min-width: 960px) {
      .header__logo {
        top: 4vw;
        left: 4vw; } }
  .header__discription {
    font: normal 12px/17px "Montserrat", "Noto Sans JP", serif;
    color: white;
    margin-top: 10px;
    letter-spacing: 0.04em; }
  .header__menu {
    position: absolute;
    width: calc(82% - 120px + 1em); }
    @media screen and (min-width: 960px) {
      .header__menu {
        bottom: 4vw;
        right: 4vw;
        width: 200px; } }
    .header__menu ul {
      display: -webkit-box;
      display: -ms-flexbox;
      display: flex;
      -webkit-box-pack: justify;
          -ms-flex-pack: justify;
              justify-content: space-between;
      width: 100%;
      -webkit-transform: rotate(-90deg);
              transform: rotate(-90deg);
      -webkit-transform-origin: right;
              transform-origin: right; }
      @media screen and (min-width: 960px) {
        .header__menu ul {
          -webkit-transform: none;
                  transform: none; } }
    .header__menu li a {
      text-decoration: none;
      color: white;
      font: bold 11px/0 "Montserrat", "Noto Sans JP", serif; }
      .header__menu li a span {
        display: inline-block;
        width: 9px;
        height: 2px;
        background: white;
        margin: 3px 8px 3px 0; }
      @media screen and (min-width: 960px) {
        .header__menu li a {
          font-size: 16px; }
          .header__menu li a span {
            margin: 5px 8px 5px 0; } }
    .header__menu li.active {
      opacity: .4; }
    @media screen and (max-width: 959px) {
      .header__menu {
        top: calc(51px - 0.5em);
        right: 11.1111111111%; } }
  @media screen and (min-width: 960px) {
    .header__sns {
      position: absolute;
      bottom: 4vw;
      left: 4vw; }
      .header__sns figure:first-of-type {
        display: block;
        position: absolute;
        bottom: 60px;
        left: 14px;
        height: 80px;
        width: 2px;
        background: white; }
      .header__sns figure:last-of-type {
        display: block;
        position: absolute;
        bottom: 44px;
        left: 14px;
        height: 5px;
        width: 2px;
        background: white; }
      .header__sns a img {
        width: 30px;
        height: 30px; } }

/* =========================================================
	footer
========================================================= */
@media screen and (min-width: 960px) {
  .footer {
    position: fixed;
    right: 2%;
    top: 50%;
    -webkit-transform: translateY(-50%);
            transform: translateY(-50%); } }
@media screen and (max-width: 959px) {
  .footer .copyright {
    text-align: center;
    padding-bottom: 50px;
    font-size: 10px; } }

/* home page
========================================================= */
#home-page .mv {
  position: relative; }
  @media screen and (max-width: 959px) {
    #home-page .mv {
      width: 100vw;
      height: 80vw;
      background: #212121; } }
  @media screen and (min-width: 960px) {
    #home-page .mv {
      position: fixed;
      width: 50vw;
      height: 100vh;
      background: #212121; } }
  #home-page .mv__copy {
    font-family: "Yellowtail", serif;
    color: #FFBB00;
    /*
    background: linear-gradient(-45deg, rgba(246, 255, 0, 1), rgba(255, 0, 161, 1));
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
    */
    letter-spacing: 0; }
    #home-page .mv__copy.service {
      color: #00FFFF; }
    @media screen and (max-width: 959px) {
      #home-page .mv__copy {
        -webkit-transform: rotate(-10deg);
                transform: rotate(-10deg);
        font-size: 23vw;
        position: absolute;
        left: 8.111111%;
        bottom: -2%; } }
    @media screen and (min-width: 960px) {
      #home-page .mv__copy {
        position: absolute;
        top: 35vh;
        left: 12vw;
        font-size: 13vw;
        -webkit-transform: rotate(-8deg);
                transform: rotate(-8deg); } }
#home-page .project {
  padding: 100px 11.1111111%; }
  @media screen and (min-width: 960px) {
    #home-page .project {
      padding: 100px 5% 100px 55%; } }
  #home-page .project__thumbnail img {
    -webkit-box-shadow: 0px 2px 6px rgba(0, 0, 0, 0.2);
            box-shadow: 0px 2px 6px rgba(0, 0, 0, 0.2);
    vertical-align: bottom; }
  #home-page .project__title {
    font: 900 14px/1 "Montserrat", "Noto Sans JP", serif;
    color: #212121;
    padding: 13px 0 8px; }
  #home-page .project__description {
    font: normal 12px/15px "Montserrat", "Noto Sans JP", serif;
    color: #212121; }
  #home-page .project a {
    text-decoration: none; }
    #home-page .project a:hover .project__thumbnail img {
      opacity: .6; }
  #home-page .project + .project {
    padding-top: 0; }

@media print {
  * html body {
    zoom: .7; } }

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