@charset "UTF-8";
@import url(bootstrap.min.css);
@import url(lesson.css);
* {
  margin: 0;
  padding: 0;
  box-sizing: border-box;
  letter-spacing: 0.1em; }

body {
  width: 100%;
  margin: 0;
  color: #242625;
  font-family: YuGothic, "Yu Gothic", "Hiragino Kaku Gothic ProN", "ヒラギノ角ゴ ProN W3", sans-serif; }

img {
  border: none;
  max-width: 100%; }

h1 {
  font-family: sans-serif;
  font-size: 45px;
  color: #3b5375;
  font-weight: bold;
  text-align: center;
  letter-spacing: 0.07em;
  margin: 0; }

h1 span {
  color: #242625;
  font-size: 14px;
  text-align: center;
  letter-spacing: 0.07em; }

h2 {
  font-size: 28px;
  color: #fff;
  letter-spacing: 0.07em;
  line-height: 1.75;
  font-weight: bold;
  text-align: center;
  margin: 0; }

p, li, a {
  font-size: 16px;
  letter-spacing: 0.07em;
  line-height: 1.75;
  text-decoration: none;
  margin: 0; }

ul, ol {
  list-style: none; }

.pc-only {
  display: block; }

.sp-only, .sp-navi, .nav-wrap {
  display: none; }

.reverse {
  flex-flow: row-reverse; }

/* コンテンツ幅1024 */
.about-inner, .rental-inner, .footer {
  max-width: 994px;
  margin: 0 auto; }

.fadein {
  opacity: 0;
  transform: translate(0, 100px);
  transition: all 1s; }

.fadein.active {
  opacity: 1;
  transform: translate(0, 0); }

/* 横並びにはdisplay: flex;とjustify-content: space-evenly; */
/* かさねるには親*/
.rental-inner, .about-inner {
  position: relative; }

/* かさねる子*/
.rental-img01, .rental-img02, .about-img01, .about-img02, .about-img03, .about-img04, .sen {
  position: absolute;
  padding: 0; }

/* かさね調整*/
.rental-img01 {
  top: -58%;
  left: -133px;
  max-width: 50%; }

.rental-img02 {
  top: -2%;
  left: 12%;
  max-width: 45%; }

.about-img01, .about-img03 {
  top: -5%;
  left: -5%;
  max-width: 39%; }

.about-img02, .about-img04 {
  top: -5%;
  right: -5%;
  max-width: 39%; }

.about-text01, .about-text03 {
  margin: 0 0 0 35%; }

.about-text02, .about-text04 {
  margin: 0 35% 0 0; }

.logo-navi {
  position: relative;
  text-align: center;
  background: #242625;
  height: 90px;
  width: 100%;
  padding: 31px; }

#top {
  position: absolute;
  max-width: 165px;
  top: 5%;
  left: 2%;
  z-index: 2; }

.name-navi {
  margin: 0 auto;
  display: flex;
  justify-content: space-evenly;
  vertical-align: middle; }

.top-name {
  margin-left: 166px;
  width: 300px; }

.pc-navi ul {
  display: flex;
  justify-content: space-evenly;
  margin: 0; }

.pc-navi li {
  margin-left: 15px; }

.pc-navi li a {
  font-size: 16px;
  color: #fff;
  font-family: sans-serif; }

.pc-navi li a:hover, .nav-wrap li a:hover {
  color: #ffd900;
  cursor: pointer;
  text-decoration: none; }

.owl-theme .owl-nav.disabled + .owl-dots {
  margin-top: 5px; }

.owl-theme .owl-dots .owl-dot span {
  width: 10px;
  height: 3px;
  margin: 5px; }

.contnts {
  margin: 0 auto; }

.h101 {
  margin: 47px 0 50px; }

.h101 img {
  width: 240px; }

#about .h101 {
  margin: 47px 0 10px; }

.caption {
  max-width: 900px;
  margin: 0 auto;
  padding: 0 15px; }
  .caption img {
    margin: 0 auto 50px; }

#main-img img {
  width: 100%; }

.about-inner {
  background-color: #3b5375;
  margin-bottom: 30px;
  padding: 20px 30px;
  height: auto; }

