@charset "UTF-8";
/*----------------------------------------
  reset
-----------------------------------------*/
@import url(https://fonts.googleapis.com/css?family=Noto+Sans+JP:400,500,700,900&display=swap&subset=japanese);
/* line 7, ../_base.scss */
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;
}

/* line 27, ../_base.scss */
* {
  margin: 0;
  padding: 0;
  box-sizing: border-box;
}

/* line 33, ../_base.scss */
html {
  box-sizing: border-box;
}

/* line 33, ../_base.scss */
*:before, *:after {
  box-sizing: inherit;
}

/* line 35, ../_base.scss */
body {
  line-height: 1;
}

/* line 39, ../_base.scss */
article, aside, details, figcaption, figure,
footer, header, hgroup, menu, nav, section {
  display: block;
}

/* line 44, ../_base.scss */
p {
  text-align: justify;
}

/* line 48, ../_base.scss */
nav ul {
  list-style: none;
}

/* line 52, ../_base.scss */
blockquote, q {
  quotes: none;
}

/* line 56, ../_base.scss */
blockquote:before, blockquote:after,
q:before, q:after {
  content: '';
  content: none;
}

/* line 62, ../_base.scss */
a {
  margin: 0;
  padding: 0;
  font-size: 100%;
  vertical-align: baseline;
  background: transparent;
  text-decoration: none;
}

/* change colours to suit your needs */
/* line 72, ../_base.scss */
ins {
  background-color: #ff9;
  color: #000;
  text-decoration: none;
}

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

/* line 86, ../_base.scss */
del {
  text-decoration: line-through;
}

/* line 90, ../_base.scss */
abbr[title], dfn[title] {
  border-bottom: 1px dotted;
  cursor: help;
}

/* line 95, ../_base.scss */
table {
  border-collapse: collapse;
  border-spacing: 0;
}

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

/* line 110, ../_base.scss */
input, select {
  vertical-align: middle;
  outline: 0;
}

/* line 115, ../_base.scss */
ul, li {
  list-style: none;
}

/* line 121, ../_base.scss */
input[type="text"], input[type="button"], input[type="submit"], input[type="tel"], input[type="email"] {
  -webkit-appearance: none;
  border: none;
  box-sizing: border-box;
}

/* line 126, ../_base.scss */
input[type="text"]:focus, input[type="button"]:focus, input[type="submit"]:focus, input[type="tel"]:focus, input[type="email"]:focus, textarea:focus {
  outline: 0;
  background-color: #fff;
}

/* line 131, ../_base.scss */
input:-internal-autofill-selected {
  background-color: #fff !important;
}

/* line 134, ../_base.scss */
input[type="text"]:focus:placeholder-shown, input[type="button"]:focus:placeholder-shown, input[type="submit"]:focus:placeholder-shown, input[type="tel"]:focus:placeholder-shown, input[type="email"]:focus:placeholder-shown, textarea:focus:placeholder-shown {
  color: #ddd;
}

/* line 137, ../_base.scss */
input[type="text"]:focus:-webkit-input-placeholder, input[type="button"]:focus:-webkit-input-placeholder, input[type="submit"]:focus:-webkit-input-placeholder, input[type="tel"]:focus:-webkit-input-placeholder, input[type="email"]:focus:-webkit-input-placeholder, textarea:focus:-webkit-input-placeholder {
  color: #ddd;
}

/* line 140, ../_base.scss */
input[type="text"]:focus:-moz-placeholder, input[type="button"]:focus:-moz-placeholder, input[type="submit"]:focus:-moz-placeholder, input[type="tel"]:focus:-moz-placeholder, input[type="email"]:focus:-moz-placeholder, textarea:focus:-moz-placeholder {
  color: #ddd;
}

/* line 143, ../_base.scss */
input[type="text"]:focus:-ms-input-placeholder, input[type="button"]:focus:-ms-input-placeholder, input[type="submit"]:focus:-ms-input-placeholder, input[type="tel"]:focus:-ms-input-placeholder, input[type="email"]:focus:-ms-input-placeholder, textarea:focus:-ms-input-placeholder {
  color: #ddd;
}

/* line 146, ../_base.scss */
select {
  -moz-appearance: none;
  -webkit-appearance: none;
  appearance: none;
  border-radius: 0;
  border: 0;
  margin: 0;
  padding: 0;
  background: none transparent;
  vertical-align: middle;
  font-size: inherit;
  color: inherit;
  box-sizing: content-box;
}

/* line 161, ../_base.scss */
input[type="text"]:placeholder-shown, input[type="email"]:placeholder-shown, input[type="tel"]:placeholder-shown {
  color: #ddd;
}

/* line 164, ../_base.scss */
input[type="text"]::-webkit-input-placeholder, input[type="email"]::-webkit-input-placeholder, input[type="tel"]::-webkit-input-placeholder {
  color: #ddd;
}

/* line 167, ../_base.scss */
input[type="text"]:-moz-placeholder, input[type="email"]:-moz-placeholder, input[type="tel"]:-moz-placeholder, textarea:-moz-placeholder {
  color: #ddd;
}

/* line 171, ../_base.scss */
input[type="text"]:-ms-input-placeholder, input[type="email"]:-ms-input-placeholder, input[type="tel"]:-ms-input-placeholder, textarea:-ms-input-placeholder {
  color: #fff;
}

/* line 175, ../_base.scss */
textarea:placeholder-shown {
  color: #aaa;
}

/* line 178, ../_base.scss */
textarea::-webkit-input-placeholder {
  color: #aaa;
}

/* line 181, ../_base.scss */
textarea::-moz-placeholder {
  color: #aaa;
}

/* line 186, ../_base.scss */
input:focus::placeholder,
textarea:focus::placeholder {
  color: transparent;
  transition: .1s;
}

/* line 192, ../_base.scss */
input:focus::-webkit-input-placeholder,
textarea:focus::-webkit-input-placeholder {
  color: transparent;
  transition: .1s;
}

/* line 198, ../_base.scss */
input:focus:-moz-placeholder,
textarea:focus:-moz-placeholder {
  color: transparent;
  transition: .1s;
}

/* line 204, ../_base.scss */
input:focus::-moz-placeholder,
textarea:focus::-moz-placeholder {
  color: transparent;
  transition: .1s;
}

/*スマートフォンサイトでaタグをタップしたときにでるハイライトの色を消す*/
/* line 211, ../_base.scss */
a {
  -webkit-tap-highlight-color: transparent;
  color: #212121;
}
@media screen and (min-width: 896px) {
  /* line 211, ../_base.scss */
  a {
    transition: .3s;
    backface-visibility: hidden;
    -webkit-backface-visibility: hidden;
    -webkit-font-smoothing: antialiased;
  }
  /* line 219, ../_base.scss */
  a:hover {
    transition: .3s;
    cursor: pointer;
    backface-visibility: hidden;
    -webkit-backface-visibility: hidden;
    -webkit-font-smoothing: antialiased;
  }
}

/* line 229, ../_base.scss */
table {
  border-collapse: collapse;
  border: none;
  border-spacing: 0;
  width: 100%;
}

/* line 235, ../_base.scss */
th, td {
  vertical-align: middle;
  border: solid 1px #000;
  font-weight: normal;
  text-align: left;
  border: 0;
}

/* line 242, ../_base.scss */
caption {
  text-align: left;
}

/* line 246, ../_base.scss */
html, body {
  width: 100%;
  height: 100%;
  color: #0d0d0d;
  font-size: 62.5%;
  font-family: 'Noto Sans JP', sans-serif;
  font-weight: 400;
  letter-spacing: 0.05em;
  font-display: swap;
}

/* line 256, ../_base.scss */
body {
  overflow-x: hidden;
}
/* line 259, ../_base.scss */
body.sp_fix {
  position: fixed;
  width: 100%;
  height: 100%;
  overflow: hidden;
}

/* line 267, ../_base.scss */
img {
  max-width: 100%;
  height: auto;
  vertical-align: bottom;
}

/* line 273, ../_base.scss */
.slick-list:focus {
  outline: none !important;
}

/* line 4, ../_layout.scss */
.sp {
  display: none;
}
@media screen and (max-width: 896px) {
  /* line 4, ../_layout.scss */
  .sp {
    display: block;
  }
}

@media screen and (max-width: 896px) {
  /* line 10, ../_layout.scss */
  .pc {
    display: none;
  }
}

/* line 16, ../_layout.scss */
#stage {
  overflow: hidden;
  display: none;
  position: relative;
}
/* line 20, ../_layout.scss */
#stage .modal-open {
  overflow: hidden;
}
/* line 24, ../_layout.scss */
#stage .modal-open:hover .btn_img img {
  transform: scale(1.1);
}
/* line 30, ../_layout.scss */
#stage .popup {
  display: none;
  position: fixed;
  z-index: 1001;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  background: rgba(0, 0, 0, 0.7);
  height: 100vh;
  width: 100%;
}
/* line 40, ../_layout.scss */
#stage .popup .textArea {
  background-color: #fff;
  width: 600px;
  overflow-y: scroll;
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  z-index: 50001;
}
@media (min-width: 897px) {
  /* line 40, ../_layout.scss */
  #stage .popup .textArea {
    padding: 52px;
  }
}
@media (max-width: 896px) {
  /* line 40, ../_layout.scss */
  #stage .popup .textArea {
    padding: 25px 5% 20px;
    height: 80%;
    width: 100%;
  }
}
/* line 57, ../_layout.scss */
#stage .popup .textArea .title {
  font-size: 2.8rem;
  font-weight: bold;
  text-align: center;
  margin-bottom: 20px;
}
/* line 63, ../_layout.scss */
#stage .popup .textArea .lead {
  font-size: 1.4rem;
  text-align: center;
  margin-bottom: 20px;
}
@media (max-width: 896px) {
  /* line 63, ../_layout.scss */
  #stage .popup .textArea .lead {
    text-align: left;
  }
}
/* line 71, ../_layout.scss */
#stage .popup .textArea table {
  margin-bottom: 20px;
}
/* line 73, ../_layout.scss */
#stage .popup .textArea table th {
  font-weight: bold;
  font-size: 1.8rem;
  white-space: nowrap;
  text-align: right;
  padding: 0.5em;
}
@media (max-width: 896px) {
  /* line 73, ../_layout.scss */
  #stage .popup .textArea table th {
    font-size: 1.4rem;
  }
}
/* line 83, ../_layout.scss */
#stage .popup .textArea table td {
  width: 100%;
  padding: 0.5em;
}
/* line 86, ../_layout.scss */
#stage .popup .textArea table td .wpcf7-form-control-wrap {
  position: relative;
}
/* line 88, ../_layout.scss */
#stage .popup .textArea table td .wpcf7-form-control-wrap input {
  display: block;
  font-size: 18px;
  -webkit-appearance: none;
  appearance: none;
  outline: none;
  border: none;
  border-radius: 0;
  background-color: #f5f5f5;
  width: 100%;
  padding: 1em;
  line-height: 1;
}
/* line 101, ../_layout.scss */
#stage .popup .textArea table td .wpcf7-form-control-wrap .wpcf7-not-valid-tip {
  font-size: 1.2rem;
}
/* line 107, ../_layout.scss */
#stage .popup .textArea .btn_area {
  display: flex;
  justify-content: center;
}
/* line 110, ../_layout.scss */
#stage .popup .textArea .btn_area .submitBtn {
  display: inline-block;
  font-size: 18px;
  width: 150px;
  color: #fff;
  padding: 0.75em 1em;
  font-weight: bold;
  -webkit-appearance: none;
  appearance: none;
  outline: none;
  border: none;
  border-radius: 0;
  cursor: pointer;
  transition: opacity 0.1s ease-in-out;
  margin-left: 0.5em;
  margin-right: 0.5em;
  line-height: 1;
  background-color: #de1d16;
}
/* line 130, ../_layout.scss */
#stage .popup .textArea .button_position {
  display: inline-block;
  font-size: 18px;
  width: 150px;
  color: #fff;
  padding: 0.75em 1em 1em;
  text-align: center;
  font-weight: bold;
  -webkit-appearance: none;
  appearance: none;
  outline: none;
  border: none;
  border-radius: 0;
  cursor: pointer;
  transition: opacity 0.1s ease-in-out;
  margin-left: 0.5em;
  margin-right: 0.5em;
  line-height: 1;
  background-color: #141414;
}
/* line 151, ../_layout.scss */
#stage .popup .wpcf7 form.invalid .wpcf7-response-output,
#stage .popup .wpcf7 form.unaccepted .wpcf7-response-output,
#stage .popup .wpcf7 form.payment-required .wpcf7-response-output {
  font-size: 2rem;
  text-align: center;
  color: #fff;
  background-color: red;
  border: none;
  display: table;
  line-height: 1.5;
  font-weight: bold;
  margin: 2rem auto 0;
}
@media (max-width: 896px) {
  /* line 151, ../_layout.scss */
  #stage .popup .wpcf7 form.invalid .wpcf7-response-output,
  #stage .popup .wpcf7 form.unaccepted .wpcf7-response-output,
  #stage .popup .wpcf7 form.payment-required .wpcf7-response-output {
    font-size: 1.8rem;
  }
}

