@charset "UTF-8";
/* 
html5doctor.com Reset Stylesheet
v1.6.1
Last Updated: 2010-09-17
Author: Richard Clark - http://richclarkdesign.com 
Twitter: @rich_clark
*/
@import url("https://fonts.googleapis.com/css2?family=Zen+Kaku+Gothic+New&display=swap");
html, body, div, span, object, iframe,
h1, h2, h3, h4, h5, h6, p, blockquote, pre,
abbr, address, cite, code,
del, dfn, em, img, ins, kbd, q, samp,
small, strong, sub, sup, var,
b, i,
dl, dt, dd, ol, ul, li,
fieldset, form, label, legend,
table, caption, tbody, tfoot, thead, tr, th, td,
article, aside, canvas, details, figcaption, figure,
footer, header, hgroup, menu, nav, section, summary,
time, mark, audio, video {
  margin: 0;
  padding: 0;
  border: 0;
  outline: 0;
  font-size: 100%;
  vertical-align: baseline;
  background: transparent;
}

body {
  line-height: 1;
  margin: 0;
}

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

nav ul {
  list-style: none;
}

blockquote, q {
  quotes: none;
}

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

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

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

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

del {
  text-decoration: line-through;
}

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

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

/* change border colour to suit your needs */
hr {
  display: block;
  height: 1px;
  border: 0;
  border-top: 1px solid #cccccc;
  margin: 1em 0;
  padding: 0;
}

input, select {
  vertical-align: middle;
}

li {
  list-style: none;
}

* {
  -webkit-box-sizing: border-box;
  -o-box-sizing: border-box;
  -ms-box-sizing: border-box;
  box-sizing: border-box;
}

@font-face {
  font-family: "NotoSansCJKjp";
  font-style: normal;
  font-weight: 400;
  src: url("../font/web/NotoSansCJKjp.eot");
  src: local("Noto Sans CJK JP Light"), url("../font/web/NotoSansCJKjp.eot?#iefix") format("embedded-opentype"), url("../font/web/NotoSansCJKjp.woff") format("woff"), url("../font/web/NotoSansCJKjp.otf") format("opentype");
}
* {
  -webkit-box-sizing: border-box;
  -o-box-sizing: border-box;
  -ms-box-sizing: border-box;
  box-sizing: border-box;
}

html {
  font-size: 62.5%;
}

body {
  opacity: 0;
  position: relative;
  font-size: 1.6rem;
  -webkit-print-color-adjust: exact;
  font-family: "Zen Kaku Gothic New", sans-serif;
  color: #333;
}

header,
footer {
  line-height: 100%;
}

a {
  color: currentColor;
  text-decoration: none;
  /* FireFoxで無駄な枠線を表示しないよう追加 */
  outline: none !important;
  word-wrap: break-word;
}
a[onclick] {
  cursor: pointer;
}
a[href^=tel] {
  color: inherit;
  cursor: text;
  text-decoration: none;
}
a[href^=tel]:hover {
  opacity: 1;
}

figcaption {
  margin-top: 5px;
  line-height: 1.6;
  text-align: center;
}

button, input, textarea, select {
  background-color: transparent;
  background: none;
  border: none;
  cursor: pointer;
  outline: none;
  padding: 0;
  -webkit-border-radius: 0;
  -webkit-appearance: none;
  -moz-appearance: none;
       appearance: none;
}

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

p {
  font-size: 16px;
  font-weight: 500;
  line-height: 175%; /* 28px */
  letter-spacing: 0.64px;
}
p + p, p + .list {
  margin-top: 16px;
}

.block-item + .block-item {
  margin-top: 64px;
}

/* =======================================- */
/* ▼▼▼　PC
/* =======================================- */
@media screen and (min-width: 768px) {
  body {
    line-height: 1.8;
  }
  section + section {
    margin-top: 100px;
  }
  section section {
    margin-top: 60px;
  }
  a:hover,
  a:hover p {
    text-decoration: none;
  }
  a:focus {
    outline: none !important;
  }
}
/* =======================================- */
/* ▼▼▼　SP
/* =======================================- */
@media screen and (max-width: 767px) {
  p {
    font-size: 16px;
  }
  .menu-open body {
    overflow: hidden;
  }
  .menu-open body::before {
    opacity: 1;
    -webkit-transition: 0.3s opacity;
    transition: 0.3s opacity;
    z-index: 997;
  }
  body {
    position: relative;
    border-width: 4px;
    width: 100%;
    height: 100%;
  }
  body::before {
    position: absolute;
    content: "";
    display: block;
    width: 100%;
    height: 100%;
    background: rgba(0, 0, 0, 0.16);
    top: 0;
    left: 0;
    opacity: 0;
    -webkit-transition: 0.3s opacity;
    transition: 0.3s opacity;
    z-index: -1;
  }
  section + section {
    margin-top: 70px;
  }
  section section {
    margin-top: 50px;
  }
}
/* =======================================- */
/* ▼▼　ヘッダー
/* =======================================- */
header {
  position: fixed;
  width: 100%;
  left: 0;
  top: 0;
  background: #fff;
  z-index: 1000;
}

header a {
  color: inherit;
}

/* =======================================- */
/* ▼▼▼　PC
/* =======================================- */
@media screen and (min-width: 768px) {
  .header {
    -webkit-box-shadow: 0 4px 4px 0 rgba(0, 0, 0, 0.16);
            box-shadow: 0 4px 4px 0 rgba(0, 0, 0, 0.16);
    z-index: 999;
    height: 96px;
    /* ヘッダーメニュー */
    /* グローバルメニュー */
  }
  .header-block {
    padding: 12px 40px 16px;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
  }
  .header-layout2 {
    position: relative;
  }
  .header-menu {
    margin-bottom: 12px;
  }
  .header-menu .menu-link {
    text-decoration: none;
  }
  .header-menu .menu-link-blank {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    -webkit-transition: 0.3s all;
    transition: 0.3s all;
  }
  .header-menu .menu-link-blank svg {
    -webkit-transition: 0.3s all;
    transition: 0.3s all;
    margin-left: 4px;
  }
  .header-menu .menu-link-blank svg path, .header-menu .menu-link-blank svg rect {
    -webkit-transition: 0.3s all;
    transition: 0.3s all;
  }
  .header-menu .menu-link-blank:hover {
    color: #9A4C45;
  }
  .header-menu .menu-link-blank:hover svg path {
    stroke: #9A4C45;
  }
  .header-menu .menu-link-blank:hover svg rect {
    fill: #9A4C45;
  }
  .header-menu .menu-link-contact {
    padding: 6px 36px;
    border-radius: 100px;
    background: #9A4C45;
    color: #FFF;
    font-weight: 500;
    line-height: 175%;
    letter-spacing: 0.64px;
    margin-left: 40px;
    border: 1px solid #9A4C45;
    -webkit-transition: 0.3s all;
    transition: 0.3s all;
  }
  .header-menu .menu-link-contact:hover {
    background: #fff;
    color: #9A4C45;
  }
  .header-menu .menu-list {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    -webkit-box-pack: right;
        -ms-flex-pack: right;
            justify-content: right;
  }
  .header-nav .nav-list {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
    width: 100%;
  }
  .header-nav .nav-item {
    position: relative;
  }
  .header-nav .nav-item + .nav-item {
    padding-left: 32px;
    margin-left: 32px;
  }
  .header-nav .nav-item + .nav-item::before {
    position: absolute;
    content: "";
    width: 1px;
    height: calc(100% - 12px);
    background: #D1D1D1;
    left: 0;
    top: 6px;
  }
  .header-nav .nav-link {
    display: inline-block;
    font-weight: 500;
    line-height: 175%;
    letter-spacing: 0.64px;
  }
  .header-nav .nav-link:hover {
    color: #9A4C45;
  }
  /* メニューボタン */
  .h_menu_btn,
  #h_menu-close {
    display: none;
  }
}
/* =======================================- */
@media screen and (max-width: 870px) and (min-width: 768px) {
  .header .logo-img {
    width: 80%;
  }
  .header-layout1 {
    -webkit-box-flex: 1;
        -ms-flex: 1;
            flex: 1;
  }
}
/* ▼▼▼　SP
/* =======================================- */
@media screen and (max-width: 767px) {
  .header {
    /* グローバルメニュー */
    /* メニューボタン */
  }
  .header-inner {
    height: 64px;
    padding: 0 16px;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
  }
  .header-logo {
    display: block;
    margin: 0;
    position: absolute;
    z-index: 9001;
  }
  .header .logo-img {
    width: 244px;
  }
  .header-layout1 {
    position: relative;
    background: #FFF;
    -webkit-box-shadow: 0 4px 4px 0 rgba(0, 0, 0, 0.16);
            box-shadow: 0 4px 4px 0 rgba(0, 0, 0, 0.16);
    z-index: 999;
  }
  .header-layout2 {
    position: absolute;
    left: 0;
    top: 64px;
    z-index: 998;
  }
  .header-nav {
    background: #fff;
    overflow: hidden;
    width: 100%;
    position: absolute;
    left: 0;
    right: 0;
    top: 0;
    padding: 16px 24px 48px;
  }
  .header-nav .nav-item {
    position: relative;
    border-bottom: 1px solid #D78984;
    font-size: 1.7rem;
    font-weight: normal;
  }
  .header-nav .nav-link {
    position: relative;
    padding: 24px 40px 24px 0;
  }
  .header-nav .nav-link::after {
    position: absolute;
    content: url("/assets/img/common/sp/header-nav-arrow.svg");
    width: 24px;
    height: 24px;
    right: 0;
    top: 26px;
  }
  .header-nav .nav a {
    display: block;
    font-size: 1.7rem;
    line-height: 1.4em;
    text-decoration: none;
  }
  .header-nav-contact {
    padding: 13px 66px 7px;
    border-radius: 100px;
    background: #9A4C45;
    color: #FFF;
    font-weight: 500;
    line-height: 175%;
    letter-spacing: 0.64px;
    margin: 48px auto 0;
    text-align: center;
    max-width: 232px;
    width: 100%;
  }
  .header .header-btn {
    height: 64px;
    position: absolute;
    right: 0;
    top: 0;
    width: 64px;
    z-index: 9999;
    background: #9A4C45;
  }
  .header .header-btn::before {
    left: 0;
    -webkit-transform-origin: 0 0;
    transform-origin: 0 0;
  }
  .header .header-btn .headerBtn {
    height: 43px;
    width: 40px;
    margin: 16px auto 5px;
    padding: 0;
    display: block;
  }
  .header .header-btn .headerBtn-icon {
    position: relative;
    -webkit-transition: 0.3s opacity;
    transition: 0.3s opacity;
    height: 2px;
    width: 24px;
    background: #fff;
    display: block;
    margin: 0 auto;
  }
  .header .header-btn .headerBtn-bottom {
    position: relative;
    display: block;
  }
  .header .header-btn .headerBtn-bottom::before {
    position: absolute;
    content: "menu";
    top: calc(100% - 5px);
    left: 50%;
    -webkit-transform: translateX(-50%);
            transform: translateX(-50%);
    font-size: 14px;
    font-weight: 700;
    line-height: 175%; /* 24.5px */
    letter-spacing: 0.56px;
    color: #fff;
  }
  .menu-close .header-layout2 {
    visibility: hidden;
    opacity: 0;
  }
  .menu-open .header-layout2 {
    display: block;
    visibility: inherit;
    opacity: 1;
    right: 0;
    width: 100%;
    -webkit-transition: all 0.3s;
    transition: all 0.3s;
  }
  .menu-open .header-headerBtn {
    position: fixed;
  }
  /* 1回目のアニメーション */
  .header-btn .headerBtn-top {
    -webkit-animation: menu-top 0.5s;
            animation: menu-top 0.5s;
    -webkit-animation-fill-mode: forwards;
            animation-fill-mode: forwards;
    top: 0;
  }
  .header-btn .headerBtn-middle {
    -webkit-animation: menu-middle 0.5s;
            animation: menu-middle 0.5s;
    -webkit-animation-fill-mode: forwards;
            animation-fill-mode: forwards;
    bottom: 0;
  }
  .header-btn .headerBtn-bottom::before {
    -webkit-animation: menu-bottom 0.5s;
            animation: menu-bottom 0.5s;
    -webkit-animation-fill-mode: forwards;
            animation-fill-mode: forwards;
  }
  @-webkit-keyframes menu-top {
    0% {
      -webkit-transform: translateY(-13px) rotate(-45deg);
              transform: translateY(-13px) rotate(-45deg);
    }
    50% {
      -webkit-transform: translateY(-7px) rotate(0deg);
              transform: translateY(-7px) rotate(0deg);
    }
    100% {
      -webkit-transform: translateY(-19px) rotate(0deg);
              transform: translateY(-19px) rotate(0deg);
    }
  }
  @keyframes menu-top {
    0% {
      -webkit-transform: translateY(-13px) rotate(-45deg);
              transform: translateY(-13px) rotate(-45deg);
    }
    50% {
      -webkit-transform: translateY(-7px) rotate(0deg);
              transform: translateY(-7px) rotate(0deg);
    }
    100% {
      -webkit-transform: translateY(-19px) rotate(0deg);
              transform: translateY(-19px) rotate(0deg);
    }
  }
  @-webkit-keyframes menu-middle {
    0% {
      -webkit-transform: translateY(-4px) rotate(45deg);
              transform: translateY(-4px) rotate(45deg);
    }
    50% {
      -webkit-transform: translateY(0px) rotate(0deg);
              transform: translateY(0px) rotate(0deg);
    }
    100% {
      -webkit-transform: translateY(-12px) rotate(0deg);
              transform: translateY(-12px) rotate(0deg);
    }
  }
  @keyframes menu-middle {
    0% {
      -webkit-transform: translateY(-4px) rotate(45deg);
              transform: translateY(-4px) rotate(45deg);
    }
    50% {
      -webkit-transform: translateY(0px) rotate(0deg);
              transform: translateY(0px) rotate(0deg);
    }
    100% {
      -webkit-transform: translateY(-12px) rotate(0deg);
              transform: translateY(-12px) rotate(0deg);
    }
  }
  @-webkit-keyframes menu-bottom {
    0% {
      content: "close";
    }
    100% {
      content: "menu";
    }
  }
  @keyframes menu-bottom {
    0% {
      content: "close";
    }
    100% {
      content: "menu";
    }
  }
  /* 2回目のアニメーション */
  .header-btn.js-open .headerBtn-top {
    -webkit-animation: menu-top-close 0.5s;
            animation: menu-top-close 0.5s;
    -webkit-animation-fill-mode: forwards;
            animation-fill-mode: forwards;
  }
  .header-btn.js-open .headerBtn-middle {
    -webkit-animation: menu-middle-close 0.5s;
            animation: menu-middle-close 0.5s;
    -webkit-animation-fill-mode: forwards;
            animation-fill-mode: forwards;
  }
  .header-btn.js-open .headerBtn-bottom::before {
    -webkit-animation: menu-bottom-close 0.5s;
            animation: menu-bottom-close 0.5s;
    -webkit-animation-fill-mode: forwards;
            animation-fill-mode: forwards;
  }
  @-webkit-keyframes menu-top-close {
    0% {
      -webkit-transform: translateY(-19px) rotate(0deg);
              transform: translateY(-19px) rotate(0deg);
    }
    50% {
      -webkit-transform: translateY(-7px) rotate(0deg);
              transform: translateY(-7px) rotate(0deg);
    }
    100% {
      -webkit-transform: translateY(-14px) rotate(-45deg);
              transform: translateY(-14px) rotate(-45deg);
    }
  }
  @keyframes menu-top-close {
    0% {
      -webkit-transform: translateY(-19px) rotate(0deg);
              transform: translateY(-19px) rotate(0deg);
    }
    50% {
      -webkit-transform: translateY(-7px) rotate(0deg);
              transform: translateY(-7px) rotate(0deg);
    }
    100% {
      -webkit-transform: translateY(-14px) rotate(-45deg);
              transform: translateY(-14px) rotate(-45deg);
    }
  }
  @-webkit-keyframes menu-middle-close {
    0% {
      -webkit-transform: translateY(-12px) rotate(0deg);
              transform: translateY(-12px) rotate(0deg);
    }
    50% {
      -webkit-transform: translateY(-7px) rotate(0deg);
              transform: translateY(-7px) rotate(0deg);
    }
    100% {
      -webkit-transform: translateY(-16px) rotate(45deg);
              transform: translateY(-16px) rotate(45deg);
    }
  }
  @keyframes menu-middle-close {
    0% {
      -webkit-transform: translateY(-12px) rotate(0deg);
              transform: translateY(-12px) rotate(0deg);
    }
    50% {
      -webkit-transform: translateY(-7px) rotate(0deg);
              transform: translateY(-7px) rotate(0deg);
    }
    100% {
      -webkit-transform: translateY(-16px) rotate(45deg);
              transform: translateY(-16px) rotate(45deg);
    }
  }
  @-webkit-keyframes menu-bottom-close {
    0% {
      content: "menu";
    }
    100% {
      content: "close";
    }
  }
  @keyframes menu-bottom-close {
    0% {
      content: "menu";
    }
    100% {
      content: "close";
    }
  }
}
/* =======================================- */
/* ▼▼　footer
/* =======================================- */
.footer {
  background: #F6EBEB;
  padding: 40px 72px 0;
}
.footer-inner {
  padding: 104px 20px 64px;
  border-radius: 56px;
  background: #FFF;
  width: 100%;
  text-align: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
}
.footer-logo {
  max-width: 372px;
  display: inline-block;
  margin-bottom: 64px;
}
.footer-logo img {
  width: 100%;
}
.footer-btn {
  display: inline-block;
  padding: 9px 66px;
  background: #9A4C45;
  color: #fff;
  border-radius: 100px;
  margin-bottom: 64px;
  font-weight: 500;
  line-height: 175%;
  letter-spacing: 0.64px;
  border: 1px solid #9A4C45;
  -webkit-transition: 0.3s all;
  transition: 0.3s all;
}
.footer-btn:hover {
  color: #9A4C45;
  background: #fff;
}
.footer-nav {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  gap: 56px;
  color: #2A100E;
  text-align: left;
}
.footer-nav-item {
  position: relative;
  list-style: none;
  padding-left: 20px;
}
.footer-nav-item::before {
  position: absolute;
  content: "";
  width: 8px;
  height: 8px;
  background: #E6DEA4;
  left: 0;
  top: 5px;
  border-radius: 10px;
}
.footer-nav-childs li {
  position: relative;
  margin-top: 8px;
  color: #333;
  font-weight: 500;
  line-height: 175%;
  letter-spacing: 0.64px;
  padding-left: 16px;
}
.footer-nav-childs li::before {
  position: absolute;
  content: "";
  width: 8px;
  height: 1px;
  top: 13px;
  left: 0;
  background: #333;
}
.footer-nav-childs a:hover {
  color: #9A4C45;
}
.footer-nav-ttl:hover {
  color: #9A4C45;
}
.footer-bottom {
  padding: 32px 64px 16px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  font-size: 14px;
  font-weight: 500;
  line-height: 175%;
  letter-spacing: 0.56px;
}
.footer-bottom-links ul {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}
.footer-bottom-links li {
  position: relative;
}
.footer-bottom-links li + li {
  padding-left: 40px;
}
.footer-bottom-links li + li::before {
  position: absolute;
  content: "/";
  left: 16px;
  top: 0;
  color: #9A4C45;
}
.footer-bottom-links li a {
  display: inline-block;
}

