@charset "UTF-8";
/* ***********************************
*
*    Ire's CSS Reset & Base
    *
* *********************************** */
/* Reset margin, padding, border
* *********************************** */
html,
body,
h1,
h2,
h3,
h4,
h5,
h6,
a,
p,
span,
em,
small,
strong,
sub,
sup,
mark,
del,
ins,
strike,
abbr,
dfn,
blockquote,
q,
cite,
code,
pre,
ol,
ul,
li,
dl,
dt,
dd,
div,
section,
article,
main,
aside,
nav,
header,
hgroup,
footer,
img,
figure,
figcaption,
address,
time,
audio,
video,
canvas,
iframe,
details,
summary,
fieldset,
form,
label,
legend,
table,
caption,
tbody,
tfoot,
thead,
tr,
th,
td {
  margin: 0;
  padding: 0;
  border: 0; }

/* Typography
* *********************************** */
html {
  font-size: 62.5%; }

body {
  font-size: 1.6rem;
  line-height: 1.4; }

* {
  font-family: inherit;
  font-size: inherit;
  line-height: inherit; }

a,
a:visited {
  color: inherit; }

/* Layout
* *********************************** */
article,
aside,
footer,
header,
nav,
section,
main {
  display: block; }

* {
  box-sizing: border-box; }

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

/* Elements
* *********************************** */
table {
  border-collapse: collapse;
  border-spacing: 0; }

ol,
ul {
  list-style: none; }

img,
video {
  max-width: 100%;
  height: auto; }

img {
  border-style: none; }

blockquote,
q {
  quotes: none; }

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

/* Attributes & states
* *********************************** */
[hidden] {
  display: none !important; }

[disabled] {
  cursor: not-allowed; }

:focus:not(:focus-visible) {
  outline: none; }

/* Utility classes
* *********************************** */
.sr-only {
  position: absolute;
  clip: rect(1px, 1px, 1px, 1px);
  left: -9999px;
  top: -9999px; }

/* My setting
* *********************************** */
a {
  text-decoration: none; }

textarea {
  resize: vertical; }

body {
  font-family: "游ゴシック Medium", "Yu Gothic Medium", "游ゴシック体", "YuGothic", "ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic ProN", "メイリオ", "Meiryo", "verdana", sans-serif; }

address {
  font-style: normal; }

img {
  vertical-align: bottom; }

body {
  font-size: 1.6rem; }
  @media screen and (max-width: 1024px) {
    body {
      font-size: calc(1.6rem / 3 * 2); } }

.sp-only {
  display: none; }

@media screen and (max-width: 812px) {
  .sp-only {
    display: block; }

  .pc-only {
    display: none; } }
a {
  transition: 1s; }
  a:hover {
    opacity: 0.8; }

body {
  position: relative; }