/* line 170, ../_layout.scss */
.feature-popup {
  display: none;
  height: 100vh;
  width: 100%;
  background: rgba(0, 0, 0, 0.7);
  position: fixed;
  z-index: 1;
  top: 0;
  left: 0;
}
/* line 179, ../_layout.scss */
.feature-popup_img {
  max-width: 800px;
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  z-index: 50001;
}
@media (max-width: 896px) {
  /* line 179, ../_layout.scss */
  .feature-popup_img {
    width: 96%;
  }
}
/* line 189, ../_layout.scss */
.feature-popup_img .js-modal-close {
  cursor: pointer;
  color: #fff;
  position: absolute;
  top: 1.5%;
  right: 2%;
  line-height: 1.1;
  font-size: 50px;
}

/* line 204, ../_layout.scss */
.opening .content_area .bar::before {
  transition: all 0.8s ease-in;
}

/* line 213, ../_layout.scss */
.loading .content_area .bar::before {
  transition: all 0.4s ease-in;
}

/* line 219, ../_layout.scss */
.opening,
.loading {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100vh;
  z-index: 200;
  background-color: #fff;
  transition: all 0.6s cubic-bezier(0.5, 0, 0.3, 1);
  transition-timing-function: cubic-bezier(0.77, 0, 0.175, 1);
}
/* line 230, ../_layout.scss */
.opening .content_area,
.loading .content_area {
  width: 450px;
  position: relative;
  transform: translateX(38%);
  transition: all 0.6s cubic-bezier(0.5, 0, 0.3, 1);
  transition-timing-function: cubic-bezier(0.77, 0, 0.175, 1);
}
@media screen and (max-width: 896px) {
  /* line 230, ../_layout.scss */
  .opening .content_area,
  .loading .content_area {
    width: 90%;
    top: -60px;
    justify-content: center;
    transform: translateX(20%);
  }
}
/* line 242, ../_layout.scss */
.opening .content_area.on,
.loading .content_area.on {
  transform: translateX(0);
}
/* line 245, ../_layout.scss */
.opening .content_area.on2,
.loading .content_area.on2 {
  animation: frash 0.2s forwards;
}
/* line 248, ../_layout.scss */
.opening .content_area #opening_logo,
.loading .content_area #opening_logo {
  position: relative;
  overflow: hidden;
  width: 120px;
}
@media screen and (max-width: 896px) {
  /* line 248, ../_layout.scss */
  .opening .content_area #opening_logo,
  .loading .content_area #opening_logo {
    width: 80px;
  }
}
/* line 256, ../_layout.scss */
.opening .content_area #opening_logo.on::after,
.loading .content_area #opening_logo.on::after {
  left: -100%;
}
/* line 260, ../_layout.scss */
.opening .content_area #opening_logo::after,
.loading .content_area #opening_logo::after {
  content: "";
  width: 100%;
  height: 100%;
  background-color: #fff;
  position: absolute;
  top: 0;
  left: 0;
  transition: all 0.6s cubic-bezier(0.5, 0, 0.3, 1);
  transition-timing-function: cubic-bezier(0.77, 0, 0.175, 1);
}
/* line 272, ../_layout.scss */
.opening .content_area .bar,
.loading .content_area .bar {
  width: 200px;
  background-color: #cecece;
  display: block;
  height: 2px;
  margin: 0 15px 0 30px;
  position: relative;
  overflow: hidden;
}
@media screen and (max-width: 896px) {
  /* line 272, ../_layout.scss */
  .opening .content_area .bar,
  .loading .content_area .bar {
    width: 100px;
  }
}
/* line 284, ../_layout.scss */
.opening .content_area .bar.on::after,
.loading .content_area .bar.on::after {
  right: -100%;
}
/* line 289, ../_layout.scss */
.opening .content_area .bar.on2::before,
.loading .content_area .bar.on2::before {
  width: 120%;
}
/* line 293, ../_layout.scss */
.opening .content_area .bar::after,
.loading .content_area .bar::after {
  content: "";
  width: 100%;
  height: 100%;
  background-color: #fff;
  position: absolute;
  top: 0;
  right: 0%;
  transition: all 0.6s cubic-bezier(0.5, 0, 0.3, 1);
  transition-timing-function: cubic-bezier(0.77, 0, 0.175, 1);
}
/* line 304, ../_layout.scss */
.opening .content_area .bar::before,
.loading .content_area .bar::before {
  content: "";
  width: 0%;
  height: 100%;
  background-color: #e2302a;
  position: absolute;
  top: 0;
  left: 0;
}
/* line 314, ../_layout.scss */
.opening .content_area .count,
.loading .content_area .count {
  font-size: 2.4rem;
  font-weight: 500;
  font-style: italic;
  position: relative;
  transition: 0.3s;
  opacity: 0;
  transform: translateY(3%);
  color: #bbbaba;
}
@media screen and (max-width: 896px) {
  /* line 314, ../_layout.scss */
  .opening .content_area .count,
  .loading .content_area .count {
    font-size: 1.8rem;
  }
}
/* line 326, ../_layout.scss */
.opening .content_area .count.on,
.loading .content_area .count.on {
  opacity: 1;
  transform: translateY(0);
}
/* line 330, ../_layout.scss */
.opening .content_area .count::after,
.loading .content_area .count::after {
  content: "%";
  font-size: 1.6rem;
  font-weight: 500;
  color: #bbbaba;
  margin-left: 5px;
}
@media screen and (max-width: 896px) {
  /* line 330, ../_layout.scss */
  .opening .content_area .count::after,
  .loading .content_area .count::after {
    font-size: 1.4rem;
  }
}

/* line 344, ../_layout.scss */
.bdr_box {
  top: 0;
  left: 5%;
  z-index: -1;
  width: 90%;
  height: 100%;
  border-left: 1px #161616 solid;
}
/* line 351, ../_layout.scss */
.bdr_box.gray {
  border-color: #ededed;
}
/* line 353, ../_layout.scss */
.bdr_box.gray li {
  border-color: #ededed;
}
/* line 357, ../_layout.scss */
.bdr_box li {
  width: 25%;
  border-right: 1px #161616 solid;
}

/* line 363, ../_layout.scss */
.inner {
  width: 100%;
  max-width: 1000px;
  margin: 0 auto;
}

/* line 368, ../_layout.scss */
.outer {
  width: 100%;
  max-width: 1200px;
  margin: 0 auto;
}

/* line 374, ../_layout.scss */
.header {
  z-index: 100;
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  padding: 17px 2% 0;
  transition: 0.5s;
  transform: translateY(-110%);
}
@media screen and (max-width: 896px) {
  /* line 374, ../_layout.scss */
  .header {
    padding: 0;
  }
}
/* line 388, ../_layout.scss */
.header.wht .header_logo, .header.wht02 .header_logo {
  filter: invert(0) brightness(1) !important;
}
/* line 394, ../_layout.scss */
.header.wht .navi_box .navi li a, .header.wht02 .navi_box .navi li a {
  color: #000 !important;
}
@media screen and (min-width: 897px) {
  /* line 397, ../_layout.scss */
  .header.wht .navi_box .navi li a:hover, .header.wht02 .navi_box .navi li a:hover {
    color: #e2302a !important;
  }
}
/* line 407, ../_layout.scss */
.header.--anniversary .header_logo {
  filter: invert(0) brightness(1) !important;
}
/* line 413, ../_layout.scss */
.header.--anniversary .navi_box .navi li a {
  color: #000 !important;
}
@media screen and (min-width: 897px) {
  /* line 416, ../_layout.scss */
  .header.--anniversary .navi_box .navi li a:hover {
    color: #e2302a !important;
  }
}
@media screen and (max-width: 896px) {
  /* line 425, ../_layout.scss */
  .header.menu_open {
    background: #fff;
  }
  /* line 428, ../_layout.scss */
  .header.menu_open .header_logo {
    filter: invert(0) brightness(1) !important;
  }
}
@media screen and (min-width: 897px) {
  /* line 433, ../_layout.scss */
  .header.menu_open .header_logo {
    filter: invert(1) brightness(10) !important;
  }
  /* line 436, ../_layout.scss */
  .header.menu_open .navi_box {
    transform: translateX(150%) !important;
  }
}
/* line 441, ../_layout.scss */
.header.down {
  transform: translateY(0);
}
/* line 444, ../_layout.scss */
.header .header_inner {
  align-items: end;
}
/* line 446, ../_layout.scss */
.header .header_inner .header_logo {
  width: 100px;
  filter: invert(1) brightness(10);
}
@media screen and (max-width: 896px) {
  /* line 446, ../_layout.scss */
  .header .header_inner .header_logo {
    padding: 10px 0 10px 15px;
  }
}
/* line 453, ../_layout.scss */
.header .header_inner .navi_box {
  transition: 0.4s ease-in;
  text-align: right;
}
/* line 456, ../_layout.scss */
.header .header_inner .navi_box.off {
  transform: translateX(150%);
}
/* line 459, ../_layout.scss */
.header .header_inner .navi_box .contact_btn {
  padding: 10px 10px 10px 30px;
  font-size: 1.4rem;
  font-weight: 600;
  display: inline-block;
  margin-right: 35px;
}
@media screen and (max-width: 896px) {
  /* line 459, ../_layout.scss */
  .header .header_inner .navi_box .contact_btn {
    display: none;
  }
}
/* line 469, ../_layout.scss */
.header .header_inner .navi_box .external_btn {
  display: inline-block;
  margin-bottom: 14px;
  padding: 10px;
  font-size: 1.4rem;
  font-weight: 600;
  background-color: #e2302a;
  color: #fff;
  border: solid #e2302a 1px;
  transition: 0.3s;
  margin-right: 12px;
}
@media screen and (min-width: 897px) {
  /* line 481, ../_layout.scss */
  .header .header_inner .navi_box .external_btn:hover {
    background: #fff;
    color: #e2302a;
  }
}
/* line 486, ../_layout.scss */
.header .header_inner .navi_box .external_btn:first-child {
  margin-right: 12px;
}
@media screen and (max-width: 896px) {
  /* line 469, ../_layout.scss */
  .header .header_inner .navi_box .external_btn {
    display: none;
  }
}
/* line 493, ../_layout.scss */
.header .header_inner .navi_box .entry_btn {
  display: inline-block;
  margin-bottom: 14px;
  padding: 10px;
  font-size: 1.4rem;
  font-weight: 600;
  background-color: #e2302a;
  color: #fff;
  border: solid #e2302a 1px;
  transition: 0.3s;
}
@media screen and (min-width: 897px) {
  /* line 504, ../_layout.scss */
  .header .header_inner .navi_box .entry_btn:hover {
    background: #fff;
    color: #e2302a;
  }
}
/* line 509, ../_layout.scss */
.header .header_inner .navi_box .entry_btn:first-child {
  margin-right: 12px;
}
@media screen and (max-width: 896px) {
  /* line 493, ../_layout.scss */
  .header .header_inner .navi_box .entry_btn {
    display: none;
  }
}
/* line 518, ../_layout.scss */
.header .header_inner .navi_box .navi li a {
  margin-right: 35px;
  color: #fff;
  font-size: 1.4rem;
  font-weight: 600;
}
@media screen and (max-width: 896px) {
  /* line 518, ../_layout.scss */
  .header .header_inner .navi_box .navi li a {
    display: none;
  }
}
@media screen and (min-width: 897px) {
  /* line 527, ../_layout.scss */
  .header .header_inner .navi_box .navi li a:hover {
    color: #e2302a;
  }
}

