@charset "UTF-8";

/*----------------------------------------------------------------------------------------
------------------------------------------------------------------------------------------
------------------------------------------------------------------------------------------
											汎用
------------------------------------------------------------------------------------------
------------------------------------------------------------------------------------------
-----------------------------------------
-----------------------------------------------*/

body {
  overflow: hidden;
}

/*コンテナ*/
.container,
.container--2 {
  margin: 0 auto;
}

/*汎用flex*/
.flex {
  display: flex;
}

/* color変数 */
:root {
  --black: #414141;
  --red: #b90000;
  --lgray: #f7f7f7;
  --gray: #f2f2f2;
  --dgray: #e0e0e0;
  --bluefont: #606f88;
  --bluebtn: #8797b1;
  --blueline: #3f67a5;
}

/* font-family */
.bold {
  font-weight: 700;
}
.yugo {
  font-family: -apple-system, BlinkMacSystemFont, YuGothic, "Yu Gothic Medium",
    "Yu Gothic", Roboto, "Segoe UI", "Helvetica Neue", HelveticaNeue, Verdana,
    Meiryo, sans-serif;
}
.yugo.bold {
  font-family: -apple-system, BlinkMacSystemFont, YuGothic, "Yu Gothic", Roboto,
    "Segoe UI semibold", "Helvetica Neue", HelveticaNeue, "Segoe UI", Verdana,
    Meiryo, sans-serif;
}
.lato {
  font-family: "Gill Sans", "Lato", "Noto Sans JP", "ヒラギノ角ゴ ProN",
    "Hiragino Kaku Gothic ProN", "メイリオ", Meiryo, "ＭＳ Ｐゴシック",
    "MS PGothic", sans-serif;
}
.roman {
  font-family: "Times New Roman", "YuMincho", "Hiragino Mincho ProN",
    "Yu Mincho", "MS PMincho", serif;
}

/*--------------------------------------------------------------------------
部品
--------------------------------------------------------------------------*/
/*------------------------------------
Intro-img　紹介画像
------------------------------------*/
.intro-img .u-bar {

}
/*------------------------------------
Intro-img　紹介画像
------------------------------------*/
.intro-img img {
  width: 100%;
  height: auto;
}
.intro-img .u-bar {
  width: 100%;
  background: #e0e0e0;
  position: relative;
}
.intro-img .u-bar:before {
  display: block;
  content: "";
  position: absolute;
  width: 25%;
  height: 100%;
  background: var(--red);
  top: 0;
  left: 25%;
}
/*------------------------------------
汎用メインビジュアル
------------------------------------*/
.c-main-visual {
  width: 100%;
  position: relative;
  overflow: hidden;
}
.c-main-visual .wrap {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%,-50%);
}
.c-main-visual h2 {
  /* position: absolute;
  left: 50%;
  transform: translateX(-50%); */
  /* width: 120%; */
  /* width: 100%; */
  min-width: 250px;
  max-width: 550px;
  overflow: hidden;
}
.c-main-visual h2 img {
  width: 100%;
  height: 100%;
  object-fit: contain;
  font-family: "object-fit: contain;";
}
.c-main-visual h3 {
  margin-top: 30px;
  text-align: center;
  letter-spacing: .3em;
  text-indent: .3em;
  font-weight: 700;
}  
.c-main-visual .catch {
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  font-weight: 700;
  letter-spacing: .3em;
  text-indent: .3em;
}
.c-main-visual .catch01 {
  position: absolute;
  width: 100%;
  height: auto;
  top: 0;
  left: 0;
  object-fit: cover;
  object-position: 50% 100%;
  font-family: "object-fit: cover; object-position: 50% 100%;";
}
.c-main-visual .catch02 {
  position: absolute;
  height: auto;
  bottom: 0;
  left: 0;
  object-fit: cover;
  object-position: 50% 0;
  font-family: "object-fit: cover; object-position: 50% 0;";
}
@media all and (-ms-high-contrast: none) {
  .c-main-visual .catch01,
  .c-main-visual .catch02 {
    display: none;
  }
}
/*------------------------------------
汎用見出し
------------------------------------*/
.g-h,
.g-h span {
  font-weight: 700;
  text-align: center;
  letter-spacing: 0.2em;
  text-indent: 0.2em;
  position: relative;
}
.g-h:after {
  position: absolute;
  display: block;
  content: "";
  /* border-radius: 50%; */
  background: var(--bluebtn);
  background: var(--red);
  left: 50%;
  transform: translateX(-50%);
}
/*------------------------------------
汎用アニメーション関係
------------------------------------*/
#header {
  transition: .5s;
}
#header.scroll_out {
  top: -160px;
}
/*------------------------------------
ページャー
------------------------------------*/
.pager {
  display: flex;
  /* justify-content: right; */
}
.pager .prev,
.pager .next {
  display: block;
  background: var(--dgray);
  position: relative;
  transition: all 0.5s ease-in-out;
}
.pager .next {
  margin-left: 3%;
}
.pager .prev:hover,
.pager .next:hover {
  background: var(--red);
  opacity: 1;
}
.pager .prev img,
.pager .next img {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
}
/*------------------------------------
前後記事リンク
------------------------------------*/