.about-inner h2 {
  padding-bottom: 24px;
  border-bottom: solid 1px #fff; }

.about-inner p {
  padding-top: 24px;
  color: #fff; }

.inner {
  display: flex;
  justify-content: space-between;
  max-width: 140rem;
  margin: 0 auto;
  margin: 50px 0; }

.inner-img img {
  width: 450px; }

.img-left {
  margin: 0 50px 0 0; }

.img-right {
  margin: 0 0 0 50px; }

.naiyou h2 {
  padding: 25px 0; }

.sns {
  text-align: right; }

.sns a {
  font-size: 48px;
  color: #fff; }

.sns a:hover {
  color: #ffd900;
  cursor: pointer; }

.lesson-btn {
  text-align: center; }

.hover10 {
  border-radius: 50%;
  transition: all 0.6s ease 0s; }

.hover10:hover {
  cursor: pointer;
  transform: scale(1.1, 1.1); }

.rental-inner {
  height: auto; }

.rental-img01, .rental-img02 {
  border: 1px solid #fff;
  padding: 0;
  width: auto; }

.rental-table {
  color: #f2992e;
  margin: 10px 0 0;
  font-weight: bold; }

.rental-txt {
  padding: 0 104px 0 0;
  margin-left: 60%; }

.rental-txt h2 {
  text-align: left;
  color: #242625; }

.rental-txt td {
  font-size: 14px;
  font-weight: bold; }

.rental-txt table {
  margin: 0 0 15px 15px; }

.rental-txt span {
  padding: 0 15px; }

.indent {
  font-size: 14px;
  padding-left: 1em;
  text-indent: -1em; }

#access p {
  text-align: center;
  margin-bottom: 20px;
  padding: 0 15px; }

.toi {
  font-size: 24px;
  text-align: center; }

.tel {
  text-align: center; }
  .tel a {
    font-size: 40px;
    text-align: center;
    color: #f2992e;
    font-family: sans-serif;
    font-weight: bold;
    letter-spacing: 0;
    text-decoration: none; }

#contact {
  background: center/contain repeat-x url("../img/contact-back.jpg");
  background-size: auto 100%;
  padding: 5px 30px 30px; }

#contact .h101 {
  margin: 0 0 30px; }

#contact .contact-inner {
  width: 630px;
  background-color: rgba(255, 255, 255, 0.5);
  margin: 0 auto;
  padding: 26px 0 20px; }

.gmap iframe {
  vertical-align: bottom; }

#page_top {
  position: fixed;
  bottom: 40px;
  right: 40px;
  cursor: pointer;
  padding: 5px;
  background-color: rgba(255, 255, 255, 0.3); }

footer {
  text-align: center;
  background: #242625;
  height: auto;
  width: 100%; }

.footer {
  padding: 20px 165px; }

.footer-logo {
  width: 290px;
  padding: 5px 0 0; }

.name {
  font-size: 35px;
  font-weight: bold;
  line-height: 1;
  letter-spacing: 0;
  margin-bottom: 15px; }

.name span {
  font-size: 14px; }

.info {
  text-align: center;
  padding: 0 0 0 35px; }

.tel02 a {
  color: #fff;
  text-decoration: none; }

.info-name {
  font-weight: bold; }