/* line 538, ../_layout.scss */
.trigger {
  cursor: pointer;
  z-index: 101;
  transition: 0.3s;
  background-color: #e2302a;
  padding: 20px;
  position: fixed;
}
@media screen and (max-width: 896px) {
  /* line 545, ../_layout.scss */
  .trigger.sp_trg {
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    width: 80px;
    height: 100%;
    top: 0;
    right: 0;
  }
}
@media screen and (min-width: 897px) {
  /* line 545, ../_layout.scss */
  .trigger.sp_trg {
    display: none;
  }
}
@media screen and (min-width: 897px) {
  /* line 560, ../_layout.scss */
  .trigger.pc_trg {
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    width: 80px;
    height: 80px;
    top: 3%;
    right: 2%;
    transform: translateX(150%);
  }
  /* line 571, ../_layout.scss */
  .trigger.pc_trg.open {
    transform: translateX(0%);
  }
  /* line 574, ../_layout.scss */
  .trigger.pc_trg.close {
    transform: translateX(0%) !important;
  }
}
@media screen and (max-width: 896px) {
  /* line 560, ../_layout.scss */
  .trigger.pc_trg {
    display: none;
  }
}
/* line 582, ../_layout.scss */
.trigger span {
  width: 27px;
  height: 2px;
  background: #fff;
  display: block;
  min-height: 0%;
  transition: 0.3s;
}
/* line 589, ../_layout.scss */
.trigger span:nth-of-type(2) {
  margin: 7px 0;
}
/* line 594, ../_layout.scss */
.trigger.close span {
  background: #fff;
  transform: rotate(45deg);
}
/* line 597, ../_layout.scss */
.trigger.close span:nth-of-type(1) {
  margin-top: 10px;
}
/* line 600, ../_layout.scss */
.trigger.close span:nth-of-type(2) {
  width: 27px;
  margin-top: -2px;
  transform: rotate(-45deg);
}
/* line 605, ../_layout.scss */
.trigger.close span:last-child {
  opacity: 0;
}

/* line 612, ../_layout.scss */
.contact_area {
  background: url(../../img/common/contact-bg.jpg) no-repeat center;
  background-size: cover;
  padding: 180px 0;
}
@media screen and (max-width: 896px) {
  /* line 612, ../_layout.scss */
  .contact_area {
    padding: 80px 10%;
  }
}
/* line 619, ../_layout.scss */
.contact_area .text_area {
  text-align: center;
}
/* line 621, ../_layout.scss */
.contact_area .text_area .contact_ttl {
  color: #fff;
  font-size: 4rem;
  margin-bottom: 35px;
}
@media screen and (max-width: 896px) {
  /* line 621, ../_layout.scss */
  .contact_area .text_area .contact_ttl {
    margin-bottom: 30px;
    font-size: 3.4rem;
  }
}
/* line 630, ../_layout.scss */
.contact_area .text_area .lead {
  color: #fff;
  font-size: 1.6rem;
  text-align: center;
  font-weight: bold;
}
@media screen and (max-width: 896px) {
  /* line 630, ../_layout.scss */
  .contact_area .text_area .lead {
    font-size: 1.4rem;
    font-weight: 500;
  }
}
/* line 640, ../_layout.scss */
.contact_area .text_area .contact_btn {
  padding: 22px 0;
  width: 270px;
  font-size: 1.6rem;
  display: block;
  margin: 45px auto 0;
  font-weight: bold;
}
@media screen and (max-width: 896px) {
  /* line 640, ../_layout.scss */
  .contact_area .text_area .contact_btn {
    width: 100%;
    margin: 30px auto 0;
    font-size: 1.4rem;
    padding: 20px 0;
    font-weight: 500;
  }
}
/* line 654, ../_layout.scss */
.contact_area .text_area .contact_btn span {
  margin-left: 20px;
}

/* line 661, ../_layout.scss */
.footer {
  position: relative;
}
@media screen and (max-width: 896px) {
  /* line 661, ../_layout.scss */
  .footer {
    display: block !important;
  }
}
/* line 666, ../_layout.scss */
.footer .pagetop {
  right: 5%;
  bottom: 5%;
  width: 60px;
}
/* line 671, ../_layout.scss */
.footer a {
  transition: 0.3s;
}
@media screen and (min-width: 897px) {
  /* line 674, ../_layout.scss */
  .footer a:hover {
    opacity: 0.7;
  }
}
/* line 679, ../_layout.scss */
.footer .info_box {
  width: 22%;
  background-color: #e2302a;
  position: relative;
  padding: 30px 0;
}
@media screen and (max-width: 896px) {
  /* line 679, ../_layout.scss */
  .footer .info_box {
    width: 100%;
    padding: 40px 10%;
  }
}
/* line 688, ../_layout.scss */
.footer .info_box::before {
  content: "";
  width: 100%;
  height: 80px;
  background-color: #e2302a;
  position: absolute;
  top: -80px;
  left: 0;
}
@media screen and (max-width: 896px) {
  /* line 688, ../_layout.scss */
  .footer .info_box::before {
    content: none;
  }
}
/* line 700, ../_layout.scss */
.footer .info_box .foot_logo {
  width: 40%;
  margin: 60px auto 0;
}
@media screen and (max-width: 896px) {
  /* line 700, ../_layout.scss */
  .footer .info_box .foot_logo {
    margin: 0 auto 30px;
  }
}
/* line 707, ../_layout.scss */
.footer .info_box .text_area {
  padding: 0 10%;
}
@media screen and (max-width: 896px) {
  /* line 707, ../_layout.scss */
  .footer .info_box .text_area {
    padding: 0;
  }
}
/* line 712, ../_layout.scss */
.footer .info_box .text_area p {
  color: #fff;
}
/* line 714, ../_layout.scss */
.footer .info_box .text_area p.info {
  font-size: 1.4rem;
  line-height: 1.7;
  margin-bottom: 20px;
  font-weight: bold;
}
/* line 720, ../_layout.scss */
.footer .info_box .text_area p.copyright {
  font-size: 1.2rem;
}
/* line 726, ../_layout.scss */
.footer .nav_area {
  width: 80%;
  background: #000;
  padding: 80px 0 0 80px;
}
@media screen and (max-width: 896px) {
  /* line 726, ../_layout.scss */
  .footer .nav_area {
    width: 100%;
    padding: 60px 10%;
    display: block !important;
  }
}
/* line 735, ../_layout.scss */
.footer .nav_area .main_nav {
  flex-wrap: wrap;
  width: 65%;
}
@media screen and (max-width: 896px) {
  /* line 735, ../_layout.scss */
  .footer .nav_area .main_nav {
    width: 100%;
    display: block !important;
  }
}
/* line 742, ../_layout.scss */
.footer .nav_area .main_nav ul {
  width: 50%;
  margin-bottom: 50px;
}
@media screen and (max-width: 896px) {
  /* line 742, ../_layout.scss */
  .footer .nav_area .main_nav ul {
    margin-bottom: 25px;
    padding-bottom: 15px;
    border-bottom: 1px solid;
    width: 100%;
  }
}
/* line 751, ../_layout.scss */
.footer .nav_area .main_nav ul li {
  margin-bottom: 15px;
}
/* line 753, ../_layout.scss */
.footer .nav_area .main_nav ul li.mb {
  margin-bottom: 25px;
}
@media screen and (max-width: 896px) {
  /* line 753, ../_layout.scss */
  .footer .nav_area .main_nav ul li.mb {
    margin-bottom: 20px;
  }
}
/* line 758, ../_layout.scss */
.footer .nav_area .main_nav ul li.mb a {
  font-weight: bold;
  color: #fff;
}
/* line 763, ../_layout.scss */
.footer .nav_area .main_nav ul li.mt {
  margin-top: 50px;
}
/* line 766, ../_layout.scss */
.footer .nav_area .main_nav ul li.no_link {
  pointer-events: none;
}
/* line 769, ../_layout.scss */
.footer .nav_area .main_nav ul li a {
  font-size: 1.4rem;
  font-weight: bold;
}
@media screen and (max-width: 896px) {
  /* line 769, ../_layout.scss */
  .footer .nav_area .main_nav ul li a {
    font-weight: 500;
  }
}
/* line 775, ../_layout.scss */
.footer .nav_area .main_nav ul li a.under {
  color: #bbb;
}
/* line 782, ../_layout.scss */
.footer .nav_area .other_nav {
  width: 25%;
}
@media screen and (max-width: 896px) {
  /* line 782, ../_layout.scss */
  .footer .nav_area .other_nav {
    width: 100%;
  }
}
/* line 788, ../_layout.scss */
.footer .nav_area .other_nav ul li {
  margin-bottom: 20px;
}
/* line 790, ../_layout.scss */
.footer .nav_area .other_nav ul li.entry_list {
  margin-bottom: 13px;
}
/* line 793, ../_layout.scss */
.footer .nav_area .other_nav ul li.last_base {
  margin-bottom: 27px;
}
/* line 796, ../_layout.scss */
.footer .nav_area .other_nav ul li a {
  font-weight: bold;
  color: #bbb;
  font-size: 1.4rem;
}
@media screen and (max-width: 896px) {
  /* line 796, ../_layout.scss */
  .footer .nav_area .other_nav ul li a {
    font-weight: 500;
  }
}
/* line 804, ../_layout.scss */
.footer .nav_area .other_nav ul li .external_btn {
  display: block;
  width: 230px;
  padding: 10px;
  font-size: 1.4rem;
  font-weight: 500;
  background-color: #e2302a;
  color: #fff;
  border: solid #e2302a 1px;
  transition: 0.3s;
}
@media screen and (min-width: 897px) {
  /* line 815, ../_layout.scss */
  .footer .nav_area .other_nav ul li .external_btn:hover {
    background-color: #fff;
    color: #e2302a;
    opacity: 1;
  }
}
/* line 822, ../_layout.scss */
.footer .nav_area .other_nav ul li .entry_btn {
  display: block;
  width: max-content;
  padding: 10px;
  font-size: 1.4rem;
  font-weight: 500;
  background-color: #e2302a;
  color: #fff;
  border: solid #e2302a 1px;
  transition: 0.3s;
}
@media screen and (min-width: 897px) {
  /* line 833, ../_layout.scss */
  .footer .nav_area .other_nav ul li .entry_btn:hover {
    background-color: #fff;
    color: #e2302a;
    opacity: 1;
  }
}