.copyright {
  color: #333;
}

/* =======================================- */
@media screen and (max-width: 870px) and (min-width: 768px) {
  .footer-inner {
    padding: 104px 56px 64px;
  }
  .footer-nav {
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    -webkit-box-pack: left;
        -ms-flex-pack: left;
            justify-content: left;
  }
  .footer-nav-item {
    width: calc(33.3333333333% - 40px);
  }
}
/* ▼▼▼　SP
/* =======================================- */
@media screen and (max-width: 767px) {
  .footer {
    padding: 40px 20px 0;
  }
  .footer-inner {
    padding: 64px 24px 48px;
    border-radius: 32px;
  }
  .footer-logo {
    max-width: 293px;
    margin-bottom: 56px;
  }
  .footer-nav {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
    gap: 0;
    width: 100%;
    margin: 0 auto 0 0;
  }
  .footer-nav-item {
    padding-bottom: 24px;
    margin-bottom: 24px;
    border-bottom: 1px solid #9A4C45;
  }
  .footer-nav-item:last-child {
    padding-bottom: 0;
    border-bottom: 0;
  }
  .footer-nav-childs li::before {
    top: 15px;
  }
  .footer-bottom {
    padding: 24px 0 16px;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
  }
}
/* =======================================- */
/* ▼▼　コンテンツエリア
/* =======================================- */
main {
  margin: 80px 0 104px;
}

.inner {
  padding: 0 20px;
  width: 100%;
}

/* =======================================- */
/* ▼▼▼　PC
/* =======================================- */
@media screen and (min-width: 768px) {
  .inner {
    width: 1208px;
    max-width: 100%;
    margin: 0 auto;
  }
}
/* =======================================- */
/* ▼▼▼　SP
/* =======================================- */
@media screen and (max-width: 767px) {
  /* =======================================- */
  /* ▼▼　SP:コンテンツエリア
  /* =======================================- */
  main {
    margin: 64px 0 100px;
  }
  .contents {
    font-size: 14px;
    line-height: 2;
    width: 100%;
  }
}
.pageHeader {
  background: rgba(0, 0, 0, 0.55);
  color: #ffffff;
  padding: 98px 0;
}
.pageHeader-ttl {
  font-size: 4.4rem;
  line-height: 100%;
  text-align: center;
}

/* =======================================- */
/* ▼▼▼　SP
/* =======================================- */
@media screen and (max-width: 767px) {
  .pageHeader {
    padding: 40px 0;
  }
  .pageHeader-ttl {
    font-size: 2.4rem;
  }
}
.mainvisual {
  margin-top: 96px;
}
.mainvisual-ttl {
  color: #fff;
  font-size: 32px;
  font-weight: 700;
  line-height: 150%;
  letter-spacing: 1.28px;
}
.mainvisual-1 {
  position: relative;
  padding: 0 0 48px 40px;
}
.mainvisual-1 picture {
  width: 100%;
  height: 416px;
}
.mainvisual-1 img {
  width: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}
.mainvisual-1 .mainvisual-ttl {
  position: absolute;
  content: "";
  z-index: 2;
  padding: 56px 26px 46px 136px;
  border-radius: 0 32px 32px 0;
  background: #9A4C45;
  bottom: 0;
  left: 0;
  width: 496px;
}
.mainvisual-2 {
  background: #9A4C45;
  padding: 88px 20px 72px;
  text-align: center;
}
.mainvisual-2 .mainvisual-ttl {
  max-width: 1168px;
  margin: 0 auto;
}

/* ▼▼▼　SP
/* =======================================- */
@media screen and (max-width: 767px) {
  .mainvisual {
    margin-top: 64px;
  }
  .mainvisual-ttl {
    font-size: 24px;
    font-weight: 700;
    line-height: 150%;
    letter-spacing: 0.96px;
  }
  .mainvisual-1 {
    padding: 0 0 32px 16px;
  }
  .mainvisual-1 picture {
    height: 300px;
  }
  .mainvisual-1 .mainvisual-ttl {
    padding: 32px 24px 24px 20px;
    border-radius: 0 24px 24px 0;
    width: 281px;
  }
  .mainvisual-2 {
    padding: 64px 20px 54px;
  }
}
/* パンくず */
.pankuzu {
  padding: 16px 0 0;
  margin-left: -16px;
}
.pankuzu-list {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
}
.pankuzu-item {
  margin: 0;
  padding: 0;
  font-size: 12px;
  font-weight: 500;
  line-height: 175%;
  letter-spacing: 0.48px;
  margin-left: 16px;
}
.pankuzu-item + .pankuzu-item {
  position: relative;
  padding-left: 40px;
}
.pankuzu-item + .pankuzu-item:before {
  position: absolute;
  background: #9A4C45;
  content: "";
  height: 1px;
  width: 24px;
  left: 0;
  top: 10px;
}
.pankuzu-item:hover {
  color: #9A4C45;
}
.pankuzu-item:last-child {
  color: #7F7F7F;
  margin-right: 0;
  display: -webkit-box;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 1;
  overflow: hidden;
}

/* =======================================- */
/* ▼▼▼　PC
/* =======================================- */
@media screen and (min-width: 768px) {
  .pankuzu-item:last-child {
    -webkit-box-flex: 2;
        -ms-flex: 2;
            flex: 2;
  }
}
/* ▼▼▼　SP
/* =======================================- */
@media screen and (max-width: 767px) {
  /* パンくず */
  .pankuzu {
    padding: 16px 0 0;
  }
  .pankuzu-item + .pankuzu-item {
    padding-left: 32px;
  }
  .pankuzu-item + .pankuzu-item:before {
    width: 16px;
  }
  .pankuzu-item:last-child {
    -webkit-line-clamp: 1;
  }
}
/* ボタン系
==================================- */
/*
@include btn(backgorund-color, color, width);背景色・文字色・幅
*/
.btn_blue {
  background: #005bab;
  color: #fff;
  width: 260px;
  display: block;
  text-decoration: none;
  margin: 0 auto;
  position: relative;
  padding: 10px 0;
  font-size: 1.8rem;
  border-radius: 5px;
}

.btn {
  position: relative;
  border-radius: 100px;
  background: #9A4C45;
  padding: 20px 98px 17px 24px;
  -webkit-transition: 0.3s;
  transition: 0.3s;
  text-align: left;
  width: 280px;
  border: 1px solid #9A4C45;
  color: #fff;
  display: block;
  margin: 0 auto;
}
.btn-layout {
  text-align: center;
  margin-top: 32px;
}
.btn svg {
  position: absolute;
  content: "";
  right: 17px;
  top: 16px;
  width: 64px;
  height: 32px;
}
.btn:hover {
  background: #fff;
  color: #9A4C45;
}
.btn:hover svg rect {
  fill: #9A4C45;
}
.btn:hover svg path {
  fill: #fff;
}
.btn-normal {
  position: relative;
  border-radius: 100px;
  background: #9A4C45;
  padding: 19px 24px 16px;
  -webkit-transition: 0.3s all;
  transition: 0.3s all;
  width: 280px;
  border: 1px solid #9A4C45;
  color: #fff;
  display: block;
  font-size: 18px;
  margin: 0 auto;
  margin-top: 32px;
}
.btn-normal:hover {
  background: #fff;
  color: #9A4C45;
}

/* ▼▼▼　SP
/* =======================================- */
@media screen and (max-width: 767px) {
  .btn {
    padding: 16px 88px 12px 24px;
    font-size: 16px;
    font-weight: 500;
    line-height: 175%;
    letter-spacing: 0.64px;
  }
  .btn svg {
    right: 16px;
    width: 56px;
    height: 24px;
  }
  .btn-normal {
    font-size: 16px;
    line-height: 1.213;
  }
}
/* ページトップ */
.pageTop {
  position: fixed;
  right: 16px;
  bottom: 38px;
}
.pageTop-link {
  position: relative;
  color: #9A4C45;
  font-size: 14px;
  font-weight: 700;
  line-height: 175%;
  letter-spacing: 0.56px;
  padding: 22px 0 10px 2px;
  -webkit-writing-mode: vertical-rl;
      -ms-writing-mode: tb-rl;
          writing-mode: vertical-rl;
  text-orientation: mixed; /* ← Safari対策 */
  -webkit-transition: 0.3s all;
  transition: 0.3s all;
}
.pageTop-link::before {
  -webkit-transition: 0.3s all;
  transition: 0.3s all;
  position: absolute;
  content: "";
  width: 2px;
  height: 100%;
  background: #9A4C45;
  bottom: 0;
  left: 0;
}
.pageTop-link::after {
  -webkit-transition: 0.3s all;
  transition: 0.3s all;
  position: absolute;
  content: "";
  width: 10px;
  height: 10px;
  background: #9A4C45;
  top: 0;
  left: -4px;
  border-radius: 50%;
}
.pageTop-link:hover {
  padding-top: 32px;
}

/* ▼▼▼　SP
/* =======================================- */
@media screen and (max-width: 767px) {
  .pageTop {
    right: 4px;
  }
  @supports (-webkit-touch-callout: none) {
    .pageTop {
      right: 28px;
    }
  }
}
.lead {
  font-size: 2.5rem;
  font-weight: bold;
  line-height: 1.6;
  margin-bottom: 40px;
  text-align: center;
}

/* =======================================- */
/* ▼▼▼　PC
/* =======================================- */
/* ▼▼▼　SP
/* =======================================- */
@media screen and (max-width: 767px) {
  .lead {
    font-size: 1.8rem;
    margin-bottom: 20px;
  }
}
.heading {
  -webkit-transition: all 1s cubic-bezier(0.06, 0.59, 0.2, 0.79);
  transition: all 1s cubic-bezier(0.06, 0.59, 0.2, 0.79);
}
.heading-l {
  position: relative;
  font-size: 2.4rem;
  font-weight: 700;
  line-height: 150%; /* 36px */
  letter-spacing: 0.96px;
  margin-bottom: 32px;
  padding-left: 32px;
}
.heading-l::before {
  position: absolute;
  content: url("/assets/img/common/ttl-decoration.svg");
  left: 0;
  top: 0;
  width: 20px;
  height: 20px;
}
.heading-l-inner {
  margin-left: 32px;
}
.heading-m {
  font-size: 2rem;
  font-weight: 700;
  line-height: 150%;
  letter-spacing: 0.8px;
  margin-bottom: 24px;
}
.heading-s {
  color: #2A100E;
  font-size: 1.8rem;
  font-weight: 500;
  line-height: 150%;
  letter-spacing: 0.72px;
  background: #FBF6F4;
  padding: 13px 16px 8px;
  margin-bottom: 16px;
}
.heading-s-inner {
  margin-left: 16px;
}
.heading-ss {
  font-size: 1.6rem;
  font-weight: 700;
  line-height: 175%;
  letter-spacing: 0.64px;
}

