@charset "UTF-8";
/* =====================================================
  1.0 - Foundation
===================================================== */
/*$baseWidth: 375;
@function spvw($pixelsVw) {
  @return $pixelsVw / $baseWidth * 100vw;
}

$baseWidth-tb: 768;
@function tbvw($pixelsVw-tb) {
  @return $pixelsVw-tb / $baseWidth-pc * 100vw;
}

$baseWidth-pc: 1600;
@function pcvw($pixelsVw-pc) {
  @return $pixelsVw-pc / $baseWidth-pc * 100vw;
}*/
/*$font-set-primary: 'Noto Sans JP', '游ゴシック体', YuGothic, '游ゴシック Medium',
  'Yu Gothic Medium', '游ゴシック', 'Yu Gothic', 'ヒラギノ角ゴ Pro W3', Meiryo,
  メイリオ, Osaka, 'MS PGothic', arial, helvetica, 'sans-serif';*/
/* //////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////

RESET CSS

html5doctor.com Reset Stylesheet

//////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////*/
abbr,
address,
article,
aside,
audio,
b,
blockquote,
body,
canvas,
caption,
cite,
code,
dd,
del,
details,
dfn,
div,
dl,
dt,
em,
fieldset,
figcaption,
figure,
footer,
form,
h1,
h2,
h3,
h4,
h5,
h6,
header,
hgroup,
html,
i,
iframe,
img,
ins,
kbd,
label,
legend,
li,
mark,
menu,
nav,
object,
ol,
p,
pre,
q,
samp,
section,
small,
span,
strong,
sub,
summary,
sup,
table,
tbody,
td,
tfoot,
th,
thead,
time,
tr,
ul,
var,
video {
  margin: 0;
  padding: 0;
  border: 0;
  outline: 0;
  font-size: 100%;
  vertical-align: baseline;
  background: transparent;
}

body {
  line-height: 1;
}

article,
aside,
details,
figcaption,
figure,
footer,
header,
hgroup,
menu,
nav,
section {
  display: block;
}

nav ul {
  list-style: none;
}

blockquote,
q {
  quotes: none;
}

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

a {
  margin: 0;
  padding: 0;
  font-size: 100%;
  vertical-align: baseline;
  background: transparent;
}

/* change colours to suit your needs */
ins {
  background-color: #ff9;
  color: #000;
  text-decoration: none;
}

/* change colours to suit your needs */
mark {
  background-color: #ff9;
  color: #000;
  font-style: italic;
  font-weight: 700;
}

del {
  text-decoration: line-through;
}

abbr[title],
dfn[title] {
  border-bottom: 1px dotted;
  cursor: help;
}

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

hr {
  display: block;
  height: 1px;
  border: 0;
  border-top: 1px solid #ccc;
  margin: 1em 0;
  padding: 0;
}

input,
select {
  vertical-align: middle;
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  border: none;
  outline: none;
  background: transparent;
}

button {
  padding: 0;
}

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

html {
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  -webkit-text-size-adjust: 100%;
     -moz-text-size-adjust: 100%;
      -ms-text-size-adjust: 100%;
          text-size-adjust: 100%;
}

body {
  -moz-text-size-adjust: 100%;
   -ms-text-size-adjust: 100%;
       text-size-adjust: 100%;
  color: #403128;
  background-color: #fff;
  text-rendering: optimizeLegibility;
  -webkit-font-feature-settings: 'palt';
  font-feature-settings: 'palt';
  font-family: "Lato", "Noto Sans JP", sans-serif;
  font-weight: 500;
  line-height: 1.8;
  letter-spacing: 0.05em;
  -webkit-font-smoothing: antialiased;
  -webkit-text-size-adjust: 100%;
  position: relative;
}

@media screen and (min-width: 1280px) {
  body {
    line-height: 1.8;
  }
}

@media screen and (min-width: 1366px) {
  body {
    line-height: 1.8;
  }
}

img {
  max-width: 100%;
  height: auto;
  vertical-align: bottom;
  -ms-interpolation-mode: nearest-neighbor;
  image-rendering: -webkit-optimize-contrast;
  image-rendering: -moz-crisp-edges;
  image-rendering: -o-crisp-edges;
}

a,
a:link,
a:visited {
  color: inherit;
  text-decoration: none;
}

a:active,
a:hover {
  color: inherit;
  text-decoration: none;
}

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

dl,
dt,
dd {
  margin: 0;
  padding: 0;
}

p {
  margin: 0;
  padding: 0;
}

img {
  border: 0;
  line-height: 0;
  vertical-align: bottom;
}

svg {
  vertical-align: bottom;
}

hr {
  display: none;
}

table {
  margin: 0;
  padding: 0;
}

th {
  text-align: left;
  font-weight: bold;
  margin: 0;
}

td {
  margin: 0;
}

em {
  font-weight: bold;
  font-style: normal;
}

form {
  margin: 0;
  padding: 0;
}

label {
  margin: 0;
  padding: 0;
}

input.btn {
  margin: 0 0.5em;
  padding: 0 1em;
}

button {
  border: none;
  font: inherit;
  line-height: inherit;
  background: none;
  margin: 0;
}

p {
  text-align: justify;
}

/* キーボード操作"以外"でフォーカスされた際はoutlineを消す */
.js-focus-visible :focus:not(.focus-visible) {
  outline: 0;
}

/* =====================================================
  2.0 - Layout
===================================================== */
/*
 l-container
-----------------------------------------------------*/
body {
  background: #fff;
  /*&.-load {
    overflow: hidden;

    .m-header {
      display: none;
    }

    .m-header__circle.-mark {
      display: none;
    }

    .allwrap {
      width: 102%;
      height: 100vh;
      display: block;
      transform: scale(0.95);
      overflow: hidden;
      border-radius: 2.5vw;
      transform: scale(0.9) translateX(-1%);
    }
  }*/
  -webkit-overflow-scrolling: touch;
}

body .allwrap {
  width: 100%;
  height: auto;
  position: relative;
  -webkit-overflow-scrolling: touch;
}

body .allwrap > * {
  position: relative;
  z-index: 1;
}

.l-wrapper {
  padding-top: 32.5vw;
}

@media screen and (min-width: 768px) {
  .l-wrapper {
    padding-top: 25vw;
  }
}

@media screen and (min-width: 1280px) {
  .l-wrapper {
    padding-top: 15vw;
  }
}

.l-container {
  width: 85vw;
  display: block;
  margin: 0 auto;
}

@media screen and (min-width: 1280px) {
  .l-container {
    width: 72vw;
  }
}

.l-container.-header-fotter {
  width: 95vw;
}

@media screen and (min-width: 1280px) {
  .l-container.-header-fotter {
    width: calc(95vw - 15px);
  }
}

.l-container.-small {
  width: 85vw;
}

@media screen and (min-width: 1280px) {
  .l-container.-small {
    width: 60vw;
  }
}

.l-container.-wide {
  width: 85vw;
  max-width: inherit;
}

@media screen and (min-width: 1280px) {
  .l-container.-wide {
    width: 80vw;
  }
}

.l-container.-full {
  width: 100%;
  max-width: inherit;
}

@media screen and (max-width: 767px) {
  .l-container.l-box {
    width: 100%;
    border-radius: 0;
  }
}

.l-section {
  padding-top: 25vw;
}

.l-section.-pt_m {
  padding-top: 15vw;
}

@media screen and (min-width: 768px) {
  .l-section {
    padding-top: 10vw;
  }
  .l-section.-pt_m {
    padding-top: 5vw;
  }
}

@media screen and (min-width: 1280px) {
  .l-section {
    padding-top: 10vw;
  }
}

.l-section.-s {
  padding-top: 20vw;
}

@media screen and (min-width: 768px) {
  .l-section.-s {
    padding-top: 15vw;
  }
}

@media screen and (min-width: 1280px) {
  .l-section.-s {
    padding-top: 10vw;
  }
}

.l-contents {
  margin-top: 10vw;
}

.l-contents > * {
  margin-bottom: 1.5rem;
}

.l-contents > *:last-child {
  margin-bottom: 0;
}

@media screen and (min-width: 768px) {
  .l-contents {
    margin-top: 5vw;
  }
}

.l-contents:first-child {
  margin-top: 0;
}

@media screen and (min-width: 1024px) {
  .l-contents {
    margin-top: 5vw;
  }
}

@media screen and (min-width: 1280px) {
  .l-contents {
    margin-top: 3vw;
  }
}

.l-contents.-ss {
  margin-top: 3vw;
}

@media screen and (min-width: 1024px) {
  .l-contents.-ss {
    margin-top: 1.5vw;
  }
}

.l-contents.-ss:first-child {
  margin-top: 0;
}

.l-contents.-s {
  margin-top: 5vw;
}

@media screen and (min-width: 1024px) {
  .l-contents.-s {
    margin-top: 2.5vw;
  }
}

.l-contents.-s:first-child {
  margin-top: 0;
}

.l-contents.-m {
  margin-top: 15vw;
}

@media screen and (min-width: 768px) {
  .l-contents.-m {
    margin-top: 10vw;
  }
}

.l-contents.-m:first-child {
  margin-top: 0;
}

@media screen and (min-width: 1024px) {
  .l-contents.-m {
    margin-top: 7.5vw;
  }
}

@media screen and (min-width: 1280px) {
  .l-contents.-m {
    margin-top: 5vw;
  }
}

.l-contents.-l {
  margin-top: 15vw;
}

@media screen and (min-width: 1024px) {
  .l-contents.-l {
    margin-top: 7.5vw;
  }
}

.l-contents .u-font.-l {
  margin-bottom: 1em;
}

/*
main
-----------------------------------------------------*/
.l-main {
  display: block;
  overflow: hidden;
}

.l-mainarea {
  position: relative;
}

.l-mainarea .u-font.-ll {
  line-height: 1em;
}

.l-mainarea .l-mainarea__title {
  position: relative;
}

.l-mainarea .l-mainarea__title .u-font.-h.-s {
  position: absolute;
  left: 0;
  top: -0.75em;
  -webkit-transform: translateY(-100%);
          transform: translateY(-100%);
  display: block;
  margin-bottom: 0.25em;
}

.l-mainarea.-typeA {
  display: block;
}

.l-mainarea.-typeB .l-mainarea__title {
  margin-bottom: 10vw;
}

.l-mainarea.-typeB .l-mainarea__img {
  width: 95vw;
  aspect-ratio: 10/7;
  margin-left: 0vw;
  background: #fff;
  margin-bottom: 7.5vw;
}

.l-mainarea.-typeB .l-mainarea__img img {
  -o-object-fit: cover;
     object-fit: cover;
  width: 100%;
  height: 100%;
}

@media screen and (min-width: 768px) {
  .l-mainarea.-typeB .l-mainarea__img {
    margin-bottom: 5vw;
    margin-left: -2.5vw;
  }
}

@media screen and (min-width: 1024px) {
  .l-mainarea.-typeB {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
  }
  .l-mainarea.-typeB .l-mainarea__img {
    width: 55vw;
    margin-left: -2.5vw;
    position: relative;
    right: -7.5vw;
    margin-bottom: 0;
    aspect-ratio: unset;
    height: 55vw;
  }
}

@media screen and (min-width: 1024px) and (min-width: 768px) {
  .l-mainarea.-typeB .l-mainarea__img {
    right: -10vw;
  }
}

@media screen and (min-width: 1024px) {
  .l-mainarea.-typeB .l-mainarea__title {
    width: 30vw;
    padding-top: 0.5em;
  }
  .l-mainarea.-typeB .l-mainarea__text {
    width: 30vw;
    bottom: 5vw;
    left: 0;
    position: absolute;
  }
}

@media screen and (min-width: 1280px) {
  .l-mainarea.-typeB .l-mainarea__img {
    height: calc(100vh - 12.5vw);
  }
}

.l-main__pagenav {
  padding-top: 10vw;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: end;
      -ms-flex-pack: end;
          justify-content: flex-end;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
}

@media screen and (min-width: 1024px) {
  .l-main__pagenav {
    padding-top: 0;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    position: absolute;
    right: 0;
    top: 0;
  }
}

.l-main__pagenav .-button {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: reverse;
      -ms-flex-direction: row-reverse;
          flex-direction: row-reverse;
  margin-bottom: 1em;
  width: 100%;
  line-height: 1.5em;
}

.l-main__pagenav .-button:last-child {
  margin-bottom: 0;
}

@media screen and (min-width: 768px) {
  .l-main__pagenav .-button {
    margin-right: 1em;
    margin-bottom: 0em;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: reverse;
        -ms-flex-direction: row-reverse;
            flex-direction: row-reverse;
    width: auto;
  }
  .l-main__pagenav .-button:last-child {
    margin-bottom: 0;
  }
}

.l-main__pagenav .-button:last-child {
  margin-right: 0;
}

.l-main__pagenav .-button .-icon {
  width: 1.5em;
  height: 1.5em;
  display: block;
  background: #403128;
  border-radius: 50%;
  line-height: 0;
}

.l-main__pagenav .-button .-icon svg {
  fill: #fff;
}

@media screen and (min-width: 768px) {
  .l-main__pagenav .-button .-icon {
    width: 1.5em;
    height: 1.5em;
  }
}

.l-main__pagenav .-button .-inner {
  display: inline-block;
  padding: 0 1em;
  margin: auto 0;
}

/*
column
-----------------------------------------------------*/
/*c-column*/
.l-column {
  margin-bottom: 2rem;
}

.l-column:last-child {
  margin-bottom: 0;
}

.l-column > * {
  margin-bottom: 1.5rem;
}

.l-column > *:last-child {
  margin-bottom: 0;
}

.l-column .u-font.-l {
  margin-bottom: 1em;
}

.l-column .u-font.-ll {
  margin-bottom: 1em;
}

.l-column__text {
  max-width: 32em;
  margin: 0 auto;
}

/*
   .l-flex
-----------------------------------------------------*/
.l-flex {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
}

.l-flex.-row {
  -webkit-box-orient: horizontal;
  -webkit-box-direction: reverse;
      -ms-flex-direction: row-reverse;
          flex-direction: row-reverse;
}

.l-flex .l-flexcolumn {
  margin-bottom: 15vw;
  width: 100%;
  display: block;
}

@media screen and (min-width: 768px) {
  .l-flex .l-flexcolumn {
    margin-bottom: 5vw;
  }
}

.l-flex .l-flexcolumn:last-child {
  margin-bottom: 0;
}

.l-flex.-column2 .l-flexcolumn {
  margin-bottom: 10vw;
}

.l-flex.-column2 .l-flexcolumn:last-child {
  margin-bottom: 0;
}

@media screen and (min-width: 768px) {
  .l-flex.-column2 .l-flexcolumn {
    margin-bottom: 0;
  }
}

@media screen and (min-width: 768px) {
  .l-flex.-column2 {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
  }
  .l-flex.-column2 .l-flexcolumn {
    width: calc(50% - 2.5vw);
  }
  .l-flex.-column2 .l-flexcolumn:last-child {
    margin-bottom: 0;
  }
  .l-flex.-column2 .l-flexcolumn .l-column__text .u-font.-h:first-child {
    padding-top: 2.5vw;
  }
  .l-flex.-column2 .l-flexcolumn2 {
    width: 100%;
    display: block;
  }
  .l-flex.-column2 .l-flexcolumn2:last-child {
    margin-bottom: 0;
  }
}

@media screen and (min-width: 768px) {
  .l-flex.-column3 {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    -webkit-box-pack: left;
        -ms-flex-pack: left;
            justify-content: left;
  }
  .l-flex.-column3 .l-flexcolumn {
    width: calc(33.333% - 3.333vw);
    margin-right: 5vw;
  }
  .l-flex.-column3 .l-flexcolumn:nth-child(3n) {
    margin-right: 0;
  }
  .l-flex.-column3 .l-flexcolumn2 {
    width: calc(66.666% - 1.666vw);
  }
}

