@charset "UTF-8";

/*----------------------------------------------------------------------------------------------------------
writing-mode mixin
    Usage:
        $orientation    v (vertical)
                        h (horizontal)
		$direction      rl (right to left)
						lr (left to right)
----------------------------------------------------------------------------------------------------------*/
/*----------------------------------------------------------------------------------------------------------
writing-mode mixin
    Usage:
        $orientation    v (vertical)
                        h (horizontal)
		$direction      rl (right to left)
						lr (left to right)
----------------------------------------------------------------------------------------------------------*/
html,
body,
div,
span,
applet,
object,
iframe,
h1,
h2,
h3,
h4,
h5,
h6,
p,
blockquote,
pre,
a,
abbr,
acronym,
address,
big,
cite,
code,
del,
dfn,
em,
img,
ins,
kbd,
q,
s,
samp,
small,
strike,
strong,
sub,
sup,
tt,
var,
b,
u,
i,
center,
dl,
dt,
dd,
ol,
ul,
li,
fieldset,
form,
label,
legend,
table,
caption,
tbody,
tfoot,
thead,
tr,
th,
td,
article,
aside,
canvas,
details,
embed,
figure,
figcaption,
footer,
header,
hgroup,
menu,
nav,
output,
ruby,
section,
summary,
time,
mark,
audio,
video {
  margin: 0;
  padding: 0;
  border: 0;
  font: inherit;
  font-size: 100%;
  vertical-align: baseline;
}

html {
  line-height: 1;
}

ol,
ul {
  list-style: none;
}

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

caption,
th,
td {
  text-align: left;
  font-weight: normal;
  vertical-align: middle;
}

q,
blockquote {
  quotes: none;
}

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

a img {
  border: none;
}

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

/**
 * !!! 変数の定義 !!!
 * 変数は作りすぎず、デザインコンポーネント、もしくはシンボルを元に作成する
 * またGoogle Font等の特殊なウェブフォントの場合、そのフォント名を定義してわかりやすくする
 */
.jp-font {
  font-family: yu-gothic-pr6n, sans-serif !important;
}

/**
 * !!! ブレークポイント !!!
 */
@media only screen and (max-width: 767px) {
  .pc {
    display: none !important;
  }
}

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

::-webkit-scrollbar {
  display: none;
  -webkit-appearance: none;
}

/**
 * !!! browsersyncのアラートを非表示 !!!
 */
#__bs_notify__ {
  display: none !important;
}

/**
 * !!! ページCSS基本設定 !!!
 * 基本的にこの箇所は操作しないようにする
 * ----------------ここから----------------
 */
html {
  font-size: 62.5%;
  font-family: acumin-pro, Koburina Gothic W3 JIS2004, "游ゴシック", YuGothic, "Hiragino Sans", "ヒラギノ角ゴ Pro", "Hiragino Kaku Gothic Pro", "メイリオ", "Meiryo", sans-serif;
  font-weight: 100;
  font-feature-settings: "palt";
  -webkit-font-smoothing: antialiased;
  color: #231815;
}

body {
  overscroll-behavior-y: none;
}

* {
  font-size: 14px;
  font-size: 1.4rem;
  box-sizing: border-box;
}

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

a {
  color: inherit;
  text-decoration: none;
}

a.line {
  border-bottom-style: solid;
  border-width: 1px;
  border-bottom-color: #e2e2e2;
}

a.line-2 {
  border-bottom-style: solid;
  border-width: 1px;
  border-bottom-color: #308755;
}

i {
  font-style: italic;
}

input,
button,
select,
textarea {
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  background: transparent;
  border: none;
  border-radius: 0;
  font: inherit;
  outline: none;
}

textarea {
  resize: vertical;
}

input[type='checkbox'],
input[type='radio'] {
  display: none;
}

input[type='submit'],
input[type='button'],
label,
button,
select {
  cursor: pointer;
}

select::-ms-expand {
  display: none;
}

.row {
  overflow: hidden;
  *zoom: 1;
}

/**
 * ----------------ここまで----------------
 */
/**
 * !!! FlexBox Rule !!!
 * 都度scssを記載するのではなく、クラスで定義し、クラスの付け外しで管理すること。
 */
.flex-row {
  display: -webkit-flex;
  display: flex;
  -webkit-flex-wrap: wrap;
  flex-wrap: wrap;
  -webkit-justify-content: space-between;
  justify-content: space-between;
}

/**
 * !!! Inner Rule !!!
 * 最初にデザインを確認し、存在するinnerパターンを作成すること
 * max-width指定のみだと、画面幅を縮小するときに余白が消えるため、paddingをつけること
 * 例) innerが1000pxであれば、
 *     max-width: 1060px;
 *     padding: 0 30px;
 */
.inner {
  max-width: 1340px;
  padding: 0 30px;
  margin: 0 auto;
}

[data-trigger] {
  position: relative;
  top: 60px;
  -webkit-transition: top 1s, opacity 1s;
  -moz-transition: top 1s, opacity 1s;
  -o-transition: top 1s, opacity 1s;
  transition: top 1s, opacity 1s;
  opacity: 0;
}

[data-trigger].visible {
  top: 0;
  opacity: 1;
}

body.footer_black .footer {
  background: #0d0d0d;
  color: #ccc;
}

.footer {
  padding: 145px 60px 122px;
  margin-top: -1px;
  position: relative;
}

@media only screen and (max-width: 767px) {
  .footer {
    padding: 60px 15px 40px;
  }
}

.footer__inner {
  padding-top: 18px;
  display: -webkit-flex;
  display: flex;
  -webkit-flex-wrap: wrap;
  flex-wrap: wrap;
  -webkit-justify-content: space-between;
  justify-content: space-between;
  font-size: 13px;
  font-size: 1.3rem;
  border-top: 1px solid #eee;
}

@media only screen and (max-width: 767px) {
  .footer__inner {
    font-size: 11px;
    font-size: 1.1rem;
  }
}

.footer__moto {
  padding-left: 80px;
  padding-right: 80px;
}

.header {
  display: -webkit-flex;
  display: flex;
  -webkit-flex-wrap: wrap;
  flex-wrap: wrap;
  -webkit-justify-content: space-between;
  justify-content: space-between;
  padding: 0 55px;
  padding-bottom: 24px;
  position: fixed;
  z-index: 1000;
  width: 100%;
}

@media only screen and (max-width: 767px) {
  .header {
    align-items: center;
    padding-left: 13px;
    padding-right: 13px;
    padding-bottom: 13px;
  }
}

.header--moto {
  padding: 0 80px;
}

@media only screen and (max-width: 767px) {
  .header--moto {
    padding-left: 13px;
    padding-right: 13px;
  }
}

.header--moto .header__brand a span {
  font-family: ivypresto-display, serif;
  font-weight: 100;
  font-size: 18.75px;
  font-size: 1.875rem;
  letter-spacing: 0.05em;
  color: #000000;
}

@media only screen and (max-width: 767px) {
  .header--moto .header__brand a span {
    font-size: 2rem;
    line-height: 1.3;
  }
}

.header--moto .header__menu>ul>li {
  margin-left: 29px;
}

.header--moto .header__menu>ul>li a em {
  font-family: ivypresto-display, serif;
  font-weight: 100;
  letter-spacing: 0.05em;
}

.header__brand {
  padding-top: 55px;
}

@media only screen and (max-width: 767px) {
  .header__brand {
    padding-top: 28px;
  }
}

.header__brand a {
  display: block;
}

.header__brand a img {
  width: 271px;
  height: auto;
}

@media only screen and (max-width: 767px) {
  .header__brand a img {
    width: 252px;
  }
}

@media only screen and (max-width: 767px) {
  .header__menu {
    display: none;
  }
}

.header__menu>ul {
  font-size: 0;
}

.header__menu>ul>li {
  display: inline-block;
  margin-left: 35px;
  margin-top: 57px;
  position: relative;
}

.header__menu>ul>li:first-child {
  margin-left: 0;
}

.header__menu>ul>li>a>em {
  font-size: 13.7px;
  font-size: 1.37rem;
}

.header__menu>ul>li>ul {
  display: none;
  position: absolute;
  left: 0;
  top: calc(100% + 7px);
}

.header__menu>ul>li>ul li {
  line-height: 1.459854015;
}

.header__menu>ul>li>ul li a {
  color: #9D9D9D;
  font-size: 13.7px;
  font-size: 1.37rem;
}

@media only screen and (min-width: 768px) {
  .header__menu>ul>li>ul li a {
    -webkit-transition: color 0.3s;
    -moz-transition: color 0.3s;
    -o-transition: color 0.3s;
    transition: color 0.3s;
  }

  .header__menu>ul>li>ul li a:hover {
    color: #000;
  }
}

.header__menu li svg {
  margin-bottom: -3px;
}


.header__sptoggle a {
  width: 22px;
  height: 24px;
  display: block;
  position: relative;
}

@media only screen and (max-width: 767px) {
  .header__sptoggle a {
    margin-top: 8px;
  }
}

.header__sptoggle a span {
  position: absolute;
  left: 0;
  top: 0;
  bottom: 0;
  margin: auto;
  width: 100%;
  height: 1px;
  background: #000;
  -webkit-transition: top 0.3s, bottom 0.3s, left 0.3s, right 0.3s, -webkit-transform 0.3s;
  -moz-transition: top 0.3s, bottom 0.3s, left 0.3s, right 0.3s, -moz-transform 0.3s;
  -o-transition: top 0.3s, bottom 0.3s, left 0.3s, right 0.3s, -o-transform 0.3s;
  transition: top 0.3s, bottom 0.3s, left 0.3s, right 0.3s, transform 0.3s;
  -webkit-transform: rotate(0deg);
  -moz-transform: rotate(0deg);
  -ms-transform: rotate(0deg);
  -o-transform: rotate(0deg);
  transform: rotate(0deg);
}

.header__sptoggle a span:nth-child(1) {
  top: 6px;
}

.header__sptoggle a span:nth-child(2) {
  bottom: 6px;
}

.header__sptoggle a.on span:nth-child(1) {
  top: 0;
  -webkit-transform: rotate(45deg);
  -moz-transform: rotate(45deg);
  -ms-transform: rotate(45deg);
  -o-transform: rotate(45deg);
  transform: rotate(45deg);
}

.header__sptoggle a.on span:nth-child(2) {
  bottom: 0;
  -webkit-transform: rotate(-45deg);
  -moz-transform: rotate(-45deg);
  -ms-transform: rotate(-45deg);
  -o-transform: rotate(-45deg);
  transform: rotate(-45deg);
}

.header__spmenu {
  position: fixed;
  left: 0;
  top: 0;
  z-index: 999;
  width: 100%;
  height: 100%;
  background: #fff;
  display: none;
}

.header__spmenu>ul {
  padding: 0 18px;
  padding-top: 100px;
}

.header__spmenu>ul>li {
  display: block;
  padding: 12px 0;
  position: relative;
}

.header__spmenu>ul>li>a {
  font-size: 20px;
  font-size: 2rem;
  letter-spacing: 0.05rem;
  line-height: 1.2;
  font-family: ivypresto-display, serif;
}

.header__spmenu>ul>li>ul {
  position: absolute;
  left: 90px;
  top: 14px;
  width: 180px;
  font-size: 0;
}

.header__spmenu>ul>li>ul li {
  display: inline-block;
  vertical-align: middle;
  margin-right: 32px;
  font-size: 16px;
  font-size: 1.6rem;
  color: #9D9D9D;
  position: relative;
}

.header__spmenu>ul>li>ul li:before {
  content: "/";
  position: absolute;
  right: -19px;
  top: 1px;
}

.header__spmenu>ul>li>ul li:last-child {
  margin-right: 0;
}

.header__spmenu>ul>li>ul li:last-child:before {
  content: none;
}

.header__spmenu>ul>li>ul li a {
  display: block;
}

.contact-page {
  max-width: 1340px;
  padding: 0 40px 0 0;
  margin: auto;
}

@media only screen and (max-width: 767px) {
  .contact-page {
    padding: 0;
  }
}

.contact-page__row {
  display: -webkit-flex;
  display: flex;
  -webkit-flex-wrap: wrap;
  flex-wrap: wrap;
  -webkit-justify-content: space-between;
  justify-content: space-between;
  padding-top: 120px;
}

@media only screen and (min-width: 768px) {
  .contact-page__row {
    min-height: calc(100vh - 393px);
  }
}

.contact-page__row h2 {
  font-size: 30px;
  font-size: 3rem;
  width: 284px;
}

@media only screen and (max-width: 767px) {
  .contact-page__row h2 {
    width: 100%;
  }
}

.contact-page__row h2 span {
  font-size: 16px;
  font-size: 1.6rem;
  display: block;
  margin-top: 26px;
  letter-spacing: 0.045em;
}

.contact-page__row>div {
  width: calc(100% - 284px);
}

@media only screen and (max-width: 767px) {
  .contact-page__row>div {
    width: 100%;
    margin-top: 28px;
  }
}

.contact-page__row>div p {
  font-size: 16px;
  font-size: 1.6rem;
  line-height: 1.7;
}

@media only screen and (max-width: 767px) {
  .contact-page__row>div p {
    font-size: 14px;
    font-size: 1.4rem;
  }
}

.contact-page__row>div hr {
  border: 0;
  border-top: 1px solid #e3e3e3;
  width: 100%;
  margin: 3.15789474em 0;
}

.contact-page__row>div h2 {
  font-size: 16px;
  font-size: 1.6rem;
  line-height: 1.7;
}

@media only screen and (max-width: 767px) {
  .contact-page__row>div h2 {
    font-size: 14px;
    font-size: 1.4rem;
  }
}

.contact-page__row>div a {
  color: red;
  text-decoration: underline;
}

.image-text-layout.pt {
  padding-top: 40px;
}

.image-text-layout--container {
  width: calc(12.5% * 6);
}

@media only screen and (max-width: 767px) {
  .image-text-layout--container {
    width: 100%;
  }
}

.image-text-layout--container--vertical {
  width: calc(12.5% * 4);
}

@media only screen and (max-width: 767px) {
  .image-text-layout--container--vertical {
    width: 100%;
  }
}

.image-text-layout--container--center {
  margin: 0 auto;
}

.image-text-layout--container--left02 {
  margin-left: calc(12.5% * 1);
}

@media only screen and (max-width: 767px) {
  .image-text-layout--container--left02 {
    margin: 0;
  }
}

.image-text-layout--container--left03 {
  width: calc(12.5% * 6.7125);
}

.image-text-layout--container--left03 .image-text-layout--container__image {
  display: -webkit-flex;
  display: flex;
  -webkit-flex-wrap: wrap;
  flex-wrap: wrap;
  -webkit-justify-content: space-between;
  justify-content: space-between;
  align-items: flex-start;
}

.image-text-layout--container--left03 .image-text-layout--container__image>figure {
  width: 58.1936685%;
}

@media only screen and (max-width: 767px) {
  .image-text-layout--container--left03 .image-text-layout--container__image>figure {
    width: 100%;
  }
}

.image-text-layout--container--left03--image {
  width: 40.689013%;
}

@media only screen and (max-width: 767px) {
  .image-text-layout--container--left03--image {
    width: 100%;
  }
}

.image-text-layout--container--right {
  margin: 0 0 0 auto;
}

.image-text-layout--container--right02 {
  margin-left: calc(12.5% * 3);
}

@media only screen and (max-width: 767px) {
  .image-text-layout--container--right02 {
    margin: 0;
  }
}

.image-text-layout--container--full {
  width: 100%;
  padding-top: 50px;
}

.image-text-layout--container--full figure a {
  display: block;
}

.image-text-layout--container--full figure a img {
  display: block;
}

.image-text-layout--container--full figure figcaption {
  line-height: 1.4;
  font-size: 15px;
  font-size: 1.5rem;
  padding-top: 23px;
  padding-bottom: 80px;
}

.image-text-layout--container__image figure a {
  display: block;
}

.image-text-layout--container__image figure a[href="javascript:void(0);"] {
  pointer-events: none;
}

.image-text-layout--container__image figure a img {
  display: block;
}

.image-text-layout--container__image figure a img.small-image {
  width: 74.4615385%;
}

.image-text-layout--container__image figure figcaption {
  line-height: 1.4;
  font-size: 15px;
  font-size: 1.5rem;
  padding-top: 15px;
  padding-bottom: 40px;
}

@media only screen and (max-width: 767px) {
  .image-text-layout--container__image figure figcaption {
    font-size: 11px;
    font-size: 1.1rem;
    padding-top: 12px;
    padding-bottom: 50px;
  }
}

.image-text-layout--container__image figure figcaption>p {
  font-size: 17px;
  font-size: 1.7rem;
  letter-spacing: 0.01em;
  margin-top: 32px;
  max-width: 690px;
}

@media only screen and (max-width: 767px) {
  .image-text-layout--container__image figure figcaption>p {
    font-size: 13px;
    font-size: 1.3rem;
    line-height: 1.923076923;
  }
}

.image-text-layout--container__image figure figcaption>div {
  padding-top: 32px;
}

.image-text-layout--container__image figure figcaption>div>h2 {
  font-size: 20.78px;
  font-size: 2.078rem;
  letter-spacing: 0.01em;
  line-height: 1.39894129;
  padding-bottom: 32px;
}

.image-text-layout--container__image figure figcaption>div>p {
  font-size: 17.79px;
  font-size: 1.779rem;
  line-height: 1.477796515;
  max-width: 660px;
}

@media only screen and (max-width: 767px) {
  .image-text-layout--container__image figure figcaption>div>p {
    font-size: 13px;
    font-size: 1.3rem;
    line-height: 1.923076923;
  }
}

.image-text-layout--container__image figure figcaption>div .more-link {
  margin-top: 32px;
}

.more-link a {
  display: inline-block !important;
}

.more-link a[href="javascript:void(0);"] {
  display: none !important;
  color: #9E9E9E;
  pointer-events: none;
  cursor: default;
}

.more-link a[href="javascript:void(0);"] em:before {
  background: #9E9E9E;
}

.more-link a[href="javascript:void(0);"] em:after {
  border-color: #9E9E9E;
}

.more-link a em {
  display: block;
  font-size: 17.71px;
  font-size: 1.771rem;
  position: relative;
  padding-right: 22px;
}