/* ▼▼▼　SP
/* =======================================- */
@media screen and (max-width: 767px) {
  .heading {
    -webkit-transition: all 1s cubic-bezier(0.06, 0.59, 0.2, 0.79);
    transition: all 1s cubic-bezier(0.06, 0.59, 0.2, 0.79);
  }
  .heading-l {
    position: relative;
    font-size: 2.2rem;
    letter-spacing: 0.88px;
    padding-left: 30px;
  }
  .heading-l::before {
    width: 18px;
    height: 18px;
    content: url("/assets/img/common/sp/ttl-decoration.svg");
  }
  .heading-l-inner {
    margin-left: 0;
  }
  .heading-m {
    margin-bottom: 16px;
  }
  .heading-s {
    font-size: 1.6rem;
    line-height: 175%;
    letter-spacing: 0.64px;
    padding: 10px 16px 6px;
  }
}
.media-figure + p {
  margin-top: 15px;
}
.media-row + .media-row {
  margin-top: 50px;
}

/* =======================================- */
/* ▼▼▼　PC
/* =======================================- */
@media screen and (min-width: 768px) {
  .media-main {
    -webkit-box-flex: 1;
        -ms-flex: 1;
            flex: 1;
  }
  .media-row {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
  }
  .media-row-col2 .media-sub-type1 {
    width: calc(50% - 30px / 2);
    margin: 0 30px 0 0;
  }
  .media-row-col2 .media-sub-type2 {
    width: 320px;
    margin: 0 30px 0 0;
  }
  .media-row-col3 {
    margin-left: -30px;
  }
  .media-row-col3 .media-col {
    width: calc((100% - 90px) / 3);
    margin-left: 30px;
  }
  .media-row-col4 {
    margin-left: -30px;
  }
  .media-row-col4 .media-col {
    width: calc((100% - 120px) / 4);
    margin-left: 30px;
  }
  .media-row-reverse {
    -webkit-box-orient: horizontal;
    -webkit-box-direction: reverse;
        -ms-flex-direction: row-reverse;
            flex-direction: row-reverse;
  }
  .media-row-reverse .media-sub-type1 {
    margin: 0 0 0 30px;
  }
  .media-row-reverse .media-sub-type2 {
    margin: 0 0 0 30px;
  }
}
/* ▼▼▼　SP
/* =======================================- */
@media screen and (max-width: 767px) {
  .media-row + .media-row {
    margin-top: 30px;
  }
  .media-col + .media-col {
    margin-top: 30px;
  }
}
/* =======================================- */
/* ▼▼▼　PC
/* =======================================- */
@media screen and (min-width: 768px) {
  .row {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
  }
  .row-col2 {
    margin-left: -48px;
    margin-top: -32px;
  }
  .row-col2 .col {
    width: calc(50% - 96px / 2);
    margin: 32px 0 0 48px;
  }
}
/* ▼▼▼　SP
/* =======================================- */
@media screen and (max-width: 767px) {
  .row .col + .col {
    margin-top: 24px;
  }
}
.list-item {
  position: relative;
  padding-left: 24px;
  font-size: 16px;
  font-weight: 500;
  line-height: 175%;
  letter-spacing: 0.64px;
}
.list-item + .list-item {
  margin-top: 8px;
}
.list-item::before {
  content: "";
  top: 10px;
  left: 0;
  position: absolute;
  background: #E6DEA4;
  width: 8px;
  height: 8px;
  border-radius: 50%;
}
.list-child {
  margin-top: 0.5em;
}
.list-order .list-item {
  list-style: decimal;
  list-style-position: inside;
  padding-left: 0;
}
.list-order .list-item::before {
  content: none;
}
.list-child .list-item {
  padding-left: 1em;
}

.link-item + .link-item {
  margin-top: 10px;
}

.link {
  position: relative;
  padding-left: 1.2em;
  display: inline-block;
}
.link::before {
  content: "";
  position: absolute;
  left: 0;
  top: calc(50% - 3px);
  width: 7px;
  height: 7px;
  -webkit-transform: rotate(45deg) translateY(-50%);
          transform: rotate(45deg) translateY(-50%);
  border-top: 1px solid;
  border-right: 1px solid;
}
.link-bg-gray {
  background: #e8e8e8;
  padding: 5px 25px;
}

/* =======================================- */
/* ▼▼▼　PC
/* =======================================- */
/* ▼▼▼　SP
/* =======================================- */
.caution {
  padding-left: 25px;
}
.caution::before {
  content: "※";
  display: inline-block;
  margin: 0 10px 0 -1.5em;
}
.caution-number {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
}
.caution-number span + span {
  margin-left: 4px;
}

/* =======================================- */
/* ▼▼▼　PC
/* =======================================- */
/* ▼▼▼　SP
/* =======================================- */
.box {
  padding: 30px;
}
.box-bg-red {
  background: #fff9f9;
}
.box-bg-gray {
  background: #F2F2F2;
}
.box-border-red {
  border: 1px solid #f00;
}

/* =======================================- */
/* ▼▼▼　PC
/* =======================================- */
/* ▼▼▼　SP
/* =======================================- */
.table {
  width: 100%;
}
.table-cell, .table-head {
  text-align: left;
  padding-bottom: 32px;
}
.table-head {
  width: 168px;
  padding-right: 52px;
}
.table tr {
  display: block;
  border-bottom: 1px dashed #9A4C45;
}
.table tr + tr {
  padding-top: 40px;
}

/* ▼▼▼　SP
/* =======================================- */
@media screen and (max-width: 767px) {
  .table {
    width: 100%;
    font-size: 16px;
  }
  .table-head {
    width: 100%;
    padding-right: 0;
    padding-bottom: 12px;
    display: block;
  }
  .table-cell {
    display: block;
  }
}
.form p + p {
  margin-top: 0;
}
.form-group + .form-group {
  margin-top: 40px;
}
.form-label {
  padding: 14px 0 0;
}
.form-label {
  width: 246px;
  margin-right: 56px;
}
.form-label div {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
}
.form-label-text {
  font-size: 16px;
  font-weight: 700;
  line-height: 175%;
  letter-spacing: 0.64px;
}
.form-required, .form-ninni {
  border-radius: 100px;
  padding: 2px 13px 0;
  font-size: 14px;
  font-weight: 700;
  line-height: 175%;
  letter-spacing: 0.56px;
  color: #fff;
}
.form-required {
  background: #E60012;
}
.form-ninni {
  background: #7F7F7F;
}
.form-placeholder {
  color: #575757;
}
.form-input-area {
  width: calc(100% - 302px);
}
.form-input-button {
  text-align: center;
}
.form-input, .form-textarea, .form-select {
  border-radius: 4px;
  border: 1px solid #9A4C45;
  background: #FFF;
}
.form-input.err_input, .form-textarea.err_input, .form-select.err_input {
  border: 1px solid #E60012;
  background: #FFDADD;
}
.form-input, .form-textarea {
  padding: 17px 10px;
  width: 100%;
  font-size: 18px;
}
.form-textarea {
  height: 132px;
  font-size: 18px;
  background: none;
}
.form-select-item {
  position: relative;
  display: inline-block;
}
.form-select-item::before, .form-select-item::after {
  content: "";
  position: absolute;
  pointer-events: none;
}
.form-select-item::before {
  width: 40px;
  height: 100%;
  right: 0;
  top: 0;
  background: #666;
}
.form-select-item::after {
  width: 6px;
  height: 6px;
  right: 15px;
  top: 37%;
  border-bottom: 2px solid #fff;
  border-right: 2px solid #fff;
  -webkit-transform: rotate(45deg);
          transform: rotate(45deg);
}
.form-select {
  width: 293px;
  height: 38px;
  padding-left: 14px;
}
.form-checkList {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
}
.form-checkItem {
  width: 20%;
  position: relative;
}
.form-checkItemLabel {
  cursor: pointer;
  padding-left: 25px;
  display: block;
}
.form-checkItemLabel::before {
  -webkit-box-shadow: 1px 1px 3px 1px #B3B3B3 inset;
          box-shadow: 1px 1px 3px 1px #B3B3B3 inset;
  position: absolute;
  content: "";
  top: 15px;
  left: 0px;
  width: 16px;
  height: 16px;
  margin-top: -8px;
  background: #fff;
}
.form-checkItemLabel::after {
  content: "";
}
.form-checkItemInput {
  display: none;
}
.form-checkItemInput:checked + .form-checkItemLabel::after {
  position: absolute;
  display: inline-block;
  -webkit-transform: rotate(45deg);
          transform: rotate(45deg);
  margin-top: 2px;
  top: 5px;
  left: 5px;
  width: 4px;
  height: 12px;
  border-bottom: 3px solid #333;
  border-right: 3px solid #333;
}
.form-radio .form-checkItemLabel::before {
  border-radius: 50%;
}
.form-radio .form-checkItemInput:checked + .form-checkItemLabel::after {
  content: "";
  top: 10px;
  left: 4px;
  width: 8px;
  height: 8px;
  background: #333;
  border-radius: 50%;
  border: none;
}
.form-btnArea {
  text-align: center;
}
.form-btn {
  position: relative;
  border-radius: 100px;
  background: #9A4C45;
  padding: 19px 24px 16px;
  -webkit-transition: 0.3s all;
  transition: 0.3s all;
  width: 280px;
  border: 1px solid #9A4C45;
  color: #fff;
  display: block;
  font-size: 18px;
  margin: 0 auto;
  margin-top: 32px;
}
.form-btn:hover {
  background: #fff;
  color: #9A4C45;
}
.form .error_txt {
  color: #E60012;
}

.policy {
  margin-bottom: 50px;
  -webkit-box-shadow: 1px 1px 4px 1px #ccc inset;
          box-shadow: 1px 1px 4px 1px #ccc inset;
  border: none;
  padding: 27px 30px;
  height: 176px;
  overflow-y: scroll;
}

.form-btnArea button.false {
  opacity: 0.5;
  pointer-events: none;
}

.form-kakunin .form-btnArea {
  margin-top: 48px;
}
.form-kakunin .form-label {
  padding-top: 0;
}
.form-kakunin .form-group {
  border-bottom: 1px dashed #9A4C45;
  padding-bottom: 32px;
}

.form-back {
  font-size: 18px;
  font-weight: 500;
  line-height: 175%;
  letter-spacing: 0.72px;
  text-decoration: underline;
  margin-top: 32px;
  color: #333;
  text-align: center;
  display: inline-block;
}

/* =======================================- */
/* ▼▼▼　PC
/* =======================================- */
@media screen and (min-width: 768px) {
  .form-item {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
  }
}
/* ▼▼▼　SP
/* =======================================- */
@media screen and (max-width: 767px) {
  .form-label {
    padding: 0 0 12px;
    width: 100%;
  }
  .form-label div {
    -webkit-box-pack: start;
        -ms-flex-pack: start;
            justify-content: flex-start;
  }
  .form-label-text {
    margin-right: 16px;
  }
  .form-group + .form-group {
    margin-top: 32px;
  }
  .form-group + .form-group.g-recaptcha {
    margin-top: 48px;
  }
  .form-inputArea {
    padding: 25px 15px;
  }
  .form-input-area {
    width: 100%;
  }
  .form-checkItem {
    width: 50%;
  }
  .form-select-item {
    width: 100%;
  }
  .form-select {
    width: 100%;
  }
  .form-kakunin .form-inputArea {
    padding: 0;
    font-size: 16px;
  }
  .form-thanks .form-btn {
    font-size: 16px;
    line-height: 1.213;
  }
}
.accordion-item + .accordion-item {
  margin-top: 40px;
}
.accordion-head {
  color: #333;
  font-size: 2rem;
  font-weight: bold;
  background: #e8e8e8;
  padding: 0 0 0 20px;
  line-height: inherit;
  border-bottom: none;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  cursor: pointer;
  -webkit-transition: 0.3s;
  transition: 0.3s;
}
.accordion-btn {
  font-size: 13px;
  background: #ccc;
  position: relative;
  right: 0;
  top: 0;
  padding: 10px 0 27px 0;
  width: 60px;
  text-align: center;
  display: block;
  margin-left: auto;
}
.accordion-btn::before {
  content: "";
  position: absolute;
  bottom: 15px;
  left: 25px;
  border-right: 3px solid #333;
  border-bottom: 3px solid #333;
  width: 10px;
  height: 10px;
  -webkit-transform: rotate(45deg);
          transform: rotate(45deg);
}
.accordion-body {
  background: #FCFCFB;
  padding: 26px 30px 38px 30px;
}
.accordion .js-open::before {
  -webkit-transform: rotate(-135deg);
          transform: rotate(-135deg);
  bottom: 10px;
}