/* line 846, ../_layout.scss */
.base_fv {
  position: relative;
  overflow: hidden;
}
/* line 849, ../_layout.scss */
.base_fv .bg {
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  z-index: -1;
  transition: 0.8s;
  transform: scale(1.1);
}
/* line 857, ../_layout.scss */
.base_fv .bg.on {
  transform: scale(1);
}
/* line 861, ../_layout.scss */
.base_fv.type_a {
  padding: 380px 0 150px 10%;
}
@media screen and (max-width: 896px) {
  /* line 861, ../_layout.scss */
  .base_fv.type_a {
    padding: 150px 0 80px 10%;
  }
}
/* line 867, ../_layout.scss */
.base_fv.type_b {
  padding: 300px 0 100px 10%;
}
@media screen and (max-width: 896px) {
  /* line 867, ../_layout.scss */
  .base_fv.type_b {
    padding: 150px 0 80px 10%;
  }
}
/* line 875, ../_layout.scss */
.base_fv .ttl_box.on .ttl {
  opacity: 1;
  letter-spacing: 0.1em;
}
/* line 880, ../_layout.scss */
.base_fv .ttl_box .ttl {
  color: #fff;
  font-size: 2.2rem;
  font-weight: normal;
  letter-spacing: 0.1em;
  transition: 0.8s;
  letter-spacing: 0.3em;
  opacity: 0;
}
@media screen and (max-width: 896px) {
  /* line 880, ../_layout.scss */
  .base_fv .ttl_box .ttl {
    font-size: 1.8rem;
  }
}
/* line 891, ../_layout.scss */
.base_fv .ttl_box .ttl span {
  color: #fff;
  font-size: 8rem;
  font-weight: bold;
  display: inline-block;
  margin-bottom: 20px;
}
@media screen and (max-width: 896px) {
  /* line 891, ../_layout.scss */
  .base_fv .ttl_box .ttl span {
    margin-bottom: 15px;
    font-size: 3.8rem;
    line-height: 1.2;
  }
}
/* line 905, ../_layout.scss */
.base_fv .anchor {
  bottom: -45px;
  left: 0;
  right: 0;
  margin: 0 auto;
  background-color: #e2302a;
  padding: 30px 3%;
  width: 80%;
}
@media screen and (max-width: 896px) {
  /* line 905, ../_layout.scss */
  .base_fv .anchor {
    padding: 0 0 0 20px;
    z-index: 2;
    width: 90%;
  }
}
/* line 918, ../_layout.scss */
.base_fv .anchor ul {
  flex-wrap: wrap;
}
/* line 920, ../_layout.scss */
.base_fv .anchor ul li {
  margin-right: 45px;
}
@media screen and (max-width: 896px) {
  /* line 920, ../_layout.scss */
  .base_fv .anchor ul li {
    margin-right: 0;
    width: 50%;
  }
}
@media screen and (max-width: 896px) {
  /* line 926, ../_layout.scss */
  .base_fv .anchor ul li.sp_last_link {
    width: 60%;
  }
}
/* line 931, ../_layout.scss */
.base_fv .anchor ul li a {
  color: #fff;
  font-size: 1.4rem;
  font-weight: bold;
  position: relative;
  padding: 10px 0 10px 20px;
  display: block;
}
@media screen and (max-width: 896px) {
  /* line 931, ../_layout.scss */
  .base_fv .anchor ul li a {
    font-weight: 500;
    padding: 15px;
  }
}
/* line 942, ../_layout.scss */
.base_fv .anchor ul li a::before {
  content: "▼";
  color: #fff;
  font-size: 1.1rem;
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  left: 0;
}

/* line 957, ../_layout.scss */
.page_navi {
  margin: 60px auto 0;
  text-align: center;
  position: relative;
  width: 80%;
}
@media screen and (max-width: 896px) {
  /* line 957, ../_layout.scss */
  .page_navi {
    width: 100%;
  }
}
/* line 966, ../_layout.scss */
.page_navi .wp-pagenavi .pages {
  display: none;
}
/* line 969, ../_layout.scss */
.page_navi .wp-pagenavi .page,
.page_navi .wp-pagenavi .current {
  border: none;
  font-size: 2rem;
  padding: 0;
  margin: 0 10px;
}
@media screen and (max-width: 896px) {
  /* line 969, ../_layout.scss */
  .page_navi .wp-pagenavi .page,
  .page_navi .wp-pagenavi .current {
    font-size: 1.6rem;
  }
}
/* line 979, ../_layout.scss */
.page_navi .wp-pagenavi .nextpostslink,
.page_navi .wp-pagenavi .previouspostslink {
  position: absolute;
  display: inline-block;
  border: 1px solid #000;
  width: 150px;
  background: #000;
  padding: 20px 0;
  text-indent: 0;
  transition: 0.3s;
  top: 50%;
  transform: translateY(-60%);
}
@media screen and (max-width: 896px) {
  /* line 979, ../_layout.scss */
  .page_navi .wp-pagenavi .nextpostslink,
  .page_navi .wp-pagenavi .previouspostslink {
    width: 100px;
    padding: 15px 0;
  }
}
@media screen and (min-width: 897px) {
  /* line 996, ../_layout.scss */
  .page_navi .wp-pagenavi .nextpostslink:hover,
  .page_navi .wp-pagenavi .previouspostslink:hover {
    background: #fff;
  }
  /* line 998, ../_layout.scss */
  .page_navi .wp-pagenavi .nextpostslink:hover::after,
  .page_navi .wp-pagenavi .previouspostslink:hover::after {
    color: #000;
  }
}
/* line 1003, ../_layout.scss */
.page_navi .wp-pagenavi .nextpostslink::after,
.page_navi .wp-pagenavi .previouspostslink::after {
  transition: 0.3s;
  font-size: 1.4rem;
  font-weight: bold;
  color: #fff;
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  width: 100%;
}
@media screen and (max-width: 896px) {
  /* line 1003, ../_layout.scss */
  .page_navi .wp-pagenavi .nextpostslink::after,
  .page_navi .wp-pagenavi .previouspostslink::after {
    font-size: 1.4rem;
  }
}
/* line 1018, ../_layout.scss */
.page_navi .wp-pagenavi .nextpostslink {
  left: auto;
  right: 0;
}
/* line 1021, ../_layout.scss */
.page_navi .wp-pagenavi .nextpostslink::after {
  content: "次のページへ";
}
@media screen and (max-width: 896px) {
  /* line 1021, ../_layout.scss */
  .page_navi .wp-pagenavi .nextpostslink::after {
    content: "NEXT";
  }
}
/* line 1028, ../_layout.scss */
.page_navi .wp-pagenavi .previouspostslink {
  right: auto;
  left: 0;
}
/* line 1031, ../_layout.scss */
.page_navi .wp-pagenavi .previouspostslink::after {
  content: "前のページへ";
}
@media screen and (max-width: 896px) {
  /* line 1031, ../_layout.scss */
  .page_navi .wp-pagenavi .previouspostslink::after {
    content: "PREV";
  }
}

/* line 1041, ../_layout.scss */
.bnr_area {
  position: relative;
}
@media screen and (min-width: 897px) {
  /* line 1046, ../_layout.scss */
  .bnr_area:hover .btn .base_btn {
    background: #fff;
    color: #e2302a;
    padding: 20px 50px;
  }
  /* line 1050, ../_layout.scss */
  .bnr_area:hover .btn .base_btn::after {
    background-color: #e2302a;
    width: 42px;
  }
}
/* line 1058, ../_layout.scss */
.bnr_area .btn {
  right: 10%;
  top: 57%;
}
@media screen and (max-width: 896px) {
  /* line 1058, ../_layout.scss */
  .bnr_area .btn {
    position: relative;
    top: auto;
    right: auto;
  }
}
/* line 1066, ../_layout.scss */
.bnr_area .btn .base_btn {
  background-color: #e2302a;
  color: #fff;
  padding: 20px 50px;
}
@media screen and (max-width: 896px) {
  /* line 1066, ../_layout.scss */
  .bnr_area .btn .base_btn {
    padding: 15px 50px;
  }
}
/* line 1073, ../_layout.scss */
.bnr_area .btn .base_btn::after {
  background-color: #fff;
}
@media screen and (min-width: 897px) {
  /* line 1077, ../_layout.scss */
  .bnr_area .btn .base_btn:hover {
    background: #fff;
    color: #e2302a;
    padding: 20px 50px;
  }
  /* line 1081, ../_layout.scss */
  .bnr_area .btn .base_btn:hover::after {
    background-color: #e2302a;
    width: 42px;
  }
}

/* line 1092, ../_layout.scss */
.recruit_ttl h3 {
  font-size: 12rem;
  margin-bottom: 10px;
}
@media screen and (max-width: 896px) {
  /* line 1092, ../_layout.scss */
  .recruit_ttl h3 {
    font-size: 4.8rem;
  }
}
/* line 1099, ../_layout.scss */
.recruit_ttl .bg_txt {
  background-color: #e2302a;
  font-size: 1.8rem;
  color: #fff;
  font-weight: normal;
  padding: 5px 10px;
  display: inline-block;
}
@media screen and (max-width: 896px) {
  /* line 1099, ../_layout.scss */
  .recruit_ttl .bg_txt {
    font-size: 1.6rem;
  }
}