@media only screen and (max-width: 767px) {
  .more-link a em {
    font-size: 15px;
    font-size: 1.5rem;
    padding-right: 20px;
  }
}

.more-link a em:before {
  content: "";
  position: absolute;
  right: 0;
  width: 14px;
  height: 2px;
  background: #000;
  top: 4px;
  bottom: 0;
  margin: auto;
}

@media only screen and (max-width: 767px) {
  .more-link a em:before {
    width: 12px;
  }
}

.more-link a em:after {
  content: "";
  width: 8px;
  height: 8px;
  border-top: 2px solid #000;
  border-right: 2px solid #000;
  position: absolute;
  top: 4px;
  bottom: 0;
  right: 0;
  margin: auto;
  -webkit-transform: rotate(45deg);
  -moz-transform: rotate(45deg);
  -ms-transform: rotate(45deg);
  -o-transform: rotate(45deg);
  transform: rotate(45deg);
}

@media only screen and (max-width: 767px) {
  .more-link a em:after {
    width: 6px;
    height: 6px;
    top: 4px;
  }
}

.news-container {
  margin-left: calc(12.5% * 1);
  padding-bottom: 80px;
  padding-top: 50px;
}

@media only screen and (max-width: 767px) {
  .news-container {
    margin-left: 29px;
    padding-bottom: 50px;
    padding-top: 32px;
  }
}

.news-container__inner {
  width: calc(12.5% * 6);
}

@media only screen and (max-width: 767px) {
  .news-container__inner {
    width: 100%;
  }
}

.news-container__inner h2 {
  font-size: 20.8px;
  font-size: 2.08rem;
}

@media only screen and (max-width: 767px) {
  .news-container__inner h2 {
    font-size: 15px;
    font-size: 1.5rem;
  }
}

.news-container__slider {
  padding-top: 30px;
  margin-bottom: 0 !important;
}

.news-container__slider--slide ul li {
  margin-top: 21px;
  display: block;
}

.news-container__slider--slide ul li:nth-child(1) {
  margin-top: 0;
}

.news-container__slider--slide ul li a {
  display: block;
}

.news-container__slider--slide ul li a>span {
  line-height: 1.395480226;
  font-size: 17.7px;
  font-size: 1.77rem;
  letter-spacing: 0.01em;
  display: block;
}

@media only screen and (max-width: 767px) {
  .news-container__slider--slide ul li a>span {
    font-size: 13px;
    font-size: 1.3rem;
  }
}

.news-container__slider--slide ul li a>em {
  font-size: 16px;
  font-size: 1.6rem;
  line-height: 1.375;
  letter-spacing: 0.01em;
  margin-top: 4px;
  display: block;
}

.news-container__slider .slick-dots {
  text-align: right;
  bottom: -45px;
}

.news-container__slider .slick-dots li {
  margin: 0;
  padding: 0;
  width: auto;
  height: auto;
  margin-left: 12px;
}

.news-container__slider .slick-dots li:first-child {
  margin-left: 0;
}

.news-container__slider .slick-dots li button {
  margin: 0;
  padding: 0;
  width: 6px;
  height: 6px;
  border-radius: 6px;
  background-color: #C8C8C8;
  -webkit-transition: background-color 0.3s;
  -moz-transition: background-color 0.3s;
  -o-transition: background-color 0.3s;
  transition: background-color 0.3s;
}

.news-container__slider .slick-dots li button:before {
  content: none;
}

.news-container__slider .slick-dots li.slick-active button {
  background: #000000;
}

.news-container .more-link {
  padding-top: 30px;
}

.news-page {
  max-width: 1340px;
  padding: 0 40px 0 0;
  margin: auto;
}

@media only screen and (max-width: 767px) {
  .news-page {
    padding: 0;
  }
}

.news-page>h2 {
  font-size: 32px;
  font-size: 3.2rem;
  letter-spacing: 0.025em;
  padding: 134px 0 50px;
}

@media only screen and (max-width: 767px) {
  .news-page>h2 {
    font-size: 29px;
    font-size: 2.9rem;
  }
}

.news-page__cat {
  margin: 0 0 50px;
}

.news-page__cat ul {
  font-size: 0;
}

.news-page__cat ul li {
  display: inline-block;
  vertical-align: middle;
  margin: 0 38px 0 0;
}

@media only screen and (max-width: 767px) {
  .news-page__cat ul li {
    display: block;
    margin: 0;
    margin-bottom: 13px;
  }
}

.news-page__cat ul li a {
  display: block;
}

.news-page__cat ul li a.is-active span {
  color: #231815 !important;
}

.news-page__cat ul li a.is-active span:before {
  width: 100%;
}

@media only screen and (min-width: 768px) {
  .news-page__cat ul li a:hover span {
    color: #f03e3e;
  }
}

.news-page__cat ul li a span {
  font-size: 19px;
  font-size: 1.9rem;
  letter-spacing: .041em;
  color: #d5d5d5;
  -webkit-transition: color 0.3s;
  -moz-transition: color 0.3s;
  -o-transition: color 0.3s;
  transition: color 0.3s;
  display: inline-block;
  padding-bottom: 10px;
  position: relative;
}

.news-page__cat ul li a span:before {
  content: "";
  display: block;
  width: 0;
  height: 2px;
  background: #000;
  position: absolute;
  bottom: 0;
  left: 0;
  right: auto;
  -webkit-transition: cubic-bezier(0.645, 0.045, 0.355, 1) 0.36s;
  -moz-transition: cubic-bezier(0.645, 0.045, 0.355, 1) 0.36s;
  -o-transition: cubic-bezier(0.645, 0.045, 0.355, 1) 0.36s;
  transition: cubic-bezier(0.645, 0.045, 0.355, 1) 0.36s;
}

@media only screen and (max-width: 767px) {
  .news-page__cat ul li a span {
    font-size: 17px;
    font-size: 1.7rem;
  }
}

.news-page__list--col a {
  padding: 40px 0;
  border-top: 1px solid #ededed;
  display: -webkit-flex;
  display: flex;
  -webkit-flex-wrap: wrap;
  flex-wrap: wrap;
  -webkit-justify-content: space-between;
  justify-content: space-between;
  align-items: flex-start;
}

.news-page__list--col a>span,
.news-page__list--col a>strong {
  line-height: 1.84615385em;
}

.news-page__list--col a>span {
  min-width: 130px;
  width: 130px;
  letter-spacing: .05em;
  font-size: 1.9rem;
}

@media only screen and (max-width: 767px) {
  .news-page__list--col a>span {
    width: 100%;
    font-size: 16px;
    font-size: 1.6rem;
  }
}

.news-page__list--col a>span small {
  display: inline-block;
  color: #bcbcbc;
  margin-left: 8px;
}

.news-page__list--col a>strong {
  width: calc(100% - 130px);
  padding-right: 230px;
  font-size: 1.9rem;
  letter-spacing: .05em;
  display: block;
}

@media only screen and (max-width: 767px) {
  .news-page__list--col a>strong {
    width: 100%;
    padding-right: 0;
    font-size: 16px;
    font-size: 1.6rem;
    line-height: 1.6em;
  }
}

.news-page__single {
  padding-top: 80px;
}

@media only screen and (max-width: 767px) {
  .news-page__single {
    padding-top: 110px;
  }
}

.news-page__single>h2 {
  font-size: 25px;
  font-size: 2.5rem;
  letter-spacing: 0.025em;
  line-height: 1.42424242em;
}

@media only screen and (max-width: 767px) {
  .news-page__single>h2 {
    font-size: 19px;
    font-size: 1.9rem;
  }
}

.news-page__single--infobox {
  margin-top: 30px;
  display: -webkit-flex;
  display: flex;
  -webkit-flex-wrap: wrap;
  flex-wrap: wrap;
  -webkit-justify-content: space-between;
  justify-content: space-between;
  justify-content: flex-start;
}

@media only screen and (max-width: 767px) {
  .news-page__single--infobox>div {
    width: 100%;
  }
}

.news-page__single--infobox>div small,
.news-page__single--infobox>div span {
  display: block;
}

.news-page__single--infobox>div small {
  font-size: 17px;
  font-size: 1.7rem;
  line-height: 1.55em;
  letter-spacing: 0.07em;
}

@media only screen and (max-width: 767px) {
  .news-page__single--infobox>div small {
    font-size: 14px;
    font-size: 1.4rem;
  }
}

.news-page__single--infobox>div span {
  font-size: 17px;
  font-size: 1.7rem;
  line-height: 1.55em;
  letter-spacing: 0.07em;
}

@media only screen and (max-width: 767px) {
  .news-page__single--infobox>div span {
    font-size: 14px;
    font-size: 1.4rem;
  }
}

.news-page__single--infobox>div ul {
  font-size: 0;
}

.news-page__single--infobox>div ul li {
  display: inline-block;
  vertical-align: middle;
  font-size: 17px;
  font-size: 1.7rem;
  line-height: 1.55em;
  letter-spacing: 0.07em;
  padding-right: 12px;
  position: relative;
}

@media only screen and (max-width: 767px) {
  .news-page__single--infobox>div ul li {
    font-size: 14px;
    font-size: 1.4rem;
  }
}

.news-page__single--infobox>div ul li:last-child:before {
  content: none;
}

.news-page__single--infobox>div ul li:before {
  content: "/";
  position: absolute;
  right: 1px;
}

.news-page__single--infobox>div:nth-child(1) {
  margin-right: 45px;
}

@media only screen and (max-width: 767px) {
  .news-page__single--infobox>div:nth-child(1) {
    margin-right: 0;
  }
}

@media only screen and (max-width: 767px) {
  .news-page__single--infobox>div:nth-child(2) {
    margin-top: 16px;
  }
}

.news-page__single--content {
  font-size: 1.4rem;
  line-height: 2.0rem;
  border-top: 1px solid #ededed;
  margin: 50px 0 0;
  padding: 60px 0 0;
}

@media only screen and (max-width: 767px) {
  .news-page__single--content {
    margin: 50px 0 0;
    padding: 50px 18px 0;
  }
}

.news-page__single--content p {
  margin: 30px 0 0;
  font-size: 14px;
  font-size: 1.4rem;
  line-height: 1.6em;
}

@media only screen and (max-width: 767px) {
  .news-page__single--content p {
    margin: 15px 0 0;
    font-size: 14px;
    font-size: 1.4rem;
  }
}

.news-page__single--content p:first-child {
  margin-top: 0;
}

.news-page__single--content iframe,
.news-page__single--content img {
  display: block;
  margin: auto;
  margin-top: 35px;
  margin-bottom: 13px;
  width: 100%;
  max-width: 800px;
}

@media only screen and (max-width: 767px) {

  .news-page__single--content iframe,
  .news-page__single--content img {
    max-width: 100%;
  }
}

.news-page__single--content iframe {
  width: 100%;
}

.news-page__single--content .videoWrap {
  max-width: 800px;
}

.news-page__single--content .videoBox {
  position: relative;
  width: 100%;
  padding-top: 56.25%;
}

.news-page__single--content .videoBox iframe {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}

.news-page__single--content .contentNav {
  margin: 110px 0 0;
  padding: 40px 0;
  border-top: 1px solid #ededed;
  border-bottom: 1px solid #ededed;
  overflow: hidden;
  display: -webkit-flex;
  display: flex;
  -webkit-justify-content: space-between;
  justify-content: space-between;
  font-size: 19px;
  font-size: 1.9rem;
}

@media only screen and (max-width: 767px) {
  .news-page__single--content .contentNav {
    margin: 40px 0 0;
    padding: 24px 18px;
    font-size: 16px;
    font-size: 1.6rem;
  }
}

.news-page__single--content .contentNav a {
  display: inline-block;
}

.news-page__single--content .contentNav__prev::before {
  content: "←";
  margin: 0 10px 0 0;
}

.news-page__single--content .contentNav__list::after {
  content: "↑";
  margin: 0 0 0 10px;
}

.news-page__single--content .contentNav__next::after {
  content: "→";
  margin: 0 0 0 10px;
}

.news-page .wp-pagenavi {
  margin: 50px 0 0;
  text-align: center;
  font-size: 0;
  overflow: hidden;
}

.news-page .pager a,
.news-page .pager span,
.news-page .wp-pagenavi a,
.news-page .wp-pagenavi span {
  font-size: 26px;
  font-size: 2.6rem;
  display: inline-block;
  margin: 0 10px;
  -webkit-transition: cubic-bezier(0.445, 0.05, 0.55, 0.95) 0.4s;
  -moz-transition: cubic-bezier(0.445, 0.05, 0.55, 0.95) 0.4s;
  -o-transition: cubic-bezier(0.445, 0.05, 0.55, 0.95) 0.4s;
  transition: cubic-bezier(0.445, 0.05, 0.55, 0.95) 0.4s;
  color: #bcbcbc;
}

@media only screen and (min-width: 768px) {

  .news-page .pager a.next,
  .news-page .pager a.prev,
  .news-page .pager span.next,
  .news-page .pager span.prev,
  .news-page .wp-pagenavi a.next,
  .news-page .wp-pagenavi a.prev,
  .news-page .wp-pagenavi span.next,
  .news-page .wp-pagenavi span.prev {
    display: none !important;
  }
}

.news-page .pager a.prev,
.news-page .pager span.prev,
.news-page .wp-pagenavi a.prev,
.news-page .wp-pagenavi span.prev {
  float: left;
}

.news-page .pager a.next,
.news-page .pager span.next,
.news-page .wp-pagenavi a.next,
.news-page .wp-pagenavi span.next {
  float: right;
}

.news-page .pager a.current,
.news-page .pager a:hover,
.news-page .pager span.current,
.news-page .pager span:hover,
.news-page .wp-pagenavi a.current,
.news-page .wp-pagenavi a:hover,
.news-page .wp-pagenavi span.current,
.news-page .wp-pagenavi span:hover {
  color: #000;
}

.news-page .pager,
.news-page .wp-pagenavi {
  margin: 50px 0 100px;
}

@media only screen and (max-width: 767px) {

  .news-page .pager a,
  .news-page .pager span,
  .news-page .wp-pagenavi a,
  .news-page .wp-pagenavi span {
    font-size: 26px;
    font-size: 2.0rem;
  }
}

.project-archive-list {
  padding-top: 240px;
}

@media only screen and (max-width: 767px) {
  .project-archive-list {
    padding-top: 50px;
  }
}

.project-archive-list ul {
  border-top: 1px solid #eee;
}

.project-archive-list ul li {
  border-bottom: 1px solid #eee;
}

.project-archive-list ul li a {
  display: block;
  padding: 18px 33px;
}

@media only screen and (max-width: 767px) {
  .project-archive-list ul li a {
    padding: 16px 10px;
  }
}

.project-archive-list ul li a[href="javascript:void(0);"] {
  pointer-events: none;
}

.project-archive-list ul li a span {
  font-size: 17.71px;
  font-size: 1.771rem;
  line-height: 1.176171654;
  letter-spacing: 0.01em;
}

@media only screen and (max-width: 767px) {
  .project-archive-list ul li a span {
    font-size: 14px;
    font-size: 1.4rem;
    line-height: 1.3;
  }
}

#project-archive {
  padding-top: 68px;
}

.project-title-layout {
  max-width: 780px;
  margin-bottom: 38px;
}

@media only screen and (max-width: 767px) {
  .project-title-layout {
    margin-bottom: 20px;
  }
}

.project-title-layout.pt {
  padding-top: 50px;
}

@media only screen and (max-width: 767px) {
  .project-title-layout.pt {
    padding-top: 30px;
  }
}

.project-title-layout.pt-big {
  padding-top: 100px;
}

@media only screen and (max-width: 767px) {
  .project-title-layout.pt-big {
    padding-top: 50px;
  }
}

.project-title-layout--type02 {
  margin-left: calc(12.5% * 1);
}

@media only screen and (max-width: 767px) {
  .project-title-layout--type02 {
    margin-left: 0;
  }
}

.project-title-layout--type03 {
  margin-left: calc(12.5% * 2);
}

@media only screen and (max-width: 767px) {
  .project-title-layout--type03 {
    margin-left: 0;
  }
}

.project-title-layout--type04 {
  margin-left: calc(12.5% * 4);
}

@media only screen and (max-width: 767px) {
  .project-title-layout--type04 {
    margin-left: 0;
  }
}

.project-title-layout strong {
  display: block;
  font-size: 17.5px;
  font-size: 1.75rem;
  letter-spacing: 0.01em;
  padding-bottom: 26px;
}

@media only screen and (max-width: 767px) {
  .project-title-layout strong {
    font-size: 14px;
    font-size: 1.4rem;
    padding-bottom: 20px;
  }
}

.project-title-layout h2 {
  font-size: 29px;
  font-size: 2.9rem;
  letter-spacing: 0.045em;
  line-height: 1.379310345;
  font-family: ivypresto-display, serif;
}

@media only screen and (max-width: 767px) {
  .project-title-layout h2 {
    font-size: 20px;
    font-size: 2rem;
  }
}

#ss__content {
  padding: 0 80px;
  padding-top: 94.7px;
  position: relative;
  background: #4BB67A;
}

#ss__content.p0 {
  padding-left: 0 !important;
  padding-right: 0 !important;
}

@media only screen and (max-width: 767px) {
  #ss__content {
    padding: 0 13px;
  }
}

#ss__content01,
#ss__content02,
#ss__content03,
#ss__content04,
#ss__content05 {
  position: relative;
}

#ss__content01.p0,
#ss__content02.p0,
#ss__content03.p0,
#ss__content04.p0,
#ss__content05.p0 {
  padding-left: 0 !important;
  padding-right: 0 !important;
}

@media only screen and (max-width: 767px) {

  #ss__content01,
  #ss__content02,
  #ss__content03,
  #ss__content04,
  #ss__content05 {
    padding: 0 0px;
  }
}

#ss__content05 {
  padding: 0 80px;
}

@media only screen and (max-width: 767px) {
  #ss__content05 {
    padding: 0 13px;
  }
}

.circle {
  width: 60px;
  height: 60px;
  position: absolute;
  top: -30px;
  left: -30px;
  transform: translateX(-30px) translateY(-30px);
  pointer-events: none;
  z-index: 9999;
  -webkit-transition: opacity .2s ease-in-out;
  transition: opacity .2s ease-in-out;
  opacity: 0;
}