/*------------------------------------
TOPに戻る
------------------------------------*/
#page_top {
  position: fixed;
  color: #fff;
  background: #e0e0e0;
  text-align: center;
  transition: background 0.5s ease;
  z-index: 5;
  border-radius: 50%;
  cursor: pointer;
}
#page_top:hover {
  background: var(--red);
}
#page_top svg {
  height: auto;
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
}
/*------------------------------------
m-nav(middle-nav) 中間部ナビゲーションエリア　汎用
------------------------------------*/
#m-nav {
  border-bottom: 2px solid var(--black);
}
#m-nav ul {
  justify-content: center;
}
#m-nav ul li a span {
  display: inline-block;
}
#m-nav ul li:not(:first-child) {
}
#m-nav ul li.current > a {
  color: var(--red);
  position: relative;
}
#m-nav ul li.current > a:after {
  position: absolute;
  display: block;
  content: "";
  width: 100%;
  background: var(--red);
  left: 0;
}
/*------------------------------------
summary 概要エリア　汎用
------------------------------------*/
.summary {
}
.summary .box {
  background: var(--lgray);
  margin: auto;
  box-sizing: border-box;
}
.summary .box h2 {
  text-align: center;
}
.summary .box dl {
  flex-wrap: wrap;
}
.summary .box dt {
  display: flex;
  justify-content: space-between;
}
.summary .box dt:after {
  content: ":";
  line-height: 1.6;
}
.summary .box dd {
  box-sizing: border-box;
}
.summary .box h2,
.summary .box dl,
.summary .box dt,
.summary .box dd {
  font-family: -apple-system, BlinkMacSystemFont, YuGothic, "Yu Gothic Medium",
    "Yu Gothic", Roboto, "Segoe UI", "Helvetica Neue", HelveticaNeue, Verdana,
    Meiryo, sans-serif;
}
/*----------------------------------------------------------------------------------------
------------------------------------------------------------------------------------------
------------------------------------------------------------------------------------------
										ヘッダー&フッター
------------------------------------------------------------------------------------------
------------------------------------------------------------------------------------------
----------------------------------------------------------------------------------------*/

/*----------------------------------------------------------------------------------------
ヘッダー
----------------------------------------------------------------------------------------*/
#header {
  border-bottom: 0.5px solid var(--black);
  width: 100%;
  position: fixed;
  top: 0;
  left: 0;
  z-index: 10;
  background: #fff;
}
#header .top-bar {
  width: 100%;
  height: 13px;
  background: var(--red);
  position: absolute;
  top: 0;
  left: 0;
}
#header .wrapper {
  justify-content: space-between;
  align-items: center;
  height: 100%;
  position: relative;
}
#header .brand {
  display: block;
  height: auto;
}
#header .nav {
  align-self: flex-end;
}

#header .nav__wrapper li:not(:first-child) {
}
#header .nav__wrapper li,
#header .nav__wrapper li a,
#header .nav__wrapper li a span {
  line-height: 1;
}
#header .nav__wrapper .nav__item.current > a,
#header .nav__wrapper .nav__item.current > a span {
  color: var(--red);
}
#header .nav__wrapper .nav__item.current {
  position: relative;
}
#header .nav__wrapper .nav__item.current:after {
  position: absolute;
  display: block;
  content: "";
  width: 100%;
  background: var(--red);
  left: 0;
}
/*------------------------------------
ハンバーガーメニュー
------------------------------------*/
/*　ハンバーガーボタン　*/
#header .hamburger {
  position: fixed;
  z-index: 3;
  cursor: pointer;
  text-align: center;
}