footer h1, footer p, .name {
  color: #fff; }

.mail-sns a {
  font-size: 30px;
  color: #fff; }

.mail-sns a:hover {
  color: #ffd900;
  cursor: pointer; }

.copy {
  text-align: center;
  padding-bottom: 10px; }

.copyright {
  font-size: 12px;
  color: #fff; }

/* タイトル付　枠（影）1　*/
.kakomi-box12 {
  text-align: center;
  position: relative;
  margin: 2em auto;
  padding: 2em;
  max-width: 800px;
  color: #555555;
  /* 文字色 */
  background-color: #fff;
  border: 3px solid #70b5e0;
  /* 枠線の太さ・色 */
  box-shadow: 3px 3px 5px #ccc;
  /* 影の色 */ }
  .kakomi-box12 p {
    font-weight: bold;
    margin-bottom: 1rem; }
  .kakomi-box12 img {
    margin-right: 2em;
    width: 30%; }
  .kakomi-box12 ul {
    text-align: left;
    margin-bottom: 0; }
    .kakomi-box12 ul li {
      padding-left: 1em;
      text-indent: -1em; }
  .kakomi-box12 img, .kakomi-box12 ul {
    display: inline-block;
    vertical-align: middle; }

.title-box12 {
  position: absolute;
  padding: 0 .5em;
  left: calc(50% - 206px);
  top: -15px;
  font-weight: bold;
  background-color: #fff;
  /* タイトル背景色 */
  color: #70b5e0;
  /* タイトル文字色 */
  font-size: 20px; }

.marker {
  display: inline;
  background: linear-gradient(transparent 60%, #f4f1bc 60%); }

@media screen and (max-width: 820px) {
  .kakomi-box12 {
    margin: 1em;
    max-width: 100%;
    padding: 1.4em 1em 1em; } }
@media screen and (max-width: 768px) {
  .kakomi-box12 {
    padding: 3em 1em 1em; }
    .kakomi-box12 img, .kakomi-box12 ul {
      display: block;
      margin-right: auto;
      margin-left: auto; }
    .kakomi-box12 img {
      margin: 0 auto 1em; }
    .kakomi-box12 p {
      text-align: left; }

  .title-box12 {
    font-size: 18px;
    left: calc(50% - 107px); } }
/*SPナビ*/
@media screen and (max-width: 994px) {
  .pc-navi {
    display: none; }

  .sp-navi {
    display: flex;
    justify-content: space-between; }

  .logo {
    font-size: 20px; }

  .nav-button {
    display: none; }

  .nav {
    display: inline-block; }

  .nav a {
    color: #000;
    text-decoration: none;
    font-size: 14px;
    color: #448aff; }

  .nav li {
    display: inline-block;
    margin: 0 10px; }

  .nav-wrap.open {
    display: block; }

  .nav-button {
    display: block;
    cursor: pointer; }

  .nav-wrap {
    position: fixed;
    left: 0;
    top: 0;
    display: none;
    z-index: 10;
    background-color: rgba(0, 0, 0, 0.7);
    width: 100%;
    height: 100%; }

  .nav-wrap .nav {
    height: 100%;
    position: relative;
    overflow-x: hidden;
    overflow-y: auto;
    margin-top: 74px; }

  .nav-wrap li {
    display: block;
    padding: 2em 5em;
    border-bottom: 1px solid #8B8B8B; }

  .nav-wrap li a {
    color: #fff;
    font-size: 18px; }

  /*メニューボタンのエフェクト*/
  .nav-button,
  .nav-button span {
    display: inline-block;
    transition: all 0.4s;
    box-sizing: border-box; }

  .nav-button {
    z-index: 20;
    position: relative;
    width: 30px;
    height: 30px; }

  .nav-button span {
    position: absolute;
    left: 0;
    width: 100%;
    height: 3px;
    background-color: #fff; }

  .nav-button span:nth-of-type(1) {
    top: 0; }

  .nav-button span:nth-of-type(2) {
    top: 14px; }

  .nav-button span:nth-of-type(3) {
    bottom: 0; }

  .nav-button.active span:nth-of-type(1) {
    -webkit-transform: translateY(11px) rotate(-45deg);
    transform: translateY(11px) rotate(-45deg); }

  .nav-button.active span:nth-of-type(2) {
    opacity: 0; }

  .nav-button.active span:nth-of-type(3) {
    -webkit-transform: translateY(-16px) rotate(45deg);
    transform: translateY(-16px) rotate(45deg); } }
@media (min-width: 768px) {
  .container {
    max-width: 100%; } }
@media (min-width: 576px) {
  .container {
    max-width: 100%; } }
/*------------------SP版------------------*/
@media only screen and (max-width: 768px) {
  .pc-only {
    display: none; }

  .sp-only {
    display: block; }

  #top {
    max-width: 90px; }

  .top-name {
    margin-left: 92px;
    margin-right: 15px; }

  h2 {
    font-size: 18px; }

  p, li, a {
    font-size: 14px; }

  .caption {
    margin: 0 15px; }
    .caption img {
      margin: 0 auto 20px; }

  .h101 {
    margin: 15px 0 20px; }

  .h101 img {
    width: 180px; }

  .logo-navi {
    padding: 31px 15px; }

  #about .h101 {
    margin: 15px 0 20px; }

  .about-inner {
    margin-bottom: 20px;
    padding: 0 0 15px; }

  .about-inner .about-img01, .about-inner .about-img03, .about-inner .about-img02, .about-inner .about-img04 {
    padding: 15px 15px 0; }

  .about-inner img {
    width: 100%; }

  .about-inner h2 {
    margin-top: 20px;
    padding-bottom: 20px; }

  .about-inner p {
    padding-top: 20px; }

  .rental-img01, .rental-img02 {
    padding: 0;
    margin: 0 auto; }

  .rental-img01 img, .rental-img02 img {
    margin: 0 auto; }

  .rental-img01 img {
    margin: 0 auto; }

  .rental-txt {
    padding: 20px 15px; }

  .indent {
    font-size: 12px; }

  .gmap {
    height: 0;
    overflow: hidden;
    padding-bottom: 56.25%;
    position: relative; }

  .gmap iframe {
    position: absolute;
    left: 0;
    top: 0;
    height: 100%;
    width: 100%; }

  #contact {
    padding: 0 15px 15px; }

  #contact .contact-inner {
    width: 100%; }

  #contact .toi {
    font-size: 18px; }

  #contact .tel a {
    font-size: 26px; }

  /* 高さ100％*/
  .rental-inner, footer {
    height: 100%; }

  .footer {
    padding: 0; }

  .footer .footer-logo {
    width: 140px;
    margin: 0 auto; }

  .name {
    font-size: 22px; }
    .name span {
      font-size: 12px;
      font-weight: normal; }

  .info {
    padding: 0; }

  #page_top {
    bottom: 15px;
    right: 15px;
    padding: 0;
    background-color: transparent;
    opacity: 0.5; }
    #page_top img {
      width: 35px; } }
@media (min-width: 768px) {
  a[href^="tel:"] {
    pointer-events: none; } }
/* かさね解除*/
@media only screen and (max-width: 768px) {
  .rental-inner, .about-inner, .rental-img01, .rental-img02, .about-img01, .about-img02, .about-img03, .about-img04 {
    position: static; }

  .about-inner {
    height: auto; }

  .rental-img01, .rental-img02, .about-img01, .about-img03, .about-img02, .about-img04 {
    top: 0;
    left: 0;
    right: 0;
    max-width: 100%; }

  .about-text01, .about-text03, .about-text02, .about-text04, .rental-txt {
    margin: 0; } }
@media only screen and (max-width: 767px) {
  .reverse {
    flex-flow: column wrap; } }
/*# sourceMappingURL=style.css.map */

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