/* =======================================- */
/* ▼▼▼　PC
/* =======================================- */
/* ▼▼▼　SP
/* =======================================- */
@media screen and (max-width: 767px) {
  .accordion-text {
    font-size: 1.7rem;
    width: calc(100% - 60px);
    margin-right: 10px;
  }
}
.news-inner {
  padding: 0 20px;
  width: 100%;
}
.news-item {
  padding-bottom: 32px;
  border-bottom: 1px dashed #9A4C45;
}
.news-item + .news-item {
  margin-top: 40px;
}
.news-link {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  width: 100%;
}
.news-link svg {
  margin-left: 16px;
  width: 24px;
  height: 24px;
  border: 1px solid #9A4C45;
  border-radius: 100%;
  background: #9A4C45;
}
.news-link svg * {
  -webkit-transition: 0.3s all;
  transition: 0.3s all;
}
.news-link:hover {
  opacity: 1;
}
.news-link:hover * {
  -webkit-transition: 0.3s all;
  transition: 0.3s all;
}
.news-link:hover p {
  color: #9A4C45;
}
.news-link:hover svg {
  background: #fff;
}
.news-link:hover svg .news-arrow-line {
  stroke: #9A4C45;
}
.news-link:hover svg .news-arrow-bg {
  fill: #fff;
}
.news-date {
  margin-right: 32px;
  font-weight: 700;
  line-height: 175%;
  letter-spacing: 0.64px;
}
.news-title {
  -webkit-box-flex: 2;
      -ms-flex: 2;
          flex: 2;
}
.news-title p {
  display: -webkit-box; /* Flexboxみたいな箱にする */
  -webkit-box-orient: vertical; /* 縦方向に制御 */
  -webkit-line-clamp: 2; /* 最大行数を指定 */
  overflow: hidden;
  -webkit-box-flex: 2;
      -ms-flex: 2;
          flex: 2;
  font-size: 16px;
  font-weight: 500;
  line-height: 175%;
  letter-spacing: 0.64px;
}
.news-btn {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  margin-top: 72px;
}
.news-btn p {
  font-weight: 500;
  line-height: 175%;
  letter-spacing: 0.64px;
}
.news-btn-prev p {
  margin-left: 8px;
}
.news-btn-prev + .news-btn-link {
  margin-left: 72px;
}
.news-btn-link {
  margin: 0 187px;
}
.news-btn-link + .news-btn-next {
  margin-left: -72px;
}
.news-btn-next p {
  margin-right: 8px;
}
.news-btn-prev:hover p, .news-btn-link:hover p, .news-btn-next:hover p {
  color: #9A4C45;
}
.news-btn-prev, .news-btn-next {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}
.news-btn-prev svg, .news-btn-next svg {
  background: #9A4C45;
  border-radius: 100%;
  border: 1px solid #9A4C45;
  width: 24px;
  height: 24px;
}
.news-btn-prev:hover svg, .news-btn-next:hover svg {
  background: #fff;
}
.news-btn-prev:hover svg path:nth-child(1), .news-btn-next:hover svg path:nth-child(1) {
  fill: #fff;
}
.news-btn-prev:hover svg path:nth-child(2), .news-btn-next:hover svg path:nth-child(2) {
  stroke: #9A4C45;
}
.news-post-data {
  font-weight: 500;
  line-height: 175%;
  letter-spacing: 0.64px;
  margin-bottom: 16px;
}
.news-post-ttl {
  font-size: 24px;
  font-weight: 700;
  line-height: 150%;
  letter-spacing: 0.96px;
  margin-bottom: 48px;
}
.news-post-inner {
  margin-top: 48px;
}
.news-post article p + p {
  margin-top: 16px;
}
.news-post sup {
  vertical-align: super;
  font-size: 10px;
}
.news-contact {
  border: 1px solid #ccc;
  padding: 24px;
  border-radius: 5px;
}
.news-contact p + p {
  margin-top: 0;
}
.news-contact-item + .news-contact-item {
  margin-top: 40px;
  border-top: 1px solid #ccc;
  padding-top: 40px;
}

/* =======================================- */
/* ▼▼▼　PC
/* =======================================- */
@media screen and (min-width: 768px) {
  .news-inner {
    width: 1040px;
    max-width: 100%;
    margin: 0 auto;
  }
  .news-item {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: start;
        -ms-flex-align: start;
            align-items: flex-start;
  }
}
/* ▼▼▼　SP
/* =======================================- */
@media screen and (max-width: 767px) {
  .news-item {
    padding-bottom: 24px;
  }
  .news-item + .news-item {
    margin-top: 32px;
  }
  .news-date {
    margin: 0 0 12px;
    display: block;
  }
  .news-btn {
    margin-top: 64px;
  }
  .news-btn-prev + .news-btn-link {
    margin-right: 40px;
  }
  .news-btn-link {
    margin: 0 64px;
  }
  .news-btn-link + .news-btn-next {
    margin-left: -24px;
  }
  .news-btn-prev p, .news-btn-next p {
    display: none;
    margin: 0;
  }
}
.pagenation {
  margin-top: 56px;
}
.pagenation-list {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
}
.pagenation-link {
  color: #fff;
  background: #9A4C45;
  border: 1px solid #9A4C45;
  border-radius: 100%;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  width: 32px;
  height: 32px;
  line-height: 32px;
  text-align: center;
  margin-right: 16px;
  -webkit-transition: 0.3s all;
  transition: 0.3s all;
}
.pagenation-link-prev {
  -webkit-transform: rotate(180deg);
          transform: rotate(180deg);
}
.pagenation-link svg .pagenation-arrow,
.pagenation-link svg .pagenation-bg {
  -webkit-transition: 0.3s all;
  transition: 0.3s all;
}
.pagenation-link:hover {
  background: #fff;
  color: #9A4C45;
  opacity: 1;
}
.pagenation-link:hover svg .pagenation-arrow {
  stroke: #9A4C45;
}
.pagenation-link:hover svg .pagenation-bg {
  fill: #fff;
}
.pagenation-active {
  background: #fff;
  color: #9A4C45;
}

/* =======================================- */
/* ▼▼▼　PC
/* =======================================- */
@media screen and (min-width: 768px) {
  .pagenation-list {
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
  }
}
/* ▼▼▼　SP
/* =======================================- */
@media screen and (max-width: 767px) {
  .pagenation {
    margin-top: 48px;
  }
}
.align-left {
  text-align: left;
}
.align-right {
  text-align: right;
}
.align-center {
  text-align: center;
}
.align-justify {
  text-align: justify;
}
.align-justify-center {
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
}

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

@media screen and (min-width: 768px) {
  .display-pc-none {
    display: none;
  }
  .display-pc-flex {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
  }
}
@media screen and (max-width: 767px) {
  .display-sp-none {
    display: none;
  }
  .display-sp-flex {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
  }
}
.mt-0 {
  margin-top: 0px !important;
}

.ml-0 {
  margin-left: 0px !important;
}

.mr-0 {
  margin-right: 0px !important;
}

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

.mt-4 {
  margin-top: 4px !important;
}

.ml-4 {
  margin-left: 4px !important;
}

.mr-4 {
  margin-right: 4px !important;
}

.mb-4 {
  margin-bottom: 4px !important;
}

.mt-8 {
  margin-top: 8px !important;
}

.ml-8 {
  margin-left: 8px !important;
}

.mr-8 {
  margin-right: 8px !important;
}

.mb-8 {
  margin-bottom: 8px !important;
}

.mt-12 {
  margin-top: 12px !important;
}

.ml-12 {
  margin-left: 12px !important;
}

.mr-12 {
  margin-right: 12px !important;
}

.mb-12 {
  margin-bottom: 12px !important;
}

.mt-16 {
  margin-top: 16px !important;
}

.ml-16 {
  margin-left: 16px !important;
}

.mr-16 {
  margin-right: 16px !important;
}

.mb-16 {
  margin-bottom: 16px !important;
}

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

.ml-20 {
  margin-left: 20px !important;
}

.mr-20 {
  margin-right: 20px !important;
}

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

.mt-24 {
  margin-top: 24px !important;
}

.ml-24 {
  margin-left: 24px !important;
}

.mr-24 {
  margin-right: 24px !important;
}

.mb-24 {
  margin-bottom: 24px !important;
}

.mt-28 {
  margin-top: 28px !important;
}

.ml-28 {
  margin-left: 28px !important;
}

.mr-28 {
  margin-right: 28px !important;
}

.mb-28 {
  margin-bottom: 28px !important;
}

.mt-32 {
  margin-top: 32px !important;
}

.ml-32 {
  margin-left: 32px !important;
}

.mr-32 {
  margin-right: 32px !important;
}

.mb-32 {
  margin-bottom: 32px !important;
}

.mt-36 {
  margin-top: 36px !important;
}

.ml-36 {
  margin-left: 36px !important;
}

.mr-36 {
  margin-right: 36px !important;
}

.mb-36 {
  margin-bottom: 36px !important;
}

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

.ml-40 {
  margin-left: 40px !important;
}

.mr-40 {
  margin-right: 40px !important;
}

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

.mt-44 {
  margin-top: 44px !important;
}

.ml-44 {
  margin-left: 44px !important;
}

.mr-44 {
  margin-right: 44px !important;
}

.mb-44 {
  margin-bottom: 44px !important;
}

.mt-48 {
  margin-top: 48px !important;
}

.ml-48 {
  margin-left: 48px !important;
}

.mr-48 {
  margin-right: 48px !important;
}

.mb-48 {
  margin-bottom: 48px !important;
}

.mt-52 {
  margin-top: 52px !important;
}

.ml-52 {
  margin-left: 52px !important;
}

.mr-52 {
  margin-right: 52px !important;
}

.mb-52 {
  margin-bottom: 52px !important;
}

.mt-56 {
  margin-top: 56px !important;
}

.ml-56 {
  margin-left: 56px !important;
}

.mr-56 {
  margin-right: 56px !important;
}

.mb-56 {
  margin-bottom: 56px !important;
}

.mt-60 {
  margin-top: 60px !important;
}

.ml-60 {
  margin-left: 60px !important;
}

.mr-60 {
  margin-right: 60px !important;
}

.mb-60 {
  margin-bottom: 60px !important;
}

.mt-64 {
  margin-top: 64px !important;
}

.ml-64 {
  margin-left: 64px !important;
}

.mr-64 {
  margin-right: 64px !important;
}

.mb-64 {
  margin-bottom: 64px !important;
}

.mt-68 {
  margin-top: 68px !important;
}

.ml-68 {
  margin-left: 68px !important;
}

.mr-68 {
  margin-right: 68px !important;
}

.mb-68 {
  margin-bottom: 68px !important;
}

.mt-72 {
  margin-top: 72px !important;
}

.ml-72 {
  margin-left: 72px !important;
}

.mr-72 {
  margin-right: 72px !important;
}

.mb-72 {
  margin-bottom: 72px !important;
}

.mt-76 {
  margin-top: 76px !important;
}

.ml-76 {
  margin-left: 76px !important;
}

.mr-76 {
  margin-right: 76px !important;
}

.mb-76 {
  margin-bottom: 76px !important;
}

.mt-80 {
  margin-top: 80px !important;
}

.ml-80 {
  margin-left: 80px !important;
}

.mr-80 {
  margin-right: 80px !important;
}

.mb-80 {
  margin-bottom: 80px !important;
}

.mt-84 {
  margin-top: 84px !important;
}

.ml-84 {
  margin-left: 84px !important;
}

.mr-84 {
  margin-right: 84px !important;
}

.mb-84 {
  margin-bottom: 84px !important;
}

.mt-88 {
  margin-top: 88px !important;
}

.ml-88 {
  margin-left: 88px !important;
}

.mr-88 {
  margin-right: 88px !important;
}

.mb-88 {
  margin-bottom: 88px !important;
}

.mt-92 {
  margin-top: 92px !important;
}

.ml-92 {
  margin-left: 92px !important;
}

.mr-92 {
  margin-right: 92px !important;
}

.mb-92 {
  margin-bottom: 92px !important;
}

.mt-96 {
  margin-top: 96px !important;
}

.ml-96 {
  margin-left: 96px !important;
}

.mr-96 {
  margin-right: 96px !important;
}

.mb-96 {
  margin-bottom: 96px !important;
}

.mt-100 {
  margin-top: 100px !important;
}

.ml-100 {
  margin-left: 100px !important;
}

.mr-100 {
  margin-right: 100px !important;
}

.mb-100 {
  margin-bottom: 100px !important;
}