#header .hamburger span {
  display: block;
  position: absolute;
  background: var(--black);
  transition: 0.3s ease-in-out;
}
#header .hamburger.active span {
  background: #fff;
}
#header .hamburger span:nth-child(1) {
  top: 10px;
}
#header .hamburger span:nth-child(2) {
  top: 20px;
}
#header .hamburger span:nth-child(3) {
  top: 30px;
}
/* ナビ開いてる時のボタン */
#header .hamburger.active {
  transition: all 0.3s ease-in-out;
  transition-delay: 0.6s;
  transform: rotate(45deg);
}
#header .hamburger.active span:nth-child(2) {
  width: 0px;
}
#header .hamburger.active span:nth-child(1),
#header .hamburger.active span:nth-child(3) {
  transition-delay: 0.3s;
}
#header .hamburger.active span:nth-child(1) {
  transform: translateY(4px);
}
#header .hamburger.active span:nth-child(3) {
  transform: translateY(-16px) rotate(90deg);
}
#header nav.globalMenuSp {
  position: fixed;
  top: 0;
  left: 0;
  color: #fff;
  background: var(--red);
  text-align: center;
  width: 100%;
  height: 100vh;
  opacity: 0;
  visibility: hidden;
  transition: opacity 0.6s ease, visibility 0.6s ease;
}
#header nav.globalMenuSp * {
  color: #fff;
}
#header nav.globalMenuSp .brand--2 {
  display: block;
}
#header nav.globalMenuSp .brand--2 img {
  width: 100%;
  height: 100%;
}
#header nav.globalMenuSp .sns-wrap {
  justify-content: center;
}
#header nav.globalMenuSp .sns-wrap a {
  height: auto;
}
#header nav.globalMenuSp .sns-wrap a img {
  width: 100%;
  height: 100%;
}
#header nav.globalMenuSp ul {
  width: 50%;
  text-align: left;
}
#header nav.globalMenuSp ul li {
  width: 100%;
  transition: 0.4s all;
}
#header nav.globalMenuSp ul li a,
#header nav.globalMenuSp ul li a span {
  display: inline-block;
  font-size: 2rem;
}
#header nav.globalMenuSp ul li a {
  padding: 1em 0;
}
#header nav.globalMenuSp ul.g-wrap {
  width: 100%;
  justify-content: space-between;
  margin-top: 0;
}
#header nav.globalMenuSp ul.g-wrap li {
  width: 100%;
}
#header nav.globalMenuSp ul.g-wrap li a {
  padding: .5em 0;
  font-size: 1.6rem;
}
#header nav.globalMenuSp.active {
  opacity: 1;
  visibility: visible;
  display: block;
  overflow: auto;
}
#header nav.globalMenuSp.active .wrap {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%,-50%);
}
/*----------------------------------------------------------------------------------------
フッター
----------------------------------------------------------------------------------------*/
footer {
  background: var(--red);
}
footer * {
  color: #fff;
}
footer .wrap .brand {
  height: auto;
}
footer nav {
  box-sizing: border-box;
}
footer nav ul li,
footer nav ul li a,
footer nav ul li a span {
  line-height: 1;
}
footer nav ul li {
  position: relative;
}
footer nav ul li:first-child {
  /* padding-left: 0; */
}
footer nav ul li:not(:first-child):before {
  position: absolute;
  display: block;
  content: "";
  transform: translateY(-50%);
  left: 0;
  background: #fff;
}
footer nav ul li a {
  font-size: 1.4rem;
}
footer nav ul li a span {
  font-size: 1.4rem;
}
footer .copyright {
  text-align: center;
}
/*----------------------------------------------------------------------------------------
------------------------------------------------------------------------------------------
------------------------------------------------------------------------------------------
										フロントページ
------------------------------------------------------------------------------------------
------------------------------------------------------------------------------------------
----------------------------------------------------------------------------------------*/