@media only screen and (max-width: 767px) {
  .circle {
    display: none;
  }
}

.circle.on {
  opacity: 1;
}

.circle img {
  -webkit-transition: opacity .2s ease-in-out;
  transition: opacity .2s ease-in-out;
  opacity: 0;
  max-width: 600px;
  max-height: 600px;
  position: absolute;
  left: 0;
  top: 0;
}

.circle img.on {
  opacity: 1;
}

.text-layout--container {
  width: 56.25%;
  padding-top: 50px;
}

.text-layout--container--no-pt {
  padding-top: 0;
}

@media only screen and (max-width: 767px) {
  .text-layout--container {
    width: 100%;
  }
}

.text-layout--container--center {
  margin-left: calc(12.5% * 2);
}

@media only screen and (max-width: 767px) {
  .text-layout--container--center {
    margin: 0;
    padding-left: 29px;
    padding-top: 20px;
  }
}

.text-layout--container--a .text-layout__inner>p {
  padding-bottom: 32px;
}

@media only screen and (max-width: 767px) {
  .text-layout--container--a .text-layout__inner>p {
    padding-bottom: 22px;
  }
}

.text-layout--container--a .text-layout__inner>.more-link {
  padding-bottom: 150px;
}

@media only screen and (max-width: 767px) {
  .text-layout--container--a .text-layout__inner>.more-link {
    padding-bottom: 50px;
  }
}

.text-layout--container--a .text-layout__ja p {
  padding-bottom: 32px;
}

@media only screen and (max-width: 767px) {
  .text-layout--container--a .text-layout__ja p {
    padding-bottom: 22px;
  }
}

.text-layout--container--a.text-layout--container--ja .text-layout__inner>p {
  padding-bottom: 0;
}

@media only screen and (max-width: 767px) {
  .text-layout--container--a.text-layout--container--ja .text-layout__inner>p {
    padding-bottom: 0;
  }
}

.text-layout--container--b.pb {
  padding-bottom: 50px;
}

@media only screen and (max-width: 767px) {
  .text-layout--container--b.pb {
    padding-bottom: 30px;
  }
}

.text-layout--container--b .text-layout__inner>p {
  padding-bottom: 80px;
}

@media only screen and (max-width: 767px) {
  .text-layout--container--b .text-layout__inner>p {
    padding-bottom: 50px;
  }
}

.text-layout--container--b.text-layout--container--ja .text-layout__inner>p {
  padding-bottom: 32px;
}

@media only screen and (max-width: 767px) {
  .text-layout--container--b.text-layout--container--ja .text-layout__inner>p {
    padding-bottom: 22px;
  }
}

.text-layout--container--b .text-layout__ja p {
  padding-bottom: 80px;
}

@media only screen and (max-width: 767px) {
  .text-layout--container--b .text-layout__ja p {
    padding-bottom: 50px;
  }
}

@media only screen and (max-width: 767px) {
  .text-layout--container--left {
    padding-left: 29px;
    padding-top: 20px;
    margin-left: 0;
  }
}

.text-layout--container--right {
  margin-left: calc(12.5% * 3);
}

@media only screen and (max-width: 767px) {
  .text-layout--container--right {
    padding-left: 29px;
    padding-top: 20px;
    margin-left: 0;
  }
}

.text-layout--container--left02 {
  margin-left: calc(12.5% * 1);
}

@media only screen and (max-width: 767px) {
  .text-layout--container--left02 {
    padding-left: 29px;
    padding-top: 20px;
    margin-left: 0;
  }
}

.text-layout__inner>h2 {
  font-size: 20px;
  font-size: 2rem;
  letter-spacing: 0.01em;
  line-height: 1.4;
  padding-bottom: 32px;
}

@media only screen and (max-width: 767px) {
  .text-layout__inner>h2 {
    font-size: 15px;
    font-size: 1.5rem;
    padding-bottom: 22px;
  }
}

.text-layout__inner>p {
  font-size: 17.8px;
  font-size: 1.78rem;
  letter-spacing: 0.01em;
  line-height: 1.47752809;
  max-width: 740px;
}

.text-layout__inner>p.ja {
  font-size: 16px;
  font-size: 1.6rem;
  letter-spacing: 0.01em;
  line-height: 1.6875;
}

@media only screen and (max-width: 767px) {
  .text-layout__inner>p.ja {
    font-size: 12px;
    font-size: 1.2rem;
  }
}

@media only screen and (max-width: 767px) {
  .text-layout__inner>p {
    font-size: 13px;
    font-size: 1.3rem;
    line-height: 1.923076923;
  }
}

.text-layout__ja {
  padding-top: 18px;
  max-width: 740px;
}

.text-layout__ja.pt-0 {
  padding-top: 0;
}

.text-layout__ja h2 {
  font-size: 16px;
  font-size: 1.6rem;
  letter-spacing: 0.01em;
  line-height: 1.4;
  padding-bottom: 18px;
}

.text-layout__ja p {
  font-size: 16px;
  font-size: 1.6rem;
  letter-spacing: 0.01em;
  line-height: 1.6875;
}

@media only screen and (max-width: 767px) {
  .text-layout__ja p {
    font-size: 12px;
    font-size: 1.2rem;
    line-height: 1.923076923;
  }
}

@media only screen and (max-width: 767px) {
  .theis {
    padding: 0 13px;
  }
}

.theis__inner {
  max-width: 960px;
  margin: auto;
}

.theis__title {
  padding-top: 217px;
}

@media only screen and (max-width: 767px) {
  .theis__title {
    padding-top: 128px;
  }
}

.theis__title h2 {
  text-align: center;
}

.theis__title h2 span,
.theis__title h2 small {
  display: block;
}

.theis__title h2 span {
  font-size: 32px;
  font-size: 3.2rem;
  font-family: ivypresto-display, serif;
  letter-spacing: 0.045em;
}

@media only screen and (max-width: 767px) {
  .theis__title h2 span {
    font-size: 21px;
    font-size: 2.1rem;
  }
}

.theis__title h2 small {
  font-size: 13px;
  font-size: 1.3rem;
  margin-top: 9px;
}

@media only screen and (max-width: 767px) {
  .theis__title h2 small {
    font-size: 11px;
    font-size: 1.1rem;
    margin-top: 10px;
  }
}

.theis__title>small {
  font-size: 13px;
  font-size: 1.3rem;
  margin-top: 21px;
  display: block;
  text-align: center;
}

@media only screen and (max-width: 767px) {
  .theis__title>small {
    font-size: 11px;
    font-size: 1.1rem;
  }
}

.theis__title p {
  margin-top: 28px;
  font-size: 19px;
  font-size: 1.9rem;
  letter-spacing: 0.005em;
  line-height: 2.101578947;
}

@media only screen and (max-width: 767px) {
  .theis__title p {
    margin-top: 26px;
  }
}

.theis__title p.jp-font {
  font-size: 15px;
  font-size: 1.5rem;
  letter-spacing: 0em;
  line-height: 2.133333333;
}

@media only screen and (max-width: 767px) {
  .theis__title p.jp-font {
    font-size: 13px;
    font-size: 1.3rem;
    line-height: 2.076923077;
  }
}

.theis__figure figure {
  padding-top: 80px;
}

@media only screen and (max-width: 767px) {
  .theis__figure figure {
    padding-top: 45px;
  }
}

.theis__figure figure img {
  width: 338px;
  margin: auto;
  display: block;
}

@media only screen and (max-width: 767px) {
  .theis__figure figure img {
    width: 100%;
  }
}

.theis__figure figure figcaption {
  padding-top: 30px;
  font-size: 12px;
  font-size: 1.2rem;
  line-height: 1.75;
  letter-spacing: 0.015em;
  max-width: 640px;
  margin: auto;
  text-align: center;
}

@media only screen and (max-width: 767px) {
  .theis__figure figure figcaption {
    padding-top: 15px;
    font-size: 10px;
    font-size: 1rem;
    letter-spacing: 0.01em;
    line-height: 1.4;
  }
}

.theis__story__box01 {
  padding-top: 80px;
}

@media only screen and (max-width: 767px) {
  .theis__story__box01 {
    padding-top: 66px;
  }
}

.theis__story__box01 h3 {
  font-size: 0;
}

.theis__story__box01 h3 span,
.theis__story__box01 h3 small {
  display: inline-block;
  vertical-align: middle;
}

.theis__story__box01 h3 span {
  font-size: 21px;
  font-size: 2.1rem;
  letter-spacing: 0.005em;
  font-family: ivypresto-display, serif;
  font-weight: 600;
  position: relative;
  top: -1px;
}

@media only screen and (max-width: 767px) {
  .theis__story__box01 h3 span {
    font-size: 16px;
    font-size: 1.6rem;
    letter-spacing: 0.05em;
  }
}

.theis__story__box01 h3 small {
  font-size: 17px;
  font-size: 1.7rem;
  margin-left: 38px;
}

@media only screen and (max-width: 767px) {
  .theis__story__box01 h3 small {
    font-size: 15px;
    font-size: 1.5rem;
    letter-spacing: 0em;
    margin-left: 0;
    display: block;
    margin-top: 10px;
  }
}

.theis__story__box01 p {
  font-size: 19px;
  font-size: 1.9rem;
  line-height: 2.133333333;
  margin-top: 12px;
}

@media only screen and (max-width: 767px) {
  .theis__story__box01 p {
    margin-top: 15px;
  }
}

.theis__story__box01 p.jp-font {
  font-size: 15px;
  font-size: 1.5rem;
}

@media only screen and (max-width: 767px) {
  .theis__story__box01 p.jp-font {
    font-size: 13px;
    font-size: 1.3rem;
    line-height: 2.076923077;
    letter-spacing: 0em;
  }
}

.theis__story__box02 {
  margin-top: 240px;
  border-top: 1px solid #CCCCCC;
  padding-top: 80px;
}

@media only screen and (max-width: 767px) {
  .theis__story__box02 {
    margin-top: 50px;
    padding-top: 26px;
  }
}

.theis__story__box02 h3 {
  font-size: 0;
}

.theis__story__box02 h3 span,
.theis__story__box02 h3 small {
  display: inline-block;
  vertical-align: middle;
}

.theis__story__box02 h3 span {
  font-size: 21px;
  font-size: 2.1rem;
  letter-spacing: 0.005em;
  font-family: ivypresto-display, serif;
  font-weight: 600;
  position: relative;
  top: -1px;
}

@media only screen and (max-width: 767px) {
  .theis__story__box02 h3 span {
    font-size: 17px;
    font-size: 1.7rem;
    letter-spacing: 0.05em;
  }
}

.theis__story__box02 h3 small {
  font-size: 17px;
  font-size: 1.7rem;
  margin-left: 38px;
}

@media only screen and (max-width: 767px) {
  .theis__story__box02 h3 small {
    font-size: 15px;
    font-size: 1.5rem;
    margin-left: 12px;
  }
}

.theis__story__box02 p {
  font-size: 19px;
  font-size: 1.9rem;
  line-height: 2.133333333;
  margin-top: 12px;
}

.theis__story__box02 p.jp-font {
  font-size: 15px;
  font-size: 1.5rem;
}

@media only screen and (max-width: 767px) {
  .theis__story__box02 p.jp-font {
    font-size: 13px;
    font-size: 1.3rem;
    margin-top: 15px;
  }
}

.theis__story__box03 {
  margin-top: 100px;
  border-top: 1px solid #CCCCCC;
  padding-top: 80px;
}

@media only screen and (max-width: 767px) {
  .theis__story__box03 {
    margin-top: 73px;
    padding-top: 28px;
  }
}

.theis__story__box03 h3 {
  font-size: 0;
}

.theis__story__box03 h3 span,
.theis__story__box03 h3 small {
  display: inline-block;
  vertical-align: middle;
}

.theis__story__box03 h3 span {
  font-size: 21px;
  font-size: 2.1rem;
  letter-spacing: 0.005em;
  font-family: ivypresto-display, serif;
  font-weight: 600;
  position: relative;
  top: -1px;
}

@media only screen and (max-width: 767px) {
  .theis__story__box03 h3 span {
    font-size: 17px;
    font-size: 1.7rem;
  }
}

.theis__story__box03 h3 small {
  font-size: 17px;
  font-size: 1.7rem;
  margin-left: 38px;
}

@media only screen and (max-width: 767px) {
  .theis__story__box03 h3 small {
    font-size: 15px;
    font-size: 1.5rem;
    margin-left: 9px;
  }
}

.theis__story__box03 p {
  font-size: 15px;
  font-size: 1.5rem;
  line-height: 1.666666667;
  margin-top: 12px;
}

@media only screen and (max-width: 767px) {
  .theis__story__box03 p {
    font-size: 13px;
    font-size: 1.3rem;
    line-height: 1.923076923;
  }
}

.theis__story__box03 p.jp-font {
  font-size: 15px;
  font-size: 1.5rem;
}

.theis .works-detail__changecolor-area {
  padding-top: 100px;
}

@media only screen and (max-width: 767px) {
  .theis .works-detail__changecolor-area {
    margin-bottom: 0;
    padding-bottom: 0;
  }
}

.theis .works-detail__changecolor-area__figures {
  padding-top: 0;
  margin-top: 0;
}

@media only screen and (max-width: 767px) {
  .theis .works-detail__changecolor-area__figures {
    margin-bottom: 0;
    padding-bottom: 40px;
  }
}

.two-column-layout__images {
  display: -webkit-flex;
  display: flex;
  -webkit-flex-wrap: wrap;
  flex-wrap: wrap;
  -webkit-justify-content: space-between;
  justify-content: space-between;
  padding-top: 50px;
  padding-bottom: 100px;
}

.two-column-layout__images.no-pt {
  padding-top: 0;
}

@media only screen and (max-width: 767px) {
  .two-column-layout__images {
    padding-top: 40px;
    padding-bottom: 20px;
  }
}

.two-column-layout__images__col {
  width: calc(50% - 6px);
}

@media only screen and (max-width: 767px) {
  .two-column-layout__images__col {
    width: 100%;
  }
}

.two-column-layout__images__col figure>a {
  display: block;
}

.two-column-layout__images__col figure>a img {
  width: 100%;
  display: block;
}

.two-column-layout__images__col figure figcaption {
  line-height: 1.4;
  font-size: 15px;
  font-size: 1.5rem;
  padding-top: 15px;
  padding-bottom: 40px;
}

@media only screen and (max-width: 767px) {
  .two-column-layout__images__col figure figcaption {
    font-size: 11px;
    font-size: 1.1rem;
  }
}

.two-column-layout__image-text__col {
  padding-bottom: 165px;
  padding-top: 50px;
}

.two-column-layout__image-text__col figure {
  display: -webkit-flex;
  display: flex;
  -webkit-flex-wrap: wrap;
  flex-wrap: wrap;
  -webkit-justify-content: space-between;
  justify-content: space-between;
  align-items: center;
}

.two-column-layout__image-text--image {
  position: relative;
  width: 50.78125%;
}

@media only screen and (max-width: 767px) {
  .two-column-layout__image-text--image {
    width: 100%;
  }
}

.two-column-layout__image-text--image a {
  display: block;
  width: 100%;
}

.two-column-layout__image-text--image a img {
  display: block;
}

.two-column-layout__image-text--image span {
  line-height: 1.4;
  font-size: 15px;
  font-size: 1.5rem;
  padding-top: 23px;
  padding-bottom: 80px;
}

@media only screen and (max-width: 767px) {
  .two-column-layout__image-text--image span {
    font-size: 11px;
    font-size: 1.1rem;
    display: block;
    padding-top: 12px;
    padding-bottom: 29px;
  }
}

@media only screen and (min-width: 768px) {
  .two-column-layout__image-text--image span {
    position: absolute;
    top: 100%;
    left: 0;
  }
}

.two-column-layout__image-text figcaption {
  width: 49.21875%;
  padding-left: 9.53125%;
  padding-right: 1.5625%;
}

@media only screen and (max-width: 767px) {
  .two-column-layout__image-text figcaption {
    padding: 0;
    width: 100%;
    padding-left: 29px;
  }
}

.two-column-layout__image-text figcaption p {
  font-size: 17.8px;
  font-size: 1.78rem;
  line-height: 1.460674157;
  letter-spacing: 0.01em;
}

@media only screen and (max-width: 767px) {
  .two-column-layout__image-text figcaption p {
    font-size: 13px;
    font-size: 1.3rem;
    line-height: 1.923076923;
  }
}

.works-detail {
  padding-top: 216px;
  padding-bottom: 290px;
}

@media only screen and (max-width: 767px) {
  .works-detail {
    padding-top: 120px;
    padding-bottom: 100px;
  }
}

.works-detail h2 {
  text-align: center;
  font-family: ivypresto-display, serif;
  font-size: 57px;
  font-size: 5.7rem;
  letter-spacing: 0.05em;
  line-height: 1.228070175;
}

@media only screen and (max-width: 767px) {
  .works-detail h2 {
    font-size: 21px;
    font-size: 2.1rem;
    letter-spacing: 0.045em;
  }
}

.works-detail__info {
  text-align: center;
}

.works-detail__info p {
  font-size: 14.39px;
  font-size: 1.439rem;
  line-height: 1.357142857;
  margin-top: 36px;
}

@media only screen and (max-width: 767px) {
  .works-detail__info p {
    margin-top: 14px;
    line-height: 1.384615385;
    font-size: 13px;
    font-size: 1.3rem;
    letter-spacing: 0.01em;
  }
}

.works-detail__info small {
  display: block;
  font-size: 14.39px;
  font-size: 1.439rem;
  line-height: 1.357142857;
  margin-top: 8px;
}

.works-detail__icatch {
  margin-top: 68px;
}

@media only screen and (max-width: 767px) {
  .works-detail__icatch {
    margin-top: 32px;
  }
}

.works-detail__icatch img {
  display: block;
  max-width: 960px;
  width: 100%;
  margin: auto;
}

.works-detail__description {
  margin: auto;
  margin-top: 36px;
  max-width: 640px;
}

@media only screen and (max-width: 767px) {
  .works-detail__description {
    margin-top: 20px;
  }
}

.works-detail__description p {
  text-align: center;
  font-size: 10.44px;
  font-size: 1.044rem;
  line-height: 1.35;
}

@media only screen and (max-width: 767px) {
  .works-detail__description p {
    line-height: 1.4;
  }
}