@media screen and (min-width: 768px) {
  .mt-pc-0 {
    margin-top: 0px !important;
  }
  .ml-pc-0 {
    margin-left: 0px !important;
  }
  .mr-pc-0 {
    margin-right: 0px !important;
  }
  .mb-pc-0 {
    margin-bottom: 0px !important;
  }
  .mt-pc-4 {
    margin-top: 4px !important;
  }
  .ml-pc-4 {
    margin-left: 4px !important;
  }
  .mr-pc-4 {
    margin-right: 4px !important;
  }
  .mb-pc-4 {
    margin-bottom: 4px !important;
  }
  .mt-pc-8 {
    margin-top: 8px !important;
  }
  .ml-pc-8 {
    margin-left: 8px !important;
  }
  .mr-pc-8 {
    margin-right: 8px !important;
  }
  .mb-pc-8 {
    margin-bottom: 8px !important;
  }
  .mt-pc-12 {
    margin-top: 12px !important;
  }
  .ml-pc-12 {
    margin-left: 12px !important;
  }
  .mr-pc-12 {
    margin-right: 12px !important;
  }
  .mb-pc-12 {
    margin-bottom: 12px !important;
  }
  .mt-pc-16 {
    margin-top: 16px !important;
  }
  .ml-pc-16 {
    margin-left: 16px !important;
  }
  .mr-pc-16 {
    margin-right: 16px !important;
  }
  .mb-pc-16 {
    margin-bottom: 16px !important;
  }
  .mt-pc-20 {
    margin-top: 20px !important;
  }
  .ml-pc-20 {
    margin-left: 20px !important;
  }
  .mr-pc-20 {
    margin-right: 20px !important;
  }
  .mb-pc-20 {
    margin-bottom: 20px !important;
  }
  .mt-pc-24 {
    margin-top: 24px !important;
  }
  .ml-pc-24 {
    margin-left: 24px !important;
  }
  .mr-pc-24 {
    margin-right: 24px !important;
  }
  .mb-pc-24 {
    margin-bottom: 24px !important;
  }
  .mt-pc-28 {
    margin-top: 28px !important;
  }
  .ml-pc-28 {
    margin-left: 28px !important;
  }
  .mr-pc-28 {
    margin-right: 28px !important;
  }
  .mb-pc-28 {
    margin-bottom: 28px !important;
  }
  .mt-pc-32 {
    margin-top: 32px !important;
  }
  .ml-pc-32 {
    margin-left: 32px !important;
  }
  .mr-pc-32 {
    margin-right: 32px !important;
  }
  .mb-pc-32 {
    margin-bottom: 32px !important;
  }
  .mt-pc-36 {
    margin-top: 36px !important;
  }
  .ml-pc-36 {
    margin-left: 36px !important;
  }
  .mr-pc-36 {
    margin-right: 36px !important;
  }
  .mb-pc-36 {
    margin-bottom: 36px !important;
  }
  .mt-pc-40 {
    margin-top: 40px !important;
  }
  .ml-pc-40 {
    margin-left: 40px !important;
  }
  .mr-pc-40 {
    margin-right: 40px !important;
  }
  .mb-pc-40 {
    margin-bottom: 40px !important;
  }
  .mt-pc-44 {
    margin-top: 44px !important;
  }
  .ml-pc-44 {
    margin-left: 44px !important;
  }
  .mr-pc-44 {
    margin-right: 44px !important;
  }
  .mb-pc-44 {
    margin-bottom: 44px !important;
  }
  .mt-pc-48 {
    margin-top: 48px !important;
  }
  .ml-pc-48 {
    margin-left: 48px !important;
  }
  .mr-pc-48 {
    margin-right: 48px !important;
  }
  .mb-pc-48 {
    margin-bottom: 48px !important;
  }
  .mt-pc-52 {
    margin-top: 52px !important;
  }
  .ml-pc-52 {
    margin-left: 52px !important;
  }
  .mr-pc-52 {
    margin-right: 52px !important;
  }
  .mb-pc-52 {
    margin-bottom: 52px !important;
  }
  .mt-pc-56 {
    margin-top: 56px !important;
  }
  .ml-pc-56 {
    margin-left: 56px !important;
  }
  .mr-pc-56 {
    margin-right: 56px !important;
  }
  .mb-pc-56 {
    margin-bottom: 56px !important;
  }
  .mt-pc-60 {
    margin-top: 60px !important;
  }
  .ml-pc-60 {
    margin-left: 60px !important;
  }
  .mr-pc-60 {
    margin-right: 60px !important;
  }
  .mb-pc-60 {
    margin-bottom: 60px !important;
  }
  .mt-pc-64 {
    margin-top: 64px !important;
  }
  .ml-pc-64 {
    margin-left: 64px !important;
  }
  .mr-pc-64 {
    margin-right: 64px !important;
  }
  .mb-pc-64 {
    margin-bottom: 64px !important;
  }
  .mt-pc-68 {
    margin-top: 68px !important;
  }
  .ml-pc-68 {
    margin-left: 68px !important;
  }
  .mr-pc-68 {
    margin-right: 68px !important;
  }
  .mb-pc-68 {
    margin-bottom: 68px !important;
  }
  .mt-pc-72 {
    margin-top: 72px !important;
  }
  .ml-pc-72 {
    margin-left: 72px !important;
  }
  .mr-pc-72 {
    margin-right: 72px !important;
  }
  .mb-pc-72 {
    margin-bottom: 72px !important;
  }
  .mt-pc-76 {
    margin-top: 76px !important;
  }
  .ml-pc-76 {
    margin-left: 76px !important;
  }
  .mr-pc-76 {
    margin-right: 76px !important;
  }
  .mb-pc-76 {
    margin-bottom: 76px !important;
  }
  .mt-pc-80 {
    margin-top: 80px !important;
  }
  .ml-pc-80 {
    margin-left: 80px !important;
  }
  .mr-pc-80 {
    margin-right: 80px !important;
  }
  .mb-pc-80 {
    margin-bottom: 80px !important;
  }
  .mt-pc-84 {
    margin-top: 84px !important;
  }
  .ml-pc-84 {
    margin-left: 84px !important;
  }
  .mr-pc-84 {
    margin-right: 84px !important;
  }
  .mb-pc-84 {
    margin-bottom: 84px !important;
  }
  .mt-pc-88 {
    margin-top: 88px !important;
  }
  .ml-pc-88 {
    margin-left: 88px !important;
  }
  .mr-pc-88 {
    margin-right: 88px !important;
  }
  .mb-pc-88 {
    margin-bottom: 88px !important;
  }
  .mt-pc-92 {
    margin-top: 92px !important;
  }
  .ml-pc-92 {
    margin-left: 92px !important;
  }
  .mr-pc-92 {
    margin-right: 92px !important;
  }
  .mb-pc-92 {
    margin-bottom: 92px !important;
  }
  .mt-pc-96 {
    margin-top: 96px !important;
  }
  .ml-pc-96 {
    margin-left: 96px !important;
  }
  .mr-pc-96 {
    margin-right: 96px !important;
  }
  .mb-pc-96 {
    margin-bottom: 96px !important;
  }
  .mt-pc-100 {
    margin-top: 100px !important;
  }
  .ml-pc-100 {
    margin-left: 100px !important;
  }
  .mr-pc-100 {
    margin-right: 100px !important;
  }
  .mb-pc-100 {
    margin-bottom: 100px !important;
  }
}
@media screen and (max-width: 767px) {
  .mt-sp-0 {
    margin-top: 0px !important;
  }
  .ml-sp-0 {
    margin-left: 0px !important;
  }
  .mr-sp-0 {
    margin-right: 0px !important;
  }
  .mb-sp-0 {
    margin-bottom: 0px !important;
  }
  .mt-sp-4 {
    margin-top: 4px !important;
  }
  .ml-sp-4 {
    margin-left: 4px !important;
  }
  .mr-sp-4 {
    margin-right: 4px !important;
  }
  .mb-sp-4 {
    margin-bottom: 4px !important;
  }
  .mt-sp-8 {
    margin-top: 8px !important;
  }
  .ml-sp-8 {
    margin-left: 8px !important;
  }
  .mr-sp-8 {
    margin-right: 8px !important;
  }
  .mb-sp-8 {
    margin-bottom: 8px !important;
  }
  .mt-sp-12 {
    margin-top: 12px !important;
  }
  .ml-sp-12 {
    margin-left: 12px !important;
  }
  .mr-sp-12 {
    margin-right: 12px !important;
  }
  .mb-sp-12 {
    margin-bottom: 12px !important;
  }
  .mt-sp-16 {
    margin-top: 16px !important;
  }
  .ml-sp-16 {
    margin-left: 16px !important;
  }
  .mr-sp-16 {
    margin-right: 16px !important;
  }
  .mb-sp-16 {
    margin-bottom: 16px !important;
  }
  .mt-sp-20 {
    margin-top: 20px !important;
  }
  .ml-sp-20 {
    margin-left: 20px !important;
  }
  .mr-sp-20 {
    margin-right: 20px !important;
  }
  .mb-sp-20 {
    margin-bottom: 20px !important;
  }
  .mt-sp-24 {
    margin-top: 24px !important;
  }
  .ml-sp-24 {
    margin-left: 24px !important;
  }
  .mr-sp-24 {
    margin-right: 24px !important;
  }
  .mb-sp-24 {
    margin-bottom: 24px !important;
  }
  .mt-sp-28 {
    margin-top: 28px !important;
  }
  .ml-sp-28 {
    margin-left: 28px !important;
  }
  .mr-sp-28 {
    margin-right: 28px !important;
  }
  .mb-sp-28 {
    margin-bottom: 28px !important;
  }
  .mt-sp-32 {
    margin-top: 32px !important;
  }
  .ml-sp-32 {
    margin-left: 32px !important;
  }
  .mr-sp-32 {
    margin-right: 32px !important;
  }
  .mb-sp-32 {
    margin-bottom: 32px !important;
  }
  .mt-sp-36 {
    margin-top: 36px !important;
  }
  .ml-sp-36 {
    margin-left: 36px !important;
  }
  .mr-sp-36 {
    margin-right: 36px !important;
  }
  .mb-sp-36 {
    margin-bottom: 36px !important;
  }
  .mt-sp-40 {
    margin-top: 40px !important;
  }
  .ml-sp-40 {
    margin-left: 40px !important;
  }
  .mr-sp-40 {
    margin-right: 40px !important;
  }
  .mb-sp-40 {
    margin-bottom: 40px !important;
  }
  .mt-sp-44 {
    margin-top: 44px !important;
  }
  .ml-sp-44 {
    margin-left: 44px !important;
  }
  .mr-sp-44 {
    margin-right: 44px !important;
  }
  .mb-sp-44 {
    margin-bottom: 44px !important;
  }
  .mt-sp-48 {
    margin-top: 48px !important;
  }
  .ml-sp-48 {
    margin-left: 48px !important;
  }
  .mr-sp-48 {
    margin-right: 48px !important;
  }
  .mb-sp-48 {
    margin-bottom: 48px !important;
  }
  .mt-sp-52 {
    margin-top: 52px !important;
  }
  .ml-sp-52 {
    margin-left: 52px !important;
  }
  .mr-sp-52 {
    margin-right: 52px !important;
  }
  .mb-sp-52 {
    margin-bottom: 52px !important;
  }
  .mt-sp-56 {
    margin-top: 56px !important;
  }
  .ml-sp-56 {
    margin-left: 56px !important;
  }
  .mr-sp-56 {
    margin-right: 56px !important;
  }
  .mb-sp-56 {
    margin-bottom: 56px !important;
  }
  .mt-sp-60 {
    margin-top: 60px !important;
  }
  .ml-sp-60 {
    margin-left: 60px !important;
  }
  .mr-sp-60 {
    margin-right: 60px !important;
  }
  .mb-sp-60 {
    margin-bottom: 60px !important;
  }
  .mt-sp-64 {
    margin-top: 64px !important;
  }
  .ml-sp-64 {
    margin-left: 64px !important;
  }
  .mr-sp-64 {
    margin-right: 64px !important;
  }
  .mb-sp-64 {
    margin-bottom: 64px !important;
  }
  .mt-sp-68 {
    margin-top: 68px !important;
  }
  .ml-sp-68 {
    margin-left: 68px !important;
  }
  .mr-sp-68 {
    margin-right: 68px !important;
  }
  .mb-sp-68 {
    margin-bottom: 68px !important;
  }
  .mt-sp-72 {
    margin-top: 72px !important;
  }
  .ml-sp-72 {
    margin-left: 72px !important;
  }
  .mr-sp-72 {
    margin-right: 72px !important;
  }
  .mb-sp-72 {
    margin-bottom: 72px !important;
  }
  .mt-sp-76 {
    margin-top: 76px !important;
  }
  .ml-sp-76 {
    margin-left: 76px !important;
  }
  .mr-sp-76 {
    margin-right: 76px !important;
  }
  .mb-sp-76 {
    margin-bottom: 76px !important;
  }
  .mt-sp-80 {
    margin-top: 80px !important;
  }
  .ml-sp-80 {
    margin-left: 80px !important;
  }
  .mr-sp-80 {
    margin-right: 80px !important;
  }
  .mb-sp-80 {
    margin-bottom: 80px !important;
  }
  .mt-sp-84 {
    margin-top: 84px !important;
  }
  .ml-sp-84 {
    margin-left: 84px !important;
  }
  .mr-sp-84 {
    margin-right: 84px !important;
  }
  .mb-sp-84 {
    margin-bottom: 84px !important;
  }
  .mt-sp-88 {
    margin-top: 88px !important;
  }
  .ml-sp-88 {
    margin-left: 88px !important;
  }
  .mr-sp-88 {
    margin-right: 88px !important;
  }
  .mb-sp-88 {
    margin-bottom: 88px !important;
  }
  .mt-sp-92 {
    margin-top: 92px !important;
  }
  .ml-sp-92 {
    margin-left: 92px !important;
  }
  .mr-sp-92 {
    margin-right: 92px !important;
  }
  .mb-sp-92 {
    margin-bottom: 92px !important;
  }
  .mt-sp-96 {
    margin-top: 96px !important;
  }
  .ml-sp-96 {
    margin-left: 96px !important;
  }
  .mr-sp-96 {
    margin-right: 96px !important;
  }
  .mb-sp-96 {
    margin-bottom: 96px !important;
  }
  .mt-sp-100 {
    margin-top: 100px !important;
  }
  .ml-sp-100 {
    margin-left: 100px !important;
  }
  .mr-sp-100 {
    margin-right: 100px !important;
  }
  .mb-sp-100 {
    margin-bottom: 100px !important;
  }
}
.pt-0 {
  padding-top: 0px !important;
}

.pl-0 {
  padding-left: 0px !important;
}

.pr-0 {
  padding-right: 0px !important;
}

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

.pt-4 {
  padding-top: 4px !important;
}

.pl-4 {
  padding-left: 4px !important;
}

.pr-4 {
  padding-right: 4px !important;
}

.pb-4 {
  padding-bottom: 4px !important;
}

.pt-8 {
  padding-top: 8px !important;
}

.pl-8 {
  padding-left: 8px !important;
}

.pr-8 {
  padding-right: 8px !important;
}

.pb-8 {
  padding-bottom: 8px !important;
}

.pt-12 {
  padding-top: 12px !important;
}

.pl-12 {
  padding-left: 12px !important;
}

.pr-12 {
  padding-right: 12px !important;
}

.pb-12 {
  padding-bottom: 12px !important;
}

.pt-16 {
  padding-top: 16px !important;
}

.pl-16 {
  padding-left: 16px !important;
}

.pr-16 {
  padding-right: 16px !important;
}

.pb-16 {
  padding-bottom: 16px !important;
}

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

.pl-20 {
  padding-left: 20px !important;
}

.pr-20 {
  padding-right: 20px !important;
}

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

.pt-24 {
  padding-top: 24px !important;
}

.pl-24 {
  padding-left: 24px !important;
}

.pr-24 {
  padding-right: 24px !important;
}

.pb-24 {
  padding-bottom: 24px !important;
}

.pt-28 {
  padding-top: 28px !important;
}

.pl-28 {
  padding-left: 28px !important;
}

.pr-28 {
  padding-right: 28px !important;
}

.pb-28 {
  padding-bottom: 28px !important;
}

.pt-32 {
  padding-top: 32px !important;
}

.pl-32 {
  padding-left: 32px !important;
}

.pr-32 {
  padding-right: 32px !important;
}

.pb-32 {
  padding-bottom: 32px !important;
}

.pt-36 {
  padding-top: 36px !important;
}

.pl-36 {
  padding-left: 36px !important;
}

.pr-36 {
  padding-right: 36px !important;
}

.pb-36 {
  padding-bottom: 36px !important;
}

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

.pl-40 {
  padding-left: 40px !important;
}

.pr-40 {
  padding-right: 40px !important;
}

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

.pt-44 {
  padding-top: 44px !important;
}

.pl-44 {
  padding-left: 44px !important;
}

.pr-44 {
  padding-right: 44px !important;
}

.pb-44 {
  padding-bottom: 44px !important;
}

.pt-48 {
  padding-top: 48px !important;
}

.pl-48 {
  padding-left: 48px !important;
}

.pr-48 {
  padding-right: 48px !important;
}

.pb-48 {
  padding-bottom: 48px !important;
}

.pt-52 {
  padding-top: 52px !important;
}

.pl-52 {
  padding-left: 52px !important;
}

.pr-52 {
  padding-right: 52px !important;
}

.pb-52 {
  padding-bottom: 52px !important;
}

.pt-56 {
  padding-top: 56px !important;
}

.pl-56 {
  padding-left: 56px !important;
}

.pr-56 {
  padding-right: 56px !important;
}

.pb-56 {
  padding-bottom: 56px !important;
}

.pt-60 {
  padding-top: 60px !important;
}

.pl-60 {
  padding-left: 60px !important;
}

.pr-60 {
  padding-right: 60px !important;
}

.pb-60 {
  padding-bottom: 60px !important;
}

.pt-64 {
  padding-top: 64px !important;
}

.pl-64 {
  padding-left: 64px !important;
}

.pr-64 {
  padding-right: 64px !important;
}

.pb-64 {
  padding-bottom: 64px !important;
}

.pt-68 {
  padding-top: 68px !important;
}

.pl-68 {
  padding-left: 68px !important;
}

.pr-68 {
  padding-right: 68px !important;
}