/*------------------------------------
メインビジュアル
------------------------------------*/
#front .main-visual {
  width: 100%;
  position: relative;
}
#front .main-visual .wrap {
  position: absolute;
  /* transform: translateX(-50%); */
  width: 100%;
  text-align: center;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
}
#front .main-visual h1 {
  width: auto;
}
#front .main-visual h1 img {
  width: 100%;
  height: 100%;
}
#front .main-visual .catch {
  line-height: 1;
  /* margin: 0 7.5%; */
  margin: 0 auto;
  letter-spacing: .24em;
  text-indent: .24em;
  font-weight: 700;
}

/*------------------------------------
Intro　紹介文
------------------------------------*/
#front .intro .desc {
  background: var(--lgray);
}
#front .intro .desc .wrap {
  margin: 0 auto;
}
#front .intro .desc h2 {
  letter-spacing: 0.2em;
}
#front .intro .desc p {
  letter-spacing: 0.2em;
  line-height: 2;
}
/*------------------------------------
lunch　ランチメニュー
------------------------------------*/
#front .lunch {
}
#front .lunch .pick-up {
  width: 100%;
  background: var(--lgray);
}
#front .lunch .pick-up > div {
  width: 100%;
  height: 100%;
}
#front .lunch .pick-up img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  font-family: "object-fit: cover;";
}
#front .lunch .pick-up .desc {
}
#front .lunch .pick-up .desc {
}
#front .lunch .pick-up .desc h3 {
  letter-spacing: 0.05em;
  text-indent: 0.05em;
  text-align: center;
}
#front .lunch .pick-up .desc .desc-text {
}
#front .lunch .pick-up .desc ul {
}
#front .lunch .pick-up .desc .price {
  text-align: right;
}
#front .lunch .pick-up .desc .price span {
}

#front .lunch .menu {
  flex-wrap: wrap;
}
#front .lunch .menu li {
}
#front .lunch .menu li:last-child {
}
#front .lunch .menu li img {
  width: 100%;
  object-fit: cover;
  font-family: "object-fit: cover;";
}
#front .lunch .menu li h4 {
  font-weight: 700;
}
#front .lunch .menu li .desc {
  border-bottom: 1px solid #707070;
}
#front .lunch .menu li .price {
  text-align: right;
}
#front .lunch .menu li .price span {
}
/*------------------------------------
dessert　デザートメニュー
------------------------------------*/
#front .dessert {
}
#front .dessert .pick-up {
  background: var(--lgray);
}
#front .dessert .pick-up .container--2 {
  height: 100%;
  margin: 0;
}
#front .dessert .pick-up img {
  object-fit: cover;
  font-family: "object-fit: cover;";
}
#front .dessert .pick-up .desc {
}
#front .dessert .pick-up .desc h3 {
  letter-spacing: 0.05em;
  text-indent: 0.05em;
  text-align: center;
}
#front .dessert .pick-up .desc p:nth-of-type(1) {
}
#front .dessert .pick-up .desc p:nth-of-type(2),
#front .dessert .pick-up .desc p:nth-of-type(3) {
}
#front .dessert .pick-up .desc .price {
  text-align: right;
}
#front .dessert .pick-up .desc .price span {
}

#front .dessert .menu {
  flex-wrap: wrap;
}
#front .dessert .menu li {
}
#front .dessert .menu li:last-child {
  margin-right: 0;
}
#front .dessert .menu li img {
  width: 100%;
  object-fit: cover;
  font-family: "object-fit: cover;";
}
#front .dessert .menu li h4 {
  font-weight: 700;
}
#front .dessert .menu li .desc {
  border-bottom: 1px solid #707070;
}
#front .dessert .menu li .price {
}
#front .dessert .menu li .price span {
}
/*------------------------------------
summary　概要
------------------------------------*/

/*----------------------------------------------------------------------------------------
------------------------------------------------------------------------------------------
------------------------------------------------------------------------------------------
										page-about zenzaiマージナルギャラリー
------------------------------------------------------------------------------------------
------------------------------------------------------------------------------------------
----------------------------------------------------------------------------------------*/

/*------------------------------------
intro
------------------------------------*/
#about .intro .intro-img {
}

#about .intro .i-about {
  background: var(--lgray);
}
#about .intro .i-about h2 {
}
#about .intro .i-about p {
  line-height: 2;
}