.bg-split {
  position: absolute;
  left: 0;
  right: 0;
  top: 0;
  bottom: 0;
  z-index: -1;
  display: flex; }
  .bg-split .bg-split-l {
    background: #6a150a; }
  .bg-split .bg-split-c,
  .bg-split .bg-split-r {
    background: #fff; }
  .bg-split .bg-split-c {
    flex: 0 1 900px;
    position: relative; }
    .bg-split .bg-split-c::after {
      content: "";
      display: block;
      background: #6a150a;
      position: absolute;
      left: 0;
      top: 0;
      bottom: 0;
      width: 14.44%; }
  .bg-split .bg-split-l,
  .bg-split .bg-split-r {
    flex-grow: 1; }

.w100per {
  width: 100%;
  padding-top: 40px; }

.flex2 {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between; }
  .flex2 img {
    width: 50%; }
    @media screen and (max-width: 812px) {
      .flex2 img {
        width: 100%; } }

.ctr {
  max-width: 900px;
  margin: auto; }
  @media screen and (max-width: 812px) {
    .ctr {
      padding: 0 4%; } }

.ctr-wide {
  max-width: 1280px;
  margin: auto; }
  @media screen and (max-width: 812px) {
    .ctr-wide {
      padding: 0 4%; } }

.section {
  padding: 50px 0; }
  @media screen and (max-width: 812px) {
    .section {
      padding: 30px 0; } }

.firstview {
  display: flex; }

.header-nav-area {
  background: #fff;
  color: #6a150a;
  width: 11%;
  writing-mode: vertical-rl; }
  @media screen and (max-width: 812px) {
    .header-nav-area {
      width: 0; } }
  .header-nav-area .list-nav {
    display: flex;
    align-items: flex-end;
    padding-top: 7.33%;
    padding-left: 1.562vw;
    letter-spacing: 0.2em; }
    .header-nav-area .list-nav li + li {
      margin-top: 9.1%; }
    .header-nav-area .list-nav a {
      display: flex;
      align-items: flex-end; }
    .header-nav-area .list-nav a::before {
      content: "";
      background: url(/img/icon-bar.svg) center center no-repeat;
      width: 29px;
      height: 6px;
      background-size: contain;
      display: inline-block;
      margin-bottom: 12px; }
      @media screen and (max-width: 812px) {
        .header-nav-area .list-nav a::before {
          width: calc(29px / 3 * 2);
          height: calc(6px / 3 * 2); } }
      @media screen and (max-width: 400px) {
        .header-nav-area .list-nav a::before {
          margin-bottom: 5px; } }
  .header-nav-area nav,
  .header-nav-area .list-nav {
    width: 100%; }
  .header-nav-area nav {
    position: relative;
    z-index: 100; }
  @media screen and (max-width: 812px) {
    .header-nav-area {
      writing-mode: horizontal-tb; }
      .header-nav-area .list-nav {
        position: fixed;
        z-index: 999;
        left: 0;
        right: 0;
        top: 0;
        background: #fff;
        padding: 0;
        display: none;
        box-shadow: 0 0 5px rgba(0, 0, 0, 0.16); }
        .header-nav-area .list-nav li + li {
          margin-top: 0;
          border-top: 1px solid #6a150a; }
        .header-nav-area .list-nav li {
          line-height: 2.5;
          font-size: 1.6rem; }
        .header-nav-area .list-nav a {
          display: block;
          text-align: center; }
        .header-nav-area .list-nav a::before {
          display: none; } }

.main {
  padding: 80px 0; }

.main-image {
  position: relative; }
  .main-image .logo {
    position: absolute;
    right: 13.85%;
    top: 20%;
    left: 67.36%;
    display: flex;
    justify-content: flex-end;
    align-items: center; }

.recruit-wrap {
  background-color: rgba(255, 255, 255, 0.6);
  padding: 30px;
  margin-bottom: 50px; }
  .recruit-wrap h3 {
    background-color: #fff;
    font-size: 1.2em;
    color: #6a150a; }
    .recruit-wrap h3:before {
      content: "■"; }
  .recruit-wrap ul.recruit {
    padding: 10px; }
    .recruit-wrap ul.recruit li {
      padding-bottom: 10px; }

.footer-area {
  padding-bottom: 70px;
  letter-spacing: 0.2em; }
  .footer-area .ctr-wide {
    display: flex;
    justify-content: flex-end;
    align-items: flex-end; }
    @media screen and (max-width: 400px) {
      .footer-area .ctr-wide {
        flex-direction: column-reverse; }
        .footer-area .ctr-wide .footer-logo {
          margin-bottom: 20px; } }
  .footer-area .name {
    font-size: 1.6rem; }
    @media screen and (max-width: 1024px) {
      .footer-area .name {
        font-size: calc(1.6rem / 3 * 2); } }
  .footer-area .tel {
    font-size: 1.4rem;
    line-height: 1.92;
    margin-top: 12px; }
    @media screen and (max-width: 1024px) {
      .footer-area .tel {
        font-size: 1rem;
        margin-top: 5px; } }
  .footer-area .copy {
    font-size: 1rem;
    margin-top: 19px; }
    @media screen and (max-width: 1024px) {
      .footer-area .copy {
        font-size: 1rem;
        margin-top: 5px; } }

.footer-content {
  color: #6a150a;
  text-align: right; }

.footer-logo {
  margin-left: 5.46%;
  padding-right: 70px; }
  @media screen and (max-width: 1024px) {
    .footer-logo img {
      height: calc(100px / 3 * 2); } }
  @media screen and (max-width: 812px) {
    .footer-logo {
      padding-right: 0; } }

.sp-menu-btn {
  position: fixed;
  right: 10px;
  bottom: 10px;
  width: 50px;
  height: 50px;
  border-radius: 50%;
  background-color: #fff;
  display: flex;
  justify-content: center;
  align-items: center;
  box-shadow: 0 0 5px rgba(0, 0, 0, 0.16); }
  .sp-menu-btn img {
    height: 25px; }

.section-top01 {
  padding-top: 93px; }
  @media screen and (max-width: 812px) {
    .section-top01 {
      padding-top: 40px; } }

.section-top02 {
  padding-bottom: 0; }

.block-text-wrap {
  position: relative; }
  .block-text-wrap::after {
    content: "";
    display: block;
    position: absolute;
    left: 50%;
    right: 0;
    top: 0;
    bottom: 80px;
    background: url(/img/bg-2ndview2.jpg) center center no-repeat;
    background-size: cover;
    z-index: -1; }
    @media screen and (max-width: 812px) {
      .block-text-wrap::after {
        left: 40%;
        background-image: url(/img/bg-2ndview2.jpg); } }
    @media screen and (max-width: 400px) {
      .block-text-wrap::after {
        left: 30%;
        background-image: url(/img/bg-2ndview2.jpg); } }
  .block-text-wrap .small {
    text-align: center;
    font-size: 13px; }

/*slick*/
.slider {
  margin: 100px auto;
  width: 80%; }

.slider img {
  height: auto;
  width: 100%; }

/*slick setting*/
.slick-prev:before,
.slick-next:before {
  color: #000; }

.block-text {
  box-shadow: 9px 8px 24px rgba(0, 0, 0, 0.16);
  background: #fff;
  padding: 60px 7.77%;
  display: inline-block;
  margin-top: 100px; }
  @media screen and (max-width: 812px) {
    .block-text {
      padding-top: 40px;
      padding-bottom: 40px;
      margin-top: calc(100px / 3 * 2); } }
  @media screen and (max-width: 400px) {
    .block-text {
      padding-top: 20px;
      padding-bottom: 20px;
      width: 89%; } }
  .block-text h2 {
    font-size: 3rem;
    letter-spacing: 0.2em;
    line-height: 1.9;
    font-weight: normal;
    color: #6a150a; }
    @media screen and (max-width: 1024px) {
      .block-text h2 {
        font-size: calc(3rem / 3 * 2); } }
    @media screen and (max-width: 400px) {
      .block-text h2 {
        font-size: calc(3rem / 2); } }
  .block-text p {
    line-height: 2.68;
    letter-spacing: 0.2em;
    margin-top: 70px; }
    @media screen and (max-width: 1024px) {
      .block-text p {
        margin-top: calc(70px / 2); } }
    @media screen and (max-width: 400px) {
      .block-text p {
        margin-top: 20px; } }

.footer-nav {
  display: flex;
  justify-content: space-between; }
  .footer-nav > li {
    transition: 1s;
    background-size: cover;
    background-repeat: no-repeat;
    background-position: center center;
    flex: 0 0 28.88%;
    height: 474px;
    color: #fff;
    position: relative; }
    .footer-nav > li:hover {
      opacity: 0.9; }
    @media screen and (max-width: 1024px) {
      .footer-nav > li {
        height: calc(474px / 3 * 2); } }
    @media screen and (max-width: 400px) {
      .footer-nav > li {
        flex: 0 0 30%;
        height: calc(474px / 2); } }
    .footer-nav > li::before {
      position: absolute;
      left: 0;
      right: 0;
      top: 0;
      display: inline-block;
      width: 76.9%;
      height: 20px;
      background-position: left top;
      background-repeat: no-repeat;
      background-size: contain;
      content: ""; }
    .footer-nav > li:nth-child(even)::before {
      background-image: url(/img/img-bar02.svg); }
    .footer-nav > li:nth-child(odd)::before {
      background-image: url(/img/img-bar01.svg); }
    .footer-nav > li:nth-child(1) {
      margin-top: 140px; }
    .footer-nav > li:nth-child(2) {
      margin-top: 70px; }
    @media screen and (max-width: 812px) {
      .footer-nav > li:nth-child(1) {
        margin-top: 60px; }
      .footer-nav > li:nth-child(2) {
        margin-top: 30px; } }
    .footer-nav > li a {
      display: flex;
      justify-content: space-between;
      align-items: center;
      flex-direction: column;
      height: 100%; }
    .footer-nav > li .jpn,
    .footer-nav > li .eng {
      font-size: 3rem;
      letter-spacing: 0.2em; }
      @media screen and (max-width: 812px) {
        .footer-nav > li .jpn,
        .footer-nav > li .eng {
          font-size: calc(3rem / 3 * 2); } }
      @media screen and (max-width: 400px) {
        .footer-nav > li .jpn,
        .footer-nav > li .eng {
          font-size: calc(3rem / 2); } }
    .footer-nav > li .jpn {
      line-height: 1.433;
      text-align: center;
      margin-top: 98px; }
      @media screen and (max-width: 812px) {
        .footer-nav > li .jpn {
          margin-top: calc(98px / 3 * 2); } }
      @media screen and (max-width: 400px) {
        .footer-nav > li .jpn {
          margin-top: calc(98px / 2); } }
    .footer-nav > li .eng {
      line-height: 1;
      writing-mode: vertical-rl;
      display: flex;
      align-items: center;
      width: 1em;
      margin-left: -2px; }
      .footer-nav > li .eng::after {
        content: "";
        display: block;
        height: 60px;
        width: 1px;
        margin-top: 10px;
        background: #fff; }

.footer-nav-area {
  padding-top: 70px; }

/*下層ページ*/
.page .main-image .logo {
  top: 55%;
  left: 2%;
  right: 65%; }
  .page .main-image .logo img {
    width: 80px;
    height: auto;
    margin-right: 30px; }
  .page .main-image .logo h1 {
    color: #fff;
    font-weight: normal;
    font-size: 4em;
    font-family: 'Rock Salt', cursive; }
  @media screen and (max-width: 812px) {
    .page .main-image .logo {
      top: 30%;
      left: 5%;
      right: 55%; }
      .page .main-image .logo img {
        margin-right: 20px;
        width: 40px; }
      .page .main-image .logo h1 {
        font-size: 2em; } }

.page .block-text-wrap::after {
  content: none; }

.page h2 {
  text-align: center;
  color: #6a150a;
  font-size: 2em;
  margin-bottom: 50px;
  font-family: 'Rock Salt', cursive; }

.page .accesstable {
  margin-bottom: 50px;
  border: 1px solid #6a150a;
  background: rgba(255, 255, 255, 0.5);
  width: 100%; }
  .page .accesstable th {
    border: 1px solid #6a150a;
    padding: 10px 20px;
    font-weight: bold;
    color: #6a150a; }
  .page .accesstable td {
    border: 1px solid #6a150a;
    padding: 10px 20px; }

.page .center {
  text-align: center; }

.page .menu h3 {
  text-align: center;
  font-size: 1.5em;
  margin: 30px; }
.page .menu dl {
  border-top: 1px solid #6a150a;
  border-bottom: 1px solid #6a150a;
  display: flex;
  justify-content: center; }
  .page .menu dl dt {
    padding: 6px 20px; }
  .page .menu dl dd {
    padding: 6px 20px; }
.page .menu dl.none {
  border-top: none; }

/*# sourceMappingURL=style.css.map */