.-flex__center {
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
}

/*
box
-----------------------------------------------------*/
.l-box {
  display: block;
  background: #fff;
}

.l-box.-mini {
  width: 100%;
}

.l-box.-mini .c-button > .-inner {
  padding: 0 0;
}

.l-box.-mini > .-inner {
  padding: 5vw 0;
}

@media screen and (min-width: 1024px) {
  .l-box.-mini {
    max-width: calc(100% - 10vw);
    display: block;
  }
  .l-box.-mini > .-inner {
    padding: 5vw 0;
    max-width: calc(100% - 6vw);
    text-align: center;
  }
}

.l-box.-baige {
  background: #FAEAE0;
}

.l-box > .-inner {
  display: block;
  width: calc(100% - 10vw);
  margin: 0 auto;
  padding: 7.5vw 0;
}

@media screen and (min-width: 1280px) {
  .l-box > .-inner {
    padding: 5vw 0;
  }
}

@media screen and (min-width: 1366px) {
  .l-box > .-inner {
    display: block;
    width: 100%;
    max-width: 50vw;
    margin: 0 auto;
  }
}

.l-box.-nowarap {
  padding-top: 0;
  padding-bottom: 0;
  border: none;
  background: none;
}

.l-box.-nowarap .-inner {
  padding: 0;
}

/*@import 'layout/column';
@import 'layout/flex';
@import 'layout/box';
@import 'layout/spacer';
@import 'layout/box';*/
/* =====================================================
  3.0 - module
===================================================== */
.fvflg {
  width: 100%;
  height: 5vw;
  display: block;
  position: absolute;
  left: 0;
  top: 0;
  z-index: 0;
}

.m-header__circle {
  width: 12.5vw;
  height: 12.5vw;
  border-radius: 50%;
  display: block;
  z-index: 9999;
}

@media screen and (min-width: 768px) {
  .m-header__circle {
    width: 7.8125vw;
    height: 7.8125vw;
  }
}

@media screen and (min-width: 1280px) {
  .m-header__circle {
    width: 4.6875vw;
    height: 4.6875vw;
  }
}

@media screen and (min-width: 1920px) {
  .m-header__circle {
    width: 4.16667vw;
    height: 4.16667vw;
  }
}

.m-header__circle .m-header__mark {
  width: 100%;
  height: 100%;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  position: absolute;
  left: 0;
  top: 0;
}

.m-header__circle .m-header__mark img {
  width: 100%;
  height: auto;
  margin: auto;
}

.m-header__circle.-cv {
  position: absolute;
  right: 0;
  top: 0;
  background: #fff;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
}

.m-header__circle.-cv .-icon {
  width: 30%;
  height: auto;
  display: block;
  margin: auto;
  line-height: 0;
}

.m-header__circle.-cv .-icon svg {
  width: 100%;
  height: auto;
  fill: #166678;
}

.m-header__circle.-mark {
  position: fixed;
  top: 2.5vw;
  left: 2.5vw;
  background: #403128;
  z-index: 10001;
}

.m-header {
  padding: 2.5vw;
  width: 100%;
  position: fixed;
  z-index: 9999;
}

.m-header .-inner {
  display: block;
  position: relative;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
}

.m-header .m-headerlogo {
  height: 12.5vw;
  width: 33.75vw;
  display: block;
  margin: 0 auto;
}

@media screen and (min-width: 768px) {
  .m-header .m-headerlogo {
    height: 7.8125vw;
    width: 21.09375vw;
  }
}

@media screen and (min-width: 1280px) {
  .m-header .m-headerlogo {
    position: absolute;
    left: 1em;
    margin-left: 4.6875vw;
    height: 4.6875vw;
    width: 12.65625vw;
  }
}

@media screen and (min-width: 1920px) {
  .m-header .m-headerlogo {
    left: 1em;
    margin-left: 4.16667vw;
    width: 11.25vw;
    height: 4.16667vw;
  }
}

.m-header .m-headerlogo a {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  width: 100%;
  height: 100%;
}

.m-header .m-headerlogo a img {
  height: 100%;
  width: auto;
}

.m-header .m-header__nav {
  display: none;
}

@media screen and (min-width: 1280px) {
  .m-header .m-header__nav {
    display: block;
    margin: 0 auto;
  }
  .m-header .m-header__nav .-inner .-button {
    margin-right: 2em;
    line-height: 5.20833vw;
    font-weight: 700;
  }
  .m-header .m-header__nav .-inner .-button:last-child {
    margin-right: 0;
  }
}

.m-header__button-area.-hamburger {
  width: 100%;
  height: 100%;
  display: block;
  overflow: hidden;
}

.m-header__button-area.-hamburger .m-header__button {
  width: 100%;
  height: 100%;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  margin: auto;
}

.m-header__button-area.-hamburger .m-header__button .-hamburger__line {
  width: 40%;
  position: relative;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  margin: auto;
}

.m-header__button-area.-hamburger .m-header__button .-hamburger__line .-line {
  width: 100%;
  height: 2px;
  display: block;
  background: #fff;
}

.m-header__button-area.-hamburger .m-header__button .-hamburger__line .-line:nth-child(1) {
  position: absolute;
  top: -300%;
}

.m-header__button-area.-hamburger .m-header__button .-hamburger__line .-line:nth-child(3) {
  position: absolute;
  top: 300%;
}

@media screen and (min-width: 768px) {
  .m-header__button-area.-hamburger .m-header__button .-hamburger__line .-line:nth-child(1) {
    top: -400%;
  }
  .m-header__button-area.-hamburger .m-header__button .-hamburger__line .-line:nth-child(3) {
    top: 400%;
  }
}

.m-header__circle.-mark .m-header__button-area.-left.-hamburger {
  -webkit-transition: 0.3s ease-in 0s;
  transition: 0.3s ease-in 0s;
  background: #166678;
  border-radius: 50%;
}

.m-header__circle.-mark .m-header__button-area.-hamburger .m-header__button .-hamburger__line .-line:nth-child(1) {
  -webkit-transition: 0.2s ease-in 0.1s;
  transition: 0.2s ease-in 0.1s;
  -webkit-transform: rotate(0);
          transform: rotate(0);
}

.m-header__circle.-mark .m-header__button-area.-hamburger .m-header__button .-hamburger__line .-line:nth-child(2) {
  -webkit-transition: 0.1s ease-in 0.3s;
  transition: 0.1s ease-in 0.3s;
}

.m-header__circle.-mark .m-header__button-area.-hamburger .m-header__button .-hamburger__line .-line:nth-child(3) {
  -webkit-transition: 0.2s ease-in 0.1s;
  transition: 0.2s ease-in 0.1s;
  -webkit-transform: rotate(0);
          transform: rotate(0);
}

.m-header__circle.-mark.-close .m-header__button-area.-left.-hamburger {
  -webkit-transition: 0.1s ease-in 0.3s;
  transition: 0.1s ease-in 0.3s;
}

.m-header__circle.-mark.-close .m-header__button-area.-hamburger .m-header__button .-hamburger__line .-line:nth-child(1) {
  -webkit-transition: 0.2s ease-in 0.1s;
  transition: 0.2s ease-in 0.1s;
  top: 0%;
  -webkit-transform: rotate(45deg);
          transform: rotate(45deg);
}

.m-header__circle.-mark.-close .m-header__button-area.-hamburger .m-header__button .-hamburger__line .-line:nth-child(2) {
  width: 0%;
  -webkit-transition: 0.1 ease-in;
  transition: 0.1 ease-in;
}

.m-header__circle.-mark.-close .m-header__button-area.-hamburger .m-header__button .-hamburger__line .-line:nth-child(3) {
  -webkit-transition: 0.2s ease-in 0.1s;
  transition: 0.2s ease-in 0.1s;
  top: 0%;
  -webkit-transform: rotate(-45deg);
          transform: rotate(-45deg);
}

/*
footer
-----------------------------------------------------*/
.m-footwrap {
  padding-top: 30vw;
}

@media screen and (min-width: 768px) {
  .m-footwrap {
    padding-top: 15vw;
  }
}

.m-footwrap .l-contents {
  overflow: hidden;
}

.m-footwrap .c-button.-tel.-white::before,
.m-footwrap .c-button.-contact.-white::before {
  left: 2em;
}

.m-foot__cv-wrap {
  padding: 10vw 5vw 5vw;
  margin-bottom: 0;
  background: #166678;
  color: #fff;
}

@media screen and (min-width: 768px) {
  .m-foot__cv-wrap {
    padding: 5vw 5vw 5vw;
    margin-bottom: 0;
  }
}

.m-foot__cv-wrap .m-foot__cv-wrap___title {
  margin-bottom: 1.5em;
  letter-spacing: 0.1em !important;
}

.m-foot__cv-wrap .m-foot__cv-wrap___btnwrap .c-button {
  width: 90%;
  margin: 0 auto 1rem;
}

@media screen and (min-width: 768px) {
  .m-foot__cv-wrap .m-foot__cv-wrap___btnwrap {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
  }
  .m-foot__cv-wrap .m-foot__cv-wrap___btnwrap .c-button {
    width: calc(50% - 2.5vw);
  }
}

@media screen and (min-width: 1280px) {
  .m-foot__cv-wrap .m-foot__cv-wrap___btnwrap .c-button {
    width: calc(50% - 1.5vw);
  }
}

.m-foot__cv-wrap .m-foot__cv-wrap___text {
  padding-top: 0.5em;
}

.m-foot__cv-wrap .m-foot__cv-wrap___text br {
  display: none;
}

@media screen and (min-width: 768px) {
  .m-foot__cv-wrap .m-foot__cv-wrap___text {
    text-align: center !important;
  }
  .m-foot__cv-wrap .m-foot__cv-wrap___text br {
    display: block;
  }
}

@media screen and (min-width: 1280px) {
  .m-foot__cv-wrap .m-foot__cv-wrap___text {
    padding-top: 2em;
  }
}

.m-footer {
  padding: 10vw 5vw 10vw;
  background: #FAEAE0;
}

@media screen and (min-width: 768px) {
  .m-footer {
    padding: 5vw 5vw 5vw;
  }
}

.m-footer .m-footer__logoArea {
  width: 100%;
  display: block;
}

.m-footer .m-footer__logoArea > * {
  text-align: center;
}

@media screen and (min-width: 1024px) {
  .m-footer .m-footer__logoArea {
    width: calc(45% - 2.5vw);
  }
  .m-footer .m-footer__logoArea > * {
    text-align: left;
  }
}

@media screen and (min-width: 1280px) {
  .m-footer .m-footer__logoArea {
    width: 20em;
  }
}

.m-footer .m-footer__logoArea .-logo {
  display: block;
  margin-bottom: 7.5vw;
}

.m-footer .m-footer__logoArea .-logo img {
  width: 47.5vw;
}

@media screen and (min-width: 768px) {
  .m-footer .m-footer__logoArea .-logo {
    margin-bottom: 5vw;
  }
  .m-footer .m-footer__logoArea .-logo img {
    width: 40vw;
  }
}

@media screen and (min-width: 1024px) {
  .m-footer .m-footer__logoArea .-logo {
    margin-bottom: 2.5vw;
  }
  .m-footer .m-footer__logoArea .-logo img {
    width: 25vw;
  }
}

@media screen and (min-width: 1280px) {
  .m-footer .m-footer__logoArea .-logo {
    margin-bottom: 1em;
  }
  .m-footer .m-footer__logoArea .-logo img {
    width: 20vw;
  }
}

.m-footer .m-footer__navArea {
  width: 90%;
  margin-left: auto;
  margin-right: auto;
  padding-top: 10vw;
  padding-bottom: 10vw;
}

@media screen and (min-width: 768px) {
  .m-footer .m-footer__navArea {
    padding-top: 5vw;
    padding-bottom: 0;
  }
}

@media screen and (min-width: 1024px) {
  .m-footer .m-footer__navArea {
    width: calc(55% - 2.5vw);
    padding-top: 1rem;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
  }
}

@media screen and (min-width: 1280px) {
  .m-footer .m-footer__navArea {
    width: calc(100% - 40em - 5vw);
  }
}

@media screen and (min-width: 1366px) {
  .m-footer .m-footer__navArea {
    width: calc(100% - 40em - 10vw);
    padding-top: 2rem;
  }
}

.m-footer .m-footer__navArea > .-inner {
  padding: 0 1rem;
  -webkit-box-pack: left;
      -ms-flex-pack: left;
          justify-content: left;
}

@media screen and (min-width: 1024px) {
  .m-footer .m-footer__navArea > .-inner {
    margin-bottom: 0;
  }
}

@media screen and (min-width: 1280px) {
  .m-footer .m-footer__navArea > .-inner {
    padding: 0;
  }
}

.m-footer .m-footer__navArea .l-flexcolumn {
  width: 100%;
  margin-bottom: 1rem;
}

.m-footer .m-footer__navArea .l-flexcolumn:last-child {
  margin-bottom: 0;
}

.m-footer .m-footer__navArea .l-flexcolumn:last-child .c-button__arr {
  -webkit-box-pack: left;
      -ms-flex-pack: left;
          justify-content: left;
  -webkit-box-orient: initial;
  -webkit-box-direction: initial;
      -ms-flex-direction: initial;
          flex-direction: initial;
}

@media screen and (min-width: 1024px) {
  .m-footer .m-footer__navArea .l-flexcolumn:last-child .c-button__arr {
    margin-bottom: 0;
  }
}

.m-footer .m-footer__navArea .l-flexcolumn .c-button__arr {
  -webkit-box-pack: left;
      -ms-flex-pack: left;
          justify-content: left;
  -webkit-box-orient: initial;
  -webkit-box-direction: initial;
      -ms-flex-direction: initial;
          flex-direction: initial;
  width: 100%;
  margin-bottom: 1.5em;
}

.m-footer .m-footer__navArea .l-flexcolumn .c-button__arr:last-child {
  margin-bottom: 0;
}

.m-footer .m-footer__navArea .l-flexcolumn .c-button__arr .-arr {
  margin-left: 0;
}

.m-footer .m-footer__navArea .l-flexcolumn .c-button__arr .-inner {
  padding-left: 1em;
}

@media screen and (min-width: 768px) {
  .m-footer .m-footer__navArea > .-inner {
    width: 27rem;
    margin: 0 auto;
  }
  .m-footer .m-footer__navArea .l-flexcolumn {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    -webkit-box-pack: left;
        -ms-flex-pack: left;
            justify-content: left;
    margin-bottom: 0;
  }
  .m-footer .m-footer__navArea .l-flexcolumn .c-button__arr {
    width: 12rem;
  }
  .m-footer .m-footer__navArea .l-flexcolumn:first-child .c-button__arr:first-child {
    width: 100%;
  }
}

@media screen and (min-width: 1024px) {
  .m-footer .m-footer__navArea > .-inner {
    width: 30rem;
    -webkit-box-pack: left;
        -ms-flex-pack: left;
            justify-content: left;
  }
}

@media screen and (min-width: 1280px) {
  .m-footer .m-footer__navArea > .-inner {
    width: 30rem;
  }
  .m-footer .m-footer__navArea .l-flexcolumn .c-button__arr {
    width: 11em;
    margin-bottom: 0;
  }
}

.m-footer .m-footer__contactArea {
  width: 100%;
  padding-top: 0;
  text-align: center;
}

@media screen and (min-width: 768px) {
  .m-footer .m-footer__contactArea {
    padding-top: 5vw;
  }
}