#about .intro .i-desc {
  text-align: center;
}
#about .intro .i-desc p {
  line-height: 4;
}
#about .intro .i-desc p:last-child {
}
/*------------------------------------
feature
------------------------------------*/
#about .feature {
}
#about .feature ul li {
}
#about .feature ul li:nth-child(odd) {
  background: var(--lgray);
}
#about .feature ul li:nth-child(even) {
  background: var(--gray);
}
#about .feature ul li h3 {
  color: var(--bluefont);
}
#about .feature ul li p {
  color: var(--bluefont);
}

#about .feature .to-terms-btn {
  display: block;
  color: #fff;
  background: var(--bluebtn);
  text-align: center;
  box-sizing: border-box;
  border: 1px solid var(--bluebtn);
}
#about .feature .to-terms-btn:hover {
  color: var(--bluebtn);
  background: #fff;
}
/*----------------------------------------------------------------------------------------
------------------------------------------------------------------------------------------
------------------------------------------------------------------------------------------
										archive-vol1 archive-vol2 zenzaiマージナルギャラリー
                    カスタム投稿アーカイブ
------------------------------------------------------------------------------------------
------------------------------------------------------------------------------------------
----------------------------------------------------------------------------------------*/
/*------------------------------------
exhibitor
------------------------------------*/
#works .exhibitor .vol-no {
  border-radius: 50%;
  border: 2px solid #707070;
  margin: 150px auto 0;
  position: relative;
}
#works .exhibitor .vol-no p {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
}
#works .exhibitor .vol-no p span {
  color: var(--red);
}
#works .exhibitor h1 {
  text-align: center;
  line-height: 1;
}
#works .exhibitor .name {
  text-align: center;
  line-height: 1;
  color: var(--dgray);
}
#works .exhibitor .name::first-letter {
  color: #d09898;
}
#works .exhibitor h2 {
  /* line-height: 1; */
}
#works .exhibitor .desc {
}
#works .exhibitor dl {
  flex-wrap: wrap;
  align-items: center;
}
#works .exhibitor dl dt {
  line-height: 1;
  position: relative;
  justify-content: space-between;
}
#works .exhibitor dl dt:after {
  content: ":";
  position: absolute;
  right: 0;
}
#works .exhibitor dl dd {
  line-height: 1;
  box-sizing: border-box;
}
#works .exhibitor dl dd span {
  line-height: 1;
}
#works .exhibitor .date {
  color: #8d8d8d;
}
#works .exhibitor img {
  width: 100%;
  object-fit: cover;
  font-family: "object-fit: cover;";
}
/*------------------------------------
profile
------------------------------------*/
#works .profile .prof-wrap {
  justify-content: space-between;
  position: relative;
  width: 100%;
}
#works .profile .prof-wrap:before {
  position: absolute;
  display: block;
  content: "";
  height: 1px;
  background: var(--black);
}
#works .profile .prof-text {
}
#works .profile .prof-text h2 {
  line-height: 1;
  letter-spacing: 0.1em;
}
#works .profile .prof-text h2 + p {
  line-height: 1;
  letter-spacing: 0.2em;
}
#works .profile img {
  border-radius: 50%;
  object-fit: cover;
  font-family: "object-fit: cover;";
  position: relative;
}
#works .profile h3 {
}
#works .profile h3 + p {
}
#works .profile ul {
}
#works .profile ul li {
}

#works .profile ul li a {
  color: var(--red);
  font-size: 2rem;
}

