@charset "UTF-8";
@import url("https://fonts.googleapis.com/css?family=Sawarabi+Mincho");
img {
  max-width: 100%;
  height: auto;
  display: block;
  margin: 0 auto;
  vertical-align: bottom; }

body {
  margin: 0;
  padding: 0;
  background: #fff;
  font-family: "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", "sans-serif";
  color: #333; }

.bg {
  background: linear-gradient(135deg, rgba(54, 46, 111, 0.8), rgba(19, 19, 56, 0.8)), url("../img/bg.png");
  position: relative;
  z-index: 0; }
  .bg img {
    max-width: 100%; }

@media only screen and (max-width: 767px) {
  .migitop {
    display: none; } }
@media only screen and (min-width: 768px) {
  .migitop {
    position: absolute;
    right: 0;
    top: 0.7%;
    filter: drop-shadow(15px 15px 8px rgba(0, 0, 0, 0.4)); } }

.migi {
  filter: drop-shadow(15px 15px 8px rgba(0, 0, 0, 0.4));
  position: absolute; }
  @media only screen and (max-width: 767px) {
    .migi {
      z-index: 1;
      right: 0;
      top: 0.5%; } }
  @media only screen and (min-width: 768px) {
    .migi {
      z-index: 1;
      right: 0;
      top: 3.55%; } }

.hidaritop {
  filter: drop-shadow(15px 15px 8px rgba(0, 0, 0, 0.4));
  position: absolute; }
  @media only screen and (max-width: 767px) {
    .hidaritop {
      z-index: 2;
      left: 0;
      top: -0.55%; } }
  @media only screen and (min-width: 768px) {
    .hidaritop {
      z-index: 2;
      left: 0;
      top: -1.3%; } }

.hidari {
  filter: drop-shadow(15px 15px 8px rgba(0, 0, 0, 0.4));
  position: absolute; }
  @media only screen and (max-width: 767px) {
    .hidari {
      z-index: 1;
      left: 0;
      top: 1.6%; } }
  @media only screen and (min-width: 768px) {
    .hidari {
      z-index: 1;
      left: 0;
      top: 3.5%; } }

@media only screen and (max-width: 767px) {
  .wrap {
    margin: 0 auto;
    padding: 10px 15px 10px; } }
@media only screen and (min-width: 768px) {
  .wrap {
    margin: 0 auto;
    padding: 10px 15px 10px; } }
@media only screen and (min-width: 1024px) {
  .wrap {
    max-width: 950px;
    margin: 0 auto;
    padding: 10px 0 10px; } }
.wrap .inner {
  position: relative;
  z-index: 99;
  background: #fff;
  background-image: url("../img/10.png");
  background-repeat: repeat;
  box-shadow: 0px 0px 0px 7px #fff;
  border: solid 3px #ebe5d5;
  border-radius: 5px; }
  @media only screen and (max-width: 767px) {
    .wrap .inner {
      padding: 50px 30px 10px; } }
  @media only screen and (min-width: 768px) {
    .wrap .inner {
      padding: 60px 70px 60px; } }
  .wrap .inner p {
    text-align: left; }
    @media only screen and (max-width: 767px) {
      .wrap .inner p {
        line-height: 28px; } }
    @media only screen and (min-width: 768px) {
      .wrap .inner p {
        font-size: 15px; } }
    @media only screen and (min-width: 1200px) {
      .wrap .inner p {
        line-height: 28px;
        font-size: 15px; } }
  .wrap .inner ul {
    margin-left: -40px;
    list-style: none;
    font-size: 15px;
    text-align: left; }
    .wrap .inner ul li {
      margin-bottom: 10px;
      text-indent: -5.4em;
      padding-left: 5.4em;
      line-height: 25px; }
      .wrap .inner ul li:last-child {
        margin-bottom: 0; }
      .wrap .inner ul li::before {
        content: "";
        width: 14px;
        height: 14px;
        margin-right: 7px;
        display: inline-block;
        background: #000;
        border-radius: 50%; }
  .wrap .inner h3 {
    background: #ba9e4f;
    color: #fff;
    padding: 10px 20px;
    font-size: 18px;
    text-align: left; }
    @media only screen and (max-width: 767px) {
      .wrap .inner h3 {
        margin: 0 0 5px; } }
    @media only screen and (min-width: 768px) {
      .wrap .inner h3 {
        margin: 0 0 20px; } }
  .wrap .inner::before {
    content: url(../img/hidariue.png);
    position: absolute;
    top: 0;
    left: 0; }
  .wrap .inner::after {
    content: url(../img/migiue.png);
    position: absolute;
    top: 0;
    right: 0; }
  .wrap .inner .frame {
    margin: 0;
    padding: 0; }
    .wrap .inner .frame::before {
      content: url(../img/hidarishita.png);
      position: absolute;
      bottom: -0.7%;
      left: 0; }
    .wrap .inner .frame::after {
      content: url(../img/migishita.png);
      position: absolute;
      bottom: -0.7%;
      right: 0; }

.hero {
  position: relative;
  z-index: 10;
  filter: drop-shadow(15px 15px 8px rgba(0, 0, 0, 0.1)); }
  @media only screen and (max-width: 767px) {
    .hero {
      margin: 25px 0 35px; }
      .hero img {
        width: 95%; } }
  @media only screen and (min-width: 768px) {
    .hero {
      margin: 30px 0 50px; }
      .hero img {
        width: 70%; } }
  @media only screen and (min-width: 1024px) {
    .hero {
      margin: 53px 0 80px; }
      .hero img {
        width: 70%; } }

.intro {
  position: relative;
  z-index: 10;
  color: #fff;
  text-align: center;
  font-family: "Sawarabi Mincho"; }
  @media only screen and (max-width: 767px) {
    .intro {
      margin: 0 0 30px; } }
  @media only screen and (min-width: 768px) {
    .intro {
      margin: 0 0 35px; } }
  @media only screen and (min-width: 1200px) {
    .intro {
      margin: 0 0 40px; } }
  .intro .mongon {
    font-weight: 900;
    margin: 0 0 10px;
    padding: 0; }
    @media only screen and (max-width: 767px) {
      .intro .mongon {
        font-size: 26px;
        line-height: 45px; } }
    @media only screen and (min-width: 768px) {
      .intro .mongon {
        font-size: 30px;
        line-height: 45px; } }
    @media only screen and (min-width: 1024px) {
      .intro .mongon {
        font-size: 40px;
        line-height: 70px; } }
  .intro .info {
    margin: 0;
    padding: 0; }
    @media only screen and (max-width: 767px) {
      .intro .info {
        font-size: 15px;
        line-height: 30px; } }
    @media only screen and (min-width: 768px) {
      .intro .info {
        font-size: 20px;
        line-height: 55px; } }
    @media only screen and (min-width: 1200px) {
      .intro .info {
        font-size: 20px;
        line-height: 55px; } }
  .intro .report_link {
    text-align: center;
    margin: 20px 0 10px 0; }
    .intro .report_link a {
      display: inline-block;
      padding: 10px 20px;
      background-color: rgba(255, 255, 255, 0.8);
      border-radius: 5px;
      -webkit-border-radius: 5px;
      -moz-border-radius: 5px;
      color: #486B97;
      text-decoration: none;
      font-size: 14px; }
      .intro .report_link a:hover {
        color: #946349;
        text-decoration: underline; }
  @media only screen and (min-width: 768px) {
    .intro .sponly {
      display: none; } }
  .intro .inner {
    text-align: center; }
    .intro .inner h1 {
      font-family: "Sawarabi Mincho";
      text-align: center;
      color: #5e5236;
      background: #f8f7ed;
      padding: 20px 10px;
      margin: 0; }
    .intro .inner p {
      font-family: "Sawarabi Mincho";
      margin-bottom: 0; }
      @media only screen and (max-width: 767px) {
        .intro .inner p {
          line-height: 30px; } }
      @media only screen and (min-width: 768px) {
        .intro .inner p {
          line-height: 40px;
          font-size: 16px; } }
      @media only screen and (min-width: 1024px) {
        .intro .inner p {
          line-height: 50px;
          font-size: 17px; } }
      @media only screen and (min-width: 1200px) {
        .intro .inner p {
          line-height: 60px;
          font-size: 18px; } }

.gaiyou {
  position: relative;
  font-family: "Sawarabi Mincho"; }
  @media only screen and (max-width: 767px) {
    .gaiyou {
      margin: 0 0 30px; } }
  @media only screen and (min-width: 768px) {
    .gaiyou {
      margin: 0 0 40px; } }
  @media only screen and (min-width: 1024px) {
    .gaiyou {
      margin: 0 0 55px; } }
  .gaiyou .ticket_soon {
    font-size: 20px;
    margin-top: 40px;
    font-weight: bold; }
  @media only screen and (max-width: 767px) {
    .gaiyou .box {
      margin: 0 0 30px; } }
  @media only screen and (min-width: 768px) {
    .gaiyou .box {
      margin: 0 0 40px; } }
  .gaiyou .box:last-child {
    margin: 0; }
  @media only screen and (max-width: 767px) {
    .gaiyou .sponly {
      display: block; } }
  @media only screen and (min-width: 768px) {
    .gaiyou .sponly {
      display: none; } }

@media only screen and (max-width: 767px) {
  .hanabaihouhou {
    margin: 0 0 30px; } }
@media only screen and (min-width: 1200px) {
  .hanabaihouhou {
    margin: 0 0 30px; } }

.ticket {
  display: inline-block;
  text-align: left;
  font-size: 15px; }

.ticket_yoyaku {
  position: relative; }
  .ticket_yoyaku .urikire {
    font-family: "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", "sans-serif";
    position: absolute;
    z-index: 50;
    left: 0;
    right: 0;
    margin: auto;
    color: #ff0000;
    font-weight: bold;
    background-color: rgba(255, 255, 255, 0.9);
    border: #ff0000 solid 3px;
    text-align: center; }
    @media only screen and (max-width: 767px) {
      .ticket_yoyaku .urikire {
        top: 45%;
        width: 94%;
        font-size: 14px;
        padding: 28px 0; } }
    @media only screen and (min-width: 768px) {
      .ticket_yoyaku .urikire {
        top: 49%;
        width: 90%;
        font-size: 15px;
        padding: 25px 0; } }
    @media only screen and (min-width: 1024px) {
      .ticket_yoyaku .urikire {
        top: 46%;
        width: 75%;
        font-size: 16px;
        padding: 30px 0; } }
    @media only screen and (max-width: 767px) {
      .ticket_yoyaku .urikire .sponly {
        display: block; } }
    @media only screen and (min-width: 768px) {
      .ticket_yoyaku .urikire .sponly {
        display: none; } }
  .ticket_yoyaku .block {
    margin-top: 25px; }
    .ticket_yoyaku .block .box {
      font-family: "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", "sans-serif";
      display: flex;
      border-top: #000 solid 1px;
      padding: 19px 0 15px;
      margin: 0; }
      .ticket_yoyaku .block .box:last-child {
        border-bottom: #000 solid 1px; }
      @media only screen and (max-width: 767px) {
        .ticket_yoyaku .block .box {
          flex-direction: column; } }
      @media only screen and (min-width: 768px) {
        .ticket_yoyaku .block .box {
          justify-content: space-between;
          align-items: center; } }
      .ticket_yoyaku .block .box p {
        padding: 0;
        margin: 0;
        font-size: 15px; }
      .ticket_yoyaku .block .box a {
        display: block;
        width: 100%;
        background: #00b1b8;
        border-radius: 3px;
        position: relative;
        text-decoration: none;
        color: #fff;
        font-size: 15px;
        text-align: center; }
        @media only screen and (max-width: 767px) {
          .ticket_yoyaku .block .box a {
            padding: 10px 2px;
            margin: 15px auto 5px;
            width: 75%; } }
        @media only screen and (min-width: 768px) {
          .ticket_yoyaku .block .box a {
            padding: 7px 20px;
            margin-top: -5px;
            margin-left: -40px; } }
        .ticket_yoyaku .block .box a:hover {
          opacity: 0.8; }
      @media only screen and (max-width: 767px) {
        .ticket_yoyaku .block .box .sponly {
          display: block; } }
      @media only screen and (min-width: 768px) {
        .ticket_yoyaku .block .box .sponly {
          display: none; } }

.urikire {
  color: #F00004;
  padding-right: 20px;
  text-align: left;
  font-size: 15px; }

@media only screen and (max-width: 767px) {
  .mu {
    margin: 30px 0 0; } }
@media only screen and (min-width: 768px) {
  .mu {
    margin: 50px 0 0; } }
.mu .profile {
  margin: auto;
  text-align: left; }
  @media only screen and (min-width: 1200px) {
    .mu .profile {
      max-width: 950px; } }
  .mu .profile .box {
    margin-bottom: 55px; }
    .mu .profile .box .mu_title {
      font-family: "Sawarabi Mincho";
      margin: 0 0 30px;
      color: #74653f;
      background: #e7dec4;
      font-weight: 900; }
      @media only screen and (max-width: 767px) {
        .mu .profile .box .mu_title {
          padding: 20px 15px; } }
      @media only screen and (min-width: 768px) {
        .mu .profile .box .mu_title {
          padding: 20px 25px; } }
      .mu .profile .box .mu_title .subtitle {
        margin: 0;
        padding: 0;
        line-height: 20px; }
        @media only screen and (max-width: 767px) {
          .mu .profile .box .mu_title .subtitle {
            font-size: 12px; } }
        @media only screen and (min-width: 768px) {
          .mu .profile .box .mu_title .subtitle {
            font-size: 13px; } }
        @media only screen and (min-width: 1024px) {
          .mu .profile .box .mu_title .subtitle {
            font-size: 17px; } }
      .mu .profile .box .mu_title h2 {
        margin: 5px 0 0;
        padding: 0; }
        @media only screen and (max-width: 767px) {
          .mu .profile .box .mu_title h2 {
            font-size: 20px;
            line-height: 29px; } }
        @media only screen and (min-width: 768px) {
          .mu .profile .box .mu_title h2 {
            font-size: 20px;
            line-height: 25px; } }
        @media only screen and (min-width: 1024px) {
          .mu .profile .box .mu_title h2 {
            font-size: 28px;
            line-height: 38px; } }
        @media only screen and (min-width: 1200px) {
          .mu .profile .box .mu_title h2 {
            font-size: 31px;
            line-height: 40px; } }
    .mu .profile .box .grid {
      display: -ms-grid;
      display: grid; }
  .mu .profile .pic {
    max-width: 300px;
    filter: drop-shadow(0 0 8px rgba(0, 0, 0, 0.2)); }
    @media only screen and (max-width: 767px) {
      .mu .profile .pic {
        margin-bottom: 20px;
        -ms-grid-row: 1;
        -ms-grid-row-span: 1;
        grid-row: 1 / 2;
        -ms-grid-column: 1;
        -ms-grid-column-span: 1;
        grid-column: 1 / 2; } }
  .mu .profile .info {
    max-width: 300px;
    position: relative;
    text-align: left; }
    @media only screen and (max-width: 767px) {
      .mu .profile .info {
        -ms-grid-row: 3;
        -ms-grid-row-span: 1;
        grid-row: 3 / 4;
        -ms-grid-column: 1;
        -ms-grid-column-span: 1;
        grid-column: 1 / 2;
        margin-top: 15px; } }
    @media only screen and (min-width: 768px) {
      .mu .profile .info {
        -ms-grid-row: 2;
        -ms-grid-row-span: 1;
        grid-row: 2 / 3;
        -ms-grid-column: 1;
        -ms-grid-column-span: 1;
        grid-column: 1 / 2;
        margin-top: 10px; } }
    .mu .profile .info p {
      font-size: 14px;
      margin: 0 0 10px;
      padding: 0;
      line-height: 23px; }
      .mu .profile .info p a {
        position: relative;
        color: #AA91C3;
        text-decoration: underline; }
        @media only screen and (max-width: 767px) {
          .mu .profile .info p a {
            word-break: break-all; } }
        .mu .profile .info p a:hover {
          text-decoration: none; }
  .mu .profile .text {
    max-width: 520px; }
    @media only screen and (max-width: 767px) {
      .mu .profile .text {
        -ms-grid-row: 2;
        -ms-grid-row-span: 1;
        grid-row: 2 / 3;
        -ms-grid-column: 1;
        -ms-grid-column-span: 1;
        grid-column: 1 / 2; } }
    @media only screen and (min-width: 768px) {
      .mu .profile .text {
        -ms-grid-row: 1;
        -ms-grid-row-span: 2;
        grid-row: 1 / 3;
        -ms-grid-column: 2;
        grid-column: 2 / 2;
        margin-left: 35px; } }
    .mu .profile .text p {
      font-size: 15px;
      margin: 0;
      padding: 0;
      text-align: justify;
      text-justify: inter-ideograph; }
      @media only screen and (max-width: 767px) {
        .mu .profile .text p {
          line-height: 24px; } }
      @media only screen and (min-width: 768px) {
        .mu .profile .text p {
          line-height: 27px; } }
      .mu .profile .text p a {
        position: relative;
        color: #AA91C3;
        text-decoration: underline; }
        @media only screen and (max-width: 767px) {
          .mu .profile .text p a {
            word-break: break-all; } }
        @media only screen and (min-width: 768px) {
          .mu .profile .text p a {
            word-break: break-all; } }
        .mu .profile .text p a:hover {
          text-decoration: none; }
    .mu .profile .text h4 {
      font-family: "Sawarabi Mincho";
      font-size: 15px;
      text-align: left; }
    @media only screen and (max-width: 767px) {
      .mu .profile .text .description {
        margin: 10px 0 15px; } }
    @media only screen and (min-width: 768px) {
      .mu .profile .text .description {
        margin: 10px 0 15px; } }
    .mu .profile .text .attention {
      color: #393939;
      margin: 10px 0 5px;
      padding: 0; }
    .mu .profile .text .tokuten {
      background: #ba9e4f;
      color: #fff;
      margin: 25px 0 10px;
      padding: 7px 10px; }
    .mu .profile .text .date {
      margin: 0 0 10px;
      font-size: 16px; }

@media only screen and (max-width: 767px) {
  .about_teacher {
    margin: 0 auto 20px; } }
@media only screen and (min-width: 768px) {
  .about_teacher {
    margin: 10px auto 20px; } }
@media only screen and (min-width: 1200px) {
  .about_teacher {
    margin: 10px auto 20px; } }
.about_teacher h1 {
  position: relative;
  padding: 1em 0;
  font-family: "Sawarabi Mincho";
  text-align: center;
  color: #c39739;
  filter: drop-shadow(0 0 8px rgba(255, 255, 255, 0.3)); }
  @media only screen and (max-width: 767px) {
    .about_teacher h1 {
      font-size: 17px;
      margin: 0 0 30px;
      padding: 14px 0; } }
  @media only screen and (min-width: 768px) {
    .about_teacher h1 {
      margin: 0 0 40px;
      font-size: 25px;
      padding: 17px 0; } }
  @media only screen and (min-width: 1024px) {
    .about_teacher h1 {
      margin: 0 0 40px;
      font-size: 28px;
      padding: 20px 0; } }
  @media only screen and (min-width: 1200px) {
    .about_teacher h1 {
      margin: 0 0 40px;
      font-size: 32px;
      padding: 20px 0; } }
.about_teacher h1::before,
.about_teacher h1::after {
  position: absolute;
  left: 0;
  content: '';
  width: 100%;
  height: 6px;
  box-sizing: border-box; }
.about_teacher h1::before {
  top: 0;
  border-top: 2px solid #c39739;
  border-bottom: 1px solid #c39739; }
.about_teacher h1::after {
  bottom: 0;
  border-top: 1px solid #c39739;
  border-bottom: 2px solid #c39739; }
.about_teacher .list_member {
  text-align: center; }
  @media only screen and (max-width: 767px) {
    .about_teacher .list_member {
      width: 95%;
      margin: 0 auto 20px; } }
  @media only screen and (min-width: 768px) {
    .about_teacher .list_member {
      width: 100%;
      margin: 0 auto 35px; } }
  @media only screen and (min-width: 1024px) {
    .about_teacher .list_member {
      width: 100%;
      margin: 0 auto 55px; } }
  .about_teacher .list_member .block {
    display: flex;
    position: relative; }
    @media only screen and (max-width: 767px) {
      .about_teacher .list_member .block {
        flex-wrap: wrap;
        justify-content: center; } }
    @media only screen and (min-width: 768px) {
      .about_teacher .list_member .block {
        justify-content: space-between; } }
    .about_teacher .list_member .block .fukidashi {
      position: absolute;
      z-index: 50; }
      @media only screen and (max-width: 767px) {
        .about_teacher .list_member .block .fukidashi {
          bottom: 12%;
          left: 0; } }
      @media only screen and (min-width: 768px) {
        .about_teacher .list_member .block .fukidashi {
          bottom: 46%;
          left: 87%; } }
      @media only screen and (min-width: 1024px) {
        .about_teacher .list_member .block .fukidashi {
          bottom: 42%;
          left: 87%; } }
      @media only screen and (min-width: 1200px) {
        .about_teacher .list_member .block .fukidashi {
          bottom: 40%;
          left: 87%; } }
      @media only screen and (max-width: 767px) {
        .about_teacher .list_member .block .fukidashi img {
          width: 40%; } }
      @media only screen and (min-width: 768px) {
        .about_teacher .list_member .block .fukidashi img {
          width: 100%; } }
  .about_teacher .list_member .box {
    text-align: center;
    position: relative;
    filter: drop-shadow(0 0 8px rgba(255, 255, 255, 0.3)); }
    @media only screen and (max-width: 767px) {
      .about_teacher .list_member .box {
        width: 30.2%;
        margin: 0 5px 25px; } }
    @media only screen and (min-width: 768px) {
      .about_teacher .list_member .box {
        width: 13%; } }
    .about_teacher .list_member .box .pic {
      border-radius: 50%;
      border: #c39739 solid 2px;
      margin: 4px;
      position: relative; }
      .about_teacher .list_member .box .pic::before {
        border-radius: 50%;
        content: '';
        width: calc(100% + 8px);
        height: calc(100% + 8px);
        border: #c39739 solid 4px;
        position: absolute;
        top: -8px;
        left: -8px; }
      .about_teacher .list_member .box .pic img {
        border-radius: 50%; }
      .about_teacher .list_member .box .pic:hover {
        opacity: 0.8; }
      .about_teacher .list_member .box .pic a {
        position: relative; }
    .about_teacher .list_member .box .sp {
      border-radius: 50%;
      border: #ba9e4f solid 2px;
      margin: 4px;
      position: relative; }
      .about_teacher .list_member .box .sp::before {
        border-radius: 50%;
        content: '';
        width: calc(100% + 8px);
        height: calc(100% + 8px);
        border: #ba9e4f solid 4px;
        position: absolute;
        top: -8px;
        left: -8px; }
    .about_teacher .list_member .box .name {
      padding: 0;
      color: #fff;
      font-family: "Sawarabi Mincho"; }
      @media only screen and (max-width: 767px) {
        .about_teacher .list_member .box .name {
          font-size: 11px;
          margin: 15px 0 0; } }
      @media only screen and (min-width: 768px) {
        .about_teacher .list_member .box .name {
          font-size: 14px;
          margin: 20px 0 0; } }

.profile {
  margin: auto;
  text-align: left; }
  @media only screen and (min-width: 1200px) {
    .profile {
      max-width: 950px; } }
  .profile .box {
    margin-bottom: 55px; }
    .profile .box h2 {
      font-family: "Sawarabi Mincho";
      margin: 0 0 30px;
      color: #74653f;
      background: #e7dec4; }
      @media only screen and (max-width: 767px) {
        .profile .box h2 {
          font-size: 20px;
          padding: 17px 15px; } }
      @media only screen and (min-width: 768px) {
        .profile .box h2 {
          font-size: 28px;
          padding: 20px 25px; } }
      @media only screen and (min-width: 1200px) {
        .profile .box h2 {
          font-size: 31px;
          padding: 20px 25px; } }
    .profile .box h3 {
      background: #ebe1c6;
      color: #74653f;
      font-size: 20px;
      margin: 0 0 20px;
      text-align: left;
      position: relative;
      font-family: "Sawarabi Mincho"; }
      @media only screen and (max-width: 767px) {
        .profile .box h3 {
          padding: 15px 14px 70px; } }
      @media only screen and (min-width: 768px) {
        .profile .box h3 {
          padding: 15px 20px; } }
      .profile .box h3 .yoyaku_attention {
        position: absolute;
        font-weight: normal;
        font-size: 13px;
        line-height: 18px; }
        @media only screen and (max-width: 767px) {
          .profile .box h3 .yoyaku_attention {
            left: 14px;
            bottom: 11px; } }
        @media only screen and (min-width: 768px) {
          .profile .box h3 .yoyaku_attention {
            top: 3px;
            left: 120px; } }
        @media only screen and (min-width: 1024px) {
          .profile .box h3 .yoyaku_attention {
            top: 11px;
            left: 130px; } }
    .profile .box .grid {
      display: -ms-grid;
      display: grid; }
  .profile .pic {
    max-width: 300px;
    filter: drop-shadow(0 0 8px rgba(0, 0, 0, 0.2)); }
    @media only screen and (max-width: 767px) {
      .profile .pic {
        margin-bottom: 20px;
        -ms-grid-row: 1;
        -ms-grid-row-span: 1;
        grid-row: 1 / 2;
        -ms-grid-column: 1;
        -ms-grid-column-span: 1;
        grid-column: 1 / 2; } }
  .profile .info {
    max-width: 300px;
    position: relative;
    text-align: left;
    font-family: "Sawarabi Mincho"; }
    @media only screen and (max-width: 767px) {
      .profile .info {
        -ms-grid-row: 3;
        -ms-grid-row-span: 1;
        grid-row: 3 / 4;
        -ms-grid-column: 1;
        -ms-grid-column-span: 1;
        grid-column: 1 / 2;
        margin-top: 15px; } }
    @media only screen and (min-width: 768px) {
      .profile .info {
        -ms-grid-row: 2;
        -ms-grid-row-span: 1;
        grid-row: 2 / 3;
        -ms-grid-column: 1;
        -ms-grid-column-span: 1;
        grid-column: 1 / 2;
        margin-top: 10px; } }
    .profile .info p {
      font-size: 14px;
      margin: 0 0 10px;
      padding: 0;
      line-height: 23px; }
      .profile .info p a {
        position: relative;
        color: #AA91C3;
        text-decoration: underline; }
        @media only screen and (max-width: 767px) {
          .profile .info p a {
            word-break: break-all; } }
        .profile .info p a:hover {
          text-decoration: none; }
  .profile .text {
    max-width: 520px;
    font-family: "Sawarabi Mincho"; }
    @media only screen and (max-width: 767px) {
      .profile .text {
        -ms-grid-row: 2;
        -ms-grid-row-span: 1;
        grid-row: 2 / 3;
        -ms-grid-column: 1;
        -ms-grid-column-span: 1;
        grid-column: 1 / 2; } }
    @media only screen and (min-width: 768px) {
      .profile .text {
        -ms-grid-row: 1;
        -ms-grid-row-span: 2;
        grid-row: 1 / 3;
        -ms-grid-column: 2;
        grid-column: 2 / 2;
        margin-left: 35px; } }
    .profile .text p {
      font-size: 15px;
      margin: 0;
      padding: 0;
      text-align: justify;
      text-justify: inter-ideograph; }
      @media only screen and (max-width: 767px) {
        .profile .text p {
          line-height: 24px; } }
      @media only screen and (min-width: 768px) {
        .profile .text p {
          line-height: 27px; } }
      .profile .text p a {
        position: relative;
        color: #AA91C3;
        text-decoration: underline; }
        @media only screen and (max-width: 767px) {
          .profile .text p a {
            word-break: break-all; } }
        @media only screen and (min-width: 768px) {
          .profile .text p a {
            word-break: break-all; } }
        .profile .text p a:hover {
          text-decoration: none; }

@media only screen and (max-width: 767px) {
  .viking {
    margin: 0; } }
@media only screen and (min-width: 768px) {
  .viking {
    margin: 25px 0 0; } }
.viking table {
  width: 100%;
  border-collapse: collapse;
  table-layout: fixed;
  margin: 0;
  font-size: 15px; }
  .viking table td {
    border: 1px solid #000;
    padding: 9px 7px 7px;
    text-align: center;
    line-height: 1.5;
    vertical-align: top;
    color: #111; }
    @media only screen and (max-width: 767px) {
      .viking table td {
        font-size: 13px; } }
    @media only screen and (min-width: 768px) {
      .viking table td {
        font-size: 14px; } }
    .viking table td a {
      color: #333;
      text-decoration: none; }
  .viking table .sumi {
    background-color: #72567b;
    color: #ffffff; }
  .viking table .noreserve {
    background-color: #333;
    color: #ffffff; }

@media only screen and (max-width: 767px) {
  .owari {
    margin: 0 0 60px; } }
@media only screen and (min-width: 768px) {
  .owari {
    margin: 0 0 60px; } }
.owari .inner p {
  font-family: "Sawarabi Mincho";
  text-align: left;
  text-align: justify;
  text-justify: inter-ideograph; }
  @media only screen and (max-width: 767px) {
    .owari .inner p {
      line-height: 30px; } }
  @media only screen and (min-width: 768px) {
    .owari .inner p {
      font-size: 16px;
      margin-top: 0; } }
  @media only screen and (min-width: 1200px) {
    .owari .inner p {
      line-height: 28px;
      font-size: 16px;
      margin-top: 0; } }
  .owari .inner p a {
    position: relative;
    color: #AA91C3;
    text-decoration: underline; }
    @media only screen and (max-width: 767px) {
      .owari .inner p a {
        word-break: break-all; } }
    .owari .inner p a:hover {
      text-decoration: none; }
@media only screen and (max-width: 767px) {
  .owari p {
    font-size: 14px; } }
@media only screen and (min-width: 768px) {
  .owari p {
    font-size: 15px; } }
.owari .address {
  text-align: left; }
  .owari .address .shop_name {
    font-weight: bold; }
    @media only screen and (max-width: 767px) {
      .owari .address .shop_name {
        font-size: 18px;
        margin-top: 20px; } }
    @media only screen and (min-width: 768px) {
      .owari .address .shop_name {
        font-size: 18px;
        margin-bottom: 10px; } }
  @media only screen and (max-width: 767px) {
    .owari .address p {
      line-height: 25px;
      margin-top: 0; } }
  @media only screen and (min-width: 768px) {
    .owari .address p {
      line-height: 28px; } }
.owari .otoiawase {
  display: block;
  text-align: center;
  margin: 0; }
.owari iframe {
  position: relative; }

.report {
  position: relative;
  z-index: 5;
  font-family: "Sawarabi Mincho"; }
  @media only screen and (max-width: 767px) {
    .report {
      margin: 0 0 60px; } }
  @media only screen and (min-width: 1200px) {
    .report {
      margin: 0 0 60px; } }
  .report .intro {
    position: relative;
    z-index: 10;
    color: #fff;
    text-align: center;
    font-family: "Sawarabi Mincho"; }
    @media only screen and (max-width: 767px) {
      .report .intro {
        margin: 30px 0 30px; } }
    @media only screen and (min-width: 768px) {
      .report .intro {
        margin: 50px 0 35px; } }
    @media only screen and (min-width: 1200px) {
      .report .intro {
        margin: 70px 0 50px; } }
  .report .mongon {
    font-weight: 900;
    margin: 0 0 10px;
    padding: 0; }
    @media only screen and (max-width: 767px) {
      .report .mongon {
        font-size: 26px;
        line-height: 45px; } }
    @media only screen and (min-width: 768px) {
      .report .mongon {
        font-size: 30px;
        line-height: 45px; } }
    @media only screen and (min-width: 1024px) {
      .report .mongon {
        font-size: 40px;
        line-height: 70px; } }
  @media only screen and (max-width: 767px) {
    .report .box {
      margin: 0 0 30px; } }
  @media only screen and (min-width: 768px) {
    .report .box {
      margin: 0 0 40px; } }
  .report .lead {
    text-align: center; }
    @media only screen and (max-width: 767px) {
      .report .lead {
        line-height: 28px;
        font-size: 14px;
        margin: 15px auto 20px; } }
    @media only screen and (min-width: 768px) {
      .report .lead {
        font-size: 15px;
        margin: 15px auto 20px; } }
    @media only screen and (min-width: 1200px) {
      .report .lead {
        line-height: 28px;
        font-size: 15px;
        margin: 15px auto 20px; } }
  .report dl {
    margin: 0;
    text-align: left; }
    @media only screen and (max-width: 767px) {
      .report dl {
        font-size: 14px;
        line-height: 25px; } }
    @media only screen and (min-width: 768px) {
      .report dl {
        font-size: 14px; } }
  @media only screen and (max-width: 767px) {
    .report dt {
      margin: 0 0 8px 0; } }
  @media only screen and (min-width: 768px) {
    .report dt {
      margin: 0 0 15px 0; } }
  @media only screen and (max-width: 767px) {
    .report dd {
      margin: 0 0 20px 5px; } }
  @media only screen and (min-width: 768px) {
    .report dd {
      margin: 0 0 20px 20px; } }
  @media only screen and (max-width: 767px) {
    .report .sponly {
      display: block; } }
  @media only screen and (min-width: 768px) {
    .report .sponly {
      display: none; } }

@media only screen and (max-width: 767px) {
  .pconly {
    display: none; } }
@media only screen and (min-width: 768px) {
  .pconly {
    word-break: break-all; } }
@media only screen and (min-width: 1024px) {
  .pconly {
    display: block; } }

@media only screen and (max-width: 767px) {
  .padonly {
    display: none; } }
@media only screen and (min-width: 768px) {
  .padonly {
    display: block; } }
@media only screen and (min-width: 1024px) {
  .padonly {
    display: none; } }

.twitter {
  display: flex;
  justify-content: center; }
  @media only screen and (max-width: 767px) {
    .twitter {
      padding: 0 0 110px; } }
  @media only screen and (min-width: 768px) {
    .twitter {
      padding: 0 0 110px; } }
  .twitter .item {
    display: flex; }
    @media only screen and (max-width: 767px) {
      .twitter .item {
        margin: 0 15px; } }
    @media only screen and (min-width: 768px) {
      .twitter .item {
        margin: 0 35px; } }
    .twitter .item img {
      width: 60px; }
    .twitter .item a {
      position: relative; }
      .twitter .item a :hover {
        opacity: 0.8; }
  .twitter .twitter_name {
    position: relative;
    color: #fff;
    font-size: 13px;
    text-align: left; }
    @media only screen and (max-width: 767px) {
      .twitter .twitter_name {
        margin-left: 10px; } }
    @media only screen and (min-width: 768px) {
      .twitter .twitter_name {
        margin-left: 15px; } }
    .twitter .twitter_name a {
      color: #fff;
      text-decoration: none; }
      .twitter .twitter_name a:hover {
        text-decoration: underline; }

.global_head {
  margin: 0;
  position: relative;
  z-index: 50;
  vertical-align: middle; }

.global_foot {
  font-family: "Hiragino Kaku Gothic ProN","メイリオ", sans-serif; }