.pb-68 {
  padding-bottom: 68px !important;
}

.pt-72 {
  padding-top: 72px !important;
}

.pl-72 {
  padding-left: 72px !important;
}

.pr-72 {
  padding-right: 72px !important;
}

.pb-72 {
  padding-bottom: 72px !important;
}

.pt-76 {
  padding-top: 76px !important;
}

.pl-76 {
  padding-left: 76px !important;
}

.pr-76 {
  padding-right: 76px !important;
}

.pb-76 {
  padding-bottom: 76px !important;
}

.pt-80 {
  padding-top: 80px !important;
}

.pl-80 {
  padding-left: 80px !important;
}

.pr-80 {
  padding-right: 80px !important;
}

.pb-80 {
  padding-bottom: 80px !important;
}

.pt-84 {
  padding-top: 84px !important;
}

.pl-84 {
  padding-left: 84px !important;
}

.pr-84 {
  padding-right: 84px !important;
}

.pb-84 {
  padding-bottom: 84px !important;
}

.pt-88 {
  padding-top: 88px !important;
}

.pl-88 {
  padding-left: 88px !important;
}

.pr-88 {
  padding-right: 88px !important;
}

.pb-88 {
  padding-bottom: 88px !important;
}

.pt-92 {
  padding-top: 92px !important;
}

.pl-92 {
  padding-left: 92px !important;
}

.pr-92 {
  padding-right: 92px !important;
}

.pb-92 {
  padding-bottom: 92px !important;
}

.pt-96 {
  padding-top: 96px !important;
}

.pl-96 {
  padding-left: 96px !important;
}

.pr-96 {
  padding-right: 96px !important;
}

.pb-96 {
  padding-bottom: 96px !important;
}

.pt-100 {
  padding-top: 100px !important;
}

.pl-100 {
  padding-left: 100px !important;
}

.pr-100 {
  padding-right: 100px !important;
}

.pb-100 {
  padding-bottom: 100px !important;
}

@media screen and (min-width: 768px) {
  .pt-pc-0 {
    padding-top: 0px !important;
  }
  .pl-pc-0 {
    padding-left: 0px !important;
  }
  .pr-pc-0 {
    padding-right: 0px !important;
  }
  .pb-pc-0 {
    padding-bottom: 0px !important;
  }
  .pt-pc-4 {
    padding-top: 4px !important;
  }
  .pl-pc-4 {
    padding-left: 4px !important;
  }
  .pr-pc-4 {
    padding-right: 4px !important;
  }
  .pb-pc-4 {
    padding-bottom: 4px !important;
  }
  .pt-pc-8 {
    padding-top: 8px !important;
  }
  .pl-pc-8 {
    padding-left: 8px !important;
  }
  .pr-pc-8 {
    padding-right: 8px !important;
  }
  .pb-pc-8 {
    padding-bottom: 8px !important;
  }
  .pt-pc-12 {
    padding-top: 12px !important;
  }
  .pl-pc-12 {
    padding-left: 12px !important;
  }
  .pr-pc-12 {
    padding-right: 12px !important;
  }
  .pb-pc-12 {
    padding-bottom: 12px !important;
  }
  .pt-pc-16 {
    padding-top: 16px !important;
  }
  .pl-pc-16 {
    padding-left: 16px !important;
  }
  .pr-pc-16 {
    padding-right: 16px !important;
  }
  .pb-pc-16 {
    padding-bottom: 16px !important;
  }
  .pt-pc-20 {
    padding-top: 20px !important;
  }
  .pl-pc-20 {
    padding-left: 20px !important;
  }
  .pr-pc-20 {
    padding-right: 20px !important;
  }
  .pb-pc-20 {
    padding-bottom: 20px !important;
  }
  .pt-pc-24 {
    padding-top: 24px !important;
  }
  .pl-pc-24 {
    padding-left: 24px !important;
  }
  .pr-pc-24 {
    padding-right: 24px !important;
  }
  .pb-pc-24 {
    padding-bottom: 24px !important;
  }
  .pt-pc-28 {
    padding-top: 28px !important;
  }
  .pl-pc-28 {
    padding-left: 28px !important;
  }
  .pr-pc-28 {
    padding-right: 28px !important;
  }
  .pb-pc-28 {
    padding-bottom: 28px !important;
  }
  .pt-pc-32 {
    padding-top: 32px !important;
  }
  .pl-pc-32 {
    padding-left: 32px !important;
  }
  .pr-pc-32 {
    padding-right: 32px !important;
  }
  .pb-pc-32 {
    padding-bottom: 32px !important;
  }
  .pt-pc-36 {
    padding-top: 36px !important;
  }
  .pl-pc-36 {
    padding-left: 36px !important;
  }
  .pr-pc-36 {
    padding-right: 36px !important;
  }
  .pb-pc-36 {
    padding-bottom: 36px !important;
  }
  .pt-pc-40 {
    padding-top: 40px !important;
  }
  .pl-pc-40 {
    padding-left: 40px !important;
  }
  .pr-pc-40 {
    padding-right: 40px !important;
  }
  .pb-pc-40 {
    padding-bottom: 40px !important;
  }
  .pt-pc-44 {
    padding-top: 44px !important;
  }
  .pl-pc-44 {
    padding-left: 44px !important;
  }
  .pr-pc-44 {
    padding-right: 44px !important;
  }
  .pb-pc-44 {
    padding-bottom: 44px !important;
  }
  .pt-pc-48 {
    padding-top: 48px !important;
  }
  .pl-pc-48 {
    padding-left: 48px !important;
  }
  .pr-pc-48 {
    padding-right: 48px !important;
  }
  .pb-pc-48 {
    padding-bottom: 48px !important;
  }
  .pt-pc-52 {
    padding-top: 52px !important;
  }
  .pl-pc-52 {
    padding-left: 52px !important;
  }
  .pr-pc-52 {
    padding-right: 52px !important;
  }
  .pb-pc-52 {
    padding-bottom: 52px !important;
  }
  .pt-pc-56 {
    padding-top: 56px !important;
  }
  .pl-pc-56 {
    padding-left: 56px !important;
  }
  .pr-pc-56 {
    padding-right: 56px !important;
  }
  .pb-pc-56 {
    padding-bottom: 56px !important;
  }
  .pt-pc-60 {
    padding-top: 60px !important;
  }
  .pl-pc-60 {
    padding-left: 60px !important;
  }
  .pr-pc-60 {
    padding-right: 60px !important;
  }
  .pb-pc-60 {
    padding-bottom: 60px !important;
  }
  .pt-pc-64 {
    padding-top: 64px !important;
  }
  .pl-pc-64 {
    padding-left: 64px !important;
  }
  .pr-pc-64 {
    padding-right: 64px !important;
  }
  .pb-pc-64 {
    padding-bottom: 64px !important;
  }
  .pt-pc-68 {
    padding-top: 68px !important;
  }
  .pl-pc-68 {
    padding-left: 68px !important;
  }
  .pr-pc-68 {
    padding-right: 68px !important;
  }
  .pb-pc-68 {
    padding-bottom: 68px !important;
  }
  .pt-pc-72 {
    padding-top: 72px !important;
  }
  .pl-pc-72 {
    padding-left: 72px !important;
  }
  .pr-pc-72 {
    padding-right: 72px !important;
  }
  .pb-pc-72 {
    padding-bottom: 72px !important;
  }
  .pt-pc-76 {
    padding-top: 76px !important;
  }
  .pl-pc-76 {
    padding-left: 76px !important;
  }
  .pr-pc-76 {
    padding-right: 76px !important;
  }
  .pb-pc-76 {
    padding-bottom: 76px !important;
  }
  .pt-pc-80 {
    padding-top: 80px !important;
  }
  .pl-pc-80 {
    padding-left: 80px !important;
  }
  .pr-pc-80 {
    padding-right: 80px !important;
  }
  .pb-pc-80 {
    padding-bottom: 80px !important;
  }
  .pt-pc-84 {
    padding-top: 84px !important;
  }
  .pl-pc-84 {
    padding-left: 84px !important;
  }
  .pr-pc-84 {
    padding-right: 84px !important;
  }
  .pb-pc-84 {
    padding-bottom: 84px !important;
  }
  .pt-pc-88 {
    padding-top: 88px !important;
  }
  .pl-pc-88 {
    padding-left: 88px !important;
  }
  .pr-pc-88 {
    padding-right: 88px !important;
  }
  .pb-pc-88 {
    padding-bottom: 88px !important;
  }
  .pt-pc-92 {
    padding-top: 92px !important;
  }
  .pl-pc-92 {
    padding-left: 92px !important;
  }
  .pr-pc-92 {
    padding-right: 92px !important;
  }
  .pb-pc-92 {
    padding-bottom: 92px !important;
  }
  .pt-pc-96 {
    padding-top: 96px !important;
  }
  .pl-pc-96 {
    padding-left: 96px !important;
  }
  .pr-pc-96 {
    padding-right: 96px !important;
  }
  .pb-pc-96 {
    padding-bottom: 96px !important;
  }
  .pt-pc-100 {
    padding-top: 100px !important;
  }
  .pl-pc-100 {
    padding-left: 100px !important;
  }
  .pr-pc-100 {
    padding-right: 100px !important;
  }
  .pb-pc-100 {
    padding-bottom: 100px !important;
  }
}
@media screen and (max-width: 767px) {
  .pt-sp-0 {
    padding-top: 0px !important;
  }
  .pl-sp-0 {
    padding-left: 0px !important;
  }
  .pr-sp-0 {
    padding-right: 0px !important;
  }
  .pb-sp-0 {
    padding-bottom: 0px !important;
  }
  .pt-sp-4 {
    padding-top: 4px !important;
  }
  .pl-sp-4 {
    padding-left: 4px !important;
  }
  .pr-sp-4 {
    padding-right: 4px !important;
  }
  .pb-sp-4 {
    padding-bottom: 4px !important;
  }
  .pt-sp-8 {
    padding-top: 8px !important;
  }
  .pl-sp-8 {
    padding-left: 8px !important;
  }
  .pr-sp-8 {
    padding-right: 8px !important;
  }
  .pb-sp-8 {
    padding-bottom: 8px !important;
  }
  .pt-sp-12 {
    padding-top: 12px !important;
  }
  .pl-sp-12 {
    padding-left: 12px !important;
  }
  .pr-sp-12 {
    padding-right: 12px !important;
  }
  .pb-sp-12 {
    padding-bottom: 12px !important;
  }
  .pt-sp-16 {
    padding-top: 16px !important;
  }
  .pl-sp-16 {
    padding-left: 16px !important;
  }
  .pr-sp-16 {
    padding-right: 16px !important;
  }
  .pb-sp-16 {
    padding-bottom: 16px !important;
  }
  .pt-sp-20 {
    padding-top: 20px !important;
  }
  .pl-sp-20 {
    padding-left: 20px !important;
  }
  .pr-sp-20 {
    padding-right: 20px !important;
  }
  .pb-sp-20 {
    padding-bottom: 20px !important;
  }
  .pt-sp-24 {
    padding-top: 24px !important;
  }
  .pl-sp-24 {
    padding-left: 24px !important;
  }
  .pr-sp-24 {
    padding-right: 24px !important;
  }
  .pb-sp-24 {
    padding-bottom: 24px !important;
  }
  .pt-sp-28 {
    padding-top: 28px !important;
  }
  .pl-sp-28 {
    padding-left: 28px !important;
  }
  .pr-sp-28 {
    padding-right: 28px !important;
  }
  .pb-sp-28 {
    padding-bottom: 28px !important;
  }
  .pt-sp-32 {
    padding-top: 32px !important;
  }
  .pl-sp-32 {
    padding-left: 32px !important;
  }
  .pr-sp-32 {
    padding-right: 32px !important;
  }
  .pb-sp-32 {
    padding-bottom: 32px !important;
  }
  .pt-sp-36 {
    padding-top: 36px !important;
  }
  .pl-sp-36 {
    padding-left: 36px !important;
  }
  .pr-sp-36 {
    padding-right: 36px !important;
  }
  .pb-sp-36 {
    padding-bottom: 36px !important;
  }
  .pt-sp-40 {
    padding-top: 40px !important;
  }
  .pl-sp-40 {
    padding-left: 40px !important;
  }
  .pr-sp-40 {
    padding-right: 40px !important;
  }
  .pb-sp-40 {
    padding-bottom: 40px !important;
  }
  .pt-sp-44 {
    padding-top: 44px !important;
  }
  .pl-sp-44 {
    padding-left: 44px !important;
  }
  .pr-sp-44 {
    padding-right: 44px !important;
  }
  .pb-sp-44 {
    padding-bottom: 44px !important;
  }
  .pt-sp-48 {
    padding-top: 48px !important;
  }
  .pl-sp-48 {
    padding-left: 48px !important;
  }
  .pr-sp-48 {
    padding-right: 48px !important;
  }
  .pb-sp-48 {
    padding-bottom: 48px !important;
  }
  .pt-sp-52 {
    padding-top: 52px !important;
  }
  .pl-sp-52 {
    padding-left: 52px !important;
  }
  .pr-sp-52 {
    padding-right: 52px !important;
  }
  .pb-sp-52 {
    padding-bottom: 52px !important;
  }
  .pt-sp-56 {
    padding-top: 56px !important;
  }
  .pl-sp-56 {
    padding-left: 56px !important;
  }
  .pr-sp-56 {
    padding-right: 56px !important;
  }
  .pb-sp-56 {
    padding-bottom: 56px !important;
  }
  .pt-sp-60 {
    padding-top: 60px !important;
  }
  .pl-sp-60 {
    padding-left: 60px !important;
  }
  .pr-sp-60 {
    padding-right: 60px !important;
  }
  .pb-sp-60 {
    padding-bottom: 60px !important;
  }
  .pt-sp-64 {
    padding-top: 64px !important;
  }
  .pl-sp-64 {
    padding-left: 64px !important;
  }
  .pr-sp-64 {
    padding-right: 64px !important;
  }
  .pb-sp-64 {
    padding-bottom: 64px !important;
  }
  .pt-sp-68 {
    padding-top: 68px !important;
  }
  .pl-sp-68 {
    padding-left: 68px !important;
  }
  .pr-sp-68 {
    padding-right: 68px !important;
  }
  .pb-sp-68 {
    padding-bottom: 68px !important;
  }
  .pt-sp-72 {
    padding-top: 72px !important;
  }
  .pl-sp-72 {
    padding-left: 72px !important;
  }
  .pr-sp-72 {
    padding-right: 72px !important;
  }
  .pb-sp-72 {
    padding-bottom: 72px !important;
  }
  .pt-sp-76 {
    padding-top: 76px !important;
  }
  .pl-sp-76 {
    padding-left: 76px !important;
  }
  .pr-sp-76 {
    padding-right: 76px !important;
  }
  .pb-sp-76 {
    padding-bottom: 76px !important;
  }
  .pt-sp-80 {
    padding-top: 80px !important;
  }
  .pl-sp-80 {
    padding-left: 80px !important;
  }
  .pr-sp-80 {
    padding-right: 80px !important;
  }
  .pb-sp-80 {
    padding-bottom: 80px !important;
  }
  .pt-sp-84 {
    padding-top: 84px !important;
  }
  .pl-sp-84 {
    padding-left: 84px !important;
  }
  .pr-sp-84 {
    padding-right: 84px !important;
  }
  .pb-sp-84 {
    padding-bottom: 84px !important;
  }
  .pt-sp-88 {
    padding-top: 88px !important;
  }
  .pl-sp-88 {
    padding-left: 88px !important;
  }
  .pr-sp-88 {
    padding-right: 88px !important;
  }
  .pb-sp-88 {
    padding-bottom: 88px !important;
  }
  .pt-sp-92 {
    padding-top: 92px !important;
  }
  .pl-sp-92 {
    padding-left: 92px !important;
  }
  .pr-sp-92 {
    padding-right: 92px !important;
  }
  .pb-sp-92 {
    padding-bottom: 92px !important;
  }
  .pt-sp-96 {
    padding-top: 96px !important;
  }
  .pl-sp-96 {
    padding-left: 96px !important;
  }
  .pr-sp-96 {
    padding-right: 96px !important;
  }
  .pb-sp-96 {
    padding-bottom: 96px !important;
  }
  .pt-sp-100 {
    padding-top: 100px !important;
  }
  .pl-sp-100 {
    padding-left: 100px !important;
  }
  .pr-sp-100 {
    padding-right: 100px !important;
  }
  .pb-sp-100 {
    padding-bottom: 100px !important;
  }
}
.width-1 {
  width: 1% !important;
}

