@charset "UTF-8";
body {
  background-image: url("../img/bg1.png");
  color: #626262;
  font-size: 12pt; }

ul {
  list-style: none;
  padding: 0;
  margin: 0; }

h2 {
  font-size: 16pt;
  font-family: "Hannari", "游明朝", YuMincho, "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif;
  color: #738ad6;
  margin: 0 0 20px 0; }

p {
  margin-bottom: 0.5rem;
  line-height: 18pt; }

a {
  color: #626262; }

.carousel-inner {
  display: flex;
  align-items: center;
  max-width: 1000px;
  max-height: 440px;
  overflow: hidden; }
  .carousel-inner img {
    max-width: 100%; }
  @media screen and (max-width: 768px) {
    .carousel-inner {
      max-height: unset; } }
a.button {
  width: 80%;
  display: block;
  margin: 20px auto;
  text-align: center;
  padding: 5px;
  border-radius: 6px;
  color: white;
  font-size: 10pt;
  background-color: #738ad6; }

.sp {
  display: none; }
  @media screen and (max-width: 768px) {
    .sp {
      display: block; } }
.bold {
  font-weight: bold; }

header {
  display: flex;
  justify-content: space-between;
  font-family: "Hannari", "游明朝", YuMincho, "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif;
  background: url("../img/dots.png") bottom repeat-x;
  margin-bottom: 20px; }
  header div {
    width: 100%; }
    header div h1 {
      margin: 20px 0;
      padding: 10px 0;
      font-size: 18pt;
      font-family: "Hannari", "游明朝", YuMincho, "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif;
      text-align: center; }
      header div h1 a {
        text-decoration: none; }
    header div p {
      font-size: 11pt;
      margin-top: 6px;
      text-align: center; }
  @media screen and (max-width: 768px) {
    header {
      justify-content: center; }
      header .left_col {
        flex-basis: 98%; }
        header .left_col p {
          font-size: 10pt;
          line-height: 12pt; }
        header .left_col h1, header .left_col a {
          display: block;
          text-align: center; }
      header .right_col {
        display: none; } }
footer {
  justify-content: flex-start;
  background: url("../img/dots.png") top repeat-x;
  padding-top: 20px;
  text-align: center; }
  footer div {
    font-family: "Hannari", "游明朝", YuMincho, "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif;
    font-size: 12pt;
    margin-top: 20px; }
    footer div > * {
      margin: 4px 0;
      padding: 0; }
    footer div h2 {
      font-size: 12pt;
      margin: 10px 0 5px 0; }
      footer div h2 span {
        font-size: 18pt; }
    footer div address {
      font-style: normal; }
    footer div ul {
      display: flex;
      flex-wrap: wrap;
      width: 80%; }
      footer div ul li {
        background-image: url("../img/rect_icon.png");
        background-position: center left;
        background-repeat: no-repeat;
        padding-left: 20px;
        line-height: 12pt;
        margin: 0 10px 10px 0; }
        footer div ul li a {
          color: #626262;
          text-decoration: none; }
  @media screen and (max-width: 768px) {
    footer {
      padding: 2%; }
      footer figure {
        display: none; } }
.copy {
  text-align: center;
  font-size: 10pt;
  margin-top: 30px; }
  @media screen and (max-width: 768px) {
    .copy {
      margin-top: 10px;
      font-size: 8pt; } }
p.sub {
  font-weight: bold;
  font-size: 12pt; }

p.block {
  margin-bottom: 20px; }

section {
  display: flex;
  justify-content: center;
  flex-wrap: wrap;
  max-width: 90%;
  margin: 20px auto; }
  section img {
    max-width: 100%; }
  section div {
    flex-basis: 70%;
    margin-right: 10px; }
    @media screen and (max-width: 768px) {
      section div {
        flex-basis: 100%; } }
    section div figure {
      margin: 10px 0;
      padding: 0; }
    section div p.navi {
      font-size: 10pt; }
    section div ul {
      margin: 20px 0 20px 0; }
      section div ul.list-jigyo .important {
        color: #f44336;
        font-size: 10pt;
        padding: 4px 4px 4px 1em; }
        section div ul.list-jigyo .important a {
          color: #f44336;
          text-decoration: underline; }
      section div ul.list-top li a {
        display: flex; }
        @media screen and (max-width: 768px) {
          section div ul.list-top li a {
            display: block; }
            section div ul.list-top li a figure {
              text-align: center; }
            section div ul.list-top li a div {
              text-align: center; } }
        section div ul.list-top li a figure {
          margin-right: 10px; }
          section div ul.list-top li a figure img {
            width: 200px; }
      section div ul.list-kurokawa {
        display: flex; }
        section div ul.list-kurokawa li:last-child {
          margin-left: 40px; }
        section div ul.list-kurokawa p {
          text-align: center; }
      section div ul.list {
        width: 100%; }
        section div ul.list li {
          display: flex;
          justify-content: flex-start; }
          @media screen and (max-width: 768px) {
            section div ul.list li {
              display: block; } }
          section div ul.list li span {
            background: url("../img/dots.png") bottom repeat-x;
            width: 80%;
            padding-bottom: 10px;
            margin-bottom: 10px; }
            section div ul.list li span.list-head {
              width: 20%; }
            @media screen and (max-width: 768px) {
              section div ul.list li span {
                display: block;
                width: 100%; }
                section div ul.list li span.list-head {
                  width: 100%; }
                section div ul.list li span:not(.list-head) {
                  background: unset; } }
nav ul li {
  background-image: url("../img/rect_icon.png");
  background-position: center left;
  background-repeat: no-repeat;
  padding-left: 20px;
  line-height: 12pt;
  margin: 0 10px 10px 0; }

@media screen and (max-width: 768px) {
  nav {
    display: none; }
    nav.right-nav {
      display: block;
      position: fixed;
      right: 100%;
      top: 0%;
      width: 50%;
      height: 100vh;
      background-image: none;
      background-color: white;
      margin: 0;
      padding: 0;
      z-index: 100;
      border: none;
      transition: right 0.25s ease-out;
      border-right: solid 1px black; }
      nav.right-nav.active {
        right: 50%;
        transition: right 0.25s ease-in; }
      nav.right-nav ul li {
        width: 85%;
        text-align: left;
        padding: 5% 5% 5% 10%;
        border-bottom: 1px solid black; } }

.c-button {
  position: relative;
  display: inline-block;
  text-decoration: none;
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  border: none;
  background-color: transparent;
  cursor: pointer; }

.p-hamburger {
  position: fixed;
  bottom: 6%;
  right: 6%;
  width: 48px;
  height: 48px;
  margin: auto;
  border-radius: 50%;
  border: 1px solid #738ad6;
  box-shadow: 0 0 2rem transparent;
  outline: none;
  -webkit-transition: all .3s ease-in-out;
  transition: all .3s ease-in-out; }
  .p-hamburger:hover, .p-hamburger:focus {
    box-shadow: 0 0 0.5rem rgba(255, 255, 255, 0.5); }
  .p-hamburger .p-hamburger__line {
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    margin: auto;
    width: 18px;
    height: 2px;
    background-color: #738ad6;
    -webkit-transition: inherit;
    transition: inherit; }
  .p-hamburger .p-hamburger__line::before,
  .p-hamburger .p-hamburger__line::after {
    position: absolute;
    display: block;
    width: 100%;
    height: 100%;
    background-color: inherit;
    content: '';
    -webkit-transition: inherit;
    transition: inherit; }
  .p-hamburger .p-hamburger__line::before {
    top: -5px; }
  .p-hamburger .p-hamburger__line::after {
    top: 5px; }
  .p-hamburger[aria-expanded="true"] .p-hamburger__line {
    background-color: transparent; }
  .p-hamburger[aria-expanded="true"] .p-hamburger__line::before, .p-hamburger[aria-expanded="true"] .p-hamburger__line::after {
    top: 0;
    background-color: #738ad6; }
  .p-hamburger[aria-expanded="true"] .p-hamburger__line::before {
    -webkit-transform: rotate(45deg);
    -ms-transform: rotate(45deg);
    transform: rotate(45deg); }
  .p-hamburger[aria-expanded="true"] .p-hamburger__line::after {
    -webkit-transform: rotate(-45deg);
    -ms-transform: rotate(-45deg);
    transform: rotate(-45deg); }
  .p-hamburger .u-visuallyHidden {
    position: absolute;
    white-space: nowrap;
    width: 1px;
    height: 1px;
    overflow: hidden;
    border: 0;
    padding: 0;
    clip: rect(0 0 0 0);
    clip-path: inset(50%);
    margin: -1px; }