/* line 1112, ../_layout.scss */
.menu {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100vh;
  background: #eee;
  transition: 0.5s;
  transform: translateY(-110%);
  z-index: 5;
  padding: 120px 5% 0;
  z-index: 90;
}
/* line 1124, ../_layout.scss */
.menu.on {
  transform: translateY(0);
}
@media screen and (min-width: 897px) {
  /* line 1112, ../_layout.scss */
  .menu {
    background: url(../../img/common/menu-bg.jpg) no-repeat center;
    background-size: cover;
    overflow-y: scroll;
    padding: 0;
  }
}
/* line 1133, ../_layout.scss */
.menu .menu_inner {
  overflow-y: scroll;
  height: 100%;
  padding-bottom: 150px;
}
/* line 1138, ../_layout.scss */
.menu .menu_inner .first_menu .first_menu_list {
  border-top: 1px solid #dbdbdb;
}
/* line 1140, ../_layout.scss */
.menu .menu_inner .first_menu .first_menu_list:last-child {
  border-bottom: 1px solid #dbdbdb;
}
/* line 1143, ../_layout.scss */
.menu .menu_inner .first_menu .first_menu_list a {
  font-size: 1.6rem;
  display: block;
  padding: 20px 0 20px 25px;
  position: relative;
  width: 100%;
}
/* line 1149, ../_layout.scss */
.menu .menu_inner .first_menu .first_menu_list a::before {
  content: "";
  width: 12px;
  height: 4px;
  background-color: #e2302a;
  position: absolute;
  top: 50%;
  left: 0;
  transform: translateY(-50%);
}
/* line 1162, ../_layout.scss */
.menu .menu_inner .first_menu .first_menu_list a.ac_trigger.show span::after {
  height: 0;
}
/* line 1167, ../_layout.scss */
.menu .menu_inner .first_menu .first_menu_list a.ac_trigger span {
  width: 25px;
  height: 2px;
  background-color: #e2302a;
  top: 50%;
  right: 0;
  transform: translateY(-50%);
}
/* line 1174, ../_layout.scss */
.menu .menu_inner .first_menu .first_menu_list a.ac_trigger span::after {
  content: "";
  width: 2px;
  height: 25px;
  background-color: #e2302a;
  position: absolute;
  left: 50%;
  top: 50%;
  transition: 0.3s;
  transform: translate(-50%, -50%);
  transform-origin: center;
}
/* line 1189, ../_layout.scss */
.menu .menu_inner .first_menu .first_menu_list .second_menu_box {
  display: none;
}
/* line 1193, ../_layout.scss */
.menu .menu_inner .first_menu .first_menu_list .second_menu_box .second_menu .second_menu_list:not(:first-child) {
  border-top: 1px solid #dbdbdb;
}
/* line 1196, ../_layout.scss */
.menu .menu_inner .first_menu .first_menu_list .second_menu_box .second_menu .second_menu_list a {
  background: #fff;
  font-size: 1.4rem;
}
/* line 1199, ../_layout.scss */
.menu .menu_inner .first_menu .first_menu_list .second_menu_box .second_menu .second_menu_list a::before {
  content: none;
}
/* line 1208, ../_layout.scss */
.menu .menu_inner .other_menu {
  margin-top: 30px;
}
@media screen and (max-width: 896px) {
  /* line 1208, ../_layout.scss */
  .menu .menu_inner .other_menu {
    display: block;
  }
}
/* line 1213, ../_layout.scss */
.menu .menu_inner .other_menu li {
  width: 75%;
}
@media (max-width: 896px) {
  /* line 1213, ../_layout.scss */
  .menu .menu_inner .other_menu li {
    margin: 20px auto 0;
  }
}
/* line 1218, ../_layout.scss */
.menu .menu_inner .other_menu li a {
  display: block;
  font-size: 1.4rem;
  text-align: center;
  color: #fff;
  background-color: #e2302a;
  padding: 18px 0;
}
/* line 1228, ../_layout.scss */
.menu .menu_inner .end_menu {
  margin-top: 30px;
  flex-wrap: wrap;
  justify-content: flex-start;
}
/* line 1232, ../_layout.scss */
.menu .menu_inner .end_menu li {
  margin-right: 30px;
  margin-bottom: 18px;
}
/* line 1235, ../_layout.scss */
.menu .menu_inner .end_menu li a {
  font-size: 1.4rem;
  line-height: 1.5;
}
/* line 1242, ../_layout.scss */
.menu .menu_content {
  padding: 150px 12% 100px;
}
/* line 1244, ../_layout.scss */
.menu .menu_content .right {
  width: 35%;
}
/* line 1246, ../_layout.scss */
.menu .menu_content .right .other_li {
  padding-bottom: 15px;
  margin-bottom: 30px;
  border-bottom: 1px solid #bbb;
}
/* line 1250, ../_layout.scss */
.menu .menu_content .right .other_li li {
  margin-bottom: 15px;
}
/* line 1252, ../_layout.scss */
.menu .menu_content .right .other_li li a {
  color: #bbb;
  font-size: 1.4rem;
}
@media screen and (min-width: 897px) {
  /* line 1256, ../_layout.scss */
  .menu .menu_content .right .other_li li a:hover {
    color: #e2302a;
  }
}
/* line 1264, ../_layout.scss */
.menu .menu_content .right .info .com_info {
  color: #fff;
  font-size: 1.4rem;
  font-weight: 500;
  margin-bottom: 45px;
  line-height: 1.6;
}
/* line 1271, ../_layout.scss */
.menu .menu_content .right .info .contact_btn {
  font-size: 1.4rem;
  padding: 11px 11px 11px 31px;
  font-weight: 500;
  margin-top: 15px;
  display: inline-block;
}
/* line 1278, ../_layout.scss */
.menu .menu_content .right .info .external_btn {
  display: block;
  width: 230px;
  margin-top: 15px;
  padding: 11px;
  font-size: 1.4rem;
  font-weight: 600;
  background-color: #e2302a;
  color: #fff;
  border: solid #e2302a 1px;
  transition: 0.3s;
}
@media screen and (min-width: 897px) {
  /* line 1290, ../_layout.scss */
  .menu .menu_content .right .info .external_btn:hover {
    background: #fff;
    color: #e2302a;
  }
}
/* line 1296, ../_layout.scss */
.menu .menu_content .right .info .entry_btn {
  display: block;
  width: max-content;
  padding: 11px;
  font-size: 1.4rem;
  font-weight: 600;
  background-color: #e2302a;
  color: #fff;
  border: solid #e2302a 1px;
  transition: 0.3s;
}
@media screen and (min-width: 897px) {
  /* line 1307, ../_layout.scss */
  .menu .menu_content .right .info .entry_btn:hover {
    background: #fff;
    color: #e2302a;
  }
}
/* line 1315, ../_layout.scss */
.menu .menu_content .left {
  width: 70%;
}
/* line 1319, ../_layout.scss */
.menu .menu_content .left .parent .parent_li:not(:last-child) {
  margin-bottom: 30px;
}
/* line 1322, ../_layout.scss */
.menu .menu_content .left .parent .parent_li a {
  position: relative;
  margin-bottom: 15px;
}
@media screen and (min-width: 897px) {
  /* line 1327, ../_layout.scss */
  .menu .menu_content .left .parent .parent_li a:hover h3 {
    color: #fff;
    letter-spacing: 0.07em;
  }
}
/* line 1333, ../_layout.scss */
.menu .menu_content .left .parent .parent_li a .num {
  font-size: 1.4rem;
  font-weight: 500;
  color: #808080;
  top: -18px;
  left: -30px;
}
/* line 1340, ../_layout.scss */
.menu .menu_content .left .parent .parent_li a h3 {
  transition: 0.3s;
  color: #e2302a;
  font-size: 3.8rem;
  margin-bottom: 10px;
  display: inline-block;
}
/* line 1347, ../_layout.scss */
.menu .menu_content .left .parent .parent_li a .ja {
  color: #fff;
  font-size: 1.6rem;
  font-weight: 500;
  margin-bottom: 10px;
  display: inline-block;
}
/* line 1355, ../_layout.scss */
.menu .menu_content .left .parent .parent_li .child {
  flex-wrap: wrap;
}
/* line 1357, ../_layout.scss */
.menu .menu_content .left .parent .parent_li .child .child_li {
  margin-right: 20px;
}
/* line 1359, ../_layout.scss */
.menu .menu_content .left .parent .parent_li .child .child_li a {
  margin-bottom: 0;
  font-size: 1.4rem;
  color: #bbb;
  font-weight: 500;
  line-height: 1.5;
}
@media screen and (min-width: 897px) {
  /* line 1366, ../_layout.scss */
  .menu .menu_content .left .parent .parent_li .child .child_li a:hover {
    color: #e2302a;
  }
}

/* line 1406, ../_layout.scss */
.movie_area {
  margin-top: 60px;
}
@media screen and (max-width: 896px) {
  /* line 1406, ../_layout.scss */
  .movie_area {
    margin-top: 45px;
  }
}

/* line 1412, ../_layout.scss */
.modal_open {
  max-width: 1100px;
  width: 90%;
  margin: 0 auto;
  position: relative;
  z-index: 1;
  left: -5%;
  background: url(../../img/top/gif.gif) no-repeat;
  background-size: 100%;
  cursor: pointer;
}
@media screen and (max-width: 896px) {
  /* line 1412, ../_layout.scss */
  .modal_open {
    left: 0;
    width: 100%;
  }
}
/* line 1426, ../_layout.scss */
.modal_open img {
  transition: 0.3s;
}
@media screen and (min-width: 897px) {
  /* line 1431, ../_layout.scss */
  .modal_open:hover img {
    opacity: 0;
  }
}

/* line 1438, ../_layout.scss */
.modal-overlay {
  position: fixed;
  width: 100%;
  height: 100%;
  top: 0;
  left: 0;
  background: rgba(0, 0, 0, 0.7);
  display: none;
  z-index: 1000000;
}
/* line 1447, ../_layout.scss */
.modal-overlay .modal-panel {
  width: 90%;
  max-width: 1000px;
  height: auto;
  max-height: 620px;
  padding: 10px;
  position: fixed;
}
/* line 1454, ../_layout.scss */
.modal-overlay .modal-panel iframe {
  width: 100%;
  height: 60vh;
}
@media screen and (max-width: 896px) {
  /* line 1454, ../_layout.scss */
  .modal-overlay .modal-panel iframe {
    height: 25vh;
  }
}
/* line 1462, ../_layout.scss */
.modal-overlay .modal-close {
  position: fixed;
  top: 30px;
  right: 30px;
  width: 80px;
  height: 80px;
  cursor: pointer;
}
@media screen and (max-width: 897px) {
  /* line 1462, ../_layout.scss */
  .modal-overlay .modal-close {
    top: 0;
  }
}
/* line 1472, ../_layout.scss */
.modal-overlay .modal-close::before, .modal-overlay .modal-close::after {
  position: absolute;
  top: 1px;
  border: 1px solid #fff;
  height: 80px;
  content: "";
}
/* line 1480, ../_layout.scss */
.modal-overlay .modal-close::before {
  left: 41px;
  transform: rotate(-45deg);
}
/* line 1484, ../_layout.scss */
.modal-overlay .modal-close::after {
  right: 35px;
  -ms-transform: rotate(45deg);
  transform: rotate(45deg);
}

/* line 1495, ../_layout.scss */
.header-anniversary {
  margin-top: 15px;
  width: 180px;
}
@media screen and (max-width: 896px) {
  /* line 1495, ../_layout.scss */
  .header-anniversary {
    width: 253px;
    margin-top: 15px;
    margin: 20px auto 0;
  }
}

/* line 1507, ../_layout.scss */
.footer-anniversary {
  width: 180px;
}

@font-face {
  font-family: "axis_heavy";
  font-style: normal;
  src: url(../../font/AxisStd-Heavy.otf) format("opentype");
  font-display: swap;
}
@font-face {
  font-family: "axis_bold";
  font-style: normal;
  src: url(../../font/AxisStd-Bold.otf) format("opentype");
  font-display: swap;
}
@font-face {
  font-family: "axis_regular";
  font-style: normal;
  src: url(../../font/AxisStd-Regular.otf) format("opentype");
  font-display: swap;
}
@keyframes frash {
  0% {
    opacity: 1;
  }
  10% {
    opacity: 0;
  }
  20% {
    opacity: 1;
  }
  30% {
    opacity: 0;
  }
  40% {
    opacity: 1;
  }
  50% {
    opacity: 0;
  }
  60% {
    opacity: 1;
  }
  70% {
    opacity: 0;
  }
  80% {
    opacity: 1;
  }
  90% {
    opacity: 0;
  }
  100% {
    opacity: 1;
  }
}
@keyframes scranim {
  0% {
    height: 0;
  }
  50% {
    top: 24px;
    height: 61px;
  }
  100% {
    top: 84px;
    height: 0;
  }
}
/* line 100, ../_module.scss */
.en_h {
  font-family: "axis_heavy", serif;
}

/* line 103, ../_module.scss */
.en_b {
  font-family: "axis_bold", serif;
}

/* line 106, ../_module.scss */
.en {
  font-family: "axis_regular", serif;
}