.works-detail__story {
  margin-left: -80px;
  width: calc(100% + 160px);
  background: #fff;
  padding: 190px 0;
}

@media only screen and (max-width: 767px) {
  .works-detail__story {
    padding: 100px 0;
    margin-left: -13px;
    width: calc(100% + 26px);
  }
}

.works-detail__story.on .works-detail__story--hide:before {
  background: #ededed;
  background: linear-gradient(180deg, rgba(237, 237, 237, 0) 0%, #ededed 100%);
}

.works-detail__story__inner {
  max-width: 882px;
  margin: auto;
}

@media only screen and (max-width: 767px) {
  .works-detail__story__inner {
    padding: 0 13px;
  }
}

.works-detail__story--hide {
  overflow: hidden;
  position: relative;
  -webkit-transition: height 0.6s;
  -moz-transition: height 0.6s;
  -o-transition: height 0.6s;
  transition: height 0.6s;
}

.works-detail__story--hide.active {
  -webkit-transition: height 0.6s;
  -moz-transition: height 0.6s;
  -o-transition: height 0.6s;
  transition: height 0.6s;
}

.works-detail__story--hide.open:before {
  height: 0;
}

.works-detail__story--hide:before {
  content: "";
  position: absolute;
  left: 0;
  bottom: 0;
  width: 100%;
  height: 80px;
  background: white;
  background: linear-gradient(180deg, rgba(255, 255, 255, 0) 0%, white 100%);
  -webkit-transition: all 0.6s;
  -moz-transition: all 0.6s;
  -o-transition: all 0.6s;
  transition: all 0.6s;
}

.works-detail__story--hide>h2 {
  font-size: 31px;
  font-size: 3.1rem;
  letter-spacing: 0.05em;
  line-height: 1.741935484;
  font-family: ivypresto-display, serif;
}

@media only screen and (max-width: 767px) {
  .works-detail__story--hide>h2 {
    font-size: 21px;
    font-size: 2.1rem;
  }
}

.works-detail__story--hide>span {
  font-size: 13px;
  font-size: 1.3rem;
  line-height: 1.615384615;
  display: block;
}

@media only screen and (max-width: 767px) {
  .works-detail__story--hide>span {
    font-size: 11.09px;
    font-size: 1.109rem;
  }
}

.works-detail__story__first-box {
  margin-top: 32px;
}

@media only screen and (max-width: 767px) {
  .works-detail__story__first-box {
    margin-top: 20px;
  }
}

.works-detail__story__first-box p {
  font-size: 22px;
  font-size: 2.2rem;
  letter-spacing: 0.055em;
  line-height: 1.454545455;
  font-family: ivypresto-display, serif;
}

@media only screen and (max-width: 767px) {
  .works-detail__story__first-box p {
    font-size: 17px;
    font-size: 1.7rem;
  }
}

.works-detail__story__second-box {
  font-size: 15px;
  font-size: 1.5rem;
  line-height: 1.733333333;
  letter-spacing: 0.015em;
}

@media only screen and (max-width: 767px) {
  .works-detail__story__second-box {
    font-size: 13px;
    font-size: 1.3rem;
  }
}

.works-detail__story__second-box b {
  display: block;
  margin-top: 28px;
}

.works-detail__story__second-box p {
  margin-top: 16px;
}

.works-detail__story__second-box a {
  width: 120px;
  display: block;
  background: #fff;
  border: 1px solid #231815;
  text-align: center;
  padding: 12px 0;
  margin-top: 20px;
  color: #231815;
}

@media only screen and (max-width: 767px) {
  .works-detail__story__second-box a {
    width: 100px;
  }
}

@media only screen and (min-width: 768px) {
  .works-detail__story__second-box a {
    -webkit-transition: color 0.6s, background-color 0.6s;
    -moz-transition: color 0.6s, background-color 0.6s;
    -o-transition: color 0.6s, background-color 0.6s;
    transition: color 0.6s, background-color 0.6s;
  }

  .works-detail__story__second-box a:hover {
    background: #231815;
    color: #fff;
  }
}

.works-detail__story--toggle {
  display: inline-block;
  font-size: 22px;
  font-size: 2.2rem;
  letter-spacing: 0.055em;
  font-family: ivypresto-display, serif;
  margin-top: 80px;
}

@media only screen and (max-width: 767px) {
  .works-detail__story--toggle {
    margin-top: 30px;
    font-size: 19px;
    font-size: 1.9rem;
  }
}

.works-detail__changecolor-area {
  padding-top: 300px;
  margin-left: -80px;
  width: calc(100% + 160px);
}

@media only screen and (max-width: 767px) {
  .works-detail__changecolor-area {
    padding: 110px 0;
    margin-left: -13px;
    width: calc(100% + 26px);
  }
}

.works-detail__changecolor-area .project-archive-list {
  padding: 0 80px;
  margin: auto;
  padding-top: 0;
  padding-bottom: 200px;
}

@media only screen and (max-width: 767px) {
  .works-detail__changecolor-area .project-archive-list {
    padding: 0 13px;
    padding-bottom: 100px;
  }
}

.works-detail__changecolor-area .project-archive-list ul {
  border-top: 1px solid #000;
}

.works-detail__changecolor-area .project-archive-list ul li {
  border-bottom: 1px solid #000;
}

.works-detail__changecolor-area .project-archive-list ul li a {
  position: relative;
}

.works-detail__changecolor-area .project-archive-list ul li a:hover:before,
.works-detail__changecolor-area .project-archive-list ul li a:hover:after {
  opacity: 1;
}

.works-detail__changecolor-area .project-archive-list ul li a:before,
.works-detail__changecolor-area .project-archive-list ul li a:after {
  -webkit-transition: opacity 0.4s;
  -moz-transition: opacity 0.4s;
  -o-transition: opacity 0.4s;
  transition: opacity 0.4s;
  opacity: 0;
}

.works-detail__changecolor-area .project-archive-list ul li a:before {
  content: "";
  position: absolute;
  right: 30px;
  width: 14px;
  height: 2px;
  background: #000;
  top: 4px;
  bottom: 0;
  margin: auto;
}

@media only screen and (max-width: 767px) {
  .works-detail__changecolor-area .project-archive-list ul li a:before {
    width: 12px;
  }
}

.works-detail__changecolor-area .project-archive-list ul li a:after {
  content: "";
  width: 8px;
  height: 8px;
  border-top: 2px solid #000;
  border-right: 2px solid #000;
  position: absolute;
  top: 4px;
  bottom: 0;
  right: 30px;
  margin: auto;
  -webkit-transform: rotate(45deg);
  -moz-transform: rotate(45deg);
  -ms-transform: rotate(45deg);
  -o-transform: rotate(45deg);
  transform: rotate(45deg);
}

@media only screen and (max-width: 767px) {
  .works-detail__changecolor-area .project-archive-list ul li a:after {
    width: 6px;
    height: 6px;
    top: 4px;
  }
}

.works-detail__changecolor-area .project-archive-list ul li a span {
  color: #000;
}

.works-detail__changecolor-area .project-archive-list.on ul {
  border-top: 1px solid #eee;
}

.works-detail__changecolor-area .project-archive-list.on ul li {
  border-bottom: 1px solid #eee;
}

.works-detail__changecolor-area .project-archive-list.on ul li a {
  color: #cccccc !important;
  position: relative;
}

.works-detail__changecolor-area .project-archive-list.on ul li a:hover:before,
.works-detail__changecolor-area .project-archive-list.on ul li a:hover:after {
  opacity: 1;
}

.works-detail__changecolor-area .project-archive-list.on ul li a:before,
.works-detail__changecolor-area .project-archive-list.on ul li a:after {
  -webkit-transition: opacity 0.4s;
  -moz-transition: opacity 0.4s;
  -o-transition: opacity 0.4s;
  transition: opacity 0.4s;
  opacity: 0;
}

.works-detail__changecolor-area .project-archive-list.on ul li a:before {
  content: "";
  position: absolute;
  right: 30px;
  width: 14px;
  height: 2px;
  background: #ccc;
  top: 4px;
  bottom: 0;
  margin: auto;
}

@media only screen and (max-width: 767px) {
  .works-detail__changecolor-area .project-archive-list.on ul li a:before {
    width: 12px;
  }
}

.works-detail__changecolor-area .project-archive-list.on ul li a:after {
  content: "";
  width: 8px;
  height: 8px;
  border-top: 2px solid #ccc;
  border-right: 2px solid #ccc;
  position: absolute;
  top: 4px;
  bottom: 0;
  right: 30px;
  margin: auto;
  -webkit-transform: rotate(45deg);
  -moz-transform: rotate(45deg);
  -ms-transform: rotate(45deg);
  -o-transform: rotate(45deg);
  transform: rotate(45deg);
}

@media only screen and (max-width: 767px) {
  .works-detail__changecolor-area .project-archive-list.on ul li a:after {
    width: 6px;
    height: 6px;
    top: 4px;
  }
}

.works-detail__changecolor-area .project-archive-list.on ul li a span {
  color: #cccccc !important;
}

.works-detail__changecolor-area.on {
  color: #cccccc !important;
  background: #0d0d0d;
}

.works-detail__changecolor-area__inner {
  max-width: 1260px;
  padding: 0 30px;
  margin: auto;
}

@media only screen and (max-width: 767px) {
  .works-detail__changecolor-area__inner {
    padding: 0 15px;
  }
}

.works-detail__changecolor-area--catch-image {
  max-width: 1000px;
  padding: 0 20px;
  margin: auto;
}

@media only screen and (max-width: 767px) {
  .works-detail__changecolor-area--catch-image {
    padding: 0;
  }
}

.works-detail__changecolor-area--catch-image img {
  display: block;
  width: 100%;
}

.works-detail__changecolor-area--catch-image p {
  font-size: 12px;
  font-size: 1.2rem;
  line-height: 1.25;
  letter-spacing: 0.015em;
  margin-top: 36px;
}

@media only screen and (max-width: 767px) {
  .works-detail__changecolor-area--catch-image p {
    margin-top: 88px;
  }
}

.works-detail__changecolor-area__figures {
  margin-top: 203px;
  margin-bottom: 180px;
  display: -webkit-flex;
  display: flex;
  -webkit-flex-wrap: wrap;
  flex-wrap: wrap;
  -webkit-justify-content: space-between;
  justify-content: space-between;
  align-items: flex-end;
}

@media only screen and (max-width: 767px) {
  .works-detail__changecolor-area__figures {
    margin-top: 53px;
    margin-bottom: 150px;
  }
}

.works-detail__changecolor-area__figures figure {
  width: 25.3333333%;
  margin-top: 97px;
}

@media only screen and (max-width: 767px) {
  .works-detail__changecolor-area__figures figure {
    width: 31.1428571%;
    margin-top: 47px;
  }
}

.works-detail__changecolor-area__figures figure img {
  display: block;
  width: 100%;
}

.works-detail__changecolor-area__figures figure figcaption {
  margin-top: 12px;
  font-size: 10.5px;
  font-size: 1.05rem;
  line-height: 1.238095238;
  letter-spacing: 0.015em;
}

@media only screen and (max-width: 767px) {
  .works-detail__changecolor-area__figures figure figcaption {
    display: none;
  }
}

.works-detail__change-caption figure {
  height: 100vh;
  /* 変数をサポートしていないブラウザのフォールバック */
  height: calc(var(--vh, 1vh) * 100);
  position: relative;
}

@media only screen and (min-width: 768px) {
  .works-detail__change-caption figure {
    min-height: 810px;
  }
}

.works-detail__change-caption figure img {
  position: absolute;
  max-width: 960px;
  max-height: 660px;
  top: 50%;
  left: 50%;
  -webkit-transform: translate(-50%, -50%);
  -moz-transform: translate(-50%, -50%);
  -ms-transform: translate(-50%, -50%);
  -o-transform: translate(-50%, -50%);
  transform: translate(-50%, -50%);
}

@media only screen and (max-width: 767px) {
  .works-detail__change-caption figure img {
    max-width: 100%;
    max-height: 80%;
  }
}

.works-detail__captions.on p {
  color: #cccccc;
}

.works-detail__captions p {
  display: none;
  position: fixed;
  z-index: 1;
  bottom: 55px;
  left: 55px;
  font-size: 12px;
  font-size: 1.2rem;
  line-height: 1.25;
  letter-spacing: 0.015em;
}

@media only screen and (max-width: 767px) {
  .works-detail__captions p {
    left: 13px;
    bottom: 30px;
  }
}

/* Below is the custom gradient styling. */
[data-readmore] {
  position: relative;
}

/* Set default styling of gradient.
   Note the height of 0. We'll transition the height, rather than the background. I think this makes for a smoother effect. This also has the added benefit of not overlaying the text at the bottom with an absolutely positioned pseudo-element—even if it is transparent—which could prevent text selection. */
[data-readmore]:before {
  content: '';
  width: 100%;
  height: 0;
  position: absolute;
  left: 0;
  bottom: 0;
  display: block;
  background: linear-gradient(rgba(0, 0, 0, 0), white);
  /* Be sure to use the same speed value as in your Readmore configuration, keeping in mind that CSS transition speed is stated in seconds. */
  transition: height .5s;
}

/* Set the height of the gradient to 80 when CLOSED */
[data-readmore][aria-expanded="false"]:before,
[data-readmore][aria-expanded="true"].transitioning:before {
  height: 80px;
}

/* This isn't strictly necessary, but I think it makes for a smoother effect. */
/* Set the height of the gradient to 0 when transitioning from CLOSED to OPEN */
[data-readmore][aria-expanded="false"].transitioning:before {
  height: 0;
}

.mot-page i {
  font-style: italic;
}

.mot-page__title {
  font-family: ivypresto-display, serif;
  padding-top: 130px;
}

.mot-page__title h1 {
  font-size: 36px;
  font-size: 3.6rem;
  letter-spacing: 0.045em;
}

@media only screen and (max-width: 767px) {
  .mot-page__title h1 {
    font-size: 24px;
    font-size: 2.2rem;
    line-height: 1.2;
  }
}

.mot-page__title p {
  padding-top: 16px;
  font-size: 23px;
  font-size: 2.3rem;
  letter-spacing: 0.045em;
}

@media only screen and (max-width: 767px) {
  .mot-page__title p {
    font-size: 17px;
    font-size: 1.7rem;
    line-height: 1.2;
    padding-top: 6px;
  }
}

.mot-page__title small {
  padding-top: 15px;
  display: block;
  font-size: 17px;
  font-size: 1.7rem;
  letter-spacing: 0.045em;
}

@media only screen and (max-width: 767px) {
  .mot-page__title small {
    font-size: 14px;
    font-size: 1.4rem;
    padding-top: 7px;
  }
}

.mot-page__left-img {
  width: 75%;
  margin: 0 0 100px 0;
  max-width: 960px;
}

@media only screen and (max-width: 767px) {
  .mot-page__left-img {
    width: 100%;
    margin: 0 0 50px 0;
  }
}

.mot-page__left-img>div figure>img {
  display: block;
}

.mot-page__left-img>div figure figcaption {
  font-size: 13px;
  font-size: 1.3rem;
  line-height: 1.4;
  padding-top: 14px;
}

@media only screen and (max-width: 767px) {
  .mot-page__left-img>div figure figcaption {
    font-size: 11px;
    font-size: 1.1rem;
    line-height: 1.2;
    padding-top: 12px;
  }
}

.mot-page__left-img>div figure figcaption i {
  font-style: italic;
}

.mot-page__left-img--02 {
  margin-top: 125px;
}

@media only screen and (max-width: 767px) {
  .mot-page__left-img--02 {
    margin-top: 25px;
  }
}

.mot-page__left-img--03 {
  margin-top: 0;
}

@media only screen and (max-width: 767px) {
  .mot-page__left-img--03 {
    margin-top: 25px;
  }
}


.mot-page__left-video {
  width: 75%;
  margin: 0 0 0 0;
  max-width: 960px;
  padding-bottom: 125px;
}

@media only screen and (max-width: 767px) {
  .mot-page__left-video {
    width: 100%;
    padding-bottom: 25px;
  }
}

.mot-page__left-video>div figure>video {
  display: block;
  width: 100%;
}

.mot-page__left-video>div figure figcaption {
  font-size: 13px;
  font-size: 1.3rem;
  line-height: 1.4;
  padding-top: 14px;
}

.mot-page__left-video>div figure figcaption i {
  font-style: italic;
}



.mot-page__right-img {
  width: 75%;
  margin: 0 0 178px auto;
  max-width: 960px;
}

@media only screen and (max-width: 767px) {
  .mot-page__right-img {
    width: 100%;
    margin: 0 0 50px auto;
  }
}

.mot-page__right-img>div figure>img {
  display: block;
}

.mot-page__right-img>div figure figcaption {
  font-size: 13px;
  font-size: 1.3rem;
  line-height: 1.4;
  padding-top: 14px;
}

@media only screen and (max-width: 767px) {
  .mot-page__right-img>div figure figcaption {
    font-size: 11px;
    font-size: 1.1rem;
    line-height: 1.2;
    padding-top: 12px;
  }
}

.mot-page__right-img>div figure figcaption i {
  font-style: italic;
}

.mot-page__right-img--02 {
  padding-top: 0;
  padding-bottom: 125px;
}

@media only screen and (max-width: 767px) {
  .mot-page__right-img--02 {
    padding-bottom: 25px;
  }
}

.mot-page__right-img--03 {
  width: 75%;
  padding-top: 124px;
  padding-bottom: 100px;
  margin: 0 0 0 auto;
  max-width: 960px;
}

@media only screen and (max-width: 767px) {
  .mot-page__right-img--03 {
    width: 100%;
    padding-top: 25px;
  }
}

.mot-page__right-img--03>div figure>img {
  display: block;
}

.mot-page__right-img--03>div figure figcaption {
  font-size: 13px;
  font-size: 1.3rem;
  line-height: 1.4;
  padding-top: 14px;
}

@media only screen and (max-width: 767px) {
  .mot-page__right-img--03>div figure figcaption {
    font-size: 11px;
    font-size: 1.1rem;
    line-height: 1.2;
    padding-top: 12px;
  }
}

.mot-page__right-img--03>div figure figcaption i {
  font-style: italic;
}

.mot-page__right-video {
  width: 75%;
  padding-top: 124px;
  padding-bottom: 200px;
  margin: 0 0 0 auto;
  max-width: 960px;
}

@media only screen and (max-width: 767px) {
  .mot-page__right-video {
    width: 100%;
    padding-top: 25px;
    padding-bottom: 80px;
  }
}

.mot-page__right-video>div figure>video {
  display: block;
  width: 100%;
}

.mot-page__right-video>div figure figcaption {
  font-size: 13px;
  font-size: 1.3rem;
  line-height: 1.4;
  padding-top: 14px;
}

@media only screen and (max-width: 767px) {
  .mot-page__right-video>div figure figcaption {
    font-size: 11px;
    font-size: 1.1rem;
    line-height: 1.2;
    padding-top: 12px;
  }
}

.mot-page__right-video>div figure figcaption i {
  font-style: italic;
}


.mot-page__outline {
  width: 75%;
  padding-top: 170px;
  margin: 0 auto 0 auto;
  max-width: 960px;
  padding-bottom: 160px;
}

@media only screen and (max-width: 767px) {
  .mot-page__outline {
    padding-top: 100px;
    width: 100%;
    padding-bottom: 60px;
  }
}

.mot-page__outline__inner {
  font-family: ivypresto-display, serif;
  padding-right: 160px;
}

@media only screen and (max-width: 767px) {
  .mot-page__outline__inner {
    padding-right: 0;
  }
}

.mot-page__outline__inner--02 {
  max-width: 800px;
  padding-right: 0;
}

.mot-page__outline__inner>h2 {
  font-size: 31px;
  font-size: 3.1rem;
  letter-spacing: 0.045em;
}

@media only screen and (max-width: 767px) {
  .mot-page__outline__inner>h2 {
    font-size: 20px;
    font-size: 2rem;
  }
}

.mot-page__outline__inner p {
  font-size: 20px;
  font-size: 2rem;
  letter-spacing: 0.05em;
  line-height: 1.55;
  margin-top: 32px;
}

@media only screen and (max-width: 767px) {
  .mot-page__outline__inner p {
    font-size: 16px;
    font-size: 1.6rem;
    margin-top: 24px;
  }
}

.mot-page__outline__inner p.mt-0 {
  margin-top: 0;
}

.mot-page__outline__inner small {
  display: block;
  font-size: 16px;
  font-size: 1.6rem;
  letter-spacing: 0.05em;
  color: #7a7a7a;
  margin-top: 32px;
  line-height: 1.5;
}

@media only screen and (max-width: 767px) {
  .mot-page__outline__inner small {
    font-size: 12px;
    font-size: 1.5rem;
    line-height: 1.5;
    margin-top: 24px;
  }
}

.mot-page__center-video {
  width: 75%;
  margin: 0 auto 0 auto;
  max-width: 640px;
  padding-bottom: 100px;
}

@media only screen and (max-width: 767px) {
  .mot-page__center-video {
    width: 100%;
  }
}
.mot-page__center-video figure>video {
  display: block;
  width: 100%;
}

.mot-page__center-video figure figcaption {
  font-size: 13px;
  font-size: 1.3rem;
  line-height: 1.4;
  padding-top: 14px;
}

@media only screen and (max-width: 767px) {
  .mot-page__center-video figure figcaption {
    font-size: 11px;
    font-size: 1.1rem;
    line-height: 1.2;
    padding-top: 12px;
  }
}

.mot-page__center-video figure figcaption i {
  font-style: italic;
}






.mot-page__center-video__02 {
  width: 75%;
  margin: 0 auto 0 auto;
  max-width: 960px;
  padding-bottom: 100px;
}

@media only screen and (max-width: 767px) {
  .mot-page__center-video__02 {
    width: 100%;
  }
}
.mot-page__center-video__02 figure>video {
  display: block;
  width: 100%;
}

.mot-page__center-video__02 figure figcaption {
  font-size: 13px;
  font-size: 1.3rem;
  line-height: 1.4;
  padding-top: 14px;
}

@media only screen and (max-width: 767px) {
  .mot-page__center-video__02 figure figcaption {
    font-size: 11px;
    font-size: 1.1rem;
    line-height: 1.2;
    padding-top: 12px;
  }
}

.mot-page__center-video__02 figure figcaption i {
  font-style: italic;
}







.mot-page__center-img {
  width: 75%;
  margin: 0 auto 178px auto;
  max-width: 960px;
}

@media only screen and (max-width: 767px) {
  .mot-page__center-img {
    width: 100%;
    margin: 0 auto 50px auto;
  }
}

.mot-page__center-img>div figure>img {
  display: block;
}

.mot-page__center-img>div figure figcaption {
  font-size: 13px;
  font-size: 1.3rem;
  line-height: 1.4;
  padding-top: 14px;
}

@media only screen and (max-width: 767px) {
  .mot-page__center-img>div figure figcaption {
    font-size: 11px;
    font-size: 1.1rem;
    line-height: 1.2;
    padding-top: 12px;
  }
}

.mot-page__center-img>div figure figcaption i {
  font-style: italic;
}

.mot-page__center-img--02 {
  padding-bottom: 0;
}

@media only screen and (max-width: 767px) {
  .mot-page__center-img--02 {
    padding-bottom: 0;
  }
}

.mot-page__center-img--02>div figure>img {
  display: block;
}

.mot-page__center-img--02>div figure figcaption {
  font-size: 13px;
  font-size: 1.3rem;
  line-height: 1.4;
  padding-top: 14px;
}

@media only screen and (max-width: 767px) {
  .mot-page__center-img--02>div figure figcaption {
    font-size: 11px;
    font-size: 1.1rem;
    line-height: 1.2;
    padding-top: 12px;
  }
}

.mot-page__center-img--02>div figure figcaption i {
  font-style: italic;
}

.mot-page__center-img--03 {
  padding-bottom: 0;
}

@media only screen and (max-width: 767px) {
  .mot-page__center-img--03 {
    padding-bottom: 0;
  }
}

@media only screen and (max-width: 767px) {
  .mot-page__center-img--03#mot-page__works10 {
    padding-bottom: 0;
  }
}