.width-2 {
  width: 2% !important;
}

.width-3 {
  width: 3% !important;
}

.width-4 {
  width: 4% !important;
}

.width-5 {
  width: 5% !important;
}

.width-6 {
  width: 6% !important;
}

.width-7 {
  width: 7% !important;
}

.width-8 {
  width: 8% !important;
}

.width-9 {
  width: 9% !important;
}

.width-10 {
  width: 10% !important;
}

.width-11 {
  width: 11% !important;
}

.width-12 {
  width: 12% !important;
}

.width-13 {
  width: 13% !important;
}

.width-14 {
  width: 14% !important;
}

.width-15 {
  width: 15% !important;
}

.width-16 {
  width: 16% !important;
}

.width-17 {
  width: 17% !important;
}

.width-18 {
  width: 18% !important;
}

.width-19 {
  width: 19% !important;
}

.width-20 {
  width: 20% !important;
}

.width-21 {
  width: 21% !important;
}

.width-22 {
  width: 22% !important;
}

.width-23 {
  width: 23% !important;
}

.width-24 {
  width: 24% !important;
}

.width-25 {
  width: 25% !important;
}

.width-26 {
  width: 26% !important;
}

.width-27 {
  width: 27% !important;
}

.width-28 {
  width: 28% !important;
}

.width-29 {
  width: 29% !important;
}

.width-30 {
  width: 30% !important;
}

.width-31 {
  width: 31% !important;
}

.width-32 {
  width: 32% !important;
}

.width-33 {
  width: 33% !important;
}

.width-34 {
  width: 34% !important;
}

.width-35 {
  width: 35% !important;
}

.width-36 {
  width: 36% !important;
}

.width-37 {
  width: 37% !important;
}

.width-38 {
  width: 38% !important;
}

.width-39 {
  width: 39% !important;
}

.width-40 {
  width: 40% !important;
}

.width-41 {
  width: 41% !important;
}

.width-42 {
  width: 42% !important;
}

.width-43 {
  width: 43% !important;
}

.width-44 {
  width: 44% !important;
}

.width-45 {
  width: 45% !important;
}

.width-46 {
  width: 46% !important;
}

.width-47 {
  width: 47% !important;
}

.width-48 {
  width: 48% !important;
}

.width-49 {
  width: 49% !important;
}

.width-50 {
  width: 50% !important;
}

.width-51 {
  width: 51% !important;
}

.width-52 {
  width: 52% !important;
}

.width-53 {
  width: 53% !important;
}

.width-54 {
  width: 54% !important;
}

.width-55 {
  width: 55% !important;
}

.width-56 {
  width: 56% !important;
}

.width-57 {
  width: 57% !important;
}

.width-58 {
  width: 58% !important;
}

.width-59 {
  width: 59% !important;
}

.width-60 {
  width: 60% !important;
}

.width-61 {
  width: 61% !important;
}

.width-62 {
  width: 62% !important;
}

.width-63 {
  width: 63% !important;
}

.width-64 {
  width: 64% !important;
}

.width-65 {
  width: 65% !important;
}

.width-66 {
  width: 66% !important;
}

.width-67 {
  width: 67% !important;
}

.width-68 {
  width: 68% !important;
}

.width-69 {
  width: 69% !important;
}

.width-70 {
  width: 70% !important;
}

.width-71 {
  width: 71% !important;
}

.width-72 {
  width: 72% !important;
}

.width-73 {
  width: 73% !important;
}

.width-74 {
  width: 74% !important;
}

.width-75 {
  width: 75% !important;
}

.width-76 {
  width: 76% !important;
}

.width-77 {
  width: 77% !important;
}

.width-78 {
  width: 78% !important;
}

.width-79 {
  width: 79% !important;
}

.width-80 {
  width: 80% !important;
}

.width-81 {
  width: 81% !important;
}

.width-82 {
  width: 82% !important;
}

.width-83 {
  width: 83% !important;
}

.width-84 {
  width: 84% !important;
}

.width-85 {
  width: 85% !important;
}

.width-86 {
  width: 86% !important;
}

.width-87 {
  width: 87% !important;
}

.width-88 {
  width: 88% !important;
}

.width-89 {
  width: 89% !important;
}

.width-90 {
  width: 90% !important;
}

.width-91 {
  width: 91% !important;
}

.width-92 {
  width: 92% !important;
}

.width-93 {
  width: 93% !important;
}

.width-94 {
  width: 94% !important;
}

.width-95 {
  width: 95% !important;
}

.width-96 {
  width: 96% !important;
}

.width-97 {
  width: 97% !important;
}

.width-98 {
  width: 98% !important;
}

.width-99 {
  width: 99% !important;
}

.width-100 {
  width: 100% !important;
}