/* line 110, ../_module.scss */
.tel.no_link {
  pointer-events: none;
}

/* line 115, ../_module.scss */
.flx {
  display: flex;
}
/* line 117, ../_module.scss */
.flx.reverse {
  flex-direction: row-reverse;
}
/* line 120, ../_module.scss */
.flx.jfc_sb {
  justify-content: space-between;
}
/* line 123, ../_module.scss */
.flx.jfc_c {
  justify-content: center;
}
/* line 126, ../_module.scss */
.flx.aic {
  align-items: center;
}
/* line 129, ../_module.scss */
.flx.clm {
  flex-direction: column;
}
/* line 131, ../_module.scss */
.flx.clm > * {
  min-height: 0%;
}

/* line 136, ../_module.scss */
.ablt {
  position: absolute;
}

/* line 141, ../_module.scss */
.lead {
  font-size: 1.6rem;
  line-height: 1.8;
  letter-spacing: 0.1em;
}
@media screen and (max-width: 896px) {
  /* line 141, ../_module.scss */
  .lead {
    font-size: 1.4rem;
    text-align: justify;
    text-justify: inter-ideograph;
  }
}

/* line 156, ../_module.scss */
.vertical {
  -webkit-writing-mode: vertical-rl;
  -ms-writing-mode: tb-rl;
  -o-writing-mode: vertical-rl;
  writing-mode: vertical-rl;
  text-orientation: upright;
}

/* line 169, ../_module.scss */
.contact_btn {
  background-color: #e2302a;
  color: #fff;
  border: solid #e2302a 1px;
  transition: 0.3s;
}
/* line 174, ../_module.scss */
.contact_btn span {
  position: relative;
}
/* line 176, ../_module.scss */
.contact_btn span::after, .contact_btn span::before {
  content: "";
  width: 15px;
  height: 15px;
  position: absolute;
  top: 55%;
  left: -20px;
  transform: translateY(-50%);
  transition: 0.3s;
}
/* line 187, ../_module.scss */
.contact_btn span::after {
  background: url(../../img/common/mail-icon.png) no-repeat center;
  background-size: 15px;
}
/* line 191, ../_module.scss */
.contact_btn span::before {
  background: url(../../img/common/mail-icon-wht.png) no-repeat center;
  background-size: 15px;
  z-index: 1;
}
@media screen and (min-width: 897px) {
  /* line 198, ../_module.scss */
  .contact_btn:hover {
    background: #fff;
    color: #e2302a;
  }
  /* line 202, ../_module.scss */
  .contact_btn:hover span::before {
    opacity: 0;
  }
}

/* line 209, ../_module.scss */
.base_btn {
  font-weight: bold;
  font-size: 1.6rem;
  display: block;
  padding: 25px 0 25px 50px;
  position: relative;
  transition: 0.3s;
}
@media screen and (max-width: 896px) {
  /* line 209, ../_module.scss */
  .base_btn {
    font-weight: 500;
    font-size: 1.4rem;
    padding: 20px 0 20px 50px;
  }
}
@media screen and (min-width: 897px) {
  /* line 222, ../_module.scss */
  .base_btn:hover {
    padding: 25px 0 25px 65px;
  }
  /* line 224, ../_module.scss */
  .base_btn:hover::after {
    width: 57px;
  }
}
/* line 229, ../_module.scss */
.base_btn::after {
  content: "";
  width: 42px;
  height: 1px;
  position: absolute;
  top: 50%;
  left: 0;
  transition: 0.3s;
}

/* line 12, ../_states.scss */
.hvrop {
  transition: .3s;
}
@media screen and (min-width: 897px) {
  /* line 15, ../_states.scss */
  .hvrop:hover {
    opacity: 0.7;
  }
}

/* line 20, ../_states.scss */
.hvrgray {
  transition: 1s;
  filter: grayscale(1);
}
@media screen and (max-width: 896px) {
  /* line 20, ../_states.scss */
  .hvrgray {
    filter: grayscale(0);
  }
}
/* line 26, ../_states.scss */
.hvrgray > * {
  transition: 1s;
  filter: grayscale(1);
}
@media screen and (max-width: 896px) {
  /* line 26, ../_states.scss */
  .hvrgray > * {
    filter: grayscale(0);
  }
}
@media screen and (min-width: 897px) {
  /* line 34, ../_states.scss */
  .hvrgray:hover {
    filter: grayscale(0);
  }
  /* line 36, ../_states.scss */
  .hvrgray:hover > * {
    filter: grayscale(0);
  }
}

/* line 42, ../_states.scss */
.grayscale {
  transition: 2s;
  transition-delay: .5s;
  filter: grayscale(1);
}
/* line 46, ../_states.scss */
.grayscale.on {
  filter: grayscale(0);
}

/* line 51, ../_states.scss */
.svg_anim svg {
  stroke-dasharray: 1000;
  stroke-dashoffset: 1000;
  transition: 1s;
}
/* line 57, ../_states.scss */
.svg_anim.on svg {
  stroke-dashoffset: 2000;
}

/* line 63, ../_states.scss */
.fade_y {
  transform: translateY(10%);
  opacity: 0;
  transition: .5s;
}
/* line 67, ../_states.scss */
.fade_y.on {
  opacity: 1;
  transform: translateY(0%);
}

/* line 73, ../_states.scss */
.scr_cvr {
  overflow: hidden;
  position: relative;
  display: block;
  opacity: 0;
  transition: .5s;
}
/* line 79, ../_states.scss */
.scr_cvr::before {
  content: "";
  position: absolute;
  width: 100%;
  height: 100%;
  right: 0;
  top: 0;
  z-index: 1;
  background-color: #e2302a;
  transition: all 0.5s cubic-bezier(0.5, 0, 0.3, 1);
  transition-timing-function: cubic-bezier(0.77, 0, 0.175, 1);
}
/* line 91, ../_states.scss */
.scr_cvr.on {
  opacity: 1;
}
/* line 93, ../_states.scss */
.scr_cvr.on::before {
  right: -100%;
  transition-delay: .3s;
}

