@charset "UTF-8";
/* CSS Document */
@import url("https://fonts.googleapis.com/css2?family=Noto+Sans+JP:wght@100;300;400;500;700;900&display=swap");
@import url("https://fonts.googleapis.com/css2?family=Vollkorn+SC:wght@400;600;700;900&display=swap");
@import url("https://fonts.googleapis.com/css2?family=Yomogi&display=swap");
* {
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  -o-box-sizing: border-box;
  -ms-box-sizing: border-box;
  box-sizing: border-box; }

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

/* HTML5 display-role reset for older browsers */
article, aside, details, figcaption, figure,
footer, header, hgroup, menu, nav, section {
  display: block; }

body {
  font-size: 1rem;
  line-height: 1.5em;
  position: relative; }

ol, ul {
  list-style: none;
  list-style-position: inside; }

blockquote, q {
  quotes: none; }

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

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

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

html {
  scroll-behavior: smooth; }

@media screen and (max-width: 767px) {
  html,
  body {
    overflow-x: hidden !important;
    overflow-y: scroll;
    -webkit-overflow-scrolling: touch; } }
/**************************
FORMAT
**************************/
.bold {
  font-weight: 500; }

.red {
  color: #FF5454; }

.center {
  text-align: center !important; }

.a_left {
  text-align: left !important; }

.a_right {
  text-align: right !important; }

.center_flex {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  align-items: center; }

.honbun {
  width: 100%;
  margin: 0 auto;
  padding: 0 15px;
  max-width: 1280px; }

.mb_5 {
  margin-bottom: 5px !important; }

.mb_10 {
  margin-bottom: 10px !important; }

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

.mb_30 {
  margin-bottom: 30px !important; }

.mb_35 {
  margin-bottom: 35px !important; }

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

.mb_50 {
  margin-bottom: 50px !important; }

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

.mb_70 {
  margin-bottom: 70px !important; }

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

.mb_90 {
  margin-bottom: 90px !important; }

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

.ml_10 {
  margin-left: 10px; }

.pad_5 {
  padding: 5px; }

.pad_10 {
  padding: 10px; }

.pad_right_10 {
  padding: 0 10px 0 0; }

.pad_10-20 {
  padding: 10px 20px !important; }

.pad_20 {
  padding: 20px; }

.pad_30 {
  padding: 30px !important; }

.pad_area {
  padding-top: 70px;
  padding-bottom: 70px; }
  @media screen and (max-width: 900px) {
    .pad_area {
      padding-top: 50px;
      padding-bottom: 50px; } }

.small {
  font-size: 0.8em; }

.medium {
  font-size: 1.2em; }

.large {
  font-size: 1.5em; }

.clear {
  clear: both; }

.relative {
  position: relative !important; }

.absolute {
  position: absolute !important; }

.mask_black {
  position: relative;
  z-index: -1; }
  .mask_black::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background-color: rgba(0, 0, 0, 0.4); }

.img-circle {
  border-radius: 50%; }

/*LINK*/
a:link,
a:visited {
  color: #333;
  text-decoration: none; }