.mot-page__center-img--03 div figure img {
  max-width: 640px;
}

@media only screen and (max-width: 767px) {
  .mot-page__center-img--03 div figure img {
    width: 100%;
  }
}

.mot-page__center-img--04 {
  padding-bottom: 1px;
}

@media only screen and (max-width: 767px) {
  .mot-page__center-img--04 {
    padding-bottom: 0;
  }
}

.mot-page__center-img--04.mt {
  padding-top: 160px;
}

@media only screen and (max-width: 767px) {
  .mot-page__center-img--04.mt {
    padding-top: 60px;
  }
}

.mot-page__center-img--04 div {
  max-width: 640px;
  margin: 0 0 0 auto;
}

.mot-page__center-img--05 {
  padding-top: 125px;
  padding-bottom: 125px;
}

@media only screen and (max-width: 767px) {
  .mot-page__center-img--05 {
    padding-top: 25px;
    padding-bottom: 25px;
  }
}

.mot-page__center-img--05 div {
  max-width: 640px;
  margin: 0 auto 0 auto;
}

.mot-page__center-img--05 div figure video {
  width: 100%;
}

.mot-page__center-img--06 {
  padding-top: 125px;
  padding-bottom: 125px;
}

@media only screen and (max-width: 767px) {
  .mot-page__center-img--06 {
    padding-top: 25px;
    padding-bottom: 25px;
  }
}

.mot-page__center-img--06 div {
  max-width: 400px;
  margin: 0 auto 0 auto;
}

.mot-page__center-img--06 div figure video {
  width: 100%;
}

.mot-page__center-img--08 {
  width: 75%;
  margin: 0 auto 80px auto;
  max-width: 960px;
}

@media only screen and (max-width: 767px) {
  .mot-page__center-img--08 {
    width: 100%;
    margin: 0 auto 30px auto;
  }
}

.mot-page__center-img--08>div figure>img {
  display: block;
}

.mot-page__center-img--08>div figure figcaption {
  font-size: 13px;
  font-size: 1.3rem;
  line-height: 1.4;
  padding-top: 14px;
}

@media only screen and (max-width: 767px) {
  .mot-page__center-img--08>div figure figcaption {
    font-size: 11px;
    font-size: 1.1rem;
    line-height: 1.2;
    padding-top: 12px;
  }
}

.mot-page__center-img--08>div figure figcaption i {
  font-style: italic;
}





.mot-page__center-img--07 {
  padding-bottom: 140px;
}

@media only screen and (max-width: 767px) {
  .mot-page__center-img--07 {
    padding-bottom: 50px;
  }
}

.mot-page__center-img--07>div figure>img {
  display: block;
}

.mot-page__center-img--07>div figure figcaption {
  font-size: 13px;
  font-size: 1.3rem;
  line-height: 1.4;
  padding-top: 14px;
}

@media only screen and (max-width: 767px) {
  .mot-page__center-img--07>div figure figcaption {
    font-size: 11px;
    font-size: 1.1rem;
    line-height: 1.2;
    padding-top: 12px;
  }
}

.mot-page__center-img--07>div figure figcaption i {
  font-style: italic;
}





.mot-page__right-text {
  margin: 70px 0 100px auto;
  width: 74%;
  max-width: 960px;
  padding-left: 160px;
  font-weight: 100;
}

@media only screen and (max-width: 767px) {
  .mot-page__right-text {
    width: 100%;
    margin-top: 25px;
    padding-left: 0;
  }
}

.mot-page__right-text.mt-0 {
  margin-top: 0;
}

.mot-page__right-text p {
  font-size: 20px;
  font-size: 2rem;
  letter-spacing: 0.05em;
  line-height: 1.55;
  font-family: ivypresto-display, serif;
}

@media only screen and (max-width: 767px) {
  .mot-page__right-text p {
    font-size: 16px;
    font-size: 1.6rem;
  }
}

.mot-page__right-text small {
  display: block;
  font-size: 16px;
  font-size: 1.6rem;
  letter-spacing: 0.05em;
  line-height: 1.5;
  font-family: ivypresto-display, serif;
  padding-top: 15px;
  color: #7a7a7a;
}

@media only screen and (max-width: 767px) {
  .mot-page__right-text small {
    font-size: 12px;
    font-size: 1.5rem;
    line-height: 1.5;
    padding-top: 15px;
  }
}

.mot-page__right-text a.under {
  text-decoration: none;
  border-bottom: 1px solid #000000;
}

.mot-page__right-text--02 {
  margin: 178px 0 0 auto;
}

@media only screen and (max-width: 767px) {
  .mot-page__right-text--02 {
    margin-top: 25px;
  }
}

.mot-page__right-text--02 img {
  max-width: 620px;
}

@media only screen and (max-width: 767px) {
  .mot-page__right-text--02 img {
    width: 100%;
  }
}

.mot-page__right-text--03 {
  padding-bottom: 160px;
}

@media only screen and (max-width: 767px) {
  .mot-page__right-text--03 {
    padding-bottom: 60px;
  }
}

.mot-page__right-text--04 {
  margin-top: 0;
  padding-right: 160px;
  max-width: 1120px;
  width: 90%;
}

@media only screen and (max-width: 767px) {
  .mot-page__right-text--04 {
    padding-right: 0;
    width: 100%;
  }
}

.mot-page__right-text--04 .mot-page__text-interview__hide p {
  text-align: left;
}

.mot-page__right-text--interview .mot-page__text-interview--slider p {
  text-align: left;
}

.mot-page__right-text--interview p {
  color: #6a8b4b;
}

@media only screen and (max-width: 767px) {
  .mot-page__right-text--interview p {
    font-size: 20px;
    font-size: 2rem;
    line-height: 1.55;
  }
}

.mot-page__right-text--interview .mot-page__text-interview__read-more {
  text-align: left;
}

.mot-page__center-text {
  max-width: 583px;
  position: relative;
  left: 50%;
  font-weight: 100;
  -webkit-transform: translateX(-50%);
  -moz-transform: translateX(-50%);
  -ms-transform: translateX(-50%);
  -o-transform: translateX(-50%);
  transform: translateX(-50%);
}

.mot-page__center-text--02 {
  padding-top: 55px;
  padding-bottom: 178px;
}

@media only screen and (max-width: 767px) {
  .mot-page__center-text--02 {
    padding-bottom: 60px;
    padding-top: 32px;
  }
}

.mot-page__center-text--02 p {
  font-size: 20px;
  font-size: 2rem;
  letter-spacing: 0.05em;
  line-height: 1.55;
  font-family: ivypresto-display, serif;
  color: #7a7a7a;
}

@media only screen and (max-width: 767px) {
  .mot-page__center-text--02 p {
    font-size: 16px;
    font-size: 1.6rem;
  }
}

.mot-page__center-text--02 small {
  display: block;
  font-size: 16px;
  font-size: 1.6rem;
  letter-spacing: 0.05em;
  line-height: 1.5;
  font-family: ivypresto-display, serif;
  padding-top: 15px;
  color: #7a7a7a;
}

@media only screen and (max-width: 767px) {
  .mot-page__center-text--02 small {
    font-size: 12px;
    font-size: 1.5rem;
    line-height: 1.5;
    padding-top: 1px;
  }
}

.mot-page__center-text--02 .mot-page__more-link a span {
  color: #fff;
}

.mot-page__center-text--02 .mot-page__more-link a span:before {
  background: #fff;
}

.mot-page__center-text--02 .mot-page__project-title small {
  color: #fff;
}

.mot-page__left-text {
  margin: 0 0 130px 0;
  width: 74%;
  max-width: 960px;
  padding-left: 160px;
  font-weight: 100;
}

@media only screen and (max-width: 767px) {
  .mot-page__left-text {
    margin: 0 0 50px 0;
  }
}

@media only screen and (max-width: 767px) {
  .mot-page__left-text {
    width: 100%;
    margin-top: 25px;
    padding-left: 0;
  }
}

.mot-page__left-text.mt-0 {
  margin-top: 0;
}

.mot-page__left-text h1 {
  font-size: 25px;
  font-size: 2.5rem;
  letter-spacing: 0.05em;
  line-height: 1.55;
  font-family: ivypresto-display, serif;
  padding-bottom: 15px;
}

@media only screen and (max-width: 767px) {
  .mot-page__left-text h1 {
    font-size: 21px;
    font-size: 2.15rem;
    line-height: 1.3;
    padding-bottom: 8px;
  }
}

.mot-page__left-text p {
  font-size: 20px;
  font-size: 2rem;
  letter-spacing: 0.05em;
  line-height: 1.55;
  font-family: ivypresto-display, serif;
}

@media only screen and (max-width: 767px) {
  .mot-page__left-text p {
    font-size: 16px;
    font-size: 1.6rem;
  }
}

.mot-page__left-text p.mt {
  margin-top: 160px;
}

@media only screen and (max-width: 767px) {
  .mot-page__left-text p.mt {
    margin-top: 25px;
  }
}

.mot-page__left-text p.about {
  font-size: 17px;
  font-size: 1.7rem;
  letter-spacing: 0.05em;
  line-height: 1.65;
  font-family: ivypresto-display, serif;
}

@media only screen and (max-width: 767px) {
  .mot-page__left-text p.about {
    font-size: 16px;
    font-size: 1.6rem;
  }
}

.mot-page__left-text small {
  display: block;
  font-size: 16px;
  font-size: 1.6rem;
  letter-spacing: 0.01em;
  line-height: 1.5;
  padding-top: 30px;
  color: #7a7a7a;
  max-width: 550px;
}

@media only screen and (max-width: 767px) {
  .mot-page__left-text small {
    font-size: 12px;
    font-size: 1.5rem;
    line-height: 1.5;
    padding-top: 20px;
  }
}

.mot-page__left-text small.ss {
  display: block;
  font-size: 16px;
  font-size: 1.6rem;
  letter-spacing: 0.01em;
  line-height: 1.5;
  color: #7a7a7a;
  max-width: 550px;
}

@media only screen and (max-width: 767px) {
  .mot-page__left-text small.ss {
    font-size: 12px;
    font-size: 1.5rem;
    line-height: 1.5;
  }
}

.mot-page__left-text small.gray {
  display: block;
  font-size: 15px;
  font-size: 1.5rem;
  line-height: 1.5;
  padding-bottom: 10px;
  color: #7a7a7a;
  max-width: 550px;
  font-family: acumin-pro, sans-serif;
}

.mot-page__left-text--02 p {
  color: #7a7a7a;
  max-width: 550px;
}

.mot-page__left-text--02 .mot-page__more-link a span {
  color: #ffffff;
}

.mot-page__left-text--02 .mot-page__more-link a span:before {
  background: #fff;
}

.mot-page__left-text--02 .mot-page__project-title small {
  color: #fff;
}

.mot-page__left-text--03 {
  margin-top: 0;
}

@media only screen and (max-width: 767px) {
  .mot-page__left-text--03 {
    padding-bottom: 0;
  }
}

.mot-page__left-text--04 {
  margin-top: 0;
  padding-right: 160px;
  max-width: 1120px;
  width: 85%;
}

@media only screen and (max-width: 767px) {
  .mot-page__left-text--04 {
    width: 100%;
    padding-right: 0;
  }
}

.mot-page__left-text--04 .mot-page__text-interview__hide p {
  text-align: left;
}

.mot-page__left-text--interview p {
  color: #6a8b4b;
}

.mot-page__left-text--interview .mot-page__text-interview--slider p,
.mot-page__left-text--interview .mot-page__text-interview__read-more {
  text-align: left;
}

.mot-page__left-text ul li {
  padding: 25px 0 70px 0;
}

.mot-page__left-text ul li a {
  display: inline-block;
  border: 1px solid #000;
  padding: 18px 30px;
  font-family: ivypresto-display, serif;
  font-size: 17px;
  font-size: 1.7rem;
  letter-spacing: 0.05em;
  transition: .3s;
}

@media only screen and (max-width: 767px) {
  .mot-page__left-text ul li a {
    border: 0.5px solid #000;
    font-size: 14px;
    font-size: 1.4rem;
  }
}

.mot-page__left-text ul li a:hover {
  color: #fff;
  background: #000;
}

.mot-page__more-link {
  margin-top: 25px;
}

@media only screen and (max-width: 767px) {
  .mot-page__more-link {
    margin-top: 24px;
  }
}