/* line 4, _top.scss */
.top {
  background: #000;
}
/* line 8, _top.scss */
.top .ttl_area .sub {
  background-color: #e2302a;
  font-size: 1.8rem;
  color: #fff;
  font-weight: normal;
  padding: 8px 10px;
  display: inline-block;
  margin-bottom: 15px;
}
@media screen and (max-width: 896px) {
  /* line 8, _top.scss */
  .top .ttl_area .sub {
    font-size: 1.4rem;
  }
}
/* line 20, _top.scss */
.top .ttl_area h3 {
  color: #fff;
  font-size: 11rem;
}
@media screen and (max-width: 896px) {
  /* line 20, _top.scss */
  .top .ttl_area h3 {
    font-size: 4.4rem;
  }
}
/* line 30, _top.scss */
.top .btn_area li .base_btn {
  color: #fff;
  border: 1px solid #e2302a;
}
@media screen and (min-width: 897px) {
  /* line 34, _top.scss */
  .top .btn_area li .base_btn:hover {
    background-color: #e2302a;
  }
  /* line 36, _top.scss */
  .top .btn_area li .base_btn:hover::after {
    background: #fff;
  }
}
/* line 41, _top.scss */
.top .btn_area li .base_btn::after {
  background-color: #e2302a;
}
/* line 47, _top.scss */
.top .firstview {
  position: relative;
  height: 100vh;
  overflow: hidden;
}
/* line 51, _top.scss */
.top .firstview .catch_box {
  width: 43%;
  top: 55%;
  transform: translateY(-50%);
  left: 9%;
  z-index: 2;
}
@media screen and (max-width: 896px) {
  /* line 51, _top.scss */
  .top .firstview .catch_box {
    width: 100%;
    top: 35%;
    transform: translateY(0);
    left: 10%;
  }
}
/* line 64, _top.scss */
.top .firstview .catch_box.on .top_catch {
  opacity: 1;
  transform: translateY(0);
  transition-delay: 0.3s;
}
/* line 69, _top.scss */
.top .firstview .catch_box.on span {
  opacity: 1;
  transform: translateY(0);
  transition-delay: 0.6s;
}
/* line 75, _top.scss */
.top .firstview .catch_box .top_catch {
  margin-bottom: 50px;
  transition: 0.4s;
  opacity: 0;
  transform: translateY(5%);
}
@media screen and (max-width: 896px) {
  /* line 75, _top.scss */
  .top .firstview .catch_box .top_catch {
    margin-bottom: 30px;
    width: 75%;
  }
}
/* line 85, _top.scss */
.top .firstview .catch_box span {
  transition: 0.4s;
  opacity: 0;
  transform: translateY(3%);
  font-style: italic;
  color: #fff;
  font-size: 1.4rem;
  padding-left: 70px;
  position: relative;
  letter-spacing: 0.18em;
}
@media screen and (max-width: 896px) {
  /* line 85, _top.scss */
  .top .firstview .catch_box span {
    padding-left: 50px;
  }
}
/* line 98, _top.scss */
.top .firstview .catch_box span::before {
  content: "";
  width: 55px;
  height: 1px;
  background: #fff;
  position: absolute;
  top: 47%;
  left: 0;
}
@media screen and (max-width: 896px) {
  /* line 98, _top.scss */
  .top .firstview .catch_box span::before {
    width: 35px;
  }
}
/* line 112, _top.scss */
.top .firstview .scroll {
  bottom: 5%;
  right: 5%;
  z-index: 2;
  width: 10px;
}
@media screen and (max-width: 896px) {
  /* line 112, _top.scss */
  .top .firstview .scroll {
    bottom: 12%;
  }
}
/* line 121, _top.scss */
.top .firstview #mv_movie {
  overflow: hidden;
  position: absolute;
  width: 130vw;
  height: 100%;
  top: 0;
  left: 50%;
  transform: translate(-50%);
  z-index: 1;
}
@media screen and (max-width: 896px) {
  /* line 121, _top.scss */
  .top .firstview #mv_movie {
    height: 100vh;
    width: 200vw;
  }
}
/* line 134, _top.scss */
.top .firstview #mv_movie .thumb_bg {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: url(../../img/top/thumb.jpg) no-repeat center;
  background-size: cover;
  z-index: -1;
}
@media screen and (max-width: 896px) {
  /* line 134, _top.scss */
  .top .firstview #mv_movie .thumb_bg {
    background: url(../img/top/sp-thumb.jpg) no-repeat center;
    background-size: cover;
  }
}
/* line 148, _top.scss */
.top .firstview #mv_movie::after {
  content: "";
  background: rgba(0, 0, 0, 0.3);
  width: 100%;
  height: 100%;
  position: absolute;
  top: 0;
  left: 0;
}
/* line 157, _top.scss */
.top .firstview #mv_movie video {
  width: 100%;
}
@media screen and (max-width: 896px) {
  /* line 157, _top.scss */
  .top .firstview #mv_movie video {
    width: 200%;
    transform: translateX(-31%);
  }
}
/* line 166, _top.scss */
.top .news_area {
  background: #eee;
  padding: 60px 5%;
  transition: 0.3s;
}
/* line 170, _top.scss */
.top .news_area h4 {
  transition: 0.3s;
  font-size: 1.6rem;
  margin-bottom: 30px;
  letter-spacing: 0.1em;
}
/* line 176, _top.scss */
.top .news_area .cat {
  transition: 0.3s;
  padding: 5px 0;
  background: #000;
  font-size: 1.2rem;
  color: #fff;
  width: 140px;
  text-align: center;
}
@media screen and (max-width: 896px) {
  /* line 176, _top.scss */
  .top .news_area .cat {
    display: inline-block;
    width: auto;
    padding: 5px 10px;
  }
}
/* line 190, _top.scss */
.top .news_area .base_btn {
  color: #fff;
  border: 1px solid #e2302a;
  width: 240px;
  margin: 40px auto 0;
  text-align: center;
  padding: 17px 0;
  background-color: #e2302a;
}
@media screen and (max-width: 896px) {
  /* line 190, _top.scss */
  .top .news_area .base_btn {
    width: 100%;
  }
}
@media screen and (min-width: 897px) {
  /* line 202, _top.scss */
  .top .news_area .base_btn:hover {
    background-color: #fff;
    color: #e2302a;
  }
  /* line 205, _top.scss */
  .top .news_area .base_btn:hover::after {
    background: #e2302a;
  }
}
/* line 210, _top.scss */
.top .news_area .base_btn::after {
  background-color: #e2302a;
}
/* line 216, _top.scss */
.top .news_area .news_box ul li {
  padding: 0 20px;
  border-bottom: #d6d6d6 solid 1px;
  pointer-events: none;
  transition: 0.4s;
}
@media screen and (max-width: 896px) {
  /* line 216, _top.scss */
  .top .news_area .news_box ul li {
    padding: 0;
    margin-bottom: 20px;
  }
}
@media screen and (min-width: 897px) {
  /* line 226, _top.scss */
  .top .news_area .news_box ul li:first-child {
    border-top: #d6d6d6 solid 1px;
  }
  /* line 229, _top.scss */
  .top .news_area .news_box ul li:hover {
    background: #000;
  }
  /* line 231, _top.scss */
  .top .news_area .news_box ul li:hover h4 {
    color: #fff;
  }
  /* line 234, _top.scss */
  .top .news_area .news_box ul li:hover .cat {
    color: #000;
    background: #fff;
  }
  /* line 238, _top.scss */
  .top .news_area .news_box ul li:hover .news_ttl {
    border-color: #fff;
    color: #fff;
  }
  /* line 241, _top.scss */
  .top .news_area .news_box ul li:hover .news_ttl::after, .top .news_area .news_box ul li:hover .news_ttl::before {
    background-color: #fff;
  }
}
/* line 248, _top.scss */
.top .news_area .news_box ul li .news_flx {
  align-items: baseline;
  align-items: center;
}
@media screen and (max-width: 896px) {
  /* line 248, _top.scss */
  .top .news_area .news_box ul li .news_flx {
    display: block;
  }
}
/* line 255, _top.scss */
.top .news_area .news_box ul li .news_ttl {
  transition: 0.3s;
  font-size: 1.4rem;
  line-height: 1.5;
  font-weight: bold;
  color: #666;
  position: relative;
  pointer-events: auto;
  width: calc(100% - 140px);
  text-align: left;
  margin-left: 30px;
  padding: 25px 40px 25px 0;
}
/* line 267, _top.scss */
.top .news_area .news_box ul li .news_ttl time {
  font-size: 1.2rem;
  color: #999;
  display: block;
  margin-bottom: 5px;
}
@media screen and (max-width: 896px) {
  /* line 255, _top.scss */
  .top .news_area .news_box ul li .news_ttl {
    font-weight: 500;
    display: block;
    margin-left: 0;
    padding: 0 45px 20px 0;
    width: 100%;
    margin-top: 10px;
  }
}
/* line 281, _top.scss */
.top .news_area .news_box ul li .news_ttl::after {
  content: "";
  width: 30px;
  height: 1px;
  background-color: #666;
  position: absolute;
  right: 0;
  top: 50%;
  transition: 0.3s;
}
/* line 291, _top.scss */
.top .news_area .news_box ul li .news_ttl::before {
  transition: 0.3s;
  content: "";
  width: 8px;
  height: 1px;
  background-color: #666;
  position: absolute;
  right: 0;
  top: 48%;
  transform: rotate(35deg);
}
@media screen and (max-width: 896px) {
  /* line 255, _top.scss */
  .top .news_area .news_box ul li .news_ttl {
    line-height: 1.5;
    padding: 25px 0;
  }
}
/* line 309, _top.scss */
.top .news_area .news_box .no_news {
  font-size: 1.4rem;
  font-weight: bold;
}
/* line 315, _top.scss */
.top .concept {
  padding: 100px 0;
  position: relative;
  background: #fff;
}
@media screen and (max-width: 896px) {
  /* line 315, _top.scss */
  .top .concept {
    padding: 80px 10%;
    display: block;
  }
}
/* line 323, _top.scss */
.top .concept .img_box {
  width: 51%;
  position: relative;
}
@media screen and (max-width: 896px) {
  /* line 323, _top.scss */
  .top .concept .img_box {
    width: 100%;
    margin-bottom: 40px;
  }
}
/* line 331, _top.scss */
.top .concept .text_area {
  padding: 0 5% 0 80px;
}
@media screen and (max-width: 896px) {
  /* line 331, _top.scss */
  .top .concept .text_area {
    padding: 0;
  }
}
/* line 336, _top.scss */
.top .concept .text_area .concept_ttl {
  font-size: 8vw;
  margin-bottom: 30px;
}
@media screen and (max-width: 896px) {
  /* line 336, _top.scss */
  .top .concept .text_area .concept_ttl {
    font-size: 4.4rem;
    margin-bottom: 20px;
  }
}
/* line 344, _top.scss */
.top .concept .text_area .catch_jp {
  margin-bottom: 35px;
}
@media screen and (max-width: 896px) {
  /* line 344, _top.scss */
  .top .concept .text_area .catch_jp {
    margin-bottom: 20px;
  }
}
/* line 349, _top.scss */
.top .concept .text_area .catch_jp span {
  padding: 8px 18px;
  background-color: #e2302a;
  font-size: 2.8rem;
  color: #fff;
  display: inline-block;
  margin-bottom: 7px;
  font-weight: 500;
}
@media screen and (max-width: 896px) {
  /* line 349, _top.scss */
  .top .concept .text_area .catch_jp span {
    padding: 7px 12px;
    font-size: 2.4rem;
  }
}
/* line 361, _top.scss */
.top .concept .text_area .catch_jp span.end {
  padding: 8px 0 8px 18px;
}
@media screen and (max-width: 896px) {
  /* line 361, _top.scss */
  .top .concept .text_area .catch_jp span.end {
    padding: 7px 0 7px 12px;
  }
}
/* line 369, _top.scss */
.top .concept .text_area .lead {
  font-weight: bold;
}
@media screen and (max-width: 896px) {
  /* line 369, _top.scss */
  .top .concept .text_area .lead {
    line-height: 1.6;
  }
}
/* line 377, _top.scss */
.top .carousel_slider {
  background: #fff;
  width: 100%;
  padding-bottom: 100px;
}
@media screen and (max-width: 896px) {
  /* line 377, _top.scss */
  .top .carousel_slider {
    display: none;
  }
}
/* line 385, _top.scss */
.top .strengths {
  background: #fff;
  padding-bottom: 180px;
}
@media screen and (max-width: 896px) {
  /* line 385, _top.scss */
  .top .strengths {
    padding-bottom: 0;
  }
}
/* line 391, _top.scss */
.top .strengths .strengths_mv {
  width: 90%;
  margin-left: auto;
  margin-right: 0;
  position: relative;
  z-index: 1;
}
@media screen and (max-width: 896px) {
  /* line 391, _top.scss */
  .top .strengths .strengths_mv {
    width: 100%;
  }
}
/* line 400, _top.scss */
.top .strengths .strengths_mv::after {
  content: "";
  background: url(../../img/top/star.png) repeat-y;
  background-size: contain;
  width: 7%;
  height: 100%;
  position: absolute;
  left: -5%;
  bottom: -10%;
  z-index: -1;
}
@media screen and (max-width: 896px) {
  /* line 400, _top.scss */
  .top .strengths .strengths_mv::after {
    content: none;
  }
}
/* line 414, _top.scss */
.top .strengths .strengths_mv .ttl_area {
  top: 60px;
  left: 5%;
  z-index: 1;
}
@media screen and (max-width: 896px) {
  /* line 414, _top.scss */
  .top .strengths .strengths_mv .ttl_area {
    position: static;
    background: #000;
    padding: 30px 10%;
  }
}
/* line 423, _top.scss */
.top .strengths .strengths_mv .ttl_area h3 {
  text-shadow: 2px 1px 7px #908d8d;
}
@media screen and (max-width: 896px) {
  /* line 423, _top.scss */
  .top .strengths .strengths_mv .ttl_area h3 {
    text-shadow: none;
  }
}
/* line 430, _top.scss */
.top .strengths .strengths_mv .link_area {
  background: #000;
  right: 0;
  bottom: -5%;
  padding: 44px;
  width: 53%;
}
@media screen and (max-width: 896px) {
  /* line 430, _top.scss */
  .top .strengths .strengths_mv .link_area {
    width: 100%;
    padding: 20px 10%;
    position: static;
  }
  /* line 440, _top.scss */
  .top .strengths .strengths_mv .link_area ul {
    display: block;
  }
}
/* line 444, _top.scss */
.top .strengths .strengths_mv .link_area ul {
  flex-wrap: wrap;
}
/* line 446, _top.scss */
.top .strengths .strengths_mv .link_area ul li {
  border-bottom: 1px solid #fff;
}
@media (min-width: 897px) {
  /* line 446, _top.scss */
  .top .strengths .strengths_mv .link_area ul li {
    width: 46%;
  }
}
@media screen and (max-width: 896px) {
  /* line 446, _top.scss */
  .top .strengths .strengths_mv .link_area ul li {
    border-color: #e8e8e8;
    margin-bottom: 20px;
  }
}
/* line 455, _top.scss */
.top .strengths .strengths_mv .link_area ul li:nth-child(odd) {
  margin-right: 8%;
}
@media screen and (max-width: 896px) {
  /* line 455, _top.scss */
  .top .strengths .strengths_mv .link_area ul li:nth-child(odd) {
    margin-right: 0;
  }
}
@media screen and (min-width: 897px) {
  /* line 462, _top.scss */
  .top .strengths .strengths_mv .link_area ul li:not(:nth-child(n + 3)) {
    margin-bottom: 26px;
  }
  /* line 465, _top.scss */
  .top .strengths .strengths_mv .link_area ul li:hover {
    border-bottom: 1px solid #e2302a;
  }
  /* line 467, _top.scss */
  .top .strengths .strengths_mv .link_area ul li:hover a {
    color: #e2302a;
  }
}
/* line 472, _top.scss */
.top .strengths .strengths_mv .link_area ul li a {
  color: #fff;
  font-size: 1.4rem;
  font-weight: bold;
  line-height: 1.5;
  display: inline-block;
  padding-bottom: 12px;
}
@media screen and (max-width: 896px) {
  /* line 472, _top.scss */
  .top .strengths .strengths_mv .link_area ul li a {
    padding-bottom: 20px;
  }
}
/* line 488, _top.scss */
.top .infra {
  padding-left: 10%;
  position: relative;
  z-index: 1;
}
@media screen and (max-width: 896px) {
  /* line 488, _top.scss */
  .top .infra {
    padding: 0;
  }
}
/* line 495, _top.scss */
.top .infra::after {
  content: "";
  background-color: #e2302a;
  width: 3.5%;
  height: 100%;
  position: absolute;
  top: 0;
  right: 0;
}
@media screen and (max-width: 896px) {
  /* line 495, _top.scss */
  .top .infra::after {
    content: none;
  }
}
/* line 507, _top.scss */
.top .infra .head_area {
  padding: 120px 0 180px;
}
@media screen and (max-width: 896px) {
  /* line 507, _top.scss */
  .top .infra .head_area {
    padding: 80px 10% 60px;
  }
}
/* line 513, _top.scss */
.top .infra .head_area .ttl_area h3 {
  white-space: nowrap;
  font-size: 10vw;
  margin-bottom: 35px;
}
@media screen and (max-width: 896px) {
  /* line 513, _top.scss */
  .top .infra .head_area .ttl_area h3 {
    font-size: 4.4rem;
    margin-bottom: 20px;
  }
}
/* line 523, _top.scss */
.top .infra .head_area .lead {
  color: #fff;
  width: 55%;
}
@media screen and (max-width: 896px) {
  /* line 523, _top.scss */
  .top .infra .head_area .lead {
    width: 100%;
  }
}
/* line 530, _top.scss */
.top .infra .head_area .img_box {
  margin-top: 80px;
  position: relative;
}
@media screen and (max-width: 896px) {
  /* line 530, _top.scss */
  .top .infra .head_area .img_box {
    margin-top: 30px;
  }
}
/* line 536, _top.scss */
.top .infra .head_area .img_box .smartphone {
  width: 75%;
  right: -25%;
  bottom: -13%;
}
@media screen and (max-width: 896px) {
  /* line 536, _top.scss */
  .top .infra .head_area .img_box .smartphone {
    right: -20%;
    bottom: -35%;
  }
}
/* line 547, _top.scss */
.top .infra .service_area {
  position: relative;
  width: 55%;
  background-color: #e2302a;
  margin-right: 0;
  margin-left: auto;
  padding: 150px 10% 150px 5%;
}
@media screen and (max-width: 896px) {
  /* line 547, _top.scss */
  .top .infra .service_area {
    width: 100%;
    background-color: transparent;
    padding: 40px 10%;
  }
}
/* line 559, _top.scss */
.top .infra .service_area::after {
  content: "";
  background: #000;
  width: 100%;
  height: 100%;
  position: absolute;
  top: 0;
  left: 0;
  transition: 0.5s ease;
  transform: scaleX(1);
  transform-origin: left;
}
/* line 572, _top.scss */
.top .infra .service_area.on::after {
  transform: scaleX(0);
}
/* line 576, _top.scss */
.top .infra .service_area.on .service_wrap .img_box {
  opacity: 1;
  transition-delay: 0.3s;
}
/* line 582, _top.scss */
.top .infra .service_area .fix_area {
  width: 50.5vw;
  height: 100vh;
  position: absolute;
  top: 0;
  right: 100%;
}
@media screen and (max-width: 896px) {
  /* line 582, _top.scss */
  .top .infra .service_area .fix_area {
    width: 100%;
    height: auto;
    position: static;
  }
}
/* line 593, _top.scss */
.top .infra .service_area .fix_area.fixed {
  position: fixed;
  left: 0;
  right: auto;
}
/* line 598, _top.scss */
.top .infra .service_area .fix_area.bottom {
  top: auto;
  bottom: 0;
}
/* line 602, _top.scss */
.top .infra .service_area .fix_area .fix_text_area {
  width: 60%;
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  transition: 0.3s;
  opacity: 0;
  z-index: -1;
}
@media screen and (max-width: 896px) {
  /* line 602, _top.scss */
  .top .infra .service_area .fix_area .fix_text_area {
    width: 100%;
    position: relative;
    top: auto;
    left: auto;
    transform: translate(0);
    opacity: 1;
    z-index: 1;
    margin-bottom: 60px;
  }
}
/* line 621, _top.scss */
.top .infra .service_area .fix_area .fix_text_area.on {
  opacity: 1;
  z-index: 1;
}
/* line 625, _top.scss */
.top .infra .service_area .fix_area .fix_text_area .ttl_area {
  margin-bottom: 20px;
}
/* line 627, _top.scss */
.top .infra .service_area .fix_area .fix_text_area .ttl_area .sub {
  font-size: 1.4rem;
  padding: 6px 10px;
  margin-bottom: 10px;
}
/* line 632, _top.scss */
.top .infra .service_area .fix_area .fix_text_area .ttl_area h3 {
  font-size: 3.2vw;
  line-height: 1.3;
}
@media screen and (max-width: 896px) {
  /* line 632, _top.scss */
  .top .infra .service_area .fix_area .fix_text_area .ttl_area h3 {
    font-size: 3rem;
  }
}
/* line 640, _top.scss */
.top .infra .service_area .fix_area .fix_text_area .lead {
  color: #fff;
  line-height: 1.8;
}
/* line 643, _top.scss */
.top .infra .service_area .fix_area .fix_text_area .lead.no_justify {
  text-align: inherit;
}
/* line 647, _top.scss */
.top .infra .service_area .fix_area .fix_text_area .btn_area {
  margin-top: 30px;
}
@media screen and (max-width: 896px) {
  /* line 647, _top.scss */
  .top .infra .service_area .fix_area .fix_text_area .btn_area {
    margin-top: 25px;
  }
}
/* line 653, _top.scss */
.top .infra .service_area .fix_area .fix_text_area .btn_area li a {
  padding: 20px 0 20px 50px;
  margin-bottom: 10px;
  font-size: 1.4rem;
}
@media screen and (max-width: 896px) {
  /* line 662, _top.scss */
  .top .infra .service_area .service_wrap {
    display: none;
  }
}
/* line 666, _top.scss */
.top .infra .service_area .service_wrap:not(:last-child) {
  margin-bottom: 150px;
}
/* line 669, _top.scss */
.top .infra .service_area .service_wrap .img_box {
  position: relative;
  opacity: 0;
  transition: 0.5s;
}
/* line 673, _top.scss */
.top .infra .service_area .service_wrap .img_box .side_txt {
  right: -35px;
  bottom: 0;
  width: 15px;
}
/* line 682, _top.scss */
.top .partners {
  background: #fff;
  padding: 120px 0;
}
@media screen and (max-width: 896px) {
  /* line 682, _top.scss */
  .top .partners {
    padding: 80px 10%;
  }
}
/* line 688, _top.scss */
.top .partners .head_area {
  margin-bottom: 100px;
}
@media screen and (max-width: 896px) {
  /* line 688, _top.scss */
  .top .partners .head_area {
    margin-bottom: 80px;
    display: block;
  }
}
/* line 694, _top.scss */
.top .partners .head_area .img_box {
  width: 51%;
}
@media screen and (max-width: 896px) {
  /* line 694, _top.scss */
  .top .partners .head_area .img_box {
    width: 100%;
    margin-bottom: 20px;
  }
}
/* line 701, _top.scss */
.top .partners .head_area .text_area {
  width: 49%;
  padding: 0 10% 0 5%;
}
@media screen and (max-width: 896px) {
  /* line 701, _top.scss */
  .top .partners .head_area .text_area {
    width: 100%;
    padding: 0;
  }
}
/* line 709, _top.scss */
.top .partners .head_area .text_area .ttl_area h3 {
  color: #000;
  margin-bottom: 45px;
  font-size: 7vw;
}
@media screen and (max-width: 896px) {
  /* line 709, _top.scss */
  .top .partners .head_area .text_area .ttl_area h3 {
    margin-bottom: 20px;
  }
}
/* line 718, _top.scss */
.top .partners .head_area .text_area .btn_area {
  margin-top: 40px;
}
@media screen and (max-width: 896px) {
  /* line 718, _top.scss */
  .top .partners .head_area .text_area .btn_area {
    margin-top: 30px;
  }
}
/* line 724, _top.scss */
.top .partners .head_area .text_area .btn_area li a {
  width: 300px;
  color: #e2302a;
}
@media screen and (max-width: 896px) {
  /* line 724, _top.scss */
  .top .partners .head_area .text_area .btn_area li a {
    width: 100%;
  }
}
@media screen and (min-width: 897px) {
  /* line 731, _top.scss */
  .top .partners .head_area .text_area .btn_area li a:hover {
    color: #fff;
  }
}
/* line 740, _top.scss */
.top .partners .about_area {
  width: 80%;
  margin: 0 auto;
}
@media screen and (max-width: 896px) {
  /* line 740, _top.scss */
  .top .partners .about_area {
    width: 100%;
  }
}
/* line 746, _top.scss */
.top .partners .about_area .about_ttl {
  font-size: 3rem;
  color: #e2302a;
  margin-bottom: 25px;
  padding-left: 50px;
  position: relative;
}
@media screen and (max-width: 896px) {
  /* line 746, _top.scss */
  .top .partners .about_area .about_ttl {
    padding-left: 30px;
  }
}
/* line 755, _top.scss */
.top .partners .about_area .about_ttl::after {
  content: "";
  width: 40px;
  height: 1px;
  background-color: #e2302a;
  position: absolute;
  top: 50%;
  left: 0;
}
@media screen and (max-width: 896px) {
  /* line 755, _top.scss */
  .top .partners .about_area .about_ttl::after {
    width: 20px;
  }
}
@media screen and (max-width: 896px) {
  /* line 768, _top.scss */
  .top .partners .about_area ul {
    display: block;
  }
}
/* line 772, _top.scss */
.top .partners .about_area ul li {
  width: 30%;
}
@media screen and (max-width: 896px) {
  /* line 772, _top.scss */
  .top .partners .about_area ul li {
    width: 100%;
    margin-bottom: 30px;
  }
}
@media screen and (min-width: 897px) {
  /* line 782, _top.scss */
  .top .partners .about_area ul li a:hover .img_box img {
    transform: scale(1.1);
  }
  /* line 786, _top.scss */
  .top .partners .about_area ul li a:hover .name {
    color: #e2302a;
  }
  /* line 788, _top.scss */
  .top .partners .about_area ul li a:hover .name span {
    color: #e2302a;
  }
}
/* line 794, _top.scss */
.top .partners .about_area ul li a .img_box {
  margin-bottom: 20px;
  transition: 0.3s;
  overflow: hidden;
}
/* line 798, _top.scss */
.top .partners .about_area ul li a .img_box img {
  transition: 0.5s;
}
@media screen and (max-width: 896px) {
  /* line 794, _top.scss */
  .top .partners .about_area ul li a .img_box {
    margin-bottom: 15px;
  }
}
/* line 805, _top.scss */
.top .partners .about_area ul li a .name {
  font-weight: bold;
  font-size: 2.8rem;
  transition: 0.3s;
}
@media screen and (max-width: 896px) {
  /* line 805, _top.scss */
  .top .partners .about_area ul li a .name {
    font-size: 2.4rem;
  }
}
/* line 812, _top.scss */
.top .partners .about_area ul li a .name span {
  transition: 0.3s;
  font-weight: normal;
  color: #999;
  font-size: 1.6rem;
  display: block;
  margin-top: 15px;
}
@media screen and (max-width: 896px) {
  /* line 812, _top.scss */
  .top .partners .about_area ul li a .name span {
    font-size: 1.4rem;
    margin-bottom: 10px;
  }
}

/* line 834, _top.scss */
.scroll-pos {
  position: absolute;
  right: auto !important;
  left: 2% !important;
}

/* line 840, _top.scss */
.top-mv-bana {
  position: absolute;
  right: 2%;
  bottom: 5%;
  z-index: 1;
  width: 220px;
}
@media screen and (max-width: 896px) {
  /* line 840, _top.scss */
  .top-mv-bana {
    width: 180px;
  }
}