a:hover {
  color: #5BB431; }

a img {
  border: none; }

a:hover img {
  transition: .3s;
  opacity: 0.80;
  filter: alpha(opacity=80);
  -ms-filter: "alpha( opacity=80 )";
  -moz-opacity: 0.90; }

.flex_2_1 {
  margin: 0 auto;
  padding: 10px;
  display: -webkit-box;
  display: -moz-box;
  display: -ms-flexbox;
  display: -webkit-flex;
  display: -moz-flex;
  display: flex;
  -webkit-box-lines: multiple;
  -moz-box-lines: multiple;
  -webkit-flex-wrap: wrap;
  -moz-flex-wrap: wrap;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  width: 100%;
  justify-content: center; }
  .flex_2_1 > div {
    margin: 0;
    padding: 10px;
    width: 50%; }
    @media (max-width: 900px) {
      .flex_2_1 > div {
        margin: 0;
        width: 100%; } }

.flex_3 {
  margin: 0 auto;
  padding: 10px;
  display: -webkit-box;
  display: -moz-box;
  display: -ms-flexbox;
  display: -webkit-flex;
  display: -moz-flex;
  display: flex;
  -webkit-box-lines: multiple;
  -moz-box-lines: multiple;
  -webkit-flex-wrap: wrap;
  -moz-flex-wrap: wrap;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  width: 100%;
  justify-content: center; }
  .flex_3 > div {
    margin: 0;
    padding: 10px;
    width: 33%; }

.res_block {
  display: none !important; }

.res_block_header {
  display: none !important; }
  @media screen and (max-width: 1700px) {
    .res_block_header {
      display: block !important; } }

.res_none {
  display: block !important; }

.res_none_header {
  display: block !important; }
  @media screen and (max-width: 1700px) {
    .res_none_header {
      display: none !important; } }

.res_center {
  text-align: left !important; }

.right_res_center {
  text-align: right !important; }

@media screen and (max-width: 900px) {
  .res_block {
    display: block !important; }

  .res_none {
    display: none !important; }

  .res_center {
    text-align: center !important; }

  .right_res_center {
    text-align: center !important; } }
/*TEL*/
@media screen and (min-width: 768px) {
  a[href^="tel:"] {
    pointer-events: none; } }
/**************************
JQuery
/**************************
/*jQuery.appear.js*/
.item_top {
  top: -30px;
  padding-right: 0px;
  opacity: 0;
  position: relative; }

.item_bottom {
  bottom: -30px;
  padding-left: 0px;
  opacity: 0;
  position: relative; }

.item_left {
  left: -40px;
  padding-right: 0px;
  opacity: 0;
  position: relative; }

.item_right {
  right: -40px;
  padding-left: 0px;
  opacity: 0;
  position: relative; }

.item_fade_in {
  opacity: 0;
  position: relative;
  padding-left: 0px;
  right: 0px; }

.item_c_left {
  left: 600px;
  padding-left: 0px;
  opacity: 0;
  position: relative; }

.item_c_right {
  right: 600px;
  padding-right: 0px;
  opacity: 0;
  position: relative; }

.item_lyric {
  left: 2vw;
  padding-left: 0px;
  opacity: 0;
  position: relative; }

/**************************
FRAMEWORK
**************************/
body {
  font-size: 16px;
  color: #505050;
  font-family: "Noto Sans JP", sans-serif;
  line-height: 1.5em;
  letter-spacing: 0.1em; }
  @media screen and (max-width: 900px) {
    body {
      font-size: 14px; } }

h1, h2, h3, h4, h5, h6 {
  font-family: "Noto Sans JP", sans-serif; }

/*骨組み*/
#wrapper {
  display: none;
  margin: 0 auto; }
  @media screen and (max-width: 1100px) {
    #wrapper {
      margin: 70px auto 0; } }

.container {
  /*padding-top: 80px;*/
  width: 100%;
  max-width: 1100px;
  height: auto;
  min-height: 400px;
  margin: 0 auto; }

.contents {
  width: 100%;
  max-width: 1100px;
  margin: 0 auto;
  padding: 20px;
  /*padding:10px 10px;*/ }
  @media screen and (max-width: 900px) {
    .contents {
      margin: 0px auto; } }