.mot-page__more-link a {
  display: inline-block;
}

@media only screen and (min-width: 768px) {
  .mot-page__more-link a:hover span:before {
    width: 0;
  }
}

.mot-page__more-link a span {
  font-size: 16px;
  font-size: 1.6rem;
  letter-spacing: 0.075em;
  font-family: ivypresto-display, serif;
  position: relative;
  display: block;
  padding-bottom: 4px;
}

@media only screen and (max-width: 767px) {
  .mot-page__more-link a span {
    font-size: 14px;
    font-size: 1.4rem;
  }
}

.mot-page__more-link a span:before {
  content: "";
  position: absolute;
  left: 0;
  bottom: 0;
  width: 100%;
  height: 1px;
  background: #000;
  -webkit-transition: width 0.3s;
  -moz-transition: width 0.3s;
  -o-transition: width 0.3s;
  transition: width 0.3s;
}

.mot-page__img-vertical-center {
  display: -webkit-flex;
  display: flex;
  -webkit-flex-wrap: wrap;
  flex-wrap: wrap;
  -webkit-justify-content: space-between;
  justify-content: space-between;
  align-items: center;
  padding-top: 200px;
}

@media only screen and (max-width: 767px) {
  .mot-page__img-vertical-center {
    padding-top: 100px;
  }
}

.mot-page__img-vertical-center>div:nth-child(1) {
  width: 50.78125%;
}

@media only screen and (max-width: 767px) {
  .mot-page__img-vertical-center>div:nth-child(1) {
    width: 100%;
  }
}

.mot-page__img-vertical-center>div:nth-child(1) figure {
  position: relative;
}

.mot-page__img-vertical-center>div:nth-child(1) figure figcaption {
  position: absolute;
  top: 100%;
  left: 0;
  width: 100%;
  font-size: 13px;
  font-size: 1.3rem;
  line-height: 1.4;
  padding-top: 14px;
}

.mot-page__img-vertical-center>div:nth-child(1) figure figcaption i {
  font-style: italic;
}

.mot-page__img-vertical-center>div:nth-child(2) {
  width: 39.6875%;
  max-width: 508px;
  font-family: ivypresto-display, serif;
}

@media only screen and (max-width: 767px) {
  .mot-page__img-vertical-center>div:nth-child(2) {
    width: 100%;
    margin-top: 90px;
  }
}

.mot-page__img-vertical-center>div:nth-child(2)>p {
  font-size: 20px;
  font-size: 2rem;
  line-height: 1.55;
  letter-spacing: 0.05em;
}

@media only screen and (max-width: 767px) {
  .mot-page__img-vertical-center>div:nth-child(2)>p {
    font-size: 16px;
    font-size: 1.6rem;
  }
}

.mot-page__img-vertical-center>div:nth-child(2)>small {
  display: block;
  font-size: 12px;
  font-size: 1.6rem;
  letter-spacing: 0.05em;
  line-height: 1.5;
  padding-top: 15px;
  color: #7a7a7a;
}

.mot-page__img-vertical-center>div:nth-child(2)>strong {
  display: block;
  font-size: 20px;
  font-size: 2rem;
  letter-spacing: 0.05em;
  line-height: 1.55;
  padding-top: 32px;
  color: #7a7a7a;
}

@media only screen and (max-width: 767px) {
  .mot-page__img-vertical-center>div:nth-child(2)>strong {
    font-size: 16px;
    font-size: 1.6rem;
    margin-top: 24px;
  }
}

.mot-page__img-vertical-center--02 {
  padding-top: 5px;
}

@media only screen and (max-width: 767px) {
  .mot-page__img-vertical-center--02 {
    padding-top: 32px;
  }
}

.mot-page__anchors {
  margin: auto;
  margin-top: 111px;
  padding-top: 71px;
}

@media only screen and (max-width: 767px) {
  .mot-page__anchors {
    margin-top: 60px;
    padding-top: 60px;
  }
}

.mot-page__anchors ul {
  text-align: center;
}

.mot-page__anchors ul li {
  display: inline-block;
  vertical-align: middle;
  margin: 0 13px;
  margin-top: 19px;
}

@media only screen and (max-width: 767px) {
  .mot-page__anchors ul li {
    margin: 0 10px;
    margin-top: 14px;
  }
}

.mot-page__anchors ul li a {
  display: block;
  text-align: left;
}

.mot-page__anchors ul li a small,
.mot-page__anchors ul li a span {
  display: block;
}

.mot-page__anchors ul li a small {
  font-size: 10px;
  font-size: 1rem;
  font-weight: bold;
  letter-spacing: 0.01em;
}

.mot-page__anchors ul li a span {
  display: block;
  font-size: 17.73px;
  font-size: 1.773rem;
  letter-spacing: 0.01em;
  color: #a6a6a6;
  margin-top: 2px;
  -webkit-transition: color 0.3s;
  -moz-transition: color 0.3s;
  -o-transition: color 0.3s;
  transition: color 0.3s;
}

@media only screen and (max-width: 767px) {
  .mot-page__anchors ul li a span {
    font-size: 12px;
    font-size: 1.2rem;
  }
}

@media only screen and (min-width: 768px) {
  .mot-page__anchors ul li a:hover span {
    color: #000;
  }
}

.mot-page__project-title {
  margin: 8px 0 10px 0;
}

@media only screen and (max-width: 767px) {
  .mot-page__project-title {
    margin-top: 32px;
  }
}

.mot-page__project-title small,
.mot-page__project-title span {
  display: block;
  font-family: acumin-pro, Koburina Gothic W3 JIS2004, "游ゴシック", YuGothic, "Hiragino Sans", "ヒラギノ角ゴ Pro", "Hiragino Kaku Gothic Pro", "メイリオ", "Meiryo", sans-serif;
}

.mot-page__project-title small {
  font-size: 12px;
  font-size: 1.2rem;
  font-weight: bold;
  letter-spacing: 0.01em;
  padding-top: 15px;
  color: #a6a6a6;
}

@media only screen and (max-width: 767px) {
  .mot-page__project-title small {
    font-size: 11px;
    font-size: 1.1rem;
  }
}

.mot-page__project-title span {
  display: block;
  font-size: 14px;
  font-size: 1.4rem;
  letter-spacing: 0.01em;
  color: #a6a6a6;
  margin-top: 7px;
}

@media only screen and (max-width: 767px) {
  .mot-page__project-title span {
    font-size: 14px;
    font-size: 1.4rem;
    margin-top: 4px;
    line-height: 2rem;
  }
}

.mot-page__project-title a.under {
  text-decoration: none;
  border-bottom: 1px solid #a6a6a6;
}


.mot-page__project-title__2 {
  margin-top: 200px;
  margin-bottom: 10px;
}

@media only screen and (max-width: 767px) {
  .mot-page__project-title__2 {
    margin-top: 32px;
  }
}

.mot-page__project-title__2 small,
.mot-page__project-title__2 span {
  display: block;
  font-family: acumin-pro, Koburina Gothic W3 JIS2004, "游ゴシック", YuGothic, "Hiragino Sans", "ヒラギノ角ゴ Pro", "Hiragino Kaku Gothic Pro", "メイリオ", "Meiryo", sans-serif;
}

.mot-page__project-title__2 small {
  font-size: 12px;
  font-size: 1.2rem;
  font-weight: bold;
  letter-spacing: 0.01em;
  padding-top: 15px;
  color: #a6a6a6;
}

@media only screen and (max-width: 767px) {
  mot-page__project-title__2 small {
    font-size: 11px;
    font-size: 1.1rem;
  }
}

.mot-page__project-title__2 span {
  display: block;
  font-size: 16px;
  font-size: 1.6rem;
  letter-spacing: 0.01em;
  color: #a6a6a6;
  margin-top: 7px;
}

@media only screen and (max-width: 767px) {
  .mot-page__project-title__2 span {
    font-size: 14px;
    font-size: 1.4rem;
    margin-top: 4px;
  }
}

.mot-page__project-title__2 a.under {
  text-decoration: none;
  border-bottom: 1px solid #a6a6a6;
}


.mot-page__center-half {
  display: -webkit-flex;
  display: flex;
  -webkit-flex-wrap: wrap;
  flex-wrap: wrap;
  -webkit-justify-content: space-between;
  justify-content: space-between;
}

.mot-page__center-half>div {
  width: 50%;
}

@media only screen and (max-width: 767px) {
  .mot-page__center-half>div {
    width: 100%;
  }
}

.mot-page__center-half>div div {
  position: relative;
  overflow: hidden;
}

.mot-page__center-half>div div video {
  position: absolute;
  left: 50%;
  top: 50%;
  width: 100%;
  -webkit-transform: translate(-50%, -50%);
  -moz-transform: translate(-50%, -50%);
  -ms-transform: translate(-50%, -50%);
  -o-transform: translate(-50%, -50%);
  transform: translate(-50%, -50%);
}

.mot-page__center-half>div:nth-child(1) {
  padding-right: 6px;
}

@media only screen and (max-width: 767px) {
  .mot-page__center-half>div:nth-child(1) {
    padding-right: 0;
  }
}

.mot-page__center-half>div:nth-child(2) {
  padding-left: 6px;
}

@media only screen and (max-width: 767px) {
  .mot-page__center-half>div:nth-child(2) {
    padding-left: 0;
    padding-top: 50px;
  }
}

.mot-page__center-half>div:nth-child(2) figure img {
  opacity: 0;
}

.mot-page__center-half>div figure figcaption {
  font-size: 13px;
  font-size: 1.3rem;
  line-height: 1.4;
  padding-top: 14px;
  color: #fff;
}

@media only screen and (max-width: 767px) {
  .mot-page__center-half>div figure figcaption {
    font-size: 11px;
    font-size: 1.1rem;
    line-height: 1.2;
    padding-top: 12px;
  }
}

.mot-page__center-half>div figure figcaption i {
  font-style: italic;
}

.mot-page__center-half--02 {
  padding-bottom: 178px;
}

@media only screen and (max-width: 767px) {
  .mot-page__center-half--02 {
    padding-bottom: 50px;
  }
}

.mot-page__center-half--02>div:nth-child(2) figure img {
  opacity: 1;
}

.mot-page__center-half--02>div figure figcaption {
  color: #000;
}

.mot-page__center-half--03 {
  padding-bottom: 125px;
  padding-top: 10px;
}

@media only screen and (max-width: 767px) {
  .mot-page__center-half--03 {
    padding-bottom: 50px;
  }
}

.mot-page__center-half--03>div:nth-child(2) figure img {
  opacity: 1;
}

.mot-page__center-half--03>div figure figcaption {
  color: #000;
}


.mot-page__left-right-text-image--03 {
  display: -webkit-flex;
  display: flex;
  -webkit-flex-wrap: wrap;
  flex-wrap: wrap;
  -webkit-justify-content: space-between;
  justify-content: space-between;
  align-items: flex-start;
  padding-bottom: 140px;
}

@media only screen and (max-width: 767px) {
  .mot-page__left-right-text-image--03 {
    padding-bottom: 50px;
  }
}

.mot-page__left-right-text-image--03>div:nth-child(1) {
  width: 62.5%;
}

@media only screen and (max-width: 767px) {
  .mot-page__left-right-text-image--03>div:nth-child(1) {
    width: 100%;
  }
}

.mot-page__left-right-text-image--03>div:nth-child(1) p {
  font-size: 20px;
  font-size: 2rem;
  letter-spacing: 0.05em;
  line-height: 1.55;
  font-family: ivypresto-display, serif;
  font-weight: 100;
}

@media only screen and (max-width: 767px) {
  .mot-page__left-right-text-image--03>div:nth-child(1) p {
    font-size: 16px;
    font-size: 1.6rem;
  }
}

.mot-page__left-right-text-image--03>div:nth-child(1) p.mt {
  margin-top: 10px;
}

@media only screen and (max-width: 767px) {
  .mot-page__left-right-text-image--03>div:nth-child(1) p.mt {
    margin-top: 60px;
  }
}

.mot-page__left-right-text-image--03>div:nth-child(1) small {
  display: block;
  font-size: 16px;
  font-size: 1.6rem;
  letter-spacing: 0.05em;
  line-height: 1.5;
  font-family: ivypresto-display, serif;
  padding-top: 15px;
  color: #7a7a7a;
}

@media only screen and (max-width: 767px) {
  .mot-page__left-right-text-image--03>div:nth-child(1) small {
    font-size: 12px;
    font-size: 1.5rem;
    line-height: 1.5;
    padding-top: 1px;
  }
}

.mot-page__left-right-text-image--03>div:nth-child(2) {
  width: 37.5%;
  padding-left: 123px;
}

@media only screen and (max-width: 767px) {
  .mot-page__left-right-text-image--03>div:nth-child(2) {
    width: 100%;
    margin-top: 30px;
    font-size: 16px;
    font-size: 1.6rem;
    padding-left: 0;
  }
}

.mot-page__left-right-text-image--03>div:nth-child(2) figure img {
  max-width: 100%;
}

.mot-page__left-right-text-image--03>div:nth-child(2) figure figcaption {
  font-size: 13px;
  font-size: 1.3rem;
  line-height: 1.4;
  padding-top: 14px;
}

@media only screen and (max-width: 767px) {
  .mot-page__left-right-text-image--03>div:nth-child(2) figure figcaption {
    font-size: 11px;
    font-size: 1.1rem;
    line-height: 1.2;
    padding-top: 12px;
  }
}

.mot-page__left-right-text-image--03>div:nth-child(2) figure figcaption i {
  font-style: italic;
}






.mot-page .change-color--01 {
  margin-left: -80px;
  width: calc(100% + 160px);
  margin-top: 186px;
  padding-top: 220px;
  padding-left: 80px;
  padding-right: 80px;
}

@media only screen and (max-width: 767px) {
  .mot-page .change-color--01 {
    width: calc(100% + 26px);
    margin-top: 60px;
    padding-top: 120px;
    margin-left: -13px;
    padding-left: 13px;
    padding-right: 13px;
  }
}

.mot-page .change-color--02 {
  margin-left: -80px;
  width: calc(100% + 160px);
  margin-top: 186px;
  padding-top: 233px;
  padding-left: 80px;
  padding-right: 80px;
}

@media only screen and (max-width: 767px) {
  .mot-page .change-color--02 {
    width: calc(100% + 26px);
    margin-top: 60px;
    padding-top: 120px;
    margin-left: -13px;
    padding-left: 13px;
    padding-right: 13px;
  }
}



.mot-page .change-color--03 {
  margin-left: -80px;
  width: calc(100% + 160px);
  margin-top: 10px;
  padding-top: 8px;
  padding-left: 80px;
  padding-right: 80px;
}

@media only screen and (max-width: 767px) {
  .mot-page .change-color--03 {
    width: calc(100% + 26px);
    margin-top: 10px;
    padding-top: 5px;
    margin-left: -13px;
    padding-left: 13px;
    padding-right: 13px;
  }
}


.mot-page .change-color--04 {
  margin-left: -80px;
  width: calc(100% + 160px);
  margin-top: 186px;
  padding-top: 233px;
  padding-left: 80px;
  padding-right: 80px;
}

@media only screen and (max-width: 767px) {
  .mot-page .change-color--04 {
    width: calc(100% + 26px);
    margin-top: 60px;
    padding-top: 120px;
    margin-left: -13px;
    padding-left: 13px;
    padding-right: 13px;
  }
}

.mot-page .change-color--05 {
  margin-left: -80px;
  width: calc(100% + 160px);
  margin-top: 186px;
  padding-top: 233px;
  padding-left: 80px;
  padding-right: 80px;
}

@media only screen and (max-width: 767px) {
  .mot-page .change-color--05 {
    width: calc(100% + 26px);
    margin-top: 60px;
    padding-top: 120px;
    margin-left: -13px;
    padding-left: 13px;
    padding-right: 13px;
  }
}


/* .mot-page .change-color--04 {
  margin-left: -80px;
  width: calc(100% + 160px);
  margin-top: 125px;
  padding-top: 295px;
  padding-left: 80px;
  padding-right: 80px; }
  @media only screen and (max-width: 767px) {
    .mot-page .change-color--04 {
      width: calc(100% + 26px);
      margin-top: 60px;
      padding-top: 120px;
      margin-left: -13px;
      padding-left: 13px;
      padding-right: 13px; } }

.mot-page .change-color--05 {
  margin-left: -80px;
  width: calc(100% + 160px);
  margin-top: 125px;
  padding-top: 295px;
  padding-left: 80px;
  padding-right: 80px; }
  @media only screen and (max-width: 767px) {
    .mot-page .change-color--05 {
      width: calc(100% + 26px);
      margin-top: 0px;
      padding-top: 120px;
      margin-left: -13px;
      padding-left: 13px;
      padding-right: 13px; } }

.mot-page .change-color--06 {
  margin-left: -80px;
  width: calc(100% + 160px);
  margin-top: 180px;
  padding-top: 295px;
  padding-left: 80px;
  padding-right: 80px; }
  @media only screen and (max-width: 767px) {
    .mot-page .change-color--06 {
      width: calc(100% + 26px);
      margin-top: 60px;
      padding-top: 80px;
      margin-left: -13px;
      padding-left: 13px;
      padding-right: 13px; } } */

.mot-page__special-row {
  max-width: 960px;
  margin: auto;
  margin-top: 20px;
  margin-bottom: 200px;
}

@media only screen and (max-width: 767px) {
  .mot-page__special-row {
    margin-top: 80px;
  }
}

.mot-page__special-row div {
  padding-top: 28.6757039%;
  position: relative;
}

@media only screen and (max-width: 767px) {
  .mot-page__special-row div {
    padding-top: 75%;
  }
}

.mot-page__special-row div img {
  position: absolute;
}

.mot-page__special-row div img:nth-child(1) {
  left: 0;
  top: 0;
  max-width: 185px;
}

@media only screen and (max-width: 767px) {
  .mot-page__special-row div img:nth-child(1) {
    max-width: 110px;
  }
}

.mot-page__special-row div img:nth-child(2) {
  bottom: 6px;
  left: 50%;
  -webkit-transform: translateX(-50%);
  -moz-transform: translateX(-50%);
  -ms-transform: translateX(-50%);
  -o-transform: translateX(-50%);
  transform: translateX(-50%);
  max-width: 125px;
}