@media screen and (min-width: 1024px) {
  .m-footer .m-footer__contactArea {
    padding-top: 4rem;
  }
}

@media screen and (min-width: 1280px) {
  .m-footer .m-footer__contactArea {
    width: 20em;
    padding-top: 2rem;
  }
}

.m-footer .c-button.-contact {
  margin-bottom: 1em;
}

.m-foot__copy {
  font-size: 0.8em;
  text-align: center;
  padding: 4em 0 2em;
}

.m-foot__copy .-copy {
  padding-top: 2em;
  letter-spacing: 0.1em;
  text-align: center;
}

body * {
  position: relative;
}

body .m-bg {
  display: block;
  width: 100%;
  height: 100vh;
  position: fixed;
  left: 0;
  top: 0;
  background: -webkit-gradient(linear, left top, left bottom, from(#F8EBE2), color-stop(50%, #FFF));
  background: linear-gradient(to bottom, #F8EBE2, #FFF 50%);
  z-index: -1;
}

body.navopen .m-modal {
  display: block;
}

body .m-modal {
  display: none;
  position: fixed;
}

body .m-modal .m-modal__bg {
  -webkit-transform: scale(1);
          transform: scale(1);
  -webkit-transition: 0.5s ease-out 0.3s;
  transition: 0.5s ease-out 0.3s;
}

body .m-modal .m-modalnav {
  opacity: 0;
  -webkit-transform: scale(0.95);
          transform: scale(0.95);
  -webkit-transition: 0.3s ease-out;
  transition: 0.3s ease-out;
}

body .m-modal.u-noise::after {
  opacity: 0;
  -webkit-transition: 0.5s;
  transition: 0.5s;
}

body .m-modal.u-noise.-viewnav::after {
  opacity: 1;
  -webkit-transition: 0.5s;
  transition: 0.5s;
}

body .m-modal.-viewnav {
  display: block;
}

body .m-modal.-viewnav .m-modal__bg {
  -webkit-transform: scale(100);
          transform: scale(100);
  z-index: 0;
  -webkit-transition: 0.5s ease-in;
  transition: 0.5s ease-in;
}

body .m-modal.-viewnav .m-modalnav {
  opacity: 1;
  -webkit-transform: scale(1);
          transform: scale(1);
  -webkit-transition: 0.3s ease-out 0.5s;
  transition: 0.3s ease-out 0.5s;
}

.m-modal {
  width: 100%;
  height: 100vh;
  display: block;
  position: fixed;
  left: 0;
  top: 0;
  z-index: 10000;
}

.m-modal .m-modalnav {
  overflow-y: auto;
  width: 100%;
  height: 100%;
}

@media screen and (min-width: 768px) {
  .m-modal .m-modalnav {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
  }
}

.m-modal .m-modalnav > .-inner {
  padding-top: 15vw;
  padding-bottom: 15vw;
}

@media screen and (min-width: 768px) {
  .m-modal .m-modalnav > .-inner {
    padding: 5vw 0;
    margin: auto;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
  }
}

@media screen and (min-width: 1024px) {
  .m-modal .m-modalnav > .-inner {
    max-width: 660px;
  }
}

.m-modal__logo {
  width: 40vw;
  height: auto;
  display: block;
  margin-left: auto;
  margin-right: auto;
}

@media screen and (min-width: 768px) {
  .m-modal__logo {
    margin: auto;
    width: calc(50% - 0.5rem);
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
  }
  .m-modal__logo img {
    width: 80%;
    margin: auto;
  }
}

@media screen and (min-width: 768px) and (min-width: 1024px) {
  .m-modal__logo img {
    width: 80%;
  }
}

.m-modal__nav {
  width: 100%;
  display: block;
  margin: 0 auto;
  padding-top: 10vw;
}

.m-modal__nav > .-inner {
  padding-left: 1rem;
}

@media screen and (min-width: 768px) {
  .m-modal__nav {
    width: calc(50% - 2rem);
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    margin: 0;
    padding-top: 0;
  }
  .m-modal__nav > .-inner {
    margin: auto 0;
    width: 100%;
    display: block;
  }
}

.m-modal__nav .c-button__arr {
  color: #fff;
  width: 100%;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: inherit;
  -webkit-box-direction: inherit;
      -ms-flex-direction: inherit;
          flex-direction: inherit;
  margin-bottom: 1.5em;
}

@media screen and (min-width: 768px) {
  .m-modal__nav .c-button__arr {
    margin-bottom: 2em;
  }
}

.m-modal__nav .c-button__arr:last-child {
  margin-bottom: 0;
}

.m-modal__nav .c-button__arr .-arr {
  background-color: #ffffff;
  margin-left: 0em;
  margin-right: 1em;
}

.m-modal__nav .c-button__arr .-arr svg {
  fill: #403128;
}

.m-modal__nav .c-button__arr .-arr::after {
  background: url(/assets/img/common/common_arr_dark.svg);
}

.m-modal__contact {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  margin-top: 10vw;
}

@media screen and (min-width: 768px) {
  .m-modal__contact {
    margin-top: 10vw;
    width: 100%;
  }
}

@media screen and (min-width: 1024px) {
  .m-modal__contact {
    margin-top: 5vw;
  }
}

.m-modal__contact .c-button {
  margin: 0;
}

@media screen and (min-width: 768px) {
  .m-modal__contact .c-button {
    max-width: inherit;
  }
}

.m-modal__contact .c-button.-access {
  width: calc(50% - 0.5em);
  padding: 1.5em 0;
}

@media screen and (min-width: 768px) {
  .m-modal__contact .c-button.-access {
    width: calc(50% - 0.5em);
  }
}

.m-modal__contact .c-button.-contact {
  width: calc(50% - 0.5em);
  padding: 1.5em 0 1.5em 1em;
}

@media screen and (min-width: 768px) {
  .m-modal__contact .c-button.-contact {
    padding: 1.5em 0;
    width: calc(50% - 0.5em);
  }
}

.m-modal__contact .c-button.-contact::before {
  left: 1em;
}

.m-modal__contact .c-button.-tel {
  border-radius: 3.5em;
  margin-top: 2rem;
  max-width: initial;
}

.m-modal__contact .c-button.-tel::before {
  background: url(/assets/img/common/icon_tel_white.svg) no-repeat;
}

.m-modal__contact .c-button.-tel .u-propaty__telnum {
  display: block;
  font-size: 2em;
  margin-bottom: 0.25em;
  line-height: 1em;
}

.m-modal__contact .c-button.-tel .-caption {
  font-size: 0.9em;
}

.m-modal__contact .c-sns__wrap {
  padding-top: 2rem;
  color: #fff;
}

@media screen and (min-width: 768px) {
  .m-modal__contact .c-sns__wrap {
    padding-top: 2rem;
  }
}

.c-sns__wrap {
  width: 100%;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
}

.c-sns__wrap .c-sns {
  margin-right: 2em;
  padding-left: 1.5em;
  position: relative;
  line-height: 1em;
}

.c-sns__wrap .c-sns .-icon {
  width: 1.1em;
  height: 1.1em;
  display: block;
  position: absolute;
  left: 0;
  top: 0;
  line-height: 0;
}

.c-sns__wrap .c-sns .-icon svg {
  fill: #fff;
}

.c-sns__wrap .c-sns .-text {
  line-height: 1em;
}

.c-sns__wrap .c-sns:last-child {
  margin-right: 0;
}

body {
  overflow: visible;
}

body .home-mainarea .home-main .home-main__img .-img {
  -webkit-transform: translateY(200%);
          transform: translateY(200%);
}

body .home-mainarea .home-mainarea__lead .home-main__img .-img {
  -webkit-transform: translateY(200%);
          transform: translateY(200%);
}

body .allwrap {
  -webkit-transform: translateY(0px);
          transform: translateY(0px);
  -webkit-transition: -webkit-transform 1s cubic-bezier(0.39, 0.58, 0.57, 1);
  transition: -webkit-transform 1s cubic-bezier(0.39, 0.58, 0.57, 1);
  transition: transform 1s cubic-bezier(0.39, 0.58, 0.57, 1);
  transition: transform 1s cubic-bezier(0.39, 0.58, 0.57, 1), -webkit-transform 1s cubic-bezier(0.39, 0.58, 0.57, 1);
}

body.-load {
  overflow: hidden;
}

body.-load .allwrap {
  -webkit-transform: translateY(70px);
          transform: translateY(70px);
}

body.-load .home-mainarea__tit {
  position: fixed;
}

body .home-mainarea__tit {
  z-index: 10000;
  position: absolute;
  opacity: 1;
}

.m-loading {
  width: 100%;
  height: 100vh;
  height: 100dvh;
  display: block;
  position: fixed;
  left: 0;
  top: 0;
  background: #403128;
  z-index: 10003;
  -webkit-clip-path: inset(0 0 0 0);
          clip-path: inset(0 0 0 0);
  -webkit-transition: -webkit-clip-path 1s cubic-bezier(0.22, 0.61, 0.36, 1) 0s;
  transition: -webkit-clip-path 1s cubic-bezier(0.22, 0.61, 0.36, 1) 0s;
  transition: clip-path 1s cubic-bezier(0.22, 0.61, 0.36, 1) 0s;
  transition: clip-path 1s cubic-bezier(0.22, 0.61, 0.36, 1) 0s, -webkit-clip-path 1s cubic-bezier(0.22, 0.61, 0.36, 1) 0s;
}

@media screen and (min-width: 1024px) {
  .m-loading {
    height: 100vh;
  }
}

.m-loading.-sub {
  z-index: 9998;
}

.m-loading .-img {
  width: 100%;
  height: 100%;
  display: block;
  position: absolute;
  left: 0;
  top: 0;
}

.m-loading .-img img {
  -o-object-fit: cover;
     object-fit: cover;
  width: 100%;
  height: 100%;
}

.m-loading .-old {
  z-index: 1;
  overflow: hidden;
}

.m-loading .-old img {
  opacity: 0;
  -webkit-transform: scale(1.1);
          transform: scale(1.1);
}

.m-loading .-new {
  z-index: 2;
  -webkit-clip-path: inset(0 100% 0 0);
          clip-path: inset(0 100% 0 0);
  -webkit-transition: 0.75s cubic-bezier(0.25, 0.46, 0.45, 0.94) 0s;
  transition: 0.75s cubic-bezier(0.25, 0.46, 0.45, 0.94) 0s;
}

.m-loading .m-load__num {
  display: inline-block;
  position: absolute;
  right: 5vw;
  bottom: 20vw;
}

@media (orientation: landscape) {
  .m-loading .m-load__num {
    bottom: 5vw;
  }
}

.m-loading .m-load__num * {
  color: #fff;
  font-weight: 700;
  line-height: 1em;
}

.m-loading .m-load__num .-num {
  font-size: 4em;
  margin-right: 0.1em;
}

.m-loading .m-load__num .-persent {
  font-size: 1em;
}

/*
@import 'module/footer';
@import 'module/loading';
@import 'module/sns';
*/
/* =====================================================
  3.0 - Object
===================================================== */
/*
  3.1 - Component
-----------------------------------------------------*/
/*
list
-----------------------------------------------------*/
.c-list li {
  position: relative;
  display: block;
  padding-left: 1.5em;
  margin-bottom: 0.5em;
}

.c-list li:last-child {
  margin-bottom: 0;
}

.c-list li::before {
  content: "・";
  color: #555;
  position: absolute;
  left: 0;
  top: 0;
}

.c-list.-dl {
  background-image: linear-gradient(to right, #403128, #403128 1px, transparent 2px, transparent 0px);
  background-size: 6px 2px;
  background-position: left top;
  background-repeat: repeat-x;
}

.c-list.-dl li {
  padding-left: 0;
  padding: 0.5em 0;
  background-image: linear-gradient(to right, #403128, #403128 1px, transparent 2px, transparent 0px);
  background-size: 6px 2px;
  background-position: left bottom;
  background-repeat: repeat-x;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
}

.c-list.-dl li .c-list__dt {
  width: 100%;
  display: block;
  font-weight: 700;
  margin-bottom: 0;
}

.c-list.-dl li .c-list__dd {
  width: 100%;
  display: block;
}

.c-list.-dl li::before {
  display: none;
}

@media screen and (min-width: 768px) {
  .c-list.-dl li .c-list__dt {
    width: 10em;
    margin-bottom: 0;
  }
  .c-list.-dl li .c-list__dd {
    width: calc(100% - 10em);
  }
}

.c-dllist {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  background-image: linear-gradient(to right, #403128, #403128 1px, transparent 2px, transparent 0px);
  background-size: 6px 2px;
  background-position: left top;
  background-repeat: repeat-x;
}

.c-dllist.-noborder {
  background: none;
}

.c-dllist.-noborder dt {
  padding: 0 0 1em 0;
}

.c-dllist.-noborder dt:nth-last-of-type() {
  padding-bottom: 0;
}

.c-dllist.-noborder dd {
  padding: 0 0 1em 0;
}

.c-dllist.-noborder dd:nth-last-of-type() {
  padding-bottom: 0;
}

.c-dllist > div {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  background-image: linear-gradient(to right, #403128, #403128 1px, transparent 2px, transparent 0px);
  background-size: 6px 2px;
  background-position: left bottom;
  background-repeat: repeat-x;
  width: 100%;
}

.c-dllist dt {
  width: 7rem;
  display: block;
  padding: 1rem 1rem 1rem 0;
  font-weight: bold;
}

.c-dllist dd {
  width: calc(100% - 7rem);
  display: block;
  padding: 1rem 1rem 1rem 0;
}

@media screen and (min-width: 1024px) {
  .c-dllist dt {
    width: 12rem;
  }
  .c-dllist dd {
    width: calc(100% - 12rem);
  }
}

/*
button
-----------------------------------------------------*/
body .c-btton__seikenhouse {
  width: 50%;
  height: auto;
  display: block;
  margin-left: auto;
  margin-right: auto;
}

@media screen and (min-width: 768px) {
  body .c-btton__seikenhouse {
    width: 40%;
  }
}

@media screen and (min-width: 1024px) {
  body .c-btton__seikenhouse {
    width: 20%;
    max-width: 260px;
  }
}

body .c-button {
  width: 100%;
  text-align: center;
  display: block;
  position: relative;
  font-weight: 700;
  padding: 1.5em;
  background: #403128;
  color: #fff;
  line-height: 1em;
  border-radius: 2em;
  margin-left: auto;
  margin-right: auto;
}

@media screen and (min-width: 768px) {
  body .c-button {
    max-width: 52.08333vw;
  }
}

@media screen and (min-width: 768px) {
  body .c-button {
    max-width: 39.0625vw;
  }
}

body .c-button.c-button__icon {
  padding-left: 4em;
  padding-right: 4em;
}

body .c-button.-white {
  background: #fff;
  color: #403128;
}

body .c-button.-green {
  background: #166678;
  color: #fff;
}

body .c-button.-cv {
  border-radius: 3em;
  height: 6em;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  color: #166678;
}

body .c-button.-cv .-inner {
  margin: auto;
}

body .c-button.-cv .u-propaty__telnum {
  font-size: 1.7em;
  line-height: 1em;
  display: block;
  margin-bottom: 0.2em;
  letter-spacing: 0.05em;
}

body .c-button.-contact {
  padding-left: 3em;
  padding-right: 3em;
}

body .c-button.-contact::before {
  content: "";
  width: 1em;
  height: 1em;
  display: block;
  background: url(/assets/img/common/icon_contact_white.svg) no-repeat;
  background-size: cover;
  position: absolute;
  top: 50%;
  left: 1.5em;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
}

body .c-button.-contact.-white::before {
  content: "";
  width: 1em;
  height: 1em;
  display: block;
  background: url(/assets/img/common/icon_contact_green.svg) no-repeat;
  background-size: cover;
  position: absolute;
  top: 50%;
  left: 1.5em;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
}

body .c-button.-tel {
  padding-left: 3em;
  padding-right: 3em;
}

body .c-button.-tel::before {
  content: "";
  width: 1em;
  height: 1em;
  display: block;
  background: url(/assets/img/common/icon_tel.svg) no-repeat;
  background-size: cover;
  position: absolute;
  top: 50%;
  left: 1.5em;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
}

body .c-button.-tel.-white::before {
  content: "";
  width: 1em;
  height: 1em;
  display: block;
  background: url(/assets/img/common/icon_tel_green.svg) no-repeat;
  background-size: cover;
  position: absolute;
  top: 50%;
  left: 1.5em;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
}

body .c-button.-access::before {
  content: "";
  width: 1em;
  height: 1em;
  display: block;
  background: url(/assets/img/common/icon_access_white.svg) no-repeat;
  background-size: cover;
  position: absolute;
  top: 50%;
  left: 1.5em;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
}

body .c-button.-access.-white::before {
  content: "";
  width: 1em;
  height: 1em;
  display: block;
  background: url(/assets/img/common/icon_access_green.svg) no-repeat;
  background-size: cover;
  position: absolute;
  top: 50%;
  left: 1.5em;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
}

body .c-button__arr {
  line-height: 1.5em;
  position: relative;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: reverse;
      -ms-flex-direction: row-reverse;
          flex-direction: row-reverse;
}

body .c-button__arr .-arr {
  width: 1.5em;
  height: 1.5em;
  display: block;
  background-color: #403128;
  border-radius: 50%;
  position: relative;
  left: 0;
  top: 0;
  margin-left: 1em;
}

body .c-button__arr .-arr svg {
  fill: #fff;
}

.store_link {
  position: relative;
  display: block;
  padding-left: 2em;
  margin-top: 2em;
}

.store_link::before {
  content: "";
  width: 1.5em;
  height: 1.5em;
  border-radius: 50%;
  display: block;
  position: absolute;
  background: url("../img/common/common_arr.svg") #403128 no-repeat;
  background-size: cover;
  line-height: 0;
  left: 0;
  top: 0;
}

.c-pager {
  display: block;
  position: relative;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
}

.c-pager .c-pager__button {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
}

.c-pager .c-pager__button .-inner {
  display: inline-block;
  margin: auto 0;
  padding: 0 1em;
  font-weight: bold;
}

.c-pager .c-pager__button .-icon {
  width: 10vw;
  height: 10vw;
  border-radius: 50%;
  display: block;
  background: #403128;
}

.c-pager .c-pager__button .-icon svg {
  fill: #fff;
}

@media screen and (min-width: 768px) {
  .c-pager .c-pager__button .-icon {
    width: 5.20833vw;
    height: 5.20833vw;
  }
}

@media screen and (min-width: 1280px) {
  .c-pager .c-pager__button .-icon {
    width: 3.125vw;
    height: 3.125vw;
  }
}

@media screen and (min-width: 1920px) {
  .c-pager .c-pager__button .-icon {
    width: 3.125vw;
    height: 3.125vw;
  }
}

.c-pager .c-pager__button.-prev .-icon {
  -webkit-transform: scale(-1, 1);
          transform: scale(-1, 1);
}

.c-pager .c-pager__button.-next {
  -webkit-box-orient: horizontal;
  -webkit-box-direction: reverse;
      -ms-flex-direction: row-reverse;
          flex-direction: row-reverse;
}

/*
list
-----------------------------------------------------*/
.c-illust {
  width: 100%;
  height: 100%;
  position: absolute;
  left: 0;
  top: 0;
  pointer-events: none;
  /**/
  /**/
  /**/
}

.c-illust .-illust {
  height: auto;
  position: absolute;
  opacity: 0;
  -webkit-transform: translateY(20%);
          transform: translateY(20%);
}

@media screen and (orientation: landscape) {
  .c-illust .-illust {
    width: 7.5vw;
  }
}

@media screen and (orientation: portrait) {
  .c-illust .-illust {
    width: 15vw;
  }
}

@media screen and (orientation: portrait) and (min-width: 768px) {
  .c-illust .-illust {
    width: 10vw;
  }
}

@media screen and (orientation: landscape) {
  .c-illust.-homemain .-illust.-no1 {
    bottom: calc(43% + 7.5vw);
    right: 7vw;
  }
}

@media screen and (orientation: portrait) {
  .c-illust.-homemain .-illust.-no1 {
    bottom: calc(65% + 15vw);
    right: 10vw;
  }
}

@media screen and (orientation: landscape) {
  .c-illust.-homemain .-illust.-no2 {
    bottom: calc(22% + 7.5vw);
    left: 12vw;
  }
}

@media screen and (orientation: portrait) {
  .c-illust.-homemain .-illust.-no2 {
    bottom: calc(57% + 15vw);
    left: 30vw;
  }
}

@media screen and (orientation: landscape) {
  .c-illust.-homemain .-illust.-no3 {
    top: calc(66% + 7.5vw);
    right: 32vw;
  }
}

@media screen and (orientation: portrait) {
  .c-illust.-homemain .-illust.-no3 {
    top: calc(58% + 15vw);
    right: 37vw;
  }
}

@media screen and (orientation: landscape) {
  .c-illust.-homelead .-illust.-no1 {
    top: calc(42% - 7.5vw);
    right: 4vw;
  }
}

@media screen and (orientation: portrait) {
  .c-illust.-homelead .-illust.-no1 {
    top: calc(-3% - 10vw);
    right: 7vw;
  }
}

@media screen and (orientation: landscape) {
  .c-illust.-homelead .-illust.-no2 {
    top: calc(63% - 7.5vw);
    left: 2vw;
  }
}

@media screen and (orientation: portrait) {
  .c-illust.-homelead .-illust.-no2 {
    top: 13%;
    left: 5vw;
  }
}

@media screen and (orientation: landscape) {
  .c-illust.-homelead .-illust.-no3 {
    bottom: calc(0% + 7.5vw);
    right: -3vw;
  }
}

@media screen and (orientation: portrait) {
  .c-illust.-homelead .-illust.-no3 {
    bottom: 0;
    right: 10vw;
  }
}

@media screen and (orientation: landscape) {
  .c-illust.-homelead .-illust.-no4 {
    bottom: calc(-15% + 7.5vw);
    left: 20vw;
  }
}

@media screen and (orientation: portrait) {
  .c-illust.-homelead .-illust.-no4 {
    bottom: -11vw;
    left: 13vw;
  }
}

@media screen and (orientation: landscape) {
  .c-illust.-homeabout .-illust.-no1 {
    top: calc(10% - 7.5vw);
    right: -8vw;
    z-index: 1;
  }
}

@media screen and (orientation: portrait) {
  .c-illust.-homeabout .-illust.-no1 {
    top: calc(10% - 15vw);
    left: 2vw;
    z-index: 1;
  }
}

@media screen and (orientation: landscape) {
  .c-illust.-homeabout .-illust.-no2 {
    top: calc(8% - 7.5vw);
    right: -6vw;
    z-index: 0;
  }
}

@media screen and (orientation: portrait) {
  .c-illust.-homeabout .-illust.-no2 {
    top: calc(8% - 15vw);
    left: -1vw;
    z-index: 0;
  }
}

@media screen and (orientation: landscape) {
  .c-illust.-homezakka .-illust.-no1 {
    top: calc(10% - 7.5vw);
    left: -4vw;
    z-index: 1;
  }
}

@media screen and (orientation: portrait) {
  .c-illust.-homezakka .-illust.-no1 {
    bottom: 0;
    right: -4vw;
    z-index: 1;
  }
}

.c-illust.act .-illust {
  opacity: 1;
  -webkit-transform: translateY(0%);
          transform: translateY(0%);
}

.c-illust.act .-illust.-no1 {
  -webkit-transition: opacity 0.5s ease-in-out 0.2s, -webkit-transform 0.5s ease-in-out 0.2s;
  transition: opacity 0.5s ease-in-out 0.2s, -webkit-transform 0.5s ease-in-out 0.2s;
  transition: transform 0.5s ease-in-out 0.2s, opacity 0.5s ease-in-out 0.2s;
  transition: transform 0.5s ease-in-out 0.2s, opacity 0.5s ease-in-out 0.2s, -webkit-transform 0.5s ease-in-out 0.2s;
}

.c-illust.act .-illust.-no2 {
  -webkit-transition: opacity 0.5s ease-in-out 0.4s, -webkit-transform 0.5s ease-in-out 0.4s;
  transition: opacity 0.5s ease-in-out 0.4s, -webkit-transform 0.5s ease-in-out 0.4s;
  transition: transform 0.5s ease-in-out 0.4s, opacity 0.5s ease-in-out 0.4s;
  transition: transform 0.5s ease-in-out 0.4s, opacity 0.5s ease-in-out 0.4s, -webkit-transform 0.5s ease-in-out 0.4s;
}

.c-illust.act .-illust.-no3 {
  -webkit-transition: opacity 0.5s ease-in-out 0.6s, -webkit-transform 0.5s ease-in-out 0.6s;
  transition: opacity 0.5s ease-in-out 0.6s, -webkit-transform 0.5s ease-in-out 0.6s;
  transition: transform 0.5s ease-in-out 0.6s, opacity 0.5s ease-in-out 0.6s;
  transition: transform 0.5s ease-in-out 0.6s, opacity 0.5s ease-in-out 0.6s, -webkit-transform 0.5s ease-in-out 0.6s;
}

.c-illust.act .-illust.-no4 {
  -webkit-transition: opacity 0.5s ease-in-out 0.8s, -webkit-transform 0.5s ease-in-out 0.8s;
  transition: opacity 0.5s ease-in-out 0.8s, -webkit-transform 0.5s ease-in-out 0.8s;
  transition: transform 0.5s ease-in-out 0.8s, opacity 0.5s ease-in-out 0.8s;
  transition: transform 0.5s ease-in-out 0.8s, opacity 0.5s ease-in-out 0.8s, -webkit-transform 0.5s ease-in-out 0.8s;
}

.c-illust.act .-illust.-no5 {
  -webkit-transition: opacity 0.5s ease-in-out 1s, -webkit-transform 0.5s ease-in-out 1s;
  transition: opacity 0.5s ease-in-out 1s, -webkit-transform 0.5s ease-in-out 1s;
  transition: transform 0.5s ease-in-out 1s, opacity 0.5s ease-in-out 1s;
  transition: transform 0.5s ease-in-out 1s, opacity 0.5s ease-in-out 1s, -webkit-transform 0.5s ease-in-out 1s;
}

.c-illust.act .-illust.-no6 {
  -webkit-transition: opacity 0.5s ease-in-out 1.2s, -webkit-transform 0.5s ease-in-out 1.2s;
  transition: opacity 0.5s ease-in-out 1.2s, -webkit-transform 0.5s ease-in-out 1.2s;
  transition: transform 0.5s ease-in-out 1.2s, opacity 0.5s ease-in-out 1.2s;
  transition: transform 0.5s ease-in-out 1.2s, opacity 0.5s ease-in-out 1.2s, -webkit-transform 0.5s ease-in-out 1.2s;
}

.c-illust.act .-illust.-no7 {
  -webkit-transition: opacity 0.5s ease-in-out 1.4s, -webkit-transform 0.5s ease-in-out 1.4s;
  transition: opacity 0.5s ease-in-out 1.4s, -webkit-transform 0.5s ease-in-out 1.4s;
  transition: transform 0.5s ease-in-out 1.4s, opacity 0.5s ease-in-out 1.4s;
  transition: transform 0.5s ease-in-out 1.4s, opacity 0.5s ease-in-out 1.4s, -webkit-transform 0.5s ease-in-out 1.4s;
}

.c-illust.act .-illust.-no8 {
  -webkit-transition: opacity 0.5s ease-in-out 1.6s, -webkit-transform 0.5s ease-in-out 1.6s;
  transition: opacity 0.5s ease-in-out 1.6s, -webkit-transform 0.5s ease-in-out 1.6s;
  transition: transform 0.5s ease-in-out 1.6s, opacity 0.5s ease-in-out 1.6s;
  transition: transform 0.5s ease-in-out 1.6s, opacity 0.5s ease-in-out 1.6s, -webkit-transform 0.5s ease-in-out 1.6s;
}

.c-illust.act .-illust.-no9 {
  -webkit-transition: opacity 0.5s ease-in-out 1.8s, -webkit-transform 0.5s ease-in-out 1.8s;
  transition: opacity 0.5s ease-in-out 1.8s, -webkit-transform 0.5s ease-in-out 1.8s;
  transition: transform 0.5s ease-in-out 1.8s, opacity 0.5s ease-in-out 1.8s;
  transition: transform 0.5s ease-in-out 1.8s, opacity 0.5s ease-in-out 1.8s, -webkit-transform 0.5s ease-in-out 1.8s;
}

.c-illust.act .-illust.-no10 {
  -webkit-transition: opacity 0.5s ease-in-out 2s, -webkit-transform 0.5s ease-in-out 2s;
  transition: opacity 0.5s ease-in-out 2s, -webkit-transform 0.5s ease-in-out 2s;
  transition: transform 0.5s ease-in-out 2s, opacity 0.5s ease-in-out 2s;
  transition: transform 0.5s ease-in-out 2s, opacity 0.5s ease-in-out 2s, -webkit-transform 0.5s ease-in-out 2s;
}

/*
@import 'object/component/title';
@import 'object/component/links';
@import 'object/component/button';
@import 'object/component/form';

@import 'object/component/caption';
@import 'object/component/img';
*/
/*
  3.2 - Project
-----------------------------------------------------*/
/*
home
-----------------------------------------------------*/
.home .l-wrapper {
  padding-top: 0;
  overflow: hidden;
}

.home .home-mainarea__tit {
  position: absolute;
  z-index: 10;
  width: 90%;
  display: block;
  margin: auto;
  text-align: center;
  left: 50%;
  top: 50vh;
  -webkit-transform: translate(-50%, -50%);
          transform: translate(-50%, -50%);
}

.home .home-mainarea__tit svg:last-child {
  margin-top: 0.5em;
  width: 80%;
}

@media screen and (min-width: 768px) {
  .home .home-mainarea__tit {
    width: 80%;
  }
  .home .home-mainarea__tit svg:last-child {
    margin-top: 1em;
  }
}

@media (orientation: landscape) {
  .home .home-mainarea__tit {
    width: 40%;
  }
}

@media screen and (orientation: landscape) and (min-width: 768px) {
  .home .home-mainarea__tit {
    width: 60%;
  }
}

@media screen and (orientation: landscape) and (min-width: 1024px) {
  .home .home-mainarea__tit {
    width: 40%;
  }
}

.home-mainarea {
  width: 100%;
  height: auto;
  display: block;
}

.home-mainarea .home-main {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  width: 100%;
  min-height: 100vh;
}

.home-mainarea__lead {
  min-height: 100vh;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
}

.home-mainarea__lead .-text {
  margin: auto;
  width: 100%;
  position: relative;
  z-index: 1;
}

.home-mainarea__lead .-text .c-button.c-button__icon {
  max-width: inherit;
  width: 20em;
}

.home-mainarea__lead .-text .-title {
  margin: 0 auto 3rem;
  text-align: center;
}

@media screen and (min-width: 768px) {
  .home-mainarea__lead .-text .-title {
    width: 60%;
  }
}

@media screen and (min-width: 1024px) {
  .home-mainarea__lead .-text .-title {
    margin: 0 auto 4rem;
    width: 40%;
  }
}

.home-mainarea__lead .-lead {
  margin-bottom: 2rem;
}

.home-mainarea__lead .-lead p {
  margin-bottom: 0;
  line-height: 2.5em;
  text-align: center;
}

@media screen and (min-width: 1024px) {
  .home-mainarea__lead .-lead {
    margin-bottom: 4rem;
  }
}

.p-home__works .u-font.-h.-l {
  margin-bottom: 1em;
}

@media screen and (min-width: 768px) {
  .p-home__works .u-font.-h.-l {
    margin-bottom: 1em;
  }
}

.p-home__works.-tenpo {
  position: relative;
}

.p-home__works .-button {
  padding-top: 3rem;
  text-align: center;
  font-weight: 700;
}

@media screen and (min-width: 768px) {
  .p-home__works .-button {
    padding-top: 0;
    position: absolute;
    right: 0;
    top: 0;
  }
}

.p-home__works .-button .c-button__arr {
  margin: 0 auto;
}

@media (orientation: landscape) {
  .p-home__contents {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
  }
}

.p-home__contents .-img {
  width: 100%;
  height: 100vw;
  display: block;
  background-color: #fff;
  overflow: hidden;
}

.p-home__contents .-img img {
  -o-object-fit: cover;
     object-fit: cover;
  width: 100%;
  height: 100%;
}

@media (orientation: landscape) {
  .p-home__contents .-img {
    width: 62.5vw;
    height: auto;
    min-height: 80vh;
  }
}

@media (orientation: landscape) {
  .p-home__contents .-text {
    width: 20vw;
    margin-bottom: 3vw;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
  }
}

.p-home__contents .-text > .-inner {
  width: 100%;
  max-width: 30em;
  display: block;
  margin: 0 auto;
}

@media (orientation: landscape) {
  .p-home__contents .-text > .-inner {
    margin: auto;
  }
}

.p-home__contents .-text > .-inner .u-font {
  margin: 0 auto 2em;
}

.p-home__contents .-text > .-inner .-button {
  padding-top: 3em;
}

.p-home__contents .-text > .-inner .-button .c-button__arr {
  margin: 0 auto;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
}

.p-home__contents.-about {
  position: relative;
}

@media (orientation: landscape) {
  .p-home__contents.-about {
    -webkit-box-orient: horizontal;
    -webkit-box-direction: reverse;
        -ms-flex-direction: row-reverse;
            flex-direction: row-reverse;
  }
  .p-home__contents.-about .-img {
    border-radius: 2.5vw 0 0 2.5vw;
  }
}

.p-home__contents.-about .p-works__character {
  position: absolute;
  right: -2.5vw;
  bottom: -27vw;
}

.p-home__contents.-about .p-works__character .u-font {
  -webkit-transform: rotate(-20deg) translateX(-75%) translateY(-10%);
          transform: rotate(-20deg) translateX(-75%) translateY(-10%);
  line-height: 1.5em;
}

.p-home__contents.-about .p-works__character img {
  -webkit-transform: scale(-1, 1);
          transform: scale(-1, 1);
}

@media (orientation: landscape) {
  .p-home__contents.-about .p-works__character {
    position: absolute;
    right: inherit;
    left: 34.5vw;
    bottom: -1vw;
    -webkit-transform: translateX(0%);
            transform: translateX(0%);
  }
}

.p-home__contents.-zakka {
  position: relative;
}

.p-home__contents.-zakka .-coffeeicon {
  width: 20vw;
  height: auto;
  position: absolute;
  right: 2.5vw;
  bottom: 2.5vw;
}

@media (orientation: landscape) {
  .p-home__contents.-zakka .-coffeeicon {
    width: 12.5vw;
    height: auto;
  }
}

@media screen and (orientation: landscape) and (min-width: 1366px) {
  .p-home__contents.-zakka .-coffeeicon {
    width: 10vw;
    height: auto;
  }
}

@media screen and (orientation: landscape) and (min-width: 1920px) {
  .p-home__contents.-zakka .-coffeeicon {
    width: 8vw;
    height: auto;
  }
}

@media (orientation: landscape) {
  .p-home__contents.-zakka .-img {
    border-radius: 0 2.5vw 2.5vw 0;
  }
}

body.home.-load .home-mainarea__tit {
  opacity: 0;
  top: 60vh;
}

body.home .home-mainarea__tit {
  -webkit-transition: opacity 2s ease-in-out, top 2s ease-in-out;
  transition: opacity 2s ease-in-out, top 2s ease-in-out;
  opacity: 1;
  top: 50vh;
}

.home-mainarea > div {
  position: relative;
}

.home-mainarea > div .home-main__img {
  z-index: 0;
  width: 100%;
  height: 100%;
  display: block;
  position: absolute;
  left: 0;
  top: 0;
}

.home-mainarea .home-main .home-main__img .-img {
  position: absolute;
  border-radius: 2.5vw;
  overflow: hidden;
}

.home-mainarea .home-main .home-main__img .-img:nth-child(1) {
  left: -2.5vw;
  bottom: calc(50% + 11vw + 22vw);
  width: 35%;
}

@media screen and (min-width: 768px) {
  .home-mainarea .home-main .home-main__img .-img:nth-child(1) {
    left: -2.5vw;
    bottom: calc(50% + 11vw + 15vw);
  }
}

@media (orientation: landscape) {
  .home-mainarea .home-main .home-main__img .-img:nth-child(1) {
    left: 3vw;
    width: 22.5%;
    bottom: calc(50% + 9vw - 3vw);
  }
}

@media screen and (orientation: landscape) and (min-width: 1024px) {
  .home-mainarea .home-main .home-main__img .-img:nth-child(1) {
    width: 20%;
    left: 5vw;
    bottom: calc(50% + 9vw - 9vw);
  }
}

.home-mainarea .home-main .home-main__img .-img:nth-child(2) {
  right: 5vw;
  bottom: calc(50% + 11vw + 36vw);
  width: 30%;
}

@media screen and (min-width: 768px) {
  .home-mainarea .home-main .home-main__img .-img:nth-child(2) {
    width: 22.5%;
    bottom: calc(50% + 11vw + 35vw);
  }
}

@media (orientation: landscape) {
  .home-mainarea .home-main .home-main__img .-img:nth-child(2) {
    width: 20%;
    bottom: calc(50% + 9vw + 7.5vw);
  }
}

@media screen and (orientation: landscape) and (min-width: 1024px) {
  .home-mainarea .home-main .home-main__img .-img:nth-child(2) {
    bottom: calc(50% + 9vw + 3vw);
  }
}

.home-mainarea .home-main .home-main__img .-img:nth-child(3) {
  right: -2.5vw;
  top: calc(50% + 11vw + 28vw);
  width: 35%;
}

@media screen and (min-width: 768px) {
  .home-mainarea .home-main .home-main__img .-img:nth-child(3) {
    top: calc(50% + 11vw + 15vw);
  }
}

@media (orientation: landscape) {
  .home-mainarea .home-main .home-main__img .-img:nth-child(3) {
    top: calc(50% + 9vw + 1vw);
    width: 30%;
  }
}

@media screen and (orientation: landscape) and (min-width: 1024px) {
  .home-mainarea .home-main .home-main__img .-img:nth-child(3) {
    width: 27.5%;
    top: calc(50% + 9vw - 5vw);
  }
}

.home-mainarea .home-main .home-main__img .-img:nth-child(4) {
  left: 10vw;
  top: calc(50% + 11vw + 40vw);
  width: 45%;
}

@media screen and (min-width: 768px) {
  .home-mainarea .home-main .home-main__img .-img:nth-child(4) {
    left: 7.5vw;
    top: calc(50% + 11vw + 30vw);
  }
}

@media (orientation: landscape) {
  .home-mainarea .home-main .home-main__img .-img:nth-child(4) {
    top: calc(50% + 9vw + 10vw);
    width: 40%;
  }
}

@media screen and (orientation: landscape) and (min-width: 1024px) {
  .home-mainarea .home-main .home-main__img .-img:nth-child(4) {
    width: 42.5%;
    top: calc(50% + 9vw + 7.5vw);
  }
}

.home-mainarea .home-mainarea__lead {
  padding: 50vw 0 65vw;
}

@media screen and (min-width: 768px) {
  .home-mainarea .home-mainarea__lead {
    padding: 30vw 0 50vw;
  }
}

@media (orientation: landscape) {
  .home-mainarea .home-mainarea__lead {
    padding: 30vw 0 20vw;
    margin-bottom: 5vw;
  }
}

.home-mainarea .home-mainarea__lead .home-main__img .-img {
  position: absolute;
  border-radius: 2.5vw;
  overflow: hidden;
}

.home-mainarea .home-mainarea__lead .home-main__img .-img:nth-child(1) {
  width: 40vw;
  top: 0vw;
  right: 0vw;
}

@media screen and (min-width: 768px) {
  .home-mainarea .home-mainarea__lead .home-main__img .-img:nth-child(1) {
    width: 35vw;
    top: 0vw;
    right: -5vw;
  }
}

@media (orientation: landscape) {
  .home-mainarea .home-mainarea__lead .home-main__img .-img:nth-child(1) {
    width: 20vw;
    top: 20vw;
    right: 0vw;
  }
}

.home-mainarea .home-mainarea__lead .home-main__img .-img:nth-child(2) {
  width: 35vw;
  top: 5vw;
  left: -12.5vw;
}

@media screen and (min-width: 768px) {
  .home-mainarea .home-mainarea__lead .home-main__img .-img:nth-child(2) {
    width: 30vw;
    top: 10vw;
    left: -12.5vw;
  }
}

@media (orientation: landscape) {
  .home-mainarea .home-mainarea__lead .home-main__img .-img:nth-child(2) {
    width: 22vw;
    top: 40vw;
    left: -5vw;
  }
}

.home-mainarea .home-mainarea__lead .home-main__img .-img:nth-child(3) {
  width: 40%;
  bottom: 10vw;
  right: 0;
}

@media screen and (min-width: 768px) {
  .home-mainarea .home-mainarea__lead .home-main__img .-img:nth-child(3) {
    width: 35%;
    bottom: 0vw;
    right: 5vw;
  }
}

@media (orientation: landscape) {
  .home-mainarea .home-mainarea__lead .home-main__img .-img:nth-child(3) {
    width: 25%;
    bottom: 23vw;
    right: 0vw;
  }
}

.home-mainarea .home-mainarea__lead .home-main__img .-img:nth-child(4) {
  width: 50%;
  bottom: 25vw;
  left: -5vw;
}

@media screen and (min-width: 768px) {
  .home-mainarea .home-mainarea__lead .home-main__img .-img:nth-child(4) {
    width: 40%;
    bottom: 17vw;
    left: 5vw;
  }
}

@media (orientation: landscape) {
  .home-mainarea .home-mainarea__lead .home-main__img .-img:nth-child(4) {
    width: 25%;
    bottom: 10vw;
    left: 0vw;
  }
}

.home-mainarea .home-mainarea__lead .home-main__img .-img:nth-child(5) {
  width: 40%;
  bottom: 0vw;
  left: 8vw;
}

@media screen and (min-width: 768px) {
  .home-mainarea .home-mainarea__lead .home-main__img .-img:nth-child(5) {
    width: 40%;
    bottom: 17vw;
    left: 5vw;
  }
}

@media (orientation: landscape) {
  .home-mainarea .home-mainarea__lead .home-main__img .-img:nth-child(5) {
    width: 29%;
    bottom: 0vw;
    left: 40vw;
  }
}

/*
about
-----------------------------------------------------*/
.p-about__profile .-img {
  aspect-ratio: 4/5;
  display: block;
  background: #ccc;
  margin-bottom: 1.5rem;
}

.p-about__profile .-img img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}

@media screen and (min-width: 1280px) {
  .p-about__profile .-img {
    aspect-ratio: 1/1;
    margin-bottom: 2rem;
  }
}

.p-about__profile .-text {
  margin-bottom: 0;
}

.p-about__profile .-profiletext .u-font .-mini {
  display: block;
  line-height: 1em;
  letter-spacing: 0.1em;
}

.c-illust.-companyMain .-illust.-no1 {
  z-index: 1;
}

@media screen and (orientation: landscape) {
  .c-illust.-companyMain .-illust.-no1 {
    top: 15%;
    left: 25%;
  }
}

@media screen and (orientation: portrait) {
  .c-illust.-companyMain .-illust.-no1 {
    top: -2vw;
    right: 0vw;
  }
}

.c-illust.-companyMain .-illust.-no2 {
  z-index: 0;
}

@media screen and (orientation: landscape) {
  .c-illust.-companyMain .-illust.-no2 {
    top: 13%;
    left: 23.5%;
  }
}

@media screen and (orientation: portrait) {
  .c-illust.-companyMain .-illust.-no2 {
    top: -3vw;
    right: 3vw;
  }
}

@media screen and (orientation: landscape) {
  .c-illust.-companyMain .-illust.-no3 {
    bottom: 0%;
    left: 40%;
  }
}

@media screen and (orientation: portrait) {
  .c-illust.-companyMain .-illust.-no3 {
    bottom: 30vw;
    left: 10vw;
  }
}

.c-illust.-companyAccess {
  position: relative;
  width: 100%;
  height: auto;
  display: block;
}

.c-illust.-companyAccess .-illust.-no1 {
  position: absolute;
}

@media screen and (orientation: landscape) {
  .c-illust.-companyAccess .-illust.-no1 {
    right: 5%;
    bottom: 0;
    left: initial;
    top: initial;
    -webkit-transform: translateY(-30%);
            transform: translateY(-30%);
  }
}

@media screen and (orientation: portrait) {
  .c-illust.-companyAccess .-illust.-no1 {
    right: 0%;
  }
}

/*
works
-----------------------------------------------------*/
.works .allwrap {
  overflow: hidden;
}

.works .l-main {
  overflow: visible;
}

.p-works__thumbarea {
  display: block;
}

.p-works__thumb .-img {
  aspect-ratio: 4/5;
  display: block;
  background: #fff;
  margin-bottom: 1rem;
  -o-object-fit: cover;
     object-fit: cover;
  overflow: hidden;
}

.p-works__thumb .-img img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}

.p-works__thumb .-title {
  line-height: 1.66em;
  margin-bottom: 0.5rem;
}

.p-works__thumb .-criant {
  margin-bottom: 0.5rem;
}

.p-works__cat .-cat {
  font-size: 0.8em;
  color: #fff;
  background-color: #403128;
  display: inline-block;
  margin-right: 0.5em;
  padding: 0em 1em;
  border-radius: 1.5em;
}

.p-works__cat .-cat:last-child {
  margin-right: 0;
}

.p-works__detail .p-works__title .l-mainarea__title {
  margin-bottom: 0.5rem;
  padding-top: 0.5em;
  line-height: 1.5em;
}

.p-works__detail .p-works__title .-criant {
  margin-bottom: 1.5rem;
}

.p-works__detail .wp-block-lazyblock-youtube {
  aspect-ratio: 16/9;
  display: block;
  margin-bottom: 2em;
}

.p-works__detail .wp-block-lazyblock-youtube iframe {
  width: 100%;
  height: 100%;
}

@media screen and (min-width: 1024px) {
  .p-works__detail .l-mainarea {
    -webkit-box-orient: horizontal;
    -webkit-box-direction: reverse;
        -ms-flex-direction: row-reverse;
            flex-direction: row-reverse;
  }
  .p-works__detail .p-works__title {
    padding-top: 2rem;
    width: 30vw;
  }
  .p-works__detail .p-works__title .l-mainarea__title {
    margin-bottom: 1rem;
    line-height: 1.5em;
  }
  .p-works__detail .p-works__title .-criant {
    margin-bottom: 3rem;
  }
}

.p-works__character {
  position: relative;
  width: 20vw;
  display: block;
  padding-bottom: 5vw;
  text-align: center;
  margin: 5vw auto 0;
  padding-bottom: 20vw;
  -webkit-transform: translateX(20%);
          transform: translateX(20%);
}

.p-works__character img {
  width: 100%;
  height: auto;
  position: absolute;
  left: 0;
  bottom: 0;
}

.p-works__character .u-font.-tate {
  display: inline-block;
  margin: 0 auto;
  padding-bottom: 0em;
  -webkit-transform: rotate(-24deg) translateX(-130%);
          transform: rotate(-24deg) translateX(-130%);
}

@media screen and (min-width: 768px) {
  .p-works__character {
    width: 5em;
    padding-bottom: 5em;
  }
}

@media screen and (min-width: 1024px) {
  .p-works__character {
    width: 5em;
    position: absolute;
    padding-bottom: 5em;
    margin-top: 0;
    -webkit-transform: translateX(-80%);
            transform: translateX(-80%);
    left: 50%;
    bottom: 0;
  }
  .p-works__character .u-font.-tate {
    -webkit-transform: rotate(-24deg) translateX(-100%);
            transform: rotate(-24deg) translateX(-100%);
  }
}

@media screen and (min-width: 1280px) {
  .p-works__character {
    -webkit-transform: translateX(-80%);
            transform: translateX(-80%);
  }
}

@media screen and (min-width: 1366px) {
  .p-works__character {
    -webkit-transform: translateX(-80%);
            transform: translateX(-80%);
  }
}

body .p-works__imgwrap.l-contents .p-works__img {
  position: relative;
  -o-object-fit: cover;
     object-fit: cover;
  margin-bottom: 5vw;
}

body .p-works__imgwrap.l-contents .p-works__img:last-child {
  margin-bottom: 0;
}

@media screen and (min-width: 768px) {
  body .p-works__imgwrap.l-contents .p-works__img {
    margin-bottom: 0vw;
  }
  body .p-works__imgwrap.l-contents .p-works__img:last-child {
    margin-bottom: 0;
  }
}

body .p-works__imgwrap.l-contents .p-works__img .u-propaty__r {
  overflow: hidden;
  aspect-ratio: 4/3;
}

body .p-works__imgwrap.l-contents .p-works__img img {
  position: relative;
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}

body .p-works__imgwrap.l-contents .p-works__img.-after::before {
  content: "After";
  display: inline-block;
  padding: 0 1.5em;
  color: #fff;
  background: #403128;
  border-radius: 1em;
  position: absolute;
  left: 1em;
  top: 1em;
  z-index: 2;
  font-size: 0.9em;
  font-weight: bold;
}

body .p-works__imgwrap.l-contents .p-works__img.-before::before {
  content: "Before";
  display: inline-block;
  padding: 0 1.5em;
  color: #403128;
  background: #fff;
  border-radius: 1em;
  position: absolute;
  left: 1em;
  top: 1em;
  z-index: 2;
  font-size: 0.9em;
  font-weight: bold;
}

body .p-works__imgwrap.l-contents .p-works__img.-before img {
  -webkit-filter: grayscale(100%);
          filter: grayscale(100%);
}

.p-works__deta .-title {
  margin-bottom: 0.5em;
}

.p-works__data__map {
  background: #faeae0;
}

.p-works__data__map .l-flex {
  -webkit-box-orient: horizontal;
  -webkit-box-direction: reverse;
      -ms-flex-direction: row-reverse;
          flex-direction: row-reverse;
}

.p-works__data__map .-textarea {
  width: 100%;
  padding: 5vw;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
}

@media screen and (min-width: 1280px) {
  .p-works__data__map .-textarea {
    width: 50%;
    min-height: 35vw;
  }
}

.p-works__data__map .-textarea .-text {
  margin: auto;
}

.p-works__data__map .-textarea .-text .c-dllist {
  background-image: none;
}

.p-works__data__map .-textarea .-text .c-dllist dt {
  padding: 0 0 0 0;
  width: 100%;
  line-height: 1.75em;
  font-weight: 700;
}

@media screen and (min-width: 768px) {
  .p-works__data__map .-textarea .-text .c-dllist dt {
    padding: 0 0 1em 0;
    width: 8rem;
  }
}

.p-works__data__map .-textarea .-text .c-dllist dd {
  padding: 0 0 1em 0;
  width: 100%;
  line-height: 1.75em;
}

@media screen and (min-width: 768px) {
  .p-works__data__map .-textarea .-text .c-dllist dd {
    width: calc(100% - 8rem);
  }
}

.p-works__data__map .-map {
  position: relative;
  width: 100%;
  min-height: 90vw;
}

@media screen and (min-width: 1280px) {
  .p-works__data__map .-map {
    width: 50%;
    min-height: 36vw;
  }
}

.p-works__data__map .-map iframe {
  width: 100%;
  height: 100%;
  display: block;
}

.p-works__criant .-title {
  text-align: center;
  margin-bottom: 1rem;
}

@media screen and (min-width: 768px) {
  .p-works__criant .-title {
    margin-bottom: 2rem;
  }
}

.p-works__criant .-title .u-font.-s {
  line-height: 1em;
  margin-bottom: 0.25em;
  color: #166678;
}

.p-works__criant .-img {
  margin-bottom: 2rem;
  width: calc(100% + 10vw);
  margin-left: -5vw;
  border-radius: 0;
  aspect-ratio: 4/3;
}

.p-works__criant .-img img {
  -o-object-fit: cover;
     object-fit: cover;
  width: 100%;
  height: 100%;
}

@media screen and (min-width: 768px) {
  .p-works__criant .-img {
    width: 100%;
    margin-left: 0;
    border-radius: 2em;
  }
}

@media screen and (min-width: 1280px) {
  .p-works__criant .p-works__story {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
  }
}

.p-works__criant .p-works__story dt {
  padding-top: 1em;
}

.p-works__criant .p-works__story dt:first-child {
  padding-top: 1em;
}

.p-works__criant .p-works__story dt .u-font.-m .-ss {
  display: block;
  color: #166678;
  line-height: 1em;
  margin-bottom: 0.5em;
}

@media screen and (min-width: 1280px) {
  .p-works__criant .p-works__story dt {
    width: 50%;
    padding-top: 1.5em;
    padding-bottom: 1.5em;
    padding-right: 2rem;
    background-image: linear-gradient(to right, #403128, #403128 1px, transparent 2px, transparent 0px);
    background-size: 6px 2px;
    background-position: left bottom;
    background-repeat: repeat-x;
  }
  .p-works__criant .p-works__story dt:last-of-type {
    background: none;
    padding-bottom: 0;
  }
}

.p-works__criant .p-works__story dd {
  background-image: linear-gradient(to right, #403128, #403128 1px, transparent 2px, transparent 0px);
  background-size: 6px 2px;
  background-position: left bottom;
  background-repeat: repeat-x;
  padding-bottom: 1em;
}

.p-works__criant .p-works__story dd:last-child {
  background: none;
  padding-bottom: 0;
}

@media screen and (min-width: 1280px) {
  .p-works__criant .p-works__story dd {
    width: 50%;
    padding-top: 1.5em;
    padding-bottom: 1.5em;
    padding-left: 0em;
  }
  .p-works__criant .p-works__story dd:last-child {
    background: none;
  }
}

/*
zakka
-----------------------------------------------------*/
.zakka .l-mainarea.-typeB .l-mainarea__text .c-dllist {
  margin-top: 2em;
}

.p-zakka__gallery .l-flex.-column3 {
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
}

.p-zakka__gallery .l-flex .l-flexcolumn,
.p-zakka__gallery .l-flex .l-flexcolumn2 {
  margin-bottom: 3vw;
  margin-right: 0;
}

@media screen and (min-width: 768px) {
  .p-zakka__gallery .l-flex .l-flexcolumn {
    width: calc(33.333% - 2vw);
  }
  .p-zakka__gallery .l-flex .l-flexcolumn img {
    width: 100%;
    height: 100%;
    -o-object-fit: cover;
       object-fit: cover;
  }
  .p-zakka__gallery .l-flex .l-flexcolumn2 {
    width: calc(66.666% - 1vw);
  }
  .p-zakka__gallery .l-flex .l-flexcolumn2 img {
    width: 100%;
    height: 100%;
    -o-object-fit: cover;
       object-fit: cover;
  }
}

.p-zakka__handmade .l-flex {
  -webkit-box-orient: horizontal;
  -webkit-box-direction: reverse;
      -ms-flex-direction: row-reverse;
          flex-direction: row-reverse;
}

.p-zakka__handmade .l-box.-mini {
  margin-top: 5vw;
}

@media screen and (min-width: 1024px) {
  .p-zakka__handmade .l-box.-mini {
    margin: -2.5vw auto 0;
  }
}

.p-zakka__handmade .l-box.-mini > .-inner > * {
  text-align: center;
}

.p-zakka__handmade .l-box.-mini > .-inner .c-button {
  display: block;
  width: 100%;
}

@media screen and (min-width: 768px) {
  .p-zakka__handmade .l-box.-mini > .-inner .c-button {
    width: inherit;
    display: inline-block;
    max-width: -webkit-fit-content;
    max-width: -moz-fit-content;
    max-width: fit-content;
  }
}

.zakka .l-flex.-column2 .l-flexcolumn {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
}

.zakka .l-flex.-column2 .l-flexcolumn .l-column__text {
  margin: auto;
}

@media screen and (min-width: 768px) {
  .zakka .l-flex.-column2 .l-flexcolumn .l-column__text .u-font.-h {
    padding-top: 0;
  }
}

.c-illust.-zakkaMain .-illust.-no1 {
  z-index: 1;
}

@media screen and (orientation: landscape) {
  .c-illust.-zakkaMain .-illust.-no1 {
    bottom: 0%;
    left: 36%;
  }
}

@media screen and (orientation: portrait) {
  .c-illust.-zakkaMain .-illust.-no1 {
    bottom: 0vw;
    right: 0vw;
  }
}

/*
renovation
-----------------------------------------------------*/
@media screen and (orientation: landscape) {
  .renovation .l-main {
    overflow: initial;
  }
}

@media screen and (orientation: portrait) {
  .renovation .l-main {
    padding-top: 15vw;
  }
}

@media screen and (min-width: 768px) {
  .renovation .l-wrapper {
    padding-top: 15vw;
  }
}

.renovation .l-mainarea .p-renovation__circle {
  width: 90%;
  margin: 0 auto;
  aspect-ratio: 1 / 1;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  background: url("../img/renovation/renovation_circle.png") no-repeat;
  background-size: cover;
}

.renovation .l-mainarea .p-renovation__circle > * {
  text-align: center;
}

.renovation .l-mainarea .p-renovation__circle .-text {
  width: 100%;
  display: block;
  padding-top: 2em;
}

.renovation .l-mainarea .p-renovation__circle .-text p {
  margin-bottom: 1em;
  line-height: 2.5em;
}

.renovation .l-mainarea .p-renovation__circle .-text p:last-child {
  margin-bottom: 0;
}

.renovation .l-mainarea .p-renovation__circle.-pc {
  aspect-ratio: none;
  width: 100%;
  display: block;
  background: none;
}

.renovation .l-mainarea .p-renovation__circle .p-renovation__circle__inner-sp {
  margin: auto;
  width: 50%;
}

.renovation .l-mainarea .p-renovation__circle .p-renovation__circle__inner-sp .l-mainarea__title {
  margin: 0 auto 1em;
}

.renovation .l-mainarea .p-renovation__circle .p-renovation__circle__inner-sp .-lead {
  width: 100%;
  height: auto;
}

.renovation .l-mainarea .p-renovation__circle .p-renovation__circle__inner-sp .-lead .-pc {
  display: none;
}

.renovation .l-mainarea .p-renovation__circle .p-renovation__circle__inner-sp .-lead .-sp {
  display: block;
}

@media screen and (min-width: 768px) {
  .renovation .l-mainarea .p-renovation__circle.-pc {
    background: url("../img/renovation/renovation_circle.png") no-repeat;
    background-size: cover;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
  }
  .renovation .l-mainarea .p-renovation__circle.-sp {
    aspect-ratio: unset;
    width: auto;
    background: none;
  }
  .renovation .l-mainarea .p-renovation__circle.-sp .-inner {
    width: 100%;
  }
  .renovation .l-mainarea .p-renovation__circle .p-renovation__circle__inner-pc {
    margin: auto;
    width: 80%;
  }
  .renovation .l-mainarea .p-renovation__circle .p-renovation__circle__inner-pc .-text {
    padding-top: 2rem;
  }
  .renovation .l-mainarea .p-renovation__circle .p-renovation__circle.-sp {
    aspect-ratio: unset;
    width: auto;
    background: none;
    display: block;
  }
  .renovation .l-mainarea .p-renovation__circle .p-renovation__circle.-sp .p-renovation__circle__inner-sp {
    width: 60%;
  }
  .renovation .l-mainarea .p-renovation__circle .p-renovation__circle.-sp .p-renovation__circle__inner-sp .-lead {
    width: 100%;
    height: auto;
  }
  .renovation .l-mainarea .p-renovation__circle .p-renovation__circle.-sp .p-renovation__circle__inner-sp .-lead img.-pc {
    display: block !important;
    width: 100%;
  }
  .renovation .l-mainarea .p-renovation__circle .p-renovation__circle.-sp .p-renovation__circle__inner-sp .-lead img.-sp {
    display: none !important;
    width: 100%;
  }
}

@media screen and (min-width: 1024px) {
  .renovation .l-mainarea .p-renovation__circle.-pc {
    width: 65%;
    max-width: 850px;
  }
  .renovation .l-mainarea .p-renovation__circle.-pc .-text {
    padding-top: 3vw;
  }
}

.renovation .l-flex.-column3.l-contents {
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
}

.renovation .l-flex.-column3.l-contents .l-flexcolumn {
  margin-right: 0;
}

.p-renovation__point.l-box.-mini {
  margin-bottom: 5vw;
}

@media screen and (min-width: 768px) {
  .p-renovation__point.l-box.-mini {
    width: 100%;
  }
}

@media screen and (min-width: 1024px) {
  .p-renovation__point.l-box.-mini {
    width: calc(33.333% - 1.5vw);
  }
}

@media screen and (min-width: 1280px) {
  .p-renovation__point.l-box.-mini {
    width: calc(33.333% - 1.5vw);
  }
}

.p-renovation__point.l-box.-mini .-inner {
  padding-top: 10vw;
  padding-bottom: 10vw;
  width: calc(100% - 20vw);
}

@media screen and (min-width: 1024px) {
  .p-renovation__point.l-box.-mini .-inner {
    padding-top: 3rem;
    padding-bottom: 3rem;
    width: calc(100% - 6rem);
  }
}

.p-renovation__point.l-box.-mini .-img {
  width: 40%;
  aspect-ratio: 1/1;
  display: block;
  border-radius: 50%;
  overflow: hidden;
  margin: 0 auto 2em;
}

.p-renovation__point.l-box.-mini .u-font.-h {
  text-align: center;
  margin-bottom: 1em;
}

.l-flex.-column2 .p-renovation__tunagu__zu .u-font.-h {
  text-align: center;
}

.l-flex.-column2 .p-renovation__tunagu__zu .l-flexcolumn {
  width: 100%;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  margin-bottom: 0rem;
}

.l-flex.-column2 .p-renovation__tunagu__zu .l-flexcolumn .l-column.-zu {
  width: 80%;
  margin: 0 auto 1rem;
}

@media screen and (min-width: 768px) {
  .l-flex.-column2 .p-renovation__tunagu__zu .l-flexcolumn .l-column.-zu {
    text-align: center;
  }
  .l-flex.-column2 .p-renovation__tunagu__zu .l-flexcolumn .l-column.-zu img {
    width: 90%;
    margin: 0 auto;
  }
}

@media screen and (min-width: 1280px) {
  .l-flex.-column2 .p-renovation__tunagu__zu .l-flexcolumn .l-column.-zu {
    width: calc(50% - 1rem);
    margin-bottom: 0;
  }
}

@media screen and (min-width: 768px) {
  .l-flex.-column2 .p-renovation__tunagu__zu p.u-center {
    line-height: 1.75em;
    padding-top: 1rem;
  }
}

.p-renovation__kokoti {
  position: relative;
}

.p-renovation__kokoti .p-renovation__kokoti_imgPC {
  display: none;
}

@media screen and (min-width: 768px) {
  .p-renovation__kokoti .p-renovation__kokoti_imgPC {
    width: 45vw;
    height: 100%;
    display: block;
    position: absolute;
    left: 0;
    top: 5vw;
    overflow: hidden;
  }
  .p-renovation__kokoti .p-renovation__kokoti_imgPC img {
    width: auto;
    height: 100%;
    -o-object-fit: cover;
       object-fit: cover;
    -o-object-position: right top;
       object-position: right top;
  }
  .p-renovation__kokoti .l-flexcolumn:first-child img {
    display: none;
  }
}

/*まとめ*/
.p-renovation__matome {
  overflow: visible;
}

.p-renovation__matome .-inner {
  display: block;
  position: relative;
}

.p-renovation__matome .-text .-title {
  margin-bottom: 2.5rem;
  text-align: center;
}

.p-renovation__matome .-text .-title img {
  width: 75%;
}

@media screen and (min-width: 768px) {
  .p-renovation__matome .-text .-title img {
    width: 50%;
  }
}

@media screen and (min-width: 1024px) {
  .p-renovation__matome .-text .-title img {
    width: 24em;
  }
}

.p-renovation__matome .-text .-lead p {
  margin-bottom: 0;
}

@media screen and (min-width: 1024px) {
  .p-renovation__matome .l-container {
    width: 40vw;
    margin: 0 auto;
    padding-left: 5vw;
    padding-right: 5vw;
    padding-top: 5em;
    padding-bottom: 5em;
  }
}

.p-renovation__matome .-lead p {
  text-align: center;
  margin-bottom: 1em;
  line-height: 2.5em;
}

.p-renovation__matome__img {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  margin-bottom: 3rem;
}

.p-renovation__matome__img .-img {
  width: 50%;
  height: 60vw;
  display: block;
  background: #ccc;
  overflow: hidden;
}

.p-renovation__matome__img .-img img {
  -o-object-fit: cover;
     object-fit: cover;
  width: 100%;
  height: 100%;
}

.p-renovation__matome__img .-img.-new {
  background: #666;
}

@media screen and (min-width: 1024px) {
  .p-renovation__matome__img {
    width: 100%;
    height: 100%;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
    position: absolute;
    left: 0;
    top: 0;
  }
  .p-renovation__matome__img .-img {
    width: calc((100% - 40vw) / 2);
    height: 100%;
  }
  .p-renovation__matome__img .-img.-old {
    border-radius: 0 2.5vw 2.5vw 0;
  }
  .p-renovation__matome__img .-img.-new {
    border-radius: 2.5vw 0 0 2.5vw;
  }
}

@media screen and (orientation: landscape) {
  .c-illust.-renovation {
    width: 100%;
    height: 100%;
  }
}

@media screen and (orientation: portrait) {
  .c-illust.-renovation {
    height: 100%;
  }
}

@media screen and (orientation: landscape) {
  .c-illust.-renovation .-illust.-no1 {
    top: -16%;
    left: 25%;
  }
}

@media screen and (orientation: portrait) {
  .c-illust.-renovation .-illust.-no1 {
    top: -15vw;
    right: 20vw;
  }
}

@media screen and (orientation: landscape) {
  .c-illust.-renovation .-illust.-no2 {
    top: -9%;
    right: -6%;
  }
}

@media screen and (orientation: portrait) {
  .c-illust.-renovation .-illust.-no2 {
    top: -2vw;
    right: -2vw;
  }
}

@media screen and (orientation: landscape) {
  .c-illust.-renovation .-illust.-no3 {
    top: 30%;
    right: -25%;
    z-index: 2;
  }
}

@media screen and (orientation: portrait) {
  .c-illust.-renovation .-illust.-no3 {
    top: 56vw;
    right: -4vw;
    z-index: 2;
  }
}

@media screen and (orientation: portrait) and (min-width: 768px) {
  .c-illust.-renovation .-illust.-no3 {
    top: 64vw;
  }
}

@media screen and (orientation: landscape) {
  .c-illust.-renovation .-illust.-no4 {
    top: 29%;
    right: -23%;
    z-index: 1;
  }
}

@media screen and (orientation: portrait) {
  .c-illust.-renovation .-illust.-no4 {
    top: 55vw;
    right: -1vw;
    z-index: 1;
  }
}

@media screen and (orientation: portrait) and (min-width: 768px) {
  .c-illust.-renovation .-illust.-no4 {
    top: 62vw;
  }
}

@media screen and (orientation: landscape) {
  .c-illust.-renovation .-illust.-no5 {
    top: 73%;
    right: -19%;
  }
}

@media screen and (orientation: portrait) {
  .c-illust.-renovation .-illust.-no5 {
    top: 110vw;
    right: -5vw;
    z-index: -1;
  }
}

@media screen and (orientation: portrait) and (min-width: 768px) {
  .c-illust.-renovation .-illust.-no5 {
    top: 80vw;
    right: 12vw;
  }
}

@media screen and (orientation: landscape) {
  .c-illust.-renovation .-illust.-no6 {
    top: 93%;
    right: 32%;
  }
}

@media screen and (orientation: portrait) {
  .c-illust.-renovation .-illust.-no6 {
    bottom: -15vw;
    right: 7.5vw;
    z-index: 0;
  }
}

@media screen and (orientation: portrait) and (min-width: 768px) {
  .c-illust.-renovation .-illust.-no6 {
    bottom: -9vw;
    right: 30.5vw;
  }
}

@media screen and (orientation: landscape) {
  .c-illust.-renovation .-illust.-no7 {
    top: 99%;
    left: 1%;
  }
}

@media screen and (orientation: portrait) {
  .c-illust.-renovation .-illust.-no7 {
    bottom: -10vw;
    left: 0vw;
    z-index: 0;
  }
}

@media screen and (orientation: portrait) and (min-width: 768px) {
  .c-illust.-renovation .-illust.-no7 {
    bottom: 0vw;
    left: 7vw;
  }
}

@media screen and (orientation: landscape) {
  .c-illust.-renovation .-illust.-no8 {
    top: 55%;
    left: -22%;
  }
}

@media screen and (orientation: portrait) {
  .c-illust.-renovation .-illust.-no8 {
    top: 105vw;
    left: -5vw;
    z-index: -1;
  }
}

@media screen and (orientation: portrait) and (min-width: 768px) {
  .c-illust.-renovation .-illust.-no8 {
    top: 61vw;
    left: -5vw;
  }
}

@media screen and (orientation: landscape) {
  .c-illust.-renovation .-illust.-no9 {
    top: 8%;
    left: -24%;
  }
}

@media screen and (orientation: portrait) {
  .c-illust.-renovation .-illust.-no9 {
    top: 59vw;
    left: 7vw;
  }
}

@media screen and (orientation: portrait) and (min-width: 768px) {
  .c-illust.-renovation .-illust.-no9 {
    top: -2vw;
    left: 3vw;
  }
}

@media screen and (orientation: landscape) {
  .c-illust.-renovation .-illust.-no10 {
    top: -2%;
    left: -10%;
    display: none;
  }
}

@media screen and (orientation: portrait) {
  .c-illust.-renovation .-illust.-no10 {
    top: -2vw;
    left: -2vw;
  }
}

@media screen and (orientation: portrait) and (min-width: 768px) {
  .c-illust.-renovation .-illust.-no10 {
    top: -10vw;
    left: 16vw;
  }
}

.p-contact__form .mwform-radio-field-text:before,
.p-contact__form .p-contact__check label > span:before {
  display: none;
}

/*
contact
-----------------------------------------------------*/
.p-contact__hissu {
  width: 3.5rem;
  font-size: 0.8em;
  display: inline-block;
  background: #403128;
  color: #fff;
  text-align: center;
  border-radius: 1.5em;
  font-weight: 100;
}

body .p-contact .c-button.-cv {
  background: #1B6678;
  width: 100%;
  max-width: 400px;
  margin-left: auto;
  margin-right: auto;
}

@media screen and (min-width: 1024px) {
  body .p-contact .c-button.-cv {
    position: absolute;
    top: 0;
    right: 0;
  }
}

body .p-contact .c-button.-cv::before {
  background: url(/assets/img/common/icon_tel_white.svg) no-repeat;
}

body .p-contact .c-button.-cv .-inner * {
  color: #fff;
}

body .p-contact .c-button.-cv .-inner svg {
  fill: #fff;
}

body .p-contact .l-section {
  padding-top: 10vw;
}

@media screen and (min-width: 1024px) {
  body .p-contact .l-section {
    padding-top: 0;
  }
}

.p-contact__form {
  display: block;
}

.p-contact__form dt {
  width: 100%;
  padding-bottom: 0;
  padding-right: 0;
  position: relative;
}

@media screen and (min-width: 768px) {
  .p-contact__form dt {
    padding-right: 1em;
  }
}

@media screen and (min-width: 768px) {
  .p-contact__form dt {
    width: 16em;
    padding-top: 1.5em;
    padding-bottom: 1.5em;
  }
}

.p-contact__form dt .p-contact__hissu {
  position: absolute;
  left: inherit;
  right: 0;
  top: 0.25em;
}

@media screen and (min-width: 768px) {
  .p-contact__form dt .p-contact__hissu {
    top: 1.5em;
    left: 0;
    right: inherit;
  }
}

.p-contact__form dt label {
  display: block;
  position: relative;
  padding-left: 0;
  padding-right: 4em;
  padding-top: 0em;
  padding-bottom: 0em;
}

@media screen and (min-width: 768px) {
  .p-contact__form dt label {
    padding-left: 5em;
    padding-right: 0;
    padding-top: 1em;
    padding-bottom: 1em;
  }
}

.p-contact__form dd {
  width: 100%;
  padding-top: 1.5em;
  padding-bottom: 1.5em;
  padding-right: 0;
}

@media screen and (min-width: 768px) {
  .p-contact__form dd {
    padding-right: 1em;
  }
}

.p-contact__form dd .p-contact__add {
  padding-top: 1.5em;
}

.p-contact__form dd .p-contact__add:first-child {
  padding-top: 0;
}

@media screen and (min-width: 768px) {
  .p-contact__form dd .p-contact__add {
    padding-top: 1em;
  }
  .p-contact__form dd .p-contact__add:first-child {
    padding-top: 1em;
  }
}

.p-contact__form dd .p-contact__add:last-child {
  margin-bottom: 2em;
}

.p-contact__form dd .p-contact__add .label {
  display: block;
  margin-bottom: 0.5rem;
  font-size: 0.9em;
}

.p-contact__form dd .p-contact__add.-num {
  width: 14em;
}

@media screen and (min-width: 768px) {
  .p-contact__form dd {
    width: calc(100% - 16em);
  }
}

.p-contact__form dd select {
  border: 1px solid #f9e1cf;
  width: 100%;
  display: block;
  padding: 1.25em 1.5em;
  font-size: 1rem;
  border-radius: 1em;
  line-height: 1.75em;
  position: relative;
  background: #fff url(/assets/img/common/arr_under.svg) no-repeat right 2em top 2em/0.7rem auto;
}

.p-contact__form .p-contact__radio {
  padding: 0;
}

@media screen and (min-width: 768px) {
  .p-contact__form .p-contact__radio {
    padding: 1em 0;
  }
}

.p-contact__form .p-contact__radio span {
  margin-right: 1.5em;
  width: 100%;
  display: block;
  margin-bottom: 0.5em;
}

.p-contact__form .p-contact__radio span:last-child {
  margin-bottom: 0;
}

.p-contact__form .p-contact__radio span:last-child {
  margin-right: 0;
}

.p-contact__form .p-contact__radio.-full > span {
  width: 100%;
  display: block;
  margin-bottom: 0.5em;
}

.p-contact__form .p-contact__radio.-full > span:last-child {
  margin-bottom: 0;
}

.p-contact__form .p-contact__radio.-full .c-btton__seikenhouse {
  margin-left: 0;
  margin-top: 1em;
  width: 50%;
}

@media screen and (min-width: 768px) {
  .p-contact__form .p-contact__radio.-full .c-btton__seikenhouse {
    width: 50%;
  }
}

@media screen and (min-width: 1024px) {
  .p-contact__form .p-contact__radio.-full .c-btton__seikenhouse {
    width: 40%;
  }
}

.p-contact__form .p-contact__check {
  padding: 0;
  /*label:before {
            content: '';
            background: #fff;
            border-radius: 0%;
            border: 1px solid #403128;
            display: inline-block;
            width: 1.125rem;
            height: 1.125rem;
            position: relative;
            top: 0;
            margin-right: 6px;
            vertical-align: middle;
            cursor: pointer;
        }*/
}

@media screen and (min-width: 768px) {
  .p-contact__form .p-contact__check {
    padding: 1em 0;
  }
}

.p-contact__form .p-contact__check span {
  margin-right: 1.5em;
  width: 100%;
  display: block;
  margin-bottom: 0.5em;
}

.p-contact__form .p-contact__check span:last-child {
  margin-bottom: 0;
}

.p-contact__form .p-contact__check span:last-child {
  margin-right: 0;
}

.p-contact__form .p-contact__check.-full > span {
  width: 100%;
  display: block;
  margin-bottom: 0.5em;
}

.p-contact__form .p-contact__check.-full > span:last-child {
  margin-bottom: 0;
}

.p-contact__form .p-contact__check.-full .c-btton__seikenhouse {
  margin-left: 0;
  margin-top: 1em;
  width: 50%;
}

@media screen and (min-width: 768px) {
  .p-contact__form .p-contact__check.-full .c-btton__seikenhouse {
    width: 50%;
  }
}

@media screen and (min-width: 1024px) {
  .p-contact__form .p-contact__check.-full .c-btton__seikenhouse {
    width: 40%;
  }
}

.p-contact__form input[type=text],
.p-contact__form input[type=email] {
  border: 1px solid #f9e1cf;
  width: 100%;
  display: block;
  padding: 1.25em 1.5em;
  border-radius: 1em;
  line-height: 1.75em;
}

.p-contact__form textarea {
  border: 1px solid #f9e1cf;
  width: 100%;
  display: block;
  padding: 1.25em 1.5em;
  border-radius: 1em;
  line-height: 1.75em;
}

.p-contact__form input[type=radio] {
  border: 0;
  clip: rect(0 0 0 0);
  -webkit-clip-path: inset(50%);
  clip-path: inset(50%);
  height: 1px;
  margin: -1px;
  overflow: hidden;
  padding: 0;
  position: absolute;
  white-space: nowrap;
  width: 1px;
}

.p-contact__form .p-contact__radio .mwform-radio-field.horizontal-item {
  margin-left: 0;
}

.p-contact__form .mwform-radio-field-text:before,
.p-contact__form .p-contact__check label > span.mwform-checkbox-field-text:before {
  content: '';
  background: #fff;
  border-radius: 50%;
  border: 1px solid #403128;
  display: inline-block;
  width: 1.125rem;
  height: 1.125rem;
  position: relative;
  top: 0;
  margin-right: 6px;
  vertical-align: middle;
  cursor: pointer;
  margin-left: 0;
}

.p-contact__form .p-contact__check label > span.mwform-checkbox-field-text:before {
  border-radius: 0;
}

.p-contact__form .p-contact__check label input:checked + span:before {
  background-color: #403128;
  -webkit-box-shadow: inset 0 0 0 4px #fff;
  box-shadow: inset 0 0 0 4px #fff;
}

.p-contact__form input:checked + .mwform-radio-field-text:before,
.p-contact__form input:checked + label > span:before,
.p-contact__form input:checked + .wpcf7-list-item-label:before {
  background-color: #403128;
  -webkit-box-shadow: inset 0 0 0 4px #fff;
  box-shadow: inset 0 0 0 4px #fff;
}

.p-contact__form .p-contact__send {
  padding-top: 2em;
}

.p-contact__form .p-contact__send input[type=submit] {
  width: 100%;
  text-align: center;
  display: block;
  position: relative;
  font-weight: 700;
  padding: 1.5em;
  background: #1B6678;
  color: #fff;
  line-height: 1em;
  border-radius: 2em;
  margin-left: auto;
  margin-right: auto;
  max-width: 20em;
  font-size: 1em;
}

.p-contact.-confirmation .l-section {
  padding-top: 0;
}

.p-contact.-confirmation .l-section dt label {
  padding-top: 0;
  padding-bottom: 0;
}

.p-contact.-confirmation .l-section dd {
  padding-top: 0.5em;
  padding-bottom: 1em;
}

@media screen and (min-width: 768px) {
  .p-contact.-confirmation .l-section dd {
    padding-top: 1em;
  }
}

.p-contact.-thanks .l-section {
  padding-top: 0;
}

.p-contact.-thanks .l-section .l-box {
  border: 1px solid #403128;
  background: none;
}

.p-contact.-thanks .l-section .l-box .c-button.c-button__icon {
  margin: 0;
  width: 20em;
  margin-top: 2rem;
}

body.confirmation .p-contact__form dt label {
  padding-top: 0;
  padding-bottom: 0;
}

body.confirmation .p-contact__form dt .p-contact__hissu {
  top: 0.25em;
}

body.confirmation .p-contact__form dd .p-contact__add:first-child {
  padding-top: 0;
}

body.confirmation .p-contact__form .p-contact__radio {
  padding: 0;
}

body.confirmation .p-contact__send {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
}

body.confirmation .p-contact__send input[type=submit] {
  margin-left: 0;
  margin-right: 0;
}

body.confirmation .p-contact__send .btn_back {
  width: 100%;
  text-align: center;
  display: block;
  position: relative;
  font-weight: 700;
  padding: 1.5em;
  background: #3f3027;
  color: #fff;
  line-height: 1em;
  border-radius: 2em;
  margin-left: 0;
  margin-right: 1rem;
  max-width: 20em;
  font-size: 1em;
}

/*
privacy
-----------------------------------------------------*/
/*
@import 'object/project/home';
@import 'object/project/about';
*/
/*
  3.2 - Utility
-----------------------------------------------------*/
.u-propaty__r {
  border-radius: 5vw;
  overflow: hidden;
}

@media screen and (min-width: 768px) {
  .u-propaty__r {
    border-radius: 2.5vw;
  }
}

.u-propaty__r.-L {
  border-radius: 5vw 0 0 5vw;
}

@media screen and (min-width: 768px) {
  .u-propaty__r.-L {
    border-radius: 2.5vw 0 0 2.5vw;
  }
}

.u-propaty__r.-R {
  border-radius: 0 5vw 5vw 0;
}

@media screen and (min-width: 768px) {
  .u-propaty__r.-R {
    border-radius: 0 2.5vw 2.5vw 0;
  }
}

/*
 font
-----------------------------------------------------*/
body,
textarea,
input {
  font-size: 0.875rem;
}

@media screen and (min-width: 768px) {
  body,
  textarea,
  input {
    font-size: 1.82292vw;
  }
}

@media screen and (min-width: 1024px) {
  body,
  textarea,
  input {
    font-size: 1.46484vw;
  }
}

@media screen and (min-width: 1280px) {
  body,
  textarea,
  input {
    font-size: 1.25vw;
  }
}

@media screen and (min-width: 1366px) {
  body,
  textarea,
  input {
    font-size: 1.1713vw;
  }
}

@media screen and (min-width: 1600px) {
  body,
  textarea,
  input {
    font-size: 1vw;
  }
}

@media screen and (min-width: 1920px) {
  body,
  textarea,
  input {
    font-size: 1.125rem;
  }
}

.u-font.-h {
  font-weight: 700;
}

.u-font.-h .-normal {
  font-weight: 400;
}

.u-font.-center {
  text-align: center;
}

.u-font.-ll {
  font-size: 2em;
  letter-spacing: 0.1em;
  line-height: 1.5em;
}

@media screen and (min-width: 1280px) {
  .u-font.-ll {
    font-size: 2.5em;
  }
}

@media screen and (min-width: 1600px) {
  .u-font.-ll {
    font-size: 2.5em;
  }
}

.u-font.-l {
  font-size: 1.4em;
  letter-spacing: 0.1em;
  line-height: 1.5em;
}

@media screen and (min-width: 1280px) {
  .u-font.-l {
    font-size: 1.75em;
  }
}

@media screen and (min-width: 1600px) {
  .u-font.-l {
    font-size: 1.75em;
  }
}

.u-font.-m {
  font-size: 1.25em;
  letter-spacing: 0;
}

@media screen and (min-width: 1280px) {
  .u-font.-m {
    font-size: 1.3em;
  }
}

@media screen and (min-width: 1600px) {
  .u-font.-m {
    font-size: 1.3em;
  }
}

.u-font.-s {
  font-size: 1em;
}

.u-font.-s > * {
  font-size: 1em;
}

.u-font.-ss {
  font-size: 0.9em;
}

.u-font.-sss {
  font-size: 0.8em;
}

.u-font .-mini {
  font-size: 1rem;
}

.u-font.-tate {
  -webkit-writing-mode: vertical-rl;
      -ms-writing-mode: tb-rl;
          writing-mode: vertical-rl;
}

.u-font.-green {
  color: #166678;
}

/*
.c-fontsize{
    &.-ll{font-size: rem(24);}
    &.-l{font-size: rem(21);}
    &.-m{font-size: rem(18);}
    &.-s{font-size: rem(14);}
    &.-ss{font-size: rem(12);}

    @include mq(tab) {
        &.-ll{font-size: rem(24);}
        &.-l{font-size: rem(21);}
        &.-m{font-size: rem(18);}
        &.-s{font-size: rem(14);}
        &.-ss{font-size: rem(14);}
    }

    @include mq(desk) {
        &.-ll{font-size: rem(24);}
        &.-l{font-size: rem(21);}
        &.-m{font-size: rem(18);}
        &.-s{font-size: rem(14);}
        &.-ss{font-size: rem(14);}
    }

    @include mq(vr) {
        &.-ll{font-size: rem(30);}
        &.-l{font-size: rem(24);}
        &.-m{font-size: rem(20);}
        &.-s{font-size: rem(16);}
        &.-ss{font-size: rem(14);}
    }

    @include mq(full) {
        &.-ll{font-size: rem(40);}
        &.-l{font-size: rem(32);}
        &.-m{font-size: rem(24);}
        &.-s{font-size: rem(16);}
        &.-ss{font-size: rem(14);}
    }


}
*/
.u-center {
  text-align: center !important;
}

.u-center * {
  text-align: center !important;
}

.u-left {
  text-align: left !important;
}

.u-right {
  text-align: right !important;
}

.u-block {
  display: block;
}

.u-marker.-blue {
  background: -webkit-gradient(linear, left top, left bottom, color-stop(60%, transparent), color-stop(60%, #bae9e8));
  background: linear-gradient(transparent 60%, #bae9e8 60%);
}

.u-caption {
  position: relative;
  padding-left: 1.5em;
  font-size: 0.8em;
}

.u-caption::before {
  content: "※";
  display: inline-block;
  position: absolute;
  left: 0;
  top: 0;
}

body a.u-textlink {
  text-decoration: underline;
}

.u-c__main {
  fill: #403128;
  background: #403128;
}

.u-c__green {
  fill: #166678;
  background: #166678;
}

.u-noise,
.p-works__cat .-cat {
  position: relative;
}

.u-noise.-mov,
.p-works__cat .-cat.-mov {
  -webkit-animation: noise 0.25s steps(5) infinite;
          animation: noise 0.25s steps(5) infinite;
}

.u-noise::after,
.p-works__cat .-cat::after {
  content: "";
  width: 100%;
  height: 100%;
  display: block;
  position: absolute;
  left: 0;
  top: 0;
  background: url("../img/common/noise.png");
  mix-blend-mode: screen;
  opacity: 0.4;
  z-index: 10;
  pointer-events: none;
}

.u-noise::after.-z0,
.p-works__cat .-cat::after.-z0 {
  z-index: 0;
}

.u-noise::after.-z0 > *,
.p-works__cat .-cat::after.-z0 > * {
  z-index: 1;
}

@-webkit-keyframes noise {
  to {
    background-position: -1500px -1500px;
  }
}

@keyframes noise {
  to {
    background-position: -1500px -1500px;
  }
}

.u-fit img {
  -o-object-fit: cover;
     object-fit: cover;
  width: 100%;
  height: 100%;
}

.note_privacy {
  padding-top: 2rem;
  font-size: 0.9em;
  text-align: center;
}

.note_privacy a {
  text-decoration: underline;
}

.grecaptcha-badge {
  visibility: hidden !important;
}

body .m-header__circle .m-header__mark {
  display: block;
}

body .m-header__circle .m-header__button-area.-hamburger {
  opacity: 0;
}

.-fvend .m-header__circle .m-header__mark,
body.navopen .m-header__circle .m-header__mark {
  display: none;
}

.-fvend .m-header__circle .m-header__button-area.-hamburger,
body.navopen .m-header__circle .m-header__button-area.-hamburger {
  opacity: 1;
}

.u-parts__map {
  width: 100%;
  aspect-ratio: 1/1.5;
}

@media screen and (min-width: 768px) {
  .u-parts__map {
    aspect-ratio: 3/2;
  }
}

@media screen and (min-width: 1280px) {
  .u-parts__map {
    aspect-ratio: 16/9;
  }
}

.u-parts__map iframe {
  width: 100%;
  height: 100%;
  display: block;
}

.u-syutten {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
}

.u-syutten .-title {
  width: 3rem;
  line-height: 1.75em;
  font-size: 0.8em;
}

.u-syutten .-text {
  width: calc(100% - 4rem);
  line-height: 1.75em;
  font-size: 0.8em;
}

.u-pc {
  display: none;
}

@media screen and (min-width: 768px) {
  .u-pc {
    display: initial;
  }
}

.u-sp {
  display: initial;
}

@media screen and (min-width: 768px) {
  .u-sp {
    display: none;
  }
}

/*
hover
-----------------------------------------------------*/
body .c-textlink {
  text-decoration: underline;
}

@media (hover: hover) and (pointer: fine) {
  .m-header .m-header__nav .-inner .-button {
    position: relative;
  }
  .m-header .m-header__nav .-inner .-button::after {
    content: "";
    width: 0%;
    height: 2px;
    display: block;
    background: #403128;
    position: absolute;
    bottom: 1em;
    left: 50%;
    -webkit-transform: translateX(-50%);
            transform: translateX(-50%);
    -webkit-transition: width 0.1s ease-in;
    transition: width 0.1s ease-in;
  }
  .m-header .m-header__nav .-inner .-button:hover {
    color: #725a4b;
  }
  .m-header .m-header__nav .-inner .-button:hover::after {
    width: 100%;
    -webkit-transition: width 0.15s ease-out;
    transition: width 0.15s ease-out;
    background: #725a4b;
  }
}

@media (hover: hover) and (pointer: fine) {
  .m-header__circle.-cv {
    background: #fff;
    -webkit-transition: 0.1s ease-in;
    transition: 0.1s ease-in;
  }
  .m-header__circle.-cv .-icon svg {
    fill: #166678;
    -webkit-transition: 0.1s ease-in;
    transition: 0.1s ease-in;
  }
  .m-header__circle.-cv:hover {
    background: #166678;
    -webkit-transition: 0.1s ease-out;
    transition: 0.1s ease-out;
  }
  .m-header__circle.-cv:hover .-icon svg {
    fill: #fff;
    -webkit-transition: 0.1s ease-out;
    transition: 0.1s ease-out;
  }
  .home-mainarea__lead .-text .c-button.c-button__icon {
    background: #403128;
  }
  .home-mainarea__lead .-text .c-button.c-button__icon .-inner {
    color: #fff;
  }
  .home-mainarea__lead .-text .c-button.c-button__icon:hover {
    background: #725a4b;
    -webkit-transition: all 0.3s ease;
    transition: all 0.3s ease;
  }
  body .c-button:hover {
    background: #725a4b;
    -webkit-transition: all 0.3s ease;
    transition: all 0.3s ease;
  }
  body .c-button__arr:hover .-arr {
    background: #725a4b;
    -webkit-transition: all 0.3s ease;
    transition: all 0.3s ease;
  }
  body .c-button__arr:hover .-inner {
    color: #725a4b;
    -webkit-transition: color 0.3s ease;
    transition: color 0.3s ease;
  }
  .p-works__thumb .-img img {
    -webkit-transition: -webkit-transform 0.3s ease-out;
    transition: -webkit-transform 0.3s ease-out;
    transition: transform 0.3s ease-out;
    transition: transform 0.3s ease-out, -webkit-transform 0.3s ease-out;
  }
  .p-works__thumb:hover .-img img {
    -webkit-transform: scale(1.3);
            transform: scale(1.3);
    -webkit-transition: -webkit-transform 4s ease-in-out;
    transition: -webkit-transform 4s ease-in-out;
    transition: transform 4s ease-in-out;
    transition: transform 4s ease-in-out, -webkit-transform 4s ease-in-out;
  }
  .p-works__thumb:hover * {
    color: #725a4b;
  }
  .p-works__thumb:hover .-cat {
    background-color: #725a4b;
    color: #fff;
  }
  body .c-button.-white:hover {
    background: #faeae0;
    -webkit-transition: all 0.3s ease;
    transition: all 0.3s ease;
  }
  .c-sns__wrap .c-sns:hover {
    opacity: 0.5;
  }
  body .c-button.-green:hover {
    background: #2b8aa0;
  }
  body .c-btton__seikenhouse:hover {
    opacity: 0.5;
  }
  body .c-textlink:hover {
    color: #725a4b;
  }
  .m-header__circle.-mark .m-header__button-area.-left.-hamburger:hover {
    background: #2b8aa0;
    -webkit-transition: all 0.3s ease;
    transition: all 0.3s ease;
  }
  .l-main__pagenav .-button:hover {
    color: #725a4b;
  }
  .l-main__pagenav .-button:hover .-icon {
    background: #725a4b;
  }
  .store_link:hover {
    color: #725a4b;
  }
  .store_link:hover::before {
    background: #725a4b;
  }
}

/*
@import 'object/utility/style';
@import 'object/utility/device';

@import 'object/utility/font';
*/
/*# sourceMappingURL=common.css.map */