.bread {
  background: #fff; }
  .bread .inner {
    width: 100%;
    max-width: 1400px;
    margin: 0 auto;
    padding: 10px 10px;
    color: #999;
    font-size: 0.8em;
    letter-spacing: 0.06em; }

ul.disk li {
  list-style-type: disc;
  padding-left: 1em;
  text-indent: -1em; }

ul.number li {
  list-style-type: decimal;
  padding-left: 1em;
  text-indent: -1em; }

/* FRONTPAGE */
.flex_frame {
  margin: 0 auto;
  display: -webkit-box;
  display: -moz-box;
  display: -ms-flexbox;
  display: -webkit-flex;
  display: -moz-flex;
  display: flex;
  padding: 60px 0;
  -webkit-box-lines: multiple;
  -moz-box-lines: multiple;
  -webkit-flex-wrap: wrap;
  -moz-flex-wrap: wrap;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  width: 100%;
  justify-content: center; }
  .flex_frame > main {
    margin: 0;
    padding: 0 20px;
    width: 80%;
    order: 2; }
    @media (max-width: 900px) {
      .flex_frame > main {
        margin: 0;
        width: 100%;
        order: 1; } }
    .flex_frame > main article {
      margin-bottom: 70px; }
      .flex_frame > main article:last-child {
        margin-bottom: 30px; }
    .flex_frame > main h3.title {
      font-weight: bold;
      font-size: 1.5em;
      color: #473D33;
      border-bottom: 1px solid #473D33;
      padding-bottom: 5px;
      margin-bottom: 20px; }
      .flex_frame > main h3.title span {
        font-family: "Vollkorn SC", serif;
        padding-left: 1em;
        font-weight: normal; }
    .flex_frame > main h4.shop {
      font-weight: 1.125em;
      font-weight: bold; }
  .flex_frame > aside {
    margin: 0;
    padding: 20px;
    width: 20%;
    order: 1;
    background-color: #ccc; }
    .flex_frame > aside h3 {
      background-color: #666;
      text-align: center;
      font-weight: bold;
      padding: 5px 10px;
      color: #fff;
      border-radius: 5px;
      margin-bottom: 8px; }
    @media (max-width: 900px) {
      .flex_frame > aside {
        margin: 0;
        width: 100%;
        order: 2; } }

ul.sidebar {
  margin-bottom: 30px; }
  ul.sidebar li {
    text-align: center; }

.koe {
  position: relative;
  padding: 20px;
  background-color: #FFEAD1;
  color: #473D33;
  border-radius: 10px;
  font-family: "Yomogi", cursive;
  font-weight: bold;
  font-size: 1.1em; }
  .koe h2 {
    font-size: 1.4em;
    font-weight: bold;
    margin-bottom: 15px;
    font-weight: bold;
    font-family: "Yomogi", cursive;
    text-align: center;
    line-height: 1.3em; }
  .koe::before {
    content: "";
    position: absolute;
    display: block;
    width: 30px;
    height: 30px;
    bottom: -10px;
    left: 20px;
    margin-left: 0;
    background-color: #FFEAD1;
    border-radius: 0 50px 0 50px;
    z-index: -1; }
  .koe::after {
    content: "";
    position: absolute;
    display: block;
    width: 30px;
    height: 30px;
    bottom: -5px;
    left: 30px;
    margin-left: 0;
    background-color: #fff;
    border-radius: 0 50px 0 50px;
    z-index: -1;
    transform: rotate(30deg); }

h4.title {
  background: #ff9429;
  background: linear-gradient(332deg, #ff9429 23%, #ec7500 100%);
  color: #FFF;
  padding: 5px;
  text-align: center;
  margin-bottom: 20px; }

div.network p {
  font-size: 0.7em;
  line-height: 1.4em;
  margin-bottom: 1em;
  color: #aaa; }

div.tel {
  max-width: 500px;
  padding: 30px 60px;
  margin: 0 auto;
  border: 2px solid #FF9429; }
  @media screen and (max-width: 900px) {
    div.tel {
      padding: 20px; } }

/*products*/
.flex_products {
  margin: 0 auto;
  display: -webkit-box;
  display: -moz-box;
  display: -ms-flexbox;
  display: -webkit-flex;
  display: -moz-flex;
  display: flex;
  -webkit-box-lines: multiple;
  -moz-box-lines: multiple;
  -webkit-flex-wrap: wrap;
  -moz-flex-wrap: wrap;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  width: 100%;
  justify-content: flex-start; }
  .flex_products > div {
    margin: 0;
    width: 50%; }
    @media (max-width: 900px) {
      .flex_products > div {
        margin: 0;
        width: 100%; } }
    .flex_products > div dl {
      margin: 0 auto;
      padding: 10px 0px;
      display: -webkit-box;
      display: -moz-box;
      display: -ms-flexbox;
      display: -webkit-flex;
      display: -moz-flex;
      display: flex;
      -webkit-box-lines: multiple;
      -moz-box-lines: multiple;
      -webkit-flex-wrap: wrap;
      -moz-flex-wrap: wrap;
      -ms-flex-wrap: wrap;
      flex-wrap: wrap;
      width: 100%; }
      .flex_products > div dl dt {
        margin: 0;
        padding: 10px 0;
        width: 30%; }
      .flex_products > div dl dd {
        margin: 0;
        padding: 10px 20px 10px 10px;
        width: 70%; }
        .flex_products > div dl dd p.explan {
          font-size: 0.85em;
          margin-bottom: 1em; }
        .flex_products > div dl dd h4 {
          padding: 3px 10px;
          background-color: #FF9429;
          color: #fff;
          border-radius: 0 50px 50px 0; }

/* service */
.warning {
  position: relative;
  margin-bottom: 30px; }
  .warning h5.w_title {
    display: inline-block;
    position: absolute;
    font-weight: bold;
    font-size: 0.85em;
    background-color: #fff;
    top: -10px;
    left: 2em;
    color: #FF282C;
    padding: 0 10px; }
  .warning .w_area {
    padding: 20px;
    border: 2px solid #FF282C;
    border-radius: 10px;
    font-size: 0.8em; }

/*footer*/
footer {
  background-color: #F4F4F4;
  width: 100%;
  height: auto; }
  footer .flex_footer {
    margin: 0 auto;
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: -webkit-flex;
    display: -moz-flex;
    display: flex;
    -webkit-box-lines: multiple;
    -moz-box-lines: multiple;
    -webkit-flex-wrap: wrap;
    -moz-flex-wrap: wrap;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    width: 100%;
    max-width: 1200px;
    justify-content: center;
    align-items: center; }
    footer .flex_footer > div {
      margin: 0;
      padding: 10px;
      width: 50%; }
      @media (max-width: 900px) {
        footer .flex_footer > div {
          margin: 0;
          width: 100%; } }
  footer .logo {
    margin-top: 50px;
    text-align: center;
    height: auto;
    margin-bottom: 10px; }
    @media screen and (max-width: 900px) {
      footer .logo {
        margin-top: 30px; } }

/*footer ここまで*/
address {
  width: 100%;
  background-color: #666;
  color: white;
  display: inline-block; }
  address .copyright {
    font-size: 0.9em;
    font-family: "Vollkorn SC", serif;
    color: white; }
    @media screen and (max-width: 900px) {
      address .copyright {
        text-align: center; } }
  address .flex_address {
    margin: 0 auto;
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: -webkit-flex;
    display: -moz-flex;
    display: flex;
    -webkit-box-lines: multiple;
    -moz-box-lines: multiple;
    -webkit-flex-wrap: wrap;
    -moz-flex-wrap: wrap;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    width: 100%;
    justify-content: center; }
    address .flex_address > div:nth-child(1) {
      order: 1;
      margin: 0;
      padding: 10px;
      width: 50%; }
      @media (max-width: 900px) {
        address .flex_address > div:nth-child(1) {
          order: 2;
          margin: 0;
          width: 100%; } }
    address .flex_address > div:nth-child(2) {
      order: 2;
      margin: 0;
      padding: 10px;
      width: 50%; }
      @media (max-width: 900px) {
        address .flex_address > div:nth-child(2) {
          order: 1;
          margin: 0;
          width: 100%; } }
  address ul.address_nav {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    align-items: right;
    padding: 0 20px; }
    address ul.address_nav li {
      float: left;
      text-align: center;
      font-size: 14px;
      letter-spacing: 0.2em; }
      address ul.address_nav li::after {
        content: "";
        margin-left: 2em;
        margin-right: 2em; }
      address ul.address_nav li:last-child::after {
        content: "";
        margin-left: 2em;
        margin-right: 2em; }
    address ul.address_nav a {
      color: #FFC185; }
      address ul.address_nav a:hover {
        color: #ffa04d; }

/**************************
LIST
**************************/
ul.list li {
  padding-left: 1em;
  text-indent: -1em;
  margin-bottom: 0.2em; }

dl.table {
  box-sizing: border-box;
  background: rgba(242, 242, 242, 0.5);
  border-bottom: 1px solid #CCC; }
  dl.table dt {
    font-weight: bold;
    float: left;
    width: 32%;
    padding: 20px 19px 20px;
    border-top: 1px solid #CCC; }
    @media screen and (max-width: 767px) {
      dl.table dt {
        float: none;
        width: 100%;
        padding: 10px 19px 10px; } }
  dl.table dd {
    margin-left: 32%;
    background: #FFF;
    padding: 20px 39px 20px;
    border-top: 1px solid #CCC; }
    @media screen and (max-width: 767px) {
      dl.table dd {
        margin-left: 0;
        background: #FFF;
        padding: 10px 39px 20px; } }

dl.topics {
  width: 100%;
  padding: 10px;
  border-bottom: 1px dotted #ccc; }
  dl.topics dt {
    width: 120px;
    float: left;
    color: #FF9429;
    margin-bottom: 5px;
    font-size: 0.85em; }
    @media screen and (max-width: 900px) {
      dl.topics dt {
        width: 100%;
        float: none; } }
    dl.topics dt span {
      padding: 1px 5px;
      display: inline-block;
      margin-left: 10px;
      color: #fff;
      font-size: 11.2px; }
  dl.topics dd {
    margin-bottom: 5px;
    margin-left: 120px; }
    @media screen and (max-width: 900px) {
      dl.topics dd {
        margin-left: 0; } }

/**************************
TABLE
**************************/
table.t_responsive {
  width: 100%;
  margin: 10px auto;
  border-bottom: 1px solid #ccc;
  border-left: none;
  border-collapse: collapse;
  border-spacing: 0;
  empty-cells: show; }
  table.t_responsive th {
    min-width: 100px;
    border-right: none;
    border-bottom: 1px solid #ccc;
    font-weight: 500;
    padding: 0.3em 1em;
    text-align: left; }
    @media screen and (max-width: 900px) {
      table.t_responsive th {
        width: 100%;
        display: block; } }
  table.t_responsive td {
    border-right: none;
    border-bottom: 1px solid #ccc;
    padding: 0.5em 1em;
    font-size: 16px; }
    @media screen and (max-width: 900px) {
      table.t_responsive td {
        width: 100%;
        display: block;
        padding-left: 1em;
        border-bottom: none; } }

/**************************
BUTTON
**************************/
.btn {
  width: 50px;
  height: 50px;
  position: absolute;
  right: 15px;
  top: 7px;
  background: none;
  z-index: 1000; }

.btn:before,
.btn:after,
.btn span {
  display: block;
  width: 80%;
  position: absolute;
  left: 0;
  right: 0;
  margin: auto;
  -webkit-transition: .35s ease-in-out;
  -moz-transition: .35s ease-in-out;
  transition: .35s ease-in-out; }

.btn span {
  height: 3px;
  /*background-color: #fff;*/
  top: calc(50% - 1.5px); }

.btn:before {
  content: "MENU";
  font-size: 11.2px;
  text-align: center;
  top: calc(25% - 3px);
  border-top: 3px solid #fff; }

.btn:after {
  content: "";
  bottom: calc(25% - 3px);
  border-bottom: 3px solid #fff; }

.btn.on span {
  display: none; }

.btn.on:before {
  content: "";
  top: calc(50% - 1.5px);
  -webkit-transform: rotate(315deg);
  -moz-transform: rotate(315deg);
  transform: rotate(315deg); }

.btn.on:after {
  bottom: calc(50% - 1.5px);
  -webkit-transform: rotate(-315deg);
  -moz-transform: rotate(-315deg);
  transform: rotate(-315deg); }

.btnlink {
  width: 96%;
  display: block;
  margin: auto;
  border: 1px solid #0060ff;
  border-radius: 5px;
  background: #4285F4;
  height: 35px;
  line-height: 35px;
  text-align: center;
  margin-bottom: 35px;
  color: #000; }

a.btn_more {
  position: relative;
  display: inline-block;
  padding: 3px 50px;
  color: #fff;
  border: 3px solid #004903;
  border-radius: 30px;
  background-color: #004903;
  text-align: center;
  font-size: 0.9em; }
  a.btn_more::after {
    position: absolute;
    content: "→";
    width: 20px;
    height: 20px;
    background-size: contain;
    background-repeat: no-repeat;
    right: 15px;
    transition: .3s;
    color: #fff; }
  a.btn_more:hover::after {
    right: 10px;
    transition: .3s; }

a.btn_products {
  position: relative;
  display: inline-block;
  padding: 1px 20px;
  color: #fff;
  border: 3px solid #004903;
  border-radius: 30px;
  background-color: #004903;
  text-align: center;
  font-size: 0.8em; }
  a.btn_products:hover {
    transition: .3s; }

/*slide menu*/
.ul_open_h,
.ul_open_v {
  background: rgba(27, 0, 0, 0.9);
  color: #fff;
  margin: 0;
  padding: 0;
  list-style: none;
  top: 0;
  z-index: 999; }

.ul_open_h {
  height: 100%;
  -webkit-transition: .35s ease-in-out;
  -moz-transition: .35s ease-in-out;
  transition: .35s ease-in-out;
  overflow-y: scroll;
  position: fixed; }

.ul_open_h li {
  padding: 10px;
  width: 360px; }

.ul_open_v {
  position: absolute;
  height: 100%; }

.ul_open_v li {
  padding: 10px;
  width: 360px; }

.open-1 {
  right: -100%; }

.open-1.active {
  right: 0px; }

.move-1.on.btn {
  position: fixed;
  right: 25px;
  top: 10px; }

ul li ul li {
  margin-left: 1em;
  padding: 3px; }

/**************************
OTHERS
**************************/
.b_inuyama {
  position: absolute;
  width: 300px;
  left: 3vw;
  top: 20px;
  z-index: 999; }
  @media screen and (max-width: 1200px) {
    .b_inuyama {
      display: none; } }

/**************************
PAGE CONTENTS
**************************/
/*
.hissu{
   color: #fff;
   background-color: #F58667;
   font-size: 0.6em;
   margin-left: 10px;
   padding: 2px 5px;
}
*/
/*title_area*/
.t_bg_sub {
  background: url("../images/t_bg_sub.jpg");
  background-position: center center;
  background-size: cover;
  background-repeat: no-repeat; }

.t_bg_inuyama {
  background: url("../images/t_bg_inuyama.jpg");
  background-position: center center;
  background-size: cover;
  background-repeat: no-repeat; }

.t_bg_lesson {
  background: url("images/top_bg/t_bg_lesson.jpg");
  background-position: center center;
  background-size: cover;
  background-repeat: no-repeat; }

.title_area {
  height: 20vw;
  position: relative;
  margin-bottom: 30px; }
  .title_area.inuyama {
    height: 40vw; }
    .title_area.inuyama::before {
      content: '';
      position: absolute;
      top: 0;
      left: 0;
      width: 100%;
      height: 100%;
      background-color: rgba(0, 0, 0, 0.5);
      z-index: 1; }
  @media screen and (max-width: 900px) {
    .title_area {
      height: 40vw; } }
  .title_area .mv-text {
    position: absolute;
    z-index: 4;
    top: 44%;
    left: 50%;
    -webkit-transform: translate(-50%, -50%);
    transform: translate(-50%, -50%); }
    .title_area .mv-text h2 {
      text-align: center; }
      .title_area .mv-text h2 span:first-child {
        font-family: "Vollkorn SC", serif;
        color: #FFF;
        font-size: 3em;
        line-height: 1.8em; }
        @media screen and (max-width: 900px) {
          .title_area .mv-text h2 span:first-child {
            font-size: 2.4em;
            line-height: 1.8em; } }
      .title_area .mv-text h2 span:last-child {
        color: #FFF;
        font-size: 1.5em;
        padding: 15px 30px; }
        @media screen and (max-width: 900px) {
          .title_area .mv-text h2 span:last-child {
            font-size: 1.1em;
            padding: 5px 10px; } }

/*pageTop*/
#pageTop {
  background: url("../images/pagetop.svg");
  width: 40px;
  height: 40px;
  background-size: cover;
  position: fixed;
  bottom: 2%;
  right: 2%;
  z-index: 10000;
  text-indent: -9999em;
  cursor: pointer;
  transition: .3s; }

#pageTop:hover {
  background: url("../images/pagetop.svg");
  background-size: cover;
  bottom: 3%;
  transition: .3s; }

/*========= LoadingのためのCSS ===============*/
/* Loading背景画面設定　*/
#splash {
  /*fixedで全面に固定*/
  position: fixed;
  width: 100%;
  height: 100%;
  z-index: 9999;
  background: #FFF;
  text-align: center;
  color: #fff;
  display: none; }

/* Loading画像中央配置　*/
#splash_logo {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%); }

/* Loading アイコンの大きさ設定　*/
#splash_logo img {
  width: 300px; }

/* fadeUpをするアイコンの動き */
.fadeUp {
  animation-name: fadeUpAnime;
  animation-duration: 0.99s;
  animation-fill-mode: forwards;
  opacity: 0; }

@keyframes fadeUpAnime {
  from {
    opacity: 0;
    transform: translateY(20px); }
  to {
    opacity: 1;
    transform: translateY(0); } }