@media only screen and (max-width: 767px) {
  .mot-page__special-row div img:nth-child(2) {
    bottom: 31%;
    left: 49%;
    max-width: 95px;
  }
}

.mot-page__special-row div img:nth-child(3) {
  right: 0;
  top: 50%;
  -webkit-transform: translateY(-50%);
  -moz-transform: translateY(-50%);
  -ms-transform: translateY(-50%);
  -o-transform: translateY(-50%);
  transform: translateY(-50%);
  max-width: 185px;
}

@media only screen and (max-width: 767px) {
  .mot-page__special-row div img:nth-child(3) {
    top: 30%;
    max-width: 110px;
  }
}

.mot-page__special-row div p {
  position: absolute;
  left: 0;
  bottom: 0;
  font-size: 12px;
  font-size: 1.2rem;
  line-height: 1.75;
  letter-spacing: 0.01em;
  color: #a6a6a6;
}

.mot-page__left-right-text-image {
  display: -webkit-flex;
  display: flex;
  -webkit-flex-wrap: wrap;
  flex-wrap: wrap;
  -webkit-justify-content: space-between;
  justify-content: space-between;
  align-items: flex-start;
}

.mot-page__left-right-text-image>div:nth-child(1) {
  width: 62.5%;
}

@media only screen and (max-width: 767px) {
  .mot-page__left-right-text-image>div:nth-child(1) {
    width: 100%;
  }
}

.mot-page__left-right-text-image>div:nth-child(1) p {
  font-size: 20px;
  font-size: 2rem;
  letter-spacing: 0.05em;
  line-height: 1.55;
  font-family: ivypresto-display, serif;
}

@media only screen and (max-width: 767px) {
  .mot-page__left-right-text-image>div:nth-child(1) p {
    font-size: 16px;
    font-size: 1.6rem;
  }
}

.mot-page__left-right-text-image>div:nth-child(1) p.mt {
  margin-top: 10px;
}

@media only screen and (max-width: 767px) {
  .mot-page__left-right-text-image>div:nth-child(1) p.mt {
    margin-top: 60px;
  }
}

.mot-page__left-right-text-image>div:nth-child(1) small {
  display: block;
  font-size: 16px;
  font-size: 1.6rem;
  letter-spacing: 0.05em;
  line-height: 1.5;
  font-family: ivypresto-display, serif;
  padding-top: 15px;
  color: #7a7a7a;
}

@media only screen and (max-width: 767px) {
  .mot-page__left-right-text-image>div:nth-child(1) small {
    font-size: 12px;
    font-size: 1.5rem;
    line-height: 1.5;
    padding-top: 1px;
  }
}

.mot-page__left-right-text-image>div:nth-child(2) {
  width: 37.5%;
  padding-left: 123px;
}

@media only screen and (max-width: 767px) {
  .mot-page__left-right-text-image>div:nth-child(2) {
    width: 100%;
    margin-top: 64px;
    font-size: 16px;
    font-size: 1.6rem;
    padding-left: 0;
  }
}

.mot-page__left-right-text-image>div:nth-child(2) figure img {
  max-width: 50%;
}

.mot-page__left-right-text-image>div:nth-child(2) figure figcaption {
  font-size: 13px;
  font-size: 1.3rem;
  line-height: 1.4;
  padding-top: 14px;
}

@media only screen and (max-width: 767px) {
  .mot-page__left-right-text-image>div:nth-child(2) figure figcaption {
    font-size: 11px;
    font-size: 1.1rem;
    line-height: 1.2;
    padding-top: 12px;
  }
}

.mot-page__left-right-text-image>div:nth-child(2) figure figcaption i {
  font-style: italic;
}

.mot-page__left-right-text-image--02 {
  padding-bottom: 160px;
}

@media only screen and (max-width: 767px) {
  .mot-page__left-right-text-image--02 {
    padding-bottom: 60px;
  }
}

.mot-page__text-interview {
  max-width: 800px;
  margin: auto;
}

.mot-page__text-interview>h2 span,
.mot-page__text-interview>h2 small {
  display: block;
  text-align: center;
}

.mot-page__text-interview>h2 span {
  font-size: 26px;
  font-size: 2.6rem;
  letter-spacing: 0.045em;
  font-family: ivypresto-display, serif;
  color: #5c5c5c;
}

.mot-page__text-interview>h2 small {
  font-size: 12px;
  font-size: 1.2rem;
  letter-spacing: 0.025em;
  margin-top: 10px;
  color: #989898;
}

.mot-page__text-interview>p {
  font-family: ivypresto-display, serif;
  color: #6a8b4b;
  font-size: 20px;
  font-size: 2rem;
  line-height: 1.55;
  text-align: center;
  letter-spacing: 0.05em;
}

.mot-page__text-interview--slider p {
  font-family: ivypresto-display, serif;
  color: #6a8b4b;
  font-size: 20px;
  font-size: 2rem;
  line-height: 1.55;
  text-align: center;
  letter-spacing: 0.05em;
}

.mot-page__text-interview--slider--whole {
  margin-top: 102px;
}

.mot-page__text-interview--slider--whole--02 {
  margin-top: 125px;
}

.mot-page__text-interview--slider--whole.mt-0 {
  margin-top: 0;
}

.mot-page__text-interview__read-more {
  text-align: center;
  margin-top: 20px;
}

@media only screen and (max-width: 767px) {
  .mot-page__text-interview__read-more {
    margin-top: 20px;
  }
}

.mot-page__text-interview__read-more>a {
  display: inline-block;
}

@media only screen and (min-width: 768px) {
  .mot-page__text-interview__read-more>a:hover span {
    top: 6px;
  }
}

.mot-page__text-interview__read-more>a span {
  width: 14px;
  height: 14px;
  display: block;
  margin: auto;
  border-right: 1px solid #000;
  border-bottom: 1px solid #000;
  -webkit-transform: rotate(45deg);
  -moz-transform: rotate(45deg);
  -ms-transform: rotate(45deg);
  -o-transform: rotate(45deg);
  transform: rotate(45deg);
  -webkit-transition: top 0.3s;
  -moz-transition: top 0.3s;
  -o-transition: top 0.3s;
  transition: top 0.3s;
  position: relative;
  top: 0;
}

.mot-page__text-interview__read-more>strong {
  display: block;
  font-size: 19px;
  font-size: 1.9rem;
  letter-spacing: 0.045em;
  line-height: 1.4;
  font-family: ivypresto-display, serif;
  color: #5c5c5c;
  margin-top: 24px;
}

.mot-page__text-interview__read-more>small {
  display: block;
  font-size: 12px;
  font-size: 1.2rem;
  letter-spacing: 0.025em;
  line-height: 1.416666667;
  margin-top: 14px;
  color: #989898;
  font-family: 'acumin-pro';
}

@media only screen and (min-width: 768px) {
  .mot-page__text-interview__read-more>div a:hover span:before {
    width: 0;
  }
}

.mot-page__text-interview__read-more>div a span {
  font-size: 19px;
  font-size: 1.9rem;
  letter-spacing: 0.045em;
  font-family: ivypresto-display, serif;
  color: #5c5c5c;
  margin-top: 24px;
  padding-bottom: 2px;
  position: relative;
  display: inline-block;
}

.mot-page__text-interview__read-more>div a span:before {
  content: "";
  width: 100%;
  height: 1px;
  background: #5c5c5c;
  position: absolute;
  left: 0;
  bottom: 0;
  -webkit-transition: width 0.3s;
  -moz-transition: width 0.3s;
  -o-transition: width 0.3s;
  transition: width 0.3s;
}

.mot-page__text-interview__hide {
  margin-top: 38px;
  padding-top: 38px;
  border-top: 1px solid #6a8b4b;
  display: none;
}

.mot-page__text-interview__hide p {
  font-family: ivypresto-display, serif;
  color: #6a8b4b;
  font-size: 20px;
  font-size: 2rem;
  line-height: 1.55;
  text-align: center;
  letter-spacing: 0.05em;
}

.mot-page__map h2 {
  font-family: ivypresto-display, serif;
  font-size: 20px;
  font-size: 2rem;
  line-height: 1.55;
  letter-spacing: 0.05em;
}

@media only screen and (max-width: 767px) {
  .mot-page__map h2 {
    font-size: 16px;
    font-size: 1.6rem;
  }
}

.mot-page__map img {
  display: block;
  max-width: 1260px;
  margin-top: 52px;
}

@media only screen and (max-width: 767px) {
  .mot-page__map img {
    width: 100%;
    margin-top: 32px;
  }
}

.mot-page__section-title {
  font-family: ivypresto-display, serif;
  padding-top: 125px;
}

@media only screen and (max-width: 767px) {
  .mot-page__section-title {
    padding-top: 60px;
  }
}

.mot-page__section-title small,
.mot-page__section-title strong,
.mot-page__section-title em {
  display: block;
}

.mot-page__section-title small {
  font-size: 20px;
  font-size: 2rem;
  letter-spacing: 0.05em;
}

@media only screen and (max-width: 767px) {
  .mot-page__section-title small {
    font-size: 16px;
    font-size: 1.6rem;
  }
}

.mot-page__section-title strong {
  font-size: 29.47px;
  font-size: 2.947rem;
  letter-spacing: 0.045em;
  padding-top: 12px;
}

@media only screen and (max-width: 767px) {
  .mot-page__section-title strong {
    padding-top: 6px;
    font-size: 20px;
    font-size: 2rem;
    line-height: 3rem;
  }
}

.mot-page__section-title em {
  font-size: 16px;
  font-size: 1.6rem;
  letter-spacing: 0.05em;
  color: #a7a7a7;
  padding-top: 10px;
}

@media only screen and (max-width: 767px) {
  .mot-page__section-title em {
    font-size: 14px;
    font-size: 1.4rem;
    line-height: 1.4;
    padding-top: 6px;
  }
}

.mot-page__links {
  padding-bottom: 130px;
}

@media only screen and (max-width: 767px) {
  .mot-page__links {
    padding-top: 40px;
  }
}

.mot-page__links p {
  text-align: center;
  font-size: 14px;
  font-size: 1.4rem;
  margin-top: 30px;
}

.mot-page__links ul {
  text-align: center;
}

.mot-page__links ul li {
  display: inline-block;
  vertical-align: middle;
  margin: 15px 8px 0;
}

@media only screen and (max-width: 767px) {
  .mot-page__links ul li {
    margin: 12px 5px 0;
  }
}

.mot-page__links ul li a span {
  font-size: 15px;
  font-size: 1.5rem;
  letter-spacing: 0.045em;
  display: block;
  padding-bottom: 5px;
  position: relative;
}

@media only screen and (max-width: 767px) {
  .mot-page__links ul li a span {
    font-size: 15px;
    font-size: 1.5rem;
  }
}

.mot-page__links ul li a span:before {
  content: "";
  position: absolute;
  left: 0;
  bottom: 0;
  width: 100%;
  height: 1px;
  background: #000;
}

.mot-page__360 {
  text-align: center;
}

.mot-page__360>a {
  display: block;
  margin-top: 125px;
}

@media only screen and (max-width: 767px) {
  .mot-page__360>a {
    margin-top: 60px;
  }
}

.mot-page__360>a img {
  width: 100%;
}

.mot-page__360 p {
  font-family: ivypresto-display, serif;
  font-size: 20px;
  font-size: 2rem;
  letter-spacing: 0.05em;
  margin-top: 45px;
}

@media only screen and (max-width: 767px) {
  .mot-page__360 p {
    font-size: 16px;
    font-size: 1.6rem;
    margin-top: 32px;
  }
}

.mot-page__360>div {
  margin-top: 13px;
}

@media only screen and (max-width: 767px) {
  .mot-page__360>div {
    margin-top: 10px;
  }
}

.mot-page__360>div a {
  display: block;
  width: 155px;
  text-align: center;
  margin: auto;
  border: 1px solid #000;
}

.mot-page__360>div a span {
  display: block;
  padding: 18px 0;
  font-size: 20px;
  font-size: 2rem;
  letter-spacing: 0.05em;
  font-family: ivypresto-display, serif;
}

@media only screen and (max-width: 767px) {
  .mot-page__360>div a span {
    font-size: 16px;
    font-size: 1.6rem;
  }
}

.mot-page__catalog h2 {
  font-size: 30px;
  font-size: 3rem;
  letter-spacing: 0.045em;
  font-family: ivypresto-display, serif;
}

@media only screen and (max-width: 767px) {
  .mot-page__catalog h2 {
    font-size: 22px;
    font-size: 2.2rem;
  }
}

.mot-page__catalog h2.mt {
  margin-top: 180px;
}

@media only screen and (max-width: 767px) {
  .mot-page__catalog h2.mt {
    margin-top: 80px;
  }
}

.mot-page__catalog img {
  display: block;
  margin-top: 20px;
}

.mot-page__catalog__body {
  margin: 70px 0 0 auto;
  padding-right: 160px;
  width: 90%;
  max-width: 960px;
}

@media only screen and (max-width: 767px) {
  .mot-page__catalog__body {
    width: 100%;
    margin: 24px 0 0 0;
    padding-right: 0;
  }
}

.mot-page__catalog__body p {
  font-family: ivypresto-display, serif;
  font-size: 20px;
  font-size: 2rem;
  line-height: 1.55;
  letter-spacing: 0.05em;
}

@media only screen and (max-width: 767px) {
  .mot-page__catalog__body p {
    font-size: 16px;
    font-size: 1.6rem;
  }
}

.mot-page__catalog__body p.mt {
  margin-top: 35px;
}

@media only screen and (max-width: 767px) {
  .mot-page__catalog__body p.mt {
    margin-top: 22px;
  }
}

.mot-page__catalog__body h3 {
  font-family: ivypresto-display, serif;
  font-size: 29px;
  font-size: 2.9rem;
  line-height: 1.404818459;
  letter-spacing: 0.045em;
  margin-top: 77px;
}

@media only screen and (max-width: 767px) {
  .mot-page__catalog__body h3 {
    font-size: 22px;
    font-size: 2.2rem;
    margin-top: 42px;
  }
}

.mot-page__catalog__body small {
  display: block;
  font-size: 13px;
  font-size: 1.3rem;
  line-height: 1.384615385;
  margin-top: 35px;
  font-family: 'acumin-pro';
}

@media only screen and (max-width: 767px) {
  .mot-page__catalog__body small {
    font-size: 12px;
    font-size: 1.2rem;
    margin-top: 24px;
  }
}

.mot-page__catalog__body em {
  display: block;
  font-size: 14.71px;
  font-size: 1.471rem;
  line-height: 1.245411285;
  margin-top: 35px;
  font-family: 'acumin-pro';
}

@media only screen and (max-width: 767px) {
  .mot-page__catalog__body em {
    font-size: 11px;
    font-size: 1.1rem;
    margin-top: 20px;
  }
}

.mot-page__catalog__body ul {
  font-size: 0;
  margin-top: 35px;
}

@media only screen and (max-width: 767px) {
  .mot-page__catalog__body ul {
    margin-top: 20px;
  }
}

.mot-page__catalog__body ul li {
  display: inline-block;
  vertical-align: middle;
}

.mot-page__catalog__body ul li:nth-child(1) {
  margin-right: 26px;
}

@media only screen and (max-width: 767px) {
  .mot-page__catalog__body ul li:nth-child(1) {
    margin-right: 20px;
  }
}

.mot-page__catalog__body ul li a {
  display: block;
  text-align: center;
  width: 155px;
  border: 1px solid;
}

.mot-page__catalog__body ul li a.soldout {
  background: #3b3b3b;
  border: 1px solid #000;
  pointer-events: none;
}

.mot-page__catalog__body ul li a.soldout span {
  color: #fff;
}

.mot-page__catalog__body ul li a span {
  font-family: ivypresto-display, serif;
  font-size: 14px;
  font-size: 1.4rem;
  letter-spacing: 0.05em;
  display: block;
  text-align: center;
  padding: 18px 0;
}

@media only screen and (max-width: 767px) {
  .mot-page__catalog__body ul li a span {
    font-size: 12px;
    font-size: 1.2rem;
  }
}

.mot-page__catalog__slider {
  max-width: 806px;
  margin: auto;
}

.mot-page__catalog__slider--whole {
  margin-left: -80px;
  width: calc(100% + 160px);
  overflow: hidden;
}

@media only screen and (max-width: 767px) {
  .mot-page__catalog__slider--whole {
    margin-left: 0;
    width: 100%;
  }
}

.mot-page__catalog__slider .slick-list {
  overflow: visible;
}

.mot-page__catalog__slide {
  padding: 0 5px;
}

@media only screen and (max-width: 767px) {
  .mot-page__catalog__slide {
    padding: 0 2px;
  }
}

.mot-page__catalog__slide img {
  display: block;
  width: 100%;
}

.mot-page__catalog__youtube {
  margin-top: 160px;
}

@media only screen and (max-width: 767px) {
  .mot-page__catalog__youtube {
    margin-top: 80px;
  }
}

.mot-page__catalog__youtube iframe {
  width: 100%;
  height: 680px;
}

@media only screen and (max-width: 767px) {
  .mot-page__catalog__youtube iframe {
    height: 320px;
  }
}

.mot-page__information>div {
  margin-top: 20px;
}

.mot-page__information>div:nth-child(1) {
  margin-top: 0;
}

.mot-page__information>div small,
.mot-page__information>div span {
  display: block;
  text-align: center;
}

.mot-page__information>div small {
  font-size: 12px;
  font-size: 1.2rem;
  line-height: 1.5;
  font-family: 'acumin-pro';
}

@media only screen and (max-width: 767px) {
  .mot-page__information>div small {
    font-size: 11px;
    font-size: 1.1rem;
  }
}

.mot-page__information>div span {
  line-height: 1.4;
  font-size: 15px;
  font-size: 1.5rem;
  margin-top: 4px;
  font-family: 'acumin-pro';
}

@media only screen and (max-width: 767px) {
  .mot-page__information>div span {
    font-size: 14px;
    font-size: 1.4rem;
  }
}

.mot-page__footer {
  text-align: center;
  font-size: 12.05px;
  font-size: 1.205rem;
  text-align: center;
  margin-top: 180px;
  padding-bottom: 50px;
  font-family: 'acumin-pro';
}

.mot-page__footer a.under {
  color: #035bff;
  text-decoration: none;
  border-bottom: 1px solid #035bff;
}