#works .profile .wrapper {
  /* margin-left: 15px; */
  margin-top: 30px;
  padding-bottom: 80px;
}
#works .profile dl {
  flex-wrap: wrap;
}
#works .profile dl.personal-url {
  margin-bottom: 10px;
}
#works .profile dl.personal-url dt {
  width: 40px;
}
#works .profile dl.personal-url dd {
  width: calc(100% - 40px);
  word-break: break-all;
  box-sizing: border-box;
}
#works .profile dl.shop-url dt {
  width: 120px;
}
#works .profile dl.shop-url dd {
  width: calc(100% - 120px);
  word-break: break-all;
  /* padding-left: 15px; */
  box-sizing: border-box;
}
#works .profile dl dt,
#works .profile dl dd {
  font-size: 2rem;
}
#works .profile dl dd a,
#works .profile dl dt a {
  color: var(--red);
  font-size: 2rem;
}
/*------------------------------------
o-works Other Works 他作品
------------------------------------*/
#works .o-works .o-works-h {
  background: var(--dgray);
  text-align: center;
}
#works .o-works .o-works-h h2 {
  line-height: 1;
  letter-spacing: 0.1em;
  text-indent: 0.1em;
}
#works .o-works .o-works-h h2 + p {
  line-height: 1;
  letter-spacing: 0.2em;
  text-indent: 0.2em;
}
#works .o-works ul {
}
#works .o-works ul li:not(:first-child) {
}
#works .o-works ul li h3 {
  position: relative;
  line-height: 1;
}
#works .o-works ul li h3:after {
  position: absolute;
  display: block;
  content: "";
  height: 2px;
  background: var(--blueline);
}
#works .o-works ul li .container--2 {
}
#works .o-works ul li img {
  height: 100%;
  object-fit: contain;
  font-family: "object-fit: contain;";
}
#works .o-works ul li .desc {
  flex-direction: column;
}
#works .o-works ul li .desc .en {
}
#works .o-works ul li .desc .detail {
  margin-top: auto;
}
/*----------------------------------------------------------------------------------------
------------------------------------------------------------------------------------------
------------------------------------------------------------------------------------------
										page-back zenzaiマージナルギャラリー　BACKNUMBER
------------------------------------------------------------------------------------------
------------------------------------------------------------------------------------------
----------------------------------------------------------------------------------------*/
#back .back-wrap ul {
  flex-wrap: wrap;
  justify-content: space-between;
}
#back .back-wrap ul li {
}
#back .back-wrap ul li img {
  width: 100%;
  object-fit: cover;
  font-family: "object-fit: cover;";
  box-shadow: 5px 7px 10px rgba(0, 0, 0, 0.16);
}
#back .back-wrap ul li dl {
  flex-wrap: wrap;
}
#back .back-wrap ul li dl dt {
  justify-content: space-between;
  line-height: 1;
}
#back .back-wrap ul li dl dt:after {
  content: "|";
}
#back .back-wrap ul li dl dd {
  box-sizing: border-box;
  line-height: 2;
}
/*----------------------------------------------------------------------------------------
------------------------------------------------------------------------------------------
------------------------------------------------------------------------------------------
										page-terms 使用規約
------------------------------------------------------------------------------------------
------------------------------------------------------------------------------------------
----------------------------------------------------------------------------------------*/
#terms * {
  font-family: -apple-system, BlinkMacSystemFont, YuGothic, "Yu Gothic Medium",
    "Yu Gothic", Roboto, "Segoe UI", "Helvetica Neue", HelveticaNeue, Verdana,
    Meiryo, sans-serif;
}
#terms .container--2 {
}
#terms h1,
#terms h1 span {
  font-family: YakuHanMP, 游明朝, "Yu Mincho", "YuMincho",
    "Hiragino Mincho ProN", "Hiragino Mincho Pro", "Noto Serif JP", serif;
}
#terms h1 span {
  display: inline-block;
  margin: 0;
}
#terms .select {
}
#terms .select + p {
  line-height: 3;
}
#terms .u-term {
}
#terms ul {
}
#terms ul li {
  line-height: 3;
  padding-left: 1em;
  text-indent: -1em;
}
/*----------------------------------------------------------------------------------------
------------------------------------------------------------------------------------------
------------------------------------------------------------------------------------------
										404
------------------------------------------------------------------------------------------
------------------------------------------------------------------------------------------
----------------------------------------------------------------------------------------*/
#notfound .c-main-visual .wrap {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translateX(-50%);
}
#notfound .c-main-visual h1 {
  color: var(--red);
  font-weight: 700;
  text-align: center;
}
#notfound .c-main-visual h1 span {
  display: block;
  font-weight: 700;
  text-align: center;
}

#notfound .to-front-btn {
  display: block;
  color: #fff;
  background: var(--bluebtn);
  text-align: center;
  box-sizing: border-box;
  border: 1px solid var(--bluebtn);
}
#about .feature .to-front-btn:hover {
  color: var(--bluebtn);
  background: #fff;
}

#notfound .c-main-visual h2 {
  position: absolute;
  left: 50%;
  transform: translateX(-50%);
  width: auto;
}