@media screen and (min-width: 768px) {
  .width-pc-0 {
    width: 0% !important;
  }
  .width-pc-1 {
    width: 1% !important;
  }
  .width-pc-2 {
    width: 2% !important;
  }
  .width-pc-3 {
    width: 3% !important;
  }
  .width-pc-4 {
    width: 4% !important;
  }
  .width-pc-5 {
    width: 5% !important;
  }
  .width-pc-6 {
    width: 6% !important;
  }
  .width-pc-7 {
    width: 7% !important;
  }
  .width-pc-8 {
    width: 8% !important;
  }
  .width-pc-9 {
    width: 9% !important;
  }
  .width-pc-10 {
    width: 10% !important;
  }
  .width-pc-11 {
    width: 11% !important;
  }
  .width-pc-12 {
    width: 12% !important;
  }
  .width-pc-13 {
    width: 13% !important;
  }
  .width-pc-14 {
    width: 14% !important;
  }
  .width-pc-15 {
    width: 15% !important;
  }
  .width-pc-16 {
    width: 16% !important;
  }
  .width-pc-17 {
    width: 17% !important;
  }
  .width-pc-18 {
    width: 18% !important;
  }
  .width-pc-19 {
    width: 19% !important;
  }
  .width-pc-20 {
    width: 20% !important;
  }
  .width-pc-21 {
    width: 21% !important;
  }
  .width-pc-22 {
    width: 22% !important;
  }
  .width-pc-23 {
    width: 23% !important;
  }
  .width-pc-24 {
    width: 24% !important;
  }
  .width-pc-25 {
    width: 25% !important;
  }
  .width-pc-26 {
    width: 26% !important;
  }
  .width-pc-27 {
    width: 27% !important;
  }
  .width-pc-28 {
    width: 28% !important;
  }
  .width-pc-29 {
    width: 29% !important;
  }
  .width-pc-30 {
    width: 30% !important;
  }
  .width-pc-31 {
    width: 31% !important;
  }
  .width-pc-32 {
    width: 32% !important;
  }
  .width-pc-33 {
    width: 33% !important;
  }
  .width-pc-34 {
    width: 34% !important;
  }
  .width-pc-35 {
    width: 35% !important;
  }
  .width-pc-36 {
    width: 36% !important;
  }
  .width-pc-37 {
    width: 37% !important;
  }
  .width-pc-38 {
    width: 38% !important;
  }
  .width-pc-39 {
    width: 39% !important;
  }
  .width-pc-40 {
    width: 40% !important;
  }
  .width-pc-41 {
    width: 41% !important;
  }
  .width-pc-42 {
    width: 42% !important;
  }
  .width-pc-43 {
    width: 43% !important;
  }
  .width-pc-44 {
    width: 44% !important;
  }
  .width-pc-45 {
    width: 45% !important;
  }
  .width-pc-46 {
    width: 46% !important;
  }
  .width-pc-47 {
    width: 47% !important;
  }
  .width-pc-48 {
    width: 48% !important;
  }
  .width-pc-49 {
    width: 49% !important;
  }
  .width-pc-50 {
    width: 50% !important;
  }
  .width-pc-51 {
    width: 51% !important;
  }
  .width-pc-52 {
    width: 52% !important;
  }
  .width-pc-53 {
    width: 53% !important;
  }
  .width-pc-54 {
    width: 54% !important;
  }
  .width-pc-55 {
    width: 55% !important;
  }
  .width-pc-56 {
    width: 56% !important;
  }
  .width-pc-57 {
    width: 57% !important;
  }
  .width-pc-58 {
    width: 58% !important;
  }
  .width-pc-59 {
    width: 59% !important;
  }
  .width-pc-60 {
    width: 60% !important;
  }
  .width-pc-61 {
    width: 61% !important;
  }
  .width-pc-62 {
    width: 62% !important;
  }
  .width-pc-63 {
    width: 63% !important;
  }
  .width-pc-64 {
    width: 64% !important;
  }
  .width-pc-65 {
    width: 65% !important;
  }
  .width-pc-66 {
    width: 66% !important;
  }
  .width-pc-67 {
    width: 67% !important;
  }
  .width-pc-68 {
    width: 68% !important;
  }
  .width-pc-69 {
    width: 69% !important;
  }
  .width-pc-70 {
    width: 70% !important;
  }
  .width-pc-71 {
    width: 71% !important;
  }
  .width-pc-72 {
    width: 72% !important;
  }
  .width-pc-73 {
    width: 73% !important;
  }
  .width-pc-74 {
    width: 74% !important;
  }
  .width-pc-75 {
    width: 75% !important;
  }
  .width-pc-76 {
    width: 76% !important;
  }
  .width-pc-77 {
    width: 77% !important;
  }
  .width-pc-78 {
    width: 78% !important;
  }
  .width-pc-79 {
    width: 79% !important;
  }
  .width-pc-80 {
    width: 80% !important;
  }
  .width-pc-81 {
    width: 81% !important;
  }
  .width-pc-82 {
    width: 82% !important;
  }
  .width-pc-83 {
    width: 83% !important;
  }
  .width-pc-84 {
    width: 84% !important;
  }
  .width-pc-85 {
    width: 85% !important;
  }
  .width-pc-86 {
    width: 86% !important;
  }
  .width-pc-87 {
    width: 87% !important;
  }
  .width-pc-88 {
    width: 88% !important;
  }
  .width-pc-89 {
    width: 89% !important;
  }
  .width-pc-90 {
    width: 90% !important;
  }
  .width-pc-91 {
    width: 91% !important;
  }
  .width-pc-92 {
    width: 92% !important;
  }
  .width-pc-93 {
    width: 93% !important;
  }
  .width-pc-94 {
    width: 94% !important;
  }
  .width-pc-95 {
    width: 95% !important;
  }
  .width-pc-96 {
    width: 96% !important;
  }
  .width-pc-97 {
    width: 97% !important;
  }
  .width-pc-98 {
    width: 98% !important;
  }
  .width-pc-99 {
    width: 99% !important;
  }
  .width-pc-100 {
    width: 100% !important;
  }
}
@media screen and (max-width: 767px) {
  .width-sp-0 {
    width: 0% !important;
  }
  .width-sp-1 {
    width: 1% !important;
  }
  .width-sp-2 {
    width: 2% !important;
  }
  .width-sp-3 {
    width: 3% !important;
  }
  .width-sp-4 {
    width: 4% !important;
  }
  .width-sp-5 {
    width: 5% !important;
  }
  .width-sp-6 {
    width: 6% !important;
  }
  .width-sp-7 {
    width: 7% !important;
  }
  .width-sp-8 {
    width: 8% !important;
  }
  .width-sp-9 {
    width: 9% !important;
  }
  .width-sp-10 {
    width: 10% !important;
  }
  .width-sp-11 {
    width: 11% !important;
  }
  .width-sp-12 {
    width: 12% !important;
  }
  .width-sp-13 {
    width: 13% !important;
  }
  .width-sp-14 {
    width: 14% !important;
  }
  .width-sp-15 {
    width: 15% !important;
  }
  .width-sp-16 {
    width: 16% !important;
  }
  .width-sp-17 {
    width: 17% !important;
  }
  .width-sp-18 {
    width: 18% !important;
  }
  .width-sp-19 {
    width: 19% !important;
  }
  .width-sp-20 {
    width: 20% !important;
  }
  .width-sp-21 {
    width: 21% !important;
  }
  .width-sp-22 {
    width: 22% !important;
  }
  .width-sp-23 {
    width: 23% !important;
  }
  .width-sp-24 {
    width: 24% !important;
  }
  .width-sp-25 {
    width: 25% !important;
  }
  .width-sp-26 {
    width: 26% !important;
  }
  .width-sp-27 {
    width: 27% !important;
  }
  .width-sp-28 {
    width: 28% !important;
  }
  .width-sp-29 {
    width: 29% !important;
  }
  .width-sp-30 {
    width: 30% !important;
  }
  .width-sp-31 {
    width: 31% !important;
  }
  .width-sp-32 {
    width: 32% !important;
  }
  .width-sp-33 {
    width: 33% !important;
  }
  .width-sp-34 {
    width: 34% !important;
  }
  .width-sp-35 {
    width: 35% !important;
  }
  .width-sp-36 {
    width: 36% !important;
  }
  .width-sp-37 {
    width: 37% !important;
  }
  .width-sp-38 {
    width: 38% !important;
  }
  .width-sp-39 {
    width: 39% !important;
  }
  .width-sp-40 {
    width: 40% !important;
  }
  .width-sp-41 {
    width: 41% !important;
  }
  .width-sp-42 {
    width: 42% !important;
  }
  .width-sp-43 {
    width: 43% !important;
  }
  .width-sp-44 {
    width: 44% !important;
  }
  .width-sp-45 {
    width: 45% !important;
  }
  .width-sp-46 {
    width: 46% !important;
  }
  .width-sp-47 {
    width: 47% !important;
  }
  .width-sp-48 {
    width: 48% !important;
  }
  .width-sp-49 {
    width: 49% !important;
  }
  .width-sp-50 {
    width: 50% !important;
  }
  .width-sp-51 {
    width: 51% !important;
  }
  .width-sp-52 {
    width: 52% !important;
  }
  .width-sp-53 {
    width: 53% !important;
  }
  .width-sp-54 {
    width: 54% !important;
  }
  .width-sp-55 {
    width: 55% !important;
  }
  .width-sp-56 {
    width: 56% !important;
  }
  .width-sp-57 {
    width: 57% !important;
  }
  .width-sp-58 {
    width: 58% !important;
  }
  .width-sp-59 {
    width: 59% !important;
  }
  .width-sp-60 {
    width: 60% !important;
  }
  .width-sp-61 {
    width: 61% !important;
  }
  .width-sp-62 {
    width: 62% !important;
  }
  .width-sp-63 {
    width: 63% !important;
  }
  .width-sp-64 {
    width: 64% !important;
  }
  .width-sp-65 {
    width: 65% !important;
  }
  .width-sp-66 {
    width: 66% !important;
  }
  .width-sp-67 {
    width: 67% !important;
  }
  .width-sp-68 {
    width: 68% !important;
  }
  .width-sp-69 {
    width: 69% !important;
  }
  .width-sp-70 {
    width: 70% !important;
  }
  .width-sp-71 {
    width: 71% !important;
  }
  .width-sp-72 {
    width: 72% !important;
  }
  .width-sp-73 {
    width: 73% !important;
  }
  .width-sp-74 {
    width: 74% !important;
  }
  .width-sp-75 {
    width: 75% !important;
  }
  .width-sp-76 {
    width: 76% !important;
  }
  .width-sp-77 {
    width: 77% !important;
  }
  .width-sp-78 {
    width: 78% !important;
  }
  .width-sp-79 {
    width: 79% !important;
  }
  .width-sp-80 {
    width: 80% !important;
  }
  .width-sp-81 {
    width: 81% !important;
  }
  .width-sp-82 {
    width: 82% !important;
  }
  .width-sp-83 {
    width: 83% !important;
  }
  .width-sp-84 {
    width: 84% !important;
  }
  .width-sp-85 {
    width: 85% !important;
  }
  .width-sp-86 {
    width: 86% !important;
  }
  .width-sp-87 {
    width: 87% !important;
  }
  .width-sp-88 {
    width: 88% !important;
  }
  .width-sp-89 {
    width: 89% !important;
  }
  .width-sp-90 {
    width: 90% !important;
  }
  .width-sp-91 {
    width: 91% !important;
  }
  .width-sp-92 {
    width: 92% !important;
  }
  .width-sp-93 {
    width: 93% !important;
  }
  .width-sp-94 {
    width: 94% !important;
  }
  .width-sp-95 {
    width: 95% !important;
  }
  .width-sp-96 {
    width: 96% !important;
  }
  .width-sp-97 {
    width: 97% !important;
  }
  .width-sp-98 {
    width: 98% !important;
  }
  .width-sp-99 {
    width: 99% !important;
  }
  .width-sp-100 {
    width: 100% !important;
  }
}
.top .btn-layout {
  margin-top: 32px;
  text-align: left;
}
.top .btn {
  margin: 0;
}
.top-bg {
  background: #FBF6F4;
  margin-top: 96px;
}
.top-mainvisual {
  position: relative;
  margin-bottom: 72px;
}
.top-mainvisual picture {
  position: relative;
  clip-path: url(#mask-mainvisual-pc);
  width: 100%;
  height: 680px;
  display: inline-block;
  bottom: 0;
}
.top-mainvisual picture::before {
  clip-path: url(#mask-mainvisual-pc);
  position: absolute;
  content: "";
  z-index: 2;
  background: -webkit-gradient(linear, left bottom, left top, from(rgba(0, 0, 0, 0.05)), to(rgba(0, 0, 0, 0.05))), rgba(95, 44, 40, 0.5);
  background: linear-gradient(0deg, rgba(0, 0, 0, 0.05) 0%, rgba(0, 0, 0, 0.05) 100%), rgba(95, 44, 40, 0.5);
  width: 100%;
  height: 100%;
}
.top-mainvisual picture img {
  height: 100%;
  width: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}
.top-mainvisual-lead {
  position: absolute;
  content: "";
  z-index: 3;
  color: #fff;
  text-shadow: 0 4px 4px rgba(0, 0, 0, 0.25);
  font-size: 74px;
  font-weight: 700;
  line-height: 170%;
  letter-spacing: 2.96px;
  top: 201px;
  left: 50%;
  -webkit-transform: translateX(-50%);
          transform: translateX(-50%);
  white-space: nowrap;
}
.top-ttl {
  font-size: 44px;
  font-weight: 700;
  line-height: 150%;
  letter-spacing: 1.76px;
  margin-bottom: 40px;
}
.top-ttl-sub {
  color: #9A4C45;
  font-size: 14px;
  font-weight: 700;
  line-height: 175%;
  letter-spacing: 0.56px;
  margin-bottom: 8px;
}
.top-business-svg, .top-outline-svg {
  position: absolute;
  top: 0;
}
.top-business-layout, .top-outline-layout {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}
.top-business-left, .top-outline-left {
  margin-right: 72px;
}
.top-business picture img {
  clip-path: url(#mask-business);
}
.top-business-layout {
  -webkit-box-pack: right;
      -ms-flex-pack: right;
          justify-content: right;
}
.top-business-left {
  max-width: 564px;
  width: 100%;
  margin-left: 20px;
}
.top-business-right {
  max-width: 992px;
  width: calc(100% - 636px);
}
.top-outline {
  position: relative;
  bottom: -72px;
}
.top-outline picture img {
  clip-path: url(#mask-outline);
}
.top-outline-left {
  max-width: 992px;
  width: calc(100% - 636px);
}
.top-outline-right {
  max-width: 564px;
  width: 100%;
  margin-right: 20px;
}
.top-news {
  max-width: 1136px;
  width: 100%;
  margin: 200px auto 128px;
}
.top-news-layout {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
}
.top-news-left {
  margin-right: 96px;
  width: 280px;
}
.top-news-right {
  max-width: calc(100% - 376px);
  width: 100%;
}
.top-contact {
  position: relative;
  overflow: hidden;
  color: #fff;
  text-align: center;
}
.top-contact-layout {
  position: relative;
  background: rgba(95, 44, 40, 0.8980392157);
  z-index: 2;
  padding: 88px 20px;
}
.top-contact-layout .top-ttl, .top-contact-layout .top-ttl-sub {
  color: #fff;
}
.top-contact-layout .top-ttl {
  margin-bottom: 56px;
  margin-top: 0;
}
.top-contact-bg {
  position: absolute;
  content: "";
  z-index: 1;
  width: 100%;
  height: 100%;
  top: 0;
  left: 0;
}
.top-contact-bg img {
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}
.top-contact-btn {
  display: inline-block;
  margin-top: 32px;
  width: 280px;
  height: 64px;
  padding: 19px 24px 16px 24px;
  text-align: center;
  background: #fff;
  font-size: 18px;
  font-weight: 500;
  line-height: 150%;
  letter-spacing: 0.72px;
  color: #9A4C45;
  border-radius: 100px;
  border: 1px solid #fff;
  -webkit-transition: 0.3s all;
  transition: 0.3s all;
}
.top-contact-btn:hover {
  background: #9A4C45;
  color: #fff;
}

/* =======================================- */
@media screen and (max-width: 1620px) and (min-width: 768px) {
  .top .btn {
    width: 100%;
    max-width: 280px;
  }
  .top-business-left {
    width: 33.4152334152%;
    min-width: 300px;
    margin-left: 20px;
  }
  .top-business-right {
    width: 60.9336609337%;
  }
  .top-outline-left {
    width: 60.9336609337%;
  }
  .top-outline-right {
    width: 33.4152334152%;
    min-width: 300px;
    margin-right: 20px;
  }
}
/* =======================================- */
@media screen and (max-width: 1136px) and (min-width: 768px) {
  .top-news {
    width: calc(100% - 40px);
  }
  .top-news-left {
    margin-right: 36px;
    width: 280px;
  }
  .top-news-right {
    width: calc(100% - 316px);
  }
}
/* ▼▼▼　SP
/* =======================================- */
@media screen and (max-width: 767px) {
  .top-bg {
    margin-top: 61px;
  }
  .top-mainvisual picture {
    height: 480px;
    clip-path: url(#mask-mainvisual-sp);
  }
  .top-mainvisual picture::before {
    clip-path: url(#mask-mainvisual-sp);
  }
  .top-mainvisual-lead {
    font-size: 48px;
    font-weight: 700;
    line-height: 170%;
    letter-spacing: 1.92px;
    top: 132px;
  }
  .top-ttl {
    font-size: 32px;
    font-weight: 700;
    line-height: 150%;
    letter-spacing: 1.28px;
    margin-bottom: 32px;
  }
  .top-ttl-sub {
    margin-bottom: 4px;
  }
  .top-business-layout, .top-outline-layout {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
  }
  .top-business-left, .top-outline-left {
    margin-right: 0;
  }
  .top-business picture img {
    clip-path: url(#mask-business);
  }
  .top-business-layout {
    -webkit-box-pack: right;
        -ms-flex-pack: right;
            justify-content: right;
  }
  .top-business-left {
    width: calc(100% - 40px);
    margin: 0 20px;
  }
  .top-business-right {
    width: calc(100% - 20px);
    margin-left: 20px;
    margin-top: 40px;
  }
  .top-outline-left {
    width: calc(100% - 20px);
    margin-right: 20px;
    margin-top: 40px;
    -webkit-box-ordinal-group: 3;
        -ms-flex-order: 2;
            order: 2;
  }
  .top-outline-right {
    width: calc(100% - 40px);
    margin: 0 20px;
    -webkit-box-ordinal-group: 2;
        -ms-flex-order: 1;
            order: 1;
  }
  .top-news {
    margin: 168px 20px 96px;
    width: calc(100% - 40px);
  }
  .top-news .btn-layout {
    text-align: left;
  }
  .top-news .btn-layout .btn {
    margin: 0 auto;
  }
  .top-news-layout {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
  }
  .top-news-left {
    margin-right: 0;
    width: 100%;
  }
  .top-news-right {
    max-width: 100%;
  }
  .top-contact-bg img {
    width: 100%;
  }
  .top-contact-layout {
    padding: 120px 20px;
  }
  .top-contact-layout .top-ttl {
    margin-bottom: 32px;
  }
  .top-contact-btn {
    width: 280px;
    height: 56px;
    padding: 16px 24px 12px;
    text-align: center;
    font-size: 16px;
    font-weight: 500;
    line-height: 175%;
    letter-spacing: 0.64px;
  }
}
.business-link {
  display: inline-block;
}
.business-link * {
  -webkit-transition: 0.3s all;
  transition: 0.3s all;
}
.business-link svg {
  margin-left: 8px;
}
.business-link a {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  margin-top: 32px;
}
.business-link a:hover {
  color: #9A4C45;
}
.business-link a:hover rect {
  fill: #9A4C45;
}
.business-link a:hover path {
  fill: #fff;
}

/* =======================================- */
/* ▼▼▼　SP
/* =======================================- */
@media screen and (max-width: 767px) {
  .business-item .row .col + .col {
    margin-top: 32px;
  }
  .business-link a {
    margin-top: 24px;
  }
}
.outline-lead {
  font-size: 18px;
  font-weight: 700;
  line-height: 150%; /* 27px */
  letter-spacing: 0.72px;
  margin-bottom: 16px;
}
.outline-greeting {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
}
.outline-greeting-left {
  width: calc(100% - 298px);
}
.outline-greeting-right {
  width: 250px;
  margin-left: 48px;
}
.outline-greeting-right p {
  margin-top: 8px;
}

/* =======================================- */
/* ▼▼▼　SP
/* =======================================- */
@media screen and (max-width: 767px) {
  .outline-greeting {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
  }
  .outline-greeting-left {
    width: 100%;
  }
  .outline-greeting-right {
    width: 100%;
    text-align: center;
    margin: 32px 0 0;
  }
  .outline-greeting-right img {
    max-width: 250px;
    width: 100%;
    margin: 0 auto;
  }
}
.recruit-contact {
  max-width: 960px;
  width: 100%;
  margin: 64px auto 0;
  background: #FBF6F4;
  border: 1px solid #9A4C45;
  padding: 64px 24px;
  text-align: center;
}
.recruit-contact-lead {
  color: #9A4C45;
  font-size: 18px;
  font-weight: 700;
  line-height: 150%;
  letter-spacing: 0.72px;
}
.recruit-contact-address {
  margin-top: 24px;
}

/* =======================================- */
/* ▼▼▼　SP
/* =======================================- */
@media screen and (max-width: 767px) {
  .recruit-contact {
    padding: 48px 24px;
    text-align: center;
  }
  .recruit-contact-address {
    margin-top: 16px;
  }
}
.privacy-item {
  border-bottom: 1px dashed #9A4C45;
  padding-bottom: 32px;
  margin-top: 40px;
}
.privacy-item:last-child {
  padding-bottom: 0;
  border-bottom: 0;
}

/* =======================================- */
/* ▼▼▼　SP
/* =======================================- */
@media screen and (max-width: 767px) {
  .privacy-item {
    margin-top: 32px;
  }
  .privacy .heading-m {
    font-size: 18px;
    font-weight: 700;
    line-height: 150%;
    letter-spacing: 0.72px;
    margin-bottom: 16px;
  }
}
.sitepolicy-item {
  border-bottom: 1px dashed #9A4C45;
  padding-bottom: 32px;
  margin-top: 40px;
}
.sitepolicy-item:last-child {
  padding-bottom: 0;
  border-bottom: 0;
}
.sitepolicy-item .caution-number {
  margin-top: 8px;
}

/* =======================================- */
/* ▼▼▼　SP
/* =======================================- */
@media screen and (max-width: 767px) {
  .sitepolicy-item {
    margin-top: 32px;
  }
  .sitepolicy .heading-m {
    font-size: 18px;
    font-weight: 700;
    line-height: 150%;
    letter-spacing: 0.72px;
    margin-bottom: 16px;
  }
}