.mot-page__popup {
  position: fixed;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  z-index: 1000;
  display: none;
}

.mot-page__popup__overlay {
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  background: linear-gradient(-45deg, #fae4cb, #edffdb, #d6d7e8, #ffffff);
  background-size: 400% 400%;
  animation: gradient 15s ease infinite;
}

@keyframes gradient {
  0% {
    background-position: 0% 50%;
  }

  50% {
    background-position: 100% 50%;
  }

  100% {
    background-position: 0% 50%;
  }
}

.mot-page__popup__box {
  max-width: 680px;
  margin: auto;
  position: relative;
  height: 100%;
}

.mot-page__popup__box>div {
  position: absolute;
  left: 50%;
  top: 50%;
  -webkit-transform: translate(-50%, -50%);
  -moz-transform: translate(-50%, -50%);
  -ms-transform: translate(-50%, -50%);
  -o-transform: translate(-50%, -50%);
  transform: translate(-50%, -50%);
  width: 100%;
}

@media only screen and (max-width: 767px) {
  .mot-page__popup__box>div {
    padding: 0 15px;
  }
}

.mot-page__popup__box>div>p {
  text-align: center;
  font-size: 16px;
  font-size: 1.6rem;
  font-family: ivypresto-display, serif;
  line-height: 1.5625;
  margin-top: 72px;
  letter-spacing: 0.05em;
}

@media only screen and (max-width: 767px) {
  .mot-page__popup__box>div>p {
    margin-top: 32px;
  }
}

.mot-page__popup__box>div>small {
  font-family: Koburina Gothic W3 JIS2004, sans-serif !important;
  font-size: 11px;
  font-size: 1.1rem;
  letter-spacing: 0.025em;
  margin-top: 14px;
  text-align: center;
  display: block;
}

@media only screen and (max-width: 767px) {
  .mot-page__popup__box>div>small {
    line-height: 1.4;
  }
}

.mot-page__popup__box>div>em {
  display: block;
  text-align: center;
  font-size: 18px;
  font-size: 1.8rem;
  letter-spacing: 0.025em;
  margin-top: 30px;
}

@media only screen and (max-width: 767px) {
  .mot-page__popup__box>div>em {
    font-size: 16px;
    font-size: 1.6rem;
    margin-top: 20px;
  }
}

.mot-page__popup__box>div>ul {
  margin-top: 30px;
  text-align: center;
  font-size: 0;
}

@media only screen and (max-width: 767px) {
  .mot-page__popup__box>div>ul {
    margin-top: 24px;
  }
}

.mot-page__popup__box>div>ul li {
  display: inline-block;
  vertical-align: middle;
  padding: 0 4px;
}

.mot-page__popup__box>div>ul li a {
  padding: 22px 0;
  border: 1px solid #000;
  text-align: center;
  display: block;
  width: 150px;
}

@media only screen and (min-width: 768px) {
  .mot-page__popup__box>div>ul li a {
    -webkit-transition: all 0.5s;
    -moz-transition: all 0.5s;
    -o-transition: all 0.5s;
    transition: all 0.5s;
  }

  .mot-page__popup__box>div>ul li a:hover {
    background: #000;
    color: #fff;
  }
}

.mot-page__popup__box>div>ul li a span {
  font-size: 14px;
  font-size: 1.4rem;
  letter-spacing: 0.025em;
}

.mot-page__popup__box--linkbox {
  max-width: 530px;
  margin: auto;
  margin-top: 28px;
}

.mot-page__popup__box--linkbox a {
  display: block;
  border: 1px solid #000;
  text-align: center;
  padding: 28px 0;
}

@media only screen and (min-width: 768px) {
  .mot-page__popup__box--linkbox a {
    -webkit-transition: all 0.5s;
    -moz-transition: all 0.5s;
    -o-transition: all 0.5s;
    transition: all 0.5s;
  }

  .mot-page__popup__box--linkbox a:hover {
    background: #000;
    color: #fff;
  }
}

@media only screen and (max-width: 767px) {
  .mot-page__popup__box--linkbox a {
    padding: 20px 0;
  }
}

.mot-page__popup__box--linkbox a span {
  font-size: 18px;
  font-size: 1.8rem;
  letter-spacing: 0.075em;
  font-family: ivypresto-display, serif;
  line-height: 1.4;
}

@media only screen and (max-width: 767px) {
  .mot-page__popup__box--linkbox a span {
    font-size: 16px;
    font-size: 1.6rem;
  }
}

.mot-page__popup__box--small {
  margin-top: 58px;
}

.mot-page__popup__box--small small {
  display: block;
  text-align: center;
  line-height: 1.4;
}

.mot-page__popup__box--small small:nth-child(1) {
  font-size: 14px;
  font-size: 1.4rem;
  letter-spacing: 0.025em;
}

.mot-page__popup__box--small small:nth-child(2) {
  font-family: Koburina Gothic W3 JIS2004, sans-serif !important;
  font-size: 11px;
  font-size: 1.1rem;
  letter-spacing: 0.025em;
  margin-top: 10px;
}

.mot-page__popup__box--close {
  display: block;
  width: 25px;
  height: 25px;
  position: relative;
  margin: auto;
}

.mot-page__popup__box--close span {
  position: absolute;
  left: 0;
  top: 0;
  bottom: 0;
  right: 0;
  margin: auto;
  width: 100%;
  height: 1px;
  background-color: #000;
}

.mot-page__popup__box--close span:nth-child(1) {
  -webkit-transform: rotate(45deg);
  -moz-transform: rotate(45deg);
  -ms-transform: rotate(45deg);
  -o-transform: rotate(45deg);
  transform: rotate(45deg);
}

.mot-page__popup__box--close span:nth-child(2) {
  -webkit-transform: rotate(-45deg);
  -moz-transform: rotate(-45deg);
  -ms-transform: rotate(-45deg);
  -o-transform: rotate(-45deg);
  transform: rotate(-45deg);
}

.top__intro {
  padding-top: 134px;
}

@media only screen and (max-width: 767px) {
  .top__intro {
    padding-top: 102px;
  }
}

.top__intro__texts {
  width: 95%;
  max-width: 720px;
  padding-bottom: 138px;
}

@media only screen and (max-width: 767px) {
  .top__intro__texts {
    width: 100%;
    padding-bottom: 38px;
  }
}

.top__intro__texts h2 {
  font-size: 17px;
  font-size: 1.7rem;
  letter-spacing: 0.01em;
}

@media only screen and (max-width: 767px) {
  .top__intro__texts h2 {
    font-size: 13px;
    font-size: 1.3rem;
  }
}

.top__intro__texts h2.top__intro__texts--big {
  font-size: 20px;
  font-size: 2rem;
  line-height: 1.45;
}

@media only screen and (max-width: 767px) {
  .top__intro__texts h2.top__intro__texts--big {
    font-size: 15px;
    font-size: 1.5rem;
  }
}

.top__intro__texts p {
  font-size: 20px;
  font-size: 2rem;
  line-height: 1.45;
  margin-top: 13px;
  letter-spacing: 0.01em;
}

@media only screen and (max-width: 767px) {
  .top__intro__texts p {
    font-size: 15px;
    font-size: 1.5rem;
  }
}

.top__intro__texts p.top__intro__texts--small {
  font-size: 17px;
  font-size: 1.7rem;
  margin-top: 23px;
}

@media only screen and (max-width: 767px) {
  .top__intro__texts p.top__intro__texts--small {
    font-size: 13px;
    font-size: 1.3rem;
    line-height: 1.923076923;
  }
}

.top__intro__texts strong {
  display: block;
  font-size: 13.7px;
  font-size: 1.37rem;
  line-height: 1.678832117;
  margin-top: 32px;
  letter-spacing: 0.01em;
}

@media only screen and (max-width: 767px) {
  .top__intro__texts strong {
    font-size: 12px;
    font-size: 1.2rem;
    line-height: 1.923076923;
  }
}




/* atelier-page */


.atelier-page__title ul li {
  padding: 5px 0 21px 0;
}

.atelier-page__title ul li a {
  display: inline-block;
  border: 1px solid #000;
  padding: 18px 30px;
  font-family: acumin-pro, sans-serif;
  font-weight: 100;
  font-size: 14px;
  font-size: 1.4rem;
  letter-spacing: 0.01em;
  transition: .3s;
}

@media only screen and (max-width: 767px) {
.atelier-page__title ul li a {
  border: 0.5px solid #000;
  }
}

.atelier-page__title ul li a:hover {
  color: #ffffff;
  background: #000;
}


.atelier-page__title {
  font-family: ivypresto-display, serif;
  font-weight: 100;
  padding-top: 130px;
  width: 95%;
  max-width: 675px;
}

.atelier-page__title h1 {
  font-size: 2.4rem;
  line-height: 1.3;
  letter-spacing: 0.1rem;
  padding-bottom: 19px;
}

.atelier-page__title p {
  font-size: 24px;
  font-size: 2.4rem;
  line-height: 1.3;
  letter-spacing: 0.1rem;
  padding-bottom: 19px;
}

@media only screen and (max-width: 767px) {
  .atelier-page__title p {
    font-size: 20px;
    font-size: 2.0rem;
  }
}

.atelier-page__title p.serif {
  display: block;
  font-size: 15px;
  font-size: 1.5rem;
  letter-spacing: 0.05em;
  line-height: 1.4;
  padding-bottom: 15px;
}

@media only screen and (max-width: 767px) {
  .atelier-page__title p.serif {
    font-size: 1.3rem;
  }
}

.atelier-page__title p.gray {
  font-family: acumin-pro, sans-serif;
  font-size: 14px;
  font-size: 1.4rem;
  letter-spacing: 0.01em;
  color: #2B6945;
  padding-bottom: 5px;
}

.atelier-page__title p.black {
  font-family: acumin-pro, sans-serif;
  font-size: 14px;
  font-size: 1.4rem;
  letter-spacing: 0.01em;
  padding-bottom: 19px;
}

.atelier-page__title p.black a {
  font-family: acumin-pro, sans-serif;
  font-size: 14px;
  font-size: 1.4rem;
  letter-spacing: 0.01em;
  padding-top: 20px;
}


.atelier-page__works-title h1 {
  font-family: ivypresto-display, serif;
  font-size: 24px;
  font-size: 2.4rem;
  letter-spacing: 0.05em;
  font-weight: 100;
  padding-bottom: 15px;
}

@media only screen and (max-width: 767px) {
  .atelier-page__works-title h1 {
    font-size: 18px;
    font-size: 1.8rem;
    padding: 100px 0 28px 0;
  }
}

.atelier-page__works-title h1.white {
  font-family: ivypresto-display, serif;
  font-size: 24px;
  font-size: 2.4rem;
  letter-spacing: 0.05em;
  font-weight: 100;
  padding-bottom: 15px;
  color: #fff;
}

.atelier-page__works-title sup {
  font-family: ivypresto-display, serif;
  font-size: 11px;
  font-size: 1.1rem;
  padding: 0 11px 0 0;
  vertical-align: text-top;
}





.mot-page__img-vertical-center-left {
  display: -webkit-flex;
  display: flex;
  -webkit-flex-wrap: wrap;
  flex-wrap: wrap;
  -webkit-justify-content: space-between;
  justify-content: space-between;
  align-items: center;
  font-weight: 100;
  padding-bottom: 178px;
}

@media only screen and (max-width: 767px) {
  .mot-page__img-vertical-center-left {
    padding-top: 0;
    padding-bottom: 50px;
  }
}

.mot-page__img-vertical-center-left>div:nth-child(1) {
  width: 50.78125%;
}

@media only screen and (max-width: 767px) {
  .mot-page__img-vertical-center-left>div:nth-child(1) {
    width: 100%;
  }
}

.mot-page__img-vertical-center-left>div:nth-child(1) figure {
  position: relative;
}

.mot-page__img-vertical-center-left>div:nth-child(1) figure figcaption {
  position: absolute;
  top: 100%;
  left: 0;
  width: 100%;
  font-size: 13px;
  font-size: 1.3rem;
  line-height: 1.4;
  padding-top: 14px;
}

@media only screen and (max-width: 767px) {
  .mot-page__img-vertical-center-left>div:nth-child(1) figure figcaption {
    font-size: 11px;
    font-size: 1.1rem;
    line-height: 1.2;
    padding-top: 12px;
  }
}

.mot-page__img-vertical-center-left>div:nth-child(1) figure figcaption i {
  font-style: italic;
}

.mot-page__img-vertical-center-left>div:nth-child(2) {
  width: 39.6875%;
  max-width: 508px;
  font-family: ivypresto-display, serif;
}

@media only screen and (max-width: 767px) {
  .mot-page__img-vertical-center-left>div:nth-child(2) {
    width: 100%;
    margin-top: 90px;
  }
}

.mot-page__img-vertical-center-left>div:nth-child(2)>p {
  font-size: 20px;
  font-size: 2rem;
  line-height: 1.55;
  letter-spacing: 0.05em;
}

@media only screen and (max-width: 767px) {
  .mot-page__img-vertical-center-left>div:nth-child(2)>p {
    font-size: 16px;
    font-size: 1.6rem;
  }
}

.mot-page__img-vertical-center-left>div:nth-child(2)>small {
  display: block;
  font-size: 12px;
  font-size: 1.6rem;
  letter-spacing: 0.05em;
  line-height: 1.5;
  padding-top: 15px;
  color: #7a7a7a;
}

.mot-page__img-vertical-center-left>div:nth-child(2)>strong {
  display: block;
  font-size: 20px;
  font-size: 2rem;
  letter-spacing: 0.05em;
  line-height: 1.55;
  padding-top: 32px;
  color: #7a7a7a;
}

@media only screen and (max-width: 767px) {
  .mot-page__img-vertical-center-left>div:nth-child(2)>strong {
    font-size: 16px;
    font-size: 1.6rem;
    margin-top: 24px;
  }
}

.mot-page__img-vertical-center-left>div:nth-child(2)>span {
  display: block;
  font-size: 14px;
  font-size: 1.4rem;
  line-height: 1.55;
  padding-bottom: 5px;
  color: #7a7a7a;
  font-family: acumin-pro, sans-serif;
}

.mot-page__img-vertical-center-left h1 {
  font-size: 25px;
  font-size: 2.5rem;
  letter-spacing: 0.05em;
  line-height: 1.55;
  font-family: ivypresto-display, serif;
  padding-bottom: 15px;
}

@media only screen and (max-width: 767px) {
  .mot-page__img-vertical-center-left h1 {
    font-size: 21px;
    font-size: 2.15rem;
    line-height: 1.3;
    padding-bottom: 8px;
  }
}

.mot-page__img-vertical-center-left ul li {
  padding: 25px 0 70px 0;
}

.mot-page__img-vertical-center-left ul li a {
  display: inline-block;
  border: 1px solid #000;
  padding: 18px 30px;
  font-family: ivypresto-display, serif;
  font-size: 17px;
  font-size: 1.7rem;
  letter-spacing: 0.05em;
  transition: .3s;
}

@media only screen and (max-width: 767px) {
  .mot-page__img-vertical-center-left ul li a {
    border: 0.5px solid #000;
    font-size: 14px;
    font-size: 1.4rem;
  }
}

.mot-page__img-vertical-center-left ul li a:hover {
  color: #fff;
  background: #000;
}





.atelier-page__project {
  max-width: 690px;
  margin-bottom: 300px;
}

.atelier-page__project h2 {
  font-size: 20px;
  font-size: 2.0rem;
  line-height: 1.2;
  padding-bottom: 13px;
}

.atelier-page__project p {
  font-size: 13px;
  font-size: 1.35rem;
  line-height: 1.5;
}

.atelier-page__project em {
  padding-top: 30px;
  font-size: 15px;
  font-size: 1.5rem;
  line-height: 1.2;
}

.atelier-page__project ul {
  padding: 30px 0 30px 0;
}

.atelier-page__project ul li {
  font-family: ivypresto-display, serif;
  font-size: 38px;
  font-size: 3.8rem;
  font-weight: 300;
  line-height: 1.3;
  letter-spacing: 0.1rem;
  padding-bottom: 23px;
}

@media only screen and (max-width: 767px) {
  .atelier-page__project ul li {
    font-size: 2.9rem;
    line-height: 1.2;
    padding-bottom: 20px;
  }
}

.atelier-page__project ul li sup {
  font-family: acumin-pro, sans-serif;
  font-size: 11px;
  font-size: 1.1rem;
  padding: 0 11px 0 0;
  vertical-align: text-top;
}

@media only screen and (max-width: 767px) {
  .atelier-page__project ul li sup {
    font-size: 15px;
    font-size: 1.5rem;
  }
}

.atelier-page__project a {
  transition: .3s;
}

.atelier-page__project a:hover {
  color: #fff;
}

.mot-page__center-half--02 p {
  font-family: ivypresto-display, serif;
  font-weight: 100;
  font-size: 20px;
  font-size: 2.0rem;
  line-height: 1.5;
  letter-spacing: 0.1rem;
  padding: 5px 0 12px 0;
}

@media only screen and (max-width: 767px) {
  .mot-page__center-half--02 p {
    font-size: 18px;
    font-size: 1.8rem;
    line-height: 1.3;
  }
}


.mot-page__center-half--02 li {
  list-style: none;
}

.mot-page__center-half--02 li a {
  display: inline-block;
  border: 1px solid #000;
  padding: 18px 30px;
  font-family: ivypresto-display, serif;
  font-weight: 100;
  font-size: 17px;
  font-size: 1.7rem;
  letter-spacing: 0.05em;
  transition: .3s;
}

@media only screen and (max-width: 767px) {
  .mot-page__center-half--02 li a {
    border: 0.5px solid #000;
    font-size: 14px;
    font-size: 1.4rem;
  }
}

.mot-page__center-half--02 li a:hover {
  color: #fff;
  background: #000;
}


.studio-page__qr {
  width: 5%;
  padding-top: 80px;
  max-width: 960px;
  margin: 0 auto 0 auto;
}

@media only screen and (max-width: 767px) {
  .studio-page__qr {
    width: 20%;
    padding-top: 80px;
  }
}

.studio-page__qr__caption p {
  font-size: 1.15rem;
  line-height: 1.45;
  font-family: 'acumin-pro';
  display: block;
  text-align: center;
}